首页 理论教育 现代控制工程设计-ModbusTCP通信

现代控制工程设计-ModbusTCP通信

时间:2023-11-19 理论教育 版权反馈
【摘要】:Modbus TCP是基于以太网的通信协议,控制器使用对等技术通信,故任何控制都能初始和其他控制器的通信。在消息位,Modbus协议仍提供了主从原则,尽管网络通信方法是“对等”。本实验使用Quantum控制器140CPU671-60,通过以太网模块进行ModbusTCP通信。当MVI56E-MNET作为Server时内部寄存器0~4999内的5000个数据分别对应ModbusTCP地址为40001~45000。在结构视图中选择通信下的网络,新建名为Modbus的网络。双击Modbus弹出网络配置。基本变量表中所添加的变量对应Modbus地址和MVI56E-MNET地址见表5-14。

现代控制工程设计-ModbusTCP通信

Modbus TCP是基于以太网通信协议,控制器使用对等技术通信,故任何控制都能初始和其他控制器的通信。这样在单独的通信过程中,控制器既可作为主设备也可作为从设备。提供的多个内部通道可允许同时发生的传输进程。

在消息位,Modbus协议仍提供了主从原则,尽管网络通信方法是“对等”。如果控制器发送一条消息,它只是作为主设备,并期望从从设备得到回应。同样,当控制器接收到一条消息,它将建立一个从设备回应格式并返回给发送的控制器。

ControlLogix系统通过MVI56E-MNET模块实现基于以太网的Modbus TCP通信。当连接在处理器和模块之间进行数据交换时,MVI56E-MNET模块充当一个普通的IO模块,通过梯形图实现模块和处理器的数据交换,模块即可插到本地也可插到远程IO机架上。MVI56E-MNET内部有5000个字的寄存器区供用户使用,作为主站时最多支持100条指令,支持功能码1、2、3、4、5、6、15、16。模块可同时作为Server和Client,作为Client时最大可连接100个Server,通信时使用502端口。

本实验使用Quantum控制器140CPU671-60,通过以太网模块进行ModbusTCP通信。下面分别对MVI56E-MNET和Quantum控制器进行配置并进行通信测试。

1.MVI56E-MNET模块的配置

首先用ProSoft Configuration Builder软件对MVI56E-MNET进行配置。打开PCB软件,添加模块,选择MVI56E-MENT,如图5-68所示。

978-7-111-42627-1-Chapter05-82.jpg

图5-68 添加MVI56E-MENT模块

模块添加好后左侧列表如图5-69所示。

点击列表Module进行配置,选择默认配置如图5-70所示。

Error/Status Pointer=4500代表错误状态存放的起始地址为4500。Read Register Start=1000,Read Register Count=600表示读取数据存放在内部寄存器1000~1599地址内。Write Register Start=0,Write Register Count=600代表写数据存放在内部寄存器0~599地址内。和MVI56-MCM模块配置相同。

点击列表MNet Client 0 Commands进行配置,配置好之后如图5-71所示。

978-7-111-42627-1-Chapter05-83.jpg

图5-69 MVI56E-MNET列表MNet Client 0 Commands

978-7-111-42627-1-Chapter05-84.jpg

图5-70 Modle配置

978-7-111-42627-1-Chapter05-85.jpg

图5-71 MNet Client 0 Commands配置

第一条表示从IP地址为192.168.1.2的Server地址40010~40039中连续读取30个数存放到内部寄存器1000~1029地址内。

第二条表示将内部寄存器0000~0007地址的8个数据写入到IP为192.168.1.2的Serv-er地址40000~40007内。

点击列表Edit-MNet Server进行配置,本实验为默认配置如图5-72所示。当MVI56E-MNET作为Server时内部寄存器0~4999内的5000个数据分别对应ModbusTCP地址为40001~45000。

978-7-111-42627-1-Chapter05-86.jpg

图5-72 Edit-MNet Server配置

点击列表Edit-WATTCP,对模块IP地址进行配置,如图5-73所示。

978-7-111-42627-1-Chapter05-87.jpg

图5-73 IP地址配置

右键点击列表MVI56E-MNET,选择Download from PC to Device,如图5-74所示。

978-7-111-42627-1-Chapter05-88.jpg

