一种控制系统执行器及传感器同时故障时的诊断方法与流程

文档序号:18950939发布日期:2019-10-23 02:12阅读:370来源:国知局
一种控制系统执行器及传感器同时故障时的诊断方法与流程

本发明涉及执行器诊断技术,尤其涉及一种控制系统执行器及传感器同时故障时的诊断方法,主要用于普通自动控制系统在同时发生执行器及传感器故障状况下的故障分析。



背景技术:

本文主要涉及的两种背景技术分别是一种基于滑模观测器的执行器诊断技术(参考文献:刘京津.基于滑模观测器的故障诊断技术及其在飞控系统中的应用研究[d].南京:南京航空航天大学自动化学院,2008),以及一种将传感器故障转化为执行器故障模型的方案(参考文献:黄宜山,张昌凡,严敏.基于滑模观测器的多传感器故障诊断方法[j].动力学与控制学报,2011,09(4):378-384)。

前者是为解决控制系统执行器故障诊断而设计的故障诊断方案,主要通过设计滑模故障观测器组,通过simulink仿真软件得到系统与观测器之间的残差值,由滑模观测器组可以得到残差组,再通过对残差组得分析比对可以判断故障得来源,也可以通过滑模观测器来估计出故障值大小。这种方法的缺陷在于当系统同时也在发生传感器故障时,我们通过收集系统数据,再用这项技术去simulink软件里仿真时,会发现这种故障诊断方式会受到传感器故障值的干扰,进而影响故障诊断。

第二种技术是一种为了简化传感器故障诊断过程设计的,它将发生传感器故障的系统模型通过构造系统状态变量的方式巧妙地转化为了一种类似执行器故障的系统模型,进而可以通过执行器的故障诊断方法去解决传感器故障诊断问题。目前来看传感器的故障诊断方法是相对复杂的,通过这种方法能够使系统只发生传感器故障时得诊断过程大大简化。但是这项技术对于系统同时发生执行器故障和传感器故障并没有解决方案。



技术实现要素:

本发明所要解决的技术问题是针对背景技术中所涉及到的缺陷,提供一种控制系统执行器及传感器同时故障时的诊断方法。

本发明为解决上述技术问题采用以下技术方案:

一种控制系统执行器及传感器同时故障时的诊断方法,包含以下步骤:

步骤1),建立含m个传感器的系统故障模型:

y=cx+gfs

其中:x∈rn是不可测系统状态向量,y∈rn是可测系统输出向量,u∈rn是可测系统输入向量;a、b、c、g均是将控制系统线性化并转化为状态空间模型时得到的适维矩阵,且(a,c)是可观的;fs是传感器故障向量,为有界线性函数;δ(t)代表系统不确定扰动;

通过增加状态变量z,将含m个传感器的系统传感器故障模型写成如下形式:

其中

步骤2),建立含n个执行器的系统故障模型:

y=cx

其中,fa为执行器故障向量,为有界线性函数;

将n个执行器的故障模型放进m个传感器的故障模型中,得到综合故障模型:

其中

步骤3),分别为执行器故障、伪执行器故障即传感器故障设计故障观测器,然后组合成观测器组;

为矩阵其效果等同于原系统中的适维矩阵a,令为矩阵为矩阵[0i]为矩阵

步骤3.1),对于执行器故障,在满足如下假设的情形下:

假设1:矩阵b列满秩;

假设2:存在适维矩阵l1、f1和正定矩阵p1、q1满足:

假设3:外部扰动δ(t)范数有界,||δ(t)||≤w1,w1是正数;执行器故障fa有界,||fa||≤m1,m1是正数且外部扰动远小于执行器故障,即w1<<m1;

设置n个执行器故障观测器:

式中,是对应于第i个执行器的故障观测器中的状态变量,是对应于第i个执行器的故障观测器中的系统输出向量,bi是矩阵中第i列的列向量,δ1是预设的很小的正数;fi是指矩阵f的第i行,执行器故障观测器的切换增益ρ1满足ρ1≥m1,且是hurwitz矩阵;

