367 lines
9.7 KiB
Markdown
367 lines
9.7 KiB
Markdown
# 机场无人车冲突预警系统配置指南
|
||
|
||
## 目录
|
||
- [机场无人车冲突预警系统配置指南](#机场无人车冲突预警系统配置指南)
|
||
- [目录](#目录)
|
||
- [一、机场基础信息配置](#一机场基础信息配置)
|
||
- [参数说明](#参数说明)
|
||
- [配置说明](#配置说明)
|
||
- [二、区域边界配置](#二区域边界配置)
|
||
- [区域参数规范表](#区域参数规范表)
|
||
- [参数说明](#参数说明-1)
|
||
- [三、交叉路口配置](#三交叉路口配置)
|
||
- [参数说明](#参数说明-2)
|
||
- [配置原则](#配置原则)
|
||
- [四、数据接口配置](#四数据接口配置)
|
||
- [接口参数示例](#接口参数示例)
|
||
- [参数说明](#参数说明-3)
|
||
- [五、无人车配置](#五无人车配置)
|
||
- [参数说明](#参数说明-4)
|
||
- [六、预警参数配置](#六预警参数配置)
|
||
- [参数说明](#参数说明-5)
|
||
- [冲突预警和告警参数](#冲突预警和告警参数)
|
||
- [参数说明](#参数说明-6)
|
||
- [告警阈值](#告警阈值)
|
||
- [七、调试与日志](#七调试与日志)
|
||
- [参数说明](#参数说明-7)
|
||
- [八、配置验证流程](#八配置验证流程)
|
||
- [文档版本](#文档版本)
|
||
|
||
---
|
||
|
||
## 一、机场基础信息配置
|
||
文件路径:`config/system_config.json`
|
||
|
||
```json
|
||
{
|
||
"airport": {
|
||
"name": "青岛胶东国际机场",
|
||
"iata": "TAO",
|
||
"icao": "ZSQD",
|
||
"reference_point": {
|
||
"latitude": 36.35448347,
|
||
"longitude": 120.08502054
|
||
},
|
||
"coordinate_points": [
|
||
{"point": "T1", "longitude": 120.0868853, "latitude": 36.35496367},
|
||
{"point": "T2", "longitude": 120.08502054, "latitude": 36.35448347}
|
||
]
|
||
}
|
||
}
|
||
```
|
||
|
||
### 参数说明
|
||
- **name**:机场名称
|
||
- **iata**:机场三字代码
|
||
- **icao**:机场四字代码
|
||
- **reference_point**:参考点
|
||
- **latitude**:参考点纬度
|
||
- **longitude**:参考点经度
|
||
- **coordinate_points**:坐标点
|
||
- **point**:坐标点名称
|
||
- **longitude**:坐标点经度
|
||
- **latitude**:坐标点纬度
|
||
|
||
|
||
### 配置说明
|
||
- **参考点设置**:选择塔台或机场中心点作为坐标系原点
|
||
- **坐标精度**:经纬度建议保留8位小数(约1cm精度)
|
||
- **命名规范**:
|
||
- IATA代码使用3位大写字母
|
||
- 坐标点按T1-T13顺序编号
|
||
|
||
---
|
||
|
||
## 二、区域边界配置
|
||
文件路径:`config/airport_bounds.json`
|
||
|
||
### 区域参数规范表
|
||
| 区域类型 | 边界坐标x(米) | 边界坐标y(米) | 区域宽度 | 区域高度 |
|
||
| -------- | ------------- | ------------- | -------- | -------- |
|
||
| 测试区 | -100 | -200 | 800 | 400 |
|
||
|
||
|
||
```json
|
||
"test_zone": {
|
||
"bounds": {
|
||
"x": -100,
|
||
"y": -200,
|
||
"width": 800,
|
||
"height": 400
|
||
}
|
||
```
|
||
|
||
### 参数说明
|
||
- **bounds**:区域边界
|
||
- **x**:区域左上角x坐标
|
||
- **y**:区域左上角y坐标
|
||
- **width**:区域宽度
|
||
- **height**:区域高度
|
||
|
||
---
|
||
|
||
## 三、交叉路口配置
|
||
文件路径:`config/intersections.json`
|
||
|
||
```json
|
||
{
|
||
"id": "T2路口",
|
||
"name": "无人车与特勤车交叉路口",
|
||
"trafficLightId": "TL001",
|
||
"position": {
|
||
"longitude": 120.08502054,
|
||
"latitude": 36.35448347,
|
||
"altitude": 9.543
|
||
},
|
||
"width": 20.0,
|
||
"safetyZone": {
|
||
"aircraftRadius": 50.0,
|
||
"vehicleRadius": 50.0
|
||
}
|
||
}
|
||
```
|
||
|
||
### 参数说明
|
||
- **id**:路口ID
|
||
- **name**:路口名称
|
||
- **trafficLightId**:交通灯ID
|
||
- **position**:路口位置
|
||
- **width**:路口宽度
|
||
- **safetyZone**:安全区
|
||
- **aircraftRadius**:飞机安全区半径
|
||
- **vehicleRadius**:车辆安全区半径
|
||
|
||
### 配置原则
|
||
1. 路口ID按"T"+数字编号(如T1-T13)
|
||
2. 安全区半径建议值:
|
||
- 飞机:翼展×1.5
|
||
- 车辆:车长×2.0
|
||
|
||
---
|
||
|
||
## 四、数据接口配置
|
||
文件路径:`config/system_config.json`
|
||
|
||
### 接口参数示例
|
||
```json
|
||
"data_source": {
|
||
"position": {
|
||
"host": "localhost",
|
||
"port": 8081,
|
||
"aircraft_path": "/openApi/getCurrentFlightPositions",
|
||
"vehicle_path": "/openApi/getCurrentVehiclePositions",
|
||
"refresh_interval_ms": 1000,
|
||
"auth": {
|
||
"username": "dianxin",
|
||
"password": "dianxin@123",
|
||
"auth_path": "/login",
|
||
"auth_required": true
|
||
},
|
||
"timeout_ms": 5000,
|
||
"read_timeout_ms": 2000
|
||
},
|
||
"unmanned_vehicle": {
|
||
"host": "localhost",
|
||
"port": 8081,
|
||
"location_path": "/api/VehicleLocationInfo",
|
||
"status_path": "/api/VehicleStateInfo",
|
||
"command_path": "/api/VehicleCommandInfo",
|
||
"refresh_interval_ms": 1000,
|
||
"auth": {
|
||
"username": "dianxin",
|
||
"password": "dianxin@123",
|
||
"auth_path": "/api/login",
|
||
"auth_required": false
|
||
},
|
||
"timeout_ms": 5000,
|
||
"read_timeout_ms": 2000
|
||
},
|
||
"traffic_light": {
|
||
"host": "localhost",
|
||
"port": 8081,
|
||
"signal_path": "/openApi/getTrafficLightSignals",
|
||
"refresh_interval_ms": 1000,
|
||
"auth": {
|
||
"username": "dianxin",
|
||
"password": "dianxin@123",
|
||
"auth_path": "/api/login",
|
||
"auth_required": false
|
||
},
|
||
"timeout_ms": 5000,
|
||
"read_timeout_ms": 2000
|
||
}
|
||
}
|
||
```
|
||
|
||
### 参数说明
|
||
- **position**:位置接口
|
||
- **host**:数据源IP地址
|
||
- **port**:数据源端口号
|
||
- **aircraft_path**:航空器数据接口路径
|
||
- **vehicle_path**:车辆数据接口路径
|
||
- **refresh_interval_ms**:数据刷新间隔时间(ms)
|
||
- **auth**:认证信息
|
||
- **username**:用户名
|
||
- **password**:密码
|
||
- **auth_path**:认证路径
|
||
- **auth_required**:是否需要认证
|
||
- **timeout_ms**:请求超时时间(ms)
|
||
- **read_timeout_ms**:读取超时时间(ms)
|
||
- **unmanned_vehicle**:无人车接口
|
||
- **host**:无人车IP地址
|
||
- **port**:无人车端口号
|
||
- **location_path**:无人车位置接口路径
|
||
- **status_path**:无人车状态接口路径
|
||
- **command_path**:无人车命令接口路径
|
||
- **refresh_interval_ms**:数据刷新间隔时间(ms)
|
||
- **auth**:认证信息
|
||
- **username**:用户名
|
||
- **password**:密码
|
||
- **auth_path**:认证路径
|
||
- **auth_required**:是否需要认证
|
||
- **timeout_ms**:请求超时时间(ms)
|
||
- **read_timeout_ms**:读取超时时间(ms)
|
||
- **traffic_light**:交通灯接口
|
||
- **host**:交通灯IP地址
|
||
- **port**:交通灯端口号
|
||
- **signal_path**:交通灯信号接口路径
|
||
- **refresh_interval_ms**:数据刷新间隔时间(ms)
|
||
- **auth**:认证信息
|
||
- **username**:用户名
|
||
- **password**:密码
|
||
- **auth_path**:认证路径
|
||
- **auth_required**:是否需要认证
|
||
- **timeout_ms**:请求超时时间(ms)
|
||
- **read_timeout_ms**:读取超时时间(ms)
|
||
|
||
---
|
||
|
||
## 五、无人车配置
|
||
文件路径:`config/unmanned_vehicles.json`
|
||
|
||
```json
|
||
"vehicles": [
|
||
{
|
||
"vehicleNo": "QN001",
|
||
"type": "UNMANNED",
|
||
"ip": "localhost",
|
||
"port": 8081
|
||
},
|
||
{
|
||
"vehicleNo": "QN002",
|
||
"type": "UNMANNED",
|
||
"ip": "localhost",
|
||
"port": 8081
|
||
}
|
||
]
|
||
```
|
||
|
||
### 参数说明
|
||
- **vehicleNo**:无人车编号
|
||
- **type**:无人车类型
|
||
- **ip**:无人车IP地址
|
||
- **port**:无人车端口号
|
||
|
||
---
|
||
|
||
## 六、预警参数配置
|
||
|
||
###冲突预测和航空器和车辆尺寸:
|
||
|
||
文件路径:`config/system_config.json`
|
||
|
||
```json
|
||
"collision_detection": {
|
||
"update_interval_ms": 200,
|
||
"prediction": {
|
||
"time_window": 20.0,
|
||
"vehicle_size": 20.0,
|
||
"aircraft_size": 60.0,
|
||
"min_unmanned_speed": 1.0
|
||
}
|
||
}
|
||
```
|
||
### 参数说明
|
||
- **update_interval_ms**:冲突检测更新间隔时间(ms)
|
||
- **prediction**:冲突预测模型参数
|
||
- **time_window**:预测时间窗口(s)
|
||
- **vehicle_size**:车辆尺寸(m)
|
||
- **aircraft_size**:航空器尺寸(m)
|
||
- **min_unmanned_speed**:无人车最小速度(m/s)
|
||
|
||
### 冲突预警和告警参数
|
||
|
||
文件路径:`config/airport_bounds.json`
|
||
|
||
```json
|
||
"warning_zone_radius": {
|
||
"aircraft": 70.0,
|
||
"special": 30.0,
|
||
"unmanned": 30.0
|
||
},
|
||
"alert_zone_radius": {
|
||
"aircraft": 35.0,
|
||
"special": 15.0,
|
||
"unmanned": 15.0
|
||
}
|
||
```
|
||
|
||
### 参数说明
|
||
- **warning_zone_radius**:预警区半径 = 预警距离阈值 + 飞机尺寸/2 + 车辆尺寸/2
|
||
- **alert_zone_radius**:告警区半径 = 告警距离阈值 + 飞机尺寸/2 + 车辆尺寸/2
|
||
|
||
### 告警阈值
|
||
| 告警级别 | 飞机距离阈值(m) | 车辆距离阈值(m) |
|
||
| -------- | --------------- | --------------- |
|
||
| 预警 | 60 | 30 |
|
||
| 告警 | 30 | 15 |
|
||
|
||
---
|
||
|
||
## 七、调试与日志
|
||
文件路径:`config/logging_config.json`
|
||
|
||
```json
|
||
"logging": {
|
||
"level": "debug",
|
||
"file": "logs/system.log",
|
||
"max_size_mb": 10,
|
||
"max_files": 5,
|
||
"console_output": true
|
||
}
|
||
```
|
||
|
||
### 参数说明
|
||
- **level**:日志级别
|
||
- **file**:日志文件路径
|
||
- **max_size_mb**:日志文件最大大小(MB)
|
||
- **max_files**:日志文件最大数量
|
||
- **console_output**:是否输出到控制台
|
||
|
||
---
|
||
|
||
## 八、配置验证流程
|
||
|
||
1. 基础配置检查
|
||
```bash
|
||
# 检查配置文件语法
|
||
python3 -m json.tool config/system_config.json
|
||
```
|
||
|
||
2. 接口连通性测试
|
||
```bash
|
||
curl -X POST http://localhost:8081/openApi/getCurrentFlightPositions
|
||
```
|
||
|
||
3. 实时监控
|
||
```bash
|
||
tail -f /opt/collision_avoidance/logs/system.log | grep "WARNING"
|
||
```
|
||
|
||
## 文档版本
|
||
- 版本号:1.0.0
|
||
- 更新日期:2025-02-06
|
||
- 更新内容:初始版本
|
||
|
||
|