211 lines
6.3 KiB
Markdown
211 lines
6.3 KiB
Markdown
|
|
# 换电柜用锂电池充电器 1TN 标准通信协议 RS485
|
|||
|
|
|
|||
|
|
- **标准号**:YG20240118-1
|
|||
|
|
- **版本**:V1.0
|
|||
|
|
- **制定方**:苏州翌工电源科技有限公司
|
|||
|
|
- **适用范围**:换电柜 1TN 多路充电器 RS485 总线通信
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 版本记录
|
|||
|
|
|
|||
|
|
| 版本 | 修改内容 | 时间 | 修改人 |
|
|||
|
|
|------|---------|------|--------|
|
|||
|
|
| S1.0 | 初步建立1TN RS485协议内容 | 2024-01-18 | Eleven |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 1. 概述
|
|||
|
|
|
|||
|
|
换电柜 1TN 多路充电器支持通过 RS485 总线进行通信,通信协议为客户自定义协议,采用 Modbus-RTU 传输模式,波特率 9600。
|
|||
|
|
|
|||
|
|
Modbus-RTU 传输模式在一根通讯线上采用主从应答方式的通讯连接方式。由主机发起,主机的信号寻址到一台唯一地址的终端设备(从机),然后终端设备发出的应答信号以相反的方向传输给主机,即半双工的工作模式。该协议只允许在主机和终端设备之间通讯,而不允许独立的终端设备之间的数据交换,这样各终端设备不会在它们初始化时占据通讯线路,而仅限于响应到达本机的查询信号。
|
|||
|
|
|
|||
|
|
### 1.1 通讯格式
|
|||
|
|
|
|||
|
|
信息传输为异步方式,并以字节为单位,在主机和从机之间传递的通讯信息是 11 位的字格式。包含 1 个起始位(0),8 个数据位和 1 个停止位。
|
|||
|
|
|
|||
|
|
### 1.2 信息帧格式
|
|||
|
|
|
|||
|
|
| 字段 | 字节数 | 说明 |
|
|||
|
|
|------|--------|------|
|
|||
|
|
| ADDR | 1 | 地址码 |
|
|||
|
|
| CHx | 1 | 通道码 |
|
|||
|
|
| CMD | 1 | 功能码 |
|
|||
|
|
| LEN | 1 | 数据区长度 |
|
|||
|
|
| DATA | LEN | 数据区(BigEndian 网络字节序) |
|
|||
|
|
| SUM | 1 | 校验码 = (ADDR + CHx + CMD + LEN + DATA) 按字节相加取低8位 |
|
|||
|
|
|
|||
|
|
### 1.3 通讯过程
|
|||
|
|
|
|||
|
|
信息发送至从机时,从机接收通讯命令,如果 SUM 校验无误则执行相应的操作,然后把执行结果(数据)返送给主机。返回的信息中包括 Header、CMD、ATS、执行后的数据以及 SUM 校验码和 END。如果校验出错就不返回任何信息,则分析返回相应的错误信息。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 2. 地址码(ADDR)
|
|||
|
|
|
|||
|
|
对应电源拨码开关。
|
|||
|
|
|
|||
|
|
- **双拨码开关**:01→0x01, 10→0x02, 11→0x03
|
|||
|
|
- **3位拨码开关**:001→0x01, 010→0x02, 011→0x03, 100→0x04, 101→0x05, 110→0x06, 111→0x07
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 3. 通道码(CHx)
|
|||
|
|
|
|||
|
|
对应各个通道识别码。
|
|||
|
|
|
|||
|
|
| 通道 | Bit1-7 | CHx值(Bit0=0主通道) | CHx值(Bit0=1副通道) |
|
|||
|
|
|------|--------|----------------------|----------------------|
|
|||
|
|
| CH1 | 0x00 | 0x00 | 0x01 |
|
|||
|
|
| CH2 | 0x01 | 0x02 | 0x03 |
|
|||
|
|
| CH3 | 0x02 | 0x04 | 0x05 |
|
|||
|
|
| CH4 | 0x03 | 0x06 | 0x07 |
|
|||
|
|
| CH5 | 0x04 | 0x08 | 0x09 |
|
|||
|
|
| CH6 | 0x05 | 0x0A | 0x0B |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 4. 功能码(CMD)
|
|||
|
|
|
|||
|
|
| 序号 | 命令 | CMD | LEN | 备注 |
|
|||
|
|
|------|------|-----|-----|------|
|
|||
|
|
| 1 | 设置通道输出电压/电流 | 0x02 | 0x04 | |
|
|||
|
|
| 2 | 设置通道开关机 | 0x03 | 0x01 | |
|
|||
|
|
| 3 | 通道组合指令(开关机/调压/调流) | 0x04 | 0x05 | |
|
|||
|
|
| 4 | 电源通道信息查询 | 0x05 | 0x01 | |
|
|||
|
|
| 5 | 供应商电源型号/版本号/序列号查询 | 0x12 | 0x01 | |
|
|||
|
|
| 6 | 升级状态查询 | 0x18 | NC | 详见升级协议 |
|
|||
|
|
| 7 | OTA 远程升级 | 0x19 | NC | 详见升级协议 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 5. 故障码
|
|||
|
|
|
|||
|
|
### 故障字节1
|
|||
|
|
|
|||
|
|
| Bit | 含义 | Bit | 含义 |
|
|||
|
|
|-----|------|-----|------|
|
|||
|
|
| Bit0 | 输入欠压 | Bit4 | 输出欠压 |
|
|||
|
|
| Bit1 | 输入过压 | Bit5 | 输出短路 |
|
|||
|
|
| Bit2 | NC | Bit6 | 输出过流 |
|
|||
|
|
| Bit3 | 输出过压 | Bit7 | 过温 |
|
|||
|
|
|
|||
|
|
### 故障字节2
|
|||
|
|
|
|||
|
|
| Bit | 含义 | Bit | 含义 |
|
|||
|
|
|-----|------|-----|------|
|
|||
|
|
| Bit0 | 硬件故障 | Bit4 | NC |
|
|||
|
|
| Bit1 | PFC故障 | Bit5 | NC |
|
|||
|
|
| Bit2 | 风扇故障 | Bit6 | NC |
|
|||
|
|
| Bit3 | 电池反接故障 | Bit7 | NC |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 6. 指令示例
|
|||
|
|
|
|||
|
|
### 6.1 设置输出电压/电流(CMD=0x02)
|
|||
|
|
|
|||
|
|
**主控→电源:**
|
|||
|
|
|
|||
|
|
| ADDR | CHx | CMD | LEN | DATA | SUM |
|
|||
|
|
|------|-----|-----|-----|------|-----|
|
|||
|
|
| 0x01 | 0x00 | 0x02 | 0x04 | 0x02 0x58 0x00 0x64 | 0xC5 |
|
|||
|
|
|
|||
|
|
DATA:0x0258 = 60.0V, 0x0064 = 10.0A
|
|||
|
|
|
|||
|
|
**电源→主控:**
|
|||
|
|
|
|||
|
|
| ADDR | CHx | CMD | LEN | DATA | SUM |
|
|||
|
|
|------|-----|-----|-----|------|-----|
|
|||
|
|
| 0x01 | 0x00 | 0x02 | 0x01 | 0x01 | 0x05 |
|
|||
|
|
|
|||
|
|
回复:0x01 = 设置成功
|
|||
|
|
|
|||
|
|
### 6.2 设置开关机(CMD=0x03)
|
|||
|
|
|
|||
|
|
**主控→电源:**
|
|||
|
|
|
|||
|
|
| ADDR | CHx | CMD | LEN | DATA | SUM |
|
|||
|
|
|------|-----|-----|-----|------|-----|
|
|||
|
|
| 0x01 | 0x00 | 0x03 | 0x01 | 0x01 | 0x06 |
|
|||
|
|
|
|||
|
|
DATA:0x01 = 开机, 0x00 = 关机
|
|||
|
|
|
|||
|
|
**电源→主控:**
|
|||
|
|
|
|||
|
|
| ADDR | CHx | CMD | LEN | DATA | SUM |
|
|||
|
|
|------|-----|-----|-----|------|-----|
|
|||
|
|
| 0x01 | 0x00 | 0x03 | 0x01 | 0x01 | 0x06 |
|
|||
|
|
|
|||
|
|
回复:0x01 = 设置成功
|
|||
|
|
|
|||
|
|
### 6.3 组合控制命令(CMD=0x04)
|
|||
|
|
|
|||
|
|
**主控→电源:**
|
|||
|
|
|
|||
|
|
| ADDR | CHx | CMD | LEN | DATA | SUM |
|
|||
|
|
|------|-----|-----|-----|------|-----|
|
|||
|
|
| 0x01 | 0x00 | 0x04 | 0x05 | 0x01 0x02 0x58 0x00 0x64 | 0xC9 |
|
|||
|
|
|
|||
|
|
DATA: 0x01 = 开机, 0x0258 = 60.0V, 0x0064 = 10.0A
|
|||
|
|
|
|||
|
|
**电源→主控:**
|
|||
|
|
|
|||
|
|
| ADDR | CHx | CMD | LEN | DATA | SUM |
|
|||
|
|
|------|-----|-----|-----|------|-----|
|
|||
|
|
| 0x01 | 0x00 | 0x04 | 0x07 | 0x02 0x58 0x00 0x64 0x01 0x01 0x1A | 0xE6 |
|
|||
|
|
|
|||
|
|
回复DATA: 0x0258 = 当前电压60.0V, 0x0064 = 当前电流10.0A, 0x01 0x01 = 故障码, 0x1A = 环温26℃
|
|||
|
|
|
|||
|
|
### 6.4 读取通道运行信息(CMD=0x05)
|
|||
|
|
|
|||
|
|
**主控→电源:**
|
|||
|
|
|
|||
|
|
| ADDR | CHx | CMD | LEN | DATA | SUM |
|
|||
|
|
|------|-----|-----|-----|------|-----|
|
|||
|
|
| 0x01 | 0x00 | 0x05 | 0x01 | 0x00 | 0x07 |
|
|||
|
|
|
|||
|
|
**电源→主控:**
|
|||
|
|
|
|||
|
|
| ADDR | CHx | CMD | LEN | DATA | SUM |
|
|||
|
|
|------|-----|-----|-----|------|-----|
|
|||
|
|
| 0x01 | 0x00 | 0x05 | 0x0D | 0x02 0x58 0x00 0x64 0x01 0x01 0x1A 0x55 0xF0 0x03 0xE8 0x08 0x98 | 0xBD |
|
|||
|
|
|
|||
|
|
回复DATA解析:
|
|||
|
|
|
|||
|
|
| 偏移 | 数据 | 含义 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| 0-1 | 0x0258 | 设置电压 60.0V |
|
|||
|
|
| 2-3 | 0x0064 | 设置电流 10.0A |
|
|||
|
|
| 4-5 | 0x0101 | 故障码 |
|
|||
|
|
| 6 | 0x1A | 环温 26℃ |
|
|||
|
|
| 7-8 | 0x55F0 | 输入电压 220.00V |
|
|||
|
|
| 9-10 | 0x03E8 | 输入电流 10.00A |
|
|||
|
|
| 11-12 | 0x0898 | 输入功率 2200W |
|
|||
|
|
|
|||
|
|
### 6.5 查询供应商信息(CMD=0x12)
|
|||
|
|
|
|||
|
|
**主控→电源:**
|
|||
|
|
|
|||
|
|
| ADDR | CHx | CMD | LEN | DATA | SUM |
|
|||
|
|
|------|-----|-----|-----|------|-----|
|
|||
|
|
| 0x01 | 0x00 | 0x12 | 0x01 | 0x00 | 0x14 |
|
|||
|
|
|
|||
|
|
**电源→主控:**
|
|||
|
|
|
|||
|
|
| ADDR | CHx | CMD | LEN | DATA |
|
|||
|
|
|------|-----|-----|-----|------|
|
|||
|
|
| 0x01 | 0x00 | 0x12 | 0x0F | 'YGCP1TN-A' + 硬件版本 + 软件版本 + 日期(年/月/日) + 序列号 |
|
|||
|
|
|
|||
|
|
回复DATA解析:
|
|||
|
|
|
|||
|
|
| 偏移 | 含义 |
|
|||
|
|
|------|------|
|
|||
|
|
| 0-1 | 厂商 ('YG') |
|
|||
|
|
| 2-9 | 电源型号 ('CP1TN-A') |
|
|||
|
|
| 10 | 硬件版本 (S1.0) |
|
|||
|
|
| 11 | 软件版本 (V1.0) |
|
|||
|
|
| 12-14 | 生产日期 (年/月/日) |
|
|||
|
|
| 15-16 | 序列号 |
|