《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于Django框架的故障診斷和安全評估平臺
基于Django框架的故障診斷和安全評估平臺
柴慶龍,謝 剛,陳澤華,趙 靚
太原理工大學 信息工程學院,山西 太原030024
摘要: 符號有向圖(SDG)作為一種定性研究方法,在系統(tǒng)推理和圖形繪制上有待改進。詳細描述了計算機輔助下的SDG故障診斷和安全評估平臺的開發(fā)過程。平臺的開發(fā)基于開源Django框架,具有搭建維護簡單、操作方便、易于二次開發(fā)等特點;利用分層SDG模型和新的推理算法實現(xiàn)對系統(tǒng)的故障診斷和安全評估,支持故障傳播路徑查詢和分層SDG的自動繪制。以田納西-伊斯曼過程(TEP)為例,對平臺的有效性進行驗證,結果證明平臺推理結果完備、有效,具有實際應用的前景。
中圖分類號: TP391.7;TP277
文獻標識碼: A
文章編號: 0258-7998(2015)04-0163-04
Fault diagnosis and safety evaluation platform based on the Django framework
Chai Qinglong,Xie Gang,Chen Zehua,Zhao Liang
College of Information Engineering, Taiyuan University of Technology,Taiyuan 030024,China
Abstract: Signed directed graph(SDG) method, a widely used qualitative research method, still could be improved on reasoning and drawing graphics. In this paper, a computer-assisted platform about fault diagnosis and safety evaluation is introduced, the development process of which is also described in detail. Base on the open source framework named Django, the platform has a series of characteristics, such as simple building and maintenance,easy to operate and secondary development and so on. The platform achieves the fault diagnosis and security assessment through the stratified SDG model and an improved reasoning algorithm, and supports the functions of querying fault propagative path and automatically drawing the stratified SDG. The Tennessee - Eastman process(TEP) is used to prove the effectiveness of the platform. The results show that the platform is effective and has prospects of practical application.
Key words : fault diagnosis;safety evaluation;signed directed graph(SDG);Django


0 引言
    符號有向圖(SDG)作為一種定性的故障診斷方法,能反映復雜系統(tǒng)內部變量間的因果關系,直觀地展示故障的傳播,在故障診斷和安全評估領域中被廣泛應用。在故障診斷方面,TARJAN R[1]、SHIOZAKI J[2]等在前人基礎上對算法進行了許多改進,提高了推理效率。YU C C等[3]在SDG半定量化方面也做出了突出貢獻。在安全評估方面,VENKATASUBRAMANIAN V[4]成功地將SDG應用于化工領域中。國內的吳重光[5,6]、蕭德云[7,8]等在這些領域也做了大量的工作。然而,對于大規(guī)模復雜工業(yè)系統(tǒng),將SDG方法用于模型構建、系統(tǒng)推理和SDG繪制上仍需要較強的專業(yè)背景和較大的工作量。
    本文詳細描述了基于Django框架[9]的故障診斷和安全評估平臺的開發(fā)過程。該平臺采用了分層SDG模型和一種新的推理方法,繼承了Django易開發(fā)、便于更新維護、可二次利用的特點。本平臺支持系統(tǒng)模型的在線存儲和編輯、影響方程組文本文件上傳、自動化推理、故障傳播路徑查詢和分層SDG的自動繪制。
