1、OBD 远程车况诊断协议1.1. OBD 远程车况诊断1.1.1. 说明车载终端上报需要增加重传机制,上报不成功,需要重新传输。1.1.2. CAN 静态数据OBD 模块根据终端设置规则,响应 CAN 静态数据;终端根据默认频率主动上报 CAN静态数据,当平台需要跟踪 CAN 静态数据时,采用跟踪命令修改上报频率。 1.1.2.1. 终端上报 CAN 静态数据信息消息 ID:0x0B21终端上报 CAN 静态数据消息体数据格式详见下表,平台采用通用应答。表 CAN 静态数据消息体数据格式字节位置 内容 字节数 数据类型 精度 单位 描述Year 1 u8 年Month 1 u8 月Day 1
2、u8 日Hour 1 u8 时Minute 1 u8 分0Seconds 1 u8 秒6 协议类别 1 u8CAN 11_500 0X11CAN 11_250 0X12CAN 29_500_EX 0X13CAN 29_250_EX 0X14KWP2000 0X20KWP2000M 0X30ISO9141 0X40VPW 0X50PWM 0X60PRIVATE 0X707 状态掩码 10 u8 汽车状态掩码,表示 10 类汽车状态支持与否17 安全状态 1 u8Bit0 1/0 ON/OFF ACC 状态Bit1 1/0 设防/撤防 设防撤防状态Bit2 1/0 踩下/松开 脚刹Bit3 1/0
3、 踩下/松开 油门Bit4 1/0 拉起/放下 手刹Bit5 1/0 插入/松开 主安全带Bit6 1/0 插入/松开 副安全带Bit7 1/0 预留18 门状态 1 u8Bit0 1/0 开/关 左前门 LF Bit1 1/0 开/关 右前门 RF Bit2 1/0 开/关 左后门 LB Bit3 1/0 开/关 右后门 RB Bit4 1/0 开/关 后备箱 TRUNK Bit5 1/0 开/关 发动机盖Bit6-7 预留19 锁状态 1 u8Bit0 1/0 落锁/开锁 左前锁 LF Bit1 1/0 落锁/开锁 右前锁 RF Bit2 1/0 落锁/开锁 左后锁 LB Bit3 1/0
4、 落锁/开锁 右后锁 RB Bit4-7 预留20 窗户状态 1 u8Bit0 1/0 开/关 左前窗 LF Bit1 1/0 开/关 右前窗 RF Bit2 1/0 开/关 左后窗 LB Bit3 1/0 开/关 右后窗 RB Bit4 1/0 开/关 天窗开关Bit5 1/0 开/关 左转向灯Bit6 1/0 开/关 右转向灯Bit7 1/0 开/关 阅读灯21 灯光状态 1 1 u8Bit0 1/0 开/关 近光灯Bit1 1/0 开/关 远光灯Bit2 1/0 开/关 前雾灯Bit3 1/0 开/关 后雾灯Bit4 1/0 开/关 危险灯Bit5 1/0 开/关 倒车灯Bit6 1/0
5、 开/关 AUTO 灯Bit7 1/0 开/关 示宽灯22 开关状态 A 1 u8Bit0 1/0 ON/OFF 机油报警Bit1 1/0 ON/OFF 燃油报警Bit2 1/0 开/关 雨刷Bit3 1/0 开/关 喇叭Bit4 1/0 开/关 空调Bit5 1/0 开/关 后视镜状态Bit6-7 预留23 开关状态 B 1 u8BIT1-0 KEY 状态 00 LOCK 01 ACC10 ON 11 START/RUN Bit2-3 预留Bit4-BIT7 档位=0 P =1 R =2 N =3 D =4 1=5 2 =6 3 =7 4 =8 M24 保留 1 u8 保留25 保留 1 u
6、8 保留26 数据流掩码 4 u8车辆数据流掩码,表示 40 个数据流是否支持与否30 电瓶电压 2 u16 0.1 V 显示值为上传值/10 以下共 62 字节32 总里程类别 1 u8总里程类型01 汽车里程02 OBD 里程03 GPS 里程33 总里程 4 u32 0.001 m 行驶里程,上传值单位为 m(米)37 总耗油量 4 u32 0.001 L 总的燃油消耗量,上传值单位为 ml(毫升)41 故障灯状态(MIL) 1 u8 if(Bit0) ONelse OFF42 故障码个数 1 u8 发动机故障码个数43 发动机转速 2 u16 RPM 发动机转速45 车辆速度 1 u8
7、 Km/h 车辆速度46 进气口温度 1 u8 (上传范围 0255) 显示值为上传值-40 (实际范围-40215)47 冷却液温度 1 u8 水箱温度 (上传范围 0255) 显示值为上传值-40 (实际范围-40215)48 车辆环境温度 1 u8 车辆环境温度 (上传范围 0255) 显示值为上传值-40 (实际范围-40215)49 进气歧管压力 1 u8 kpa 进气歧管压力 (10105kpa)51 燃油压力 2 u16 kPa 燃油压力53 大气压力 1 u8 kPa 大气压力54 空气流量 2 u16 0.1 g/s 显示值为上传值/1056 气门位置传感器 2 u16 0.
8、1 % 显示值为上传值/1058 油门踏板位置 2 u16 0.1 % 显示值为上传值/10 ( 0100)60 发动机运行时间 2 u16 Sec 一个驾驶循环的运行时间62 故障行驶里程 4 u32 km 故障行驶里程66 剩余油量 2 u16 0.1 L/%剩余油量,单位 L 或%Bit15 =0 百分比% OBD 都为百分比=1 单位 L显示值为上传值/1068 发动机负荷 1 u8 % 发动机负荷, 010069长期燃油修正(组1) 2 u16 0.1 %显示值为上传值/1071 点火提前角 2 u16 0.1 显示值为(上传值/10)-6473 仪表总里程 4 u32 m 汽车仪表
9、总里程,单位米77 车辆总运行时间 4 u32 s 车辆总运行时间,单位秒81 保留 10 u8 保留91 Trip Mark 2 u16 驾驶循环标签说明:1、数据流掩码 4 字节 DS MASK,表示 30 个数据流支持与否,字节位次序高位在先,低位在后。比如:掩码第 1 个字节的 BIT7 决定第 1 个数据流(电瓶电压)支持与否掩码第 1 个字节的 BIT0 决定第 8 个数据流(车辆速度)支持与否掩码第 2 个字节的 BIT7 决定第 9 个数据流(进气温度)支持与否2、每个上传的静态数据包为固定的长度 94 字节,不支持的数据流,仍占用固定位置字节。3、根据设置时间间隔上报(设置参
10、数一定可以设置时间间隔)1.1.2.2. 平台主动跟踪 CAN 静态数据消息 ID:0x8B21当平台发送主动跟踪 CAN 数据时,终端采用通用应答。表 平台主动跟踪 CAN 数据静态数据消息格式起始字节 字段 数据类型 描述及要求0 上报时间间隔 WORD 单位为秒(s), 0 则停止跟踪。4 上报超时 WORD响应数据示例:1.1.3. 车辆故障数据OBD 模块采集到车辆故障时,将故障码主动传送给终端,终端通过上报故障数据将故障数据传送给平台。1.1.3.1. 终端主动上报车辆故障数据消息 ID:0x0B22消息体见故障数据报,平台采用通用应答。故障码数据包 (7+4*N 字节)字节位置
11、内容 字节数 数据类型 描述0 Year 1 u8 年 年1 Month 1 u8 月 月2 Day 1 u8 日 日3 Hour 1 u8 时 时4 Minute 1 u8 分 分5 Seconds 1 u8 秒 秒6 Dtc Num 1 u8 为 0 表示无故障码,非 0 为故障码个数10 Dtc1 ID 4 BYTE 第 1 个故障码 ID 号:4 字节14 Dtc2 ID 4 BYTE 第 2 个故障码 ID 号:4 字节18 Dtc3 ID 4 BYTE 第 3 个故障码 ID 号:4 字节 说明:1.1 个故障码编号由 4 字节组成,分别为系统 ID、故 障字节 1、故障字节 2、
12、故障字节 3。对于 OBD 故障码,SYS_ID 为 0x00,故障字节 3 无意义(为 0)。 2.关机报一次1.1.3.2. 平台查询车辆故障数据消息 ID:0x8B22消息体为空,终端应答车辆故障数据。1.1.4. 驾驶行为数据当 ACC OFF 时,OBD 模块主动产生驾驶行为数据发送给终端,终端上报驾驶行为数据给平台;当用户需要在平台查看驾驶行为数据时,可下发查询驾驶行为数据,终端从 OBD模块获取驾驶行为数据,并上报给平台进行展示。1.1.4.1. 终端上报驾驶行为数据消息 ID:0x0B23表 终端上报驾驶行为数据消息体格式字节位置 内容 字节数 数据类型 描述0ACC ON T
13、imeYear、Month、Day 、 Hour、 Minute、Seconds6 u8ACC ON 时间格式:年月日时分秒6ACC OFF TimeYear、Month、Day 、 Hour、 Minute、Seconds6 u8ACC OFF 时间格式:年月日时分秒12 Trip Distance 4 u32 一个驾驶循环总里程,单位米16 Trip Speed Average 1 u8 一个驾驶循环平均车速,单位 KM/H17 Trip Speed Maximum 1 u8 一个驾驶循环最大车速,单位 KM/H18 Trip Overspeed Duration 2 u16 一个驾驶循环
14、超速累计时长,单位秒20 Trip Accelerate times 4 u32 一个驾驶循环急加速次数24 Trip Decelerate times 4 u32 一个驾驶循环急减速次数28 Trip Sharp turn times 4 u32 一个驾驶循环急转弯次数32 Accelerate total times 4 u32 急加速总次数36 Decelerate total times 4 u32 急减速总次数40 Sharp turn total times 4 u32 急转弯总次数44 Overspeed Duration Total 4 u32 超速累计总时长,单位秒48 Tr
15、ip Fuel Consum 4 u32 一个驾驶循环总耗油,单位毫升(ml)52 Trip OverSpd Times 2 u16 一个驾驶循环超速次数,单位次54 Trip Number of Braking 2 u16 一个驾驶循环脚刹次数,单位次56 Trip Duration Total 4 u32 一个驾驶循环总时长,单位秒60 Trip Idle Duration 4 u32 一个驾驶循环怠速时长,单位秒64 Trip Mark 2 u16 驾驶循环标签66 Trip Mask of Braking 1 u8 一个驾驶循环脚刹次数支持与否,1 为支持67 Trip Distanc
16、e Type 1 u8一个驾驶循环总里程类型:0OBD2总线68 Reserve 12 u8 保留说明:1.上报规则:关机报一次1.1.4.2. 平台查询驾驶行为数据消息 ID:0x8B23消息体为空,终端应答驾驶行为数据。1.1.5. 主动上报驾驶事件数据当每次急加速、急减速、急刹车事件产生时,OBD 模块主动将驾驶事件数据发送给终端,终端上报驾驶事件数据给平台。 1.1.5.1. 终端上报驾驶事件数据消息 ID:0x0B24消息体见终端上报驾驶事件消息体格式,平台应答通用应答。终端上报驾驶事件消息体格式字节位置 内容 字节数 数据类型 描述0 Act Type 1 u8驾驶行为类别1急加速
17、2急减速3急转弯1 Speed 1 u8 事件发生时车辆速度2 Acceleration 2 u16 事件发生时加速度值,单位 mg4 Accelerate total times 4 u32 急加速总次数8 Decelerate total times 4 u32 急减速总次数12 Sharp turn total times 4 u32 急转弯总次数16 Trip Mark 2 u16 驾驶循环标签说明:1.上报规则:关机报一次1.1.6. 设置 OBD 模块参数当平台需要设置 OBD 参数时,按照各参数项设置,终端采用通用应答。1.1.6.1. 设置 OBD 模块参数消息 ID:0x8B
18、25消息体 OBD 模块参数消息体数据格式,按照各参数项设置,终端采用通用应答。消息体 OBD 模块参数消息体数据格式起始字节 字段 数据类型 描述及要求0 参数总数 BYTE1 包参数个数 BYTE2 参数项列表 OBD 参数项格式见表OBD 参数项数据格式字段 数据类型 描述及要求参数 ID DWORD 参数 ID 定义 表参数参数长度 BYTE参数值 参见各参数ID 终端参数设置各参数项定义及说明参数 ID 参数值 描述及要求0x0001 参见 重启终端0x0002 恢复出厂设置0x0003 设置车辆类型0x0004 设置总里程总油耗(部分车辆无法读出)0x0005 设置 CAN 回传参
19、数0x0006 清除车辆故障码0x0007 清除 CAN 盲区数据0x0008 清除驾驶行为数据0x0009 设置低电压报警参数0x0010 设置拖车报警参数0x0011 设置碰撞报警参数0x0012 设置翻车报警参数0x0013 定位时间过长报警参数0x0014 怠速时间过长报警参数0x0015 设置急加速参数0x0016 设置急减速参数0x0017 设置急转弯参数1.1.7. 查询 OBD 模块参数当平台需要查询 OBD 参数时,查询所有参数,或按照参数项设置,终端采用 OBD 参数应答。1.1.7.1. 平台查询 OBD 模块参数消息 ID:0x8B26平台发送消息体如下:消息体 OBD
20、 模块参数消息体数据格式起始字节 字段 数据类型 描述及要求0 参数总数 BYTE1 包参数个数 BYTE2 参数项列表 OBD 参数项格式见表参数 ID 参数值 描述及要求0x0000 查询所有 OBD 参数0x0003 车辆类型0x0004 总里程总油耗0x0005 CAN 回传参数0x0009 低电压报警参数0x0010 拖车报警参数0x0011 碰撞报警参数0x0012 翻车报警参数0x0013 定位时间过长报警参数0x0014 怠速时间过长报警参数0x0015 急加速参数0x0016 急减速参数0x0017 急转弯参数1.1.7.2. 终端应答查询 OBD 模块参数消息 ID:0x0
21、B26消息体格式如下。消息体 OBD 模块参数消息体数据格式起始字节 字段 数据类型 描述及要求0 参数总数 BYTE1 包参数个数 BYTE2 参数项列表 OBD 参数项格式见表OBD 参数项数据格式字段 数据类型 描述及要求参数 ID DWORD 参数 ID 定义 表参数参数长度 BYTE参数值 参见各参数ID 参数 ID 参数值 描述及要求0x0003 车辆类型0x0004 总里程总油耗0x0005 CAN 回传参数0x0009 低电压报警参数0x0010 拖车报警参数0x0011 碰撞报警参数0x0012 翻车报警参数0x0013 定位时间过长报警参数0x0014 怠速时间过长报警参数0x0015 急加速参数0x0016 急减速参数0x0017 急转弯参数