一种提高分布式机电装备的动态安全性的方法

文档序号:6613461阅读:126来源:国知局

专利名称::一种提高分布式机电装备的动态安全性的方法
技术领域
:本专利申请属于机电装备信息化领域,提出了一种用于分布式机电装备中,可在系统运行期间保护系统动态安全的方法。
背景技术
:1问题陈述目前,各类大型分布式机电装备在实际中应用的越来越多,如港口的自动化码头、物流中的自动化仓库、大型船只的控制系统、大型飞机、制造业流水线系统等,它们是装备制造领域的制高点,其共同特点是它们都由大量类型不同、数量众多的自动化设备构成,彼此之间需要严密细致的配合方能保证整个系统安全顺畅的运行。研制此类分布式机电装备,是对我国制造业水平的一个很大挑战,只有突破这个难点,才能将我国的装备业设计制造水平从个别孤立装置提升到系统层次。但是在这样一些系统的设计、实现与验证中,目前仍高度依赖分析设计人员个人对系统的经验性理解,缺乏严谨科学通用的形式化方法,也没有通用的算法和模式。这导致设计出来的系统在运行安全性上难以保证,只能将问题的发现和解决推迟到测试和实际运行期间处理,严重影响了系统运行的安全性和可靠性品质。因此,在实际中,非常希望有这样一种工作模式和方法,能够联系系统前期分析设计和后期开发测试,能够直接将前期的结果转化为后续阶段的输入,且从理论上保证这样设计出来的系统是安全可靠的,而且在"翻译"成为系统实现的时候不因具体技术开发引入额外的不可靠因素。本专利申请即是描述了这一工作流程中的一种关键算法。依据该算法及模型实现的系统,可以从理论上保证其运行可靠性(如果模型不出错的话)。与许多人的工作不同,本算法在系统日常运行期动态的执行,而不是停留在纸面上的分析和静态保证。2发展现状传统的可靠性建模和分析方法并不适合动态安全执行领域。动态安全执行的本质是在静态为主的设计阶段去保证动态执行期的设备安全,它的目标是要防止任何不安全后果的产生,而不是简单的去估计整个系统的可靠寿命。其者主要是设计和开发问题,后者则属于假定开发完毕后的评估过程。目前国内外已经有了一些工作,但它们大多集中在孤立设备、冗余方式及其可靠性评估、事后性质的故障分析等领域,与本申请关注的系统运行期的动态可靠性安全性问题不同。《Acost-effectivemethodologytointernalizenuclearsafetyinnuclearreactorconceptualdesign》(M.Gim6nez,P.Grinblat,M.Schlamp,NuclearEngineeringandDesign,Vol226(3),Dec2003,P.293-309,2003)—文中,作者虽然也很关注系统级可靠性,但仍是从可靠性评估的角度强调优化设计,减小失效概率,而没有在"如何保证运行期的动态可靠性"这一关键问题上给出说明。在《SystemandSoftwaresafetyanalysisfortheERAcontrolcomputer》(P.G.Beerthuizen,W.Kruidhof,ReliabilityEngineering&SystemSafety:ComputerSafety,ReliabilityandSecurity:18thInternationalConference,SAFECOMP'99,Toulouse,France,September1999.Proceedings,Springer)—文中,作者详细分析了一类控制系统的安全性的方方面面,但仍象本专利开始所指出的那样,限于作者个人经验总结,缺少可工程化的形式化方法及其分析,且该工作集中在项目完成后,因此对设计期的指导价值不够。《Thesafetyissueofmedicalrobotics》(Ellenby,S,B,ReliabilityEngineering&SystemSafety,Vol73(2),Aug2001,P.183-192)—文缺点同前。冗余思路的代表有《安全冗余结构铁路信号配电系统研究》(信号技术2007),但是冗余方式侧重于提高部件级的可靠性,并不能保证针对分布式机电系统而设计的控制管理软件本身是正确的。《使用基于模型的设计来开发和验证安全关键系统软件》(http:〃www.eetchina.com/ARTP8800414469—617693.HTM)—文最接近本申请的思路,但是它是以局部的小范围的控制器设计为解决问题,在分布式方面没有考虑。该文建模采用了Matlab的Simulink工具,与本文针对的分布式机电装备的离散控制本质不相符合。《复杂机电产品动态可靠性建模理论与方法研究》(苏春,许映秋,中国制造业信息化,35巻5期,2006,P.24-32)从理论方法角度给出了较全面的总结,提到了状态图法、智能组件法、Petri网法、动态故障树法等。但是,除了状态图法、流程图和Petri网法可以在辅助设计,其它方法大多是重在事后分析,对设计开发阶段所要求的高质量高可靠性目标难以给予方法学上的支持。考虑到工程实际要求,并不是每种方法都能够为工程人员所掌握并适合在实际中推广的,片面的要求所有工程人员提高自身素质以掌握那些复杂抽象的方法和分析算法是不现实的。目前在实际中能够获得较广泛认同和接受的方法主要有-.1)状态图法。该方法比较灵活,尤其适合在安全性设计中4吏用,但是在系统规模较大时,建模困难,一方面是因为状态的数量爆炸现象,一方面也是因为状态本身的确定也存在模糊性。2)Petri网法该方法具有天生的描述并发的能力,已在调度/工作流等领域获得了成功的应用,它强调资源具备时某个行为(即变迁)可被触发这一特性。但是,它并不适合描述错误恢复和错误处理。由于系统运行过程中不可避免的需要处理各种异常情况,这是安全系统设计中的关键内容之一,因此必须重点考虑,而这时petri弱点;3)流程图及其各种变种如GoFlow图适合描述流程,但对异常情况的处理是其弱点,处理缺乏严谨性,不规范。如果为了一个类型的错误就引入一套新的流程,不能很好的处理流程中的错误。4)故障树。5)面向对象的组件如面向对象的Petri网,结合马尔科夫分析,注意改进各个组件并不能从根本上解决系统中各部件交互引入的安全性问题。3本申请基础分布式机电装备系统通常都是由大量类型不同、数量众多的自动化设备构成,彼此间需要严密细致的配合方能保证整个系统安全顺畅的运行。整个系统运行的安全性,更多的是取决于系统层面相互配合协调以及对异常事件的适当处理(主要体现为软件),而不仅仅取决于设备自身的工作状态是否良好。如图4所示,图4展示了本申请实际项目实施中的工作流程。本申请中的算法基于系统的Petri-FSM混合描述模型,并通过改进的状态机描述方法允许禁止表,可有效的将设计意图转化为系统实现,并且在设计阶段就保证运行期整个系统落在允许的状态空间内,从而保证安全性。就分布式机电系统的设计而言,由于该算法己经预先服从了几个前提约定条件,这样设计出来的系统可以保证不会因系统交互出现故障。该方法发挥Petri网和FSM状态机两种方法的优点,用Petri网描述设备之间的协调配合以及调度,用FSM描述单个设备的状态迁移和工作流程,克服了用单一方法描述整个系统的难度,降低了对系统分析人员素质的要求。因此,在这里,对基本的Petri网和状态机方法做简短介绍1)Petri网(Petri-Net):通常被作为一种建模工具和分析工具使用,目前已被成功用于生产调度系统和工作流系统。Petri网的三大要素是库所、资源和变迁。即Petri网是库所S,资源R和变迁T的集合授:={S,"}其中,库所(store)是资源的存放地。或者理解为某类资源的集合,图?上用"圆圈"表示,例如,现有3辆小车可供运输,那么小车集合可构成一个库所,其中存放着3个资源(即小车),资源可以表示为库所圆圈中的"点"。变迁(transition)是资源条件满足时被激发的处理过程,图上用短直线表示,而变迁激发导致的资源流动就用箭头线表示。在经典Petri网^l念中,只要资源满足,变迁即可激发。但在工程应用中,激发(处理)的时刻可以由某个前置条件给出,不一定立刻激发,这会方便某些实现。例如,在集装箱资源和岸桥资源都具备的情况下,可以激发"岸桥抓箱运输"这个变迁发生。Petri网就是这样依靠资源的流动触发变迁以描述分布式系统的,因此,这一方法在描述分布式系统中的协调配合问题时具有天生的内在优势。例以自动化码头为例,船和岸桥集合是库所,如果船上还有集装箱资源且岸桥集合中还有空闲岸桥,则可激发"岸桥卸箱"这个变迁(动作)。当所有集装箱资源都被消耗掉时,自动化码头的卸船流程也就自然结束。2)状态自动机(statemachine):工程中的状态机常包含三类要素即状态、事件、迁移。其中,状态(state)表示系统相对稳定的行为,状态图中用"圆圈"表示,例如"静止待命",事件(event)是状态机的输入,可能来自于传感器的输出,也可能来自于系统中其它模块的输出,图中常忽略标出,因为每个迁移必然隐含着事件的到达,或者采用类似"el"的形式在迁移旁边标注。与Petri网的自动激发不同,事件是引导状态机演化的唯一动力。迁移描述状态机对事件的响应和处理,它通常会导致状态机从一个状态演化到另外一个状态。迁移在状态图中用连接当前状态和下一状态的箭头线表示,迁移的过程常伴随着一些必要的处理,本申请中称之为"行为"(action),以描述状态机FSM在不同状态之间转换时需要执行的处理。考虑到工程的需要,本申请中的模型描述部分用短直线明确表示"行为"处理,并且支持判断,这样可简化状态图的描述,更适合向软件开发转移设计成果。状态机方法中状态和迁移的识别是实际工程中非常容易引起争议的地方。究竟本质原因,在于状态是系统整体的状态,在系统规模较大时单凭分析人员的个人能力缺失有困难。但是,在描述规模较小的设备时,状态机方法确是非常有效的,且极其容易辨识正常工作状态和非正常状态,从而方便系统安全性检查。理论上存在从Petri网翻译成状态机的方法,但是由于状态爆炸原因,翻译出来的状态图规模很大,一般只能引入计算机处理而不适合工程实践中的人工分析,因此本申请依然采取人工方式绘制状态图。由于后续模型描述中,只针对个别设备单独用状态图建模,所以目标规模已经大大縮小,人工建模和分析可以实现,便于工程推广。
发明内容本专利
发明内容针对的是大型分布式机电装备中系统可靠性安全性的动态保证模型和算法。解决该实际问题的一大难点是如何在系统分析和设计阶段就能够保证后期开发和实现是正确的,且达到保证安全性可靠性的目标。1)基于"Petri网+有限状态机FSM"的层次建模方法发挥两种方法的优势,用Petri网描述分布式机电系统的上层调度和作业,用FSM描述底层单个设备的运装,在Petri网层次解决设备的协调配合问题,在FSM层次解决设备的安全运行问题。这样的层次设计与整个机电系统的软硬件架构也是相协调的,体现在-一模型描述分两层,实际系统的软件设计也分两层,分别是作业调度系统和安全执行系统。再之下就是具体物理设备实体。一Petri网的变迁就是作业系统中的最小可操作单位,作业系统的职责,就是检查触发这些变迁发生的资源约束是否满足,以及决定其具体执行时机,并通过调整变迁激发序列来规避死锁和提高作业系统工作效率。一每个变迁对应着底层关联设备的状态演化。可以将每个变迁与若干状态机的状态演化序列对应起来。一来自软件系统外部的各种变化(含危险情况探测),以状态机事件(event)方式进入系统模型。则系统安全执行的的最低设计目标就等价于考虑状态机面临不确定性外部事件输入和内部作业系统事件输入的情况下,一直将设备状态约束在安全范围之内的问题。由此可见,该建模方法层次清楚,接口明确,在每个步骤中考虑的问题都比较有限,便于人工分解处理,便于实际中推广使用。依据此方法得到的系统"Petri+FSM混合模型描述"是后续算法和工作的必要基础。2)Petri+FSM混合模型在计算内存中的表示依据1)中得到的图形化模型表示,需要将其化为适合计算机算法要求的数据结构以方便利用。由于Petri网和FSM从根本上都可抽象为离散数学的图,因此可借鉴图在计算机内的表示并扩展之以表示本模型。Petri网库所清单用结构数组表示,每个数组单元结构为{库所标识,库所说明}变迁清单用结构数组表示,每个数组单元结构为{变迁标识,说明,前置条件,[源库所],[目标库所],[关联设备]}。其中,前置条件说明允许该变迁发生的条件,只有前置条件和资源约束都满足时,该变迁方能发生。{源库所}记录影响该变迁发生的所有库所,即Petri网中变迁箭尾连接的所有库所,{目标库所}记录所有该变迁能够直接影响到的库所,即Petri网中变迁箭头指向的所有库所。{关联设备}记录与该变迁有关的所有设备。'FSM机状态清单用结构数组表示,每个单元结构为{状态标识,状态说明}事件清单用结构数组表示,每个单元结构为{事件标识,事件说明,事件来源}行为清单用结构数组表示,每个单元结构{行为标识,行为说明}状态转移表/允许禁止表用结构数组表示,每个单元记录一个状态事件对{s,e}。单元结构为{状态s,事件e,允许/禁止标志A/P,说明}。对给定状态s,仅下表中明确列出的事件(e)是允许的;未列出的事件如果到达,必须忽略。对某些不允许简单忽略的事件,以禁止事件的形式列在表中。禁止事件前面有一个/。后续算法中,判断设备在指定状态下是否可以响应某事件以及如何响应,就是根据该清单来严格执行的。在状态栏(或事件栏)中可以用通配标记(如*)表示本栏内容可以为任意状态(或事件),以简化表格数据量。关联处理栏指明在当前状态S和事件输入e下应执行的处理,通常需执行某个处理,有时也可忽略。允许禁止表本质上是表格方式陈述的状态机模型的扩展,但是比图形方式表达的状态机描述的内容更多,且更适合计算机软件编程实现。3)设备级的安全执行算法算法分布式机电装备的动态安全性执行算法目标保证系统在面临任意事件输入时都是安全的。这里的安全是指整个系统不会因上层用户和调度软件的误操作和设备之间的协调异常而导致设备受损,也不会因异常事件的突然发生而打乱正常运行导致系统损坏,前提是这些异常能够被系统感知并正确建模,错误的模型和无法感知的异常不在本算法考虑范围之内。输入事件ebeginif(e来自系统软件本身,如其它设备或上层作业系统指令)if{目标设备当前状态s,e)组合在禁止表项中执行禁止表项中规定的操作else将e送入模型超前演化,计算该设备状态机下一状态评估该模型状态if模型是安全的将e封装成命令数据包发送给物理设备执行else模型回退到接收e之前的状态endifendifelseif(e来自系统软件外部的传感器输出)if{目标设备当前状态s,句组合在禁止表项中执行禁止表项中规定的操作else将e送入模型超前演化评估模型状态if模型是不安全的停机并报告endifendifendifend软件自己产生的事件(含作业系统发下来的指令事件)和传感器事件在处理上在处理上有所不同前者是事件先到,物理设备的状态还未发生变化,所以若判定为危险可直接忽略处理;后者是设备物理状态发生变化,事件后到(后进入系统),不论危险与否,一般都不可做忽略性处理,而应明确开列在状态转换表(允许禁止表)中,逐个情形分析,简单忽略将导致最大危险。4)系统级的安全执行算法上面的设备级安全执行算法只是描述了单个设备的情况。就整个分布式系统而言,在系统级还应有所协调。任何一个作业调度算法,不论是自动化调度还是人工操作,都可抽象为作业指令的序列。而任何传感器的检测输出,例如检测到的异常情况,都可以抽象为事件输入算法处理。3)中的设备级安全处理算法本质上只是这里系统级安全执行算法频繁调用的一个子算法。算法系统级的动态安全执行算法输入输出的数据结构资源集合凡i存放待处理的抽象资源,例如自动化码头卸船流程中的待卸集装箱,自动化仓库中等待入库的所有物品,系统中所有的传送小车等等;作业指令队列^,其中的作业指令由作业系统动态生成;事件输入队列2e。其中的事件可能由软件内部生成,也可能由现场设备或传感器激发,来自系统外部的事件可能发生在任意时刻,不可预测。算法的目的之一就是要保证面临任意时刻外部事件输入时执行都在安全可控范围内;beginif(事件队列^非空)从事件队列ge中取出下一待处理事件e;if(e是退出软件命令)算法退出并中止endif根据e的属性确定目标设备将e送给目标设备状态机模型并调用3)设备级安全执行算法处理;if(设备级算法安全检查未通过并要求停机)从抽象设备资源集合中去除要求停机的设备;endifendifif(事件队列ge为空)for(每一个模型变迁r进行检查)if该变迁正在解释执行过程中继续按照状态机解释该变迁,如可以生成下一事件,则生成之并放入事件队列,变迁的执行本质上就是由解释器主动生成和物理设备触发一系列的事件引起的状态迁移过程。每个变迁都有对应的解释器负责生成下一事件。elseif(该变迁被激发的资源条件不满足)continue;〃退出本次for循环,继续检查下一变迁else到变迁表中查找该变迁r涉及到的设备集合D;检査状态机所表示的D的状态;if(r执行所需的某个设备资源正忙)continue;〃退出本次for循环,但继续检査下一变迁〃这可规避由设备争用状态混乱导致的不安全else//至此,变迁发生条件满足,可以执行启动该变迁对应的解释器,并由解释器生成第一批事件送入事件队列endifendifendforendwhile从事件队列ge中取出下一个事件e;如果队列ge为空,则返回begin继续检查等待;end5)关于安全性的论证在该算法中,上层Petri网的变迁和作业调度系统的基本操作一一对应,由于该算法保证了不会同时启动两个设备冲突的变迁,因此可很好的适应人工操作与自动化调度协调并发运行的情况。进一步的,如果变迁解释器(通过事件生成方式把变迁的执行映射成为若干状态机状态演化的过程)和物理设备能够保证每个变迁的发生具有原子性,即要么执行成功,要么将设备巻回到变迁发生前状态,则可保证各个设备不会因冲突而损坏。且资源托肯的流动是单向的,如自动化码头的装船或者卸船流程,那么该算法可以保证对任意的调度序列输入都是安全的。这会大大增加作业系统设计实现的灵活性。6)关于安全性效果提升的评估参见实例说明图1—图3为某系统的部分模型描述。其中,图1是以自动化港口的装卸船流程为例的系统级的Petri网模型描述,图2是针对每类设备单独设计的设备级状态机模型描述,图3为Petri和FSM关联关系示意图。系统级Petri网描述和设备级状态机FSM的描述的集成。图4为本发明的应用流程图具体实施例方式以某自动化码头装备的研发为例,通常此类自动化码头包括岸桥、轨道、小车以及各类起重机近百台,且几乎全部无人操作,各类装置之间存在大量的交接协调操作,考虑到必要的人工干预、某些设备潜在的故障可能以及各类装备运行期间的异常情况,该自动化港口的整个控制系统必须能够尽可能多的处理这些潜在异常因素,并最大限度的保护设备和集装箱的安全。第一步对该系统进行分类和抽象,辨别各类资源。得到如下设备清单岸桥起重机(岸桥),轨道小车,轨道起重机,地面小车,堆场起重机(场桥)。再加上需要传输的货物集装箱,就构成了整个系统的基本资源。第二步首先对该系统进行建模,以Petri网为工具描述整个集装箱装船和卸船流程如图2所示。其中,库所S0和S6分别表示集装箱船和堆场,Sl-S5分别表示自动化码头中的岸桥、小车l、起重机、小车2和堆场RMG资源,变迁T0-T5表示卸船流程,Tll-T6表示装船流程。为了适应多条集装箱通路的情形,可引入着色Petri网技术描述。附图中为简明起见,未提供着色信息。为了方便软件开发实现,可以进一步将图形化的Petri网转化成为表格形式<table>tableseeoriginaldocumentpage11</column></row><table><table>tableseeoriginaldocumentpage12</column></row><table>注为简明起见,一些过渡库所未给出含义说明,以图为准,也避免大家就每个具体库所的准确文字陈述争论。表2:Petri网模型变迁清单<table>tableseeoriginaldocumentpage12</column></row><table><table>tableseeoriginaldocumentpage13</column></row><table>(场)在表格表示法中,可以进一步增加前置条件检查,并顺便建立Petri网和设备之间的关联关系,从而表达的内容更加丰富。注1:Petri网中的变迁T的集合《Ti,i二O,l,..n-max)同吋也是安全子系统提供的扩充指令,上层调度系统可以使用。注2:Petri网模型并没有说明如果某个变迁失败后会怎样。按照经典Petri网的概念,对失败的处理不属于Petri考虑的重点,它强调"资源满足后某个变迁可以被激发执行"而不是说一定被激发执行。如果变迁执行失败,我们认为Petri网状态不变。就具体开发而言,我们可以在每个变迁处理的开始,首先去检查一些相关前置条件是否满足,如果不满足,则退出此变迁执行。注3:在本报告给出的自动化码头模型中,除非是极简单的变迁,否则变迁的处理过程都可以通过与该变迁关联的设备的状态图FSM描述,即变迁的处理过程就是相关设备状态图FSM演化的过程,因此,前置条件也可不明确给出,完全依赖状态图演化的处理亦可。该变迁执行不下去等价于对应该变迁的FSM无法演化下去。特别注意,一个变迁可能对应多张FSM,如T1变迁的激发处理牵扯到岸桥和轨道小车两个实体,因此,软件在实现T1变迁时,要去同时演化岸桥和轨道小车两个FSM。不应该为每个变迁单独设计FSM。第三步针对每个设备,单独用状态机对设备进行建模。由于在应用状态机时,仅仅是对某类设备进行描述,考虑的范围局限于单个设备,因此考虑的范围大大縮小,比较容易获得公共一致的模型。实际操作时要注意状态机FSM模型是针对的设备状态迁移,而不是业务流程迁移,业务流程迁移本质上可反映为状态迁移的序列。因此,在FSM建模时可以较少的考虑业务流程,从而进一步约简状态的数量,便于手工分析进行。图3给出了某设备(地面轨道小车)状态机描述的例子。其中,S0表示归位初态,同时也是系统运行终态。Sl、S2和S3描述了定位过程,S4S6和S5S7分别表示提箱和放箱过程,e表示引起状态迁移的各类事件,竖线a表示由各事件触发的各种处理。处理的过程中可决定下一迁移状态。为了方便程序处理,并仿照Petri网的表格化方法,对FSM中的状态(state)、事件(event)和处理(action)各自列表表示。除了列出如上三张表,还应列出允许/禁止表,描述合法与非法的状态迁移关系,例如表3:状态转移表/允许禁止表示意<table>tableseeoriginaldocumentpage14</column></row><table>表中*表示任意状态s获任意事件e注1:对给定状态S,仅下表中明确列出的事件(e)是允许的;未列出的事件如果到达,必须忽略。对某些不允许简单忽略的事件,以禁止事件的形式列在表中。禁止事件前面有一个/。注2:下表可能在开发调试中变化较大,但对软件程序架构无影响,因此方便调试和更新。注3:如果把状态s和允许事件e合在一起,构成状态事件对(s,e),则可注意到,该表实际上是以表格形式描述了状态机FSM。这比图形方式更适合计算机编程实现,因为编程中判断某个事件能否处理,只要简单的到下表中査询即可。第四步建立Petri网和FSM之间的关联,实现相互集成。这一步事实上在第二步Petri描述中己经实现,因为那里己经完成了Petri网变迁和状态机对应关系的建立。第五步验证系统的Petri网模型对任意输入的变迁命令T都是安全的。由于Petri网的分布式描述特性,对该问题的验证无序在全网层次统一考虑,只需在影响变迁发生的库所上考虑即可。若某变迁T的激活需要库所Sa和Sb中的资源,Sa中的资源状态可能是(0,l,2)三种可能,Sb中的资源状态可能是(0,U两种可能,那么组合后共有Sa*Sb={(0,0),(O,l),(1,0),(1,1),(2,0),(2,1)}六种可能状态,只要验证在这6种可能状态下,变迁T激活的尝试都不会导致系统进入危险状态即可。这一过程可通过人工完成。因为现在对变迁T的分析仅仅涉及局部描述,所以大大压缩了分析的空间,规避了状态爆炸现象。第六步分析每个状态机不论当前处于何种状态,对可能发生的事件都是安全的。这一环节与设备和应用密切相关。第七步根据前面各类表格转化为软件设计并开发实现。实际中要区分清楚状态机中可能发生的状态迁移途径和实际某次迁移流程中的状态序列,前者由图形或表格描述,后者只是前者规定的可能迁移中的一个具体可能,由变迁命令解释器负责遵照FSM约束决定下一步骤迁移。第八步设计和实现上层作业系统,包括手工调度和自动化调度。由于底层已经保证了安全性,因此,这一层可着重考虑如何提高作业效率。为完整起见,这里给出了一个简单的自动化调度示意,可满足自动化码头单向调度作业的需要卸船调度start:for变迁集合T中的每一个变迁Tj查找与Tj关联的所有库所并且查验这些库所中的资源是否满足Tj激发的条件如果满足,则激发Tj对应的处理,即演化Tj的所有FSM如果不满足,则忽略当前变迁end检查船库所中需要运输的集装箱资源是否为空如果为空,则算法中止并退出否则gotostart继续实施效果的评估由于本实例中自动化码头系统系国内首创,国际上能提供相应解决方案的公司也屈指可数,且技术保密性强,难以获得比较数据。从有限的类似项目开发经验看,一般开发周期都在2-5年左右,其中系统级的协调测试根据软件工程学科的统计一般会在50%甚至对某些项目可达70%,其中主要的工作量集中在各个单元完工后,整个系统组装好后在性能和安全性上通不过测试,导致返工。上述实例中应用本专利策略,在1年零2个月时间内顺利将整个系统搭建完毕并初步运转,减少了因发现整个系统功能不完备而导致返工重新设计修正的次数,从而能够在较短的时间内达到期待的安全性品质。权利要求1.动态安全执行算法基于Petri网和有限状态机FSM相结合的双层系统描述模型,该模型在上层用Petri网工具描述大型分布式机电装备作业调度中的并行性,在下层用状态机描述每个各子设备单元的细节运行规律,其中,Petri网中的每个变迁与作业和调度系统中的每个基本操作对应,每个变迁的执行可翻译为一个事件序列,而这些事件以及来自系统外部的各个事件都由状态机响应并处理。2,基于允许/禁止表的单设备不安全工作区描述,允许禁止表中包含如下内容状态s,事件e,允许禁止否,关联处理,在状态栏(或事件栏)中可以用通配标记(如*)表示本栏内容可以为任意状态(或事件),以简化表格数据量,关联处理栏指明在当前状态s和事件输入e下应执行的处理,通常需执行某个处理,有时也可忽略,允许禁止表本质上是表格方式陈述的状态机模型的扩展,但是比图形方式表达的状态机描述的内容更多,且更适合计算机软件编程实现。3,基于模型的快速动态安全执行,对来自上层用户操作和调度系统的作业指令(对应着模型中的Petri网变迁),首先判断是否存在设备冲突,在设备资源满足的前提下,变迁被翻译成为状态演化序列,由各个设备单元的状态机负责验证并执行,验证和执行的过程在软件中是通过查允许/禁止表实现的,采纳权利要求2和3的算法被证明是有效的,可以在分布式机电装备运行期间提升安全性。4,基于模型的超前演化执行策略,对静态安全验证或者是允许/禁止表中有遗漏的状态事件组合,或者是无法简单的在允许/禁止表中"关联处理"栏陈述清楚的状态事件组合,可以将该事件送入模型,在计算机中模拟整个系统的超前运行,并根据后续演化结果(系统安全与否)决定对该事件的处理(忽略还是接受),该策略有助于处理系统建模初期中未考虑到的异常事件和未知事件,有助于防止继发性故障不良后果的蔓延。全文摘要本发明提出了一种针对分布式机电装备设计的动态安全性建模与执行算法。设计了基于Petri网和有限状态机FSM相结合的双层系统描述模型,在上层用Petri网工具描述大型分布式机电装备作业调度中的并行性,并把Petri网变迁与作业调度系统的基本操作对应起来,在下层用状态机描述每个各子设备单元的细节运行规律,以明确系统在面临外部事件输入时的行为。执行算法中包括允许/禁止表技术、快速动态安全执行策略和超前演化模拟策略,可以在系统运行过程中动态的保护装备系统安全。文档编号G06F17/50GK101206687SQ200710172450公开日2008年6月25日申请日期2007年12月18日优先权日2007年12月18日发明者伟张,健徐,陈启军申请人:同济大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1