周克敏
故障診斷與容錯控制是復(fù)雜系統(tǒng)研究與應(yīng)用的一個重要領(lǐng)域.過去幾十年中已經(jīng)提出了很多種故障診斷與容錯控制的方法,主要包括基于數(shù)據(jù)的方法和基于模型的方法[1-3].本文將討論基于模型的方法.
一般來說,故障出現(xiàn)的形式被假設(shè)滿足下面的標準模型:

其中,x 是系統(tǒng)狀態(tài),u 是系統(tǒng)的輸入,ddd 是作用在系統(tǒng)上的擾動,而f 是可能發(fā)生的故障信號,故障診斷標準模型的示意圖如圖1 所示.

圖1 故障診斷標準模型Fig.1 Standard model for fault diagnosis
若用傳遞函數(shù)來表示,即為

故障診斷的目標是設(shè)計一個濾波器F(s)使得殘差信號zzz 滿足如下條件:

1)與輸入u和擾動ddd 解耦,或者使得u和ddd 對zzz 的影響越小越好;
2)同時使得f 到zzz 的傳輸非零或者在某種意義上越大越好.
文獻中通常使用的濾波器F(s)標準設(shè)計是一個狀態(tài)觀測器.文獻[2] 中給出了一個通用濾波器的設(shè)計表達式.這個設(shè)計可以描述如下:設(shè)式(5)為一個穩(wěn)定的左互質(zhì)分解

其中,M(s),Nu(s),Nd(s)和Nf(s)都是穩(wěn)定的傳遞函數(shù)矩陣[4].則所有的故障診斷濾波器可以表示為

其中,Q(s)可以是任意穩(wěn)定的正則傳遞函數(shù)矩陣,如圖2 所示.

圖2 故障診斷濾波器的一般形式Fig.2 The general form of fault diagnosis filter
那么,故障診斷的殘差信號為

從以上表達式可以看出,Q(s)的設(shè)計應(yīng)該滿足:
1)Q(s)的幅值頻率響應(yīng)在ddd (更準確地說Nd(s)ddd)能量顯著的頻段應(yīng)該盡量小;
2)Q(s)的幅值頻率響應(yīng)在f (更準確地說Nf(s)f)能量顯著的頻段應(yīng)該盡量大.
文獻[1-2,5-6] 中提出了各種優(yōu)化設(shè)計方法.
注1.在上述故障診斷框架下,可以得出以下結(jié)論:
1)Q(s)的自由度包含了所有可能的故障診斷濾波器;
2)故障診斷濾波器F(s)的設(shè)計與輸入信號u是如何產(chǎn)生的無關(guān).
由于在這個框架下,濾波器Q(s)的設(shè)計與輸入信號u 無關(guān),很自然提出的問題是:
1)這個模型框架假設(shè)是否合理?
2)系統(tǒng)故障是否一般可以假設(shè)為“加”性的外部信號?
關(guān)于上述問題,本文認為,首先,如果故障是個外部信號,那么故障信號可以歸結(jié)到擾動中,容錯就是抗擾問題,故障診斷就等價于擾動估計;其次,無論故障是如何引起的(外部因素或者是內(nèi)部因素),故障的表現(xiàn)是系統(tǒng)內(nèi)部的變化,因此故障不可能表現(xiàn)為外部輸入信號.
注2.本文認為,假設(shè)系統(tǒng)的故障以加法形式呈現(xiàn)在系統(tǒng)中在一般情況下并不合理.很顯然,這是很多本領(lǐng)域研究者在過往研究中存在的問題[1-2,5-6].因此需要將基于模型的故障診斷與容錯控制研究引入正確的軌道.
本文結(jié)構(gòu)如下:第1 節(jié)用幾個例子說明為什么現(xiàn)行的故障診斷模型并非完全合理.由此引出第2節(jié)討論故障診斷的模型必須和系統(tǒng)之間的距離相關(guān)聯(lián).第3 節(jié)提出一個系統(tǒng)性能評價標準和系統(tǒng)距離的度量,即ν-間隙度量,以及用這些評價標準和距離度量進行故障診斷的理論基礎(chǔ).第4 節(jié)提出在這樣的基礎(chǔ)上進行故障分級和分類的方法.第5 節(jié)提出一個新故障診斷模型并探索可能的故障診斷的方法與容錯控制一般架構(gòu).第6 節(jié)給出一些結(jié)論并提出將來探索的方向.
本文中的一些標注如下:

