当前位置:首页 » 《关注互联网》 » 正文

【车载IoT】国标《电动汽车远程服务与管理系统技术规范》:协议数据包结构及定义(重点)_吴秀华Cherry的有趣博客

17 人参与  2021年03月04日 14:23  分类 : 《关注互联网》  评论

点击全文阅读


国标《电动汽车远程服务与管理系统技术规范》解读三部曲:

系统架构及协议概述: https://blog.csdn.net/XiuHua_Wu/article/details/113530169
车载设备设计规范: https://blog.csdn.net/XiuHua_Wu/article/details/113530895
协议数据包结构及定义(重点):https://blog.csdn.net/XiuHua_Wu/article/details/113732636

本文为国标的阅读笔记第3篇:

  • 国标:《电动车远程服务于管理系统技术规范 第3部分:通讯协议及数据格式》GB/T 32960.3-2016 http://c.gb688.cn/bzgk/gb/showGb?type=online&hcno=674DE45C0AD3DE2CD75B9C4CD8ED57C1
  • 建议在阅读本文前,先阅读:【车载IoT】国标《电动汽车远程服务与管理系统技术规范》:系统架构及协议概述https://blog.csdn.net/XiuHua_Wu/article/details/113530169
  • 若要落实到具体实现,还请仔细阅读国标。

文章目录

  • 传输规则
  • 数据包结构
    • 命令标识定义
    • 应答标志
    • 时间(均采用北京时间)
  • 数据单元格式和定义
    • 车辆登入数据格式和定义
    • 实时信息上报数据格式和定义
      • 信息类型标志
      • 整车数据格式和定义
      • 驱动电机数据
      • 燃料电池数据
      • 车辆位置数据
      • 极值数据
      • 报警数据
      • 自定义数据
      • 档位状态位定义
    • 车辆登出数据格式和定义
    • 平台登入数据格式和定义
    • 平台登出数据格式和定义

传输规则

协议应采用大端模式的网联字节序来传递字和双字

数据包结构

起始字节定义数据类型描述及要求
0起始符STRING固定为ASCII字符“##”
2命令单元:命令标识BYTE见定义表
3命令单元:应答标志BYTE见定义表
4唯一识别码STRING当传输车辆数据实时,应使用车辆VIN,其字码应符合GB 16735的规定;如传输其他数据,则使用唯一自定义编码
21数据单元加密方式BYTE0x01:数据不加密。0x02:数据经过RSA算法加密。0x03:数据经过AES128位算法加密。0xFE:异常。0xFF:无效。其他:预留
22数据单元长度WORD数据单元长度是数据单元的总字节数,有效值范围:0~65531
24数据单元-数据单元格式和定义见定义表
倒数第1位校验码BYTE采用BCC(异或校验),校验范围:从命令单元的第1个字节开始,同后1个字节异或,知道校验码前1字节为止,校验码占用1个字节,当数据单元存在加密时,应先加密后校验,先校验后解密

命令标识定义

编码定义方向
0x01车辆登入上行
0x02实时信息上报上行
0x03补发信息上报上行
0x04车辆登入上行
0x05平台登入上行
0x06平台登出上行
0x07~0x08终端数据预留上行
0x09~0x7F上行数据系统预留上行
0x80~0x82终端数据预留下行
0x83~0xBF下行数据系统预留下行
0xC0~0xFE平台交换自定义数据自定义

应答标志

应答包定义:

  • 命令的主动发起方应答标志为0xFE时,表示此包为命令包;当应答标志不是0xFE时,被动接受方应不应答。
  • 当命令的被动接收方应答标志不是0xFE时,此包表示为应答包。
  • 当服务端发送应答时,应变更应答标志,保留报文时间,删除其余报文内容,并重新计算校验位。
编码定义说明
0x01成功接受到的信息正确
0x02错误设置未成功
0x03VIN重复VIN重复错误
0xFE命令表示数据包为命令包,而非应答包

时间(均采用北京时间)

数据表示内容长度/字节数据类型有效值范围
1BYTE0~99
1BYTE1~12
1BYTE1~31
小时1BYTE0~23
分钟1BYTE0~59
1BYTE0~59

数据单元格式和定义

车辆登入数据格式和定义

数据标识内容长度/字节数据类型描述及要求
数据采集时间6BYTE[6]见时间定义
登入流水号2WORD车载终端每登入一次,登入流水号自动+1,从1开始循环累加。最大值:65531循环周期:天
ICCID20STRINGSIM卡ICCID号(ICCID应为终端从SIM卡获取的值,不应人为填写或修改)
可充电储能子系统数1BYTE可充电储能子系统数n,有效值范围:0~250
可充电储能系统编码长度1BYTE可充电充能系统编码长度m,有效范围:0~50("0"表示不上传该编码)
可充电储能系统编码n×mSTRING可充电储能系统编码宜为终端从车辆获取的值

备注:可充电储能子系统指当车辆存在多套可充电储能系统混合使用时,每套可充电储能系统为一个可充电储能子系统

实时信息上报数据格式和定义

