工控组态软件运行平台的实时性研究

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

工控组态软件运行平台的实时性研究郝伟旭1,郝英立2,仲崇权2,张利2(1.郑州师范高等专科学校现代信息技术部河南450000;2.大连理工大学自动化系辽宁116023)摘要:简要介绍了组态软件运行平台的体系结构、组成部分及实时性的影响,着重对影响运行系统实时性的因素作了深入探讨,提出改善运行系统实时性的方法,并给出了实例及运行数据。关键词:组态软件;DCS;实时性;多线程;优先级队列中图分类号:TP311.52文献标识码:AResearchofRunning-PlatformforIndustryConfigurationSoftwareHao,WeixuHao,YingliZhong,ChongquanZhang,Li(1.DepartmentofInformationEngineering,ZhengZhouTeacherCollege,Henan450000;2.DepartmentofAutomation,DaLianUniversityofTechnology,Liaoning116023)Abstract:ThispaperintroducesthestructureandcompositionofRunning-platformandtheessentialityofreal-timeability,discussesthefactorsthataffectrunning-platform’sreal-timeabilityandimprovesonthat,givesanexampleofimprovingmethodsanddata.Keywords:configurationsoftware;DCS;real-timeability;multi-thread;priorityqueue1.引言随着工业自动化水平的迅速提高,组态软件逐渐被过程自动化技术人员所熟悉。组态软件是面向监控与数据采集的软件平台,它能根据用户对被控对象和控制目的的要求在模块间进行任意组合。它不仅满足了被控对象的个性需求、缩短了软件开发时间并节省了开发费用,还具有实时多任务、接口开放、操作直观、使用灵活简单、功能多样、运行可靠等特点,因此,组态软件有着更强的竞争力和更为广阔的市场前景。工业监控组态软件通常由开发系统和运行系统两大部分组成,开发系统主要负责实施设备组态、变量组态、数据库组态、流程图组态等组态操作,而运行系统则主要负责解析由开发系统生成的各种组态参数,生成HMI界面,加载设备驱动程序,启动数据库,采集底层设备的数据等工作。运行系统作为工业监控现场的数据处理中心,它的运行效果诸如稳定性、实时性等性能指标直接影响到工业现场的生产安全与生产效率,所以运行系统的实时性与稳定性成为组态软件设计中必须考虑的问题。2.工业监控组态软件运行平台的体系结构及影响实时性的因素工业控监控组态软件运行平台按照功能模块分类,通常可分为6大部分,分别是实时数据库、脚本引擎、HMI、后台数据库、IOServer和数据备份模块,其运行系统体系结构图如图1所示。----------------------------------------------------------------------------------------------------------------------基金项目:国家863计划基金项目(2003AA412030-9)辽宁省博士启动基金资助项目(#20031069)脚本引掣HMI数据库实时数据库PLC智能仪表其它设备从机工控组态软件运行系统驱动驱动备份程序IOServer图1运行系统体系结构图实时数据库是运行平台的核心部件,运行平台的所有组成部分都以实时数据库为中心,接受实时数据库的调度。脚本模块负责解析及执行用户编写的脚本代码,为用户提供二次开发能力,并将执行结果反馈给实时数据库。人机界面是人与计算机之间传递和交换信息的媒介,设计良好的HMI为用户提供友好的界面,为用户执行控制提供方便。Windows操作系统称为抢占式多任务操作系统,该操作系统基于消息机制的运行方式与DOS等系统在实时性方面相比略有不足。历史数据库模块负责将实时数据库中的数据保存起来,为进行历史数据的查询和处理做准备。IO数据采集模块是进行数据采集的中心,是组态软件和硬件设备连接的桥梁。通过上述对组态软件运行平台各个组成部分功能的分析,可以得到如下影响系统实时性的因素:1)实时数据库的性能2)脚本功能模块与脚本引擎的接口效率及脚本的执行速度3)Windows操作系统消息队列对消息处理的处理机制4)后台数据库操作对实时性相关操作的阻塞5)设备通讯的IO操作3.提高设备通讯IO操作实时性的方法3.1多线程对于CPU的工作速度来讲,端口的I/O操作是一个相对慢速的过程。而组态软件中需要进行大量的I/O操作,为满足系统的实时性要求,将系统的I/O操作设计成多线程,并为每一个I/O端口设置一个监视线程,监视I/O端口的接收数据缓冲区和数据发送缓冲区,一旦缓冲区接收到数据,立刻启动数据接收线程或者数据发送线程,将数据从接收数据缓冲区取走,并由数据接收线程将接收数据交给数据解析模块进行数据解析,或者向特定端口发送数据。3.2优化IO指令IO指令是运行系统与现场设备进行通讯的语言,系统发出的IO指令越多,消耗在IO操作上的时间越长,所以在一次打开端口之后在这次操作中取得尽量多的数据是缩短IO操作的可行方法。优化的原则如下:将属于同一设备中的具有临近寄存器地址的命令组合到以一个优化预读命令中,该命令所合并的预读指令数量与该指令中的寄存器数量的比值,称为该指令的有效寄存器与全部请求寄存器的占空比。如果占空比小于上述设定值,则合并为一个指令,否则,减少该指令的寄存器个数,直到满足上述比率为止。例如下面的4个MODBUS数据请求指令在有效寄存器占空比为0.3的条件下可以合并为一条指令,如表1、表2所示。表1优化数据请求指令表表2优化后的指令表设备地址01功能号03寄存器起始地址00001寄存器数量0004校验位经过上述处理,可以节省大量的IO时间,很大程度上提高了系统的实时性。3.3根据实时性要求设定不同的采样频率工业现场中往往存在变化很快的IO点,同时也存在一些变化缓慢的IO点,如果对上述两种以不同频率变化的IO点以相同的采样频率进行采样也会造成对IO时间的浪费。这里采用根据系统对不同IO点的需求设定不同采集频率,通过实时数据库周期性地扫描数据字典中每个IO点的前次数据采集时间戳,检测该IO点是否需要再次进行数据采集,如果有需要进行数据采集的IO点,则作为数据请求的发起者,将这些需要进行数据采集的IO点的设备及寄存器等相关信息添加到IOServer的数据请求消息队列,等待IOServer对这些指令进行优化处理。该处理方法本质上仍然是减少数据请求指令,但与前一方法不同,从采样频率的角度出发,减少系统中的数据请求指令。3.4设置带优先级的数据请求消息队列监控系统不仅需要实时显示现场的状态,还需要通过人机界面向现场设备下达控制命令,例如控制开关的开启/关闭,设定反应釜的温度设定值等,这些控制指令通常也作为数据请求指令的一部分发往IOServer,该控制指令同样需要在数据请求队列中等待IOServer处理,如果数据请求队列是先进先出的,那么控制指令只能等待所有排在它前面的指令执行之后才能得到处理,这样就产生系统对控制指令响应迟缓的问题。将IOServer的数据请求消息队列设计成带优先级的队列则可以解决上述问题。IOServer处理数据请求消息队列中的消息时,首先处理优先级最高的,这样就使指令的实时性得到保证。3.5定义完善的数据结构以提高代码效率数据采集的最后一个步骤是数据分发,即将采集到的数据写入实时数据库对应的IO点变量中。如果这个过程中相关数据结构定义不完善,会大大影响系统的效率。因此定义合理的数据结构使分发过程快速地完成也是提高系统实时性的方法之一。4.运行平台应用实例按照上述框架结构设计的工控组态软件运行平台在河北邯郸马头电厂的静电除尘监控系统和大连染料化工责任有限公司发电厂静电除尘监控系统得到了实际应用,下面以河北邯郸马头发电厂为例作以说明。静电除尘系统广泛应用于火力发电厂的烟尘控制项目,河北邯郸马头发电厂静电除车监控系统硬件构成如表3所示。表3河北邯郸马头发电厂静电除车监控系统硬件构成设备地址01功能号03寄存器起始地址00001寄存器数量0001校验位设备地址01功能号03寄存器起始地址00002寄存器数量0001校验位设备地址01功能号03寄存器起始地址00003寄存器数量0001校验位设备地址01功能号03寄存器起始地址00005寄存器数量0001校验位名称数量IO点数通讯方式通讯协议高压控制柜1623RS485MODBUSASCII低压控制柜467RS485OMRONHotLink温度巡检仪48RS485HK-ASP浊度仪10组态时将该项目分成主控制界面、振打电机控制界面、加热器控制界面、排灰电机控制界面、灰斗状态显示界面、数据显示界面。其中IO控制点中有离散量也有模拟量,通过添加变量和变量连接组态,共计640点。工程中用于保存中间计算结果的内存变量780个,加上系统变量共计1450个变量。系统中使用3类设备驱动程序,分别采用MODBUSASCII通讯协议(高压控制柜),OMRONHotLink(低压控制柜),HK-ASP通讯协议。系统数据库使用Access2000,数据保存时间根据用户要求设定为1年。马头电厂静电除尘监控系统运行平台数据如表4所示。表4马头电厂静电除尘监控系统运行平台数据实时数据库更新时间动态数据刷新时间控制命令响应时间画面调用响应时间告警响应时间双机切换时间≤2s≤60ms≤1s≤1.5s≤1.6s≤2s该系统与该厂改造前的专用静电除尘监控软件相比,解决了原有软件在数据报表、数据查询、实时曲线、历史曲线等方面存在的问题,克服了功能单一、稳定性差的缺点。另外,该系统节省了工程人员编写专用系统的重复劳动,缩短了开发周期,为工程人员提供了二次开发能力,扩充了系统的功能,使得本系统更加灵活,适应当前工业现场多种多样的需求。5.结束语工控组态软件是近年来迅速发展的工业控制软件,它的产生在工业控制软件发展过程中具有重要意义。按照上述改进方案所开发出的运行平台有效地提高了系统的实时性,满足了普通工业现场的要求,并证明了这些方法是改善运行平台实时性的有效途径。但该平台在动态数据刷新时间、画面调用响应时间等性能指标上与当前主流工控组态软件相比仍存在一定差距,需要进一步完善和改进。参考文献[1]袁楚明,谌彦,周敬东等.实时多任务工业监控组态软件的研究与开发[J].机械与电子,2004,2:43-46.[2]王琳,喻成,李昌一.实时数据库的现状和发展[J].河北理工学院学报,2003,25(4):93-105.[3]邵惠鹤.企业自动化与信息化的实时软件平台与实时数据库[J].自动化博览,2003,9:1-5.[4]贾宏宇,施仁.大型通用工控软件设计研究[J].信息与控制,2001,30(1):30-35.[5]罗士鉴,朱上上,孙守迁.人机界面设计[J].北京:机械工业出版社,2002,8:3-15.----------------------------------------------------------------------------------------------------------------------作者简介:郝旭伟(1980-),男,汉,郑州师范高等专科学校,助教,在职研究生,研究方向:电子信息。郝英立(1977-),男,汉,大连理工大学自动化系,硕士研究生,研究方向为:控制理论与控制工程。仲崇权,男,教授,硕士生导师,主要从事信号检测、智能控制的研究及教学工作。张利,男,博士后,副教授,硕士生导师,主要从事移动网络安全攻防策略的研究及教学工作。-----------------------------------

1 / 4
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功