首先考慮一個閉環(huán)系統(tǒng)的故障診斷問題.假設(shè)一個系統(tǒng)的開環(huán)故障可以用模型方程(1)和(2)或者方程(3)來表示,并假設(shè)這個系統(tǒng)由一個控制器K(s)控制.很顯然,在這個模型下,故障診斷濾波器(6)可以同樣應(yīng)用于這個系統(tǒng),如圖3 所示.

圖3 閉環(huán)故障診斷Fig.3 Closed-loop fault diagnosis
在這個模型假設(shè)下,因為故障診斷濾波器F(s)的設(shè)計與u 是如何產(chǎn)生的無關(guān),所以故障診斷濾波器F(s)的設(shè)計與控制器K(s)也無關(guān).也就是說,閉環(huán)故障診斷和開環(huán)故障診斷是一樣的,這顯然是不合理的.
我們進一步用一個簡單的例子來說明.下面考慮一個簡單的集成電路如圖4 所示.

圖4 開環(huán)系統(tǒng):一個簡單集成電路Fig.4 Open-loop system:a simple IC
這個電路可以描述為

假設(shè)R0C=0.2.并假設(shè)電路的可能故障是電阻R 的連接.即當δ(t)=0 表示電路完全正常,而當δ(t)=-1 則表示電路完全斷開.傳統(tǒng)的做法是采用模型(1),假設(shè)故障診斷模型為

其中,假設(shè)故障信號f=-δ(t)xm是個外加信號.據(jù)此,一個故障檢測觀測器可以設(shè)計為


這似乎表明只要L >0 足夠大,殘差信號em就能很快正確地檢測到故障的發(fā)生(即em跟蹤f).但是事實并非如此,因為真實測得的信號是y,不是ym.因此真實的故障檢測觀測器方程為


為了說明真實殘差信號er與基于錯誤模型的殘差信號em的差異.假設(shè)

則

由此可以看出,xs(t)取決于輸入信號u(t).如果輸入信號u(t)很小或者其時間平均值很小,xs(t)就會很小.因此真實的殘差信號er也就會很小.從而無法判斷是否發(fā)生了故障;另一方面,如果輸入信號u(t)很大或者其時間平均值很大,則無論是否發(fā)生故障,xs(t)都會很大.因此真實的殘差信號er也就會很大.進而我們?nèi)匀粺o法判斷是否發(fā)生了故障.
由上述例子可以得出:把系統(tǒng)內(nèi)部參數(shù)變化(故障)看成是外部輸入信號是不合理的.
下面我們考察上例系統(tǒng)在閉環(huán)情況下的故障演變過程.假設(shè)這個簡單集成電路由一個增益為K=10 的閉環(huán)控制器控制,如圖5 所示.

圖5 閉環(huán)系統(tǒng):一個簡單集成電路Fig.5 Closed-loop system:a simple IC
那么這個系統(tǒng)的閉環(huán)系統(tǒng)狀態(tài)方程為

它的時域響應(yīng)如下