步骤3.2),在满足如下假设的条件下:

假设1:矩阵列满秩;

假设2:存在适维矩阵l2、f2和正定矩阵p2、q2满足:

假设3:外部扰动δ(t)范数有界,||δ(t)||≤w2;传感器故障fs有界,||fs||≤m2,w2<<m2;

设置m个伪执行器故障观测器即传感器故障观测器:

式中,是对应于第j个传感器的故障观测器中的状态变量,是对应于第j个传感器的故障观测器中的系统输出向量,δ2是预设的很小的正数;是矩阵中第j列的列向量,fj是指矩阵f的第j行,传感器故障观测器的切换增益ρ2满足ρ2≥m2,且是hurwitz矩阵;

步骤3.3),将n个执行器故障观测器、m个传感器故障观测器组合成观测器组;

步骤4),将观测器组作用于综合故障模型,即观测器组中的n个执行器故障观测器、m个传感器故障观测器一一对应作用于综合故障模型中的n个执行器的系统故障模型、m个传感器的系统故障模型,得到m+n个系统状态变量和观测器状态变量之间的残差图像;

步骤5),在m+n个残差图像中筛选出相同的残差图像,将其记为r*,对于m+n个残差图像中筛选后剩余的每一幅残差图像r,将其和残差图像r*进行对比,若在任一时间残差图像r的残差值均小于残差图像r*的残差值,则残差图像r对应观测器所对应的传感器或者执行器即故障源,这个观测器中的μi或μj值为故障大小的估计值。

本发明采用以上技术方案与现有技术相比,具有以下技术效果:

1.由上文的理论推导可以看到,将传感器故障转变为执行器故障,进而用执行器故障观测器进行故障诊断的方法能够很好的完成故障的检测与隔离,且大幅简化了传感器故障诊断的过程。

2.同时发生执行器故障和传感器故障时,通过将传感器故障向执行器故障的转化,可以大幅降低故障信号之间的干扰(具体依据见下文实例)。

附图说明

图1是故障诊断方法流程图;

图2是线性全维观测器故障诊断结构图;

图3(a)、图3(b)分别是系统中原始的执行器故障值、对应于故障执行器的观测器所得到的故障估计值;

图4(a)、图4(b)分别是观测器作用于发生执行器故障的系统得到的系统状态变量残差图像、系统在执行器故障状态下通过普通的全维观测器得到的系统状态变量残差图像;

图5(a)、图5(b)分别是系统中原始的传感器故障值、对应于故障传感器的观测器所得到的故障估计值;

图6(a)是对应于故障传感器的故障观测器所得到的系统状态变量残差图像、图6(b)、图6(c)、图6(d)分别是三种非故障传感器所对应的故障观测器所得到的系统状态变量残差图像;

图7(a)、图7(b)分别是同时发生执行器和传感器故障的系统中对应于故障执行器的观测器所得到的故障估计值、同时发生执行器及传感器故障的系统中的原始执行器故障值;

图8(a)、图8(b)分别是同时发生执行器及传感器故障的系统中对应于故障传感器的观测器所得到的故障估计值、同时发生执行器及传感器故障的系统中的原始传感器故障值;

图9(a)、图9(b)分别是同时发生执行器及传感器故障的系统中对应于故障执行器的观测器所得到的残差图像、同时发生执行器及传感器故障的系统中对应于传感器的观测器所得到的残差图像;图9(c)、图9(d)、图9(e)分别是三种同时发生执行器及传感器故障的系统中未发生故障的执行器和传感器所对应的观测器得到的系统状态变量残差图像。

具体实施方式

下面结合附图对本发明的技术方案做进一步的详细说明:

