前文我们介绍了Modbus是主/从通信协议。今天给大家介绍ModScan就是用来模拟Modbus通讯主设备。本次测试使用的是艾默生旗下的BB RTU,由于粉丝人数限制,不能通过长视频方式跟大家分享,先以文章的方式,希望以后有机会跟大家补上视频(需要你们关注支持哦)。
一、首先要保证外部的连接线正确连接好,确认数据线连接正常。下面打开软件界面,如下图:
第一步、点击菜单栏Connection-->connect,出现Connection Details对话框;

这里设置的是通讯接口:
主要有两种类型:
1. 如果使用以太网为通讯介质,那么直需要设置(见下图):
IP Address(从设备IP地址):192.168.1.10(这里是BB控制器IP地址)
Service(设备端口号):502(Modbus规约规定默认为502,不要修改)
其他为使用串口是设置,以太网设置时不需要,为灰色不可修改。
2. 如果使用串口为通讯介质,那么直需要设置(见下图):
重点注意使用串口时Connect这里定义的是笔记本电脑与从设备连接使用的串口。具体是COM几口可以在我的电脑-->属性-->设备管理器中查找,没有串口的电脑(现在电脑一般都没有串口,可以购买USB转232(485)来解决,工程师必备工具之一):
Baud(波特率):9600(默认为9600,需要根据从设备串口设置,两边保持一致)
Word(数据位):8(默认为8,需要根据从设备串口设置,两边保持一致)
Parit(奇偶校验):NONE(默认为没有奇偶校验,需要根据从设备串口设置,两边保持一致)
Stop(停止位):1(默认为1,需要根据从设备串口设置,两边保持一致)
二、完成设置后均点击Rotocol Seletion进入下一个设置界面。
这个界面主要就是设置前面文章给大家介绍的ASCII 模式、RTU(二进制)模式,其中:
STANDARD(标准模式):比较常用。
DANIEL/ENRON/OMNI(丹尼尔等模式):不是很常用,如艾默生旗下的丹尼尔流量计算机等使用此模式。
ASCII/RTU:(默认为RTU,需要根据从设备串口设置,两边保持一致)
Slave Response Timeout(响应超时):一般设置500-2000毫秒。
Delay Between Polls(时间间隔):一般设置500-2000毫秒。
完成全部设置点击OK,至此所有物理层设置完成。进入数据层以及应用层设置。
三、设置Device ID(设备地址)等参数;
Device ID(设备地址):一般为1。使用Modbus总线结构时,每个从设备的设备地址必须不同,并使用终端电阻标记终端。
Address(起始地址):根据需要读取的从站设备的地址说明书确定。
Length(字节长度):根据需要读取的从站设备的地址说明书确定。重点注意:主站的请求长度不能超过。做测试时可以从小到大的方式进行。
MODBUS Point Type(Modbus寄存器类型):看前篇文章介绍。根据需要读取的从站设备的地址说明书确定。
Number of Polls/Valid Slave Responses(数据包请求数量/有效从响应数量)
以下两张图分别是在通讯成功和通讯失败的情况下的截图。大家可以看看区别。
总结,本文简单的跟大家介绍了Modscan的用法。此工具是PLC工程师必备软件工具之一,下次给大家介绍Modbus通信从设备的仿真软件。欢迎大家关注,让我有长视频权限,可以和大家分享视频。