可以看到,這個故障對閉環(huán)系統(tǒng)性能的影響幾乎可以忽略.同時因為無論是否發(fā)生故障,xs(t)都無多大變化,從而真實的殘差信號er也無多大變化,我們無法從殘差判斷是否發(fā)生了故障.這個例子同時也印證了我們的實際經(jīng)驗:故障在閉環(huán)系統(tǒng)中的影響與在開環(huán)系統(tǒng)中的影響是根本不同的.
注3.綜上,得出以下結(jié)論:
1)現(xiàn)行的故障診斷模型不夠合理;
2)基于現(xiàn)行的故障診斷模型進行故障檢測與診斷不可行,不能真正解決診斷問題;
3)需要新架構(gòu)和新方法;
4)有些故障并不需要檢測或診斷;
5)需要依據(jù)故障是否需要檢測建立故障的新分類方法.
綜上所述,故障是系統(tǒng)內(nèi)部發(fā)生了變化.它可能是系統(tǒng)內(nèi)部一些參數(shù)的變化,也可能是局部結(jié)構(gòu)的變化.因此從魯棒的角度來看,故障是系統(tǒng)變化,表現(xiàn)出來即為系統(tǒng)的不確定性.系統(tǒng)的容錯就是使得系統(tǒng)具有魯棒性.如果系統(tǒng)的一個故障對系統(tǒng)所要實現(xiàn)的目標(即系統(tǒng)性能)危害很小,那么這個故障就可以認為是微小故障,反之則可認為是小故障、中故障、大故障,等等.對故障危害程度的分級將對系統(tǒng)安全運營維護的決策提供重要的依據(jù).按照這樣的原則,可以對故障按其危害程度進行分級,這種分級可以借助于不確定性與系統(tǒng)魯棒性能的關(guān)系.更進一步,可以對故障的結(jié)構(gòu)進行分類,從而分辨出哪些故障對系統(tǒng)性能的影響是相近的,哪些是有本質(zhì)區(qū)別的.
很自然,按照連續(xù)性原理,如果一個故障對系統(tǒng)模型造成的差異很小(即不確定性很小),那么它對系統(tǒng)性能的影響也會很小;反之則不一定.這一點在前述閉環(huán)集成電路的例子中可以很清楚地說明.故障前電路系統(tǒng)傳遞函數(shù)可以描述為

完全故障后電路系統(tǒng)傳遞函數(shù)可以描述為

按照通常的度量,一個系統(tǒng)由穩(wěn)定變成不穩(wěn)定是一個巨大的故障.然而,我們已經(jīng)知道它對閉環(huán)系統(tǒng)性能的影響實際上是微乎其微的.
我們通過下面的例子來進一步說明傳統(tǒng)的開環(huán)系統(tǒng)差異(距離)和閉環(huán)系統(tǒng)差異的關(guān)系.考慮下面三個開環(huán)系統(tǒng)

和一個控制器K=10,如圖6 所示.如果從傳統(tǒng)系統(tǒng)差異來看,不穩(wěn)定的P1和穩(wěn)定的P2以及不穩(wěn)定的P1和穩(wěn)定的P3有根本區(qū)別,而穩(wěn)定的P2和穩(wěn)定的P3似乎比較相近.但是它們相應(yīng)的閉環(huán)傳遞函數(shù)為


圖6 傳統(tǒng)閉環(huán)系統(tǒng)Fig.6 Traditional closed-loop system
因此,從閉環(huán)反饋控制角度來說,P1和P2這兩個系統(tǒng)很近.而P2(或者P1)和P3這兩個系統(tǒng)很遠.并且有

它們的階躍響應(yīng)分別在圖7 中顯示.

圖7 閉環(huán)系統(tǒng)T1,T2和T3 階躍響應(yīng)Fig.7 Step responses of the closed-loop systems T1,T2 and T3
從以上例子可以看出,傳統(tǒng)系統(tǒng)差異的度量無法準確地預(yù)測其閉環(huán)系統(tǒng)性能的變化.
我們需要一個新的度量從系統(tǒng)開環(huán)模型的差異(距離)來判斷閉環(huán)之間的差異,因此,首先需要確定一個度量閉環(huán)系統(tǒng)性能的指標.
假設(shè)K 是一個使閉環(huán)系統(tǒng)鎮(zhèn)定的控制器,定義系統(tǒng)性能指標與穩(wěn)定裕度為

則bP,K=bK,P,并且0 <bP,K≤1.
這個指標是一個合適的閉環(huán)系統(tǒng)性能指標與穩(wěn)定裕度.有關(guān)這個指標的詳細論述可參見文獻[4].
在此,我們列出幾個比較明顯的結(jié)果:bP,K>0意味著K 也魯棒鎮(zhèn)定下列不確定系統(tǒng):
1)加性不確定性.Pa=P +Δa,其中Pa與P具有相同的不穩(wěn)定極點并且‖Δa‖∞<bP,K.
2)乘性不確定性.Pm=(I +Δm)P,其中Pm與P 具有相同的不穩(wěn)定極點并且‖Δm‖∞<bP,K.
3)反饋不確定性.Pf=(I+Δf)-1P,其中Pf與P 具有相同的不穩(wěn)定極點并且‖Δf‖∞<bP,K.
4)互質(zhì)分解不確定性.Pfac=(M +Δm)-1(N+Δn),P=M-1N 并且‖[ΔmΔn]‖∞<bP,K.
因此,很顯然,bP,K越大,系統(tǒng)的魯棒性能越高.從現(xiàn)在起,我們默認一個控制系統(tǒng)的目標就是要保持bP,K越大越好.
給定一個被控系統(tǒng)P,可以找到一個使bP,K最大的最優(yōu)控制器Kopt.從文獻[4] 可以得到