1 SDG相關理論
    SDG模型由節(jié)點集和節(jié)點間的支路組成,其中每一個節(jié)點通常表示物理變量或事件。節(jié)點狀態(tài)值有3種:“+1”、“-1”、“0”,分別對應節(jié)點所代表的變量超過了允許的上限、低于允許的下限、處于正常范圍。若某一變量(起始節(jié)點)的偏差會直接影響另一變量(終止節(jié)點)的偏差,則通過由起始節(jié)點指向終止節(jié)點的支路相連。用實線箭頭或“+”號表示正作用,即起始節(jié)點與終止節(jié)點同時增大或減??;虛線箭頭或“-”號表示反作用,即起始節(jié)點增大(減小)時,終止節(jié)點減小(增大)。
    某一時刻,系統(tǒng)所有節(jié)點狀態(tài)的一個集合稱為該系統(tǒng)的一個樣本,其中狀態(tài)不為“0”的節(jié)點稱為有效節(jié)點。在某一樣本下,如果直接相連的兩個節(jié)點的狀態(tài)值乘積和兩者之間的支路作用符號相同,則稱該支路在此樣本下為相容支路。由相容支路首尾連接組成的連通路徑稱為相容通路。
    在SDG模型的推理方法中,反向推理是指利用當前的故障節(jié)點狀態(tài),通過反向尋找相容通路來確定系統(tǒng)可能的故障源,即所謂的故障診斷;正向推理是指利用SDG模型中已知節(jié)點狀態(tài)和節(jié)點間的相互關系進行正向搜索,推測下一時刻節(jié)點可能出現(xiàn)的狀態(tài),尋找故障造成的所有不利后果,即所謂的安全評估。
2 平臺設計
2.1 平臺框架的設計

    平臺整體框架如圖1所示,分為瀏覽器端和服務器端兩大部分。

)4C[)3XE105T8TC)Z)9V1RF.jpg

圖1  平臺框架

    瀏覽器端包含兩部分:(1)人機交互界面用于獲取用戶輸入數(shù)據(jù)和結果顯示;(2)AJAX引擎可以在不重新加載頁面的情況下,對安全評估的結果進行更新顯示,有效減少了安全評估時的操作量。
    服務器端基于Django的設計模式,由Python編寫而成。主要包含五部分:(1)URL映射器用于建立用戶輸入網(wǎng)址與處理函數(shù)的映射關系;(2)表現(xiàn)層決定瀏覽器端的顯示內容,通過Django的模板實現(xiàn);(3)業(yè)務邏輯層是整個平臺的核心,包含分層、推理等算法的具體實現(xiàn);(4)數(shù)據(jù)存取層是表現(xiàn)層與數(shù)據(jù)庫交換數(shù)據(jù)的橋梁,通過使用Django的模型實現(xiàn);(5)數(shù)據(jù)庫主要存儲系統(tǒng)模型信息和用戶信息。
    在業(yè)務邏輯層,為了提高推理效率,該平臺采用了將分層SDG模型、故障診斷和安全評估相結合的推理方法。首先,對系統(tǒng)的SDG模型進行分層處理,在分層SDG模型中,故障只能影響本層或比之更低的層的節(jié)點,從而有效減少故障源搜索空間。其次,利用分層結果減少故障源搜索空間,進行反向推理,實現(xiàn)對系統(tǒng)的故障診斷。最后,利用故障診斷結果,結合改進的正向推理算法,實現(xiàn)對系統(tǒng)的安全評估。
2.2 分層算法
    本平臺采用可達性的分層方法[10]對SDG模型進行分層。可達矩陣的計算方法如下:
    P=A0+A1+…+An                                    (1)
其中:A為SDG模型的鄰接矩陣,n為A的階數(shù),An表示A的n次方。P為SDG模型的可達矩陣。
    本平臺中,分層算法如下所示:
    輸入:有向圖模型?酌。
    輸出:分層節(jié)點結果集S。
    (1)由?酌獲取系統(tǒng)臨界矩陣A,令計數(shù)變量k=0;
    (2)利用式(1)得到可達矩陣P;
    (3)依次選取未被標記j(j∈[0,n-1]),若對于任意i∈[0,n-1],滿足Pij≠0時,Pji≠0,則Sk=Sk∪j,同時標記j;
    (4)令矩陣P的第m(m∈Sk)行全清0,令S=S∪{Sk},k=k+1,重復步驟(3)、(4),直至Sk=θ。
