(机械电子工程专业论文)基于高级扩展petri网的控制系统设计.pdf_第1页
(机械电子工程专业论文)基于高级扩展petri网的控制系统设计.pdf_第2页
(机械电子工程专业论文)基于高级扩展petri网的控制系统设计.pdf_第3页
(机械电子工程专业论文)基于高级扩展petri网的控制系统设计.pdf_第4页
(机械电子工程专业论文)基于高级扩展petri网的控制系统设计.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

(机械电子工程专业论文)基于高级扩展petri网的控制系统设计.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于高级扩展p e 埘网控制系统设计 摘要 离散事件控制系统f 在成为软件密集型系统,其设计是项耗时耗力的工作为 了解决现代控制系统的规模越来越大,柔性要求越来越高,所导致的控制软件的编制 和调试越来越难的问题,) 本文主要探讨了基于一种高级扩展p e t r i 网的控制系统设计 理论首先为了解决一般p e t r i 网模型的复杂性问题,文中提出了o o p n 理论接 着文中提出了用于离散事件控制系统设计的e o o p n 理论,研究了基于c + + 语言的控 制系统程序自动生成理论和方法然后通过对工程实例立体停车库控制系统进行 e o o p n 建模,详细讨论了基于e o o p n 的控制系统设计过程最后文中介绍了基于 e o o p n 的控制系统丌发平台的设计思想作者通过对以上各方面作一系列深入研 究,力图为离散事件控制系统设计指明一条新的途径、 关键词:离散事件控制系统e o o p n :程序自动生成 基于高级扩展p e n i 网控制系统设计 2 a b s t r a c t ad i s c r e t ee v e n tc o n t r o ls y s t e mi sg o i n gt ob eas o f t w a r e - i n t e n s i v es y s t e m ,a n di t s d e s i g ni s ac o s t l y , t i m e - c o n s u m i n g ,t r o u b l e s o m e ,a n db o r i n gt a s k t h er e q u i r e m e n to f c o n t r o ls y s t e ms p e c i f i c a t i o nc o n s t a n t l ya n dd i v e r s e l yc h a n g e sw h i c hr e s u l t si nt h e p r o b l e m t h a tt h ec o n t r o ls o f t w a r ei sh a r dt op r o g r a ma n dt e s t i no r d e rt od e a lw i t h t h ep r o b l e m ,t h et h e o r yo fc o n t r o ls y s t e md e s i g nb a s e dah i g hl e v e le x t e n d e dp e t r in e t i sd i s c u s s e di nt h i sp a p e r f i r s t l y , o o p nt h e o r yi sp r e s e n t e dt or e d u c et h ec o m p l e x i o n o ft h ep e t r in e tm o d e l t h e n ,e o o p nt h e o r yi s p r e s e n t e df o rt h ed e s i g no ft h e d i s c r e t ee v e n tc o n t r o ls y s t e m ,a n dt h et h e o r ya n dt h em e t h o d so ft h ec o n t r o ls y s t e m a u t o m a t i cc o d e g e n e r a t i o n b a s e do n c + + l a n g u a g e a r e i n v e s t i g a t e d e o o p n m o d e l i n gi sa p p l i e dt oa ne n g i n e e r i n ge x a m p l e ,ac i r c u l a ra n dm e c h a n i c a lc a r - h o u s e d e v e l o p e db yo u rr e s e a r c hg r o u p ,a n dt h ep r o c e s s o ft h ec o n t r o ls y s t e md e s i g ni s d i s c u s s e di nd e t a i l f i n a l l y , t h ei d e ao ft h ec o n t r o ls y s t e mp l a t f o r mb a s e do ne o o p n i sb r i e f l yg i v e n t h ea u t h o rd e v o t e sh i m s e l ft om a k i n gs o m ei n v e s t i g a t i o n sd e e p l yo n t h et h e o r ym e n t i o n e da b o v e ,a n da t t e m p t st od e n o t enn e ww a yf o rt h ed e s i g no ft h e c o n t r o ls y s t e m k e y w o r d s :d i s c r e t ee v e n tc o n t r o ls y s t e me o o p na u t o m a t i cc o d eg e n e r a t i o n 第一章绪论 第一章绪论 1 1 研究背景 制造业水平直接影响到一个国家在世界市场的竞争能力,如何适应动态多变 的市场特征,以最快的上市速度、最好的质量、最低的成本和最优的服务来满足不 同客户的需求,从而提高其竞争力已成为制造业的研究热点据估计,工业化国家 约7 0 8 0 的物质财富来自制造业,因此,很多国家,特别是美国等一些发达 国家,把制定制造业发展战略列为重中之重美国认为制造业不仅是一个国家国 民经济的支柱,而且对其经济和政治的领导地位也有着决定性影响美国国防部 的一份报告指出,要重振美国经济雄风,要在下一个世纪全球经济中继续保持美 国经济霸主地位,必须大力重振制造业可见,制造业对一个国家的经济地位和 政治地位具有至关重要的影响,在2 l 世纪的工业生产中具有决定性的地位与作 用 随着中国加入w t o ,越来越多的国外半导体制造等大型高科技企业开始将 资金大量转移到中国在中国建立产品制造工厂这势必会对国内企业带来极大 的挑战,而从技术上来讲,也势必给国内制造业带来一次技术上的发展和飞跃由 于国内外市场竞争加剧,科学技术发展迅速,产品更新换代速度加快及人们对产 品多样化的需求增加,使得机械制造业向多品种小批量生产方式发展为适应这 种情况的变化,欧美很多国家国开展了大量的对策研究随着计算机技术的突飞 猛进,计算机在自动制造系统中得到了深入广泛的应用,许多新观点、新思想、 新概念相继被提出,先后出现许多先进制造技术与系统,例如柔性制造系统( f m s , f l e x i b l em a n u f a c t u r i n gs y s t e m ) 、计算机集成制造系统( c i m s ,c o m p u t e r i n t e g r a t i o n m a n u f a c t u r i n gs y s t e m ) 、并行工程( c z ,c o n c u r r e n t e n g i n e e r i n 曲、独立制造岛、精 良生产( l p l e a np r o d u c t i o n ) 、智能制造系统( i m s ,i n t e l l i g e n tm a n u f a c t u r i n g s y s t e m ) 、敏捷制造系统( a m s ,a g i l em a n u f a c t u r i n gs y s t e m ) 、生物制造系统( b m s , b i o n i c m a n u f a c t u r i n gs y s t e m ) 、合弄制造系统( h m s ,h o l o n o m i cm a n u f a c t u r i n g s y s t e m ) 、全能制造系统、全球制造系统、虚拟制造系统( v m s ,v i r t u a lm a n u f a c t u r i n g s y s t e m ) 等制造业在经历了少品种小批量,少品种大批量的生产模式后,正在向 多品种、小批量、单件化、柔性化,生产周期大幅度缩短的生产模式过渡2 l 世 纪制造业的研究重点和发展趋势是“智能化、集成化、柔性化、网络化、全球化、 精密化、信息化、知识化”【l l 2 1 l a l 4 l s l l 6 】 与此同时,生产过程中的安全性,可靠性等日益繁多,错综复杂的要求也相 应地要由系统的控制软件来实现和满足事实上,制造业中这些复杂的自动化系 2 基于高级扩展p e t r i 网的控制系统设计 统正在成为软件密集型系统,相对于这些系统的建立和维护来说,系统控制软件 的研制和生产更是一项异常艰巨和复杂的任务同时现有各种控制软件的设计方 法有许多缺陷与不足,导致研制周期过长,调试困难,增加了设计和研制费用以 p l c ( p r o g r a m m a b l el o g i cc o n t r o l l e r ) 为例,现有工业自动化系统的9 0 是由p l c 控制实现的【7 】目前广泛使用的p l c 程序设计语言是梯形图l l d ( l a d d e rl o g i c d i a g r a m ) p l c 程序设计的梯形图方法为早期p l c 技术的推广和应用立下了汗马 功劳,但随着p l c 应用的不断深入和广泛,也显示出了梯形图的许多缺陷与不足 主要有: 1 目前尚没有一种和梯形图一样具有系统而有效的设计方法,大多数应用程 序都是凭直觉来设计( d e s i g n e db yi n t u i t i o n ) 的,过分地依赖于设计人员的技巧 和经验【8 】 2 梯形图程序的正确性在系统的初始设计阶段极难验证【9 】 3 由于梯形图要考虑p l c 输入的所有可能组合,梯形图往往变得十分复杂, 当发现有问题,如传感器故障和软件上的错误时,要找到问题的起因是十分困难 的1 1 0 1 4 当控制规格说明( 控制要求) 发生较小的变化时,会引起梯形图较大的变 化给系统的维护带来了很大的困难i l l l 5 对于控制系统的高效和安全性而言,正常操作之外的异常情况处理和故障 校f 十分重要有人曾研究过,在一个有机器人的环境中,处理传感器故障的程 序约占机器人任务的8 0 :在一个简单的生产过程中,用于自动故障校j 下的程序 约占整个系统控制程序的9 0 而对于工程设计人员来说,由于无法给出详尽而 j 下确的控制规格说明,对于异常情况处理和故障校正这部分控制程序,则只能依 靠反复的人工试凑来进行设计,其效率之低,有时令人无法忍受1 1 2 1 6 由于梯形图设计的所有环节均由人工完成。使得其设计过程十分繁琐,效 率低下极易出错,纠正困难,难以调试,大大延长了软件的生产周期i l a 】 而梯形图的种种缺陷与不足在自动化程度极高的制造业中却表现得异常突 出i c 制造无论在技术方面还是在生产工艺方面都要比传统的制造业复杂得多 【7 1 7 例如,生产一片4 兆字节动态随机存储器需要在7 0 多种机器设备上完成5 0 0 多个工步,可以想象其控制程序的复杂性1 1 4 1 事实上,当梯形图少于1 0 0 个回 路( r u n g ) 时,其设计和确认较为容易但对于稍稍复杂的自动化系统,其梯形 图很容易达到1 0 0 0 个回路或更多,这时对这样一个程序的设计,确认,纠错和跟 踪已相当困难 i s l 近年来工业控制计算机在生产过程控制中也得到了日益广泛的应用根据美 国市场信息公司的调查,1 9 9 5 年工控机的销售额增长率为1 4 9 ,直逼p l c 的 1 5 9 的增长率汽车工业一向被认为是自动化的先驱,1 9 9 4 年,美国通用汽车 第一章绪论 公司将一种x y c o m 的工控机产品用在了加拿大的w i n d s o r 工厂一条最大的传输线 上,以替换8 0 0 台在役的p l c 而基于工业控制计算机的软件编程语言主要有c , c + + 和类l l d 等 计算机网络、因特网( i n t e m e t ) 、虚拟网络、企业网络的引入又使自动化系统 与工业控制系统从体系结构,控制方法,人机协作方法等各方面都发生了重大的 变化,这不仅带来了许多好处,同时也带来了一些难题对于复杂的控制系统来说 编程语言的设计,编程和调试是一些非常耗时的工作此外一旦控制系统功能需 求的变更,控制软件的修改和重调试也都是非常耗时和易错的 因此生产过程控制软件程序设计理论与方法的研究已经成为一个无法让人 回避的战略性课题 1 2研究意义 基于p e t t l i 网( p n p e t r in e t ) 理论提出了一种面向对象p e t r i 网 ( o o p n o b j e c t o r i e n t e dp e t r in e t ) ,和扩展面向对象p e r r i 网( e o o p n e x t e n d e d o b j e c t o r i e n t e dp e t r in e t ) ,研究基于p l c 和工业控制计算机( i p c i n d u s t r i a lp e r s o n a l c o m p u t e r ) 的离散生产过程控制系统建模,和梯形图,c 或c + + 的控制程序等的 代码自动生成理论和方法,以及离散过程控制系统开发平台设计 并行工程已经成为工厂自动化方面的一个热点,当今计算机科学与技术领域 中重要研究课题之一近年来,又掀起了l p 和a m 的热潮业界有资料认为: l p 会真正改变世界的生产和经济形式,对人类社会产生深远的影响a m 将使美 国在2 0 0 6 年以前重新恢复其在制造业的领导地位,还将在2 1 世纪的竞争中占主 导地位由于现代的生产过程控制系统的规模越来越大,其控制过程的并发单元 越来越多这样将引起软件设计的复杂性急剧增大,采用人工或传统的方法越来 越难以胜任所以生产过程控制的控制软件的并发性问题就显得尤为重要了而 传统的设计方法和设计语言都只适合于顺序控制器的设计如,目前在p l c 比较 常用的设计语言,梯形图,只能用于顺序控制器设计而一般的离散控制系统均 是并发行为,若要实现其功能,通常的做法都是由某一种特定的顺序过程来强制 代替并发过程g r a f c e t 也是一种图形化用于p l c 设计语言,尽管也适合并行 控制器,可是对g r a f c e t 的所建模型的分析方法却显得很笨拙 f 1 9 1 1 2 0 1 1 2 1 1 1 2 2 1 所以,生产过程控制的控制软件的并发性问题就显得尤为重要 了研究一种生产过程控制软件设计的规格说明,建模模拟和性能评价的新方 法,以便更容易描述和实现系统的并发,竞争及其同步等机制并把设计人员从繁 琐的反复调试中解脱出来 基于p e t r i 网的是非常有前途的 2 3 1 , 2 4 1 , 2 s l , 2 6 1 , 2 7 1 和 2 s 1 本文所提出基 4 基于高级扩展p e t r i 网的控制系统设计 于p n 的e o o p n 理论力求把人们从复杂控制系统的设计,模拟,性能评价,编 程和最终调试的繁琐工作中解放出来,并且提高控制系统柔性,提前发现前期的 设计错误,缩短控制系统设计周期,从而提高生产效率而且,现代的控制系统 和柔性制造系统的生产模式朝着多品种、小批量、单件化、柔性化、生产周期大 幅度缩短等方向发展,功能需求是多变的,急需一个柔性好的建模理论以满足生 产线多变和产品多样化的要求 1 3 本论文的主要工作 分析了p n 理论在离散事件控制系统中的应用特点,提出了o o p n 和e o o p n 理论,并以工程实例一立体停车库系统为例,用e o o p n 进行建模和分析,以及程 序自动生成,探讨了基于e o o p n 的控制系统建模与程序自动生成的理论与方法, 并对基于e o o p n 理论的离散事件控制系统开发平台的设计进行了研究文中提 出的主要理论和完成的主要工作如下: 提出了o o p n ,并给出了o o p n 的定义,结构和运行规则然后对用 o o p n 建模的方法进行了分析,并介绍了o o p n 建模的一些例子和应用: 在o o p n 的基础上对其进行扩展,提出了e o o p n ,并给出了e o o p n 的定义和运行规则,并对所扩展的属性进行了详细的解释和说明对每 个属。| 生的后台数据结构支撑给出了详细的描述,然后对用e o o p n 建模 的方法进行了分析: 研究了基于e o o p n 的程序自动生成技术,首先分析了e o o p n 模型 结构与程序结构之间的对应关系e o o p n 各个属性到程序上的映射,以 及e o o p n 数据结构定义,摄后对基于e o o p n 的程序自动生成策略给出 了详细的阐述并给出了程序自动生成算法 以立体停车库系统为工程对象,设计了立体停车库系统的主要模块存 车模块和取车模块的e o o p n 模型 研究了基于e o o p n 理论的离散事件控制系统开发平台的软件框架, 并初步设计了开发平台的部分模块 总之全文结合e o o p n 在控制系统中的应用,从控制系统的模型分析提出了 一系列理论,并结合工程实例,得到了一定的成果相信这一工作对控制系统的分 析评价和程序设计都是有益的e o o p n 是基于p n 理论,而国际上正在讨论和 研究推广p n 在各领域的应用,并且p n 理论有着坚实的数学理论基础所以完 全有理由相信e o o p n 的应用前景是光明的限于时间,条件和个人的认识,文 中很多方面一定有所欠缺,恳请指正 第二章预备知识 第2 章预备知识 2 1 p e t r i 网【2 9 11 3 0 11 3 1 1 2 1 l p n 的定义 p n 是一个五元组p n = ( p ,t ,i ,0 ,m o ) ,其中: 1 p 是库所( p l a c e ) 的有限集合,用圆圈表示 2 t 是变迁( t r a n s i t i o n ) 的有限集合,用粗线表示,p u t 审且p n t _ 中 3 i :p t n 是指明从库所到变迁的弧的输入函数,其中n 是非负整数 的集合 4 o :t p n 是指明从变迁到库所的弧的输出函数 5 m 0 :p n 是初始标识,它的第i 个元素表示第i 个库所含有标记( t o k e n ) 的数目,用实心圆点表示 一般来说,库所用于表示状态( 真假) ,资源是否可用或过程的情态如一 部机器正在处理一个零件变迁用于表示事件,行为的开始和结束库所变迁 和定义了从库所到变迁或从变迁到库所的弧线的输入输出函数构成p n 的结 构p n 的状态是由它的标识决定的一个标识是- - i p i 维向量,它的第i 个元素表 示第i 个库所的t o k e n 的数目t o k e n 将沿着输入输出弧在库所与库所之间移 动t o k e n 流是由变迁的发射决定的为了模拟系统的动态行为p n 中的标识是 根据变迁的发射规则而改变的 2 12 变迁的发射规则 p e t r i 网的运行由网中的t o k e n 的数目和分布情况来控制t o k e n 留驻在库所 里而控制着变迁的运行一个p e t r i 网是由变迁的发射( f i r i n g ) 来运行的一个变迁 的发射,即是从它的各个输入库所移走t o k e n ,而将产生的新的t o k e n 分配到它 的各个输出库所中 一个变迁只有当它使能时才可以发射当一个变迁的每一个输入库所罩 t o k e n 的个数不少于从这个输入库所到变迁的弧的条数( 或从这个输入库所到变 迁弧的权) 时称这个变迁是使能的显然,多重输入弧( 弧的权大于1 ) 需要 多个t o k e n 为了使能一个变迁各输入库所里的t o k e n 的总体,就是使能这个 变迁的t o k e n 所以变迁的使能规则: t t 是使能的当且仅当m ( p ) 1 0 ,t ) ,可p p 其中i ( p ,t ) 是从p 到t 弧的 权 一个变迁发射,意味着从它的各个输入库所中移走使能该变迁的t o k e n ,而 向它的各个输出库所加入t o k e n ,其数量等于从这个变迁到各输出库所的弧的条 6 基于高级扩展p e t r i 网的控制系统设计 数( 或权) ,即多重弧( 权大于1 ) 输出多个t o k e n 譬如,对于一个变迁t 3 ,如 果i ( t 3 ) = p 2 - 而o ( t 3 ) = p 7 ,p l ,且i ( p 2 ,t 3 ) = l ,o ( t 3 ,p t ) = 1 ,o ( t 3 ,p 1 ) = 1 当p 2 中至少有一个t o k e n 时,t 3 是使能的;发射t 3 ,即从p 2 中减少一个t o k e n ,而p 7 和p i 各自增加一个t o k e n p 2 中多余的t o k e n 不因发射t 3 而受影响( 当然,它们 可以使能b 而进行另一次发射) 发射一个变迁,一般地会把一个p e t r i 网标识m 改变为一个新的标识m ,由 于只有使能的变迁才可以发射,每一个库所中的t o k e n 数总是保持非负的当一 个库所中不含有足够的t o k e n 时,不能试图从这个位置“移走”t o k e n 来发射一 个变迁如果某个变迁有一个输入库所不含有足够的t o k e n ,则这个变迁便不是 使能的,因而不能发射所以,变迁的发射规则可表示为: 若t 发射前的标识为m7 ,发射后的标识为m ,则: m ( p ) 2 m ( p ) + 0 ( t ,p ) 一i ( p ,t ) tv p p 其中,i ( p ,t ) 是从p 到t 弧的权o ( p ,t ) 是从t 到p 弧的权 2 1 3p n 的例子 作为一个例子,考察图2 1 中带有初始标识的p e r t i 网在此标识下,有3 个 变迁是t i ,t 3 和t 4 使能的,变迁t 2 不是使能的。因为它的输入库所p 2 和p 3 中没有 t o k e n 由于t 【,t 3 和t 4 都是使能的,它们当中的任一个都可以发射如果发射t 4 , 便从它的每一个输入库所中移走该输入弧的权个t o k e n 使它的每一个输出库所 的输出弧的权个t o k e n ,即从p 5 中移走一个t o k e n 在p 3 中加入一个t o k e n ,使 库所p 4 的t o k e n 的个数从2 增加到3 这样产生的新的标识就如图2 2 所示 d 3 图2 ip n 的一个例子 在p e t r i 网图2 2 中,只有t l 和t 3 是使能的发射t l 将从p l 中移走一个t o k e n , 而使p 2 ,p 3 和p 4 增加t o k e n ( 因为t 1 到p 4 输出弧的权是2 ,p 4 中的t o k e n 数应增 加2 个) 这便产生了图2 _ 3 中的新标识在这个带新标识的p e t r i 网中,变迁t 2 和t 3 是使能的,发射t 3 又产生另一个新的如图2 4 所示的标识即从p 4 中移走两 个t o k e n ,而在库所p 5 中加入一个t o k e n 第二章预备知识 了 幽2 , 2 从图2 1 的p e t r i 网发射b 而产生的标识 p 3 图2 3 从图2 2 的p e t r i 网发射t 1 而产生的标识 p 3 图2 4 从图2 3 的p e t r i 网发射t 3 产生的标识 只要网中至少有一个使能的变迁,发射就可以继续下去当出现没有一个变迁是 使能的情况时,运行停止 2 2 面向对象概念 3 2 3 3 3 4 。q一忭) p 声苎王壹塑芏墨生塑旦塑塑型墨竺堡盐 面向对象的方法早在2 0 世纪6 0 年代就在实验室中提出了最早的面向对象 软件是1 9 6 6 年开发的s i m u l ai ,它首次提出了模拟人类的思维方法,把数据和 相关的操作集成在一起的思想面向对象的程序设计方法的出现和广泛应用是计 算机软件发展过程中的一个重大变革和飞跃相对于以前的程序设计方法,面向 对象技术能够更好地适应当今软件开发在规模、复杂性、可靠性、质量和效率上 的种种需求因而被越来越多地推广和使用,其方法本身也在诸多实践的检验和 磨练中r 趋成熟化、标准化和体系化,逐渐成为目前公认的主流程序设计方法 2 2 1 面向对象设计的基本概念 面向对象设计中包括了对象、类和方法等基本概念 对象的概念到底是什么呢? 实际上,面向对象技术中的对象就是现实世界中 的某个具体的物理实体在计算机逻辑中的映射和体现在面向对象的系统中,对 象是基本的运行时的实体,它既包括了数据( 属性) ,也包括了作用于数据的操作 ( 行为) 所以,一个对象把属性和行为密封为一个整体 对象的严格定义有很多种形式,一般较常见的的定义是其具有以下三种属性 的计算机软件结构:状态、行为和标志其中对象的状态又称为对象的静态属 性,主要指对象内部所包含的各种信息,也就是变量每个对象个体都具有自己 专有的内部变量,这些变量的值表明了对象所处的状态,当对象经过某种操作和 行为而发生状态改变时,具体就体现为它的属性变量的改变对象的行为,又称 为对象的操作,主要表现为对象的动态属性行为的作用是设置或改变对象的状 态,在计算机内部,通过方法来表示行为,方法实际上类似于面向过程程序中的 函数,对象的行为或操作就定义在其方法的内部标志的定义是为了区分不同的 对象,作为每一个对象仅属于自己的唯一标志有时为了简单起见,对象的标志 直接用对象名来表示对象虽然在其他语言中已经使用,但和面向对象语言中仍 有所不同在普通语言中,着重于对象的内部实现,而在面向对象语言中,着重 于对象和外部的通信以及接收到消息如何响应 类是面向对象技术中一个非常重要的概念一个类上定义了一组大体上相似 的对象一个类所包含的方法和数据描述一组对象的共同行为和属性属于类的 某一个对象则称为类的一个实例,是类的一个实例化的结果把一组对象的共同 特点加以抽象并存贮在一个类的能力是面向对象技术最重要的一点是否建立了 丰富的类库是衡量一个面向对象程序设计语言成熟与否的重要标志 面向对象编程的基础构件是对象和类,基本机制是方法、消息和继承性在 用面向对象的方法来解决现实世界问题时,首先将物理存在的实体抽象成概念世 界的抽象数据类型,这个抽象数据类型里面包括了实体中与需要解决的问题相关 的数据和属性;然后再用面向对象的工具将这个抽象数据类型用计算机逻辑表达 第二章预备知识 出来即构造计算机能够理解和处理的类,最后将类实例化就得到了现实世界的 实体的面向对象的映射一对象图2 5 表示了类、对象、实体的相互关系和面向 对象的解题思维方式 实际上,面向对象技术的一个关键设计思想就是要用计算机逻辑来模拟现实 世界的物理存在,即让计算机世界向现实世界靠拢这种思路使得设计人员可以 用更接近于人类的自然思维模式和更接近于现实问题本来面目的方法来设计更接 近于人类自然思维模式和更接近于现实问题本来面目的方法来设计解题模型 幽2 5对象、实体、类2 间的关系图 消息是对象之问进行通信的种构造当一个消息发送给某个对象时,包含 要求接收对象去执行某些活动的信息接收到消息的对象经过解释,然后予以响 应,这种通信机制叫信息传递发送消息的对象不需要知道接收消息的对象如何 对请求予以响应发送一条消息的典型方式:s e n d t o 其中s e n d t o 消息传递通信原语,发送 的消息值在 中,而 则指明了 接受方 2 2 2面向对象设计方法特点 面向对象设计方法有很多不同于传统方法的独特特点,一般比较突出的有抽 象、封装、继承、多态等历史已经表明,如果一种新的方法程序设计范型强烈 地依靠于新的结构体系,又不能有效的解决资源的重用问题,它就不大可能成为 软件产业采用的主流范型面向对象技术设计方法决定了其对体系结构和支撑软 件系统没有突变要求,因而不存在难以重用现有资源的问题 抽象是科学研究中经常使用的一种方法采用数据抽象的方法来构建程序的 类、对象和方法,也是面向对象的软件开发方法的主要特点之一去掉被研究对 0基于高级扩展p c t t i 网的控制系统设计 象中与主旨无关的次要部分,或是暂时不考虑的部分,而仅仅抽取与研究工作有 关的实质性的内容加以考察,这就是抽象在计算机技术的软件开发中所使用的 抽象有两类,一类是过程抽象,另一类是数据抽象过程抽象将整个系统的功能 划分为若干部分,强调功能完成的过程和步骤一股在面向过程的软件开发中的 常见而数据抽象把系统中需要处理的数据和这些数据上的操作结合在一起,根 据功能、性质、作用等因素抽象成不同的抽象数据类型,而每个抽象数据类型即 包含了数据,又包含了针对这些数据的授权操作是一种较过程抽象更为严格, 更为合理的抽象方法 面向对象方法的另一特性就是封装,它与其抽象特性密切相关封装就是利 用抽象数据类型将数据和基于数据的操作封装在一起,数据被保护在抽象数据类 型内部,系统的其他部分只有通过包裹在数据外面的被授权的操作,卅能够与这 个抽象数掘交流和交互封装使得抽象数据类型对内是一个结构完整、可自我管 理、自我平衡、高度集中的整体;对外则是一个功能明确、接口单一、在各种适 合的环境下都能独立工作的有机的单元,因此,面向对象的封装特性使得类和模 块的可重用性大为提高 继承性是面向对象程序设计语言不同于其他语言的最主要特点,使其它语言 ( 如面向过程的语苦) 所没有的继承性是父类和子类之间共享数据和方法的机制, 这是类之间的一种关系,在定义和实现一个类的时候可以在一个已存在的类的 基础上来进行,把这个已存在的类所定义的内容作为自己的内容,并加入若干新 的内容使用继承性的主要优点,是使得程序结构清晰,降低编码和维护的工作 量 多态是指在收到对象时对象要予以响应,不同的对象收到统一消息可以产生 完全不同的结果的一种现象具体到程序中,就是指在程序中同名的不同方法共 存的情况在使用多念的时候用户可以发送一个通用的消息,而实现的细节则 由接收对象自行解决,这样同一消息可以调用不同方法多态的特点大大提高了 程序的抽象程度和简洁性,更重要的是,它最大限度的降低了类和程序模块之间 的耦合性,使得它们不需要了解对方的具体细节,就可以很好地共同工作这个 优点,对程序的设计、开发和维护都有很大的好处 2 - 3p e 仃i 网方法与面向对象设计方法用于系统控制设计和分析 2 3 1两种设计方法的优点分析 现代的工业系统,如制造系统,过程控制系统,通信系统等越来越复杂它 们对开发者提出需要解决的许多难题考虑到现代控制系统的投资密集和复杂性, 为了选取最佳设计方案以及系统的设计和运行策略,需要对系统建模和分析众 兰三童塑墨墅望 坚 所周知,模型的缺陷会严重影响开发的时间和费用这就需要一个很好的建模工 具以动态真实地反映被模拟系统的性能指标,才能更好对被模拟系统进行评价并 预测实际运行效果 p n 理论作为一种图形和数学工具,为离散事件系统的建模,形式分析和设计 提供了一个统一的环境基于p n 的建模方式有以下优点: 1 可表达性,允许通过模块化方法来建模; 2 对行为和事件的建模明确而且清晰: 3 图形化表达,用于用户和设计者之间的接口; 4 有强大的数学理论支持用于分析和证实,这使得可以对建立好的模型进行 仿真; 5 ,p e t r i 网的进一步开发,使得它能用来模拟过程的同步,异步事件,并发过 程,冲突或资源共享等性质这些性质是离散事件系统如工业自动化系统, 通信系统和含有计算机的系统所特有的 在现代制造业工厂中,生产流水线往往都是在原有的基础上升级而柬的,如 何对原有的设备控制程序重用如何在原有的基础上实现无缝地扩展如何能够 很有效的管理这些种类繁多,数量庞大的设备,等等此类问题亟待解决面向对 象技术的优点恰好为其带来了比传统的解决方法更好的解决方案 面向对象技术有以下优点: 1 可重用性可重用性就是指一个软件系统中所开发的模块能够,不仅限于在 这个项目中使用,而是可以重复的适用于其它系统中,从而在多个不同的系 统中发挥作用采用可重用模块来构建程序,首先提高了开发效率缩短了 丌发成本和周期;其次由于采用已被证明为正确有效的模块,使得程序的质 量得到保证,减少了维护工作量i 最后采用可重用模块来够建程序,能提高 程序的标准花程度,符合现代大规模软件开发的需求 2 可扩展性面向对象技术的可扩展性,首先体现在它特别适合使用在快速原 型的软件系统的开发方法中,而这在现代制造系统技术改造中表现尤为突出, 升级的系统只需在原来系统框架的基础上对类做扩充和修改,维护的工作量 和开销大大降低 3 可管理性对于一些大型的自动化流水线,如在i c 制造业,汽车生产车间中 有大量的控制设备,如何管理好这些设备之间错综复杂的关系显然是一个非 常麻烦的工作面向对象的开发方法采用内涵比过程和函数丰富、复杂的多 的类作为构建系统的部件,使整个系统的组织更加合理、方便面向对象开 发中利用类把数据和其上的操作封装在一起,使得仅类本身的有限个方法才 可以操纵、改变这些数据 2 2 2o o p n 和e o o p n 的提出 基于高级扩展p e t r i 网的控制系统设计 但是p n 有个众所周知的问题,就是对于大型系统模型会出现状态组合 爆炸,此外,p n 模型的结构也比较散乱复杂,很难管理而面向对象建模可以 分为两个部分:静态结构建模和系统的动态体建模类图表是用于描述系统结构 的主要技术,也就是类及其关系动态体用诸如状态图消息传递图,对象接1 2 1 图但是用于动态体的技术有两个缺点第一,缺乏像p e t r i 网那样的形式语义第 二,缺乏对并发建模的合适手段因此将p n 和面向对象技术两者结合,便可相 互弥补不足,突出两者的优点基于这些原因,文中首先提出o o p n ( 面向对象 p e t r i 网) ,它结合了p n 和面先对象技术的所有优点这里要申明的是,o o p n 的 提出的目的并非仅是是为了控制系统建模,同样也适台于其它系统建模,它同p n 一样是一种形式化的建模语言但是,现代自动化系统控制的实施装置是可编程 序控制器和工业控制计算机而且这类系统有大量i o 口,尤其是基于工业控制 计算机的控制系统有键盘晌应事件和显示输出,此外还有大量的数据处理有些 数掘处理和控制器本身运作关系不大,但有些数据处理与控制器是息息相关 的o o p n 在这些领域就显不足此外,在研究控制程序的自动生成时,模型罩 还需要包含与控制器有关的数据处理信息所以,本文最终建立了一种基于o o p n 的扩展建模理论e o o p n 以满足控制系统设计的需要,e o o p n 的提出丰富了 o o p n 内涵 由于存在众多不同的建模语言,所以要对所有的语言( 或者对一些重要的语 言) 进行详尽而清楚的比较是困难的这一节不是作出不同建模语言的比较,而 是列出一些可以表明在许多控制系统的设计,规格说明和分析中e o o p n 作为一 种有用建模语言的几个优点应当说明的是,许多建模语言也有以下列出的优点, 并且一些其它的建模语言也有e o o p n 所不具备的更好的优点应当注意,人们 往往对各种形式的扩展p n 所具有的种种优点倍加赞赏,我们并不认为e o o p n 比 其它的语言就优越得多,但我们确实认为e o o p n 在某些领域十分有用的 e o o p n 荐留形麦元方膳直观上图形形式是非常吸引人的它非常容易 理解和掌握甚至对并不是很熟悉e o o p n 理论的人来说也是同样的这是因为 e o o p n 图类似于设计人员和工程人员在构造和分析一个系统时所勾画的非正式 的草图状态,行为和流是许多系统的基础,而这些概念用e o o p n 中库所,变 迁和弧非常生动和直接地表示出来 2 je o o p n 野确清楚越定义7 每一个e o o p n 的行为语义由于南语义上甑 描述_ 唷e 对e o o p n 模型进行模拟的语义也是e o o p n 分析的基础 3 e o o p n 舆有撰赞龙离散事件控制系统采用e o o p n 建模时每一个控制 设备就可将其视为一个类,对每一个控制设备的操作被封装到其对象的内部,这 样整个系统所见模型的结果将非常清晰 4 e d v 其方可莺男拦当对原有的离散控制系统进行升级或扩展时,对 第二章预备知识 有些无需改动的设备只要将其原先建立好的对象模型用在此处即可,而对一些 升级的设备,只需在其原有对象上继承再加以扩展即可形成其新的对象 5 e o o p n 据霹7 ,分最缮7 窥e o o p n 共有三层结构第一层为系统结构层, 即将建立好的各个对象按照系统的工作流程组合起来形成系统控制模型;第二层 为对象层,即各个设备对象模型其中封装了各个设备的控制模型:第三层为方 法层,即各个对象中对每个设备的操作方法的扩展p n 子网模型这同时也意味 着可以构造一个大的e o o p n 模型用定义好的方式互相连接一些较小的e o o p n 模型e o o p n 分层结构的作用类似于程序语言中的程序控制结构,对象和方法采 用了分层结构e o o p n 可以通过容易管理和模块化的方式对一个大系统进行建 模,同时也大大缩小了上层系统的模型 6 e o o p n 是一个通甬盈司臻来箍述不而领域的许多系统e o o p n 啦藏鼹宅 围从非形式系统( 如工作过程的描述) 到形式系统( 如控制系统) 它既可描述软 件( 如分稚式控制算法) 也可描述硬件( 如v l s i ) 最后e o o p n 既可描述有 大量并发过程的系统( 如柔性制造系统) 也可描述没有并发的系统( 如顺序控制 系统) d d 尸的彦摸茏煮很少坦黝 e o o p n 的定义非常简短且依赖于人们已 经知道许多系统模型的算法和编程语言的标准概念这就意味着学习使用e o o p n 是相对容易的此外,少数的元素也意昧着更容易歼发出功能强大的分析工具 8e o o p n 可时钟签和行为拦厅旃勿的描述这是相对于大多数系统描述语 言而占的,它们或者只能描述状态或者只能描述行为但没有两者都能描述的使 用e o o p n ,读者在工作其间很容易改变自己关心的要点在一些时间里可以方 便地集中精力在状态上( 几乎忘了行为) ,然而在另外一些时间里更方便集中精力 在行为上( 几乎忘了状态) 9 。e o o p n 对奏正的并发行为进行语义上擒述两不是一转交替行为这意嘛 着能够用一种非常自然和直接的方法来定义冲突和并发的概念在交替的语义上, 同一步骤不可能有两种行为,这样的并发仅意味着行为是无序地一个接一个发 生从个人观点,一个真正的并发不很容易处理的原因是因为它是较接近人类一 般考虑并发行为的方式 1 0 je o o p n 集戎了控翩帮鼠步的描述积数据处理鹩描述这薏曝亳在一聪警奠 上就能看到环境,使能条件和一个行为的影响是怎样的许多其他的图形描述语 言仅对行为的环境作出描述,其他的细节行为是独立说明的( 通常是用非结构语 言) 1 1 e o o p n 移撼撼棚磊苑的磁小膨芟纪是稿定的这是经过实际经验证明的 并且意味着对被模拟系统微小的修改并不完全改变e o o p n 的结构特别是由 许多描述不同顺序过程的予网合并成的较大的e o o p n 是一样的许多其他描述 1 4 基于高级扩展p e t f i 网的控制系统设计 。一 语言,如有限自动机,诸如这样的合并经常产生一个与原始子描述很难联系起来 的描述 1 2 e o o p n 提供交互式的模拟并把模拟结果直接显示在e o o p n 模型圈 上当完成对一个系统的构造模拟可以对一个大的模型进行调试,类似于个 人编写程序而对程序的各个独立部分进行参数调试可以观察模拟过程中库所和 变迁的数据值 1 3 e o o p n 具舂对控翻系统韵底层和高层的掐述能力强糙显示。绝大多数 自动化系统都是由p l c 或工业控制计算机来实现的一个完整的系统模型必须具 备系统各种层次的描述能力e o o p n 不仅可以描述控制系统的底层,如p l c 和 工业控制计算机的v o 口,各种传感器接口等等此外,还可以描述非0 ,1 值的 数据流,因为e o o p n 中具有对复杂数据格式操作的能力 1 4 基于e o o p n 研究离散控翩系统控钢软徉的设计理论和方法蕴减着十分 雳久的膨寮由于p n 自身的特点,e o o p n 力求是一个严格形式的描述和分析工 具,这样一个信息完备,且具有希望性质的系统模型可以生成一定的程序语言去 控制系统的行为这是基于p n 的方法研究系统控制程序设计的根本目的之一 以上所列出e o o p n 的优点,其他的高级网可能也有类似的优点我们并不 认为e o o p n 比其他的建模语占优越,因为在科技高速发展的今天。不同的基于 p n 高级网在不同的领域各显所长而且

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论