数据表示内容长度/字节数据类型描述及要求
数据采集时间6BYTE[6]见时间定义
信息类型标志(1)1BYTE见信息类型标志定义
信息体(1)--根据数据类型不同,长度和数据类型不同
--
信息类型标志(n)1BYTE见信息类型标志定义
信息体(n)--根据数据类型不同,长度和数据类型不同

信息类型标志

类型编码说明备注
0x01整车数据见信息体的整车数据定义
0x02驱动电机数据见信息体的驱动电机数据定义(停车充电过程无需传输该数据)
0x03燃料电池数据见信息体的燃料电池数据定义
0x04发动机数据见信息体的发动机数据定义(停车过程无需传输该数据)
0x05车辆位置数据见信息体的车辆位置数据定义
0x06极值数据见信息体的极值数据定义
0x07报警数据见信息体的报警数据定义
0x08~0x09终端数据预留-
0x0A~0x2F平台交换协议自定义数据-
0x30~0x7F预留
0x80~0xFE用户自定义见信息体的用户自定义

整车数据格式和定义

数据表示内容长度/字节数据类型描述及要求
车辆状态1BYTE0x01:车辆启动状态。0x02:熄火。0x03:其他状态。0xFE:异常。0xFF:表示无效。
充电状态1BYTE0x01:停车充电。0x02:行驶充电。0x03:未充电状态。0x04:充电完成。0xFE:异常。0xFF:无效。
运行模式1BYTE0x01:纯电。0x02:混动。0x03:燃油。0xFE:异常。0xFF:无效。
车速2WORD有效值范围:02200(表示0km/h220km/h)最小计量单元:0.1km/h。0xFF,0xFE:异常。0xFF,0xFF:无效。
累计里程4DWORD有效值范围:09999999(表示0km999999.9km)。最小计量单元:0.1km。0xFF,0xFF,0xFF,0xFE:异常。0xFF,0xFF,0xFF,0xFF:无效。
总电压2WORD有效值范围:010000(表示0V1000V)。最小计量单元:0.1V。0xFF,0xFE:异常。0xFF,0xFF:无效。
总电流2WORD有效值范围:020000(偏移量1000A,表示-1000A+1000A)。最小计量单元:0.1A。0xFF,0xFE:异常。0xFF,0xFF:无效。
SOC1BYTE有效值范围:0100(表示0%100%)。最小计量单元:1%。0xFE:异常。0xFF:无效。
DC-DC状态1BYTE0x01:工作。0x02:断开。0xFE:异常。0xFF:无效。
档位1BYTE见档位定义
绝缘电阻2WORD有效范围060000(表示0kΩ60000kΩ)。最小计量单元:1kΩ
预留2WORD预留位

驱动电机数据

数据表示内容长度/字节数据类型描述及要求
驱动电机个数1BYTE有效值1~253
驱动电机总成信息列表∑每个驱动电机总成信息长度-按驱动电机序号依次排列,每个驱动电机数据格式和定义见《每个驱动电机数据格式和定义》(本文未列出,见国标)

燃料电池数据

数据表示内容长度/字节数据类型描述及要求
燃料电池电压2WORD有效值范围:020000(表示0V2000V)。最小计量单元:0.1V。0xFF,0xFE:异常。0xFF,0xFF:无效。
燃料电池电流2WORD有效值范围:020000(表示0A+2000A)。最小计量单元:0.1A。0xFF,0xFE:异常。0xFF,0xFF:无效。
燃料消耗率2WORD有效值范围:060000(表示0kg/100km600kg/100km)。最小计量单元:0.01kg/100km。0xFF,0xFE:异常。0xFF,0xFF:无效。
燃料电池温度探针总数2WORDN个燃料电池温度探针。有效值范围:0~65531。0xFF,0xFE:异常。0xFF,0xFF:无效。
探针温度值1×NBYTE[N]有效值范围:0240(数值偏移量40°C,表示-40°C+200°C)。最小计量单元:1°C。
氢系统中最高温度2WORD有效值范围:02400(偏移量40°C,表示-40°C200°C)。最小计量单元:0.1°C。0xFF,0xFE:异常。0xFF,0xFF:无效。
氢系统中最高温度探针代号1BYTE有效值范围:1~252。0xFE:异常。0xFF:无效。
氢气最高浓度2WORD有效值范围:060000(表示0mg/kg50000mg/kg)。最小计量单元:1mg/kg。0xFF,0xFE:异常。0xFF,0xFF:无效。
氢气最高浓度传感器代号1BYTE有效值范围:1~252。0xFE:异常。0xFF:无效。
氢气最高压力2WORD有效值范围:01000(表示0MPa100MPa)。最小计量单元:0.1MPa。
氢气最高压力传感器代号1BYTE有效值范围:1~252。0xFE:异常。0xFF:无效。
高压DC/DC状态1BYTE0x01:工作。0x02:断开。0xFE:异常。0xFF:无效。

车辆位置数据