本发明可以以许多不同的形式实现,而不应当认为限于这里所述的实施例。相反,提供这些实施例以便使本公开透彻且完整,并且将向本领域技术人员充分表达本发明的范围。在附图中,为了清楚起见放大了组件。

本发明所研究的故障诊断方法的核心思想就是通过构造观测器估计出系统输出,然后将它与输出的测量值作比较得到残差信息。因此这是一类侧重于残差获取过程的方法,同时在设计时考虑使残差具备与故障对应的方向性,以便进行故障隔离和评价。基于滑模观测器的故障诊断方法流程图如图1所示。

通常情况下,我们可以用普通的全维观测器,通过估计系统状态的方式来重构原系统状态,进而产生残差来实现故障诊断。一般的线性全维观测器故障诊断结构图如图2所示。

其中u,d,f分别为系统的已知输入、未知输入和故障向量,y和分别是系统实际输出和状态观测器的输出,l是状态观测器的状态反馈矩阵。通过全维状态观测器可以获得系统残差r。只要状态观测器设计完成,那么我们的故障诊断的主体内容也就完成了,后面只需要对残差信号进行分析即可完成故障诊断。但是,为了实现故障的隔离,我们需要获得具有一定结构的残差,或者说使残差具有与各个故障对应的方向性。

本发明项目以某发动机模型为例,将系统模型线性化后可得到线性扰动系统的状态空间模型为:

y=cx

其中:x∈rn是系统状态向量,y∈rn是系统输出向量,u∈rn是系统输入向量。a,b,c均是适维矩阵。δ(t)代表系统不确定扰动。且(a,c)是可观的。

执行器故障类型可分为:执行器故障卡死、执行器恒增益变化以及执行器偏差失效。本文中是以执行器突变故障(也就是突然故障卡死)作为故障模型进行分析。若将执行器故障函数设为fa,我们假定在系统中有n个执行器,并且在n个执行器中每次只有一个执行器发生故障,因而,我们总共有n个故障模型,对应于每个执行器设计一个滑模观测器用于该执行器的故障诊断。

当第l个执行器发生故障时,原系统模型应描述为:

y=cx

式中b=(b1…bn),是第l个执行器发生的故障,uj是指当第j个执行器未发生故障正常运转时所期望的控制量。ul是对应与第l个执行器控制量。

传感器故障类型可分为:传感器故障卡死、传感器恒增益变化以及传感器偏差失效。本文以传感器故障卡死作为故障模型进行研究。若将传感器故障函数向量设为fs,则传感器故障模型可描述为:

y=cx+gfs

其中:x是不可测系统状态向量,y是可测系统输出向量,u是可测系统输入向量。a,b,c,g均是适维矩阵。fs是传感器故障,为有界线性函数。δ(t)代表系统不确定扰动。

假设1:第j个传感器无故障时,fsj=0;发生故障时,fsj为非零函数。其中fsj为fs第j行的行向量,代表第j个传感器故障。

假设2:g为列满秩矩阵。它实际的工程意义就是当一个传感器发生故障时不影响其他传感器的正常工作,即各个传感器独立工作且互不影响。

假设3:(a,c)是可观的。

假设4:传感器故障是有界函数。

前面讲过,基于滑模原理的传感器故障观测器设计起来比较复杂,这里介绍将传感器故障进行转化的主要方式(依据已有的背景技术)。

这一部分的主要思想是通过引入新的状态变量,将传感器故障转换为伪执行器故障。

先作如下定义:

定义1:g=[g1…gj…gr],式中gj为g的第j列的列向量。

定义2:fs=[fs1…fsj…fsr]’,式中fsj为fs第j行的行向量。

定义3:设rj表示同时发生a个(a≤r)传感器故障时的第j个故障。

基于任何时刻最多同时发生a的传感器故障的假设,对可能发生的故障情形建立故障模型为

定义一个如下的状态变量z作为输出信号的一阶低通滤波器

式中as矩阵可任意,bs矩阵满秩即可,在此,选取as矩阵为零矩阵,bs矩阵为单位矩阵。

