基于OPC和Modbus技术的工厂应急数据采集系统

2016-05-14 21:31焦振华
软件导刊 2016年5期

焦振华

摘要:针对分散控制系统(Distributed Control System,DCS)和不同类型设备与第三方力控组态软件通讯的问题,提出一种融合OPC技术标准和Modbus RTU、Modbus TCP协议的通讯,有效解决了工厂应急数据采集系统通讯过程中遇到的问题。

关键词:OPC技术;Modbus RTU协议;Modbus TCP协议

DOIDOI:10.11907/rjdk.161133

中图分类号:TP319

文献标识码:A 文章编号:1672-7800(2016)005-0129-05

0 引言

工厂应急指挥系统是一个综合性的控制系统,涉及计算机软、硬件、计算机网络、有线通信、无线通信、GIS地理信息系统、监控、报警、图像等许多领域。工厂应急指挥系统中的数据采集系统是工厂事故后果评价软件中最关键的子系统之一。工厂事故后果评价软件依据采集到的现场数据进行自动预警/报警、故障点快速定位等智能化实时监测分析,为指挥干预在最短时间内作出应急响应提供有效的技术支撑。

1 OPC、MODBUS技术及力控组态软件简介

1.1 OPC技术

OPC是OLE for Process Control的缩写,即面向过程控制的OLE,它是一套以OLE、COM、DCOM(Distribute COM)技术为背景,基于Windows操作平台,为工业应用程序之间提供高效的信息集成和交互功能的组件对象模型接口标准。目前,OPC技术已经得到了广泛应用,如应用于监控和数据采集系统(Supervisory Control and Data Acquisition,SCADA)、集散控制系统(Distributed Control System,DCS)、可编程逻辑控制器(Programmable Logic Controller,PLC)等[1-3]。OPC 采用客户/服务器模式,将开发访问接口的任务分配给硬件生产厂家或第三方厂家,同时其以OPC服务器的形式提供给用户,解决了软、 硬件厂商的矛盾, 完成了系统集成,提高了系统开放性和可互操作性[4]。

1.2 Modbus技术

Modbus协议是MODICON公司为满足工业控制需求而设计,如今已成为全球工业领域最流行的通信协议之一。此协议支持传统的RS-232、RS-422、RS-485标准和以太网设备。许多工业自动化设备,包括PLC、DCS、智能仪表等都在使用Modbus协议作为通信标准。Modbus/TCP协议是在Modbus/TCP标准中,其应用层采用工业领域标准Modbus实现。标准的Modbus协议使用两种模式进行通讯:ASCII和RTU,这两种模式在报文结构、功能命令上相同,仅帧信息的表示方法不同 [5-6]。

1.3 力控组态软件

在工厂事故应急指挥大厅的监控主机上使用的客户端监控软件是北京三维力控公司的力控组态软件ForceControl V7.0。力控组态软件是运行于Windows98/NT/2000/XP操作系统上的一种组态软件,是对现场生产数据进行采集与过程控制的专用监控组态软件,也是自动控制系统监控层的软件平台和开发环境[7]。该监控组态软件可以与多种类型的控制设备进行通信,对于采用不同协议通信的I/O设备,大多数都有相应的I/O驱动程序,通过I/O驱动程序来完成与设备的通讯,目前支持的I/O设备包括集散系统(DCS)、可编程控制器(PLC)、现场总线(FCS)、电力设备、智能模块、板卡、智能仪表、变频器、USB接口设备等[8]。

2 工厂应急数据采集系统

本系统中采集的数据类型及范围为:①厂内A区各厂房内的临界报警信号和有毒气体信号;②厂内1#、2#和3#控制室DCS系统监控的工作罐体的温度、压力信号;③厂内B区1#、2#和3#厂房内气体流出物报警信号和轻杂质传感器信号。工厂应急数据采集服务器安装于应急指挥楼屏蔽机房内,操作系统为Windonws Server 2008 标准版,数据库为微软SQL Server 2008 标准版,客户端组态软件为力控V7.0,各数据采集点安装有网络通信节点控制柜,并全部连接到工厂应急控制中心的汇聚交换机上。

2.1 临界报警信号和有毒气体(HF)信号采集

