張 柯, 夏靜萍
(南京航空航天大學 自動化學院,江蘇 南京 211106)
虛擬仿真技術探索與實踐
多智能體系統故障診斷仿真實驗開發
張 柯, 夏靜萍
(南京航空航天大學 自動化學院,江蘇 南京 211106)
利用Matlab開發了多智能體系統仿真實驗,通過編寫m文件求解故障診斷觀測器增益矩陣,可以進一步加深對多智能體系統分布式故障診斷算法的理解。利用Simulink搭建的仿真實驗,學生可以直觀、清晰地學習故障診斷觀測器在線故障診斷,并準確辨別出現故障的智能體以及完成準確故障診斷。將該開發的仿真實驗應用到研究生課程教學中,取得了良好的教學效果。
多智能體系統; 故障診斷; 仿真實驗; Matlab
故障診斷與容錯控制是控制科學與工程中一個非常重要的研究方向,可以提升系統的可靠性和安全性,因而在軍事和民用領域都具有重要的應用價值[1-3]。南京航空航天大學自動化學院從2013年開設了全英語授課的“控制系統故障診斷”研究生課程,使用國際出版社Springer出版的英文配套教材[4-7]。
多智能系統故障診斷是“控制系統故障診斷”課程中的一個難點,也是近些年國內外研究的熱點[8-10]。多智能體系統是指由一系列具有局部感知能力、有獨立處理能力以及有相互通信能力的個體組成的系統。系統中的個體能夠通過與其他個體的通信,運用各自能力相互協作來完成共同的目標。傳統針對單個系統故障診斷方法沒有考慮多智能體系統的通信拓撲結構,難以直接應用到多智能體系統中,而多智能體系統自身具有通信鏈接、信息交互等特點。
在教學實踐中,注意到由于該課程專業性較強,有的學生不能很好地理解知識點和控制系統設計方法。本文以直升機動態模型為例,利用Matlab軟件開發了“控制系統故障診斷”課程的多智能體系統故障診斷仿真實驗,以幫助學生理解和鞏固關鍵知識點,提高學生的學習熱情和專業教學效果。
1.1 多智能體系統描述
用G=(V,E,A)來描述具有N個節點的多智能體之間有向信息拓撲結構,其中:V={v1,v2,…,vN},E∈V×V分別表示有向圖G的頂點集合和有向邊集,A=[aij]∈RN×N表示鄰接矩陣。定義(vj,vi)為從節點j到節點i的邊,代表信息可以從節點j到節點i。aij代表邊的權重,如果(vj,vi)∈E,則aij=1,否則aij=0。節點i的鄰居表示為Ni={j|(vj,vi)∈E}。定義圖G的Laplace矩陣為L=D-A,其中矩陣D=diag{di}∈RN×N的元素di=∑j∈Niaij。邊(vi,vi)形成回路,自回路矩陣G=diag{gi}∈RN×N,矩陣G至少有一個對角元素不為零。
考慮如下具有N個節點的多智能體系統,第i個智能體系統如下:
i=1,2,…,N
(1)
其中:xi(t)∈n是狀態向量,ui(t)∈m是控制輸入向量,yi(t)∈p是輸出向量,fi(t)∈r是系統元部件故障或執行機構故障,wi(t)∈d代表干擾和噪聲,A、B、C、H、D1和D2是已知的適維矩陣。
1.2 故障診斷觀測器設計
對第i節點設計如下故障診斷觀測器:
(2)

(3)
定義如下增廣向量和矩陣:
為了得到全局估計誤差方程,定義如下全局向量:
可以得到全局誤差方程:
(4)
其中:?表示Kronecter積。
1.3 故障診斷觀測器增益矩陣求解


(5)
(6)
其中:


基于Matlab仿真軟件開發的仿真實驗[11]主要包括2部分:(1)使用m文件編寫程序,求解故障診斷觀測器增益矩陣;(2)使用Simulink搭建仿真實驗,用于直觀展示多智能體系統故障診斷過程。
2.1 直升機模型的編隊模型
實驗中采用4架直升機進行編隊協同飛行,它們的通信拓撲結構如圖1所示。

圖1 通信拓撲結構
由圖1可以得到Laplace矩陣L和自回路矩陣G如下:

實驗使用如下的直升機飛行控制系統模型[12]:


其中:狀態向量為水平速度、垂直速度、俯仰角速度和俯仰角;控制輸入為總距和縱向周期變距。實驗中假設直升機出現了執行機構的故障,可得E=B,外界干擾輸入矩陣分別為:
D1=[0.1 0.1 0.1 0.1]T
D2=[0.01 0.01 0.01]T
2.2 故障診斷觀測器增益計算



2.3 Simulink仿真實驗
在Simulink中搭建多直升機編隊仿真圖(見圖2)。

