1 引 言
组态软件,又称组态监控软件系统软件。译自英文SCADA,即 Supervisory Control and Data Acquisition(数据采集与监视控制)。它是指一些数据采集与过程控制的专用软件。它们处在自动控制系统监控层一级的软件平台和开发环境,使用灵活的组态方式,为用户提供快速构建工业自动控制系统监控功能的、通用层次的软件工具。组态软件的应用领域很广,可以应用于电力系统、给水系统、石油、化工等领域的数据采集与监视控制以及过程控制等诸多领域。在电力系统以及电气化铁道上又称远动系统(RTU System,Remote Terminal Unit)。国外常见的组态软件有InTouch、 IFix、WinCC等,国内常用的为世纪星、Controx 、MCGS等。本文即以MCGS为例讲解组态软件在DCS总线接口的设计与实现。
MCGS(Monitor and Control Generated System)是由北京昆仑通态自动化软件科技有限公司开发的一套基于Windows平台,用于快速构造和生成上位机监控系统的组态软件系统,为用户提供解决实际工程问题的完整方案和开发平台,能够完成现场数据采集、实时和历史数据处理、报警和安全机制、流程控制、动画显示、趋势曲线和报表输出及企业监控网络等功能。
MCGS需要完成对现场设备或现场仪表的数据采集和控制功能,必须依靠现场总线和MCGS的载机进行通信。而现场系统组成复杂,设备较多,设备间通信协议门类众多,繁简不一,因此研究与开发一种高效便利的总线接口技术,将具有很好的应用价值和市场前景。本文主要讨论在MCGS系统中DCS总线接口设备的设计与实现。
2 概述
MCGS工控组态软件开发工具基于Windows操作平台,支持快速构造、生成工业设备驱动,具有良好的扩充能力。具体地说,MCGS用Active DLL构件的方式实现设备驱动程序,通过规范的OLE接口挂接其中,无缝接入,构成一个整体。设备驱动构件和MCGS运行在同一个进程,故运行速度快、可靠性高、数据流通顺畅、传输无延时,符合监控系统的要求。OLE是一个可扩充的开放标准,只要遵守MCGS的接口规范,就可以使用 VB,VC,Delphi等语言编制MCGS的设备驱动程序。这为在总线中接入自行研制的现场设备和现场仪表提供了基础。
嵌入式技术的高速发展为提供低价格、高性能、自带大量数据存储空间的片上系统提供了可能,通过外接MAX485,MAX232等电平转换芯片,能够在硬件上轻松实现PC和DCS总线的连接。而计算机串行口是计算机和其他设备通信时最常用的一种通信接口。RS-232-C是美国电子工业协会 EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推标准”的缩写,232为标识号,C表示修改次数。RS-232-C总线标准设有25 条信号线,包括一个主通道和一个辅助通道。一个串行口可以挂接多个通信设备(如1个RS 485总线上可挂接255个研化通讯模块,但他们共用1个串口父设备),为适应计算机串行口的多种操作方式,MCGS采用在串口通讯父设备下挂接多个通信子设备的一种通讯设备处理机制,各个子设备继承一些父设备的公有属性,同时又具有自己的私有属性。在实际操作时,MCGS提供1个串口通讯父设备构件和多个通讯子设备构件,串口通讯父设备构件完成对串口的基本操作和参数设置,通讯子设备构件则为串行口实际挂接设备的驱动程序。这样就为在总线上挂接多个现场设备和现场仪表提供了保障。MCGS与DCS设备接口如图1所示。
3 DCS总线接口设计
3.1 MCGS接口设备构建
在DCS系统设计时,在系统中首先要对现场设备和现场仪表进行归类,对于类型相同的一类设备在MCGS中可以通过复用设备,单独存储的方式,以节省与多个设备通信的时间和开销。通常构造的接口设备功能要单一,然后将其统一组态。
在MCGS中通过构造接口设备,可以将MCGS的GUI控制方式引入DCS的控制中(如图2所示),实现DCS控制的图形化、交互化和组态化,是一种在现有技术和设备上的改造型创新,具有很好的工程应用前景和社会效益。图2中所示数据均来源于现场设备,而仿真仪表也同样是通过DCS与现场仪表连接,实现控制调节功能。
3.2 DCS总线接口设备硬件设计
如图3中DCS网关主要功能是控制网络(监控计算机与控制站)的切换,同时他还担负上下数据通信的协议解析和转换。DCS网关采用Philips公司的LPC2136微控制器,它是一款具有较高性价比的基于支持实时仿真和嵌入式跟踪的16/32位ARM7TDMI-S CPU,并带有256 kB嵌入的高速FLASH存储器。具有2个16C550工业标准UART,可以完成上位机与下位机的通信。使用简单方便,功能强大,其包含多达47个通用 I/O口(可承受5 V电压),可用于485通信接口的使能信号。
RS-232通信的主要缺点就是传输距离较短,针对RS-232串口标准的局限性,人们又提出了RS-422,RS- 485接口标准。RS-485/422采用平衡发送和差分接收方式实现通信:发送端将串行口的TTL电平信号转换成差分信号A,B两路输出,经过线缆传输之后在接收端将差分信号还原成TTL电平信号。由于传输线通常使用双绞线,又是差分传输,所以又极强的抗共模干扰的能力,总线收发器灵敏度很高,可以检测到低至200mV电压。故传输信号在千米之外都是可以恢复。RS-485/422最大的通信距离约为1219M,最大传输速率为10Mb/S,传输速率与传输距离成反比,在100Kb/S的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。RS-485采用半双工工作方式,支持多点数据通信。RS-485总线网络拓扑一般采用终端匹配的总线型结构。即采用一条总线将各个节点串接起来,不支持环形或星型网络。如果需要使用星型结构,就必须使用485中继器或者485集线器才可以。RS-485/422总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128 个或者256个节点,最大的可以支持到400个节点。基于以上的优点,结合本系统的实际情况采用485通信。
在485总线上挂接了多个现场设备,为避免通信过程中的冲突,硬件上采用总线型网络结构,软件上采用主从通信方式,即由上位机(MCGS)发送设备 I/O命令,DCS网关解析命令后选通对应的通道,上位机发送数据请求命令,DCS网关将该命令直接转发给选通的通道,等待接收数据,最后DCS网关将接收的数据直接上传给上位机,MCGS将其值赋值给对应的变量保存在实时数据库中。
3.3 DCS总线接口设备软件设计
为解析上位机发送的命令,首先必须了解MCGS中所构建设备的通信协议,在该实验系统中所使用的3种设备的通信协议如下:
(1)4017模块
上位机发送:#地址号+回车(0x0D)例如:#07回车;
下位机发送:+3.22+2字符空格+2.55+2字符空格。
(2)4060模块
格式:输出:#地址号+00+XX+回车;
返回:回车。
例如:#010001+回车代表向地址号“01”发送8位数字量“01”
(3)4021模块
格式:输出:#地址号+XX.XXX+回车;
返回:回车。
例如:#0206.111+回车 代表向地址号“02”发送电流值6.111,电流值为标准4~20 mA范围。
MCGS与现场设备或现场仪表的1次通信过程为:MCGS首先通过4060模块发送I/O请求命令,DCS将收到的数据进行解析,如收到#010001,则表示使用通道1,设置成功后返回一个回车符(0x0D),然后等待上位机的数据请求命令。MCGS在收到确认信号后则发送数据请求命令,该命令通过4017模块实现,DCS在接收到该命令后则直接转发给现场设备,然后等待数据接收。DCS收到现场采集的数据后缓存后转发给上位机,交由 MCGS处理。
模块4021主要用于设备参数配置的下载。当系统中需要同时采集多路数据时,MCGS在控制策略中采用循环定时采集,对需要采集的现场设备进行轮询,而DCS网关则负责某一设备在轮询期间使能其通信通道。此外为保证数据的正确性和完整性,DCS在软件设计中使用了存储转发机制,即使MCGS出现故障或通信出现问题也可将数据暂存在DCS上,使数据不致于丢失。
4 结语
MCGS在设计思想上的开放性,使得用户可以设计具有使用灵活、编辑简便、画面质量和表现形式丰富多样的特点的监控系统。利用DCS总线接口在数据实时采集和监控中可以取得较好的控制效果。从笔者参与研制“新型干法水泥生产实验教学系统”的实际应用情况来看,在组态软件中运用DCS总线接口技术控制现场设备,具有很多明显的优势,如系统控制方便、配置灵活、性价比高等。