DALY 三种通讯协议讲解

伤残调整生命年主要有三个协议:CAN、UART/485 和 Modbus。

1.CAN协议

测试工具:CAN测试

  1. 波特率:25万
  2. 框架类型:标准和扩展框架。一般使用扩展框架,而标准框架则用于少数定制的BMS。
  3. 通讯格式:数据 ID 从 0x90 到 0x98可供客户访问。客户通常无法访问或修改其他 ID。
    • PC软件到BMS:优先级+数据ID+BMS地址+PC软件地址,例如0x18100140。
    • BMS对PC软件的响应:优先级+数据ID+PC软件地址+BMS地址,例如0x18104001。
    • 记下 PC 软件地址和 BMS 地址的位置。接收命令的地址排在第一位。
  4. 通讯内容信息:例如,在电池故障状态下,并有总电压过低二级警告时,Byte0 将显示为 80。转换为二进制为 10000000,其中 0 表示正常,1 表示报警。根据DALY的左高右低定义,对应Bit7:总电压过低二级警告。
  5. 控制 ID:充电MOS:DA,放电MOS:D9。 00 表示开启,01 表示关闭。
USB-CAN通讯数据线

2.UART/485协议

测试工具:COM串口工具

  1. 波特率:9600bps
  2. 通讯格式:校验和计算方法:校验和是之前所有数据的总和(只取低字节)。
    • PC软件到BMS:帧头+通信模块地址(UPPER-Add)+数据ID+数据长度+数据内容+校验和。
    • BMS 对 PC 软件的响应:帧头 + 通信模块地址(BMS-Add)+ 数据 ID + 数据长度 + 数据内容 + 校验和。
  3. 通讯内容信息:与CAN相同。
USB-RS485通讯数据线
USB-UART通讯数据线

3. Modbus协议

测试工具:COM串口工具

  1. 通讯格式:
    • 消息协议格式:读取寄存器、请求帧
      • 字节:0 | 1 | 2 | 3 | 4 | 5 | 6 | 7
      • 描述: 0xD2 | 0x03 | 0x03起始地址 |寄存器数量 (N) | CRC-16 校验和
      • 示例:D203000C000157AA。 D2为从机地址,03为读取命令,000C为起始地址,0001表示读取的寄存器个数为1,57AA为CRC校验和。
    • 标准响应帧:
      • 字节:0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
      • 描述: 0xD2 | 0x03 | 0x03数据长度|第一个寄存器的值|第 N 个寄存器的值 | CRC-16 校验和
      • L = 2 * N
      • 示例:N 为寄存器数量,D203020001FC56。 D2为从机地址,03为读命令,02为读取的数据长度,0001表示读取的第1个寄存器的值,即主机命令的放电状态,FC56为CRC校验和。
  2. 写寄存器:Byte1为0x06,其中06是写单个保持寄存器的命令,byte4-5代表主机命令。
    • 标准响应帧:用于写入单个保持寄存器的标准响应帧遵循与请求帧相同的格式。
  3. 写入多个数据寄存器:byte1为0x10,其中10为写入多个数据寄存器的命令,byte2-3为寄存器的起始地址,byte4-5表示寄存器的长度,byte6-7表示数据内容。
    • 标准响应帧:Byte2-3是寄存器的起始地址,Byte4-5表示寄存器的长度。

发布时间:2024年7月23日

联系达锂

  • 地址: 中国广东省东莞市松山湖科技工业园工业南路14号天安云谷7号楼
  • 电话 : +86 13215201813
  • 时间: 每周 7 天,上午 00:00 至下午 24:00
  • 电子邮件: dalybms@dalyelec.com