圖2 多機編隊仿真圖
實驗中,對每個智能體進行封裝,每個智能體輸出的是局部輸出估計誤差eyi(t) (i=1,…,4)。用Mux模塊將每個智能體的輸出形成全局輸出估計誤差向量ey(t),進而將ey(t)輸入到每個智能體模塊,根據給定的通信拓撲結構,形成分布式故障診斷觀測器。
以智能體系統1為例,如圖3所示。用S-function分別構建該智能體的系統模型和故障診斷觀測器,即Aircraft 1和Observer 1,其中Observer 1基于Laplace矩陣L和自回路矩陣G搭建。Control Input和Disturbance Input模塊分別模擬控制輸入和外界擾動輸入。Fault Injection用于模擬執行機構故障輸入。在線故障估計值則基于Fault Estimation Module得到,用Scope模塊顯示故障估計曲線。以此類推,可構建智能體2—4的故障診斷模塊。最后,將在線故障估計數據輸出到Workspace,用subplot命令分別繪制多智能體故障估計曲線。
假設智能體系統2和智能體系統4分別在第20 s和第40 s出現執行機構偏差故障,可得到如圖4所示的仿真實驗結果。由圖4可以看出,設計的故障診斷觀測器可以準確診斷出發生的故障。

圖3 第1個智能體故障診斷設計

圖4 實驗仿真結果
基于Matlab開發了多智能體系統故障診斷仿真實驗。該仿真實驗易于操作,主要用到了m文件、S-function和Simulink計算觀測器增益矩陣并搭建仿真實驗。通過計算觀測器增益矩陣和在線實時仿真,有助于學生更加深入地理解故障診斷設計方法和具體過程,在整個教學過程中調動學生的積極性,從而取得更好的教學效果。
References)
[1] 周東華,胡艷艷.動態系統的故障診斷技術[J].自動化學報,2009,35(6):748-758.
[2] 姜斌,冒澤慧,楊浩,等.控制系統的故障診斷與故障調節[M].北京:國防工業出版社,2009.
[3] Blanke M, Kinnaert M, Lunze J, et al. Diagnosis andFault-TolerantControl[M].3rd ed. Berlin:Springer,2016.
[4] Zhang K, Jiang B, Shi P. Observer-Based Fault Estimation and Accommodation for Dynamic Systems[M].Heidelberg:Springer,2013.
[5] 夏品奇,江駒,王嚴.創新理念立足本土面向世界:南京航空航天大學研究生教育國際化探索[J].學位與研究生教育,2013(10):53-57.
[6] 劉麗霞,劉惠琴.加強國際化培養提高研究生教育質量[J].學位與研究生教育,2010(12):21-24.
[7] 徐巍華.工學研究生課程的全英文教學實踐[J].電氣電子教學學報,2013,35(2):1-2,32.
[8] Ren W, Cao Y. Distributed Coordination of Multi-Agent Networks[M].London:Springer,2011.
[9] Lewis F L, Zhang H, Hengster-Movric K, et al. Cooperative Control of Multi-Agent Systems: Optimal and Adaptive Design Approaches[M].London:Springer,2014.
[10] 楊靜.教研結合 培養研究生的創新能力[J].實驗技術與管理,2016,33(3):26-29.
[11] 馬玉真,宋方臻,邵海燕.建模仿真實例教學在研究生創新教育中的應用[J].實驗技術與管理,2012,29(6):86-89.
[12] Zhang Y M, Jiang J. Integrated active fault-tolerant control using IMM approach[J].IEEE Transactions on Aerospace and Electronic Systems,2001,37(4):1221-1235.
Development of simulation experiment on fault diagnosis of multi-agent systems
Zhang Ke, Xia Jingping
(College of Automation, Nanjing University of Aeronautics and Astronautics, Nanjing 211106, China)
The simulation experiment of multi-agent systems is developed by using Matlab, and the gain matrix of the fault diagnosis observer can be calculated by writing m files, which can further deepen the understanding of distributed fault diagnosis algorithm of multi-agent systems. Based on the simulation experiment established by Simulink, the students can visually and clearly understand how the fault diagnosis observer implements the online fault diagnosis, accurately identifies the failed agents and performs accurate fault diagnosis. The simulation experiment is applied to the graduate course teaching and the good teaching effect is achieved.
multi-agent systems; fault diagnosis, simulation experiment; Matlab
10.16791/j.cnki.sjg.2017.11.027
TP277;TP391.9
A
1002-4956(2017)11-0114-04
2017-04-11
國家自然科學基金項目(61673207);江蘇省高等教育教改項目(2015JSJG176);南京航空航天大學留學研究生英文授課課程建設項目;江蘇高校“青藍工程”
張柯(1981—),男,河北邯鄲,博士后,副教授,主要研究方向為多智能體系統故障診斷與容錯控制.
E-mailkezhang@nuaa.edu.cn