数据表示内容长度/字节数据类型描述及要求
定位状态1BYTE【BIT0】0:有效定位;1:无效定位。(当数据通信正常,而不能获取定位信息时,发送最后一次有效定位信息,并将定位状态置为无效。【BIT1】0:北纬;1:南纬。【BIT2】0:东经;1:西经。【BIT3~7】保留
经度4DWORD以度为单位的纬度值乘以106,精确到百万分之一度
纬度4DWORD以度为单位的纬度值乘以106,精确到百万分之一度

极值数据

数据表示内容长度/字节数据类型描述及要求
最高电压电池子系统号1BYTE有效值范围:1~250。0xFE:异常。0xFF:无效。
最高电压电池单体代号1BYTE有效值范围:1~250。0xFE:异常。0xFF:无效。
电池单体电压最高值2WORD有效值范围:015000(表示0V15V)。最小计量单元:0.001V。0xFF,0xFE:异常。0xFF,0xFF:无效。
最低电压电池子系统号1BYTE有效值范围:1~250。0xFE:异常。0xFF:无效。
最低电压电池单体代号1BYTE有效值范围:1~250。0xFE:异常。0xFF:无效。
电池单体电压最低值2WORD有效值范围:015000(表示0V15V)。最小计量单元:0.001V。0xFF,0xFE:异常。0xFF,0xFF:无效。
最高温度子系统号1BYTE有效值范围:1~250。0xFE:异常。0xFF:无效。
最高温度探针序号1BYTE有效值范围:1~250。0xFE:异常。0xFF:无效。
最高温度值1BYTE有效值范围:0250(数值偏移量40°C,表示-40°C+210°C)。最小计量单元:1°C。0xFE:异常。0xFF:无效
最低温度子系统号1BYTE有效值范围:1~250。0xFE:异常。0xFF:无效。
最低温度探针序号1BYTE有效值范围:1~250。0xFE:异常。0xFF:无效。
最低温度值1BYTE有效值范围:0250(数值偏移量40°C,表示-40°C+210°C)。最小计量单元:1°C。0xFE:异常。0xFF:无效

报警数据

数据表示内容长度/字节数据类型描述及要求
最高报警等级1BYTE为当前发生的故障中的最高等级值,有效值范围:0~3。0:无故障。1:1级故障,指代不影响车辆正常行驶的故障。2:2级故障,指代影响车辆性能,需驾驶员限制行驶的故障。3:3级故障,为最高级别故障,指代驾驶员应立即停车处理或请求救援的故障具体等级对应的故障内容由厂商自行定义。0xFE:异常。0xFF:无效。
通用报警标志4DWORD见通用报警标志位定义(本文未列出,具体见国标)
可充电储能装置故障总数N11BYTEN1个可充电储能装置故障有效值范围:0~252。0xFE:异常。0xFF:无效。
可充电储能装置故障代码列表4×N1DWORD扩展性数据,由厂商自行定义,可充电储能装置故障个数等于可充电储能装置故障总数N1
驱动电机故障总数N21BYTEN2个驱动电机故障有效值范围:0~252。0xFE:异常。0xFF:无效
驱动电机故障代码列表4×N2DWORD厂商自行定义,驱动电机故障个数等于驱动电机故障总数N2
发动机故障总数N31BYTEN3个驱动电机故障,有效值范围:0~252。0xFE:异常。0xFF:无效
发动机故障列表4×N3DWORD厂商自行定义,发动机故障个数等于驱动电机故障总数N3
其他故障总数N41BYTEN4个其他故障,有效值范围:0~252。0xFE:异常。0xFF:无效
其他故障代码列表4×N4DWORD厂商自行定义,故障个数等于故障总数N4

自定义数据

数据表示内容长度/字节数据类型描述及要求
自定义数据长度2WORD自定义数据长度n,有效范围1~65531
自定义数据1×NBYTE[N]扩展性数据,由用户自行定义

档位状态位定义

定义
Bit7预留,预留位用0表示
Bit6预留,预留位用0表示
Bit51:有驱动力。0:无驱动力。
Bit41:有制动力。0:无制动力。
Bit3~0挡位:=0000:空挡。=0001:1挡。=0010:2挡。=0011:3挡。=0100:4挡。=0101:5挡。=0110:6挡。=…。=1101:倒挡。=1110:自动D挡。=1111:停车P。

车辆登出数据格式和定义

数据表示内容长度/字节数据类型描述及要求
登出时间6BYTE[6]见时间定义
登出流水号2WORD登出流水号与当次登入流水号一致

平台登入数据格式和定义

数据表示内容长度/字节数据类型描述及要求
平台登入时间6BYTE[6]见时间定义
登入流水号2WORD下级平台每登入一次,登入流水号自动加1,从1开始循环累加,最大值为65531,循环周期为天
平台用户名12STRING平台登入用户名
平台密码20STRING平台登入密码
加密规则1BYTE0x01:数据不加密。0x02:数据经过RSA算法加密。0x03:数据经过AES128位算法加密。0xFE:异常。0xFF:无效。其他:预留

平台登出数据格式和定义

数据表示内容长度/字节数据类型描述及要求
登出时间6BYTE[6]见时间定义
登出流水号2WORD登出流水号与当次登入流水号一致

点击全文阅读


本文链接:http://zhangshiyu.com/post/16235.html

有效值  数据  定义  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1