2.3 反向推理
    本平臺利用模型的分層結果、相容通路原理和深度優(yōu)先算法進行反向推理算法的設計。反向推理算法的實現(xiàn)如下:
    輸入:有向圖模型?酌,分層結果S。
    輸出:故障源集合F。
    (1)獲取系統(tǒng)所有有效節(jié)點,得到集合C;
    (2)隨機從C中選取未被標記節(jié)點vi,并做訪問標記,查詢vi在分層SDG模型中所在的層n;
    (3)從Sm(m≤n)中選取以vi為終止節(jié)點的起始節(jié)點vj,若存在vj滿足vi與vj之間路徑ai滿足相容支路,則分以下情況處理:
    ①若vj未被標記,則標記vj,同時以vj為終止節(jié)點,令vi=vj,重復步驟(3);
    ②若vj已被標記,則跳至步驟(2);
    ③否則,F(xiàn)=F∪{vi};
    (4)若C中仍存在未被標記節(jié)點,測重復步驟(2),直到所有節(jié)點被標記。
2.4 改進的正向推理
    對于SDG的正向推理,通常依據(jù)式(2):
0HY3A5K223~}VJP0RNY6(GA.png   

    但式(2)成立的前提為故障在各支路的傳播速度相同,這與事實不符。在某些情況下,該方法會影響推理結果的完備性,并且該方法難以獲取故障傳播路徑。
    為改進上述方法的不足,本平臺首先利用廣度優(yōu)先算法,得到由故障源節(jié)點為起點的所有傳播路徑集合,路徑中的節(jié)點即為受影響節(jié)點。其次,利用式(3)得到受影響節(jié)點在各個傳播路徑下的狀態(tài)值,從而得到所有受影響節(jié)點及其狀態(tài)值的集合,實現(xiàn)對系統(tǒng)的安全評估。
@)L$MNW3`P1XE}F75MC}3E6.png   

    定義  “[]”表示有序集合,如[v1,v2,v3,…,vn]表示v1,v2,v3…vn間有序。
    正向推理算法的實現(xiàn)如下:
    輸入:有向圖模型?酌,故障源節(jié)點vx∈F。
    輸出:受影響節(jié)點集合E、以故障源為起點的路徑集合L、及路徑L上各節(jié)點狀態(tài)值集合T。
    (1)依次獲取以vx為起始節(jié)點的所有終止節(jié)點,構成終止節(jié)點集合Sy。得到以vx為起點的路徑[vx,vy](vy∈Sy),受影響節(jié)點集合E=E∪Sy;
    (2)選取以vy∈Sy為起始節(jié)點的所有終止節(jié)點,構成終止節(jié)點集合Sz,得到以vx為起點經(jīng)過vy的路徑[vx,vy,vz](vy∈Sz),受影響節(jié)點集合E=E∪Sz;
    (3)通過步驟(1)、(2)得到以vx(vx∈F)為起始節(jié)點的所有路徑L、最終的受影響節(jié)點集合E;
    (4)利用式(3)和路徑集合L,得出路徑上對應節(jié)狀態(tài)值集T。
3 TEP實例驗證
    TEP[11]是一個經(jīng)典的用于故障診斷研究的化工廠仿真平臺。本平臺生成的TEP的分層SDG模型如圖 2所示,其符號說明見表1。節(jié)點由高層至底層顯示:用白色節(jié)點表示正常節(jié)點,深灰色節(jié)點表示正向偏差節(jié)點,淺灰色節(jié)點表示反向偏差節(jié)點;實線箭頭表示正作用支路;虛線箭頭表示反作用支路;灰色直線和數(shù)字表示節(jié)點所在的層。

T}6WC{JU4V_PB(10V0REV64.jpg

S2HR{VI~~O)H}U9ZDH)_V@W.png

    為了對本平臺的有效性進行驗證,處理故障模式1(A/C進料比發(fā)生階躍變化)的數(shù)據(jù)[12],得到一個系統(tǒng)故障樣本,如表 2所示。

4{W~9AFKK1BG[)I2]RL1X~7.png

    基于表2列出的故障樣本,系統(tǒng)推理出的故障診斷和安全評估結果如圖3所示。

IT$QMJJ27@})IHDU9U}])~2.jpg

    在故障診斷結果窗口,系統(tǒng)推理出故障源為節(jié)點XC6、節(jié)點P16和節(jié)點T18,進一步推測出這是由于A/C進料比發(fā)生變化引起。與文獻[13]比較可知,推理結果正確。
    在安全評估結果窗口,平臺顯示出下一刻所有可能受影響的節(jié)點。以選中故障源節(jié)點XC6和受影響節(jié)點V43為例,傳播路徑窗口自動列出故障由節(jié)點XC6傳播到節(jié)點V43的兩條路徑以及路徑中各節(jié)點的狀態(tài)值,得到在節(jié)點XC6發(fā)生故障的影響下,節(jié)點V43可能出現(xiàn)的狀態(tài)值集為{1}。
    實際分析,XC6的升高,使得反應器中反應物E、A成分減少。其中,(1)節(jié)點XE6的降低,造成節(jié)點V43變大;(2)節(jié)點XA6的降低,造成節(jié)點V44變大,節(jié)點F1增加,使得節(jié)點XA6增加,又進一步造成了節(jié)點XE6的降低,節(jié)點V43變大。上述兩種情況與傳播路徑窗口中的兩條路徑一致。
4 結論
    目前,SDG模型已應用于復雜生產系統(tǒng)的故障診斷和安全評估領域,但是將SDG方法用于系統(tǒng)推理和SDG繪制上仍需要較強的專業(yè)背景和較大的工作量。基于上述原因,本文詳細描述了基于SDG方法的故障診斷和安全評估平臺的開發(fā)過程,平臺的開發(fā)基于開源Django框架,具有搭建簡單、操作方便、易于二次開發(fā)等特點。該平臺利用分層SDG模型和新的推理算法實現(xiàn)對系統(tǒng)的故障診斷和安全評估,支持故障傳播路徑查詢和分層SDG的自動繪制。TEP實例結果證明平臺的推理結果完備、有效。該平臺有效降低了SDG方法對專業(yè)背景的要求,減少了使用SDG方法過程中的工作量,有較好的應用前景。
參考文獻
[1] TARJAN R.Depth-first search and linear graph algorithms[J].SIAM Journal on Computing,1972,1(2):146-160.
[2] SHIOZAKI J,MATSUYAMA H,O′SHIMA E,et al.An improved algorithm for diagnosis of system failures in the chemical process[J].Computers & Chemical Engineering,1985,9(3):285-293.
[3] YU C C,LEE C.Fault diagnosis based on qualitative/quan-titative process knowledge[J].AIChE Journal,1991,37(4):617-628.
[4] VENKATASUBRAMANIAN V,ZHAO J,VISWANATHAN S.Intelligent systems for HAZOP analysis of complex process plants[J].Computers & Chemical Engineering,2000,24(9):2291-2302.
[5] 張貝克,許欣,高東,等.基于定性趨勢與符號有向圖的模型校核方法[J].化工學報,2013,64(12):4536-4543.
[6] ZHANG B,XU X,MA X,et al.SDG-based model valida-tion in chemical process simulation[J].Chinese Journal of Chemical Engineering,2013,21(8):876-885.
[7] YANG F,SHAH S,XIAO D.Signed directed graph based modeling and its validation from process knowledge and process data[J].International Journal of Applied Mathematics and Computer Science,2012,22(1):41-53.
[8] YANG F,XIAO D,SHAH S L.Signed directed graph-based hierarchical modelling and fault propagation analysis for large-scale systems[J].IET Control Theory & Applica-tions,2013,7(4):537-550.
[9] Django project[EB/OL].[2014-11-20].https://www.django-project.com/.
[10] SEHGAL R,GANDHI O P,ANGRA S.Fault location of tribo-mechanical systems-a graph theory and matrix approach[J].Reliability Engineering and System Safety,2000,70(1):1-14.
[11] DOWNS J J,VOGEL E F.A plant-wide industrial process control problem[J].Computers & Chemical Engineering,1993,17(3):245-255.
[12] Tennessee eastman challenge archive[DB/OL].[2014-11-20].http://depts.washington.edu/control/LARRY/TE/down-load.html.
[13] 韓曉明.基于符號有向圖和支持向量機的故障診斷方法的研究[D].太原:太原理工大學,2011.

此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。