1,简介
网站地址:http://www.modbustools.com/
该网站提供了几个软件工具,可以运行于windows 2000/XP/Vista/7环境下,用来测试和仿真Modebus设备。
- Modbus Poll :Modbus主机仿真器,用于测试和调试Modbus从设备。该软件支持Modbus RTU、ASCII、TCP/IP。
- Modbus Slave: Modbus从设备仿真器,可以仿真32个从设备/地址域。每个接口都提供了对EXCEL报表的OLE自动化支持。
- WSMBT :Modbus主设备的.NET控件,支持C#,VB,managed C++语言,支持Modbus TCP/IP。
- WSMBS:Modbus主设备的.NET控件,支持C#,VB,managed C++语言,支持Modbus RTU/ASCII。
- MBAXP:一个易用的ActiveX控件,支持Excel,Visual Basic,Visual C++,Delphi等。支持Modbus RTU/ASCII和Modbus TCP/IP
2,功能
Modbus Poll是一个主机仿真器,用来帮助开发人员测试Modbus从设备,或者其它MOdbus协议的测试和仿真。它支持多文档接口,即,可以同时监视多个从设备/数据域。每个窗口简单地设定从设备ID,功能,地址,大小和轮询间隔。你可以从任意一个窗口读写寄存器和线圈。如果你想改变一个单独的寄存器,简单地双击这个值即可。或者你可以改变多个寄存器/线圈值。提供数据的多种格式方式,比如浮点、双精度、长整型(可以字节序列交换)。
状态条显示错误信息。
如果你是一个从设备开发者,你可以通过"test center" 菜单,组织并发送你自己的测试字符串,并以16进制形式检查从设备返回的结果。
为VB,EXCEL等提供了OLE自动化接口。可以用OLE接口解析和显示Modbus数据,然后送达你指定的设备,即,在EXCEL中编辑数据,然后发送到你的从设备!示例参看安装后的Excel example.xls。
支持下列协议:
- Modbus RTU
- Modbus ASCII
- Modbus TCP/IP
- Modbus RTU Over TCP/IP
- Modbus ASCII Over TCP/IP
- Modbus UDP/IP
- Modbus RTU Over UDP/IP
- Modbus ASCII Over UDP/IP
MODBUS POLL功能:
- OLE自动化可以简单地与Visual Basic接口,使用起来类似于ActiveX控件。参见 VBExample.vbp
- 读/写多达125个寄存器
- 读/写多达2000个输入/线圈
- Test Center菜单 (组织你自己的测试字串)
- 打印和打印预览
- 监视串行数据流量serial data traffic
- Data logging to a text file
- Data logging direct to Excel
- 上下文敏感的HLP文件
- 10 Display formats such as float, double etc.
- Adjustable Address Base (0 or 1).
- 字体和颜色选项
- 广播功能(从设备ID=0)
- Easy control of RS-485 converters with RTS toggle.
支持MODBUS功能:
- 01: Read coil status 读线圈状态
- 02: Read input status 读输入状态
- 03: Read holding register读保持寄存器
- 04: Read input registers 读输入寄存器
- 05: Force single coil 强制单线圈
- 06: Preset single register 预置单寄存器
- 15: Force multiple coils 强制多线圈
- 16: Preset multiple registers 预置多寄存器
- 17: Report slave ID 报告从设备ID
- 22: Mask write register 屏蔽写寄存器
- 23: Read/Write registers 读/写寄存器
测试硬件连接:
现在一般的电脑硬件主机都不带串口,所以笔者选用了两个Dtech的USB转485价格90元左:购买链接
两个USB转485的连接方式是:
T/R+ <------------>T/R+
T/R- <------------>T/R-
FT232,支持XP WIN7等,自己在下载页面找。
http://www.ftdichip.com/Drivers/VCP.htm
连接并安装驱动完成后先用串口调试工具测试一下硬件是否连接正确:
如COM3发AA,COM8发55,如图所示:两串口可收可发说明硬件连接正确:
Modbus Poll 和Modbus Slave 配置,两个软件配置的通信参数是一样的。
Modbus Poll 和Modbus Slave 配置收发测试,目前Slave 只支持功能码01、02、03、04
在从机改变数值时,主机的数值会跟着变化。说明通信成功!!!