将上式代入系统状态方程得:

从而得到新的系统方程为:

若定义代入上式可得:

从上式不难看出,通过状态变量z的引入,将传感器故障转换成了一种执行器故障。这样就可以运用执行器故障的方法来检测传感器故障。

我们先借助前人的研究成果来介绍针对执行器故障来设计的滑模观测器。针对之前介绍的执行器故障模型:

y=cx

式中b=(b1…bn),是第l个执行器发生的故障,uj是指当第j个执行器未发生故障正常运转时所期望的控制量。ul是对应与第l个执行器控制量。我们是假设每次只有一个执行器发生故障,最后设计出的故障观测器是可以直接应用到多执行器故障结构中去的,这个在之后也会再提到。

为了设计具有期望特性的滑模观测器,系统需满足如下假设:

假设1:矩阵b列满秩。

假设2:存在适维矩阵l1,f1和正定矩阵p1,q1满足:

(a-l1c)tp1+p1(a-l1c)=-q1

p1b=ctf1t

假设3:外部扰动δ(t)范数有界,||δ(t)||≤w1,w1是一正数;执行器故障fa有界,||fa||≤m1,m1是一正数且外部扰动远小于执行器故障,即w1<<m1。

由于每次只发生一个执行器故障,那么就有n种可能的故障模型,针对这n种故障模型,设计一组滑模观测器:

1≤i≤n

式中:δ1是一个很小的正数。fi是指矩阵f的第i行,所设计的滑模观测器的切换增益ρ1需满足ρ1≥m,且a-lc是hurwitz矩阵。根据前面的假设条件,我们可以在选定正定矩阵p1,q1后获得矩阵f1的参数,从而完成滑模观测器的设计。注意这里f1矩阵的参数我们是按照假设2来求解的,但并不是最优解,这是因为最优解的求法过于复杂,这里进行一点简化。以上的观测器设计是已有的背景技术

我们定义滑模观测器的残差为:

当第l个执行器发生故障时,观测器的残差ri(t)应当相当小,而当i≠l时,一般情况下在任意时段都不等于零,且远大于ri(t)>>rl(t)。因而可以通过监控残差信号ri(t)来检测与隔离该残差所对应的执行器故障。

一旦识别出是第l个执行器发生了故障,则应该足够的小。进一步假设也足够的小,那么我们可以用以下方法来实现执行器故障的故障估计s,从而实现执行器故障重构:

总结来说就是这个滑模观测器通过观测器中的μi变量来模拟实际系统中的故障值,从而使得对应于发生故障的执行器的观测器产生的输出值与实际系统的残差值非常小,而由于矩阵f的存在,使得只有发生故障的执行器故障观测器能够模拟出原系统的故障值,从而使得最终的残差值极小,而其他观测器模拟出来的是对应于其他执行器的故障值,而其他执行器是没有发生故障的,因而这个故障变量不能抵消原系统的故障,从而使得最后的残差值很大,从而实现故障的诊断以及隔离。

由之前的内容我们可以将传感器的故障模型转换成如下形式:

前面说过这是一个类似于执行器故障的传感器故障模型,而在这里面,我们可以将这一项看作是执行器故障部分,当然它是由传感器故障转变过来的。但是这毕竟完全同于执行器故障,我们想要套用之前的针对执行器故障而设计的滑模观测器就需要进行相应的改变:

假设1:矩阵列满秩;

假设2:存在适维矩阵l2、f2和正定矩阵p2、q2满足:

假设3:外部扰动δ(t)范数有界,||δ(t)||≤w2;传感器故障fs有界,||fs||≤m2,w2<<m2;

设置m=r个伪执行器故障观测器即传感器故障观测器:

