基于TwinCAT的压缩机组实时监测系统设计与实现

2014-07-24 17:52刘为杰周晓梅丁家宝
压缩机技术 2014年6期
关键词:功能块组态以太网

刘为杰,周晓梅,丁家宝

(中国空气动力研究与发展中心,四川 绵阳621000)

基于TwinCAT的压缩机组实时监测系统设计与实现

刘为杰,周晓梅,丁家宝

(中国空气动力研究与发展中心,四川 绵阳621000)

针对多台大型压缩机组监测数据量大,实时性要求高等问题,设计了一种基于TwinCAT的压缩机组实时监测系统。阐述了监测系统总体设计方案,PLC程序编写,TwinCAT系统管理器组态,上位机监测软件的研制。应用结果表明该实时系统能够满足大数据量传输、高实时性的要求。

TwinCAT;实时以太网;压缩机;实时监测系统

1 引言

大型压缩机组在运行过程中需要对压缩机组本身以及各类辅机的运行参数进行实时监测,以便运行人员及时掌握机组运行情况,确保机组安全运行。因此,建立一套快速、可靠的实时监测系统是十分必要的。

面对复杂的工业现场环境,实时以太网技术应运而生。目前实时以太网技术正在高速发展,各个自动化公司相继推出自己的实时以太网协议。其中德国倍福(Beckhoff)公司提出开放式实时以太网EtherCAT具有高速、高有效数据率的特点,支持几乎所有的拓扑结构[1]。

本文用安装在PC上的TwinCAT软件作为实时以太网的软主站,倍福EtherCAT耦合器、串口通信模块等构成从站,完成对4套压缩机组运行参数的读取。

2 监测系统总体设计方案

压缩机组实时监测系统网络结构如图1所示。4套压缩机组,共有14台仪表设备需要与上位机进行数据通讯,分别为4台压缩机CMC控制面板,4台干燥站PLC,4台高压运行柜电机综合保护装置Sepam M87,2台辅机PLC,各仪表均提供RS-485接口。使用倍福EtherCAT耦合器、串口通信模块构成EtherCAT从站,将4套压缩机组的运行参数,通过EtherCAT总线传输到上位机TwinCAT系统。

图1 压缩机实时监测系统总体结构图

2.1 从站硬件介绍

EtherCAT从站 由 EtherCAT总线 耦 合 器EK1100,4块串口接口模块EL6022,总线末端端子模块EL9010构成。

EK1100:耦合器带有2个以太网接口,使用第一个以太网接口和网络连接,它将从站各模块间Ebus信号通过EtherCAT总线传送到主站。

EL6022:与底层Modbus设备相连,带有2个RS-422/RS-485串口接口。

EL9010:安装在所有模块最后端,起机械和电气保护作用。

2.2 主站硬件介绍

EtherCAT主站基于PC计算机。在选用PC机时需要注意网卡的型号。TwinCAT实时功能只支持Intel公司Fast Ethernet Controllers和GigabitEthernet Controllers系列以太网控制器芯片中的部分产品。本项目中PC机使用的网卡型号为Intel PRO/1000 MFServer Adapter(SX)。

3 主站组态软件TwinCAT

TwinCAT软件系统作为倍福PLC系统的组态软件,是基于PC兼容机的自动化系统,全称是“The Windows Control and Au-tomation Technology”。它把任何PC兼容机变成一个带有多PLC、NC轴控制、编程环境和控制台的实时控制系统。其原理如图2所示,其中TwinCAT ADS通讯,用于TwinCAT系统级(控制器)的非实时通讯,TwinCAT I/O通讯用于I/O级的实时通讯,TwinCAT I/O通讯通过EtherCAT协议实现。

图2 TwinCAT系统原理

在PC上成功安装TwinCAT软件后(安装等级选择TwinCAT PLC-IEC 61131-3 PLC System),可以看到整个软件系统包括:TwinCAT PLC Control、TwinCAT System-Manager、TwinCAT Scope View等功能模块。本文主要用到TwinCAT PLC Control、TwinCAT System Manager这2个模块,前者用于PLC程序的开发和调试,后者是系统的管理器,主要负责硬件组态和I/O映射。

