《电子技术应用》
您所在的位置:首页 > 其他 > 业界动态 > 基于面向对象的工业自动化监控系统设计技术

基于面向对象的工业自动化监控系统设计技术

2008-06-24
作者:文俊浩1, 袁晓辉2, 余

  摘 要: 基于对面向对象" title="面向对象">面向对象技术在软件开发领域的优势分析,结合Wonderware IAS平台软件和工程经验,提出了在工业自动化" title="工业自动化">工业自动化领域采用面向对象技术" title="面向对象技术">面向对象技术进行系统设计的基本方法,并对实现的关键技术作了深入论述。工程应用效果表明,该系统设计技术是可行和有效的,有工程推广价值。
  关键词: 面向对象技术 SCADA 软件平台 IAS


  在工业自动化软件设计领域,系统分析与设计是一项系统性、实用性十分强的工作。二十世纪90 年代以前,系统分析的传统方法是采用从上到下的顺序结构化方法。该方法强调数据实体属性,但不强调其功能、方法(操作)。其后,面向对象方法成为软件设计的一种趋势[1]。作为一种认识事物的新方法,面向对象是将问题空间解的概念模拟人类的自然思维,直接映射到软件的解空间,从而使人们分析问题、求解问题的过程与软件开发过程保持一致。面向对象是把系统看作一个通过对象相互影响的集合体,它的每个对象都有行为,通过这些行为(方法)使类对象之间进行交互。面向对象方法包括封装性、继承性、多态性等特点,这些特点使面向对象方法具有良好的应用前景[2]。正是由于面向对象思想的诸多优势,使面向对象的技术在软件领域得到迅速发展,目前面向对象思想贯穿软件的分析、设计、测试等各个环节。
1 工业自动化控制系统" title="控制系统">控制系统中应用面向对象技术的现状
  在工业自动化领域,很多控制对象同样具有面向对象技术中的“对象”属性,也引起了人们的注意,控制工程师和控制软件开发人员也试图将面向对象的技术应用到工业自动化领域,但目前基本上仍停留在针对某个控制系统的软件设计和控制软件的软件设计中,例如面向对象方法在轧钢控制系统中的运用[3]、工业控制软件的面向对象开发技术[4]、采用面向对象的程序设计方法实现PLC在原料输送系统中的控制[5]等。这些都说明面向对象的技术可以应用在工业自动化领域,可以将面向对象技术应用到控制系统的整体系统设计,而不是简单地停留在某个具体的软件设计中。这就涉及到一个嵌入面向对象技术的工业自动化软件平台的问题。目前,美国Wonderware公司提供的Wonderware Industrial Application Server就是一种面向对象的平台软件系统。由于面向对象的设计方法与原来的控制系统设计思想的不同,如何在该工业自动化软件平台上进行控制系统的设计是值得深入研究的。
2 一种嵌入面向对象技术的工业自动化监控系统" title="监控系统">监控系统软件平台—Wonderware IAS
  1999年,作为工业自动化领域领先的软件解决方案供应商,美国Wonderware公司在全球推出了新的工业自动化软件架构——ArchestrA(简称A2),并在其核心工厂套装软件FactorySuite 2000中全线应用,从而形成了新的套件系统——Wonderware FactorySuite A2。在该套装软件中,新推出了一款嵌入面向对象技术的新产品——Wonderware Industrial Application Server。该产品充分发挥了面向对象的技术优势,提供了供自动化工程师选择使用的多个基础模板,将程序中的面向对象技术屏蔽掉,只需要经过客户化的配置以及扩展即可以满足工业自动化系统的设计和规划工作,从而使工程师从简单、复杂、耗时的程序模块中解放出来,将主要的精力集中在系统控制模型以及控制算法上,大大缩短了工业自动化系统的设计和上线时间,并提高了系统的重用性。该系统具有良好的可伸缩性或扩展性,支持小到1个平台几百个点、大到400个平台和1000000点数据的工业自动化系统,系统随时间推移而增值;同时该系统具有良好的集成性,可以激活目前企业现存的控制系统,延长项目的生命周期。而从整体上提高了系统建设的投资回报率。
