APP下载

基于Socket方式实现不同品牌PLC之间的通信

2020-03-30杨至诚

化工自动化及仪表 2020年1期
关键词:组态指令客户端

陈 峰 孟 宇 杨至诚

(1.北京金自天正智能控制股份有限公司;2.冶金自动化研究设计院)

随着科学技术的发展,PLC的运算速度、处理能力和通信功能得到极大提升。PLC的品牌众多,同是基于TCP/IP协议的通信方式,不同品牌PLC之间虽然IP地址在一个网段,但也无法实现互相通信,必须借助第三方硬件或软件才可以实现数据交换。因此,研究基于Socket方式实现不同品牌PLC之间的通信,有着非常重要的实际意义。

1 Socket协议概述

Socket又名套接字,是支持TCP协议或UDP协议的网络通信操作的基本单元,TCP或UDP协议应用层和传输层协议通过Socket接口区分不同程序进程或网络通信,以实现网络传输的并发[1]。

Socket的建立连接至少需要一对套接字完成,一个运行于客户端(SocketClient),另一个运行于服务器端(SocketServer)。

Socket的连接过程分为3个步骤:

a.服务器监听。服务器的套接字并不定位具体的来自客户端的套接字,而是一种等待连接的状态,通过实时监控网络状态,等待客户端的连接请求。

b.客户端请求。指SocketClient通过查找SocketServer的地址和端口号,发起连接请求。

c.当SocketServer监听到SocketClient发送的请求时,响应客户端请求,建立一个线程,把SocketServer描述发给客户端,当SocketClient确认后,建立连接成功。

Socket通信流程如图1所示。

图1 Socket通信流程

2 PLC通信协议设置

为了验证Socket通信的稳定性和有效性,笔者选取S7-400系列PLC与Controllogix系列PLC通过Socket实现相互通信。

S7-400系列414-2DP处理器支持SIEMENS的 PROFINET 协议[2],PROFINET 基于 TCP/IP 协议,可以实现控制层级横向与纵向的集成。Controllogix系列1756-L72处理器支持Rockwell的Ethernet IP协议[3]。由于两家公司配套软件不同,如需实现网络互通,需从物理连接和PLC硬件网络配置两个方面完成网络配置[2,3]。

2.1 物理连接

本项目有2套PLC和1台编程器,为验证系统的有效性,采用网络交换机连接方式,两套PLC和编程器都设定在一个局域网中,通过计算机CMD中的PING指令验证物理连接的有效性。

2.2 PLC硬件网络配置

Rockwell PLC的硬件网络配置。Controllogix系列1756-L72处理器采用Rockwell RSLogix5K、RSLinx软件进行硬件配置和软件编程,具体配置步骤如下:

a.通过“Rockwell Software>RSLinx”创建新连接,通过 “Communication>Configure Drivers>Available Driver Types”选择驱动,本项目选用“EtherNet devices”;

b. 添加新的驱动 “Add New>添加名称>点击 OK”;

c.配置以太网驱动,输入IP地址192.168.1.243并确定;

d.自动扫描网络,可查询在线网络设备;

e.打开RSLogix5K软件,通过RSWho关联RSLinx软件找到CPU,实现程序下载。

Rockwell RSLinx组态如图2所示。

图2 Rockwell RSLinx组态

SIEMENS的PLC硬件网络配置。414-2DP处理器选用STEP7编程软件完成414-2DP硬件配置后进入NetPro程序:

a.通过 “Insert>New Connection”创建新连接,在连接伙伴处选择“unspecified”,并选择“TCP connection1”作为连接类型;

b.在TCP属性窗口 “General Information”标签中选择PLC通信模块、ID号和Active connection establishment(该选项为通信设置中Socket-Server或者SocketClient的设定,本项目中选择SIEMENS的PLC作为SocketClient,这里打勾);

c.在addresses窗口中设定Local/Remote IP地址192.168.1.244和端口号10002;

d.编译后下载至PLC中。

SIEMENS硬件组态如图3所示。

图3 SIEMENS硬件组态

3 应用程序设计实现

3.1 Rockwell软件实现

Rockwell PLC是通过软件实现Socket通信功能的。MSG指令为1756-L72从网络中的另一个模块异步读取或异步写入数据块的软件指令,在使用MSG指令时:

a.定义一个新的数据类型为Message的Tag,对应一个MSG指令;

b.选择MSG结构类型,本项目为第三方通信,因此选择CIP Generic类型;

