劉勇 石翠 李小兵
(工業和信息化部電子第五研究所 廣東省廣州市 510620)
大型工業過程是由許多組件組成的系統,這些組件可以通過物理連接相互作用。由于計算的復雜性和通信帶寬的限制,用集中的結構來估計/監視狀態或控制這些系統是不容易的[1]。近年來,人們越來越感興趣的是將一個完整的設備組成幾個子系統,然后對每個子系統進行分布式控制和狀態估計。分布式控制器設計方法和迭代協調算法引起了人們的廣泛關注[2]。
容錯控制問題已成為現代控制系統和實際應用中的一個重要課題[3]。現代控制系統需要滿足高控制性能和安全要求。對于復雜系統,傳感器、執行器或其他系統組件可能存在故障[4],這將導致控制性能下降,甚至導致系統不穩定。為了解決可能出現的故障,許多容錯控制方法被提出,以保持理想的穩定性和性能要求[5]。這些方法被稱為容錯控制系統,可以自動處理故障的影響,同時確保所需的控制性能。容錯控制系統一般分為兩類[6]。一種稱為被動容錯控制,在這種控制中,控制器被可靠地設計來處理假定的故障,因此需要一個故障檢測和診斷方案或控制器重新配置。另一種是主動容錯控制,它可以通過重新配置控制輸入以保持可接受的控制性能來主動響應故障。
雖然,容錯控制方案受到了諸多關注,但是分布式容錯控制方案卻很少受到關注。本文針對傳感器故障問題,設計分布式故障診斷和容錯控制框架,利用分布式卡爾曼濾波方法對故障進行診斷,并設計分布式MPC 進行容錯控制。
本文考慮一類如下形式的一般非線性系統:


通過將非線性模型(1)沿典型工作點進行線性化,得到系統在工作的的線性化模型描述如下:


傳感器故障意味著一些系統測量信息不可用于系統控制,使得控制性能下降,甚至導致系統的不穩定性。傳感器輸出在時間t 時可能出現故障,用以下等式表示:

本文設計一種分布式容錯控制方案,以應對非線性系統中的傳感器故障,該控制結構的主要組成部分包括分布式狀態估計模塊、故障診斷模塊和分布式MPC 容錯控制。利用分布式卡爾曼濾波對不可測系統狀態進行估計,檢測和定位發生故障的傳感器,故障信息被傳輸到分布式MPC,以自動處理傳感器故障的影響,同時保持所需的控制性能。
對于非線性系統,擴展卡爾曼濾波器是連續線性化非線性系統的離散時間濾波器。在本節中,設計分布式擴展卡爾曼濾波器對狀態進行估計。卡爾曼濾波器有兩個步驟,即預測步驟和更新步驟[7]。子系統i 的分布式EKFi 給出如下:
(1)預測步驟:

(2)更新步驟:

(1)在t0=0 時,給定初始子系統狀態的猜測,并測量子系統輸出將其迭代為it=1,并重復以下步驟:
(2)對于tk>0 的時間,每個估計器接收上一次相鄰子系統的狀態估計值,輸出測量值
(6)在下一個采樣時間tk+1 執行步驟(2)。
建立了基于分布擴展卡爾曼濾波的狀態估計,為容錯控制方案做好了準備。
為了處理重要傳感器可能出現的故障,假設有兩組傳感器系統(p=1,2),以保證其中一套傳感器故障時,可以切換到另一套傳感器繼續運行;本節設計故障診斷方案,假設系統中一次只有一個傳感器故障,建立分布式故障診斷模塊,該機構可用于檢測和定位可能的傳感器故障。具體地說,就是為每個子系統開發了一個故障診斷模塊,每個模塊由幾個關鍵部件組成:局部擴展卡爾曼濾波器、分布式MPC 和殘余發生器。狀態預測器用于提供參考狀態軌跡,并將其發送到相應的殘差發生器。通過計算局部分布擴展卡爾曼濾波器給出的狀態估計與子系統狀態預測的偏差,相關的殘差發生器生成剩余信號序列。



