发明名称 一种基于事件队列的航天器故障诊断方法
摘要 一种基于事件队列的航天器故障诊断方法,首先获取航天器故障诊断相关数据,并判断获得的故障诊断相关数据是否满足事件注册条件,若满足,则进行事件注册,否则判断当前事件队列中的事件是否满足事件触发条件,若满足,则执行相应的开关操作,否则,结束本周期的故障诊断,本发明将判断故障发生的时序条件抽象为事件,将故障处理措施抽象为动作,通过事件队列实现故障诊断与处理,实现了复杂故障诊断与处理场景的形式化描述,为了清晰、无二义性地描述航天器故障诊断的需求提供了一种方法,该方法既有利于航天器故障诊断与处理方案设计人员清晰明了地描述航天器故障诊断需求,又有利于实现故障诊断与处理方法的复用。
申请公布号 CN104743137B 申请公布日期 2017.01.04
申请号 CN201510098358.7 申请日期 2015.03.05
申请人 北京控制工程研究所 发明人 王政;刘端;牛和明;尚葳蕤;王振华
分类号 B64G1/52(2006.01)I 主分类号 B64G1/52(2006.01)I
代理机构 中国航天科技专利中心 11009 代理人 安丽
主权项 一种基于事件队列的航天器故障诊断方法,其特征在于步骤如下:(1)获取航天器故障诊断相关数据,所述航天器故障诊断相关数据包括航天器各敏感器和各执行机构的测量数据与反馈数据;(2)判断步骤(1)中获得的故障诊断相关数据是否满足事件注册条件,若满足,则进入步骤(3),进行事件注册,否则,进入步骤(4),直接进行事件触发的判断;所述事件为航天器各敏感器和各执行机构的开关切换操作;所述事件注册条件由项、命题和公式确定,具体为:项:Term包括下列两种形式:c或x,其中,Term为项,c为常量,x为变量,即航天器各敏感器和各执行机构的测量数据与反馈数据;命题:Proposition由Function(Term<sub>1</sub>,Term<sub>2</sub>,…,Term<sub>n</sub>)~0确定,其中,Proposition为命题,Function为关于Term的n元初等函数表达式,~为&gt;、&lt;或=,Term<sub>1</sub>,Term<sub>2</sub>,…,Term<sub>n</sub>均为项;公式:Formula包括下列两种形式:Proposition或(Formula<sub>1</sub>Until<sub>[n]</sub>Formula<sub>2</sub>),其中,Until为时序算子,n为时间约束;给定由多个控制周期的航天器各敏感器和各执行机构的测量数据与反馈数据构成的数据序列S=s<sub>1</sub>,s<sub>2</sub>,…s<sub>n</sub>,…,若Formula由Formula<sub>1</sub>Until<sub>[n]</sub>Formula<sub>2</sub>构成,则Formula在数据序列S上成立的条件是:存在i&lt;=n,使得Formula<sub>1</sub>在序列集合{s<sub>1</sub>,s<sub>2</sub>,…s<sub>i</sub>、s<sub>2</sub>,s<sub>3</sub>,…s<sub>i</sub>、…、s<sub>i‑1</sub>,s<sub>i</sub>、s<sub>i</sub>}的各个序列上均成立,且Formula<sub>2</sub>在s<sub>i</sub>,s<sub>i+1</sub>,…s<sub>n</sub>,…成立;若Formula由命题Proposition直接构成,则Formula在数据序列S上成立的条件是当且仅当Proposition在s<sub>1</sub>上成立;(3)对步骤(2)中满足注册条件的事件进行注册,进入步骤(4);具体的注册方法为:若Formula在数据序列S上成立,则将Event加入事件队列,其中,Event为触发事件;(4)判断当前事件队列中的事件是否满足事件触发条件,若满足,则执行相应的开关操作,否则,结束本周期的故障诊断;所述事件触发条件由条件和事件触发确定,具体为:条件:Condition包括下列四种形式:Formula或(!Condition)或(Condition<sub>1</sub>||Condition<sub>2</sub>)或(Condition<sub>1</sub>&amp;&amp;Condition<sub>2</sub>)其中,!Condition、Condition<sub>1</sub>||Condition<sub>2</sub>和Condition<sub>1</sub>&amp;&amp;Condition<sub>2</sub>分别表示条件的否定、析取与合取;Condition、Condition<sub>1</sub>和Condition<sub>2</sub>均为条件;事件触发:Event包括下列两种形式,Action或IF(Condition)THEN Event<sub>1</sub>ELSE Event<sub>2</sub>,其中Action是航天器各敏感器和各执行机构的开关切换动作;其语义如下:若Event由动作Action直接构成,则执行Action所代表的各敏感器和各执行机构的开关切换操作;若Event的形式为IF(Condition)THEN Event<sub>1</sub>ELSE Event<sub>2</sub>,则根据步骤(2)中的事件注册条件,判断Condition是否成立,若成立,则执行Event<sub>1</sub>,否则执行Event<sub>2</sub>;所述动作Action包括三种形式,v:=e或Always<sub>[L]</sub>(v:=e)或Eventually<sub>[L]</sub>(v:=e),分别表示直接将进行v:=e的操作;在接下来的L个周期中,都进行v:=e的操作;在L个周期之后,再进行v:=e的操作,其中,v:=e表示将表达式e的值,赋给v所代表的变量或硬件端口。
地址 100080 北京市海淀区北京2729信箱