第二章 即時錯誤鑑別法
2.1 傳統多餘元件式容錯系統
2.1.5 錯誤鑑別於雜訊影響時的傳統處理方式
傳統的錯誤鑑別法有分為非即時與即時兩種方式。因為實際量測系統透過等值方程 式後的剩餘值不會為 0,將會是一堆雜訊干擾,而要去區隔出雜訊和錯誤訊號就要先把 雜訊處理完。最簡單的作法就是將等值方程式的輸出值作一平均值計算,當雜訊為高斯 雜訊(Gaussian noise)或是白雜訊(White noise)具有平均值為 0 的特性時,可找出是否有錯 誤訊號的存在。然而,若雜訊不具有計算平均為 0 的性質,則我們必須設定所謂觀察期
: Average value
fault occur
2.2 即時錯誤鑑別法(Real-time Fault Identification) 2.2.1 統御方程式(governing equations)
在此,我們提出一種即時的錯誤鑑別法。在本方法中,“錯誤鑑別"被視為一個狀 態估測的問題(states estimation problem),並藉由“擴增卡曼濾波器"(Extended Kalman Filter)及“儲存記憶褪去法"(Fading memory)的技巧建構適當的狀態觀察器(state observer) 或叫狀態估測器(state estimator),將每一元件的誤差量即時的估測出。因此,此方法具即
continuous time d d
d +
:
vot vot real vot
p
Output equation p
aux
voting real 0 係數為 0 的元件。而我們由 voting equations 錯誤鑑別法(2.1.4)知當錯誤訊號開始發生時,
有任意n+1條 voting equations 輸出會不為 0,但不包含某個出錯元件所對應的 voting
上述的設計步驟的限制條件就是只允許在同一時間時只能有一個元件發生錯誤的情況 下才能正確估測出錯誤量(即只能有一個d 存在,其與 parity equations 及 voting equationsj 的限制條件一致)。由於本系統使用卡曼濾波器作估測,Eq.(2.13)的輸出不能零向量表 示,須設一雜訊項,因為卡曼濾波器的量測雜訊協方差矩陣(Measurement noise covariance matrix)會有奇異性的問題產生。
1 2
aux aux aux aux
vot
2.2.4 隨時間變化的錯誤訊號(time-varying fault or drift)
之前我們是利用定值錯誤訊號(dc-offset)來解釋本論文提出的鑑別架構法則,然而對
器來說適用於系統動態性不變時,所以必須加入適應性(adaptive)的概念,本論文是採用
“儲存記憶褪去法"(Fading memory)來使卡曼濾波器具有適應性的功能以達到即時估測 時變訊號的變動。
2.2.5 本作法的特色
z 使用即時(real-time)運算方法取代了傳統錯誤鑑別使用離線(off-line)的方法。
z 搭配擴增卡曼濾波器使用可使得估測出的錯誤訊號即為實際的錯誤訊號,意即卡曼 濾波器可以將雜訊濾掉保留住估測狀態値。
z 配合觀察器即可正確的達到錯誤估測目的,減少了系統複雜度。
2.3 儲存記憶褪去式卡曼濾波器(Kalman filter with fading memory) 2.3.1 卡曼濾波器
於 1960 年,由 R.E. Kalman 所發表一篇著名的論文中,利用遞迴(recursive)來解決離 散資料的線性濾波問題。由於此時電腦數值計算正蓬勃的發展,因此卡曼濾波器在控制 與導航系統領域中被大量的研究及應用。
卡曼濾波器是一種最佳化的估測器,它可以間接從不準確及不確定的量測值來獲得 系統的狀態變數,尤其對於雜訊來源為高斯雜訊(Gaussian noise)時,卡曼濾波器可以得 到最小化的均方誤差(mean square error)。
2.3.2 擴增型卡曼濾波器(Extended Kalman Filter, EKF)
卡曼濾波器是適用於線性系統估測問題時處理,但本論文的系統是屬於非線性問 題,故要使用擴增型卡曼濾波器來使得非線性轉換成線性化問題來處理。
考慮以下的非線性系統:
measurement equation z h k x v v mearsurement noise k
+ = +
= + (2.16)
擴增卡曼濾波器的設計方法分為兩個主要步驟:1.狀態的預測(prediction of states) 2.狀態 的修正(correction of states)。"狀態的預測 "是指從這此刻的狀態及輸入來估測下一刻 時間的狀態。 我們稱上式為"prediction equation “,其中
P
k稱為狀態值估測協方差矩陣(state covariancematrix),定義成Pk =E x[(ˆk −xk)(xˆk −xk) ]T , ˆx 則是估測的狀態值。k Q 是系統雜訊的協方k
我們可以把 EKF 用流程圖表示:
圖 2.1 擴增型卡曼濾波器流程圖
圖 2.2 系統與擴增型卡曼濾波器方塊圖
2.3.3 儲存記憶褪去法(Fading memory) 褪去式卡曼濾波器( Kalman Filter with Fading memory)。這種濾波器在文獻[9][10][11]中有 提到,除了上述幾個改善特點外,它是非常有利於狀態值在某些時候發生了不規則跳動 方程式的變動而定,若是目前輸出維持著先前的大小時,不去更動 covariance prediction equation。若是輸出開始有了變動時(這時就可能是系統動態性發生變化或是狀態值突然 改變不依照系統矩陣所產生),開始褪去之前所倚賴的狀態累積記憶資訊,轉而加大目 前的狀態差異性矩陣迫使系統接收到開始不收斂的情況,讓卡曼增益能夠再度變大以提 高估測值更新的變動量。而利用褪去狀態累積記憶資訊的作法便是加入一個褪去因子 (forgetting factor) λk,使得系統之前所累積的收斂資訊以指數衰減的方式褪去。加入褪 去因子後的卡曼濾波器只需改變 prediction equation:
1 1
T
k k k k k k
P−+ =λ + A P A +Q (2.20)
其λk ≥ ,這個因子等於 1 時是一般卡曼濾波器,若是大於 1 時便成為了儲存記憶褪去1 式卡曼濾波器。所以這種濾波器的性能是完全取決於褪去因子的選擇來切換功能。
接下來就是決定褪去因子演算法則,這個因子係利用最佳化的理論來推導出來(文 獻[7])。首先,先計算輸出殘餘值的差異性矩陣(covariance of residuals):
0 [ k kT] k k kT k
但如果系統動態均不變,則 M =N ,於是λk=1,這時褪去因子便不發生作用。
在 2.2.4 節中提到的隨時間變化的錯誤訊號,因為我們把欲估測的錯誤訊號當作成 一靜態系統(A:identity matrix),所以當錯誤値在變化時系統便產生動態性,亦即系統的 靜態性被改變,所以適合運用儲存記憶褪去法來改善。
把加入儲存記憶褪去法後的 EKF 的流程圖:
圖 2.3 儲存記憶褪去式卡曼濾波器流程圖
2.4 使用卡曼濾波器於本系統上
vot vot vot vot
real k k
則
第三章
3.2 狀態回授法(state feedback)
3.2.1 介紹
1
們可藉由 Z 轉換(Z-transform)的關係得到特徵方程式 det(Ζ − +I A Bα)= (3.6) 0 來決定閉迴路極點。
3.3 系統穩定性(stability)
以離散時間系統來說,若是要求其狀態回授後的系統穩定,則此系統的特徵方程式 (characteristic equation)的特徵值(eigenvalues)(極點)需位於單位圓(unit circle)內。以 Eq.(3.5) 為例,方陣
(
A−Bα)
的特徵值假設為µi,則對於所有的µi來說均需小於 1。在這個拘束而由 Eq.(2.7)我們知m=mreal +dk+1+ ,則將 Eq.(3.9)代入得 e
加入了狀態回授的方法後,這個系統即可形成一個感測容錯系統,可以一個完整的
在此假設輸出方程式的虛設雜訊為 0,而輸出方程式
第四章
模擬結果與討論(Simulation result and discussion)
為了驗證我們提出即時錯誤鑑別法及狀態回授更正法,利用電腦軟體 Matlab 作演算 可得出 parity equations 及 voting equations:
1 0 0.5 0 parity equations :
1 0.2 0 0
( )
4.2.2 錯誤訊號為定値(dc-offset)時鑑別情形
我們先假設感測器此時發生的錯誤訊號為一定值錯誤訊號(dc-offset),而設定出錯的 對象為第一個感測器(SensorM )。經由 Matlab 輔助我們所設計的演算法得出模擬顯示,1 圖 4.1 中為各感測器的輸出訊號圖,而其理想訊號輸出以虛線表示,實際輸出訊號以實 線表示。可以發現感測器M 因為受到一個錯誤訊號影響,整體的輸出訊號與理想輸出1 產生一個差量。而在圖 4.2 中,利用我們提出的即時鑑別的方法,可以成功估測到這個 錯誤訊號是一個輸出訊號單位為 1 的偏差值,其他兩個感測器因為沒有受到錯誤訊號影 響,故其所估測到的錯誤值均為 0。而圖 4.3 中顯示即時鑑別法如何去鑑別出錯誤的元 件,在 2.2.2 節裡有提到,當有某個元件出錯時,所對應的 voting equation 會是 0。所以 缺少感測器M 的 voting equation 為 0,此時由此判別出感測器1 M 是出錯的。 1
圖 4.2 各感測器輸出訊號圖(錯誤訊號:dc-offset)
圖 4.3 voting equation 輸出圖(錯誤訊號:dc-offset)
圖 4.4 各感測器錯誤訊號估測圖(錯誤訊號:dc-offset)
圖 4.5 各感測器估測誤差圖(錯誤訊號:dc-offset)
圖 4.6 各感測器估測誤差標準差圖(錯誤訊號:dc-offset)
感測器編號 M 1 M 2 M 3 標準差 0.031825 0.0025865 0.0050269
表 4.1 各感測器經過 10 秒後估測錯誤値誤差標準差
感測器編號 M 1 M 2 M 3
標準差 0.0019061 0.00026667 0.00012381
表 4.2 各感測器計算 8~10 秒後估測錯誤値誤差標準差
4.2.3 錯誤訊號為隨時間變化(time-varying)時鑑別情形
現在,我們藉由即時鑑別法在去鑑別估測當錯誤値會變動的情形。這時我們將出錯 元件設定為第 2 個感測器(SensorM ),與 4.2.1 所描述的情形一樣,圖 4.6 亦為各元件輸2 出訊號圖,圖 4.8 顯示本法確實可以估測到偏壓緩慢變動情形。而圖 4.7 產生現象解釋 與圖 4.2 說法一致。此錯誤訊號隨時間變動的函數:
2( ) 2 0.4 sin(1 ) 0.4 cos(1.75 ) 0.2 cos(1.6 )
d t = + ⋅ ⋅wf t⋅ + ⋅ ⋅wf t⋅ + ⋅ ⋅wf t⋅ (4.6)
圖 4.7 各感測器輸出訊號圖(錯誤訊號:time-varying fault)
圖 4.8 voting equation 輸出圖(錯誤:time-varying fault)
圖 4.9 各感測器錯誤估測圖(錯誤訊號:time-varying fault)
圖 4.10 各感測器估測誤差圖(錯誤訊號:time-varying fault)
圖 4.11 各感測器估測誤差標準差圖(錯誤訊號:time-varying fault)
感測器編號 M 1 M 2 M 3
標準差 0.0079095 0.088713 0.027306
表 4.3 各感測器經過 10 秒後估測錯誤値誤差標準差
感測器編號 M 1 M 2 M 3
標準差 0.0047875 0.032821 0.00071747
表 4.4 各感測器計算 8~10 秒後估測錯誤値誤差標準差
4.2.4 使用儲存記憶褪去法的差別
前面我們有提到,使用一般擴增型卡曼濾波器只能估測系統動態不變化時或是狀態 值為靜態的情況。但是針對錯誤訊號為隨時間變化時,上述所便會發生估測延遲或是估 測不準確的情形,所以在本論文才會使用儲存記憶褪去法來改善這項缺失,而我們以
4.2.2 中第二個感測器出錯的例子來比較,在圖 4.11,左圖模擬時是加入了儲存記憶褪去 法的估測情況,而右圖則是沒有儲存記憶褪去的一般擴增卡曼濾波器。
圖 4.12 比較有無採用儲存記憶褪去法時估測
4.2.4 本即時錯誤鑑別法所能估測到最小錯誤量
本模擬給予感測器雜訊的標準差為 0.1 量測單位,而其最小可以估測到的錯誤訊號 大約為雜訊的 1/10 大小,可以說錯誤訊號若是與雜訊同樣大小時,利用本即時鑑別法也 可以成功的鑑別出。
圖 4.13 感測器M1於各種不同錯誤值時估測情形
4.3 即時錯誤更正模擬
4.3.1 單一感測器錯誤補償更正
令感測器M 發生錯誤,而其錯誤訊號為定值錯誤訊號。而回授增益值1 λ 設為 0.02,
圖 4.13 可以看出加入狀態回授後可將帶有錯誤值的量測訊號更正為理想時的正確訊 號,圖 4.14 為即時估測出錯誤値經狀態回授後將其更正至 0。在 3.4 節中所提到更正不
足現象由圖 4.15 說明,將三個感測器更正後的値與理想輸出訊號作一誤差比較,由平均 值 看 出 ( 表 4.6) , 更 正 後 狀 態 值 的 方 向 會 停 在 C 的 零 空 間 方 向 上 (null C( )=
[
0.9129 0.3651 0.1826]
),其大小約為r≈0.05。但 r 並不會每次固定,它會 隨著數值解的不同而有所改變。為了實際印證出系統穩定時dˆ→0,但不一定d→0,藉由本節的例子模擬 Eq.(3.14)的 系統,圖 4.16 可以看出d d dˆ ˆ1, 2, ˆ3 →0,但d d d1, 2, 3 → 。 0
圖 4.14 各感測器輸出訊號更正補償圖(錯誤訊號:dc-offset)
圖 4.15 各感測器錯誤訊號更正(錯誤訊號:dc-offset)
圖 4.16 錯誤更正誤差圖(錯誤訊號:dc-offset)
感測器編號 M 1 M 2 M 3 標準差 0.099096 0.10279 0.10479
表 4.5 各感測器經錯誤更正後計算 3~5 秒誤差標準差
表 4.5 各感測器經錯誤更正後計算 3~5 秒誤差標準差