在沒有傳感器故障的情況下,當估計誤差收斂到一定的小區域后,每個殘差將保持在一定的水平以下。因此,在整個系統的估計誤差通過仿真收斂后,考慮子系統估計誤差的上界,可以選擇合適的子系統殘差檢測閾值。當考慮非線性過程時,這種處理通常用于閾值選擇。基于這種方法,當任何剩余信號超過相應的閾值時,它表示設備發生故障。我們使用此屬性來檢測和定位各子系統發生的傳感器故障。接下來,我們用表示殘差信號的檢測閾值對于故障診斷機制在每個采樣周期內通過網絡通信從故障診斷模塊的接受殘差信號。故障診斷機制將所有殘差信號與相應的閾值進行比較。如果任何剩余信號超出其閾值(即則發生傳感器故障。
通常,MPC 以集中的方式執行。然而,對于大型系統(1),本節給出導出分布式MPC 容錯控制方案,由于MPC 是在線進行設計的,因此在獲知傳感器故障時,可以利用冗余的控制器進行重新設計,保證系統的性能。本節將設計離散形式的分布式MPC 算法,即對系統模型(3)進行離散化,得到:

其中,Ad,ii,Bd,ii表示子系統i 對應的系統矩陣;Ad,ij,Bd,ij表示和子系統i 關聯的子系統j 對應的系統矩陣;xi(tk+l+1|tk)表示子系統i的狀態;yi(tk+l)表示tk+l 時刻子系統i 對應的系統輸出;tk+l+1|tk在tk時刻對將來tk+l+1 時刻的預測。
成本函數考慮如下:


然后,通過在每個k 時刻求解以下問題來優化第i 個子系統的輸入:

在考慮相鄰子系統j 的影響的情況下,考慮了全局成本函數對第i 個控制輸入的優化,可以保證在其他子系統的傳感器失效的情況下,依靠健康的子系統控制,仍能保證系統的性能。需要注意的是,問題(16)將被轉化為二次規劃問題 進行求解,需要一種迭代算法來協調分布式控制器,通過給出一個閾值來檢查的收斂性:
(6)設置tk=tk+1 并轉到第一步。
以上,完成了基于分布式MPC 的部分傳感器故障容錯控制。
考慮如下帶有傳感器故障的系統:

利用本文所提出的分布式MPC 對該系統進行容錯控制,該系統包含兩個系統輸入,即和本方案中,對兩個系統輸入進行單獨設計,利用故障診斷方法,對系統的傳感器故障進行檢測,并反饋到分布式MPC 設計中,如果其中一個傳感器失效,則利用備用傳感器進行控制,保證系統的性能。系統的初始狀態為控制時域選擇為N=15,狀態和輸入的權重選擇為求黎卡提方程得到終端約束矩陣為:

假設其中一組傳感器在k=3 后開始失效,利用本文故障診斷方法,可以在下一個采樣時刻(即k=4)時檢測到故障的發生。圖1-3給出了三個子系統狀態的變化情況,圖4-5 給出了相應的控制輸入情況,將本文方法和無故障情況下的控制性能進行了對比,并引入集中式MPC 的容錯控制方法進行對比。與不帶故障的控制性能相比,雖然發生故障后性能下降,但是仍能保持較好的性能。結果表明本文能夠診斷出帶故障的傳感器,在發生傳感器器失效故障時,仍能夠保證系統控制性能,達到和集中式MPC 一致的控制效果。

圖1:系統狀態1 的動態

圖2:系統狀態2 的動態

圖3:系統狀態3 的動態

圖4:控制器輸入1 的動態

圖5:控制器輸入2 的動態
本文基于分布式MPC 和狀態估計的優勢,研究了一種分布式容錯控制方案,通過提出殘差發生器,推導出分布式故障檢測診斷模塊,研究分布式MPC 框架,開發了故障補償策略,保證系統在傳感器故障情況下的控制性能。