一种面向对象的PLC程序设计方法_第1页
一种面向对象的PLC程序设计方法_第2页
一种面向对象的PLC程序设计方法_第3页
一种面向对象的PLC程序设计方法_第4页
一种面向对象的PLC程序设计方法_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、一种面向对象的PLC程序设计方法1062007,43(21)ComputerEngineeringandApplications计算机工程与应用一种面向对象的PLC程序设计方法张崇明1,2汪春梅,周毅,叶宏ZHANGChong-ming1,2WANGChun-mei,ZHOUYi,YEHong1.上海师范大学机电学院.上海2014182.复旦大学信息学院,上海2004331.SchoolofMechanicalandElectronicEngineering,ShanghaiNormalUniversity,Shanghai201418,China2.SchoolofInformationSc

2、ienceandEngineering,FudanUniversity,Shanghai200433,ChinaE-mail:.anZHANGChong-ming,WANGChun-mei,ZHOUYi,eta1.Object-orienteddesignmethodforPLCprogram.ComputerEn-gineeringandApplications,2007,43(21):106107.Abstract:Tominimizetheinfluenceofexperientialfac0randimprovethequalitycontrolinthed

3、esignphase,withtheaidofobjectorientedanalyseanddesigntheory,anobject-orienteddesignmethodforPLCprogramispresentedasanimprovementonthetraditionalstatebasedmethod.WithUMLtool,classdiagramandstatediagramarechosenrespectivelytodescribethestaticstructureanddynamicbehaviorofthecontrolsystem,andladderdiagr

4、amisacquiredfromstatediagramsubsequently.Withthecombinmionofobject-orientedtechnology,UMLandclassicPLCcontroltechnology,thesoftwarereliabilityofPLCcontrolsystemispromoted,andtheapplicationareaofobject-orientedtechnologyandUMLisextended.Keywords:PLC;object-oriented;UML;statemachine摘要:为了减小经验因素的影响,对设计阶

5、段进行更好的质量控制,借助于面向对象的分析与设计理论,对传统的基于状态转移的PLC程序设计方法进行了改进.提出了一种面向对象的PLC程序设计方法.使用UML建模工具,分别用类图和状态机视图描述控制系统的静态结构和动态行为,进而把状态机视图转化为梯形图.通过把面向对象技术及UML引入传统的PLC控制领域,既提高了PI程序设计的可靠性.也扩展了面向对象技术和UML的应用领域.关键词:可编程控制器:面向对象;统一建模语言;状态机文章编号:10028331(2007)21010602文献标识码:A中图分类号:1P3lll导言可编程控制器是以微处理器为核心的工业控制装置,它将传统的继电器控制与计算机技术

6、结合起来,具有可靠性高,通用灵活,易于编程,使用方便的特点.不同种类的可编程控制器的基本原理相同,多采用梯形图语言编程.在具体应用中,梯形图的设计往往是最主要的问题.梯形图的设计是计算机软件设计与电气控制设计思想相结合的产物.在设计方法上,与计算机软件设计和电气控制设计既有相同点,也有不同点.对于典型的开关量逻辑控制系统.传统的梯形图设计方法包括经验设计法,逻辑设计法和基于状态转移的设计方法等.这些设计方法由于普遍缺乏完善的设计方法学方面的理论基础,都有其各自的局限性和优缺点,所以在设计功能复杂的PLC梯形图逻辑时.往往需要较多地依赖于设计人员的经验和技巧,这就为在设计阶段进行质量控制造成了困

7、难.而在计算机软件领域,面向对象方法学在理论上已经形成完备的体系,在实际应用中已经成为软件设计的主流方法.本文尝试把面向对象理论引入PLC控制领域,把其应用于PLC的软件设计过程,改进设计阶段的质量控制.2面向对象的PLC程序设计的基本原理在面向对象的方法学中,对象是现实世界的实体或概念在计算机逻辑中的抽象表示.对象是具有唯一对象名和固定对外接口的一组属性和操作的集合.用来模拟组成或影响现实世界问题的一个或一组因素.对象的属性表示了它所处的状态,而对象的操作则用来改变对象的状态以达到特定的功能,或者在状态不变的情况下执行一定的动作或活动.面向对象的问题求解,就是力图从实际问题中抽象出这些封装了

