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  读/写寄存器
3,两台微机之间串口测试
测试环境:XP32系统,一台机器运行Poll,一台运行Slave,中间用串口线连接。线序:2-3,3-2,5-5。
操作:
  • 两边分别用F3设定连接参数:串口,串口1,9600band,8数据位,Even校验,1停止位,RTU模式,其它缺省。
  • 主机端未正确连接,会给出提示
  • 通讯开始,主机端显示:TX=35,Err=0,ID=1,F=03,SR=1000ms。意思是,发送35次命令,错误次数,从机ID,功能号,轮询间隔。
  • 如果通讯出错,会在窗口第二行显示错误信息
  • 使用Display菜单的"Communication Traffic"命令,可以显示出当前发送命令和接受的数据。
  • 主机改变通讯功能,快捷键F8,令功能为4,读输入寄存器,然后在从机的10个寄存器上点击鼠标,输入每个寄存器的新值,则,在主机上会读取到这个新的寄存器值。
4,微机与AVR单片机之间串口测试:读输入寄存器
测试环境:微机运行Poll,AVR MEGA88运行移植后的代码,串口连线同上。
AVR代码:串口用9600bps,even校验,1停止位,RTU模式,SlaveID=1,其它未改变。
Poll设置:
  • F3呼出连接对话框,设定9600bps同单片机波特率。
  • F8呼出读写对话框,设定SlaveID=1;功能=4,地址=999,数量=4,扫描频率=1000ms,其它未变。
  • 界面显示出AVR寄存器内容,通讯无错误提示。
  • 换用9600/11400/19200/38400/115200bps波特率,通讯正常。因为Poll没有57600/230400等设置,这些波特率未测。AVR在该时钟下最高可达230400bps,无差错。
数据分析:

TX: 01 04 03 E7 00 04 41 BA             01-从设备地址,04-功能号,0x03E7=999,0x0004-读出寄存器个数,CRC校验
RX: 01 04 06 00 00 00 00 00 00 60 93    01-从设备地址,04-功能号,06-返回字节数,CRC校验
出现的问题:
  • 用不同AVR数据测试时,发现AVR代码有下列问题:设置的地址要比实际demo.c中设定的地址少一个。比如,demo.c中起始地址1000,但测试时Poll只能设定999,否则测试出错。
  • 该问题的根源在mbfuncinput.c中,解析出变量地址usRegAddress之后有个++动作,人为将其增加1。其它函数如mbfuncholding.c也是如此。
  • 参看Modbus协议的定义:从零开始寻址寄存器,比如寻址输入寄存器1-16,则输入为0-15。真是奇怪啊!
  • 自此可以看出,DEMO.C中定义的输入寄存器起始地址最小为1,此时才能满足Master要求的输入寄存器=0。
协议里规定,如果通讯出错,则返回数据格式为:
01 84 xx CRC2字节
这里xx表示错误码:xx=01 02 03 04,其中02-无效的数据地址

