385 lines
5.8 KiB
Plaintext
385 lines
5.8 KiB
Plaintext
--- Page 1 ---
|
||
-1-
|
||
-
|
||
技
|
||
术
|
||
标
|
||
准
|
||
标准号:YG20240118-1
|
||
换电柜用锂电池充电器
|
||
1TN 标准通信协议
|
||
RS485
|
||
2024 年1 月
|
||
版
|
||
本:1.0
|
||
苏州翌工电源科技有限公司
|
||
研发中心
|
||
|
||
--- Page 2 ---
|
||
-2-
|
||
-
|
||
版本修改记录:
|
||
版本
|
||
修改内容
|
||
时间
|
||
修改人
|
||
S1.0
|
||
初步建立1TN RS485 协议内容。
|
||
2024-01-18
|
||
Eleven
|
||
|
||
--- Page 3 ---
|
||
-3-
|
||
-
|
||
一、
|
||
概述
|
||
换电柜1TN 多路充电器支持通过RS485 总线进行通信,通信协议为客户自定义协议,
|
||
采用Mod Bus-BTU 传输模式,波特率9600。
|
||
Mod Bus-BTU 传输模式在一根通讯线上采用主从应答方式的通讯连接方式。由主机发
|
||
起,主机的信号寻址到一台唯一地址的终端设备(从机),然后终端设备发出的应答信号以
|
||
相反的方向传输给主机,即半双工的工作模式。该协议只允许在主机和终端设备之间通讯,
|
||
而不允许独立的终端设备之间的数据交换,这样各终端设备不会在它们初始化时占据通讯线
|
||
路,而仅限于响应到达本机的查询信号。
|
||
1.1 通讯格式
|
||
信息传输为异步方式,并以字节为单位,在主机和从机之间传递的通讯信息是11 位的
|
||
字格式。包含1 个起始位(0),8 个数据位和1 个停止位。
|
||
信息帧格式:
|
||
地址
|
||
通道
|
||
功能码
|
||
长度
|
||
数据区
|
||
校验码
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
0x01
|
||
-
|
||
0x03
|
||
0x00
|
||
-
|
||
0x0X
|
||
0x00
|
||
-
|
||
0xFF
|
||
0x01-0xFF
|
||
DATA
|
||
有效字节数
|
||
读写有效的数据内
|
||
容,采用BigEndian
|
||
网络字节序
|
||
SUM =(ADDR +
|
||
CHx+CMD+LEN
|
||
+DATA)按字节
|
||
相加,取低8 位
|
||
1 个字节
|
||
1 个字节
|
||
1 个字节
|
||
1 个字节
|
||
LEN 个字节
|
||
1 个字节
|
||
1.2 通讯信息过程
|
||
信息发送至从机时,从机接收通讯命令,如果SUM 校验无误则执行相应的操作,然后
|
||
把执行结果(数据)返送给主机。返回的信息中包括Header、CMD、ATS、执行后的数据以
|
||
及SUM 校验码和END。如果CRC 校验出错就不返回任何信息,则分析返回相应的错误
|
||
信息。
|
||
1.2.1
|
||
地址码(ADDR)
|
||
对应电源双拨码开关,01 代表0x01,10 代表0x02,11 代表0x03。
|
||
对应电源双拨码开关,001 代表0x01,010 代表0x02,011 代表0x03,100 代表0x04,
|
||
101 代表0x05,110 代表0x06,111 代表0x07。
|
||
1.2.2
|
||
通道码(CHx)
|
||
对应各个通道识别码。
|
||
通道
|
||
Bit1-7
|
||
Bit0
|
||
CHx Byte 解析
|
||
通道
|
||
Bit1-7
|
||
Bit0
|
||
CHx Byte 解析
|
||
CH1
|
||
00
|
||
0/1
|
||
00:CH1 主通道
|
||
01:CH1 副通道
|
||
CH4
|
||
03
|
||
0/1
|
||
06:CH4 主通道
|
||
07:CH4 副通道
|
||
|
||
--- Page 4 ---
|
||
-4-
|
||
-
|
||
CH2
|
||
01
|
||
0/1
|
||
02:CH2 主通道
|
||
03:CH2 副通道
|
||
CH5
|
||
04
|
||
0/1
|
||
08:CH5 主通道
|
||
09:CH5 副通道
|
||
CH3
|
||
02
|
||
0/1
|
||
04:CH3 主通道
|
||
05:CH3 副通道
|
||
CH6
|
||
05
|
||
0/1
|
||
0A:CH6 主通道
|
||
0B:CH6 副通道
|
||
1.2.3
|
||
功能码(CMD)
|
||
每个通讯信息帧的第4 个字节。主机发送,通过功能码告诉从机应执行什么动作。从
|
||
机响应,从机返回的功能码与从主机发送来的功能码一样,表明从机已响应主机并已执行了
|
||
相关的操作。本协议支持以下功能码:
|
||
序号
|
||
命令
|
||
CMD1
|
||
LEN
|
||
备注
|
||
1
|
||
设置通道
|
||
输出电压/电流
|
||
0x02
|
||
0x04
|
||
2
|
||
设置通道
|
||
开关机
|
||
0x03
|
||
0x01
|
||
3
|
||
通道组合指令
|
||
开关机/调压/调流
|
||
0x04
|
||
0x05
|
||
4
|
||
电源通道信息查询
|
||
0x05
|
||
0x01
|
||
5
|
||
供应商电源型号/版本
|
||
号/序列号查询
|
||
0x12
|
||
0x01
|
||
10
|
||
升级状态查询
|
||
0x18
|
||
NC
|
||
详见升级
|
||
协议
|
||
11
|
||
OTA 远程升级
|
||
0x19
|
||
NC
|
||
详见升级
|
||
协议
|
||
1.2.4
|
||
数据区长度(LEN)
|
||
见上表
|
||
1.2.5
|
||
数据区(DATA)
|
||
数据区随功能码不同而异。这些数据可以是数值、参考地址等。对于不同的从机地址和
|
||
数据信息都不相同,应给出通讯信息表,详见例程。
|
||
1.2.6
|
||
校验区(SUM)
|
||
校验区采用和校验方式,从地址码一直到数据域最后一位,求和并取低八位作为校验码。
|
||
|
||
--- Page 5 ---
|
||
-5-
|
||
-
|
||
指令解析:
|
||
1. 设置1#电源CH1主通道输出电压电流
|
||
主控发送给电源
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
0x01
|
||
0x00
|
||
0x02
|
||
0x04
|
||
0x02 58 00 64
|
||
0xC5
|
||
DATA:0x0258代表60.0V, 0x0064代表10.0A.
|
||
电源回复给主控
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
0x01
|
||
0x00
|
||
0x02
|
||
0x01
|
||
0x01
|
||
0x05
|
||
回复:0x01代表设置输出电压电流成功
|
||
2. 设置1#电源CH1主通道输出开关机
|
||
主控发送给电源
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
0x01
|
||
0x00
|
||
0x03
|
||
0x01
|
||
0x01
|
||
0x06
|
||
开关机:0x01代表开机,0x00代表关机
|
||
电源回复给主控
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
0x01
|
||
0x00
|
||
0x03
|
||
0x01
|
||
0x01
|
||
0x06
|
||
回复:0x01代表当前设置开关机成功
|
||
3. 设置1#电源CH1主通道组合控制命令
|
||
主控发送给电源
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
0x01
|
||
0x00
|
||
0x04
|
||
0x05
|
||
0x01 02 58 00 64
|
||
0xC9
|
||
DATA: 0x01代表开机状态,0258代表设置电压60.0V,0064代表设置电流10.0A
|
||
电源回复给主控
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
0x01
|
||
0x00
|
||
0x04
|
||
0x07
|
||
0x02 58 00 64 01 01 1A
|
||
0xE6
|
||
回复DATA: 0258代表当前输出电压60.0V,0064代表当前输出电流10.0A,01 01代表故障码,1A代表环温26C.
|
||
4. 读取1#电源CH1主通道运行信息
|
||
主控发送给电源
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
|
||
--- Page 6 ---
|
||
-6-
|
||
-
|
||
0x01
|
||
0x00
|
||
0x05
|
||
0x01
|
||
0x00
|
||
0x07
|
||
电源回复给主控
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
0x01
|
||
0x00
|
||
0x05
|
||
0x0D
|
||
02 58 00 64 01 01 1A 55 F0 03 E8 08 98
|
||
0xBD
|
||
回复DATA: 0x0258代表设置电压60.0V,0064代表设置电流10.0A,0x01 01代表故障码,1A代表环温26C,55F0输
|
||
入电压220.00V,03E8输入电流10.00A,0898输入功率2200W
|
||
故障码解析:
|
||
故障字节1
|
||
Bit0
|
||
输入欠压
|
||
故障字节1
|
||
Bit0
|
||
硬件故障
|
||
Bit1
|
||
输入过压
|
||
Bit1
|
||
PFC故障
|
||
Bit2
|
||
NC
|
||
Bit2
|
||
风扇故障
|
||
Bit3
|
||
输出过压
|
||
Bit3
|
||
电池反接故障
|
||
Bit4
|
||
输出欠压
|
||
Bit4
|
||
NC
|
||
Bit5
|
||
输出短路
|
||
Bit5
|
||
NC
|
||
Bit6
|
||
输出过流
|
||
Bit6
|
||
NC
|
||
Bit7
|
||
过温
|
||
Bit7
|
||
NC
|
||
5. 读取1#电源供应商电源型号/版本号/序列号查询
|
||
主控发送给电源
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
0x01
|
||
0x00
|
||
0x12
|
||
0x01
|
||
0x00
|
||
0x14
|
||
电源回复给主控
|
||
ADDR
|
||
CHx
|
||
CMD
|
||
LEN
|
||
DATA
|
||
SUM
|
||
0x01
|
||
0x00
|
||
0x12
|
||
0x0F
|
||
‘YGCP1TN-A’ 01 01 18 02 17 00 01
|
||
+
|
||
回复DATA: ASCII码’YG’代表厂商,CP1TN-A代表电源型号,S1.0V1.0代表硬件版本1软件版本1, 18 02 17
|
||
代表24年2月23日,00 01代表序列号00001.
|
||
|