2.1.1 设备现状及采集方式

(1)设备现状。临界报警监测仪为国内早期型号设备,不具备与外部设备通信的232/485或以太网通信接口。有毒气体检测仪自身配有与外部通信的RS485串口。

(2)采集方式。根据临界报警仪报警信号产生原理可知,当有被测物质超过临界值时,会触发该仪器中的交流220V电源自动接通,产生临界报警开关量信号,由此采集该开关量信号可以在信号产生的线路中增加一个交流接触器,将其开关量引入到一个开关量输入模块,通过MODBUS RTU协议上传。由于有毒气体检测仪具备与外部网络通信的RS485串口,因此可以直接通过MODBUS RTU协议访问该设备并进行数据采集。

2.1.2 硬件通讯配置

为了实现对临界报警信号和有毒气体信号的采集,需要配置的硬件包括:正泰交流接触器、ART阿尔泰模块、串口服务器(USR-TCP232-300)、光电收发器、光纤熔接盒、光缆等设备。数据采集的通讯网络如图1所示。

2.1.3 软件通讯配置

通讯软件配置主要包括3个方面:①串口服务器配置(USR-TCP232-300);②阿尔泰模块(DAM-3013D)配置;③力控(ForceControl)组态软件配置。

(1)串口服务器(USR-TCP232-300)配置。通信网络中的串口服务器在使用前需要进行配置,配置步骤为:①连接硬件,使用配套电源给串口服务器供电,用网线将串口服务器直接连接到计算机上,或者将串口服务器接到和计算机统一局域网内的路由器或者交换机上;②打开串口服务器(USR-TCP232-300)配置软件,点击“搜索”按钮,找到该网络设备;③填写设置的参数,配置如表1所示的参数;④给设备断电再上电,设备将在新的配置下工作。

(2)阿尔泰模块DAM-3013D配置。通信网络中的ART模块(DAM-3013D)在使用前需要进行配置,其配置软件为阿尔泰设备测试系统DAM-3000M。该模块通信配置步骤为:点击DAM-3000M软件包中的Sys_32.exe应用程序,点击窗口中的设备操作→搜索→选择主机下没有用过的COM端口→模块查询→找到DAM-3013D模块。双击后出现模块信息窗体,按照表2配置完后,按“修改”按钮即可,重启ART模块后配置信息生效。

(3)建立串口服务器(USR-TCP232-300)与阿尔泰模块DAM-3013D之间的联系。打开串口服务器配置软件,然后点击“添加”图标,出现添加虚拟串口窗口,参数设置如表3所示。

2.1.4 力控(ForceControl)组态软件配置

力控组态软件与支持MODBUS协议的设备通信配置步骤为:①定义IO设备。在工业组态平台开发系统导航器窗口中双击“IO设备组态”,启动IoManager。选择“标准MODBUS”类中的“MODBUS(RTU串行口)”,然后双击弹出“设备配置”对话框,在“设备名称”中输入逻辑设备名称、设备描述、更新周期、超时时间、设备地址、通信方式(串口 RS232/422/485),其中设备地址和实际连接设备的地址一致;②串口配置。设置串口,设置通信参数(波特率、奇偶校验、数据位、停止位)并保存设置;③采集配置。包括保持寄存器写操作、分包配置和线圈功能码选择;④数据连接。打开数据库组态,选择数据库新建点,选择相应的点类型,点击“继续”,填写点名,其它默认,点击数据连接点参数,常用的是PV(现场实时值),选择要连接的设备名称,连接项一栏点击“增加”增加链接项,根据需要设置相对应的内存区以及偏移地址、数据格式、读写属性,这样就完成了数据连接的全过程。

经过以上软、硬件配置后,现场临界报警监测设备和氟化氢设备就建立了与工厂应急指挥中心的通信,应急指挥中心的客户端通过力控组态软件就可以实时读取设备的数据。

2.2 压热罐温度与压力信号采集

2.2.1 设备通讯接口及采集方式

(1)设备现状。控制室DCS工作安装的监控软件为SUPCON DCS JX-100系统,该系统负责采集现场压热罐的温度和压力信号等参数。