modbus调试工具相关推荐

  1. 直连获取串口服务器ip,能够进行串口modbusRTU和以太网modbus-TCP协议转换的串口服务器,并提供好用的MODBUS调试工具-专业自动化论坛-中国工控网论坛...

    ---------------------------------------------------------------------------------------------------- ...

  2. modbus调试工具 linux,linux libmodbus的移植

    1.前言 Modbus是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成.其系统结构既包括硬件.亦包括软件.它可应用于各种数据采集和过程监控. 2.移植步骤 第 ...

  3. modbus调试工具 linux,Modbus TCP的模拟器的Windows/Linux的

    而不是一个GUI它支持简单的基于JSON的配置,在这里你设置的奴隶这样的: "slaves": { "1": { "isOnline": t ...

  4. MODBUS调试工具(modscan32)使用说明

    @TOC 一.介绍   Modbus采用主从式通信,日常使用较多的是Modbus RTU和Modbus TCP/IP两种协议.常用调试软件为第三方工具ModScan32,比较简单易懂的一款软件,下面介 ...

  5. 使用python制作MODBUS RTU主站调试工具(一)—— GUI编程

    0前言 我实际上并没有用过python进行GUI编程,按照我的C#窗体编程习惯,应该先布置GUI,再对各控件的具体功能进行编程,所以本文就先介绍GUI的python实现. OS:win10 x64 1 ...

  6. MODBUS主站调试工具和MODBUS从站调试工具 支持RTU、TCP、UDP三种模式

    MODBUS调试工具 C#源码 包含MODBUS主站调试工具和MODBUS从站调试工具 支持RTU.TCP.UDP三种模式 开发环境VS 2012/2015/2017,.NET Framework 4 ...

  7. Modbus通信协议+Modbus串口调试工具+Java版协议解析源码

    网络与串口二合一调试助手TCPCOM: https://download.csdn.net/download/liuyuan_java/87454762 Modbus调试工具,模拟串口调试工具 htt ...

  8. Modbus 协议详解

    Modbus 协议详解 通信协议是指双方实体完成通信或服务所必须遵循的规则和约定,例如我们为实现人与人之间的交流需要约定统一的语言,统一的文字,规定语速等等. 而对于设备之间,协议定义了数据单元使用的 ...

  9. 电力-RTU终端ModBus规约(C程序)

    目录: 一.Modbus slave和Modbus poll使用说明 二.Modbus协议C程序样例 ------------------------------------------------- ...

  10. 基于Modbus协议的C#串口工具开发

    (Tips:本人纯萌新小白一枚,文章只为记录自己的编程历史,温故而知新,能帮助到大家倍感荣幸,有错误的地方劳烦指点!) 不多废话直接进入主题! 本文旨在基于Modbus协议.C#开发语言进行串口工具的 ...

最新文章

  1. 从oracle中读取图片,Pb从oracle中读取和保存图片
  2. my friends
  3. CAMB输出保留小数位数问题
  4. Spring MVC使用拦截器实现权限控制
  5. Linux内存申请机制
  6. 算法与数据结构 -- 二叉树(六)
  7. Android通过使用系统广播监听网络状态的改变
  8. Bioconductor软件安装与升级
  9. magento tab(easy tables)标签应用
  10. 算法高级(12)-分布式系统常见负载均衡算法
  11. linux5.5 分辨率,Linux Kernel 5.5 正式发布
  12. 蜜雪冰城“骗局”:年赚8亿,竟不是靠卖奶茶?!
  13. Java7 一些新特性及脚本语言支持API--笔记
  14. linux服务器端口的状态,Linux查看端口状态及关闭端口方法
  15. 你有没有思考过,特斯拉为什么先进?
  16. 电脑在使用b站的时候插入耳机,耳机没有声音,只能外放,其他软件可以正常使用。
  17. 【ros学习】11.ros建模时遇到No transform from [back_caster_link] to [base_link]不显示轮子
  18. 网络应用自建利器-Google AppEngine
  19. Linux CentOs7 ping网址 未知的名称或服务
  20. 一文了解各大图数据库查询语言(Gremlin vs Cypher vs nGQL)| 操作入门篇

热门文章

  1. android仿漫画源码、抽奖转盘、Google相册、动画源码等
  2. 计算机组成与系统结构课设实验报告
  3. AlphaGo Zero,造神还是开启潘多拉魔盒?【附论文下载】
  4. html input提交按钮无法使用,无法找到并单击提交按钮使用mshtml.HTMLInputElement
  5. 软件开发基本流程概述
  6. simotion基本功能手册_深入浅出西门子运动控制器:SIMOTION实用手册
  7. webview的使用套餐,安卓面试题2021pdf
  8. Microsoft Office 2016 简体中文 Vol 版镜像下载
  9. 数字电子技术基础第5版笔记和课后习题答案 阎石
  10. 《MySQL从入门到精通》读书笔记