JK-DZ08-BxA24S 均衡器通信协议
JK-DZ08-BxA24S 均衡器通信协议
1. 概述
x协议约束了 JK-DZ08-BxA24S 均衡器单板对外通信的电气接❑、数据格式、通信速率等内容。
2. 通信参数
通信接❑ | CAN |
xx率 | 250Kbps |
3. CAN 总线数据数据格式
在通信过程中仅使用 CAN 总线的标准帧,未使用扩展帧,通过 CAN 总线的仲裁场 ID 来约束整个通信帧的内容。
仲裁场(ARBITRATION FIELD) | |
BIT10:4 | BIT3:0 |
0 | 均衡器地址 Address |
CAN 总线扩展帧仲裁场 ID 共 11Bit。协议中规定高 7 位全部为 0,低 4 位用来标示设备地址。
4. 通信流程
整个通信采用主从的方式进行,主机为主设备,均衡器为从设备。所有的通信只能是主设备发起,从设备做出响应。在通信过程中定义每帧数据的第一个字节为数据类型指示,所有数据帧均为高字节在前,低字节在后。
下面以设备地址为 0x01 为例,进行通信说明。
4.1 请求均衡器数据
1) 主机发送数据
Addr | 数据场 1 2-8 | |
0x01 | 0xFF | - |
2) 均衡器应答
Addr | 数据场 | |||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | |
0x01 | 0x01 | 温度 (INT16)(℃) | 总电压 (UINT16)(10mV) | 平均电压 (UINT16)(mV) | 识 别 数量 | |||
0x01 | 0x02 | 最高 单体 | 最低单 体 | 均衡与 报警 | 最大压差 (UINT16)(mV) | 均衡电流 (UINT16)(mA) | ||
0x01 | 0x03 | 均衡触发压差 (UINT16)(mV) | 最大均衡电流 (UINT16)(mA) | 均衡 开关 | 单体数 量 | - | ||
0x01 | 0x04 | 单体编号 N | 单体电压 N (UINT16)(mV) | 单体电压 N+1 (UINT16)(mV) | 单体电压 N+2 (UINT16)(mV) |
注1. 均衡与报警字节 BIT0 表示均衡电池充电;BIT1 表示均衡电池放电;BIT4表示单体数量设置不正确;BIT5 表示线电阻过大。
注2. 识别单体数量是均衡器实际识别串数,单体数量是均衡器设定的工作串数。
注3. 单体编号 N 为该帧第一个单体电压的编号。
4.2 设定单体串数
1) 主机发送数据
Addr | 数据场 | ||
1 | 2 | 3-8 | |
0x01 | 0xF0 | 单体数量 | - |
2) 均衡器应答
Addr | 数据场 | ||
1 | 2 | 3-8 | |
0x01 | 0xF1 | 单体数量 | - |
注1. 单体数量范围为 2-24,超出范围均衡器将不识别,同时返回当前均衡器内部的参数。
4.3 设定均衡触发压差
1) 主机发送数据
Addr | 数据场 | ||||
0x01 | 0xF2 | 均衡触发压差(UINT16)(mV) | - |
2) 均衡器应答
Addr | 数据场 | ||||
0x01 | 0xF3 | 均衡触发压差(UINT16)(mV) | - |
注1. 均衡触发压差范围为 2-1000mV 超出范围均衡器将不识别,同时返回当前均衡器内部的参数。
4.4 设定最大均衡电流
1) 主机发送数据
Addr | 数据场 | ||||
0x01 | 0xF4 | 最大均衡电流(UINT16)(mA) | - |
2) 均衡器应答
Addr | 数据场 | ||||
0x01 | 0xF5 | 最大均衡电流(UINT16)(mA) | - |
注1. 最大均衡电流范围为 30-1000mA 超出范围均衡器将不识别,同时返回当前均衡器内部的参数。
4.5 设定均衡开关
1) 主机发送数据
Addr | 数据场 | ||
1 | 2 | 3-8 | |
0x01 | 0xF6 | 均衡开关 | - |
2) 均衡器应答
Addr | 数据场 | ||
1 | 2 | 3-8 | |
0x01 | 0xF7 | 均衡开关 | - |
注1. 均衡开关设置范围为 0-1,0 表示关闭均衡;1 表示开启均衡;超出范围均衡器将不识别,同时返回当前均衡器内部的参数。
5. 举例
5.1 请求均衡器数据
主机发送:帧 ID 01;数据 0xFF;均衡器应答 ID:01;
应答数据:01 00 15 1E D3 0F 69 14;//温度 0x0015 * 1℃ = 21℃
//总电压 0x1ED3 * 10mV = 7891 * 10mV = 78.910V
//平均电压 0x0F69 * 1mV = 3995mV = 3.995V
//识别单体数量 0x14*1 串 = 20 串应答数据:02 13 02 00 00 05 00 00; //最高电压单体 0x13 = 第 19 串
//最低电压单体 0x02 = 第 2 串
//均衡与报警 (0x00 & BIT0) = 0 未均衡充电
//均衡与报警 (0x00 & BIT1) = 0 未均衡放电
//均衡与报警 (0x00 & BIT4) = 0 单体数量设置正确
//均衡与报警 (0x00 & BIT5) = 0 线电阻正常
//最大压差 0x0005 * 1mV = 5mV = 0.005V
//均衡电流 0x0000 * 1mA = 0mA = 0A
应答数据:03 03 E8 01 FF 00 14; //均衡触发压差 0x03E8 *1mV = 1000mV = 1V
//最大均衡电流 0x01FF * 1mA = 511mA = 0.511A
//均衡开关 0x00 均衡关闭
//设置单体数量 0x14 * 1 串 = 20 串应答数据:04 00 0F 69 0F 69 0F 67;//起始电压编号 0x00 = 0
//单体 0 电压 0x0F69 * 1mV = 3945mV = 3.945V
//单体 1 电压 0x0F69 * 1mV = 3945mV = 3.945V
//单体 2 电压 0x0F67 * 1mV = 3943mV = 3.943V
应答数据:04 03 0F 69 0F 68 0F 67;//起始电压编号 0x03 = 3
//单体 3 电压 0x0F69 * 1mV = 3945mV = 3.945V
//单体 4 电压 0x0F68 * 1mV = 3944mV = 3.944V
//单体 5 电压 0x0F67 * 1mV = 3943mV = 3.943V
应答数据:04 06 0F 68 0F 68 0F 6C;//起始电压编号 0x06 = 6
//单体 6 电压 0x0F68 * 1mV = 3944mV = 3.944V
//单体 7 电压 0x0F68 * 1mV = 3944mV = 3.944V
//单体 8 电压 0x0F6C * 1mV = 3948mV = 3.948V
5.2 设定单体数量
主机发送:帧 ID 01;
数据 0xF0 0x10; //设定单体数量为 16 串均衡器应答 ID:01;
应答数据:F1 10;//单体数量 0x10 = 16 串,发送数据与接收数据一致,设置成功
主机发送:帧 ID 01;
数据 0xF0 0x20; //设定单体数量为 32 串(数据超出范围)均衡器应答 ID:01;
应答数据:F1 10;//单体数量 0x10 = 16 串,发送数据与接收数据不一致,设置失败
5.3 设定均衡触发压差
主机发送:帧 ID 01;
数据 F2 00 FF; //设定触发均衡压差 0x00FF * 1mV = 255mV
均衡器应答 ID:01;
应答数据:F3 00 FF;//触发均衡压差 0x00FF * 1mV = 255mV;发送数据与接收数据一致,设置成功
主机发送:帧 ID 01;
数据 F2 FF FF; //设定触发均衡压差 0xFFFF * 1mV = 65535mV (数据超出范围)
均衡器应答 ID:01;
应答数据:F2 00 FF;//触发均衡压差 0x00FF * 1mV = 255mV;发送数据与接收数据不一致,设置失败
5.4 设定最大均衡电流
主机发送:帧 ID 01;
数据 F4 01 FF; //设定触发最大均衡电流 0x01FF * 1mA = 511mA = 0.511A
均衡器应答 ID:01;
应答数据:F5 01 FF;//设定触发最大均衡电流 0x01FF * 1mA = 511mA = 0.511A;发送数据与接收数据一致,设置成功
主机发送:帧 ID 01;
数据 F4 01 00; //设定触发均衡压差 0x0100 * 1mV = 256mA (数据超出范围)
均衡器应答 ID:01;
应答数据:F5 01 FF;//设定触发最大均衡电流 0x01FF * 1mA = 511mA = 0.511A;发送数据与接收数据不一致,设置失败
5.5 设定均衡开关
主机发送:帧 ID 01;
数据 F6 00; //0x00 关闭均衡均衡器应答 ID:01;
应答数据:F7 00;//0x00 均衡被关闭,发送数据与接收数据一致,设置成功
主机发送:帧 ID 01;
数据 F6 01; //0x00 开启均衡均衡器应答 ID:01;
应答数据:F7 01;//0x01 均衡开启,发送数据与接收数据一致,设置成功
主机发送:帧 ID 01;
数据 F4 02; // 数据超出范围均衡器应答 ID:01;
应答数据:F7 01;//均衡开启;发送数据与接收数据不一致,设置失败