FX5U与远程IO通信技术研究

2022-07-06 08:15周彩云
现代信息科技 2022年3期

摘  要:在互联网技术日益发展的背景下,工业产线的各种设备联网成为可能,早期工业设备之间常应用MODBUS RTU模式来实现数据采集及控制。近年工业控制器接口都往以太网及无线接口方向发展,工业控制器间的以太网通信得到广泛应用。文章介绍了FX5与TBEN-S1-8DXP远程IO模块通过以太网方式实现通信的过程,重点介绍了FX5与远程IO模块的以太网络模式通信的网络配置过程和通信程序设计的基本思路及方法。

关键词:FX5U;远程通信;MODBUS RTU

中图分类号:TP393        文献标识码:A文章编号:2096-4706(2022)03-0076-05

Research on FX5U and Remote IO Communication Technology

ZHOU Caiyun

(Huizhou Engineering Vocational College, Huizhou  516000, China)

Abstract: Under the background of the increasing development of Internet technology, the networking of various equipment in industrial production line becomes possible. MODBUS RTU mode is often used in early industrial equipment to realize data acquisition and control. In recent years, the industrial controller interfaces all develop towards the direction of Ethernet and wireless interfaces. Ethernet communication among industrial controllers has been widely used. This paper introduces the process of realizing communication between FX5 and TBEN-S1-8DXP remote IO module through Ethernet, and focuses on introducing the network configuration process of Ethernet mode communication between FX5 and remote IO module and the basic thinking and method of communication program design.

Keywords: FX5U; telecommunication; MODBUS RTU

0  引  言

近年来随着通信技术、网络技术和半导体技术的飞速发展,工业自动化控制系统的设计步入了新的时代。其中,实现Internet接入是当前工控制设备应用的热点。早期可编程控制与远程设备之间的通信最常用的是远程设备与串口服务器相连,再由串口服务器通过网络与PLC相连实现远距离的数据交换。此方法的缺点是程序设计比较困难,只有相当专业的技术人员才能完成。随着以太网接口的远程IO设备的出现,人们只要根据实际应用配置网络参数,简单的程序设计,就能实现通过Internet与远程IO设备的数据交换。本文以TBEN-S1-8DXP德国TURCK总线模块插件(远程IO)为例,介绍三菱FX5U与TBEN-S1-8DXP的以太网接口实现通信的基本方法。

1  TBEN-S1-8DXP介绍及配置方法

TBEN-S1-8DXP为紧凑型的以太网多协议IO模块,总共8个通用数字通道,可配置为PNP输入或0.5 A输出。能支持PROFINET设备、EtherNet/IP设备或Modbus TCP主站/从站(本文以TBEN-S1-8DXP配置为主站、输入与PLC的Modbus TCP通信为例介绍)。

1.1  远程IO(TBEN-S1-8DXP)端子及功能

如图1所示,P1、P2为以太网插头,P1为进线端,P2为出线端,当有两台远程I/O模块时,从P2连接至下一台的P1端,方便多台I/O设备的连接。C0~C7可配置为PNP输入或PNP 0.5 A输出,X1电源进线,X2电源出线,当有两台远程IO模块时,从X2连接至下一台的X1端。

1.2  远程IO参数的配置

远程IO模块主要参数配有IP配置,本案例中将远程IO的IP设置为192.168.0.5。

设置方法:打开Turck Service Tool s配置工具软件,如图2所示。

具体步骤是:

(1)打开Turck Service Tool软件并将远程IO通过网线连接至电脑,在打开软件中点击Suchen...(F5)找到连接的远程IO模块;

(2)选中要设置IP的远程IO模块;

(3)双击Andern(F2)弹出网络设置对话框将IP地址设置成:192.168.0.5,Netzmaske设置成255.255.255.0,设置完点击Im Gerat完成IP地址的设置,最后点击上图中的Action(F4)下的Reboot(双击),重启设备,IP地址設置生效。

2  FX5U与远程IO模块TBEN-S1-8DXP的MODBUS TCP通信

MODBUS由MODICON公司于1979年开发,是一种工业现场总线协议标准。1996年施耐德公司推出基于以太网TCP/IP的MODBUS协议:MODBUS TCP。MODBUS协议是一项应用层报文传输协议,包括ASCII、RTU、TCP三种报文类型。标准的MODBUS协议物理层接口有RS232、RS422、RS485和以太网接口,采用MASTER/SLAVE方式通信。如表1所示。

FX5U与远程IO模块TBEN-S1-8DXP的MODBUS TCP通信的参数设置步骤与方法。

FX5 MODBUS TCP参数设置的具体内容有:

(1)在WORKS3软件的导航窗口下选择参数,在参数下的FX5UCPU下选择模块参数,在模块参数下的以太网端口的IP地址设置为:192.168.0.2(IP地址必须与远程IO模块的IP地址为同一网段),子网掩码设置为255.255.255.0设置过程如图3所示。