其中,Y ≥0和Q ≥0 滿足

為了定義一個系統(tǒng)距離,我們需要在此明確幾個概念.首先給出奈奎斯特輪廓Γ 如圖8 所示.

圖8 奈奎斯特輪廓Fig.8 Nyquist contour
定義1.一個標量傳遞函數(shù)g(s)的匝數(shù)wno(g(s)),即為當g(s)在奈奎斯特輪廓Γ 上取值時所畫出的封閉曲線逆時針繞原點的個數(shù)(順時針繞原點的個數(shù)記為負數(shù)).
令η(g(s))為g(s)在開右半平面極點個數(shù),η0(g(s))為g(s)在虛軸上的極點個數(shù).如果g(s)是雙正則的,即g(s)和g-1(s)都是正則傳遞函數(shù).那么

即wno(g(s))=開右半平面零點個數(shù)-開右半平面極點個數(shù).
同樣地,如果P(s)是一個矩陣傳遞函數(shù),則η(P(s))是P(s)在開右半平面極點個數(shù),η0(P(s))是P(s)在虛軸上的極點個數(shù).
定義2.假設(shè)P1和P2是兩個正則矩陣傳遞函數(shù).則它們的ν-間隙度量為

其中

假設(shè)1.如果并且η0(P2)=0.
如果P1和P2是兩個標量傳遞函數(shù).則有

下面的結(jié)果是后面故障分級和分類的基礎(chǔ).詳細的證明參見文獻[7] 以及文獻[4].
引理1.假設(shè)(K,P)是一個閉環(huán)鎮(zhèn)定的系統(tǒng)對,是擾動后的系統(tǒng)與控制器.如果和滿足rK<1.則也是一個閉環(huán)鎮(zhèn)定的系統(tǒng)對,當且僅當.

并且有

以上不等式表明,從常規(guī)度量看,無論系統(tǒng)的模型有多大的變化,只要ν-間隙度量足夠小,閉環(huán)系統(tǒng)性能變化就會很小.
在第1 節(jié)和第2 節(jié)的例子中:

由此可以看出,在集成電路的故障中,閉環(huán)系統(tǒng)在足夠大控制器增益下,閉環(huán)性能變化很小.
同樣地,由于

系統(tǒng)由P1變化到P2時,閉環(huán)系統(tǒng)的性能變化不太大.但是當系統(tǒng)由P1(或者P2)變化到P3時,閉環(huán)系統(tǒng)的性能變化有可能較大(至少無法保證變化較小).
注4.兩個系統(tǒng)P1和P2之間的ν-間隙度量可以定義為

即,兩個系統(tǒng)P1和P2之間的ν-間隙度量是對任意鎮(zhèn)定控制所產(chǎn)生的性能指標的最大變化.
利用上面定義的ν-間隙度量可以對一個系統(tǒng)可能發(fā)生的故障集合進行分級與分類.假設(shè)系統(tǒng)的標稱模型為P,故障發(fā)生后可能的模型為

其中,{P1,P2,···,P10}表示故障1,2,···,10 單獨發(fā)生時的模型,P1,5表示故障1和故障5 同時或者相繼發(fā)生后的系統(tǒng)模型,以此類推.
如果故障后的模型與標稱模型之間的ν-間隙度量很小,我們就認為是微小故障.否則認為是小故障、中故障、大故障,等等.故障集合可以按照各個故障對系統(tǒng)性能影響的危害程度分成若干個等級,如圖9 所示.

圖9 故障按照對系統(tǒng)性能影響程度分級示意圖Fig.9 Illustrative diagram for fault classification according to its impact on system performance
圖10 顯示了按照故障系統(tǒng)相對原系統(tǒng)的ν-間隙度量距離分成故障各等級:

