3 Modbus RTU协议测试
包含Modbus RTU从站指令库的项目编译、下载到CPU中后,在编程计算机(PG/PC)上运行一些Modbus测试软件可以检验S7-200的Modbus RTU通讯是否正常,这对查找故障点很有用。测试软件通过计算机串口(RS-232)和PC/PPI电缆连接CPU。
(以ModScan32测试软件为例作以检测说明)
3.1 测试软件
测试软件ModScan32如图3所示。

图3 Modbus RTU测试软件:ModScan32
图3中,ModScan32测试软件的画面中相关参数意义如下:
Address:ModBus中存储区的起始地址;
Device Id:PLC ModBus的端口地址;
Length:参与通讯的V存储区字的长度。
3.2 参数设置
对ModScan32测试软件的通讯参数进行相关设置,要与S7-200的Modbus RTU指令库MBUS_INIT中所设定的参数相统一,这样即可进行通讯检测。ModScan32通讯参数设置如图4所示。

图4 ModScan32通讯参数设置
4 MODBUS RTU地址与S7-200的地址对应关系
MODBUS地址总是以00001、30004之类的形式出现。S7-200内部的数据存储区与MODBUS的0、1、3、4共4类地址的对应关系如附表所示:
附表 MODBUS地址对应表

说明:其中T为S7-200中的缓冲区起始地址,即HoldStart。
如果已知S7-200中的V存储区地址,推算MODBUS地址的公式如下:
MODBUS地址=40000+(T/2+1)
其中T为偶数。
5 结束语
Modbus RTU作为一种工业控制器的网络通讯协议,其在如今众多的控制器之间进行联网、监控、相互通讯等方面发挥着重大作用,本文以典型的S7-200控制系统为例,详述了如何应用Modbus RTU通讯协议以及检测方法,使得控制器之间的通讯变得更加简易和清晰。