zoukankan      html  css  js  c++  java
  • Modbus仿真器 Modbus Poll 和Modbus Slave详细图文教程

    Modbus Poll 是Witte Software公司开发的的Modbus主机仿真器,用于测试和调试Modbus从设备。软件支持ModbusRTU、ASCII、TCP/IP协议。支持多设备监控,可以同时监视多个从设备/数据域。支持图形化监控报文信息,循环报文发送,寄存器数值独立增长。可以图形化设定从设备ID,功能,地址,大小和轮询间隔。提供数据的多种格式方式,比如浮点、双精度、长整型(可以字节序列交换) ,并支持Excel导出。

    软件下载

    打开软件之后主界面如下,出现红色No connection说明此时没有连接任何从设备。上面一行字代表当前通讯状态统计,Tx 代表发送帧数,Err代表错误帧,ID表示从站的ID号,F代表功能码,SR代表轮询周期,右下角显示IP地址和端口号。

    点击Connection->Connect… 弹出注册码输入框,可以输入注册码,没有的话点击Regster later可以试用30天

    输入完注册码后,弹出Connection配置

     支持5种连接形式

    1 串行: 通过串行线路。RS232或RS485。可以使用USB串行转换器。

    2 TCP/IP:如果要与TCP/IP网络通信,选择TCP/IP。在这种情况下,从站ID与TCP/IP中使用的单元ID相同。 端口号默认为502。如果连接失败,则尝试是否可以在命令提示符下ping设备。如果ping命令失败,轮询也将失败。

    3 UDP/IP: 如果要与UDP/IP网络通信,请选择UDP/IP。这与TCP/IP相同,但改用连接较少的UDP协议。

    通过TCP/IP的RTU/ASCII: 这是通过TCP/IP网络而不是串行线路发送的RTU或ASCII消息。 通过UDP/IP的RTU/ASCII: 这是通过UDP/IP网络而不是串行线路发送的RTU或ASCII消息。 连接类型3-5不是指定的标准,是为了一些特殊情况下的应用。

    连接成功connection时界面如下(需要使用从站仿真器或者真实设备)

    串口连接配置:

    选择串口后可以配置串口信息

    串口配置一般默认就好,除非有特殊的要求,Mode处可以选择RTU和 ASCII类型。右侧可以设置响应超时时间,和轮训间隔。对于轮训间隔,一般设置为20ms,如果将此值设置为小于20毫秒,则不能保证响应和新请求之间的3.5个字符的时间间隔。这是因为Windows进程调度为每10到20毫秒切换一次任务。 如果在串行RS485网络中轮询多个从站,则不应将该值设置为低于20ms。这是为了确保3.5个字符的时间间隔。 在TCP/IP网络中,小于20毫秒是可以的。

    点击高级Advanced...可以看到高级设置,这里一般不用去管这里稍微介绍一下

    RTS切换 :RTS切换指定如果字节可用于传输,则RTS线将为高。发送所有缓冲的字节后,RTS线将变为低电平。 如果你的232/485转换器带自动方向切换功能,则可以使用它来切换方向。 尽量,应避免使用RTS控制的RS232/RS485转换器。在非实时操作系统(例如Windows和Linux)下,很难确定关闭变送器的确切时间。如果关闭它,字符可能仍位于FIFO或UART的发送寄存器中,尚未发送出去,这会导致数据丢失,但如果关闭时间太晚,则从站的消息将被破坏,主站将无法识别该消息。

    DSR :DSR指定是否监视DSR(数据集就绪)信号以进行输出流控制。如果此成员为TRUE并且DSR关闭,则输出将被挂起,直到再次发送DSR。

    CTS :CTS指定是否监视CTS(清除发送)信号以进行输出流控制。如果启用此复选框且CTS已关闭,则输出将暂停,直到再次发送CTS。

    DTR:DTR指定在打开端口时是启用还是禁用DTR。

    删除回显 如果你用的设备或RS232/RS485转换器会回显刚刚发送的字符,则启用该功能自动删除回显。

    TCP/IP连接协议配置

     和串口配置类似,只是多了服务器(从机)IP配置,端口号,网络连接超时设置,还可以切换IPv4和IPv6网络协议。

    参数设置

    点击Setup->Read/Write Definiton...可以对监视窗口监视的内容进行设置

     

     

    点击之后可以设置从站地址,选择功能码,如03是读保持寄存器值,Address处填写寄存器地址,这里要注意右侧有地址寻址方法 40011->10,Quantity填写要读的寄存器数目

    View 部分用于设置显示的行数,Cell中的地址显示等信息。Modbus的功能码定义如下

     常见的功能码和地址对应表

     设置假名,你可以直接双击alias列对应的单元格填写一些方便记忆的名字

     选择Setup->Excel Log ...可以设置Excel log,以方便数据处理

     选择Setup->Log … 可以设置Log的存储细节,存储速率,分割符,错误记录形式等。

    测试功能

    Modbus poll 提供方便的测试辅助功能在Function菜单下,可以直接选择相应的功能发送命令给从机

     Modbus Poll还提供了文本发送调试工能,点击Functions->Test Center...进入测试中心,编辑完了命令之后可以直接点击Send发送。

    显示设置。

    默认情况下Modbus Poll以Signed形式显示数据,这可以根据需要需要 点击Display菜单可以根据需要修改每个单元格的显示格式

     

    选择Communication...可以看到通信帧信息

     Modbus poll还提供了一个实时绘图页面来帮助用户观察数据接收情况,一般情况下不需要,调试时直接观察通信帧一般就够了。

    Modbus Slave 介绍

    Mobus Slave能够模拟从站(服务器),用来辅助主站开发调试。打开Modbus Slave可以看到主界面

     

    图中ID为站号,F为响应主机的功能码

    在和主机进行连接之前先对连接进行设置点击Connection->Connection Setup,这里我选择了TCP/IP协议,串口协议类似

    对从机进行配置点击 Slave Definition...,设置好了点击OK

    然后对仿真界面进行一些设置,可以在Alias列填写容易识别的名字,双击右侧单元格会弹出寄存器编辑窗口,可以填写你需要的值,勾选Auto increment可以另每个单元自动增长

     配置好了Slave仿真器后,可以点击connection,然后利用主机连接,开始仿真调试

     

     如果需要串口协议调试可以使用虚拟串口工具

    软件下载地址

    参考文章:VSPD虚拟串口工具——从此告别硬件串口调试

  • 相关阅读:
    phpcms调用指定文章内容模型的ID
    phpcms V9的各种功能总结
    如何使用ajax与php实现简单的流程管理
    键盘按键和键盘对应代码表
    ajax实现省、市、区、三级联动(例题)
    用ajax做登录与删除
    var_dump、echo、print_r 的区别
    字符串删除重复字符
    树的非递归遍历
    字符串操作_(不使用库函数)
  • 原文地址:https://www.cnblogs.com/scada/p/13937117.html
Copyright © 2011-2022 走看看