(2)采集方式。由于SUPCON DCS JX-100系统支持标准OPC协议,因此采用第三方(北京华恒信远)开发的工业标准通讯接口ForeverCredit OPC Server服务器软件进行数据采集。

2.2.2 硬件通讯配置

为了实现对现场压热罐温度和压力信号的采集,需要配置的硬件包括网卡、网线、光电收发器、光纤熔接盒、光缆等设备,其通讯网络结构如图2所示。

2.2.3 通讯软件配置

(1)服务器端(Server)通讯配置。在SUPCON DCS系统中的一台工作站上进行如下软件配置:安装ForeverCredit OPC Server 软件包中的OPC_DA20_Components组件→双击JXServer.ini (配置设置文件) →将本机DCS组态文件拷贝至包含JXServer.exe应用程序的文件夹,然后双击JXServer.exe,出现请选择组态文件,则选取拷入的组态文件,并命名为工程师站.SCO;双击执行注册表项文件 ManagerAPI.reg和批处理文件regserver;双击运行IOManager.exe,最后运行OPC4Safety.exe;双击运行OPC客户端软件查看OPC Server是否安装成功,如果出现JXServer.exe,则表明安装成功。

当OPC Server JXServer安装成功,说明与SUPCON DCS JX-100 工作站的数据接口已经建立,然后配置远程访问的DCOM组件,主要配置项目为:添加一个用户,运行“dcomcnfg”,设置“COM安全”属性,添加Everyone和ANONYMOUS LOGON用户,完成OPCEnum配置、Multi OpcServer配置、“安全”属性配置等。

(2)力控组态客户端(Client)通信配置。在工厂应急数据采集控制中心的客户端工作站安装力控V7.0工业组态软件。打开组态软件后,首先定义OPC设备,其步骤为:在力控开发系统导航器窗口中双击“I/O设备组态”,启动IoManager,选择“OPC”类中的“MICROSOFT OPC CLIENT”并展开,然后选择“OPC CLIENT 3.6”并双击弹出“设备配置”对话框,在“设备名称”中输入逻辑设备的名称。在“数据更新周期”中指定采集周期,然后单击按钮“下一步”,出现OPC设备定义对话框,根据提示进行具体配置。数据连接步骤为:在力控开发系统导航器窗口中启动DBManager,选择I/O连接,连接设备为上述定义的I/O设备(如OPC_1C),在连接项中,按“增加”按钮,在弹出的窗口中选择模拟输入中需要采集点的位号,确定后即完成数据连接。采集其它参数则继续添加位号,直至将所有需要的位号添加完毕,然后进行显示界面设计。

经过以上软硬件配置,力控组态软件就可以通过服务器(SUPCON.JXServer.1)采集DCS数据库中的数据,在组态软件的监控画面中显示出温度压力数据值,从而实现对DCS系统的数据采集。

2.3 气体流出物报警信号和轻杂质传感器信号采集

2.3.1 设备现状及采集方式

(1)设备现状。①1#、2#、3#厂房内现场气体流出物报警仪没有外部通信端口,每三路报警信号组合为一组总的开关量报警信号;②轻杂质测量传感器输出信号为0~100mV信号,该信号通过I/O端子排接入专用控制柜,且不具备与外部设备通信的232/485或以太网通信接口,导致外部设备无法直接与该设备建立通信。

(2)采集方式。①针对轻杂质测量传感器输出信号采集,可以通过一分为二的信号隔离分配器,一路为0~100mV信号接入原来的控制盘柜,另一路为4~20mA接入PLC,PLC控制器通过MODBUS TCP/IP协议上传至工厂应急控制中心;②气体流出物报警仪输出报警开关量信号是通过I/O端子排接入专用控制柜,微型继电器接入数据采集网络,然后微型继电器输出的信号接入具有数字量输入接口的PLC模块,通过MODBUSTCP/IP协议上传至工厂应急控制中心。

2.3.2 硬件通讯配置

为了实现对气体流出物报警仪输出报警开关量信号和轻杂质测量传感器输出信号的采集,需要的硬件配置包括一分为二模块、PLC和微型继电器。临界报警仪输出的报警信号的通信线路连接方式如图3所示。轻杂质测量传感器输出信号的通信线路连接方式如图4所示。