式中,:δ2是预设的很小的正数。是对应于第j个传感器的故障观测器中的状态变量,是对应于第j个传感器的故障观测器中的系统输出向量,是矩阵中第j列的列向量,fj是指矩阵f的第j行,传感器故障观测器的切换增益ρ2满足ρ2≥m2,且是hurwitz矩阵;原理就与之前的执行器故障一样了。

对于执行器与传感器同时发生故障的情形,我们已经可以用之前得到的滑模观测器来解决了,因为我们已经将传感器故障转化为了执行器的故障形式,从原理上来说这只是相当于一个多执行器故障问题。那么我们可以直接应用上文中的执行器故障观测器以及传感器故障观测器组就可以解决这个故障诊断问题了。

接下来,我们以同时发生一个执行器故障和一个传感器故障为例进行原理分析,结论可推广到同时发生多故障情形。

原理分析:

(1)我们假设执行器故障发生在执行器a1上,对应的执行器故障观测器我们记为a1,再假设传感器故障发生再传感器s1上,对应的传感器故障观测器记为s1。我们对发生故障的系统依次用执行器故障观测器组和传感器故障观测器组进行行为观测,虽然我们命名不同,但其实这两种观测器是属于同一类型的。

(2)我们进行故障诊断的依据依旧是残差信号,而由于这两种故障在形式上都已经转变成为了执行器故障,而由于这两个执行器是作用于不同的状态变量的,相互之间的干扰很小,那么相应的故障信号的独立性也能得到保证。

(3)当执行器故障观测器a1被用来进行系统的观测时,由于并不会受到另一个执行器故障的干扰,相当于它作用于只有执行器发生故障的系统中,因此它能够模拟出原执行器a1的故障值,从而使得残差值相对于其他观测器作用于系统时更小,进而实现故障的检测与隔离。

(4)同样的,当传感器故障观测器s1作用于系统时,它同样能够模拟出原系统的传感器故障值,从而使得残差值相对于其他观测器作用于系统时更小,进而实现故障的检测与隔离。

(5)基于以上结论,我们只需要在残差信号中找出相对其他残差值更小的两组残差值,根据它们对应的故障观测器就能确定系统的故障发生位置以及故障值。

本次仿真实例采用某发动机控制系统线性化后的状态空间模型,同时我们在其中添加了扰动项δ(t)以模拟真实情形:

y=cx

其模型参数如下:

d=0;

这个系统有两个状态变量,一个系统输入量和四个系统输出量,一个执行器和四个传感器。且(a,c)是可观的。在本次仿真中,我们以最简单的情形,即输入量为零,初始状态变量为零的情形进行仿真,主要验证故障观测器对于故障的检测以及隔离的性能。这个实例中为了更好地进行说明,我们同时也进行了单独地执行器故障以及传感器故障诊断过程。具体如下:

执行器故障仿真验证

之前说过,对于本次仿真,我们只在一个执行器中设置故障,那么对于之前提到的故障模型:

y=cx

我们在系统的执行器中设置故障,该执行器的故障具体形式可表示如下:

式中:我们设置执行器故障fa为早期潜在故障,并且||fa||≤m,m=1。同时m>>w成立。

依据:

设置一组对应于可能发生故障的执行器的改良型的滑模观测器组。

l=(a-a0)c-1

观测器的切换增益ρ1选取为:ρ=300。

用于消减抖振的正常数δ1和δ2均取1

正定矩阵p和q选取为:p=i2,q=2i2。矩阵a0=-i2。

系统扰动项选取为δ(t)=0.01sin(t)。

由之前的假设条件计算得到矩阵f=[00.213600.0244]

残差信号:

由于本系统模型中只有一个执行器,我们可以这样来判断系统故障:如果残差信号r1(t)非常小,而去掉故障观测器后由全维观测器得到的残差在任一时段都不等于0,并且远大于r1(t),那么可以判断是执行器发生了故障,进而可以通过μ1估计相应的执行器故障。

传感器故障仿真验证

对于传感器故障模型:

