一种基于事件队列的航天器故障诊断方法_2

文档序号:8423095阅读:来源:国知局
数是减法函数,第二层是反正切函数,第三层是加法函数,最内层是正弦函数;
[0034] 公式:Formula 包括下列两种形式:Proposition 或(FormulaiUntilfjjFormula^, 其中,U是时序算子,η是时间约束,其语义如下:
[0035] 给定由多个控制周期的航天器各敏感器和各执行机构的测量数据与反馈数据构 成的数据序列S = S1, S2,…sn,…,如果存在i〈 = η,使得Formula1在序列集合{s u S2,… Sp S2,…Sp…、S^1Sp sj的各个序列上均成立,且Formula;^ s i, si+1,…sn,…成立,那么 卩〇1'1111113111111:;[1 [1^01'1]111132在整个数据序列上成立,当Formula由命题Proposition直接构 成时,Formula在数据序列上成立的条件是当且仅当Proposition在S 1I成立;
[0036] (3)对步骤(2)中满足注册条件的事件进行注册,进入步骤(4);具体的注册方法 为:如果根据步骤(2)中的事件注册条件,判断Formula成立,那么将Event加入事件队列。 其中,Event为触发事件;
[0037] (4)判断当前事件队列中的事件是否满足事件触发条件,若满足,则执行相应的开 关操作,否则,结束本周期的故障诊断;
[0038] 所述事件触发条件由巴克斯范式构造,所述巴克斯范式由条件和事件触发确定, 具体为:
[0039] 条件:Condition包括下列四种形式:Formula或(! Condition)或 (ConditionJ | Condition2)或(Condition1(^feCondition2), 其中,Condition、 Condition」I ConditionjP Condition AfcCondition2*别表不条件的否定、析取与合取;
[0040] 事件触发:Event 包括下列两种形式,Action 或 IF (Condition) THEN Event1ELSE Event2,其中Action是航天器各敏感器和各执行机构的开关切换动作。其语义如下:
[0041] 如果Event由动作Action直接构成,则执行Action所代表的各敏感器和各执行 机构的开关切换操作;
[0042] 如果 Event 的形式为 IF (Condition) THEN Event1ELSE Event2,则需要根据步 骤(2)中的事件注册条件,判断Condition是否成立,如果成立,则执行Event 1,否则执行 Event20
[0043] 动作:Action 包括下列三种形式,V: = e 或 Always[L] (v: = e)或 Eventuallyw (v: = e),分别表示直接将进行V: = e的操作;在接下来的L个周期中,都进行V: = e的 操作;在L个周期之后,再进行V: =e的操作。
[0044] 下面给出一个使用本方法描述航天器故障诊断方案的例子:"如果连续1500个控 制周期角速度超限(I ω I >1. 0),那么先关闭发动机(REAG = 0),32个控制周期后再关闭自 锁阀(LV = 0),自锁阀关闭两次,间隔8个控制周期"。
[0045] 以传统的方式,会使用类似C语言的伪代码描述上述需求:
[0046] (1)判断故障
[0047]
【主权项】
1. 一种基于事件队列的航天器故障诊断方法,其特征在于步骤如下: (1) 获取航天器故障诊断相关数据,所述航天器故障诊断相关数据包括航天器各敏感 器和各执行机构的测量数据与反馈数据; (2) 判断步骤(1)中获得的故障诊断相关数据是否满足事件注册条件,若满足,则进入 步骤(3),进行事件注册,否则,进入步骤(4),直接进行事件触发的判断;所述事件为航天 器各敏感器和各执行机构的开关切换操作; 所述事件注册条件由项、命题和公式确定,具体为: 项:Term包括下列两种形式:c或X,其中,Term为项,c为常量,X为变量,即航天器各 敏感器和各执行机构的测量数据与反馈数据; 命题:Proposition由Function(Term1, Term2, ...,Termn)~O 确定,其中,Proposition为命题,Function为关于Term的n元初等函数表达式,~为〉、〈或=,Term1, Term2,…, TermirI^ 为项; 公式:Formula包括下列两种形式:Proposition或(Formula1Until wFormula2),其中, Until为时序算子,n为时间约束; 给定由多个控制周期的航天器各敏感器和各执行机构的测量数据与反馈数据构成的 数据序列 S = S1, S2,…sn,…,若 Formula 由 Formula1UntilwFormula2构成,则 Formula 在 数据序列S上成立的条件是:存在i〈 = n,使得Formula1在序列集合{s S2,…Sp S2,… Sp…、S^1SpsJ的各个序列上均成立,且Formula;^ Si, si+1,…sn,…成立; 若Formula由命题Proposition直接构成,则Formula在数据序列S上成立的条件是 当且仅当Proposition在sj成立; (3) 对步骤(2)中满足注册条件的事件进行注册,进入步骤(4);具体的注册方法为: 若Formula在数据序列S上成立,则将Event加入事件队列,其中,Event为触发事件; (4) 判断当前事件队列中的事件是否满足事件触发条件,若满足,则执行相应的开关操 作,否则,结束本周期的故障诊断; 所述事件触发条件由条件和事件触发确定,具体为: 条件:Condition包括下列四种形式:Formula或(! Condition)或 (ConditionJ | Condition2)或(ConditiOn1MCondition2)其中,! Condition、 Condition11 I ConditionjP Condition AfcCondition2*别表不条件的否定、析取与合取; Condition、Condition^ Condition 2均为条件; 事件触发:Event包括下列两种形式,Action或IF (Condition) THEN Event1ELSE Event2,其中Action是航天器各敏感器和各执行机构的开关切换动作;其语义如下: 若Event由动作Action直接构成,则执行Action所代表的各敏感器和各执行机构的 开关切换操作; 若Event的形式为IF(Condition)THEN Event1ELSE Event2,贝丨」根据步骤(2)中的事件 注册条件,判断Condition是否成立,若成立,则执行Event1,否则执行Event2; 所述动作Action包括三种形式,V: =e或Alwaysaj (v: = e)或Eventuallyaj (v:=e),分别表示直接将进行V: =e的操作;在接下来的L个周期中,都进行V: =e的操作;在 L个周期之后,再进行V: =e的操作。其中,V: =e表示将表达式e的值,赋给V所代表的 变量或硬件端口。
【专利摘要】一种基于事件队列的航天器故障诊断方法,首先获取航天器故障诊断相关数据,并判断获得的故障诊断相关数据是否满足事件注册条件,若满足,则进行事件注册,否则判断当前事件队列中的事件是否满足事件触发条件,若满足,则执行相应的开关操作,否则,结束本周期的故障诊断,本发明将判断故障发生的时序条件抽象为事件,将故障处理措施抽象为动作,通过事件队列实现故障诊断与处理,实现了复杂故障诊断与处理场景的形式化描述,为了清晰、无二义性地描述航天器故障诊断的需求提供了一种方法,该方法既有利于航天器故障诊断与处理方案设计人员清晰明了地描述航天器故障诊断需求,又有利于实现故障诊断与处理方法的复用。
【IPC分类】B64G1-52
【公开号】CN104743137
【申请号】CN201510098358
【发明人】王政, 刘端, 牛和明, 尚葳蕤, 王振华
【申请人】北京控制工程研究所
【公开日】2015年7月1日
【申请日】2015年3月5日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1