3 基于Wonderware IAS系统平台的开发技术
  传统的面向功能的设计方法集中在控制系统的局部,围绕某个功能实现,而在嵌入面向对象技术的自动化软件平台Wonderware Industrial Application Server上,采用面向对象思想设计监控系统,充分发挥面向对象技术的封装性、继承性的优势,同时采用抽象对象的方法看待整个监控系统的组成。一般采用如下步骤设计:
  (1) 收集设备对象和功能需求
  在采用面向对象进行软件系统设计时,通常要分析该软件系统涉及的对象以及对象的属性和功能,便于系统类的设计。在采用面向对象的自动化监控系统设计中,同样要了解系统中的设备对象以及相关的功能需求,便于系统总体模板的设计。例如在某控制系统中要使用到很多的电动阀门,阀门就有输入/输出控制点,有些阀门还有开度等属性,这些都是要收集的数据。该阶段收集设备对象和功能需求参考表格如表1[6]所示。


  其中属性、功能完全一致的可以归纳成一种设备。通过搜集归纳系统中使用的设备属性和功能需求,可以为抽象对象和设计模板提供参考依据。
  (2) 抽象对象设计模版
  Wonderware IAS针对工业自动化系统对象的类型及特点,提供了相应的基础应用模版,其中包括$AnalogDevice、$Boolean、$DiscreteDevice、$Double、$Float、$Integer、 $String等;还有相关的通讯模版,包括$DDESuiteLinkClient、$OPCClient、$InTouchProxy等;以及系统模版,包括$Platform、$Engine、$Area。这些模版充分利用了面向对象技术中的封装性,把一个对象的所有数据和对数据的操作封装在该模版中,并提供一种机制, 使对象内的私有数据具有其私有的操作;同时提高了模版的可重用性, 使人们在开发新系统时减少重复工作。在这些模版中提供了自动化监控系统的基本信息描述、IO通讯、功能脚本、用户自定义属性(UDA)、功能属性扩展、警报和历史纪录等功能。
  通过对设备对象和功能需求的分析,找出同类型设备的共同属性和相同的功能,就可以抽象出系统的部分应用模版。这些应用模版可以利用面向对象的继承性特点,从基础模版派生出来,再添加一些个性化的要求即可。在该设计部分,包括应用基础模版设计和对象结构设计。其中对象结构的设计是根据对象的属性特点来设计对象的层次,例如一个锅炉对象,可能包括液位对象、温度对象、压力对象以及阀门对象等。
  (3) 设计区域模型
  监控系统里所涉及到的应用模版设计完成后,就要根据实际系统需要生成实例(instance),并设计系统的区域模型。区域模型是应用的逻辑组合,表明系统的实际层次结构。这些模型可基于物理位置、执行的动作或用户能够设想出的其它任何逻辑参数。区域结构的深度没有限制。例如工厂被分成3个子区域:InTake、生产过程和Dispatch。生产过程区域又被细分成生产线1和生产线2两个区域,如图1所示。


  此外工厂模型在项目中增加了关键的结构,针对部署、执行以及报警提供了一种对象分组机制。
  (4) 设计安全模型
  工业自动化监控系统是对控制现场信息的在线监测和交互控制,需要对不同的操作人员实施不同的操作授权,例如系统管理员可以实施全系列的系统维护和配置更改操作,系统工程师可以实现局部控制系统的配置,一般工程师可以实现某个设备的交互控制,现场值班人员只可以监控画面,不能实施任何的控制动作等。这些就要求监控系统拥有良好的安全控制策略,不但要对配置界面的操作进行控制,而且需要单独对某个对象的控制授权。而传统的监控系统开发中,都是通过使用简单的脚本语言在控制对象上实现简单授权,由于操作人员分工不同,需要更好、更稳定、更易维护的安全策略。同时一些监控系统还要求与现有操作系统的控制策略实现良好的集成。
  在操作系统中是通过组、角色、用户的概念实施安全策略的。这种安全策略维护方便,便于理解,便于实现复杂的安全授权,因此是一个良好的安全策略。
  Wonderware IAS提供了三种安全策略供选择,分别是Galaxy、OS User based、OS Group based。其中Galaxy是独立于操作系统的一种安全策略。OS User based和OS Group based是可以与操作系统集成的安全策略。三种安全策略都可以控制单独的对象层次。至于对象中的属性部分,又提供了Read Only、Operate、Tune、Secured Write、Verified Write和Configure六种安全选项。
  通过对对象级以及属性级两种层次的安全设定,可以完全满足工业自动化监控系统对安全策略的需求,而且维护方便、扩展性好。
  (5) 系统部署设计
  由于Wonderware IAS系统是一个全分布式的系统,通过开发环境,可以将不同的对象部署到不同的计算机上运行。该分布式系统的层次结构图如图2所示。


  其中一个计算机只能对应一个Platform,一个Platform可以有多个Engine。同样地,一个Engine上可以有多个Area和Object。
  系统部署设计是面向计算机的软件分配设计,在设计过程中要考虑到对象的负荷情况,这些负荷一般是由I/O通讯量以及用户自定义变量的数量等因素综合决定的。通过分析对象的负荷状况,在具体分配时结合计算机的性能实现有效的负载均衡分配, 达到计算机资源有效合理的使用。另外还要根据数据的流向,考虑采集软件的合理分配。如果数据流向比较集中,可以将采集软件分配在一台计算机上;如果数据流向比较分散,可以将采集软件分散分配在不同的计算机上。