在对象设备连接配置设置后的框双击弹出窗口去完成远程IO设备的配置,如图4所示。

(2)将模块一览的以太网设备(通用)/Active连接设备拖至左下角PLC的下方完成组态,如果有多台设备用同样的方法完成基本的配置,远程设备的地址根据组态是时的顺序由左至右显示No.1,No.2……

(3)将可编程控制器的端口号改为4999,传感器·设备的IP地址设备为192.168.0.5,端口号改为502,PLC与远程设备的IP必须是同一网段,即IP地址的前三部分必须一致,否则无法通信。

(4)在WORKS3点击菜单栏的工具下拉选择通信协议支持功能项,进入后出现协议支持功能对话框,直接点击确认进入通信协议支持的设置。如图5所示。

(5)在通信协议支持功能对话框中点击新建通信协议,点击协议添加,在弹出协议添加对话框,在类型选择中选择通信协议库,然后在型号选择项中选择MODBUS/TCP,在协议名下选择03功能码(读保持寄存器),最后點击确定完成通信协议的设置。协议号最多为8个,本项目中PLC只连接了一个远程IO设备,所以协议号为1,同时远程IO模块只作为输入模块,因此结合MODBUS标准功能表,将协议名设为03,即保持寄存器的读取,若将远程IO作为输入模块,则应该将协议名设为04。如图6所示。

(6)右键点击通信类型列表中的发送&接收,点击软件元件批量设置命令,在弹出软元件批量设置对话框中设置要进行数据采集的起始软件元件号,本案例中设为D500,设置完成后点击确认。如图7所示。

(7)点击发送数据包查看数据地址,传输ID:D500、模块ID:D501、MODBUS地址D502(远程I/O模块输入信号的MODBUS地址为0),读取的点数:D503;

点击接收数据包(1)—点击配置数据—弹出配置元素设置对话框接收数据的存储区域:D507。如图8所示。

(8)设置完成后点击在线/模块定入写入到PLC,点击保存,保存的文件扩展名为tpx。

3  FX5的主站实施MODBUS/TCP通信的程序流程

FX5的主站实施MODBUS/TCP通信的程序流程如图9所示。

程序的设计主要应用FX5 MODBUS TCP通信主要使用以下三个指令:建立连接SP.SOCOPEN、通信协议支持功能SP.ECPRTCL和切断连接SP.SOCCLOS。建立连接指令的格式:ENO:=SP_SOCOPEN(EN,U0,s1,s2,d);可根据指令执行后d值来判断是否建立网络连接,只有建立了网络连接才能去对相应的设备执行通信协议。如表2所示。

执行协议指令格式ENO:=SP_ECPRTCL(EN,U0,s1,s2,s3,d);本案例中连接设备的编号为1,连续执行的协议数,因只连接一台远程IO,协议数为1。如表3所示。

切断连接指令格式为ENO:=SP_SOCCLOSE(EN,U0,s1,s2,d)。如表4所示。

FX5与远程IO模块TBEN-S1-8DXP通信例程如图10和图11所示。

本例程中X0为启动、X1为关闭连接,例程主SD10680.0是内置以太网开放完成信号,其中b0的值表示连接第一台设备的状态,b1用来表示第二台设备,本案例中只连接一台远程IO,所以只用到b0位。SD10681是内置以太网开放请求信号,其中b0用反映连接第一台设备的请求信号。当建立连接时M100维持一个扫描周期的导通时间,M100的导通使M102置位,完成对协议执行前的初始化,M103在执行协议后导通一个扫描周期,在第90行将D507的数据送给K4M500,M500至M507为远程IO作为输入模块8个输入的状态。

以上介绍FX5与远程IO模块TBEN-S1-8DXP以太网通信流程,希望本文能帮助读者快速理解和掌握三菱FX5U与远程IO模块的通信的配置方法及程序设计。

4  结  论

采用以太网的方式实现FX5U与远程IO模块间的通信,网络配置方便,通信程序编写简单,数据传输速度快,MODBUS/TCP的通信模块将逐渐代替MODBUS/RTU通信模式。

参考文献:

[1] 刘建春.PLC原理及应用(三菱FX5U) [M].北京:电子工业出版社,2021.

[2] 杨更更.Modbus软件开发实战指南:第2版 [M].北京:清华大学出版社,2021.

[3] 钟肇新,范建东.可编程控制器原理及应用:第3版 [M].广州:华南理工大学出版社,2004.

[4] 姚晓宁.三菱FX5U PLC编程及应用 [M].北京:机械工业出版社,2021.

[5] 粱耀光,余文烋.工业控制新技术教程 [M].广州:华南理工大学出版社,2014.

作者简介:周彩云(1969.10—),男,汉族,广东兴宁人,电子高级讲师,本科,研究方向:工业自动控制。