4 PLC程序编写

PLC程序编写过程中,需要用到TwinCAT Modbus RTU功能库。TwinCAT Modbus RTU功能库用于实现Beckhoff设备通过Modbus协议与第三方Modbus终端设备之间的数据通讯。TwinCAT Modbus RTU功能库提供主站功能,使用其主站功能,Beckhoff设备能够和多个Modbus从站设备进行通讯。TwinCAT软件系统基础库中不带有Modbus RTU功能库,该库需要单独安装。

在PLC程序设计时,主要使用ModbusRTU功能库中ModbusRtuMaster_KL6x22B功能块的4个成员函 数 ReadCoils、 ReadRegs、 ReadInputStatus和ReadInputRegs。4个成员函数原型类似,其中ReadInputRegs函数原型为:

ReadInputRegs(UINT UnitID,WORD Quantity,WORD MBAddr,UINT cbLength,DWORD pMemoryAddr,BOOL Execute,TIME,Timeout,BUSY=>,Error=>,ErrorId=>,cbRead=>,)。

整个程序包括4个功能块(FB),8个子程序(Program)以及一个主程序MAIN,各个程序之间的调用关系如图3所示。

由于4个功能块结构基本类似,8个子程序结构基本也类似。下面以功能块EL6022_READ_HV和子程序READ_HV为例对PLC程序进行简要的说明。EL6022_READ_HV,READ_HV用来读取1#、2#压缩机运行柜电机综合保护装置Sepam M87的数据。EL6022_READ_HV功能块先是声明ModbusRtuMaster_KL6x22B库功能块成员函数的形参,然后调用库功能块成员函数读取设备的数据。READ_HV调用EL6022_READ_HV功能块,向功能块传递实参(从站设备站点号、Modbus数据地址、读取数据的字节数等)。另外由于EL6022的每个通道连接2个Modbus设备,因此设计程序时要分时对2个设备的数据进行读取。

TwinCAT PLC支持所有的IEC61131-3编程语言。本次程序设计,考虑到编程语言的简介性和易读性,功能块采用ST语言(结构化文本)编写,程序块采用CFC语言(连续功能图)编写。

5 TwinCAT系统管理器组态

为了使TwinCAT系统能够正常运行,还需对TwinCAT系统管理器进行组态,主要内容包括:安装TwinCAT EtherCAT协议,扫描I/O设备,加入PLC项目,建立I/O映射,激活配置等5个部分。

5.1 安装TwinCAT EtherCAT协议

打开TwinCAT System Manager,点击主菜单栏Option/Show Real Ethenet Compatible Devices进入Installation of TwinCAT RT-Ethernet Adapters选项卡,选择兼容的网卡,点击Install按钮安装即可。安装协议后,检查PC与耦合器EK1100之间的网络是否畅通,确保PC与从站设备建立连接。

5.2 扫描l/O设备

扫描I/O设备时目标系统必须在Config模式下。右击I/O Devices,点击Scan Devices选项,即可扫描到连接到PC的I/O设备,在耦合器EK1100选项下面有4个EL6022串口端子和一个EL9010总线末端。如果在网络暂时不畅通,或者不便在现场配置硬件组态的情况下,可以手动进行添加所需的I/O设备。

图3 PLC程序调用结构

EL6022两个通道设置为不同波特率和不同数据格式不会影响彼此的通信,默认EL6022的波特率和数据格式是9600,8,1,n,485的接线方式,如果要修改的话,如修改第一个接口的参数,可以通过Coe online,8000:11为波特率设置,8000:15是数据格式设置,8000:06和07是485和422的设置,如果是422接线方式,06设置为FALSE,07设置为TRUE。第二个接口参数在目录8010:0下设置,方法与设置第一个接口参数类似。

5.3 加入PLC项目

右击PLC-Configuration,点击Append PLC Project找到前文生成的tpy文件,点击加入PLC项目。在PLC-Configuration下可以看到8个输入变量和8个输出变量。每个输入变量由状态字和22字节数组组成,每一个输出变量由控制字和22字节数组组成。输入变量和输出变量需要分别与对应的I/ O设备建立映射。