2.3.3 软件通讯配置

PCL采用南大傲拓PLC,其设置软件为NAPro。双击图标NAPro进入配置界面,点击PLC配置并保存配置,然后在PLC配置上点右键出现硬件配置,双击进入配置界面。PLC类型选择NA200H,然后确认,再选择CPU模块类型为CPU201-1101,双击后出现CPU模块参数设置,所配置的项目参数如表4所示。

下文主要介绍力控软件组态通信设置与程序编写。

关于气体流出物报警信号:

(1)定义I/O设备与数据连接。力控组态软件与支持MODBUS协议的PLC(NA200PLC)设备通信的配置步骤为:①定义I/O设备,在工业组态平台开发系统导航器窗口中双击“IO设备组态”,启动IoManager;②选择“标准MODBUS”类中的“MODBUS(TCP)”,双击弹出“设备配置”对话框进行配置;③数据连接,打开数据库组态,选择数据库新建点,选择相应的点类型(数字I/O点),点击继续,填写点名,其它默认,点击数据连接点参数进行配置。

(2)编写数据处理脚本。气体流出物报警信号的产生是按照三取二的原则产生一组报警信号,即三路信号中有两路及以上时才输出一组报警信号,因此需要对采集到的数据在组态软件中进行处理。本文给出部分气体流出物报警探测器对其输出的三路报警信号进行组态,在力控软件中编写的程序如下:

关于轻杂质信号:

(1)定义I/O设备与数据连接。力控组态软件中轻杂质信号采集配置与临界报警信号采集配置大致相同,不同之处是:①定义数据类型:模拟量I/O;②内存地址:AR输入寄存器,偏置(10进制)1,数据格式:Word 16位无符号数。

(2)轻杂质信号数据处理程序。轻杂质传感器输出信号为0~100mV信号,经PLC传输至工厂应急控制中心客户端的是4~20mA信号。设备厂家定义4~20mA对应数字量为4 000~20 000,为了在组态界面显示出毫伏数据,客户端力控组态软件中需要将传输过来的4~20mA信号转换化0~100mV信号。假设电流信号为X,对应的mV信号为Y,它们之间的转换关系如图5所示。

3 结语

本文通过OPC和MODBUS技术及力控组态软件实现了各类不同数据的集成。并且,建立在此实时数据采集平台上的工厂应急指挥系统运行稳定、操作方便、监控效果良好。

参考文献:

[1]徐攀.SCADA系统中应用OPC数据接口技术的研发[D].成都:西南交通大学,2009.

[2]张胜.基于OPC技术的开放式DCS系统的研究[D].武汉:武汉理工大学,2006.

[3]高飞,叶文华.基于嵌入式系统的OPC数据采集技术的研究与实现[J].中国制造业信息化,2012, 41(5):34-39.

[4]胡忠德,严启,彭顺风.基于OPC技术的数据采集系统[J].自动化技术与应用,2008,27(11):42-44.

[5]李慧燕,费鹏,沈昱明. Modbus/TCP协议的通信处理器模块设计[J].光学仪器,2013,35(1):70-74.

[6]潘洪跃.基于MODBUS协议通信的设计与实现[J].计量技术,2002(4):35-36.

[7]潘谷红岩,李文哲.基于PLC和力控组态软件的沼气生产自动控制系统[J].农机化研究,2011,33(1):199-202.

[8]雷雨,陈白宁.基于OPC的S7-300PLC与力控组态软件通讯实现[J].成组技术与生产现代化,2011, 28(1):47-50.

(责任编辑:孙 娟)

Abstract:According to the communication problems between distributed control system(DCS)and different types of equipment and third-party Forcecontrol configuration software,this paper proposed a effective strategy that established a communication to third-party Forcecontrol configuration software based on OPC technical standard and Modbus RTU protocol or Modbus TCP protocol in data acquisition system(SCADA) for Nuclear Accident Emergency,which could effectively solve communication problems encountered in data acquisition system(SCADA) for Factory Accident Emergency.

Key Words: OPC Technology; Modbus RTU Protocol; Modbus TCP Protocol