前几天发布了以串口调试为主的通讯测试工具,今天开始发布Modbus测试工具(Modbus Slave调试工具),明天发布Modbus测试工具(Modbus Master调试工具)。Modbus Slave调试工具,自然是用来模拟Modbus设备的工具,主要用来模拟Modbus从站设备,接收主站的命令包,回送数据包。常用模拟实际设备进行调试。典型工具如:Modbus Slave。
Modbus Slave是Modbus子设备模拟工具,帮助Modbus通讯设备开发人员进行Modbus通讯协议的模拟和测试,用于模拟、测试、调试Modbus通讯设备。
可以32个窗口中模拟多达32个Modbus子设备!与Modbus Poll的用户界面相同,支持功能01, 02, 03, 04, 05, 06, 15, 16, 22 和23,监视串口数据。
支持以下Modbus协议: RTU ASCII Modbus TCP 支持的MODBUS功能码: 01: 读取线圈状态 02: 读取输入状态 03: 读取保持寄存器 04: 读取输入寄存器 05: 强置单线圈 06: 预置单寄存器 15: 强置多线圈 16: 预置多寄存器 22: 位操作寄存器 23: 读/写寄存器。
1、Modbus Slave 使用
1)、安装注册:
此软件不需安装,解压缩附件中Modbus Slave.rar,双击执行mbslave.exe即可,如果是第一次运行,会弹出如下注册提示:
此时,可以双击执行keygen.exe,如下图:
程序中Name、Email、Reg Key顺序对应上面三个注册项,其中前两项可由用户填写,或直接按其默认即可,第三项Reg Key根据前两项自动生成。将此三项填入表1所示对话框中按“OK”按钮即可完成注册。然后直接进入主窗口,如图3所示。
2)、主窗口:
软件主窗口如图3所示:
此时处于“No connection”未连接状态,如果只测试“04输出保持寄存器”,则可直接点击跳到第3.步,直接进行连接即可。
3)、参数设置:
点击菜单“Setup”中“Slave Definition.. F2”进行参数设置,会弹出如图5对话框。
其中:A. Slave为Modbus从站地址,对应主画面中的ID值,默认为1。
B. Function 为寄存器功能码的选择,共四种,分别对应关系如下:
注:Modbus Slave 软件中03,04与MCGS的标注有所不同,使用时请注意。
C. Address 为寄存器起始地址。默认从1开始。
D. Length为寄存器连续个数。默认为10个。
设置完成点
,模拟窗口将显示定义的寄存器列表:
其中:ID,表示模拟的Modbus子设备的设备地址
红字部分,表示当前的错误状态
点击对应的寄存器,即可修改对应寄存器的值或者状态。
4)、显示设置:
数据显示方式设置:
默认情况下,寄存器数据的显示方式为Signed方式(16进制无符号二进制),数据范围为范围为-32768——32767。如果用户要以其他数值方式显示,可以通过菜单“Display”进行选择设置,如下图所示:
地址格式设置:
Modbus Slave默认使用PLC地址,“Display”菜单中“PLC Addresses(Base 1)”为默认选中状态,默认寄存器的起始地址为1开始,此点与MCGS的Modbus串口和TCP数据转发驱动是相同的。如果测试时需要设置起始地址为0开始,可选择“Protocol Addresses(Base 0)”。一般情况下使用默认PLC地址即可。
5)、连接:
点击菜单“Connection”中“Connect.. F3”进行连接,如下图
弹出连接对话框:
其中:Port1,表示使用的串口(COM1),根据实际情况选择不同的串口或者TCP/IP进行连接
Mode,表示Modbus协议模式,使用串口时有效;使用TCP/IP时自动为TCP模式
Flow Control,表示流控制,串口模式时有效;
Ignore Unit ID,表示TCP模式时忽略无效的组编号
用户可根据需要对串口参数进行设置,默认为:串口1,波特率9600,数据位8位,无校验位,1位停止位。确认设置后点击“OK”按钮即可。此时主窗口中红色的“No connection”表示未连接状态的信息消失,表明从站处于正常连接状态。
6)、寄存器值改变:
在主窗口寄存器地址上双击鼠标,弹出修改对话框,如下图:
在输入框中输入值确认即可。范围为-32768——32767。