戴利主要有三种协议:CAN、UART/485 和 Modbus。
1. CAN协议
测试工具:CANtest
- 波特率:25万
- 框架类型:标准帧和扩展帧。通常情况下,使用扩展帧,而标准帧则用于少数定制的电池管理系统 (BMS)。
- 沟通形式:数据 ID 从 0x90 到 0x98部分ID可供客户访问。其他ID通常客户无法访问或修改。
- PC 软件到 BMS:优先级 + 数据 ID + BMS 地址 + PC 软件地址,例如 0x18100140。
- BMS 对 PC 软件的响应:优先级 + 数据 ID + PC 软件地址 + BMS 地址,例如 0x18104001。
- 注意PC软件地址和BMS地址的位置。接收命令的地址排在前面。
- 通信内容信息:例如,在电池故障状态下,如果同时发出低总电压的二级警告,则字节0将显示为80。转换为二进制后,其值为10000000,其中0表示正常,1表示报警。根据DALY的左高右低定义,这对应于位7:低总电压的二级警告。
- 控件 ID:充电 MOS:DA,放电 MOS:D9。00 表示开,01 表示关。
2.UART/485协议
测试工具:COM串口工具
- 波特率:9600bps
- 沟通形式:校验和计算方法:校验和是之前所有数据的总和(只取低字节)。
- PC 软件到 BMS:帧头 + 通信模块地址(高位附加) + 数据 ID + 数据长度 + 数据内容 + 校验和。
- BMS 对 PC 软件的响应:帧头 + 通信模块地址 (BMS-Add) + 数据 ID + 数据长度 + 数据内容 + 校验和。
- 通信内容信息:与 CAN 相同。
3. Modbus协议
测试工具:COM串口工具
- 沟通形式:
- 消息协议格式:读取寄存器,请求帧
- 字节:0 | 1 | 2 | 3 | 4 | 5 | 6 | 7
- 描述:0xD2 | 0x03 | 起始地址 | 寄存器数量 (N) | CRC-16 校验和
- 例如:D203000C000157AA。D2 是从机地址,03 是读取命令,000C 是起始地址,0001 表示要读取的寄存器数量为 1,57AA 是 CRC 校验和。
- 标准响应框架:
- 字节:0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
- 描述:0xD2 | 0x03 | 数据长度 | 第一个寄存器的值 | 第 N 个寄存器的值 | CRC-16 校验和
- L = 2 * N
- 例如:N 是寄存器的数量,D203020001FC56。D2 是从地址,03 是读取命令,02 是读取数据的长度,0001 表示读取的第一个寄存器的值,即主机命令的放电状态,FC56 是 CRC 校验和。
- 消息协议格式:读取寄存器,请求帧
- 写入寄存器:Byte1 为 0x06,其中 06 是写入单个保持寄存器的命令,byte4-5 表示主机命令。
- 标准响应框架:写入单个保持寄存器的标准响应帧遵循与请求帧相同的格式。
- 写入多个数据寄存器:字节 1 为 0x10,其中 10 是写入多个数据寄存器的命令,字节 2-3 是寄存器的起始地址,字节 4-5 表示寄存器的长度,字节 6-7 表示数据内容。
- 标准响应框架:字节2-3是寄存器的起始地址,字节4-5表示寄存器的长度。
发布时间:2024年7月23日
