汽车桩文档草稿
总则
协议概述
本协议定义汽车充电桩通讯模块(或认证的充电桩设备)与物联平台通讯的流程、格式和内容。
通讯接口
TCP长链接,心跳保持
字符顺序
该文档设计的通讯所有字段均采用大端序。
命令格式
服务器下发命令:
SOP | LEN | CMD | SESSION_ID | SEP | CONTENT | EOF |
---|---|---|---|---|---|---|
1byte | 3byte | 3byte | 6byte | 1byte | n byte | 2byte |
开始标识 | 报文长度 | 命令名称 | 会话ID | 分隔符 | 内容 | 结束标识 |
1、开始标识:固定“_”为开始标识
2、报文长度:整个报文的总长度,包括开始标识和结束标识,不足三字节前面补0
3、命令名称:全为大写字母,第一个字节为“A”的命令为保留命令
4、会话ID:6个字节的可见字符(每一字节0x00-0x3D之间数字+偏移量0x31,当然如果使用A-Za-z0-9就一定在这个范围之内了),由服务器下发或文档特别约定,每次不同的通讯的会话ID都需要不一样(服务器发起的通讯至少连续的20次通讯不一样,除了特殊说明以外,当然我们的建议还是让每次通讯的会话ID尽可能的不一样),通常设备会在获取到服务器指令执行以后需要回复结果的会返回相同的会话ID给服务器,服务器可以通过会话ID获得设备当前回应的数据是哪一个会话的。同一个会话ID设备会认为是同一次通讯的重复发送,如果设备已经处理了相关的指令,就会丢弃之后相同会话ID的指令。设备由于内存限制,比对的会话ID是之前10次通讯的会话ID,为了可靠期间服务器只要保证连续的20次服务器发起的通讯会话ID不一致就可以了确保设备不会触发丢弃操作而影响指令的执行。另外如果有些命令服务器为了使设备一定收到,但设备只需要执行一次的,这样的命令多次发送用同一会话ID发送就可以了
5、分隔符:固定值“/”
6、内容:命令的有效载荷,具体业务二进制数据的十六进制字符串,比如{0x01 0x02 0x03}则为”010203”
7、结束标识:”\r\n”[0x0D 0x0A]
设备上报命令:
SOP | TYPE | CMD | SESSION_ID | LEN | CONTENT | EOF |
---|---|---|---|---|---|---|
1byte | 2byte | 3byte | 6byte | 3byte | n byte | 2byte |
开始标识 | 响应类型 | 命令名称 | 会话ID | 内容长度 | 内容 | 结束标识 |
1、开始标识:固定值“_”
2、响应类型:PG-ping,DV-设备号(IMEI),ID-SIM卡ICCID号,RP-数据上报,RS-命令响应,TM-设备服务器对时
3、命令名称:大写英文字母
4、会话ID:(无服务器会话ID则返回”000000”,文档中指令的会话ID有特殊定义的,以定义为准)
5、内容长度:内容字段的长度,不足三字节在前面补0,如”030”
6、内容:命令的有效载荷,具体业务二进制数据的十六进制字符串,比如{0x01 0x02 0x03}则为”010203”
7、结束标识:”\r\n”[0x0D 0x0A]
业务有效载荷
查询设备状态
该命令用于服务端查询设备每个端口的状态,由服务端发起,设备应答。
服务端发起
命令名称 | STA | 命令编号 | 0x01 | |
---|---|---|---|---|
传输方向 | 服务端->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 查询标识 | BIN | 1 | 固定值0 |
EE 0A 01 4B 69 77 53 41 59 00 AA C8
设备应答
命令名称 | STA | 命令编号 | 0x01 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x05 | 响应类型 | RS | |
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口数量 | BIN | 1 | |
2 | 第一端口状态 | BIN | 1 | 0x01-枪已插好并且没有在充电;0x02-枪正在充电;0x03-枪被禁用;0x04-枪故障;0x05-枪未插好 |
3-n | 第n端口状态 | BIN | n | 0x01-枪已插好并且没有在充电;0x02-枪正在充电;0x03-枪被禁用;0x04-枪故障;0x05-枪未插好 |
扫码启动充电
用户通过扫码支付的方式或者服务端主动下发的方式启动充电,由服务器下发,设备接收之后响应处理结果。
服务端下发
命令名称 | RUN | 命令编号 | 0x02 | |
---|---|---|---|---|
传输方向 | 服务端->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | 0x01标识1端口,0x02标识2端口 |
2 | 订单编号 | ASCII | 23 | |
3 | 计费模式 | BIN | 1 | 主计费方式 ,0x01-时间计费,0x02-电量计费,0x03-金额计费,0x0A-先到为准,0x0B-后到为准。 |
4 | 充电电量 | BIN | 4 | 单位为瓦时,0xFFFFFFFF代表该参数忽略。 |
5 | 充电时间 | BIN | 2 | 单位为分钟,0xFFFFFFFF代表该参数忽略。 |
6 | 充电金额 | BIN | 4 | 单位为分,0xFFFFFFFF代表该参数忽略。 |
总长度 | 35 | 仅供核对查看,非协议内容。 |
主计费模式是指断电的准信号,比如时间计费,那么设备以下发的时间为准,时间用完则断电,先到为准则是充电电量、充电时间、充电金额中有一个走完则停止充电,后到为准则是充电电量、充电时间、充电金额中全部走完则停止充电。
设备接收之后响应处理结果
命令名称 | RUN | 命令编号 | 0x02 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x05 | 响应类型 | RS | |
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 订单号 | ASCII | 23 | |
3 | 启动结果 | BIN | 1 | 0x01-成功,0x02-充电枪故障,0x03-端口已经被使用,0x04-计费方式不支持,0x05-充电枪号不存在,0x06-整机故障 |
总长度 | 25 | 仅供核对查看,非协议内容。 |
刷卡或VIN码充电
用户刷卡或VIN码启动充电
刷卡或VIN码上报信息
命令名称 | SRD | 命令编号 | 0x03 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x06 | 响应类型 | RP | |
会话ID | A10006 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 启动方式 | BIN | 1 | 0x01-刷卡启动充电,0x02-VIN码启动充电 |
3 | 是否需要密码 | BIN | 1 | 0x00-不需要,0x01-需要 |
4 | 账号或物理卡号 | BIN | 8 | 不足8byte在前面补零,刷卡启动需要,其他为全0。 |
5 | 密码 | ASCII | 32 | MD5值,不需要密码为全0。 |
6 | VIN码 | ASCII | 17 | 启动方式为VIN码需要,否则为全0。 |
总长度 | 60 | 仅供核对查看,非协议内容。 |
服务端下发鉴权信息
命令名称 | SRK | 命令编号 | 0x04 | |
---|---|---|---|---|
传输方向 | 服务端->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务器下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 订单号 | ASCII | 23 | |
3 | 启动方式 | BIN | 1 | 0x01-刷卡启动充电,0x02-VIN码启动充电 |
4 | 物理卡号 | BIN | 8 | |
5 | 逻辑卡号 | ASCII | 20 | 显示在屏幕上的卡号,不足在前面补零 |
6 | VIN码 | ASCII | 17 | |
7 | 账号余额 | BIN | 4 | 0.01元为单位 |
8 | 结果 | BIN | 1 | 0x00-成功,0x01-卡号或账号不存在,0x02-卡号或账号冻结,0x03-余额不足,0x04-存在未结账记录,0x05-端口停用,0x06-账户为绑定该桩,0x07-密码错误,0x08-服务器其他失败 |
总长度 | 75 | 仅供核对查看,非协议内容。 |
设备上报启动信息
命令名称 | SRK | 命令编号 | 0x04 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x06 | 响应类型 | RP | |
会话ID | A10007 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 订单号 | ASCII | 23 | |
3 | 启动结果 | BIN | 1 | 0x01-成功,0x02-充电枪故障,0x03-端口已经被使用,0x04-充电桩异常,0x05-用户取消,0x06-端口存在未结账订单 |
总长度 | 25 | 仅供核对查看,非协议内容。 |
备注:该指令设备需要做重传机制,如果没有收到服务端“设备刷卡VIN码启动应答”则需要重传,重传间隔建议为30秒,最长重传超时为1小时。
设备刷卡VIN码启动应答
命令名称 | SRJ | 命令编号 | 0x07 | |
---|---|---|---|---|
传输方向 | 服务端->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 订单号 | ASCII | 23 | |
3 | 启动结果 | BIN | 1 | 0x00-成功 |
总长度 | 25 | 仅供核对查看,非协议内容。 |
充电结束
当某个枪的电动车已经充电结束,调用了该接口,该次交易即已经结束,用户再插上线路,肯定是不能再充电的。
充电结束上报:
命令名称 | UWC | 命令编号 | 0x05 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x06 | 响应类型 | RP | |
会话ID | A10001 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 订单号 | ASCII | 23 | |
3 | 结束原因 | BIN | 1 | 1-主计费正常结束,2-时间到结束,3-电量到结束,4-金额到结束,5-远程停止充电,6-充电桩故障结束,7-电池异常结束,8-手动停止充电,9-充满自停,0x0A-设备断电或断网,0x0B-充电中断开 |
4 | 尖电费单价 | BIN | 4 | 0.01元/KWh(0.00001元/Wh)为单位, 若首字节最高bit位为1, 则为5位精度0.00001 |
5 | 尖电量 | BIN | 4 | 0.001KWh |
6 | 计损尖电量 | BIN | 4 | 001KWh |
7 | 尖电费金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
8 | 尖充电时间 | BIN | 4 | Min |
9 | 尖服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/Min, 若首字节最高bit位为1, 则为5位精度0.00001 |
10 | 尖服务费金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
11 | 峰电费单价 | BIN | 4 | 0.01元/KWh(0.00001元/Wh)为单位, 若首字节最高bit位为1, 则为5位精度0.00001 |
12 | 峰电量 | BIN | 4 | 001KWh |
13 | 计损峰电量 | BIN | 4 | 001KWh |
14 | 峰电费金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
15 | 峰充电时间 | BIN | 4 | Min |
16 | 峰服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/Min, 若首字节最高bit位为1, 则为5位精度0.00001 |
17 | 峰服务费金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
18 | 平电费单价 | BIN | 4 | 0.01元/KWh(0.00001元/Wh)为单位, 若首字节最高bit位为1, 则为5位精度0.00001 |
19 | 平电量 | BIN | 4 | 001KWh |
20 | 计损平电量 | BIN | 4 | 001KWh |
21 | 平电费金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
22 | 平充电时间 | BIN | 4 | Min |
23 | 平服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/Min, 若首字节最高bit位为1, 则为5位精度0.00001 |
24 | 平服务费金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
25 | 谷电费单价 | BIN | 4 | 0.01元/KWh(0.00001元/Wh)为单位, 若首字节最高bit位为1, 则为5位精度0.00001 |
26 | 谷电量 | BIN | 4 | 001KWh |
27 | 计损谷电量 | BIN | 4 | 001KWh |
28 | 谷电费金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
29 | 谷充电时间 | BIN | 4 | Min |
30 | 谷服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/Min, 若首字节最高bit位为1, 则为5位精度0.00001 |
31 | 谷服务费金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
32 | 服务费计费方式 | BIN | 1 | 0x00-不计算服务费,0x01-按时间计费服务费,0x02-按电量计费服务费 |
33 | 起始荷电状态(BSD) | BIN | 1 | 1% |
34 | 中止荷电状态(BSD) | BIN | 1 | 1% |
35 | 总电量 | BIN | 4 | 0.001KWh |
36 | 总计损电量 | BIN | 4 | 0.001KWh |
37 | 总金额 | BIN | 4 | 0.01元,总金额=尖电费金额+尖服务费金额+峰电费金额+峰服务费金额+平电费金额+平服务费金额+谷电费金额+谷服务费金额 |
38 | VIN码 | ASCII | 17 | |
39 | 总充电时间 | BIN | 4 | 分钟为单位 |
40 | 异常停止状态 | BIN | 1 | 见底下备注 |
41 | 使用的计费模型编号 | BIN | 2 | 没有使用服务端计费模型,报0x0000 |
42 | 设备端的开始时间 | BIN | 7 | CP56Time2a格式 |
43 | 设备端的结束时间 | BIN | 7 | CP56Time2a格式 |
总长度 | 190 | 仅供核对查看,非协议内容。 |
备注:异常停止状态,当停止上报结束原因位6或者7,该字段不能位0x00。 0x00-无异常,0x4A-启动失败,充电桩系统故障(需要重启或自动恢复);0x4B-启动失败,控制导引断开;0x4C-启动失败,断路器跳闸;0x4D-启动失败,电表通讯失败;0x4F-启动失败,充电模块故障;0x50-启动失败,急停开路;0x51-启动失败,防雷器异常;0x52-启动失败,BMS未就绪;0x53-启动失败,温度异常;0x54-启动失败,电池反接故障;0x55-启动失败,电子锁异常;0x56-启动失败,合闸失败;0x57-启动失败,绝缘异常;0x59-启动失败,接收BMS握手报文BHM超时;0x5A-启动失败,接收BMS和车辆的辨识报文超时BRM;0x5B-启动失败,接收电池充电参数报文超时BCP;0x5C-启动失败,接收BMS完成充电准备报文超时BRO AA;0x5D-启动失败,接收电池充电总状态报文超时BCS;0x5E-启动失败,接收电池充电要求报文超时BCL;0x5F-启动失败,接收电池状态信息报文超时BSM;0x60-启动失败,GB2015电池在BHM阶段有电压不允许充电;0x61-启动失败,GB2015辨识阶段在BRO_AA时候电池实际电压与BCP报文电池电压差距大于5%;0x62-启动失败,GB2015充电桩在预充电阶段从BRO_AA变成BRO_00状态;0x63-启动失败,接收主机配置报文超时;0x64-启动失败,充电桩未准备就绪,我们没有回CRO_AA;0x65-启动失败,绝缘故障;0x6A-充电异常终止,系统闭锁;0x6B-充电异常终止,导引断开;0x6C-充电异常终止,断路器跳闸;0x6D-充电异常终止,电表通信中断;0x6E-充电异常终止,余额不足;0x6F-充电异常终止,交流保护动作;0x70-充电异常终止,直流保护动作;0x71-充电异常终止,充电模块故障;0x72-充电异常终止,急停开路;0x73-充电异常终止,防雷器异常;0x74-充电异常终止,温度异常;0x75-充电异常终止,输出异常;0x76-充电异常终止,电流异常;0x77-充电异常终止,电子锁异常;0x79-充电异常终止,总充电电压异常;0x7A-充电异常终止,总充电电流异常;0x7B-充电异常终止,单体充电电压异常;0x7C-充电异常终止,电池组过温;0x7D-充电异常终止,最高单体充电电压异常;0x7E-充电异常终止,最高电池组过温;0x7F-充电异常终止,BMV单体充电电压异常;0x80-充电异常终止,BMT电池组过温;0x81-充电异常终止,电池状态异常停止充电;0x82-充电异常终止,车辆发报文停止充电;0x83-充电异常终止,充电桩断电;0x84-充电异常终止,接收电池充电总状态报文超市;0x85-充电异常终止,接收电池充电要求报文超时;0x86-充电异常终止,接收电池状态信息报文超时;0x87-充电异常终止,接收BMS终止充电报文超时;0x88-充电异常终止,接收BMS充电统计报文超时;0x89-充电异常终止,接收CCS报文超时;0xFA-未知原因异常。
备注:该指令设备需要做重传机制,如果没有收到服务端“充电结束应答”则需要重传,重传间隔建议为30秒,最长重传超时为1小时。
充电结束应答:
命令名称 | UWC | 命令编号 | 0x05 | |
---|---|---|---|---|
传输方向 | 服务端->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | 0x01标识1端口,0x02标识2端口 |
2 | 处理结果 | BIN | 1 | 0x01-服务端处理成功,此时主板可认为已正常结束
0x02-格式错误,一般是字节数和定义的不一致, 需要再次重发, 若该原因连续产生多次可以考虑放弃 0x03-数据异常,一般是某个业务数据不符合常理或约定, 需要再次重发, 若该原因连续产生多次可以考虑放弃 |
3 | 订单号 | ASCII | 23 | |
总长度 | 25 | 仅供核对查看,非协议内容。 |
实时状态上报
电桩每个正在使用的端口需要每分钟上报一次当前状态数据。
命令名称 | SDT | 命令编号 | 0x06 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x06 | 响应类型 | RP | |
会话ID | A10002 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 订单号 | ASCII | 23 | |
3 | 状态 | BIN | 1 | 0x01:故障, 0x02:空闲, 0x03:充电 |
4 | 是否获取到电池数据 | BIN | 1 | 1-获取到BMS电池信息,2-未获取到电池信息 |
5 | 输出类型 | BIN | 1 | 1-直流,2-交流 |
6 | 当前计费类型 | BIN | 1 | 1-尖计费,2-峰计费,3-平计费,4-谷计费 |
7 | 当前计费类型充电量 | BIN | 4 | 0.001KWh为单位 |
8 | 当前计费类型计损电量 | BIN | 4 | 0.001KWh为单位 |
9 | 当前计费类型电价金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
10 | 当前计费类型充电时间 | BIN | 2 | 分钟为单位 |
11 | 当前服务费计费方式 | BIN | 1 | 0x00-不计算服务费,0x01-按时间计费服务费,0x02-按电量计费服务费 |
12 | 当前服务费计费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
13 | 当前计费类型服务费金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
14 | 当前计费类型总金额 | BIN | 4 | 0.01元,当前计费类型总金额=当前计费类型电价金额+当前计费类型服务费金额, 若首字节最高bit位为1, 则为4位精度0.0001 |
15 | 电压需求(BCL) | BIN | 2 | 0.1V |
16 | 电流需求(BCL) | BIN | 2 | 0.1A |
17 | 充电模式(BCL) | BIN | 1 | 0x01-恒压充电,0x02-恒流充电,0x09-其他充电 |
18 | 输出电压(CCS) | BIN | 2 | 0.1V |
19 | 输出电流(CCS) | BIN | 2 | 0.1A |
20 | 充电电压测量值(BCS) | BIN | 2 | 0.1V |
21 | 充电电流测量值(BCS) | BIN | 2 | 0.1A |
22 | 当前荷电状态 | BIN | 1 | 分辨率1%,0%偏移量,0-100% |
23 | 估算剩余充电时间 | BIN | 2 | 分辨率1min |
24 | 枪线温度 | BIN | 1 | 偏移量-50℃,单位1℃, 即实际0℃上报为50 |
25 | 电池组温度 | BIN | 1 | 偏移量-50℃,单位1℃, 即实际0℃上报为50 |
26 | 累计充电时间 | BIN | 2 | 分钟为单位 |
27 | 充电电量 | BIN | 4 | 0.001KWh为单位 |
28 | 计损电量 | BIN | 4 | 0.001KWh为单位 |
29 | 已充总金额 | BIN | 4 | 0.01元, 若首字节最高bit位为1, 则为4位精度0.0001 |
30 | 故障码 | BIN | 2 | Bit位表示(0否1是),低维到高维,Bit1:急停按钮动作故障,Bit2:无可用整流模块,Bit3:出风口温度过高,Bit4:交流防雷故障,Bit5:交直流模块故障,Bit6:绝缘监测模块故障,Bit7:电度表故障,Bit8:预留,Bit9:电池通讯故障,Bit10:风扇调速板故障,Bit11:直流熔断器故障,Bit12:高压接触器故障,Bit13:门打开 |
总长度 | 89 | 仅供核对查看,非协议内容。 |
充电开始BMS信息上报
充电开始时设备主动上报一次。如果需要可以重复发送。
命令名称 | STX | 命令编号 | 0x14 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x06 | 响应类型 | RP | |
会话ID | A10005 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 订单号 | ASCII | 23 | |
3 | BMS通讯协议版本号 | BIN | 3 | |
4 | 预留 | BIN | 4 | |
5 | BMS电池类型 | BIN | 1 | 电池类型:01-铅酸电池,02-氢电池,03-磷酸铁锂电池,04-锰酸锂电池,05-钴酸锂电池,06-三元材料电池,07-聚合物锂离子电池,08-钛酸锂电池,FF-其他 |
6 | BMS整车动力蓄电池系统额定容量 | BIN | 2 | 0.1AH为单位 |
7 | BMS整车动力蓄电池系统额定总电压 | BIN | 2 | 0.1V |
8 | BMS电池生产厂商名称 | ASCII | 4 | |
9 | BMS电池组序号 | BIN | 4 | |
10 | BMS电池组生产日期年 | BIN | 1 | 1985年偏移量 |
11 | BMS电池组生产日期月 | BIN | 1 | 1-12 |
12 | BMS电池组生产日期日 | BIN | 1 | 1-31 |
13 | BMS电池组充电次数 | BIN | 3 | |
14 | BMS电池组产权标识 | BIN | 1 | 0x00-租赁,0x01-车自有 |
15 | BMS车辆识别码 | BIN | 17 | VIN |
16 | BMS软件版本号 | BIN | 8 | |
17 | BMS上报信息获取时间 | BIN | 7 | CP56Time2a格式 |
总长度 | 83 | 仅供核对查看,非协议内容。 |
服务端查询
命令名称 | STX | 命令编号 | 0x14 | |
---|---|---|---|---|
传输方向 | 服务端->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | 0x01标识1端口,0x02标识2端口 |
2 | 订单号 | ASCII | 23 | |
3 | 接受结果 | BIN | 1 | 0x01-接受成功,0x02-接收异常 |
总长度 | 25 | 仅供核对查看,非协议内容。 |
主动端口状态上报
设备端口状态变更后主动上报。如果需要可以重复发送。
命令名称 | PTA | 命令编号 | 0x21 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x06 | 响应类型 | RP | |
会话ID | A10008 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口数量 | BIN | 1 | |
2 | 端口1状态 | BIN | 1 | |
3 | 端口N状态 | BIN | 1 |
应答
命令名称 | PTA | 命令编号 | 0x21 | |
---|---|---|---|---|
传输方向 | 服务端->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 接收状态 | BIN | 1 | 0x01-表示接受成功,0x02表示接收失败 |
充电过程BMS信息实时上报
充电过程中每五分钟上报一次,发现异常跳变瞬时上报。
命令名称 | SBY | 命令编号 | 0x15 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x06 | 响应类型 | RP | |
会话ID | A10004 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 订单号 | ASCII | 23 | |
3 | BMS最高单体动力蓄电池电压所在编号 | BIN | 1 | 数据范围:1-255 |
4 | BMS最高动力蓄电池温度 | BIN | 1 | 偏移量-50℃,单位1℃, 即实际0℃上报为50 |
5 | 最高温度监测点编号 | BIN | 1 | 数据范围:1-128 |
6 | 最低动力蓄电池温度 | BIN | 1 | 偏移量-50℃,单位1℃, 即实际0℃上报为50 |
7 | 最低动力蓄电池温度监测点编号 | BIN | 1 | 数据范围:1-128 |
8 | BMS单体动力蓄电池电池电压状态 | BIN | 1 | 0x00-正常,0x01-过高,0x02-过低 |
9 | BMS整车动力蓄电池荷电状态SOC状态 | BIN | 1 | 0x00-正常,0x01-过高,0x02-过低 |
10 | BMS动力蓄电池充电过电流 | BIN | 1 | 0x00-正常,0x01-过流,0x02-不可信状态 |
11 | BMS动力蓄电池温度过高 | BIN | 1 | 0x00-正常,0x01-过流,0x02-不可信状态 |
12 | BMS动力蓄电池绝缘状态 | BIN | 1 | 0x00-正常,0x01-过流,0x02-不可信状态 |
13 | BMS动力蓄电池组输出连接器链接状态 | BIN | 1 | 0x00-正常,0x01-过流,0x02-不可信状态 |
14 | 充电禁止 | BIN | 1 | 0x00-进制,0x01-允许 |
总长度 | 36 | 仅供核对查看,非协议内容。 |
计费模型下发
服务器下发计费模型 服务端下发计费模型:
命令名称 | SJA | 命令编号 | 0x08 | |
---|---|---|---|---|
传输方向 | 服务端->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 计费模型编码 | BIN | 2 | 充电模型从0x0001开始 |
2 | 尖电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
3 | 尖服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
4 | 峰电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
5 | 峰服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
6 | 平电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
7 | 平服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
8 | 谷电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
9 | 谷服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
10 | 计损比例 | BIN | 4 | 0.1% |
11 | 服务费计费方式 | BIN | 1 | 0x00-不计算服务费,0x01-按时间计费服务费,0x02-按电量计费服务费 |
12 | 0:00-0:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
13 | 0:30-1:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
14 | 1:00-1:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
15 | 1:30-2:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
16 | 2:00-2:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
17 | 2:30-3:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
18 | 3:00-3:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
19 | 3:30-4:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
20 | 4:00-4:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
21 | 4:30-5:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
22 | 5:00-5:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
23 | 5:30-6:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
24 | 6:00-6:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
25 | 6:30-7:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
26 | 7:00-7:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
27 | 7:30-8:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
28 | 8:00-8:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
29 | 8:30-9:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
30 | 9:00-9:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
31 | 9:30-10:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
32 | 10:00-10:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
33 | 10:30-11:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
34 | 11:00-11:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
35 | 11:30-12:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
36 | 12:00-12:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
37 | 12:30-13:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
38 | 13:00-13:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
39 | 13:30-14:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
40 | 14:00-14:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
41 | 14:30-15:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
42 | 15:00-15:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
43 | 15:30-16:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
44 | 16:00-16:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
45 | 16:30-17:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
46 | 17:00-17:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
47 | 17:30-18:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
48 | 18:00-18:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
49 | 18:30-19:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
50 | 19:00-19:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
51 | 19:30-20:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
52 | 20:00-20:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
53 | 20:30-21:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
54 | 21:00-21:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
55 | 21:30-22:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
56 | 22:00-22:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
57 | 22:30-23:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
58 | 23:00-23:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
59 | 23:30-00:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
总长度 | 87 | 仅供核对查看,非协议内容。 |
计费模型下发应答:
命令名称 | SJA | 命令编号 | 0x08 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x05 | 响应类型 | RS | |
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 计费模型编码 | BIN | 2 | |
2 | 下发结果 | BIN | 1 | 0x01-下发成功,0x02-下发失败,0x03-下发成功,但不存储 |
设备请求计费模型
设备主动请求计费模型
设备请求服务端下发计费模型:
命令名称 | SJF | 命令编号 | 0x09 | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x06 | 响应类型 | RP | |
会话ID | A10003 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 计费模型编码 | BIN | 2 | 充电模型从0x0001开始,设备请求时,如果模型编号为0x0000表示请求服务端默认的模型,否则为请求指定模型 |
服务端响应计费模型:
命令名称 | SJF | 命令编号 | 0x09 | |
---|---|---|---|---|
传输方向 | 服务端->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 计费模型编码 | BIN | 2 | 充电模型从0x0001开始 |
2 | 尖电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
3 | 尖服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
4 | 峰电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
5 | 峰服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
6 | 平电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
7 | 平服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
8 | 谷电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
9 | 谷服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
10 | 计损比例 | BIN | 4 | 0.1% |
11 | 服务费计费方式 | BIN | 1 | 0x00-不计算服务费,0x01-按时间计费服务费,0x02-按电量计费服务费 |
12 | 0:00-0:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
13 | 0:30-1:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
14 | 1:00-1:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
15 | 1:30-2:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
16 | 2:00-2:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
17 | 2:30-3:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
18 | 3:00-3:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
19 | 3:30-4:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
20 | 4:00-4:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
21 | 4:30-5:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
22 | 5:00-5:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
23 | 5:30-6:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
24 | 6:00-6:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
25 | 6:30-7:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
26 | 7:00-7:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
27 | 7:30-8:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
28 | 8:00-8:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
29 | 8:30-9:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
30 | 9:00-9:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
31 | 9:30-10:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
32 | 10:00-10:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
33 | 10:30-11:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
34 | 11:00-11:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
35 | 11:30-12:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
36 | 12:00-12:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
37 | 12:30-13:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
38 | 13:00-13:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
39 | 13:30-14:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
40 | 14:00-14:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
41 | 14:30-15:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
42 | 15:00-15:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
43 | 15:30-16:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
44 | 16:00-16:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
45 | 16:30-17:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
46 | 17:00-17:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
47 | 17:30-18:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
48 | 18:00-18:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
49 | 18:30-19:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
50 | 19:00-19:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
51 | 19:30-20:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
52 | 20:00-20:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
53 | 20:30-21:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
54 | 21:00-21:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
55 | 21:30-22:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
56 | 22:00-22:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
57 | 22:30-23:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
58 | 23:00-23:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
59 | 23:30-00:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
总长度 | 87 | 仅供核对查看,非协议内容。 |
服务器请求计费模型
设备主动请求计费模型
服务器请求服务端下发计费模型:
命令名称 | SJG | 命令编号 | 0x0A | |
---|---|---|---|---|
传输方向 | 服务器->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务器下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 计费模型编码 | BIN | 2 | 充电模型从0x0001开始,设备请求时,如果模型编号为0x0000表示请求服务端默认的模型,否则为请求指定模型 |
设备响应计费模型:
命令名称 | SJG | 命令编号 | 0x0A | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | 0x05 | 响应类型 | RS | |
会话ID | 服务器下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 计费模型编码 | BIN | 2 | 充电模型从0x0001开始 |
2 | 尖电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
3 | 尖服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
4 | 峰电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
5 | 峰服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
6 | 平电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
7 | 平服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
8 | 谷电费单价 | BIN | 4 | 0.01元/KWh, 若首字节最高bit位为1, 则为5位精度0.00001 |
9 | 谷服务费单价 | BIN | 4 | 0.01元/KWh或0.01元/min, 若首字节最高bit位为1, 则为5位精度0.00001 |
10 | 计损比例 | BIN | 4 | 0.1% |
11 | 服务费计费方式 | BIN | 1 | 0x00-不计算服务费,0x01-按时间计费服务费,0x02-按电量计费服务费 |
12 | 0:00-0:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
13 | 0:30-1:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
14 | 1:00-1:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
15 | 1:30-2:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
16 | 2:00-2:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
17 | 2:30-3:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
18 | 3:00-3:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
19 | 3:30-4:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
20 | 4:00-4:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
21 | 4:30-5:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
22 | 5:00-5:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
23 | 5:30-6:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
24 | 6:00-6:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
25 | 6:30-7:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
26 | 7:00-7:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
27 | 7:30-8:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
28 | 8:00-8:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
29 | 8:30-9:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
30 | 9:00-9:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
31 | 9:30-10:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
32 | 10:00-10:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
33 | 10:30-11:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
34 | 11:00-11:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
35 | 11:30-12:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
36 | 12:00-12:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
37 | 12:30-13:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
38 | 13:00-13:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
39 | 13:30-14:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
40 | 14:00-14:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
41 | 14:30-15:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
42 | 15:00-15:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
43 | 15:30-16:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
44 | 16:00-16:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
45 | 16:30-17:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
46 | 17:00-17:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
47 | 17:30-18:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
48 | 18:00-18:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
49 | 18:30-19:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
50 | 19:00-19:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
51 | 19:30-20:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
52 | 20:00-20:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
53 | 20:30-21:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
54 | 21:00-21:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
55 | 21:30-22:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
56 | 22:00-22:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
57 | 22:30-23:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
58 | 23:00-23:30时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
59 | 23:30-00:00时段计费方式 | BIN | 1 | 0x00-尖费率,0x01-峰费率,0x02-平费率,0x03-谷费率 |
总长度 | 87 | 仅供核对查看,非协议内容。 |
远程停止充电
服务端停止正在充电的端口。
命令名称 | STP | 命令编号 | 0x0B | |
---|---|---|---|---|
传输方向 | 服务端->设备 | |||
消息类型 | 0x00 | 响应类型 | ||
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 订单号 | ASCII | 23 |
设备上报
命令名称 | STP | 命令编号 | 0x0B | |
---|---|---|---|---|
传输方向 | 设备->服务端 | |||
消息类型 | RS-0x05 | |||
会话ID | 服务端下发 | |||
具体参数说明: | ||||
序号 | 参数名称 | 数据类型 | 长度(Byte) | 备注 |
1 | 端口号 | BIN | 1 | |
2 | 订单号 | ASCII | 23 | |
3 | 接受结果 | BIN | 1 | 0x01-停止成功,0x02-枪号不匹配,0x03-订单不匹配,0x04-枪未处于充电状态,0x05-其他原因失败 |
总长度 | 25 | 仅供核对查看,非协议内容。 |
注意:远程停止应答后,设备应主动上报0x05,并且0x05“充电结束”的RESULT字段应该为5-远程停止充电。如果远程停止后服务端5分钟之内没有收到上报0x05,但收到0x0B的响应,则服务端结束状态为“远程停止无账单”,并且通过0x06实时状态上报如果上报计费账单;如果及时收到0x05则为“远程停止结束”,并根据0x05上报的账单计算最终账单。
握手与心跳有效载荷
连网握手流程图
设备心跳
发送方 | 通信模块 |
说明 | 设备连接成功后,轮询发送心跳包,保持长连接。
综合考虑运营商GPRS的超时、路由映射缓存超时、流量节省等因素, 心跳间隔建议在60秒 |
开始标志 | 1byte,“_” |
响应类型 | 2byte,PG |
会话ID | 6byte,000000 |
内容长度 | 3byte,001 |
内容 | 信号值:0-31(,分割)
误码率:0-7(#/#分割) 上次心跳响应时间:整数值(可能为负,10ms为单位,上次心跳发出时间到上次接收到服务器心跳返回的时间,可以初略估计出网络的传输和服务器的响应速度,#/#分割) 网络制式:GPRS、HSPA、WCDMA、LTE、CDMA等 |
结束标志 | 2byte,\r\n(0x0D 0x0A) |
示例: _ PG AXT 000000 016 31 , 0 #/# 74 #/# GPRS 0x0D 0x0A
服务器响应心跳
发送方 | 服务器 |
说明 | 服务器回复心跳 |
开始标志 | 1byte,“_” |
报文长度 | 3byte,表示整个报文的总长度,ASCII数字表示 |
命令 | 3byte,AXT |
会话ID | 6byte,000000 |
分隔符 | 1byte,“/” |
参数 | P |
结束标志 | 2byte,\r\n(0x0D 0x0A) |
示例: _ 017 AXT 000000 / P 0x0D 0x0A
询问IMEI
发送方 | 服务器 |
说明 | 在设备连接服务端成功后,服务端立即发送指令请求该设备的设备号
现在约定设备的GSM模块的IMEI号作为唯一设备号 |
开始标志 | 1byte,“_” |
报文长度 | 3byte,表示整个报文的总长度,ASCII数字表示 |
命令 | 3byte,ADV |
会话ID | 6byte,000000 |
分隔符 | 1byte,“/” |
参数 | IMEI |
结束标志 | 2byte,\r\n(0x0D 0x0A) |
示例 _ 020 ADV 000000 / IMEI 0x0D 0x0A
应答IMEI
发送方 | 通讯模块 |
说明 | 设备收到设备号请求时,返回设备号
现在约定设备的GSM模块的IMEI号作为唯一设备号 设备号返回后才能开始真正的业务级别通讯 |
开始标志 | 1byte,“_” |
响应类型 | 2byte,DV |
命令 | 3byte,ADV |
会话ID | 6byte,000000 |
内容长度 | 3byte,表示内容长度,ASCII数字表示 |
内容 | 2byte ID类型:IMEI
2byte 编码长度:IMEI号长度,一般为15 (一般15byte)设备号:GSM模块IMEI号 |
结束标志 | 2byte,\r\n(0x0D 0x0A) |
示例 IMEI号: 987654321012345 _ DV ADV 000000 019 IM 15 987654321012345 0x0D 0x0A
询问ICCID
发送方 | 服务器 |
说明 | 在设备返回设备号后,服务端发送指令获取SIM卡的ICCID |
开始标志 | 1byte,“_” |
报文长度 | 3byte,表示整个报文的总长度,ASCII数字表示 |
命令 | 3byte,AID |
会话ID | 6byte,000000 |
分隔符 | 1byte,“/” |
参数 | |
结束标志 | 2byte,\r\n(0x0D 0x0A) |
示例 _ 016 AID 000000 / 0x0D 0x0A
应答ICCID
发送方 | 通讯模块 |
说明 | 设备收到ICCID请求时,返回ICCID |
开始标志 | 1byte,“_” |
响应类型 | 2byte,ID |
命令 | 3byte,AID |
会话ID | 6byte,000000 |
内容长度 | 3byte,表示内容长度,ASCII数字表示 |
内容 | ICCID号(#/#分割)
软件版本号(#/#) 硬件版本号 |
结束标志 | 2byte,\r\n(0x0D 0x0A) |
示例 ICCID号 : 898602B3131650175846 _ ID AID 000000 045 898602B3131650175846 #/# mc-2.3.0 #/# DJ-BSD-8202 0x0D 0x0A
询问设备类型
发送方 | 服务器 |
说明 | 请求设备的类型编号,服务端约定 |
开始标志 | 1byte,“_” |
报文长度 | 3byte,表示整个报文的总长度,ASCII数字表示 |
命令 | 3byte,ASY |
会话ID | 6byte,000000 |
分隔符 | 1byte,“/” |
参数 | |
结束标志 | 2byte,\r\n(0x0D 0x0A) |
示例 _ 016 ASY 000000 / 0x0D 0x0A
应答设备类型
发送方 | 通讯模块 |
说明 | 响应设备的类型编号 |
开始标志 | 1byte,“_” |
响应类型 | 2byte,RP |
命令 | 3byte,ASY |
会话ID | 6byte,A00003 |
内容长度 | 3byte,表示内容长度,ASCII数字表示 |
内容 | 设备类型 |
结束标志 | 2byte,\r\n(0x0D 0x0A) |
示例 _ RP ASY A00003 001 1 0x0D 0x0A