图5-74 模块下载配置

弹出框图如图5-75所示。Select Communication Path选择1756-ENBT。点击CIP Path Edit进行路径配置如图5-76所示。

点击Download下载后MVI56E-MNET模块会自动运行。

978-7-111-42627-1-Chapter05-89.jpg

图5-75 下载配置

978-7-111-42627-1-Chapter05-90.jpg

图5-76 路径配置

2.Quantum控制器组态

本实验使用Unity Pro L6.0软件对Quantum控制器进行编程,具体步骤如下。在结构视图中选择通信下的网络,新建名为Modbus的网络。双击Modbus弹出网络配置。在IP配置一栏中填写以太网模块的IP地址,子网掩码。将上面IO扫描选择为是,如图5-77所示。

978-7-111-42627-1-Chapter05-91.jpg

图5-77 Modbus网络配置

在IO扫描中配置目标IP地址如图5-78所示。(www.xing528.com)

978-7-111-42627-1-Chapter05-92.jpg

图5-78 IO扫描配置

下面进行本地Quantum子站的配置,配置好的视图如图5-79所示。

双击上图中的ETHERNET,弹出框图如图5-80所示。在选择网络处选择新建好的Modbus网络。

978-7-111-42627-1-Chapter05-93.jpg

图5-79 本地Quantum子站配置

978-7-111-42627-1-Chapter05-94.jpg

图5-80 ETHERNET配置

在结构视图中的基本变量表中添加变量如图5-81所示。

978-7-111-42627-1-Chapter05-95.jpg

图5-81 基本变量表

Quantum控制器内部地址中与Modbus网络中地址是一一对应的。基本变量表中所添加的变量对应Modbus地址和MVI56E-MNET地址见表5-14。

表5-14 试验地址表

978-7-111-42627-1-Chapter05-96.jpg

(续)

978-7-111-42627-1-Chapter05-97.jpg

将程序下载到Quantum控制器中即可。

3.MVI56-MNET模块与Quantum控制器通信建立

将MVI56E-MNET模块和Quantum控制器配置好后,最后组态ControlLogix控制器。打开RSLogix5000软件,新建工程,组态控制器和1756-MODULE。要选择others→1756‐Module。注意模块所处的槽号,通信的数据格式要选择INT类型。组态模块信息如图5-82所示。

978-7-111-42627-1-Chapter05-98.jpg

图5-82 配置模块信息

导入模块已提供的标准例程,打开梯形图导入例程(MainProgram双击进入梯形图,右键点击“rung”会弹出如图5-83所示画面,选择Import Rung)。

978-7-111-42627-1-Chapter05-99.jpg

图5-83 导入例程

选择要导入的名为MVI56(E)MNETAddOnRungv14.L5X的文件,如图5-84所示。修改导入时的相关配置,如图5-85所示。

978-7-111-42627-1-Chapter05-100.jpg

图5-84 导入的AOI文件

978-7-111-42627-1-Chapter05-101.jpg

图5-85 模块相关配置

上图中将Local:1:I,Local:1:O这两个变量修改为硬件所在槽位对应的变量,点击“确定”后,可以发现整个工程里面多了一些配置,包括:ControllerTags,Data Type‐User-Define,Add‐On Instructions等;导入后在例程中会出现MVI56E-MNET模块标准的运行程序如图5-86所示。下载程序到ControlLogix控制器中。

978-7-111-42627-1-Chapter05-102.jpg

图5-86 MVI56E-MNETAddOn指令梯形图

将编写好的程序下载到ControlLogix控制器中,打到运行状态。同时在Unity pro中打开动态变量表,修改输出数据如图5-87所示。在RSLogix5000的Controller Tag中就能看到MNET.DATA.ReadData标签列表中的数值与Unity pro中OUT01~OUT03的数值同时变化。

978-7-111-42627-1-Chapter05-103.jpg

图5-87 Unity Pro通信结果

同理,在ControlLogix控制器的MNET.DATA.WriteData标签列表中写入数值如图5-88所示。在Quantum控制器的Unity pro的变量列表中IN01~IN03的数值也同时变化。

978-7-111-42627-1-Chapter05-104.jpg

图5-88 Logix5000通信结果

至此,MVI56-MNET与Quantum控制器通信结束。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