c.建立MSG的ServiceType服务类型标签,根据Socket通信原则,本项目使用了5种类型的服务类型标签——Custom(用户自定义类型,当Socket通信中断时可自动修复)、Socket Create(创建Socket通信连接标签)、OpenConnection(打开Socket通信连接类型)、WriteSocket(写数据块类型)和 ReadSocket(读数据块类型);

d.根据不同类型的MSG建立对应的参数设置。

MSG指令组态如图4所示。

在程序结构设计中:

a.Socket通信程序采用250ms定时扫描执行,因此将Socket封装在子程序块内,方便调用;

b.手动测试采用5个Bool位指令,即Delete_All_Request、 Create_Socket_Request、 Accept_Request、Read_Data_Request和 Write_Request,实现MSG指令调用;

图4 MSG指令组态

c.MSG参数设定,例如在Socket_Open_Par中设定SocketServer的IP地址和port号;

d.采用 Ton、Mov、Xic及 Xio 等指令实现自动Socket程序功能;

e.调试过程中,通过观察MSG指令的(EN)、(DN)、(ER)状态监控通信是否正常,其中(EN)代表MSG指令使能、(DN)代表MSG指令执行完成、(ER)代表MSG指令错误位。

Rockwell程序如图5所示。

图5 Rockwell程序

3.2 SIEMENS Socket软件实现

在SIEMENS的STEP7软件中,通过AGSEND(FC5)和 AGRECV(FC6)实现块的读写操作。AGSEND用于向另外的S7站、计算机站或者第三方系统发送数据;AGRECV用于从另外的S7站、计算机站或者第三方系统接收数据。

PLC程序为循环扫描,扫描时间可根据程序自动调节或者设定固定时间,本项目设定250ms执行一次读写操作过程。

在程序设计过程中,首先在OB1功能块中调用SD(250ms)计时器模块,计时器完成位是执行AGSEND和AGRECV指令。M0.0为控制位,在上升沿有效;ID为硬件组态设置;LADDR为通信模块的起始地址;SEND(RECV)为发送(接收)的地址区域;LEN为通信字的字长;DONE为完成位;ERROR为功能块的错误位,发生错误时报警;STATUS为功能块的状态字,显示功能块的运行状态。

SIEMENS程序如图6所示。

图6 SIEMENS程序

4 通信测试

4.1 搭建硬件环境

Rockwell PLC为SocketServer端,其硬件模块由电源模块PA72、CPU模块L73、以太网模块EN2T、A10框架组成。网络部分由交换机和网线组成。

SIEMENS PLC为SocketClient端,其硬件模块由电源模块PS407、CPU模块S7-400 414-2DP、以太网模块443-1和框架组成。网络设备和编程器选用IBM笔记本、8电口100M交换机及网线等。

4.2 下载程序

分别通过Rockwell和SIEMENS的配套软件,将对应的软件下装到PLC中。

4.3 通信测试

两套不同品牌PLC通信调试比较繁琐,很难一次调试成功。笔者在调试过程中,选用了一款第三方软件TCP/UDP测试软件,采用TCP/UDP软件可以模拟Socket服务器/客户端,先用两套PLC分别对TCP/UDP软件测试成功后再进行PLC通信。最终实现了PLC之间的通信,通信时间达到了毫秒级,而且通信中断后可自动连接。TCP/UDP通信软件如图7所示,STEP7中的监控通信数据如图8所示。

图7 TCP/UDP通信软件

图8 STEP7中的监控通信数据

5 结束语

随着工矿企业的快速发展,PLC和工业以太网技术在企业生产中广泛应用。笔者针对不同品牌PLC之间采用Socket进行通信做了一次尝试,实现了Rockwell和SIEMENS的PLC通信,希望能给工控领域的设计者们一个解决思路和途径。

猜你喜欢

组态指令客户端
你的手机安装了多少个客户端
你的手机安装了多少个客户端
浅谈力控ForceControl V7.2组态软件在自动化控制工程中的应用
基于PLC及组态技术的恒温控制系统开发探讨
《单一形状固定循环指令G90车外圆仿真》教案设计
如何看待传统媒体新闻客户端的“断舍离”?
Rh XIII—Cd XVI 离子4s24p3—4s4p4 能级与跃迁的理论计算*
组态软件技术现状与发展
中断与跳转操作对指令串的影响
新华社推出新版客户端 打造移动互联新闻旗舰