4 应用示例
  该面向对象的设计技术在“数字黄河”以及浙江天然气管网监控等方面发挥了重要作用。其中在黄河中下游引黄涵闸远程监控系统中,利用Wonderware IAS实现了对分布在长达700多公里、32个县的黄河中下游沿岸的84座引水涵闸有效地集中控制,整个系统从设计到上线正式运行,仅用了3个月的时间。自系统投运以来,已带来显著的经济和社会效益[7]
  同样,在浙江天然气管线监控系统中,采用以Industrial Application Server为核心的SCADA解决方案,用以构建站控系统SCADA中心的软件架构和各种应用,为浙江天然气管网未来10年建设超过1400公里提供了极为理想的软件平台[8]
  Wonderware IAS充分利用了面向对象技术中的封装性、继承性以及多态性的特点,将面向对象技术和思想引入到自动化监控系统的整体设计中,大大节省了系统开发时间,加快了系统的上线时间,延长了系统的生命周期。文中提出了基于Wonderware IAS的工业自动化面向对象系统设计的基本方法,并通过工程示例证明了该方法在工程领域的应用效果,具有很好的工程推广价值。
参考文献
1 John W. Satzinger,Robert B. Jacon. System Analysis and Design in a Changing World[M].北京:机械工业出版社,2002
2 文汉云. 面向对象方法在化工过程控制系统设计中的应用研究[J]. 计算机应用,2000;(5):33~35.
3 蒲光明,陈雪波. 面向对象方法在轧钢控制系统中的运用[J]. 冶金自动化,2003;(6):71~72
4 陈 曦,姚普光.工业控制软件的面向对象开发技术[J].河北工业大学学报,1998;27(2):107~113
5 王冲轮.采用面向对象的程序设计方法实现PLC在原料输送系统中的控制[J].工业控制计算机,2004;17(10):13,60
6 Wonderware. Wonderware FactorySuite A2TM Deployment Guide[EB/OL]. http://www.wonderware.com
7 Wonderware. Wonderware ArchestrA 技术在黄河下游引黄涵闸远程监控系统的应用 [EB/OL].http://www.won-der-ware.com.cn/details/solutiondetail2.asp
8 Wonderware. SCADA解决方案在浙江天然气管线监控系统中的应用 [EB/OL].http://www.wonderware.com.cn/details/solutiondetail.asp?id=203

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。