5.4 建立l/O映射

选择一个PLC变量点击“Linked to”按钮,在弹出的对话框中找到对应的I/O变量,点击确认即可。

5.5 激活配置

依次点击Check Configuration、Generate Mappings和Activate Configuration按钮激活硬件组态配置,并且将系统置为运行状态。返回TwinCAT PLC Control界面点击Online/Login完成PLC程序下载,然后点击Run运行程序,在TwinCAT PLC Control界面上可以看到设备的实时数据。

6 上位机监测软件

上位机监控软件用于监测4台压缩机组的运行状态。监控软件使用Visual Studio 2012平台,采用C#语言开发,包括流程监视、报表打印、事故报警、历史数据查询等4大功能模块。监测软件通过NI OPC Server访问TwinCAT系统中压缩机组的实时数据。NI OPC Server是一套可编程逻辑控制器驱动,可与各大厂家的PLC进行通讯,包括Beckhoff TwinCAT PLC。上位机监测软件通过访问NI OPC Server网络变量获取实时数据,将数据进行计算处理后写入数据库以及显示在检测界面上。

7 结论

利用TwinCAT和倍福总线耦合器端子等产品,解决了4台压缩机组大量运行参数实时传输的问题。该压缩机组实时监测系统所用到的硬件少,安装空间小,接线简单,而且倍福总线耦合器端子的灵活配置也方便监测系统的扩展。经过一年时间的运行,表明其数据传输能力以及抗干扰能力均能够很好的压缩机组实时监测的需求。

[1]张亦工,王丽薇.采用TwinCAT的液压机实时监测系统设计与实现[J].现代工程技术,2012,(9):91.

[2]华中平,张立.TwinCAT在电梯式立体车库中的应用[J].工业控制计算机,2006,19(5):8.

[3]陈志军,徐东进,程志江,等.基于TwinCAT的PLC水源地远程监控系统的开发设计 [J].电子应用技术,2008,(12):95.

[4]赵君,刘卫国,彭喆.基于EtherCAT总线的分布式测控系统设计[J].计算机测量与控制,2012,20(1):11.

[5]徐庆坤,王军伟,毛建伟.基于NI OPC Servers实现PC与PLC实时通讯[J].工业控制计算机,2013,26(7):51.

[6]张晓科.使用C#开发OPC Client的研究和应用[J].科技资讯,2013,(2):33,35.

[7]德国倍福自动化公司.TwinCAT PLC编程手册[K].中国区技术支持部,2011.

[8]Wei-Menglee著,薛莹译.C#2008编程参考手册[M].北京:清华大学出版社,2009.

Design and Realization of Compressor Real-time Monitoring System Based on TwinCAT

LIU Wei-jie,ZHOU Xiao-mei,DING Jia-bao
(China Aerodynamics Research and Development Center,Mianyang 621000,China)

The real-time monitoring system based on TwinCAT was designed for many sets of compressors aiming at plenty of data transmission and high real-time request.The general design of the real-time monitoring system,programming of PLC program,Twin-CAT system manager configuration and development of monitoring software was explained in detail.Application shows that the realtime monitoring system could realize high real-time data transmission reliably.

TwinCAT;EtherCAT;compressor;real-time monitoring system

TH45

A

1006-2971(2014)06-0026-04

刘为杰(1989-),男,安徽人,助理工程师,本科,主要研究方向为电气自动化。E-m a i l:15000160275@163.c o m

2014-08-18

猜你喜欢
功能块组态以太网
基于1500以太网养猪场的智能饲喂控制系统的设计与实现
基于PLC及组态技术的恒温控制系统开发探讨
三种国外集散控制系统(DCS)功能块扫描规则和执行顺序的分析和总结
Ovation系统FIRSTOUT和FIFO跳闸首出比较
基于PLC和组态的智能电动拧紧系统
谈实时以太网EtherCAT技术在变电站自动化中的应用
铸造行业三维组态软件的应用
基于PLC和组态的新型回转类测试设备的研制
自定义功能块类型在电解槽联锁中的应用
浅谈EPON与工业以太网在贵遵高速公路中的应用