8、属性和操作的对象.把面向对象的方法学应用于PLC程序设计,关键是在具体的应用系统中查找和发现对象,然后设计这个对象的属性和操作,对对象的动态行为进行分析.属性对应于PLC系统的传感器等输入部件的状态,操作对应于PLC系统对各种执行器等输出部件状态的控制.统一建模语言(UML)是一种通用的可视化建模语言,广泛应用于面向对象的系统分析和设计过程中.UML包含多种建模方法.其中类图用来描述系统的静态结构,而状态机视图是描述系统的动态行为,即状态与状态转换的有效工具.利用类图和状态机视图可以有效地描述PLC系统的静态结构和动态基金项目:上海市教委青年基金项目(No.04DC31).作者简介:张崇明(1

9、973一),男,讲师,博士生,研究领域为计算机网络及应用,数据挖掘;汪春梅,副教授,博士生;周毅,高级工程师;叶宏,副教授.张崇明,汪春梅,周毅,等:一种面向对象的PLC程序设计方法2007,43(21)107行为.本文使用微软公司的Visio2003为UML建模工具.方法的介绍请参阅文献2lI3lI4】.3面向对象的PLC程序设计步骤和实例下面以一个简单而完整的PLC控制的小型垃圾压缩装置为例.介绍这种面向对象的PLC程序设计方法.这是一个人工控制开关门的半自动压缩装置,其基本工作过程是:装置刚上电时.门处于打开状态;操作人员放人垃圾后关上门,马达驱动压板向下运动.进入垃圾压缩状态;压缩到一

10、定位置,远端限位开关被触发.停止压缩,马达驱动压板向上运动;压板运动到一定位置.近端限位开关被触发,压板停止运动;操作人员打开门取走垃圾整个垃圾压缩装置可以被识别和建模为一个对象.该对象有3个属性:门,远端限位开关,近端限位开关.该对象有2个操作:马达运转,马达方向控制.用UML中的类图表达,如图1所示.垃圾压缩装置一门一远端限位开关一近端限位开关+马达运转()+马达方向控制()图1垃圾压缩装置的类图图1中属性的可能取值为:门(打开,关闭),远端限位开关(触发,未触发),近端限位开关(触发,未触发).根据此装置的工作原理和属性值的不同组合.可以把其工作流程划分为4个状态:初始态.状态1,状态2

11、,状态3.用UML中的状态机视图表达.如图2所示.图2垃圾压缩装置的状态机视图下一步就是根据状态机视图为PLC编写梯形图程序了.以国内常见的Omron公司的CPM2APLC为例.I/O分配参见图2.初始状态和三个工作状态分别用辅助继电器2000020003存储.梯形图程序如图3所示.程序中使用了置位指令SET和复位指令RSET进行状态的切换.有些型号的PLC没有提供置位和复位指令.但都有实现置位和复位指令功能的变通办法.具体实现请参阅相关的技术资料.从本例可见.使用这种面向对象的思路设计PLC软件系统的基本步骤是:识别对象;确定对象的属性和操作.画出类图:根据属性的不同取值和业务流程确定需要的

12、状态数.画出状态机视图:在每个状态下完成确定的操作.根据状态机视图画出梯形图.这种设计方法与传统的基于状态的设计方法有一定相似性,但由于采用了面向对象的思路与技术.所以设计思路更为清晰.设计过程更有章可循.对传统的基于状态的设计20o0o0()Ooo图3垃圾压缩装置的梯形图程序4复杂系统需要解决的问题限于篇幅和确保完整性.上文介绍的例子无论用哪种程序设计方法完成都比较简单.在实际应用中,PLC经常被用在一些复杂的控制系统中.例如在一个PLC控制的柔性制造系统中,同时进行几种不同规格零件的加工.在多个零件的加工过程中.某一个机械手需要同时为不同的加工工序服务,多个加工工序共享同一工位.如果把某一

13、种零件的加工工序建模为一个对象,则该软件系统就包括多个对象.这些对象之间不是孤立的.他们之间存在一定的时序关系和资源竞争.传统的状态机由于缺乏表达对象间层次性和时序关系的能力,并不适合对复杂系统建模.面向对象的分析和设计理论却完全适用于复杂系统.对一个复杂系统建模时.使用面向对象的设计技术.可以用类的继承表达层次关系.构建一个对象树.从而实现对复杂问题的分解.因此.在PLC软件设计中.可以借鉴面向对象的分析和设计理论.引入分层的思想.对于上文柔性制造系统的例子.可以用若干主状态表达不同零件加工工序之间的时序关系,而在一个主状态中设计若干子状态.用子状态表达某种零件的加工工序.假设该柔性制造系统

14、需要加工两种零件.每个零件的加工工序对应一个主状态.可以根据零件的加工优先级和某些传感器等输入部件的状态实现这两个主状态之间的转换.具体如图4所示.图4状态机的分层设计在面向对象的程序设计中.类的某个方法的具体实现往往仍然是采用面向过程的方式.与之类似.使用面向对象的思路设计PLC程序时,在某一个层次的状态内部.也可以使用传统的设计方法.避免因对象树过于庞大和子状态嵌套层次太多而产生新的问题.5结论本文以传统的基于状态转移的PLC程序设计方法为基础,借助于面向对象的分析与设计理论和UML建模工具,提出(下转143页)董涛,余昭平:一种高效的门限多重秘密分享方案2007,43(21)143半.这

