本文速览
1.演示产品
XB6S-EI2002+XB6S-C01SP
2.配置工具
IOConfigTool
3.通讯模式
XB6S-C01SP配置为ModbusRTU主站
4.演示从站
Modbus Slave串口调试软件(03/06功能码读写)
5.核心操作
设置串口通讯参数逐节点配置Modbus命令代码下发配置通过上行/下行地址读写与状态判断
6.关键注意
主站与从站串口参数须完全一致;响应较慢的从站设备适当延长响应超时与轮询延时
XB6S-EI2002是实点科技EtherNet/IP协议插片式耦合器,XB6S-C01SP是串口通讯模块。两者搭配使用时,XB6S-EI2002负责与PLC的EtherNet/IP通讯,XB6S-C01SP负责串口侧的ModbusRTU主站功能——即在IOConfigTool中完成配置后,由XB6S-C01SP作为主站主动读写第三方的ModbusRTU从站设备。那么具体如何设置串口通讯参数、逐节点配置Modbus命令,并通过上位机下行与上行地址完成读写控制及通讯状态判断?
整体配置分为四个环节:明确从站读写需求上位机设置串口通讯参数逐节点填写Modbus命令代码并下发通过下行地址与上行地址实现读写操作与状态监控。本文以支持ModbusRTU协议的串口调试软件Modbus Slave作为演示从站,分别通过03功能码读2个寄存器和06功能码写2个寄存器,完整演示配置全过程。
一、演示从站说明
本例以支持ModbusRTU协议的串口调试软件Modbus Slave作为从站进行案例配置:
· 03功能码:读2个寄存器
· 10功能码:写2个寄存器
二、上位机配置串口通讯参数
1、设置通讯模式为ModbusRTU主站
通过上位机软件扫描到模块以后,点击“设置”“调试”进入调试模式中,随后选中XB6S-C01SP模块,点击“参数配置”“通信模式”,将通讯模式设置为“ModbusRTU主站”。
2、匹配串口参数
波特率、停止位、字符格式、校验方式根据从站的串口参数对应填写,确保主站与从站配置完全一致。
3、控制字参数设置
若需启用控制字,控制模式建议选择“高电平触发”,同时将响应超时设置为200ms、轮询延时设置为100ms,通讯稳定性更高。
提示:默认参数的轮询速度较快,部分响应较慢的从站设备可能来不及响应而报错。适当延长响应超时和轮询延时可有效提升通讯稳定性。
4、帧间隔
帧间隔参数一般保持默认1.5T即可。若遇到串口调试助手与模块通讯正常、串口调试助手与从站设备也通讯正常,但模块与从站设备之间无法通讯的情况,可尝试逐步加大帧间隔值进行测试。
三、节点参数配置
在通讯模式为ModbusRTU主站且已开启控制字的前提下,按以下规则逐节点填写参数。配置完成后点击“下发”将参数下发到耦合器。本例配置2条命令(03/06两种功能码),共使用节点1~3。
提示:节点1参数1填写本次实际使用的节点数量(本例节点2~3共2个节点)。节点2起每个节点对应一条Modbus命令,参数1为十六进制格式。
四、地址读写与通讯状态判断
1、读写操作
以通过03功能码读取01号从站地址0000起2个保持型寄存器数据为例,在Modbus Slave中仿真从站,配置结果如下:
组态配置完成后,通过上位机的下行地址下发控制指令、通过上行地址读取状态。本例地址均从0开始:
下行数据分别打开节点2和节点3的使能,节点3写入需要发送的数据后点击下发:
上位机上行数据可以看到对应设置节点的状态字和告警码,同时也从Modbus Slave的0000地址读取到了两个寄存器的值,并向0008地址写入了两个寄存器的值:
2、通讯状态判断
正常通讯时,状态字会持续变化(一般看到2与5在切换),告警码一直为0。如果通讯异常,可查看告警码定位问题。