1.Modbus协议简介
Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其他设备之间可以通信。它已经成为一种通用工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。
此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了控制器请求访问其他设备的过程,如回应来自其他设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。
当在一个Modbus网络上通信时,此协议决定了每个控制器需要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用Modbus协议发出。在其他网络上,包含了Modbus协议的消息转换,在此网络上使用的帧或包结构。这种转换也扩展了根据具体的网络解决地址、路由路径及错误校验的方法。
2.Modbus通信协议库
STEP7-Micro/WIN SMART指令库包括专门为Modbus通信设计的预先定义的子程序和中断服务程序,使得与Modbus设备的通信变得更简单。通过Modbus协议指令,可以将S7-200 SMART组态为Modbus主站或从站设备。可以在STEP7-Micro/WIN SMART指令树的库文件夹中找到这些指令。当在程序中输入一个Modbus指令时,则程序自动将一个或多个相关的子程序添加到项目中。指令库在安装程序时自动安装,这点不同于S7-200的软件,S7-200的软件需要另外购置指令库并单独安装。
3.Modbus的地址
Modbus地址通常是包含数据类型和偏移量的5个字符值。第一个字符确定数据类型,后面四个字符选择数据类型内的正确数值。
(1)主站寻址
Modbus主站指令可将地址映射到正确功能,然后发送至从站设备。Modbus主站指令支持下列Modbus地址:
00001~09999是离散输出(线圈)。
10001~19999是离散输入(触点)。
30001~39999是输入寄存器(通常是模拟量输入)。(www.daowen.com)
40001~49999是保持寄存器。
所有Modbus地址都是基于1,即从地址1开始第一个数据值。有效地址范围取决于从站设备。不同的从站设备将支持不同的数据类型和地址范围。
(2)从站寻址
Modbus主站设备将地址映射到正确功能。Modbus从站指令支持以下地址:
00001~00256是映射到Q0.0~Q31.7的离散量输出。
10001~10256是映射到I0.0~I31.7的离散量输入。
30001~30056是映射到AIW0~AIW110的模拟量输入寄存器。
40001~49999和40000~465535是映射到V存储器的保持寄存器。
所有Modbus地址都是从1开始编号的。表6-11所示为Modbus地址与S7-200 SMART地址的对应关系。
Modbus从站协议允许对Modbus主站可访问的输入、输出、模拟输入和保持寄存器(V区)的数量进行限定。例如,若HoldStart是VB0,那么Modbus地址40001对应S7-200 SMART地址的VB0。
表6-11 Modbus地址与S7-200 SMART地址的对应关系
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。