UPS 电源MODBUS 485 监控协议
UPS 电源MODBUS 485 监控协议
云监控Modbus 通讯协议
一、Modbus 通讯协议使用方式:
1,使用 RS232 串口转 RS485 总线:
管理卡第一串口用来连接UPS(电源)或者空调等设备, 第二串口用于连接外部设备(如PC
电脑,RS485 总线等等) 。第二串口缺省功能为透传模式。可配置为 Modbus 通讯模式。具体连接方法另见文档"云监控设置-信号连接示意图.pdf".
a,该串口缺省为透传模式,为普通 RS232 串口, 参数设置为:2400,8n1. b,作为 Modbus 模式, 接口参数为:
串 口:RS485
帧格式:1 位起始位、8 位数据位、无校验、1 位停止位xx率:2400~115200,可配置(缺省 9600)
2,使用管理卡的 LAN 网口,提供 TCP/IP 方式的 Modbus 通讯方式,端口为 502。特别说明:管理卡工作在 Modbus 模式时,远程控制管理功能正常使用。
二,设置管理卡为 Modbus 工作方式
1,打开浏览器(如 IE 等),在地址栏输入管理卡的 IP 地址。(如何设置和获取管理卡的 IP 地址,请参考文档"云监控 -设置 IP 地址.pdf")。
2,选择:集成设置:
其中:a,Modbus/RS485 模式:管理卡第二串口以 RS485 总线的方式提供 Modbus RTU 模式的通讯,可设置 Modbus 通讯地址(缺省为 169)和xx率(缺省为 9600)。
b,TCP 端口: 使用 TCP/IP 的方式,设置端口为 502,即为 Modbus 模式。
特别注明: Modbus 这两种不同的工作方式在 AYI9_U_V06 上可同时使用,也可根据
环境情况选用其中之一。
三、Modbus 报文格式
Modbus 通讯协议提供以下两类功能码:
a,03 指令查询寄存器内容,用来获取 UPS(电源)设备的工作状态; b,06 指令设置寄存器内容,用来控制 UPS(电源)设备的工作运转。
1,RTU 模式:
请求命令的格式:
定义 | 地址 | 功能码 | 起始寄存器 | 寄存器个数 | CRC 校验 |
数据 | ADDR | xx | sREG | nREG | CRC 16 |
字节数 | 1 | 1 | 2 | 2 | 2 |
请求的响应格式:
定义 | 地址 | 功能码 | 返回数据字节数 | 返回数据 | CRC 校验 |
数据 | ADDR | xx | X | DATA | CRC 16 |
字节数 | 1 | 1 | 1 | X | 2 |
注释:
a)地 址: Modbus 通讯地址,可配置,缺省为 0xA9;
b)CRC16 校验:除 CRC 检验外的所有字节数进行 Modbus 规则的 CRC16 校验。
2,TCP 模式:
TCP 模式下使用 PDU 帧格式。请求命令的格式:
定义 | MBAP 报文头 | 功能码 | 起始寄存器 | 寄存器个数 |
数据 | xx | sREG | nREG | |
字节数 | 7 | 1 | 2 | 2 |
请求的响应格式:
定义 | MBAP 报文头 | 功能码 | 返回数据字节数 | 返回数据 |
数据 | xx | X | DATA | |
字节数 | 7 | 1 | 1 | X |
MBAP 报文头格式:
1,传输标识: 2 个字节。 请求时产生,响应时复制。可以理解为命令的序号;
2,协议标识: 2 个字节。固定值为 0 请求时产生,响应时复制。
3,指令长度: 2 个字节。请求时产生,响应时根据返回的数值重新计算。其值为其后续的字节数,包括 Modbus 地址在内。
4,Modbus 地址: 1 个字节。就是设备的 Modbus 地址。
特别说明:
a,不论是 RTU 模式,还是 TCP 模式, 当功能码为 0x06 时, 起始寄存器为 0x80, 寄存器个数为要写入寄存器 0x80 的值.见后文---四(4).
b,功能码为 0x06 时,写入成功后返回值数据为 0x01.
c, 起始寄存器、寄存器个数、返回数据以及 CRC 校验,涉及到 2 个以上字节的数据,发送时均为高位字节在前,低位字节在后。
3,错误返回:
当指令有误时,设备应答格式:
a,RTU 模式:
定义 | 地址 | 功能码 | 错误代码 |
数据 | ADDR | xx | ERROR |
字节数 | 1 | 1 | 1 |
b,TCP 模式:
定义 | MBAP 报文头 | 功能码 | 错误代码 |
数据 | xx | ERROR | |
字节数 | 7 | 1 | 1 |
功能码xx = 请求时的功能码 | 0x80 ; 如,请求时功能码为 0x03, 错误返回功能码为 0x83.
错误代码:
0x01 -- 不支持的功能代码;
0x02 -- 起始寄存器错误;
0x03 -- 寄存器个数错误;
0x05 -- 设备已接收指令,但要稍后才返回结果;
0x06 -- 设备繁忙,不接受指令;
0x08 -- CRC 校验错误。
四、寄存器定义:
寄存器数据查询功能码为 0x03, 控制功能码为 0x06.
1,电源额定信息:
命令 | 寄存器 地址 | 参数定义/名称 | 数据长度 /BYTE | 系数 | 单位 |
03 | 0 | 额定总功率 | 2 | 0.1 | KVA |
03 | 1 | 输入输出相数 | 2 | ||
03 | 2 | 输定输入电压种类(0=220V,1=110V) | 2 | ||
03 | 3 | 输出额定电压 | 2 | 0.1 | V |
03 | 4 | 输出额定电流 | 2 | 0.1 | A |
03 | 5 | 输出额定频率 | 2 | 0.1 | Hz |
03 | 6 | 额定电池电压 | 2 | 0.1 | V |
03 | 7 | 额定电池节数 | 2 |
输入输出相数: 0x11--单进单出, 0x31--三进单出, 0x33--三进三出.
2, 实时运行数据
命令 | 寄存器 地址 | 参数定义/名称 | 数据长度 /BYTE | 系数 | 单位 |
03 | 8 | 电池总电压 | 2 | 0.1 | V |
03 | 9 | 电池温度(保留) | 2 | 0.1 | 摄氏度 |
03 | 10 | UPS 的电池容量 | 2 | 0.1 | % |
03 | 11 | 电池可维持的时间(保留) | 2 | 0.1 | 分钟 |
03 | 12 | 电池充放电流(保留) | 2 | 0.1 | A |
03 | 13 | UPS 的温度 | 2 | 0.1 | 摄氏度 |
03 | 14 | 电池温度 | 2 | 0.1 | 摄氏度 |
03 | 15 | 保留 | 2 | ||
03 | 16 | 输入频率 | 2 | 0.1 | Hz |
03 | 17 | 输入电压 R 相 | 2 | 0.1 | V |
03 | 18 | 输入电压 S 相 | 2 | 0.1 | V |
03 | 19 | 输入电压 T 相 | 2 | 0.1 | V |
03 | 20 | 输入电流 R 相 | 2 | 0.1 | A |
03 | 21 | 输入电流 S 相 | 2 | 0.1 | A |
03 | 22 | 输入电流 T 相 | 2 | 0.1 | A |
03 | 23 | 输入视在功率 R 相 | 2 | 0.1 | VA |
03 | 24 | 输入视在功率 S 相 | 2 | 0.1 | VA |
03 | 25 | 输入视在功率 T 相 | 2 | 0.1 | VA |
03 | 26 | 输入视在总功率 | 2 | 0.1 | VA |
03 | 27 | 输 出频率 | 2 | 0.1 | Hz |
03 | 28 | 输出电压 R 相 | 2 | 0.1 | V |
03 | 29 | 输出电压 S 相 | 2 | 0.1 | V |
03 | 30 | 输出电压 T 相 | 2 | 0.1 | V |
03 | 31 | 输出电流 R 相 | 2 | 0.1 | A |
03 | 32 | 输出电流 S 相 | 2 | 0.1 | A |
03 | 33 | 输出电流 T 相 | 2 | 0.1 | A |
03 | 34 | 输出视在功率 R 相 | 2 | 0.1 | VA |
03 | 35 | 输出视在功率 S 相 | 2 | 0.1 | VA |
03 | 36 | 输出视在功率 T 相 | 2 | 0.1 | VA |
03 | 37 | 输出视在总功率 | 2 | 0.1 | VA |
03 | 38 | 输出有效功率 R 相 | 2 | 0.1 | VA |
03 | 39 | 输出有效功率 S 相 | 2 | 0.1 | VA |
03 | 40 | 输出有效功率 T 相 | 2 | 0.1 | VA |
03 | 41 | 输出总的有效功率 | 2 | 0.1 | VA |
03 | 42 | 负载功率因素 R 相(保留) | 2 | 0.1 | % |
03 | 43 | 负载功率因素 S 相(保留) | 2 | 0.1 | % |
03 | 44 | 负载功率因素 T 相(保留) | 2 | 0.1 | % |
03 | 45 | 输出负载百分比 R 相 | 2 | 0.1 | % |
03 | 46 | 输出负载百分比 S 相 | 2 | 0.1 | % |
03 | 47 | 输出负载百分比 T 相 | 2 | 0.1 | % |
03 | 48 | 输出总负载 | 2 | 0.1 | % |
03 | 49 | 旁路频率 | 2 | 0.1 | Hz |
03 | 50 | 旁路电压 R 相 | 2 | 0.1 | V |
03 | 51 | 旁路电压 S 相 | 2 | 0.1 | V |
03 | 52 | 旁路电压 T 相 | 2 | 0.1 | V |
03 | 53 | 旁路电流 R 相 | 2 | 0.1 | A |
03 | 54 | 旁路电流 S 相 | 2 | 0.1 | A |
03 | 55 | 旁路电流 T 相 | 2 | 0.1 | A |
03 | 56 | 旁路视在功率 R 相 | 2 | 0.1 | VA |
03 | 57 | 旁路视在功率 S 相 | 2 | 0.1 | VA |
03 | 58 | 旁路视在功率 T 相 | 2 | 0.1 | VA |
03 | 59 | 旁路视在总功率 | 2 | 0.1 | VA |
03 | 60 | 保留 | 2 | ||
03 | 61 | 保留 | 2 | ||
03 | 62 | 保留 | 2 | ||
03 | 63 | 保留 | 2 |
3,实时运行状态
命令 | 寄存器地 址 | BIT位 | 参数定义/名称 | 数据长度 /bit |
03 | 64 | 15 | UPS类型: 0=ONLINE,1=BAKCUP | 1 |
14 | 1 | |||
13 | 1 | |||
12 | 1 | |||
10~11 | 电池自检放电结果: 00==未知, 1==失败,2==成 功 | 2 | ||
9 | 0== 非深度放电, 1==深度放电状态 | 1 | ||
8 | 0==不过载, 1==过载 | 1 |
07 | 市电正常==0 ,不正常 == 1 (实际为充电状态) | 1 | ||
06 | 电池电压: 0=不低,1=低 | 1 | ||
05 | 0== 运行状态, 1==正在关机或关机状态 | 1 | ||
04 | 0==打开状态,1==蜂鸣器静音状态 | 1 | ||
00~03 | UPS状态: 0=POWE ON 上电状态 1=STANDBY 待机状态 2=BYPASS 旁路状态 3=LINE 市电工作状态 4=BAT 电池供电状态 5=TEST 测试自检放电状态 6=FAULT 故障状态 7=CONVERTER 8=HE 经济状态,基本等同于BYPASS 9=SHUTDOWN 关机状态 | 4 |
4,实时运行状态
命令 | 寄存器地 址 | BIT位 | 参数定义/名称 | 数据长度 /bit |
06 | 0x80 | 5~15 | 保留 | 1 |
4 | =1 ,关机 | 1 | ||
3 | =1 ,开机 | 1 | ||
2 | =1 ,关闭蜂鸣器 | 1 | ||
1 | =1 ,打开蜂鸣器 | 1 | ||
0 | =1 ,10秒钟放电测试 | 1 |
注意: 发送06功能码时,一次只能发一个控制状态。