15、样可以在不降低协议的安全性的情况下,提高方案的计算速度,而且不用储存任何中间数据,降低了对存储量的要求.(6)方案可以同时分享多个秘密,而且与分享一个秘密时的计算量相当,只是构造的多项式的次数有所增加但对计算量的影响并不大.另外,产生分发给成员的秘密份额的过程不需要成员和分发者之间进行交互计算,简化了方案的组成结构,降低了计算量,提高了方案的执行效率.,对本文的方案同刘方案(文献【9)以及庞方案(文献【10)在计算量和通信量上都做了相应的比较.首先,为了方便叙述,给出一些基本符号描述:C:表示在有限域上做模乘运算的时间;C:表示在有限域上做模指数运算的时间;C:表示在椭圆曲线上做点乘运算的时间

16、;:在椭圆曲线上做点(倍)加运算的时间;C:做双变量单向函数运算的时间;:构造Lagrange插值多项式的时间.并且根据文献111,可以推得不同运算量相对于有限域上模乘法运算量的比较关系如下:C殴舭29C般见CEC2tDD0.12CI眦(240C船见需要指出的是,在我们的方案中,通信量要略大于庞方案表1方案对比结果在庞方案中,他们指出在方案中是用RSA或者ELGamal密码算法对通信消息做认证的.显然最简单的方法就是选择一个大素数域的生成元,对消息m所做的承诺就是gmodn,且一共要对2n+mt一1个消息做认证.对庞方案计算量的统计即是以这种方式的认证和计算双变量单向函数的时间为主的.在刘方案

17、中,对其计算量的统计是根据文献9中的叙述进行2n+3t一1的:总共需要进行次模指数运算和ntn+8t一2次模乘运算(已经忽略了方案中次对大数开方的计算量).由表可知,刘方案的通信量和计算量都很大,而且每次只能分享一个秘密.秘密份额的产生过程需要参与者之间进行四次交互,实现过程比较复杂.我们的方案在通信量上等于庞方案,但在计算量上要优于庞方案,而且庞方案的秘密分配者事先要为每个成员秘密分发一个子秘密,要求存在安全信道来传输这些子秘密,实现这些要求则必然需要更大的计算量和通信量.综上所述,我们方案的通信量要略大于庞方案,但计算量比庞方案小很多.与刘方案相比.我们的方案在通信量和计算量上都具有比较明

18、显的优势.我们的方案不需要秘密分配者事先为每个成员秘密分发一个子秘密,成员的秘密都是由自己选择的,这更符合实际应用情况.更为重要的是,我们的方案不需要安全信道来传输信息,攻击者即使收集到所有中间信息也不能恢复出秘密.4总结本文基于椭圆曲线密码体制以及Shamir门限体制设计了一个门限多重秘密分享方案.并且分析和讨论了其安全性,证明了我们的方案是安全高效的,有效地解决了秘密更新和子秘密复用的问题,可以防止不诚实成员的欺诈,同现有的在线秘密分享方案(如文献【9,【10)相比,方案计算量更小,交互次数更少,结构更加简单,具有一定的实用价值.(收稿日期:2006年11月)参考文献:1SHAMIRA.H

19、owtoshareasecrel:J.ACM,1979,24(11):612-613.2BlakleyGtLSafeguardingcryptographickeysC/ProcAFIPS1979NatlConf.NewYork.1979:313317.3AsmuthC,BloomJ.AmodularapproachtokeysafegrardingJ.IEEETransactionsonInformationTheory,1983,29(2):208210.4KarninED,GreenJW,HellmanME.OnsharingsecretsystemJ.IEEETransactionso

20、nInformationTheory,1983,29(1):35-41.5许春香,陈凯,肖国镇.安全的矢量空问秘密共享方案J.电子,2002,30(5):715718.6ChanYeobYeun.Mitchel1CJ.Howtoidenti-allcheateriinchSschemeC/JW1S98.Singapore:JapanSingaporeJointWorkshoponInformationSecurity,1998.7吉文峰,金晟柱.利用杂凑函数的在线秘密分享机制J.电子,2003,31(1):4547.8黄梅娟,张建中.基于离散对数的在线秘密分享方案叨.计算机工程与应用,2005,41(25):127128.9刘锋,张建中.一个完善的可公开验证秘密分享方案J.计算机应用研究,2006,23(5):9697.【1O】庞辽军,柳毅,王育民.

温馨提示

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

评论

0/150

提交评论