26 KiB
停机引导对接协议
版本信息
| 项目 | 内容 |
|---|---|
| 文档版本 | V1.1 |
| 更新日期 | 2026-09-18 |
| 适用范围 | UDP 组播状态包、HTTP 当前状态查询、本机记录库历史访问 |
| 说明 | 在 1.0 基础上增加工作模式、系统激活、设备状态,以及选择机型与检测机型的区分。第 11 节补充 guide_session、guide_detail、guide_event 三表关系。 |
- 状态 JSON 协议名称为
ParkingSpaceGuideResult,version为1.1。
1. 协议概述
停机引导系统支持通过组播主动发送检测结果,也支持作为 HTTP 服务端,由现场系统按需查询当前停机状态。本协议(组播和 HTTP)只提供当前状态,没有历史查询地址。历史引导过程从本机记录库读取,字段与第 7 节相同。现场系统获取数据后,可解析当前停机位、目标编号、机型、到停止线距离、机身偏转角等信息。
访问方式:
| 方式 | 地址 | 数据内容 |
|---|---|---|
| UDP 组播 | 默认 239.255.0.1:8800 |
当前 ParkingSpaceGuideResult |
| HTTP GET | http://<设备IP>:8801/api/parking/status |
与组播相同的当前状态,不提供历史 |
| 记录库 | 见第 11 节 | 历史引导过程,字段与第 7 节一致 |
协议特点:
- 传输方式:组播,基于 UDP 数据报
- 查询方式:HTTP,停机引导系统作为服务端,现场系统作为客户端;仅当前状态
- 历史访问:本协议无历史 URL,使用第 11 节记录库连接信息
- 数据格式:JSON;历史记录字段与 JSON 协议相同
- 字符编码:UTF-8
- 组播数据方向:停机引导系统发送,现场系统接收
- HTTP 数据方向:现场系统请求,停机引导系统响应
- 组播应答机制:无应答
- HTTP 应答机制:请求-响应
- 组播重发机制:无重发
- 组播发送时机:每次检测结果更新时发送 1 包;
status、轮挡时间或自检状态变化时也发送 1 包
2. 组播网络参数
组播网络参数由停机引导系统配置。
| 参数 | 默认值 | 说明 |
|---|---|---|
| enabled | true | 是否启用组播发送。 |
| address | 239.255.0.1 | 组播地址。 |
| port | 8800 | 组播端口。 |
| targetId | T001 | 目标编号,由软件配置或现场系统约定。 |
| parkId | P01 | 当前停机位编号,由软件配置。 |
3. HTTP 查询对接
HTTP 查询用于现场系统主动获取当前停机状态。停机引导系统作为 HTTP 服务端,返回最近一次状态;系统刚启动且尚未产生检测结果时,返回第 6 节示例中的状态包。
| 参数 | 默认值 | 说明 |
|---|---|---|
| enabled | true | 是否启用 HTTP 状态服务。 |
| address | 0.0.0.0 | HTTP 服务监听地址;0.0.0.0 表示监听本机所有网卡。 |
| port | 8801 | HTTP 服务端口。 |
| maxQueued | 16 | 等待处理的最⼤连接队列数。 |
| maxThreads | 4 | 最⼤处理线程数。 |
请求方式:
| 项目 | 内容 |
|---|---|
| URL | http://<停机引导设备IP>:8801/api/parking/status |
| Method | GET |
| Request Body | 无 |
| Response Content-Type | application/json; charset=utf-8 |
兼容路径:
- /
- /status
- /api/status
- /api/parking/status
响应数据:
- HTTP 状态码 200 :返回当前停机状态 JSON,数据内容与 UDP 组播状态包⼀致,字段与第 4 ⾄第 7 节定义⼀致。
- HTTP 状态码 404 :请求路径不存在。
- HTTP 状态码 405 :请求⽅法不⽀持。 现场系统建议按 timestamp 判断数据是否更新,避免重复处理同⼀包状态。
现场系统建议按 timestamp 判断数据是否更新。
4. JSON 数据格式
每包组播数据为一个 JSON 对象。实际发送时为紧凑 JSON,不包含格式化换行。
HTTP 查询返回的数据内容与 UDP 组播数据一致,字段、含义、类型、单位和取值规则相同,仅传输方式不同。
本软件每次只检测一个飞机停机位,结果字段放在顶层对象中,不包含结果数组。
接收端应允许 JSON 增加字段。组播不保证到达和顺序,应以最新 timestamp 为准。timestamp 为 Unix 毫秒整数;其余时间字段为设备本地 yyyy-MM-dd HH:mm:ss 字符串,未记录时为空字符串。检测内部信息不对外发送。距离、偏转角、横向偏移、速度为浮点数;状态序号和错误码为整数。
5. 成功数据示例
{
"protocol": "ParkingSpaceGuideResult",
"version": "1.1",
"success": true,
"hasResult": true,
"targetId": "T001",
"parkId": "P01",
"expectedModelType": "A320",
"modelType": "A320",
"modelMatched": true,
"guideStateCode": 21,
"distanceToStop": 50.0,
"bodyYawAngle": 0.0,
"lateralOffset": 0.0,
"aircraftSpeed": 0.4,
"hasException": false,
"guideText": "CHOCK ON",
"personChockTime": "2026-09-07 14:40:00",
"chockOnTime": "2026-09-07 14:40:05",
"chockOffTime": "",
"status": {
"workMode": "normal",
"activated": true,
"camera": { "name": "平面相机", "connected": true },
"lidar": { "name": "雷达", "connected": true },
"emergencyStop": {
"name": "急停",
"enabled": true,
"available": true,
"active": false,
"latched": false
}
},
"selfCheck": {
"running": false,
"ok": true,
"lidarOk": true,
"cameraOk": true,
"storageOk": true,
"networkOk": true,
"errorCode": 0,
"message": "自检通过:雷达、相机、存储、网络正常"
},
"message": "轮挡区域人员检测已确认,轮挡固定流程完成",
"errorCode": 0,
"timestamp": 1783339200000
}
选择名称包含 A320 或 B737 的配置机型时,按检测家族匹配:
"expectedModelType": "A320-200 NEO",
"modelType": "A320",
"modelMatched": true
选择非 A320/B737 家族的配置机型时,expectedModelType 为配置中的机型名称,modelType 仍为检测结果(A320、B737 或 其他),modelMatched 为 false:
"expectedModelType": "C919",
"modelType": "其他",
"modelMatched": false
6. 失败或无结果数据示例
检测失败、无有效目标或尚未开始引导时,仍发送状态包。success=false,hasResult=false。空闲包仍携带 status。
{
"protocol": "ParkingSpaceGuideResult",
"version": "1.1",
"success": false,
"hasResult": false,
"targetId": "T001",
"parkId": "P01",
"expectedModelType": "",
"modelType": "未知",
"modelMatched": false,
"guideStateCode": 0,
"distanceToStop": 0.0,
"bodyYawAngle": 0.0,
"lateralOffset": 0.0,
"aircraftSpeed": 0.0,
"hasException": true,
"guideText": "",
"personChockTime": "",
"chockOnTime": "",
"chockOffTime": "",
"status": {
"workMode": "normal",
"activated": false,
"camera": { "name": "平面相机", "connected": true },
"lidar": { "name": "雷达", "connected": false },
"emergencyStop": {
"name": "急停",
"enabled": true,
"available": true,
"active": false,
"latched": false
}
},
"selfCheck": {
"running": false,
"ok": false,
"lidarOk": false,
"cameraOk": true,
"storageOk": true,
"networkOk": true,
"errorCode": 0,
"message": ""
},
"message": "无有效结果",
"errorCode": -1,
"timestamp": 1783339200000
}
7. 字段定义
类型均为 JSON 取值类型。int 为整数,float 为浮点数,bool 为布尔,string 为字符串,object 为对象。历史记录字段与下表相同,不再另列。
| 字段 | 类型 | 单位 | 说明 |
|---|---|---|---|
| protocol | string | - | 固定为 ParkingSpaceGuideResult。 |
| version | string | - | 协议版本,当前为 1.1。 |
| success | bool | - | 本包含有效结果且 errorCode=0 时为 true。 |
| hasResult | bool | - | 本包是否包含有效引导结果。 |
| targetId | string | - | 目标编号,默认 T001。 |
| parkId | string | - | 当前停机位编号,默认 P01。 |
| expectedModelType | string | - | 操作员选择的机型。未选择时为空。取值来自当前配置的可选机型,不是协议写死的清单。名称包含 A320 或 B737 时按家族校验;其余名称以现场配置为准。 |
| modelType | string | - | 相机检测机型。仅 A320、B737、其他;未检出为 未知。 |
| modelMatched | bool | - | 选择名称包含 A320 且 modelType 为 A320,或包含 B737 且 modelType 为 B737 时为 true。选择其他机型或不选时为 false。 |
| personChockTime | string | 日期时间 | 人员轮挡确认时间,设备本地时间,格式 yyyy-MM-dd HH:mm:ss;未确认时为空。 |
| chockOnTime | string | 日期时间 | 人工上轮挡时间,设备本地时间,格式 yyyy-MM-dd HH:mm:ss;未记录时为空。 |
| chockOffTime | string | 日期时间 | 人工下轮挡时间,设备本地时间,格式 yyyy-MM-dd HH:mm:ss;未记录时为空。 |
| status | object | - | 状态:工作模式、是否激活、相机/雷达/急停,见下表。 |
| selfCheck | object | - | 开始前自检结果,见下表。 |
| guideStateCode | int | - | 引导状态序号,见第 8 节;无状态为 0。 |
| distanceToStop | float | 毫米 | 到停止线距离。 |
| bodyYawAngle | float | 度 | 机身偏转角。 |
| lateralOffset | float | 毫米 | 相对引导中心线的横向偏移。 |
| aircraftSpeed | float | 米/秒 | 飞机接近速度。 |
| hasException | bool | - | errorCode != 0,或 guideStateCode 为 10~20、22~24 时为 true。 |
| guideText | string | - | 引导显示文本。 |
| message | string | - | 说明或异常原因。 |
| errorCode | int | - | 0 正常。设备异常码见第 10 节;-1 表示无有效结果。 |
| timestamp | int | 毫秒 | 本包生成时刻,Unix 毫秒时间戳。除本字段外,其余时间均使用 yyyy-MM-dd HH:mm:ss。 |
expectedModelType 是页面选择的机型,modelType 是检测结果,二者不要混用。可选机型由配置维护。检测只区分 A320、B737、其他。选择名称包含 A320 且检测为 A320 算匹配,包含 B737 且检测为 B737 同样算匹配,例如选择 A320-200 NEO 检测 A320。仅这两类家族做校验,不一致可进入状态 15;选择 A321、C919 等其他配置机型不校验。检测置信度、是否支持精确校验、轮挡区域内人员及人数等内部信息不对外发送。
status 与 selfCheck 含义不同:status 是当前工作模式、激活情况和设备在线状态,selfCheck 是本次开始前的自检结果。工作模式和是否激活只放在 status 中,不再出现在顶层。
| status 字段 | 类型 | 说明 |
|---|---|---|
| workMode | string | normal 正常模式;maintenance 维护模式。缺省按 normal。维护模式引导流程与正常模式相同。 |
| activated | bool | true:已开始且自检通过,正在引导。false:未开始、自检中或已停止。缺省按 false。 |
| camera.name | string | 平面相机 |
| camera.connected | bool | 平面相机是否在线 |
| lidar.name | string | 雷达 |
| lidar.connected | bool | 雷达是否在线 |
| emergencyStop.name | string | 急停 |
| emergencyStop.enabled | bool | 是否启用急停 |
| emergencyStop.available | bool | 急停输入是否可用 |
| emergencyStop.active | bool | 急停是否正在触发 |
| emergencyStop.latched | bool | 急停是否已锁存 |
| selfCheck 字段 | 类型 | 说明 |
|---|---|---|
| running | bool | 是否正在自检 |
| ok | bool | 是否全部通过 |
| lidarOk | bool | 雷达 |
| cameraOk | bool | 平面相机 |
| storageOk | bool | 存储 |
| networkOk | bool | 网络 |
| errorCode | int | 见第 10 节。自检失败时与顶层 errorCode 相同。 |
| message | string | 说明 |
自检失败时 guideStateCode=22,status.activated=false。
人员轮挡时间与人工上/下轮挡时间相互独立。
8. 引导状态枚举
guideStateCode 为 10 至 20 或 22 至 24 时按异常处理,hasException=true。状态 21 为正常完成。状态 8 为停稳,保持约 5 秒后进入状态 9。
| 序号 | 流程/功能 | 显示文本 | 说明 |
|---|---|---|---|
| 1 | 泊位引导启动 | START | 已开始,距离不大于 100 m |
| 2 | 捕获 | CAPTURE | 距离大于 25 m 且不大于 80 m |
| 3 | 跟踪 | 内部跟踪 | |
| 4 | 接近率 | 内部接近率 | |
| 5 | 对准中心线 | 距离 | 距离不大于 25 m,横向和航向在容差内 |
| 6 | 慢速 | SLOW | 距离不大于 15 m,速度不小于 2 m/s |
| 7 | 方位引导 | 距离 | 距离不大于 25 m,横向或航向超差 |
| 8 | 到达停止位置 | STOP | 到停止线距离在 ±0.1 m 内 |
| 9 | 泊位引导完成 | OK | 停稳并保持约 5 秒 |
| 10 | 越位 | TOO FAR | 越过停止线不小于 0.5 m |
| 11 | 提前停止 | 提前停止 | |
| 12 | 等待 | 未进入 100 m 范围或空闲 | |
| 13 | 异常慢速-恶劣天气 | 恶劣天气 | |
| 14 | 飞机丢失 | 引导中连续丢失 | |
| 15 | 飞机验证失败 | ID FAIL | 选择名称包含 A320/B737 且与检测家族不一致 |
| 16 | 机位受阻 | GATE BLOCK | 机位受阻 |
| 17 | 视野受阻 | VIEW BLOCK | 视野受阻 |
| 18 | SBU停止 | 安全备份停止 | |
| 19 | 速度过快 | 速度过快 | |
| 20 | 紧急停止 | STOP | 急停有效 |
| 21 | 挡轮挡 | CHOCK ON | 人员轮挡已确认 |
| 22 | 系统错误 | ERROR | 自检或系统错误 |
| 23 | 系统故障 | 系统故障 | |
| 24 | 电源故障 | 电源故障 |
9. 对接说明
现场系统建议优先解析:
targetId、parkIdexpectedModelType、modelType、modelMatchedguideStateCode、guideTextdistanceToStop、bodyYawAngle、lateralOffset、aircraftSpeedpersonChockTime、chockOnTime、chockOffTimestatus.workMode、status.activatedhasException、errorCode、timestamp
设备异常时优先看 errorCode(2200~2205)和 status 中对应设备的在线状态。
状态判断:
success=true且hasResult=true:本包含有效引导结果。success=false:异常、无目标或无有效结果。status.activated=true:系统已激活。status.workMode=maintenance:维护模式。guideStateCode=8:停稳(STOP);随后为9(OK)。
注意事项:
- 组播不保证到达和顺序,以最新
timestamp为准。 - 接收端应允许 JSON 增加字段。
- 数值单位以本协议为准。
selfCheck不能代替status。- 轮挡时间未记录时为空字符串,不要按
0解析。 - 设备异常码见第 10 节;
-1不是设备故障,表示当前无有效引导结果。 - 组播和 HTTP 没有历史查询地址。历史见第 11 节记录库。
10. 错误码
顶层 errorCode 与 selfCheck.errorCode 使用同一套取值。0 为正常。设备异常使用 2200~2205。
| errorCode | 含义 | 说明 |
|---|---|---|
| 0 | 正常 | 本包无设备或系统错误。 |
| -1 | 无有效结果 | 未开始、空闲或尚无检测结果。不是设备故障。 |
| 2200 | 多项设备异常 | 雷达、相机、存储、网络中两项及以上异常。 |
| 2201 | 雷达异常 | 雷达离线、未运行或自检失败。 |
| 2202 | 平面相机异常 | 平面相机离线、未打开或自检失败。 |
| 2203 | 存储异常 | 本机存储不可写。 |
| 2204 | 网络异常 | 无可用 IPv4 网卡。 |
| 2205 | 急停输入异常 | 急停已启用但输入不可用。 |
判断方式:
errorCode=0:无设备错误。引导是否异常看hasException和guideStateCode(如 15 ID FAIL、20 急停按下)。errorCode=-1:无有效结果,通常success=false、hasResult=false。errorCode为2200~2204:自检或运行中设备异常,guideStateCode一般为22,status.activated=false。errorCode=2205:急停输入异常,guideStateCode一般为23。- 急停按钮按下是引导状态
20,不是本表设备错误码。 - 其他非
0值按一般异常处理,结合message和guideStateCode。 status.camera.connected、status.lidar.connected是实时在线状态,不能用selfCheck代替。
雷达异常示例:
"success": false,
"hasResult": false,
"guideStateCode": 22,
"guideText": "ERROR",
"hasException": true,
"errorCode": 2201,
"message": "雷达异常",
"status": {
"workMode": "normal",
"activated": false,
"camera": { "name": "平面相机", "connected": true },
"lidar": { "name": "雷达", "connected": false }
}
11. 历史记录访问
组播和 HTTP 不支持历史查询,没有历史 URL。当前状态地址见第 2、3 节。
历史引导过程从本机记录库读取。库内三张表:guide_session(一次引导会话)、guide_detail(过程采样)、guide_event(操作事件)。明细字段与第 7 节 ParkingSpaceGuideResult 对应;status、selfCheck 拆成 status_、selfCheck_ 前缀列,读出后再拼回对象。另有会话起止时间 startTime、endTime,格式与轮挡时间相同(yyyy-MM-dd HH:mm:ss,进行中的结束时间为空)。sessionUuid 只作库内关联和回放查询,不是第 7 节结果包字段。
连接信息:
| 参数 | 默认值 | 说明 |
|---|---|---|
| 协议 | MariaDB | 使用 MariaDB / MySQL 兼容客户端连接。 |
| 地址 | 停机引导设备 IP | 与 HTTP 查询使用同一台设备。 |
| 端口 | 3306 | 记录库端口。 |
| 库名 | parking_guide | 默认库。 |
| 用户 | parking | 默认账号。 |
| 密码 | parking | 默认密码,现场可改。 |
默认保留最近 30 天。库不可用时引导、组播和 HTTP 仍可用,仅不写历史。远程控制端也可用 list_sessions / get_session_samples 读会话和明细,见《停机引导远程控制协议》。
11.1 三表关系
关联键一律是 sessionUuid(VARCHAR(64))。guide_session.sessionUuid 唯一。一次点击开始到停止(或急停、自检失败结束)对应 一条 guide_session。
guide_session 1 ── sessionUuid ──< N guide_detail (过程采样,必有所属会话)
guide_session 1 ── sessionUuid ──< 0..N guide_event (操作事件;开机自检等无会话时为空)
| 子表 | 关联字段 | 父表 | 基数 | 外键删除 |
|---|---|---|---|---|
guide_detail |
sessionUuid NOT NULL |
guide_session.sessionUuid |
1 对多 | ON DELETE CASCADE |
guide_event |
sessionUuid 可空 |
guide_session.sessionUuid |
1 对 0..多 | ON DELETE CASCADE;NULL 行不随会话删除 |
约束要点:
- 明细必须先有会话。开始引导写入
guide_session后,才向guide_detail、guide_event写该次sessionUuid。 - 事件允许无会话:
sessionUuid为空(库内NULL),例如开机自检boot_self_check。这类行没有父会话,删除过期会话时不会被级联清掉。 - 删除一条
guide_session时,该sessionUuid下的明细和有会话事件一并删除。过期清理先按guide_session.startTime删会话(级联子表),再按时间删除sessionUuid IS NULL的事件。 - 三张表各自另有自增主键
id,仅库内使用,对外关联只用sessionUuid。 - 点云和图像不入库。回放只能还原当时的状态 JSON,不能还原原始传感器数据。
写入时机:
| 时机 | guide_session |
guide_detail |
guide_event |
|---|---|---|---|
| 开机自检 | 不写 | 不写 | sessionUuid 为空,boot_self_check |
| 点击开始,快检失败 | 不写 | 不写 | 无会话或当前会话的 self_check |
| 引导会话开始 | INSERT 一条,endTime 为空 |
随后按规则采样 | session_begin |
| 引导过程中 | 轮挡时间变化时 UPDATE |
guideStateCode 变化立即写一条;其余按 sampleIntervalMs(默认 200 ms)采样 |
person_chock / chock_on / chock_off / maintenance / self_check |
| 停止、急停或流程结束 | UPDATE 结束状态、检测机型、endTime |
可再写最后一条 | session_end |
还原一次引导:用 sessionUuid 读 guide_session 得到起止摘要;按 timestamp 升序读 guide_detail,把拆列拼回第 7 节对象;需要操作轨迹时再按同一 sessionUuid 读 guide_event。明细里的 sessionUuid 还原时不要放进结果包。
查询示例:
-- 最近会话
SELECT `sessionUuid`, `parkId`, `targetId`, `expectedModelType`, `modelType`,
`startTime`, `endTime`, `guideStateCode`, `hasException`, `errorCode`
FROM guide_session
ORDER BY `startTime` DESC
LIMIT 50;
-- 某次引导过程(拼回 ParkingSpaceGuideResult,不含 sessionUuid)
SELECT *
FROM guide_detail
WHERE `sessionUuid` = '<sessionUuid>'
ORDER BY `timestamp` ASC;
-- 某次引导的操作事件
SELECT `timestamp`, `eventType`, `message`, `payload`
FROM guide_event
WHERE `sessionUuid` = '<sessionUuid>'
ORDER BY `timestamp` ASC;
-- 无会话事件(如开机自检)
SELECT `timestamp`, `eventType`, `message`, `payload`
FROM guide_event
WHERE `sessionUuid` IS NULL
ORDER BY `timestamp` ASC;
时间字段:guide_session 的 startTime、endTime 和三张表中的轮挡时间为设备本地 DATETIME(yyyy-MM-dd HH:mm:ss);guide_detail.timestamp、guide_event.timestamp 为 Unix 毫秒整数,与第 7 节 timestamp 相同。布尔列存 TINYINT:1 为真,0 为假。
11.2 guide_session 引导会话
一次点击开始到停止(或急停/自检失败结束)对应一条。结束时回写检测机型、最终状态和错误信息。
| 字段 | 说明 |
|---|---|
| sessionUuid | 会话标识,仅库内/回放使用 |
| parkId | 停机位 |
| targetId | 目标编号 |
| expectedModelType | 操作员选择机型 |
| modelType | 检测机型,会话结束时回写 |
| modelMatched | 选择机型与检测机型是否匹配 |
| startTime | 开始时间 |
| endTime | 结束时间;进行中为空 |
| guideStateCode | 结束时的引导状态序号 |
| hasException | 结束时是否异常 |
| errorCode | 结束时错误码,与第 10 节相同 |
| message | 结束时说明 |
| personChockTime | 人员轮挡确认时间 |
| chockOnTime | 人工上轮挡时间 |
| chockOffTime | 人工下轮挡时间 |
11.3 guide_detail 引导明细
一次会话的过程数据。除 sessionUuid 外,列与第 7 节一一对应。
| 字段 | 说明 |
|---|---|
| sessionUuid | 所属会话,对应 guide_session.sessionUuid,还原时不放入结果包 |
| protocol | 固定 ParkingSpaceGuideResult |
| version | 协议版本,当前 1.1 |
| success | 本条是否有效结果且 errorCode=0 |
| hasResult | 本条是否包含有效引导结果 |
| targetId | 目标编号 |
| parkId | 停机位 |
| expectedModelType | 操作员选择机型 |
| modelType | 检测机型 |
| modelMatched | 选择机型与检测机型是否匹配 |
| personChockTime | 人员轮挡确认时间 |
| chockOnTime | 人工上轮挡时间 |
| chockOffTime | 人工下轮挡时间 |
| status_workMode | 工作模式 |
| status_activated | 是否已激活 |
| status_camera_name | 平面相机名称 |
| status_camera_connected | 平面相机是否在线 |
| status_lidar_name | 雷达名称 |
| status_lidar_connected | 雷达是否在线 |
| status_emergencyStop_name | 急停名称 |
| status_emergencyStop_enabled | 是否启用急停 |
| status_emergencyStop_available | 急停输入是否可用 |
| status_emergencyStop_active | 急停是否正在触发 |
| status_emergencyStop_latched | 急停是否已锁存 |
| selfCheck_running | 是否正在自检 |
| selfCheck_ok | 自检是否通过 |
| selfCheck_lidarOk | 雷达自检 |
| selfCheck_cameraOk | 相机自检 |
| selfCheck_storageOk | 存储自检 |
| selfCheck_networkOk | 网络自检 |
| selfCheck_errorCode | 自检错误码 |
| selfCheck_message | 自检说明 |
| guideStateCode | 引导状态序号 |
| distanceToStop | 到停止线距离,毫米 |
| bodyYawAngle | 机身偏转角,度 |
| lateralOffset | 横向偏移,毫米 |
| aircraftSpeed | 接近速度,米/秒 |
| hasException | 本条是否异常 |
| guideText | 引导文字 |
| message | 说明或异常原因 |
| errorCode | 错误码,与第 10 节相同 |
| timestamp | 本条时间,Unix 毫秒 |
11.4 guide_event 操作事件
操作员动作和关键系统事件。有会话时 sessionUuid 与 guide_session.sessionUuid 相同;无会话时为空。
| 字段 | 说明 |
|---|---|
| sessionUuid | 所属会话;无会话时为空 |
| timestamp | 事件时间,Unix 毫秒 |
| eventType | 事件类型,见下表 |
| message | 说明文字 |
| payload | 附加 JSON 文本;自检事件为 selfCheck 对象,其余通常为空 |
| eventType | 写入时机 | sessionUuid | payload |
|---|---|---|---|
| boot_self_check | 应用初始化完成时的开机自检 | 空 | 自检结果 |
| self_check | 点击开始后的启动自检 | 有会话则为该次,否则为空 | 自检结果 |
| session_begin | 自检通过,引导会话开始 | 有 | 空 |
| session_end | 停止、急停或流程结束 | 有 | 空 |
| person_chock | 轮挡区域人员首次确认 | 有 | 空 |
| chock_on | 人工上轮挡 | 有 | 空 |
| chock_off | 人工下轮挡 | 有 | 空 |
| maintenance | 进入或退出维护模式 | 有则带会话,否则为空 | 空 |