同样以只有一个传感器发生故障为例进行仿真,我们在第一个传感器中设置故障,该传感器的故障具体形式可表示如下:

这个系统模型中由四个传感器,因此我们需要设置四组对应于可能发生故障的四个传感器的改良型的滑模观测器组。

l=(a-a0)c^(-1)

观测器的切换增益ρ2选取为:ρ=120。

用于消减抖振的正常数δ1和δ2均取1。

正定矩阵p和q选取为:p=i6,q=2i6。矩阵a0=-i6。

系统扰动项选取为δ(t)=0.01sin(t)。

矩阵g=i4,

同样前假设条件利用可以计算出f矩阵(注意此时系统适维矩阵a,b,c的值已经变化),进而获得全部的观测器参数。

残差信号:

如果残差信号r1(t)非常小,而r2(t)、r3(t)、r4(t)在任一时段都不等于0,并且都远远大于r1(t),那么可以判断是第一个传感器发生了故障,进而可以通过μ1估计相应的执行器故障。

执行器与传感器同时发生故障时的仿真

本发明项目中仍然以之前的航空发动机模型为例进行这个双故障的仿真,为了验证两种故障的故障信号不会相互干扰,我们增大了突变的故障值,以区别于执行器故障信号。我们将传感器故障改为:

同时为将执行器故障值改为:

然后上文的执行器故障施加在传感器故障系统中。由于系统的参数此时是传感器故障模型的参数,因此执行器故障观测器的参数需要相应的调整,我们用传感器故障模型中的系统参数进行计算,依据假设条件我们得到新的矩阵f=[00.02000.0255],然后我们再用执行器故障观测器以及传感器故障观测器作为故障观测器组分别观测这个系统就可以得到残差进而进行故障分析了。

接着我们就仿真结果进行分析,由图3(a)和图3(b)我们可以看到执行器故障观测器能够较好的模拟出故障值

而由图4(a)和图4(b)我们可以看到,前面给到的故障量是一个值为1的突变量,而在我们现在的残差信号图r1里面这个突变量只有0.03,远远小于初始故障值,满足故障诊断的第一个条件:残差信号r1(t)非常小。

而相比之下,去掉故障观测器后由全维观测器得到的这个残差的突变量达到了0.4,远远大于r1(t),根据之前的结论,我们可以判断执行器出现故障,同时也验证了这个滑模观测器的有效性。

图5(a)和图5(b)是第一个传感器故障观测器故障模拟值对比图

这里需要说明一下,由于这里采用的f矩阵的求解方法是完全按照之前的执行器故障观测器的设计方法来计算的,同样没有进行优化,所以得到的模拟结果可能并不很完美,但是并没有很大的关系,我们来看残差值。

由图6(a)、图6(b)、图6(c)、图6(d)我们可以看到在突变段r1明显远远小于其他三个残差信号,证明是第一个传感器发生了故障,进而也验证了该故障检测与故障隔离方法的有效性。此传感器故障观测器是有效的。

当同时发生执行器故障及传感器故障时,如图7(a)、图7(b)所示,当执行器故障观测器a1作用于系统时,可以得到故障模拟值。

图8(a)是同时发生执行器及传感器故障的系统中对应于故障传感器的观测器所得到的故障估计值,图8(b)为当第一个传感器故障观测器s1作用于系统时,得到的故障模拟值,同样的,由于设计f没有采用最优解,我们得到的故障模拟值只能近似的还原原系统的故障值,但这对于故障检测以及故障的隔离并不产生影响。

将执行器故障观测器得到的残差记为r1,传感器故障观测器得到的残差则分别记为r2,r3,r4,r5,残差信号图如图9(a)、图9(b)、图9(c)、图9(d)、图9(e)所示,观察可知残差r1和残差r2均小于其他三个残差值,因而可以判定是第一个执行器以及第一个传感器发生了故障,也验证了这个方法对于故障检测和故障隔离的有效性。

本技术领域技术人员可以理解的是,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1