# 机场地面碰撞预警系统 ## 项目简介 该系统用于监测和预警机场地面航空器与车辆之间的潜在碰撞风险。通过实时采集和分析位置数据,为机场运营提供安全保障。 ## 功能特性 - 实时数据采集:获取航空器和车辆的位置信息 - 碰撞风险检测:基于安全距离进行碰撞风险评估 - 运动参数计算:自动计算速度和航向信息 - 坐标转换:支持地理坐标和平面坐标转换 - 日志记录:详细的运行日志和警告信息 ## 系统架构 - 数据采集模块:从数据源获取位置信息 - 碰撞检测模块:分析潜在的碰撞风险 - 坐标转换模块:处理不同坐标系统 - 核心数据类型:定义基础的数据结构 ## 开发环境 - C++17 - CMake 3.10+ - Boost 1.86.0 - nlohmann_json - Google Test ## 构建说明 ```bash # 创建构建目录 mkdir build && cd build # 配置项目 cmake .. # 编译 make # 运行测试 ./bin/unit_tests ``` ## 测试框架 - 使用 Google Test 进行单元测试 - 测试覆盖: - 基础数据类型 - 碰撞检测逻辑 - 数据采集功能 - HTTP 数据源 - Mock 服务器用于测试 ## 目录结构 ```mermaid graph TD A[ObstacleAvoidance] --> B[src] A --> C[tests] A --> D[tools] A --> E[docs] A --> F[build] B --> BA[collector] B --> BB[detector] B --> BC[network] B --> BD[spatial] B --> BE[types] B --> BF[utils] B --> BG[core] BA --> BAA[DataCollector.h/cpp] BA --> BAB[DataSource.h] BB --> BBA[CollisionDetector.h/cpp] BC --> BCA[HTTPDataSource.h/cpp] BC --> BCB[ConnectionConfig.h] BD --> BDA[CoordinateConverter.h/cpp] BE --> BEA[BasicTypes.h/cpp] BF --> BFA[Logger.h/cpp] BG --> BGA[System.h/cpp] C --> CA[BasicTypesTest.cpp] C --> CB[CollisionDetectorTest.cpp] C --> CC[DataCollectorTest.cpp] C --> CD[HTTPDataSourceTest.cpp] D --> DA[mock_server.py] ``` ## 配置说明 - 数据源配置: - 主机:localhost - 端口:8080 - API路径: - /api/getCurrentFlightPositions - /api/getCurrentVehiclePositions - 安全参数: - 水平安全距离:50米 - 垂直安全距离:50米 - 最大速度限制: - 航空器:100米/秒 - 车辆:30米/秒 ## 开发团队 - 项目负责人:[田建勇] - 开发人员:[赵豪、陈横、刘青宇] ## 许可证 [License Type] ## 版本历史 - v1.0.0 (2024-11-15) - 初始版本发布 - 基本功能实现 - 单元测试框架搭建