圖10 按ν-間隙度量分成故障等級示意圖Fig.10 Illustrative diagram for fault classification according to ν-gap metric
...
一個故障集合究竟要分成多少個等級以及如何確定每個等級的閾值ξi,取決于具體的問題.
同一個級別的故障,其閉環(huán)特性也會有所不同.因此我們將對同級別故障進行分類.微小故障顯然具有相同的閉環(huán)特性,因此屬于同類.而小故障、中故障、大故障即使是同級,也可能具有本質(zhì)上不同的閉環(huán)特性,因此屬于不同類別.圖11 中顯示了4 個不同的故障:微小故障P0,嚴重故障P1,P2,P3.雖然P1,P2,P3都是嚴重故障,但P2和P3之間的ν-間隙距離,即δν(P2,P3)很小.因此故障P2下的閉環(huán)系統(tǒng)與故障P3下的閉環(huán)系統(tǒng)具有相近的閉環(huán)特性.另一方面,P1和P2之間的ν-間隙距離以及P1和P3之間的ν-間隙距離都很大,因此故障P2下(或者故障P3下)的閉環(huán)系統(tǒng)特性和故障P1下的閉環(huán)系統(tǒng)特性可能會有非常大的差異.因此P2與P3屬于同類同級故障,而P1與P2(或者P3)是同級但不同類故障.故障分級和分類對容錯控制策略的設(shè)計至關(guān)重要.很顯然,同類的故障只需要一個容錯控制器.

圖11 故障集合分類示意圖Fig.11 Illustrative diagram for fault type classification
上述分析表明,故障診斷領(lǐng)域過去一直沿用的模型(1)~(3)并不真正實用.用這樣的模型無法給實際系統(tǒng)中出現(xiàn)的故障建模.我們認為一個系統(tǒng)中的任何故障都是由于系統(tǒng)內(nèi)部發(fā)生了變化,而不是外部輸入信號所能為的.這種變化一般都可以用系統(tǒng)的參數(shù)變化來表達.本模型中,我們假設(shè):故障總是可以用參數(shù)δi∈[-1,0],i=1,···,m 表征,其中,1)δi=0 表示無故障;2)δi=-1 表示全故障;3)-1 <δi<0 表示中間故障(或者部分故障).
一般故障診斷模型可以用圖12 表示.它的輸入輸出形式為


圖12 新故障診斷模型結(jié)構(gòu)Fig.12 New model structure for fault diagnosis

或

其中,Δ=diag{δ1Ir1,δ2Ir2,···,δmIrm},ddd 表示所有外部擾動,u 表示所有系統(tǒng)輸入,y 表示所有可測輸出信號(包括常規(guī)輸出和任何對故障診斷有用的信號).
在這個模型的假設(shè)下,故障診斷可以認為是參數(shù)估計問題.設(shè)

特別是在單輸入單輸出時,如果參數(shù)方程可以關(guān)聯(lián)為線性方程

其中,φ(t)和ψ(t)可以從輸入輸出數(shù)據(jù)計算出,n(t)是噪聲或擾動.一個估計δ(t)的離散方法可以用最小二乘算法,即

其中,N 是實時計算的時間窗口.但具體算法尚待進一步探討.
在獲得故障診斷、故障分級和故障分類等信息的基礎(chǔ)上,我們可以利用文獻[8-10] 中提出的高性能控制結(jié)構(gòu)給出圖13 中容錯控制的一般構(gòu)架.

圖13 容錯控制的一般架構(gòu)Fig.13 The general framework for fault tolerant control
其他控制器設(shè)計參見文獻[8-10].這些具體設(shè)計也是有待進一步研究的課題.
本文通過簡單的系統(tǒng)論述了過去沿用的故障診斷模型并不真正實用的原因,其并不能正確地為故障系統(tǒng)建立診斷模型.并由此提出了一個新的故障診斷建模方法,以及故障分級和分類的算法.最后,在此基礎(chǔ)上提出了一個容錯控制的一般控制架構(gòu).
另外,如果把本文中的ν-間隙度量(ν-gap)換成間隙度量(gap)[11-15],則所有的論述仍然成立.但間隙度量(gap)相對更保守,計算起來更復(fù)雜.更重要的是,ν-間隙度量與頻率響應(yīng)有著密切聯(lián)系,具有推出更不保守結(jié)果的潛能,因此,使用ν-間隙度量會有更進一步的探索空間.