高速公路ETC系统DSRC设备串行口通讯协议
1 串行通讯方式
串行口采用半双工的异步串行通讯方式,协议格式为“115200,N,8,1”,即波特率115200bps,无奇偶校验,8位数据,1个停止位。
1.1 串口通讯数据帧格式
RSU和PC通讯的数据帧格式如图1-1:
图1-1
空应答如图1-2:
图1-2
说明见表1-1:
表1-1 RSU和PC通讯的数据帧格式说明
1.2 特殊字节转义处理
数据帧开始标志为FFFFH,帧结束标志为FFH。其他字段不能出现FFH,如果数据确实为FFH,需对其进行转义处理。
发送数据时,如果在待发送字段中出现FFH字节时,将FFH分解为FEH和01H这两个字节来发送;如果在待发送字段出现FEH字节时,需将FEH分解为FEH和00H这两个字节来发送。
接收数据时,如果出现“FE 01”这样连续两个字节时将之合为一个字节FFH;如果出现“FE 00”这样连续两个字节时将之合为一个字节FEH。
RSU送上来的所有整型数据,未特定说明,其字节排序均为高位在前,低位在后。
1.3 命令的应答要求
PC必须对RSU的命令作出应答,可以是携带应答也可以是空应答,RSU不一定对PC的每个命令都要应答。
应答时,PC将接收到的命令帧的RSCTL的高半字节和低半字节交换,作为应答帧的RSCTL。
图1-3 串口通讯流程
2 RSU/PC通信帧数据结构
2.1 PC发往RSU的指令:
指令名称代码功能说明
初始化指令C0H 对RSU关键参数如功率、车道模式等进行初始化/设置
对PC收到RSU发来的信息的应答,表示收到信息并要求继续继续交易指令C1H
处理指定OBU
对PC收到RSU发来的信息的应答,表示收到信息并要求当前停止交易指令C2H
不再继续处理指定OBU
2.1.1初始化指令-C0
2.1.2 继续交易指令-C1
2.1.3 停止交易指令-C2
2.1.4 消费指令-C6
2.1.5 异常处理指令-C7
2.1.6 开关天线指令-4C
2.2 RSU发往PC的信息帧:
2.2.1 RSU设备状态信息帧-B0
2.2.2 OBU系统信息帧-B2
其中,OBUStatus的定义如下:
2.2.3 OBU车辆信息帧-B3
2.2.4IC卡信息帧-B4
2.2.5成功交易结束帧-B5
3 流程控制
3.1初始化流程控制
当PC收到RSCTL等于0x98的B0帧,表示RSU刚刚上电,PC应发送初始化指令(C0指令)到RSU,作为对收到信息的应答,同时设置RSU的工作参数;RSU设置完工作参数后,向PC发送RSCTL非0x98的B0帧,表示初始化完成;而后PC发送空应答,RSU开始搜索OBU;
当车道软件开启后,主动向RSU发送C0帧,而后收到B0帧(RSCTL非0x98)后,发送空应答,RSU开始搜索OBU;
3.2入口流程控制
1)RSU搜索OBU,直到搜索到OBU为止;
2)RSU发送OBU号信息(B2帧)给PC,PC回应C1指令;
3)RSU 读OBU属性,并发送OBU属性(B3帧)给PC,PC回应C1指令;
4)RSU读IC卡信息,并发送IC卡信息(B4帧)给PC,PC发送C6指令给RSU;
5)RSU对OBU写入口文件操作,并虚拟扣款,如果不成功,则转入第 1 步骤;
6)RSU发送成功交易结果信息(B5帧)给PC,此次交易结束。
3.3出口流程控制
1)RSU搜索OBU,直到搜索到OBU为止;
2)RSU发送OBU号信息(B2帧)给PC,PC回应C1指令;
3)RSU 读OBU属性,并发送OBU属性(B3帧)给PC,PC回应C1指令;
4)RSU读IC卡信息,并发送IC卡信息(B4帧)给PC,PC发送C6指令给RSU;
5)RSU对OBU扣款并写出口文件,如果不成功,转入第7步骤;
6)RSU发送成功交易结果信息(B5帧)给PC,此次交易结束。
7)RSU重新搜索OBU,发送OBU号、OBU属性和IC卡信息给PC,PC根据IC卡信息进行分析处理:
PC将再次读取到的IC卡信息和第一次读取到的IC卡信息相比,有两种情况:余额相同、余额不同。以下根据两种不同的情况分别处理:
如果余额相同。PC发送C6指令给RSU,转到第5步骤;
如果余额不同,则表示对IC卡扣款成功,此时PC发送C7指令给RSU,RSU发送B5帧信息给PC,此次交易结束。
4 流程图
4.1 入口站流程图
4.2 出口站流程图