1 范围
本文件规定了智能网联汽车云控系统路侧与云端数据交互的总体架构、数据类型、传输规则以及路侧与RSU、路侧与RCU之间的数据交互协议。
本文件适用于云端与路侧RSU、云端与路侧RCU之间的应用层数据交互。
2 规范性引用文件
下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
GB 5768.2-2009 道路交通标志和标线 第2部分道路交通标志
GB/T 29100-2012 道路交通信息服务 交通事件分类与编码
3 术语和定义
下列术语和定义适用于本文件。
3.1 云控基础平台 cloud control basic platform
云控基础平台由边缘云、区域云与中心云三级云组成,形成逻辑协同、物理分散的云计算中心。云控基础平台以车辆、道路、环境等实时动态数据为核心,结合支撑云控应用的已有交通相关系统与设施的数据,为智能网联汽车与产业相关部门和企业提供标准化共性基础服务。
3.2 客户端 client
进行数据交互时,作为路侧数据发送方的一端。
3.3 服务端 server
进行数据交互时,作为路侧数据接收方的一端。
3.4 上行 upstream
路侧到云端的数据传输方向。
3.5 下行 downstream
云端到路侧的数据传输方向。
3.6 心跳 heartbeat
客户端到服务端发送的用于维护连接不被断开的通信数据。
3.7 心跳回应 heartbeat response
服务端对心跳数据的回应数据。
3.8 路侧感知目标 road side sensor objective
路侧基础设施基于传感器(摄像头、雷达等)原始数据或结构化数据,结过融合、分析计算得到的道路使用者目标感知结果数据。
3.9 路侧感知事件 road side sensor event
路侧基础设施结合传感器(摄像头、雷达等)输出数据或路侧感知结果,经过识别或分析得到影响其他车辆行驶相关的交通事件数据。
3.10 路侧设备状态 road side unit status
路侧各传感器(摄像头、雷达等)设备的状态数据。
3.11 边缘云 edge cloud
车路云一体化融合控制系统中云控基础平台的边缘云,主要面向网联汽车提供增强行车安全的实时性与弱实时性云控应用基础服务。
3.12 路侧计算单元 road side computing unit
部署在道路、公路沿线或者场端,配合其他设施或系统完成交通信息汇聚、处理的计算模块、设备或设施。
4 缩略语
下列缩略语适用于本文件。
BSM 基本安全消息 Basic Safety Message
CFG 配置信息 Configuration
CLOUD2RCU 云端发送至路侧计算单元 Cloud to RCU
CLOUD2RSU 云端下发至路侧单元 Cloud to RSU
MQTT 消息队列遥测传输协议 Message Queuing Telemetry Transport
OBU 车载单元 Onboard Unit
RCU 路侧计算单元 Road Side Computing Unit
RCU2CLOUD 路侧计算单元上报至云端 RCU to Cloud
RSI 路侧单元信息 Road Side Information
RSM 路侧安全消息 Road Safety Message
RSU 路侧单元 Road Side Unit
RSU2CLOUD 路侧单元上报至云端 RSU to Cloud
SPAT 信号灯相位与配时消息 Signal Phase and Timing Message
UTC 协调世界时 Coordinated Universal Time
5 总体架构
总体架构见T/CSAE XXXX(第一部分),路云交互的架构范围见图1。
6 数据类型
6.1 字符串数据类型
根据消息集定义,采用JSON,protobuf,ASN.1等传输格式,宜采用JSON格式。JSON字符串数据类型见表1。
序号 | JSON元数据类型 | 长度 | 数据描述 |
---|---|---|---|
1 | JSON_INT | 4 BYTE | 整型,-2147483648~2147483647 |
2 | JSON_DOUBLE | 8 BYTE | 双精度浮点型或数据长度大于4byte的内容,-1.79E+308~1.79E+308 |
3 | JSON_STRING | 不固定 | 字符串(UTF-8) |
4 | JSON_ITEM | 不固定 | JSON字符串基本单元,格式为:键/值对key:value,用半角冒号 分割。 |
5 | JSON_OBJECT | 不固定 | JSON字符串的一个对象,对象的内容本身是一个json字符串 |
6 | JSON_ARRAY | 不固定 | JSON字符串中的一个数组,一个数组中可能包含一个或多个ITEM、 OBJECT、ARRAY |
7 | JSON_ TIMESTAMP_UTC | 8 BYTE | 无符号整型,自1970年1月1日00:00:00以来的毫秒数。 |
6.2 二进制数据类型
对于采用二进制格式传输的消息集,二进制数据类型见表 2。
名称 | 长度 | 描述 |
---|---|---|
BYTE | 1 BYTE | 无符号整型 |
BYTE[n] | n BYTE | 无符号整型数组 |
WORD | 2 BYTE | 无符号整型 |
DWORD | 4 BYTE | 无符号四字节整形(双字,32位) |
INT | 4 BYTE | 有符号整型 |
UNSIGNED INT | 4 BYTE | 无符号整型 |
LONG | 8 BYTE | 有符号长整型 |
UNSIGNED LONG | 8 BYTE | 无符号长整型 |
FLOAT | 4 BYTE | 单精度浮点数 |
DOUBLE | 8 BYTE | 双精度浮点数 |
STRING[n] | n BYTE | 字符串(UTF-8) |
TIMESTAMP | 8 BYTE | UTC时间,当前时刻距1970年1月1日 0时整的毫秒数,经过东八区转换后的数 值 |
INT8_T | 1 BYTE | 单字节有符号整型 |
INT16_T | 8 BYTE | 有符号短整型 |
7 传输规则
7.1 整体规则
传输应符合下列要求。
——本文件中经纬度等坐标信息采用GCJ-02坐标系;
——本文件中所有字符串采用UTF-8编码格式;
——本文件中所有时间戳为东八区UTC时间。
7.2 云端与路侧 RSU 传输规则
7.2.1 概述
可根据应用选择MQTT、HTTPS等传输协议,建议采用MQTT传输的数据协议。对于采用MQTT传输协议的,宜使用JSON格式,也可以根据消息集定义,采用protobuf,ASN.1等格式。当云端向路侧RSU下发数据时,路侧RSU应先向MQTT服务器订阅与指定RSU相关的TOPIC,并保持等待数据状态。云端根据心跳数据中的版本值向MQTT服务器发布对应TOPIC数据。当路侧RSU向云端上传BSM、心跳数据时,云端应先向MQTT服务器订阅与RSU相关的TOPIC(全局的),并保持等待数据状态。路侧RSU向MQTT服务器发布对应TOPIC数据。云端与路侧RSU数据交互见图2。
7.2.2 MQTT 规则
单个数据包格式的异常不能说明问题,统计其数据异常的频率可以分析出数据来源或者应用程序中的BUG。
7.2.3 与 RSU 相关的 TOPIC
边缘云向路侧RSU下发时,应发送给指定RSU,故TOPIC名称中应带有RSU的编号,RSU只订阅与自身编号相关的TOPIC。路侧RSU向云端上传数据时,云端统计汇总所有RSU上传的数据,应发布统一格式的TOPIC名称,由云端订阅。TOPIC规则建议如下:
RSU2CLOUD_HEARTBEAT:vpub/rsu/heartbeat/<rsu_id>
CLOUD2RSU_CFG:cpub/rsu/cfg/<rsu_id>
RSU2CLOUD_BSM:vpub/rsu/bsm/<rsu_id>
CLOUD2RSU_SPAT:cpub/rsuspat/<rsu_id>
CLOUD2RSU_RSI:cpub/rsu/rsi/<rsu_id>
CLOUD2RSU_MAP:cpub/rsu/map/<rsu_id>
CLOUD2RSU_RSM:cpub/rsu/rsm/<rsu_id>
RSU2CLOUD_RSM:vpub/rsu/rsm/<rsu_id>
RSU2CLOUD_RSI:vpub/rsu/rsi/<rsu_id>
7.2.4 与 RSU 间通信链路要求
7.2.4.1 基于 MQTT 协议 3.1.1 版本,采用用户名密码及开启 ACL 的方式进行授权认证。
7.2.4.2 传输层支持 TLS1.2 版本协议,采用双向认证,证书格式 X.509,秘钥长度 2048,通过 PKCS10格式证书申请文件申请。
7.3 云端与路侧 RCU 传输规则
7.3.1 概述
7.3.1.1 可根据应用选择 TCP、UDP 等传输协议,宜采用 TCP 协议。
7.3.1.2 TCP 协议采用大端模式的网络字节序来传递字和双字以及有符号整数、无符号整数、有符号长整数、无符号长整数、单精度浮点数、双精度浮点数、时间戳、有符号短整数。RCU 系统和软件启动后,作为客户端请求与云端建立 TCP 连接,云端为服务端。每个 RCU 都有固定 IP 地址。
7.3.1.3 每个 TCP 连接上报的数据表示一个 RCU 节点的感知目标、感知事件、设备状态等数据。
7.3.1.4 消息集中的“字段名称”仅作为数据定义时的参考描述使用,实际数据传输时不需要传该值,只需要按数据类型、长度、字段值要求规则进行赋值。
7.3.1.5 路侧 RCU-云端数据交互见图 3。
7.3.2 TCP 传输时序
7.3.2.1 建立 TCP 连接后,RCU 每 1 分钟向云端发送心跳数据,云端收到后,向 RCU 返回心跳回应数据。如果 RCU 发送心跳数据后,超时 1 秒未收到数据心跳回应数据,则重发。如果连续重发三次认为连接异常,RCU 断开本连接后进行重连。
7.3.2.2 RCU 每 10 秒向云端发送路侧设备状态数据,云端收到后,向 RCU 返回路侧设备状态回应数据。
如果 RCU 发送路侧设备状态数据后,超时 1 秒未收到路侧设备状态回应数据,则重发。如果连续重发三次认为连接异常,RCU 断开本连接后进行重连。
7.3.2.3 RCU 以不低于 10Hz 的固定频率向云端上报路侧感知目标数据。
7.3.2.4 RCU 识别到交通事件时,向云端发送路侧感知事件数据,云端收到后,向 RCU 返回路侧感知事件回应数据。如果 RCU 发送路侧感知事件数据后,超时 1 秒未收到路侧感知事件回应数据,则重发。
如果连续重发三次认为连接异常,RCU 断开本连接后进行重连。
7.3.2.5 当交通事件结束时,RCU 向云端发送路侧感知事件取消数据,云端收到后,向 RCU 返回路侧感知事件取消回应数据。如果 RCU 发送路侧感知事件取消数据后,超时 1 秒未收到回应数据,则记录异常日志并重发。如果连续重发三次未收到回应数据,RCU 记录异常日志并断开本连接后进行重连。
7.3.2.6 RCU 因未能从云端接收到对应数据的回应数据,且达到重发上限(三次)时,应主动断开与云端的连接,在间隔一定时间(单位:分钟)后进行重连。重连间隔时间计算公式如下。
T(n)=(n*3)
式中:
T——间隔时间;
n——重连次数。
注:重连成功后,清零积累的重发次数。
7.3.3 数据包结构
一个完整的数据包应由起始符、数据报头(数据单元长度、数据类别、版本号、时间戳-毫秒、时间戳-分钟)、数据单元组成,数据包结构和定义见表3。
7.3.4 命令单元
7.3.4.1 数据类别分类
采用TCP协议传输的数据类别分段定义见表4。
7.3.4.2 数据类别
路侧感知设备与云端通信涉及到的数据类别定义见表5。
表 5 数据类别定义
值 | 定义 | 编码 | 是否必填 | 描述及要求 | 方向 | 类别 | 频率(Hz) |
---|---|---|---|---|---|---|---|
121(0x79) | 路侧感知目 标上报 | RCU2CLOUD_OBJS | 必填 | 路侧向云端上报的感 知目标(目标物) | 上行 | 定频 | 10 |
123(0x7B) | 路侧感知事 件上报 | RCU2CLOUD_EVENT | 可选 | 路侧向云端上报的感 知事件 | 上行 | 触发 | —— |
124(0x7C) | 路侧感知事 件上报回应 | CLOUD2RCU_EVENT_RES | 可选 | 云端对路侧上报的感 知事件做出的回应 | 下行 | 回应 | —— |
125(0x7D) | 路侧感知事 件取消 | RCU2CLOUD_EVENT_CANCEL | 可选 | 路侧向云端上报的感 知事件取消 | 上行 | 触发 | —— |
126(0x7E) | 路侧感知事 件取消回应 | CLOUD2RCU_EVENT_CANCEL_RES | 可选 | 云端对路侧上报的感 知事件取消做出的回 应 | 下行 | 回应 | —— |
129(0x81) | 路侧设备状 态上报 | RCU2CLOUD_STATUS | 必填 | 路侧向云端上报的设 备状态 | 上行 | 定频 | 0.1(1/10) |
130(0x82) | 路侧设备状 态上报回应 | CLOUD2RCU_STATUS_RES | 必填 | 云端对路侧上报的设 备状态做出的回应 | 下行 | 回应 | —— |
141(0x8D) | 心跳 | RCU2CLOUD_HEARTBEAT | 必填 | 路侧向云端发送心跳 信息 | 上行 | 定频 | 0.0167(1/60) |
142(0x8E) | 心跳回应 | CLOUD2RCU_HEARTBEAT_RES | 必填 | 云端对路侧发送的心 跳信息做出的回应 | 下行 | 回应 | —— |
注:定频:固定频率上报;触发:触发式上报(有就上报,没有就不上报);回应:对某类数据的回应数据。
7.3.5 与 RCU 通信链路要求
传输层支持TLS1.2版本协议,采用双向认证,证书格式X.509,秘钥长度2048,通过PKCS10格式证书申请文件申请。
8 云端与 RSU 的数据交互
8.1 RSI 数据下发(CLOUD2RSU_RSI)
8.1.1 概述
云端向RSU下发的RSI数据消息,格式为JSON字符串。消息集用于云端静态RSI事件的下发、取消、更新,动态RSI事件的下发。
8.1.2 消息集
RSI数据下发消息集见表6。
表 6 RSI 数据下发消息集
序号 | 字段名称 | 字段含义 | 数据类型 | 是否必填 | 取值说明 |
---|---|---|---|---|---|
1 | msgType | 数据类型 | JSON_STRING | 必填 | 表明该数据为rsi或rsm或map或spat或其他 待添加的自定义类型,此处为固定值"rsi"。 |
2 | rsiId | RSI编号 | JSON_INT | 必填 | [0…255]平台给出的该RSI事件的编号,用于 和alertType/eventType一起表征同一事件。 |
3 | msgCnt | 计数器编号 | JSON_INT | 必填 | [0…127],RSU自己生成0~127循环。 |
8.1.3 应用场景分类
静、动态RSI事件的下发与更新中,“status"字段值为0,静态事件"type"字段为1,动态事件"type” 字段为0,静态RSI事件的取消。
静 态 RSI 事 件 的 取 消 中 , “status” 字 段 值 为 1 , 仅 保 留 “msgType”,“uuid”,“status”,“alertType”,“strategy"描述指定事件。在静态RSI取消消息中,仅"msgType”,“uuid”,“status”,“alertType”,"strategy"为必填字段,其余为可选字段。
注:动态RSI事件没有取消功能。
8.1.4 异常处理
静态RSI事件下发时,"beginTime"字段值应小于"endTime"字段值,否则该数据失效,应当丢弃,并保存日志。
8.2 RSM 数据下发(CLOUD2RSU_RSM)
8.2.1 概述
云端下发至RSU,用于转换为RSM信息的数据内容,格式为JSON字符串。消息集用于云端将在云上汇聚或融合的交通参与者数据按需下发给路侧RSU。
8.2.2 消息集
RSM数据下发消息集见表7。
8.3 MAP 数据下发(CLOUD2RSU_MAP)
8.3.1 概述
云端下发至RSU,用于下发转换为MAP信息集的地图数据,格式为JSON字符串。RSU广播频率为1 Hz。
注:根据系统总体结构,MAP数据由云控平台从地图获取。
8.3.2 消息集
MAP数据下发消息集见表8。
8.4 SPAT 数据下发(CLOUD2RSU_SPAT)
8.4.1 概述
云端下发至RSU,用于转换为SPAT信息的数据内容,格式为JSON字符串。
注:根据系统总体结构,SAPT数据由云控平台从路侧信号机获取。
8.4.2 消息集
SPAT数据下发消息集见表9。
8.5 BSM 数据上报(RSU2CLOUD_BSM)
8.5.1 概述
RSU发送至云端RSU接收到的信号范围内车辆BSM数据,RSU每收到一个BSM数据,发送一次RSU2CLOUD_BSM数据。协议支持RSU同时上传多个BSM数据,在无特殊说明情况下,RSU2CLOUD_BSM数据内容默认只包含一个BSM数据,格式为JSON字符串。
8.5.2 消息集
BSM数据上报消息集见表10。
8.6 RSU 心跳数据上报(RSU2CLOUD_HEARTBEAT)
8.6.1 概述
RSU上报给云端,当RSU未收到BSM数据时,按照固定时间间隔1分钟,上传RSU2CLOUD_HEARTBEAT数据,格式为JSON字符串。
8.6.2 消息集
心跳数据上报消息集见表11。
序号 | 字段名称 | 字段含义 | 数据类型 | 是否必填 | 取值说明 |
---|---|---|---|---|---|
1 | msgType | 信息类型 | JSON_STRING | 必填 | 可 以取 “rsm” , “rsi” ,“spat”, “map” , “heartbeat” , “bsm” , “cfg” , 此 处 为 “heartbeat”。 |
2 | rsuId | RSU编号 | JSON_STRING | 必填 | 八位字符串,例如"R-JY009Q"。 |
3 | timestamp | 时间戳 | JSON_TIMESTAMP_UTC | 必填 | 该帧数据中定位数据的时间戳。 |
4 | version | 协议版本号 | JSON_INT | 可选 |
8.7 CFG 数据下发(CLOUD2RSU_CFG)
8.7.1 概述
云端主动触发,下发CLOUD2RSU_CFG数据,用以控制RSU上传下发策略,格式为JSON字符串。RSU默认传递"rsm",“rsi”,“spat”,“map”,“heartbeat”,"bsm"所有数据。
8.7.2 消息集
CFG数据下发消息集见表12。
表 12 CFG 数据下发消息集
序号 | 字段名称 | 字段含义 | 数据类型 | 是否必填 | 取值说明 |
---|---|---|---|---|---|
1 | msgType | 信息类型 | JSON_STRING | 必填 | 可 取 “rsm” 、 “rsi” 、 “spat” 、 “map” 、 “heartbeart”、“bsm”、“cfg”,此处为 “cfg”。 |
2 | rsuId | RSU编号 | JSON_STRING | 必填 | 八位字符串,例如"R-JY009Q"。 |
3 | timestamp | 时间戳 | JSON_TIMESTAMP_UTC | 必填 | 该帧数据中定位数据的时间戳。 |
4 | bsm | BSM开关 | JSON_INT | 必填 | 0:表示关闭,1表示打开,默认打开。 |
5 | heartbeat | HEARTBEAT开 关 | JSON_INT | 必填 | 0:表示关闭,1表示打开,正常情况下不 关闭该功能,默认打开。 |
6 | map | MAP开关 | JSON_INT | 必填 | 0:表示关闭,1表示打开,默认打开。 |
7 | spat | SPAT开关 | JSON_INT | 必填 | 0:表示关闭,1表示打开,默认打开。 |
8 | rsi | RSI开关 | JSON_INT | 必填 | 0:表示关闭,1表示打开,默认打开。 |
9 | rsm | RSM开关 | JSON_INT | 必填 | 0:表示关闭,1表示打开,默认打开。 |
10 | startTime | 指令有效开始 时间 | JSON_TIMESTAMP_UTC | 必填 | RSU从该时刻开始执行本条指令。 |
11 | endTime | 指令有效结束 时间 | JSON_TIMESTAMP_UTC | 必填 | RSU在该时刻停止执行本条指令,回复默 认设置,传递所有数据。 |
12 | uuid | 消息唯一编号 | JSON_STRING | 必填 | |
13 | status | STATUS 开关 | JSON_INT | 必填 | 0:表示关闭,1表示打开,默认打开。 |
14 | event | EVENT 开关 | JSON_INT | 必填 | 0:表示关闭,1表示打开,默认打开。 |
8.8 RSI 数据上报(RSU2CLOUD_RSI)
8.8.1 概述
RSU上报至云端,用于记录路侧触发RSI触发状态,格式为JSON字符串。消息集记录路侧静态RSI事件的广播、取消、更新等情况。
8.8.2 消息集
RSI数据上报消息集见表6。
8.8.3 应用场景分类
静、动态RSI事件的广播执行,“status"字段值为0,静态事件"type"字段为1,动态事件"type"字段为0,静态RSI事件的取消静态RSI事件的取消中 , “status” 字段值为1 , 仅保留"msgType”,“uuid”,“status”,“alertType”,“strategy"描述指定事件。在静态RSI取消消息中,仅"msgType”,“uuid”,“status”,“alertType”,"strategy"为必填字段,其余为可选字段。
注:动态RSI事件没有取消功能。
8.8.4 异常处理
静态RSI事件上报时,"beginTime"字段值应小于"endTime"字段值,否则该数据失效,应当丢弃,并保存日志。
8.9 RSM 数据上报(RSU2CLOUD_RSM)
8.9.1 概述
RSU上报至云端,作为路侧广播RSM消息的记录及供云端生成更广范围的交通决策及其他场景的触发数据源。
8.9.2 消息集
RSM数据上报消息集见表7。
8.10 RSU 数据确认(RSU2CLOUD_ACK)
8.10.1 概述
RSU每接收到一条静态RSI、MAP、CFG数据,都向云端发送ACK,以确认接收到数据。云端对于未接收到ACK的数据,执行暂存、上线重传。
8.10.2 异常处理
每隔1秒检查一次是否有ACK数据,共计执行3分钟。在检查时间范围内如果一直没有接收到ACK,则对数据缓存,在RSU上线后进行补发。
8.10.3 dW消息集
RSU数据确认的消息集见表13。
序号 | 字段名称 | 字段含义 | 数据类型 | 是否必填 | 取值说明 |
---|---|---|---|---|---|
1 | msgType | 信息类型 | JSON_STRING | 必填 | 固定为ack" |
2 | rsuId | RSU编号 | JSON_STRING | 必填 | 八位字符串,例如"R-JY009Q"。 |
3 | ackType | Ack确认信息 类型 | JSON_STRING | 必填 | 可以取”rsi”、”map”、”cfg” |
4 | ackUuid | Ack确认消息 编号 | JSON_STRING | 必填 |
9 云端与 RCU 的数据交互
9.1 路侧感知目标上报(RCU2CLOUD_OBJS)
路侧感知目标按固定频率上报,频率不小于10 Hz。同一目标物在所有路侧单元上报的感知目标数据中保持一致。感知目标、目标信息、轨迹点、滤波信息、状态量协方差数据格式和定义见表14~表18。
采用TCP传输。
版本号 0x01
表14 感知目标数据(版本号0x01)上报消息集
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | channelId | 渠道来源 | BYTE | [0…255]枚举,定义参见附录K。 |
2 | rcuId | RCUID | BYTE[8] | 长度固定为8位的RCU编号,定义参见附录H。 |
3 | deviceType | 设备类别 | BYTE | [0…255]枚举,定义见附录L。 |
4 | deviceId | 感知设备编号 | BYTE[11] | 当 devType 等于 0 或 1 时,此值等于 0x0000000000000000000000(11 字节,每字节值等于 0)。 否则,此值等于对应感知设备的编号。 感知设备编号为22位数字字符串,每两位数字字符转换为一个 字节的正整数,共计传输11个字节数据。 |
5 | targetsNum | 目标数量 | WORD | [0…65535]检测到的目标物总数。 |
6 | targets | 目标数据包 | —— | 目标信息数据格式和定义见表15。 |
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | longitude | 经度 | DWORD | [0…3600000001]数值偏移量-1800000000,3600000001表示无 效,单位1e-7 °,物理值范围-180 °~180 °,大于0表示 东经。 |
2 | latitude | 纬度 | DWORD | [0…1800000001]数值偏移量-900000000,900000001 表示无 效,单位 1e-7 °, 物理值范围-90 °~90 °,大于0表示北纬。 |
3 | posConfidence | 位置精度等级 | BYTE | [0…255]枚举,定义见附录J。 |
4 | speed | 速度 | WORD | [0…65535]65535表示无效,单位:0.01 m/s。 |
5 | speedConfidence | 速度精度等级 | BYTE | [0…255]枚举,定义见附录J。 |
6 | heading | 航向角 | DWORD | [0…3600001]360001表示无效,车头指向方向与正北方向顺时 针夹角,单位:1e-4 °。 |
7 | headConfidence | 航向精度等级 | BYTE | [0…255]枚举,定义见附录J。 |
9.2 路侧感知事件上报与回应(RCU2CLOUD_EVENT)
路侧感知事件上报、路侧感知事件上报与回应数据格式和定义见表19~表20。
版本号 0x01
表 19 感知事件上报(版本号 0x01)数据格和式定义
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | channelId | 渠道来源 | BYTE | [0…255]枚举,定义见附录K。 |
2 | rcuId | RCUID | BYTE[8] | 长度固定为 8 位的 RCU 编号,定义参见附录 H。 |
3 | eventType | 事件类型 | BYTE | [0…255]枚举,定义见附录M。 |
4 | confidence | 事件发生的置信 度 | BYTE | [0…255] 0~254:预留 255:表示无效,当无法描述事件精度时,可使用此值。 |
5 | longitude | 经度 | DWORD | [0…3600000001]数值偏移量-1800000000,3600000001表示无 效,单位1e-7°,物理值范围-180 °~180 °,大于0表示东 经。 |
6 | latitude | 纬度 | DWORD | [0…1800000001]数值偏移量-900000000,900000001表示无 效,单位1e-7°,物理值范围-90 °~90 °,大于0表示北纬。 |
7 | timestamp | 时间戳 | LONG | 事件发生的时间戳(UTC时间,东八区)。 |
8 | eventId | 事件唯一编号 | STRING[16] | 由16个字符组成的标识事件。 |
9 | extsLen | 扩宽字段内容长 度 | WORD | 扩展字段内容长度。 |
10 | exts | 扩展字段内容 | STRING[n] | 扩展字段内容,JSONObject字符串(UTF-8)。 |
11 | targetIdsLen | 事件关联的目标 对象 uuid 个数 | BYTE | 事件关联的目标对象(感知目标中的目标对象)的 uuid 个数。 此项值为0时,不传输事件关联目标对象uuid列表。 |
12 | targetIds | 事件关联目标对 象uuid列表 | —— | 事件关联的目标对象 uuid 列表,规则见表 15 中 uuid 的定义; 当targetIdsLen值为0时,不传输此数据项。 |
表20 感知事件上报回应(版本号 0x01)数据格和式定义
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | eventId | 事件唯一编号 | STRING[16] | 由 16 个字符组成的标识事件。 感知事件上报数据中的eventId。 |
9.3 路侧感知事件取消与回应(RCU2CLOUD_EVENT_CANCEL)
路侧感知事件取消的上报与回应数据格式和定义见表21~表22。
版本号 0x01
表21 路侧感知事件取消(版本号0x01)数据格式和定义
序号 | 字段名称 | 字段含义 | 数据类型 | 是否必填 |
---|---|---|---|---|
1 | rcuId | RCUID | BYTE[n] | 长度固定为8位的RCU编号,定义见附录C。 |
2 | channelId | 渠道来源 | BYTE | [0…255]枚举,定义见附录 K。 |
3 | timestamp | 时间戳 | TIMESTAMP | 事件取消的时间戳(UTC 时间,东八区)。 |
4 | eventId | 事件唯一编号 | STRING[16] | 由 16 个字符组成的标识事件 |
表22 路侧感知事件取消回应(版本号0x01)数据格式和定义
序号 | 字段名称 | 字段含义 | 数据类型 | 是否必填 |
---|---|---|---|---|
1 | rcuId | RCUID | BYTE[n] | 长度固定为8位的RCU编号,定义见附录C。 |
2 | channelId | 渠道来源 | BYTE | [0…255]枚举,定义见附录 K。 |
3 | timestamp | 时间戳 | TIMESTAMP | 事件取消的时间戳(UTC 时间,东八区)。 |
4 | eventId | 事件唯一编号 | STRING[16] | 由 16 个字符组成的标识事件。 |
9.4 路侧设备状态上报与回应(RCU2CLOUD_STATUS)
设备状态上报、摄像头状态、雷达状态、激光雷达状态、设备状态上报与回应数据格式和定义见表23~表27。
版本号 0x01
表23 设备状态上报(版本号0x01)数据格式和定义
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | channelId | 渠道来源 | BYTE | [0…255]枚举,定义见附录K。 |
2 | rcuId | RCUID | BYTE[8] | 长度固定为 8 位的 RCU 编号,定义参见附录 H。 |
3 | status | 状态代码 | WORD | [0…255]枚举,定义见附录 N。 |
4 | camNum | 当前工作的相机 数量 | BYTE | [0…255]数量为 0 时,后续状态数据域长度为 0,否则按摄 像头状态数据格式和定义进行赋值。 |
5 | camStatus | 摄像头状态列表 | —— | 摄像状态信息表见表 24。 |
6 | radarNum | 当前工作的雷达 数量 | BYTE | [0…255]数量为 0 时,后续状态数据域长度为 0,否则按雷 达状态数据格式和定义进行赋值。 |
7 | radarStatus | 雷达状态列表 | —— | 雷达状态信息表见表 25。 |
8 | lidarNum | 当前工作的激光 雷达数量 | BYTE | [0…255]数量为 0 时,后续状态数据域长度为 0,否则按激 光雷达状态数据格式和定义进行赋值。 |
9 | lidarStatus | 激光雷达状态列 表 | —— | 激光雷达状态信息表见表 26。 |
表24 摄像头状态(版本号0x01)数据格式和定义
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | id | 内部编号 | BYTE | [0…255]每个摄像头在本数据中的顺序号,从 0 开始,最大值 255。 |
2 | camId | 摄像头设备编号 | BYTE[11] | 摄像头编号一般为 22 位数字字符串,每两位数字字符转换为 一个字节的正整数,共计传输 11 个字节数据。 |
3 | camStatus | 摄像头工作状态 | BYTE | [0…255]枚举,定义见附录 N。 |
表 25 雷达状态(版本号 0x01)数据格式和定义
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | id | 内部编号 | BYTE | [0…255]每个雷达在本数据中的顺序号,从 0 开始,最大值 255。 |
2 | radarId | 雷达设备编号 | BYTE[11] | 雷达编号一般为 22 位数字字符串,每两位数字字符转换为一 个字节的正整数,共计传输 11 个字节数据。 |
3 | radarStatus | 雷达工作状态 | BYTE | [0…255]枚举,定义见附录 N。 |
表26 激光雷达状态(版本号0x01)数据格式和定义
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | id | 内部编号 | BYTE | [0…255]每个激光雷达在本数据中的顺序号,从 0 开始,最大 值 255。 |
2 | lidarId | 激光设备编号 | BYTE[11] | 激光雷达编号一般为 22 位数字字符串,每两位数字字符转换 为一个字节的正整数,共计传输 11 个字节数据 |
3 | lidarStatus | 激光雷达工作状 态 | BYTE | [0…255]枚举,定义见附录 N。 |
表27 设备状态上报回应(版本号0x01)数据格式和定义
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | timestamp | 时间戳 | BYTE[8] | 此字段里的值对应“设备状态上报”固定头部分“时间戳-毫 秒”、“时间戳-分钟”解析后对应的毫秒值 UTC 时间戳值。 |
9.5 RCU 心跳及回应(RCU2CLOUD_HEARTBEAT)
心跳与心跳回应数据格式和定义见表28~表29。
版本号 0x01
表28 心跳(版本号0x01)数据格式和定义
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | 无 |
表29 心态回应(版本号0x01)数据格式和定义
序号 | 字段名称 | 字段含义 | 数据类型 | 取值说明 |
---|---|---|---|---|
1 | 无 |
注:心跳及回应数据的数据单元内容为空,即0字节,完整消息体是固定报头,共14个字节。
示例 1:
车辆心跳及心跳回应:
F20000000C01000001835A34B92C
F20000000D01000001835A34B93B
示例 2:
RCU 心跳及心跳回应:
F20000008D01000001835A34B92C
F20000008E01000001835A34B93B
附 录 A(资料性)CLOUD2RSU_RSI-UUID 生成策略说明
UUID(即EventCode):如:ET_0_2046A1043419_502_1574680367329_10000编码以下划线”_”分割,
第一位为固定值”ET”;
第二位为来源数据设备的类型编码,0:车辆4G/5G网络上传数据生成,1:路侧感知数据生成,2:BSM数据生成,3:信息协同中心下发,4:预留;
第三位为事件来源数据设备Id,如RCUID:2046A1043419,车辆为VEHICLEID,RSU为RSUID,手动下发无设备的统一编号为000000000000(12位0);
第四位为:RSI事件类型;
第五位为:事件产生的时间戳;
第六位为:0~10000内的随机数,不足5位的高位用0补齐。
同一事件UUId相同,同一事件在发生过程中可能会多次发送,发送的内容会不同,路侧端设备根据最新值、策略进行处理,不同的事件UUID不同。同一事件的生成事件UUID和取消事件UUID相同但status值不同,0表示生成事件,1表示取消事件。
由于当前对uuid只有唯一性要求,无其他要求,考虑到兼容以前各场景的实现方式,不做强制性定义要求,只要保证唯一即可。
附 录 B(资料性)调度策略类型说明
RSI调度策略类型说明见表B.1。
附 录 C(规范性)设备 ID 命名方式定义
C.1 概述
路侧、车载设备ID统一使用八位字符串描述,ID中英文字母全部为大写。
C.2 设备 ID 命名
设备ID命名方式见表C.1。
序号 | 位数 | 内容 |
---|---|---|
1 | 1 | 设备类型 |
2 | 2 | 固定为“-” |
3 | 3~4 | 设备厂商 |
4 | 5~8 | 4位32进制内部编号,共计描述(32^4-1)个编号 |
C.3 设备类型
设备类型列表见表C.2。
序号 | 代码 | 内容 |
---|---|---|
1 | B | OBU+T-Box |
2 | C | 车载感知摄像头 |
3 | D | 路侧感知摄像头 |
4 | G | GNSS 卫星惯导定位 |
5 | L | 激光雷达 |
6 | M | 车载监控摄像头 |
7 | N | 路侧监控摄像头 |
8 | O | OBU |
9 | Q | 行车记录仪 |
10 | R | RSU |
11 | S | 毫米波雷达 |
12 | T | T-Box |
13 | U | RCU |
14 | V | 车机 |
15 | W | 微波 |
16 | X | 未知 |
17 | I | 车内后视镜 |
C.4 设备厂商
设备厂商列表见表C.3。
序号 | 代码 | 内容 |
---|---|---|
1 | JY | 金溢 |
2 | DR | 东软 |
3 | WZ | 维智 |
4 | HW | 辉为科技 |
5 | DH | 大华 |
6 | NJ | 耐杰 |
7 | MN | 模拟 |
8 | SM | SmartMicro |
9 | ZH | 苏州智华 |
10 | XY | 星云互联 |
11 | KL | 昆仑 |
12 | WJ | 万集 |
13 | CI | CIDI |
14 | GH | 大唐高鸿 |
15 | QF | 千方 |
16 | GXX | 高新兴 |
17~255 | 预留 | 预留 |
附 录 D(资料性)区域唯一 ID(regionId)定义
regionId为取值范围为[0…65535]的十进制数,其中0以及[60000…65535]用于测试,[1…59999]剩余低4位表示该区域所属城市行政区划代码前四位,最高位取值范围为[0…5],默认为0,1~5用于当区域该区域所属城市行政区划代码前四位代表的的城市中的道路节点(node)数量大于65535时用于扩展。
示例:
regionId:13101,nodeId:1表示上海市第65536个道路节点。
行政区划代码见表D.1。
序号 | 城市名 | 4位行政区划代码 |
---|---|---|
1 | 上海市 | 3101 |
2 | 北京市 | 1101 |
3 | 长沙市 | 4301 |
4 | 柳州市 | 4502 |
附 录 E(资料性)相位定义规则建议
相位(phaseId)编号由道路朝向和信号灯生效的导向方向决定。
参考GAT 1743-2020的规定,进口方向:整数,以地理正北方向为起点的顺时针旋转角度,单位为度(°)。其中取值0表示0度到1度,包含0度且不包含1度。
附 录 F(规范性)相对位置定义
相对位置定义见表F.1。
表 F.1 相对位置定义
序号 | 位置类型 | 类型定义 | 备注 | |
---|---|---|---|---|
1 | NONE | 无 | 0 | 下述相对位置之外的其他位置 |
2 | AHEAD_FAR_LEFT | 同向非相邻左前方 | 1 | |
3 | AHEAD_LEFT | 同向相邻左前方 | 2 | |
4 | AHEAD | 同向正前方 | 4 | |
5 | AHEAD_RIGHT | 同向相邻右前方 | 8 | |
6 | AHEAD_FAR_RIGHT | 同向非相邻右前方 | 16 | |
7 | BEHIND_FAR_LEFT | 同向非相邻左后方 | 32 | |
8 | BEHIND_LEFT | 同向相邻左后方 | 64 | |
9 | BEHIND | 同向正后方 | 128 | |
10 | BEHIND_RIGHT | 同向相邻右后方 | 256 | |
11 | BEHIND_FAR_RIGHT | 同向非相邻右后方 | 512 | |
12 | ONCOMING_FAR_LEFT | 反向非相邻左前方 | 1024 | |
13 | ONCOMING_LEFT | 反向相邻左前方 | 2048 | |
14 | ONCOMING | 反向正前方 | 4096 | |
15 | ONCOMING_RIGHT | 反向相邻右前方 | 8192 | |
16 | ONCOMING_FAR_RIGHT | 反向非相邻右前方 | 16384 | |
17 | INTERSECTING_LEFT | 交叉左前方 | 32768 | |
18 | INTERSECTING_RIGHT | 交叉右前方 | 65536 |
注:上述位置可同时需要,即若参数值为 5,则代表同向非相邻左前方和同向正前方同时需要。
附 录 G(规范性)RSI 事件类型(alertType) 数据格式和定义
G.1 标识标牌数据格式和定义见表 G.1。
表 G.1 标识标牌数据格式和定义
AlertType | 功能 |
---|---|
2 | 急转弯 |
4 | 连续弯路 |
10 | 注意行人(标牌) |
15 | 注意落石 |
17 | 易滑 |
21 | 注意隧道 |
23 | 驼峰桥 |
27 | 过水路面 |
28 | 有人看守铁道口 |
29 | 无人看守铁道路口 |
32 | 注意非机动车(标牌) |
34 | 事故易发路段 |
35 | 慢行 |
36 | 注意障碍物 |
37 | 注意危险 |
38 | 施工 |
41 | 注意潮汐车道 |
47 | 交通拥堵(注意前方车辆排队) |
48 | 停车让行 |
49 | 减速让行 |
51 | 禁止通行 |
54 | 禁止载货汽车驶入 |
75 | 禁止掉头 |
78 | 禁止停车 |
80 | 禁止鸣笛 |
81 | 限宽 |
82 | 限高 |
83 | 限重 |
85 | 限速 |
90 | 区域限速 |
123 | 公交车道 |
137 | Y型交叉路口 |
163 | 车道减少 |
164 | 车道增加 |
165 | 交通监控设备 |
202 | 紧急停车带 |
203 | 服务区预告 |
242 | 学校 |
172 | 入口预告 |
173 | 地点、方向 |
176 | 路名 |
179 | 下一出口预告 |
180 | 出口编号 |
181 | 右侧出口预告 |
182 | 左侧出口预告 |
183 | 出口标志及出口地点方向 |
600 | 方向导向标识牌 |
601 | 注意桥梁 |
G.2 交通事件类型数据格式和定义见表 G.2。
附 录 H(资料性)设备名称定义
各第三方系统的 RSU、边缘计算单元、车辆等设备在云控基础平台的名称为 8 位字符串,由云控基础平台统一生成并提供,云控基础平台将维护此名称与第三方系统对该设备的命名之间的映射关系,规则如下:
a) 设备名称命名方式见表 H.1;
序号 | 位数内容 | 内容 |
---|---|---|
1 | 1 | 设备类型(代码) |
2 | 2 | 固定为“-” |
3 | 3~4 | 设备厂商(代码) |
4 | 5~8 | 4 位 32 进制内部编号,共计描述(32^4-1)个编号 |
b)设备类型见表H.2;
序号 | 代码 | 内容 |
---|---|---|
1 | B | OBU+T-Box |
2 | C | 车载感知摄像头 |
3 | D | 路侧感知摄像头 |
4 | G | GNSS 卫星惯导定位 |
5 | L | 激光雷达 |
6 | M | 车载监控摄像头 |
7 | N | 路侧监控摄像头 |
8 | O | OBU |
9 | U | 路侧计算单元 RCU |
10 | R | 路侧单元 RSU |
11 | S | 毫米波雷达 |
12 | T | T-Box |
13 | V | 车机 |
14 | W | 微波 |
15 | X | 未知 |
a) 设备厂商见表 H.3;
序号 | 代码 | 内容 |
---|---|---|
1 | JY | 金溢 |
2 | DR | 东软 |
3 | WZ | 维智 |
4 | HW | 辉为科技 |
5 | DH | 大华 |
6 | NJ | 耐杰 |
7 | MN | 模拟 |
8 | SM | SmartMicro |
9 | ZH | 苏州智华 |
10 | XY | 星云互联 |
11 | KL | 昆仑 |
12 | WJ | 万集 |
13 | CI | CIDI |
14 | GH | 大唐高鸿 |
15 | QF | 千方 |
16 | GXX | 高新兴 |
17~255 | 预留 | 预留 |
附 录 I(规范性)目标类型定义
目标类型定义见表I.1。
表 I.1 目标类型定义
类别 | 标识内容 | 类别 | 内容 |
---|---|---|---|
0 | 行人 | 10 | 交通标识 |
1 | 自行车 | 15 | 动物 |
2 | 乘用车 | 60 | 路障 |
3 | 摩托车 | 61 | 交通锥 |
4 | 特殊用车辆 | 254 | 其他类型 |
5 | 公交车 | 255 | 未获取 |
6 | 有轨道车 | ||
7 | 卡车 | ||
8 | 三轮车 | ||
9 | 交通信号灯 |
注1:254: 表示实际目标类型不在此表
注2:255: 表示未获取到目标类型
附 录 J(资料性)精度等级
J.1 位置及高程
位置及高程精度见表J.1。
位置及高程精度等级 | 说明 |
---|---|
0 | 无效 |
1 | 误差小于 500m |
2 | 误差小于 200m |
3 | 误差小于 100m |
4 | 误差小于 50m |
5 | 误差小于 20m |
6 | 误差小于 10m |
7 | 误差小于 5m |
8 | 误差小于 2m |
9 | 误差小于 1m |
10 | 误差小于 50cm |
11 | 误差小于 20cm |
12 | 误差小于 10cm |
13 | 误差小于 5cm |
14 | 误差小于 2cm |
15 | 误差小于 1cm |
16~255 | 预留 |
J.2 速度
速度精度见表J.2。
速度精度等级 | 说明 |
---|---|
0 | 无效 |
1 | 误差小于 100m/s |
2 | 误差小于 10m/s |
3 | 误差小于 5 m/s |
4 | 误差小于 1 m/s |
5 | 误差小于 0.1 m/s |
6 | 误差小于 0.05 m/s |
7 | 误差小于 0.01 m/s |
8~255 | 预留 |
J.3 航向
航向精度等级见表J.3。
航向精度等级 | 说明 |
---|---|
0 | 无效 |
1 | 误差小于 10° |
2 | 误差小于 5° |
3 | 误差小于 1° |
4 | 误差小于 0.1° |
5 | 误差小于 0.05° |
6 | 误差小于 0.01° |
7 | 误差小于 0.00125° |
8~255 | 预留 |
J.4 加速度
加速度精度等级见表J.4。
加速度精度等级 | 说明 |
---|---|
0 | 无效 |
1 | 误差小于 10 m/s 2 |
2 | 误差小于 1 m/s 2 |
3 | 误差小于 0.1 m/s |
4 | 误差小于 0.01 m/s 2 |
5 | 误差小于 0.001 m/s 2 |
6~255 | 预留 |
附 录 K(资料性)渠道来源
渠道来源见表K.1。
渠道来源 | 说明 |
---|---|
1 | 云控基础平台 |
11 | 百度边缘计算节点 |
12 | 大唐路侧感知设备 |
13 | 千方路侧感知设备 |
14 | 星云互联路侧感知设备 |
15 | 新岸线路侧感知设备 |
16 | 高新兴路侧感知设备 |
17 | 万集路测感知设备 |
18~255 | 预留 |
附 录 L(规范性)数据来源\设备类别
设备类别见表L.1。
数据来源/设备类别 | 说明 |
---|---|
0 | 未知来源 |
1 | 融合结果 |
2 | 摄像头 |
3 | 毫秒波雷达 |
4 | 激光雷达 |
5~255 | 预留 |
附 录 M(规范性)事件类别
事件类别见表M.1。
事件类别 | 说明 |
---|---|
0 | 倒车\逆行 |
1 | 慢行 |
2 | 快行 |
3 | 紧急制动 |
4 | 异常停车 |
5~255 | 预留 |
附 录 N(规范性)状态代码
状态代码应符合下列要求:
a) RCU 状态代码见表 N.1;
e)目标状态代码见表 N.5。
目标状态 | 说明 |
---|---|
0 | 静止 |
1 | 运动 |
2~255 | 预留 |