

智能电批MODBUS-TCP协议使用说明
1.1 连接说明
在设备与用户 MODBUS-TCP 连接之前,请确保满足以下规格要求:
通信接口
: 设备支持 MODBUS-TCP 通信协议,且作为主机;
IP 网段
: 192.168.0.xxx(且不与设备 IP 地址相同);
MODBUS 设置
: 设备作为从站;地址:2,端口号:1502;
时间设置
: MODBUS 通讯最短时间间隔为 5ms(200Hz);
备注:本设备支持上位机和 MODBUS 同时控制的应用场景;
1.2 读写地址操作示例
MODBUS-TCP 标准报文格式如下
1.2.1 读取指定地址数据
读取当前任务链(地址: 0x300)
主机请求:00 06 00 00 00 06 02 03 03 00 00 01
报文格式:
操作成功从机回复:00 06 00 00 00 05 02 03 02 00 01
报文格式:
此时根据 Modbus 通信协议可知,读取当前任务链(地址: 0x300)为任务链 1(数据:00 01)
1.2.2 写入数据到指定地址
更改当前任务链 (地址:0x300)为任务链 2(数据:00 02)
主机请求:01 44 00 00 00 06 02 06 03 00 00 02
报文格式:
MBAP header
功能码
起始地址
寄存器数量
00 06 00 00 00 06 02
3
03 00
00 01
MBAP header
功能码
字节数
第 0Byte 值
00 06 00 00 00 05 02
3
2
00 01
MBAP header
功能码
地址
修改的值
01 44 00 00 00 06 02
6
03 00
00 02操作成功从机回复:01 44 00 00 00 06 02 06 03 00 00 02(修改成功发送和回复相同)
此时成功将当前任务链切换为任务链 2.
1.3 错误码
通过 MODBUS 读写数据地址不成功时,设备会通过标准 MODBUS 协议返回相关错误码;
例:
主机请求:00 01 00 00 00 06 01 03 3f ff 00 01
数据格式
此时主机企图读取地址:0x3ff 的数据,因本设备不支持此地址,固为异常情况,此时设备返
回数据:
设备回复:00 01 00 00 00 03 01 83 02
数据格式
当返回功能码为 0x83 时,此时为异常数据,具体错误解析如下:
错误码:
0x0001
非法功能
0x0002
非法数据地址
0x0003
非法数据值
0x0004
从站设备故障
0x0006
从属设备忙
0x0012
不支持写入
0x000A
设定值超范围
MBAP header
功能码
地址
修改的值
01 44 00 00