陶 軍,聶 飛,鄒俊逸
(武漢科技大學 汽車與交通工程學院,湖北 武漢 430065)
隨著現(xiàn)代科技的迅速發(fā)展和工程系統(tǒng)日益復雜化,系統(tǒng)可靠性和安全性的要求越來越嚴格。確保系統(tǒng)的穩(wěn)定運行并預防潛在故障事件的發(fā)生,成為工程領域至關重要的任務。故障樹分析(Fault Tree Analysis,FTA)[1-2]是一種被廣泛應用于安全可靠性評估的方法,能夠幫助識別和分析系統(tǒng)中的潛在故障和事件,以評估系統(tǒng)的可靠性并采取相應的預防措施[3]。然而,傳統(tǒng)手工構建故障樹的方法存在諸多缺點[4]。例如,手工建樹過程容易出現(xiàn)主觀偏差,且對復雜系統(tǒng)而言耗時較長。此外,傳統(tǒng)方法在大規(guī)模系統(tǒng)中往往難以處理大量故障事件的組合爆炸問題[5],限制了分析的全面性和準確性。特別是對于具有復雜結構的系統(tǒng),如大型工業(yè)裝置或汽車電子控制系統(tǒng),手工構建故障樹的困難性進一步增加。即使是擁有可靠性知識的專業(yè)人員,也難免出現(xiàn)遺漏或錯誤,并且建樹的結果可能因人而異,導致“百人千樹”的局面出現(xiàn)。
為了解決上述問題,近年來國內外出現(xiàn)了一些關于故障樹自動建樹方法的研究。胡杰鑫等人通過探索FMECA[6]與FTA[7]之間信息的關聯(lián)性,結合了這兩種分析方法,建立了一套基于FMECA自動繪制故障樹的方法[8],并開發(fā)了相關的計算機輔助軟件,但其研究對象只是具體的機械結構,且只考慮了“或門”,所開發(fā)的軟件也只能以簡單圖表的方法顯示故障樹。宛偉健等人提出了一種基于系統(tǒng)GO圖[9]自動生成故障樹的方法[10],但只適用于簡單的串并聯(lián)系統(tǒng),對于具有反饋控制或其他復雜結構的大型復雜系統(tǒng),故障樹生成會陷入死循環(huán),無法實現(xiàn)故障樹的自動生成。展萬里等人利用故障樹分析(FTA)方法來分析系統(tǒng)中不希望出現(xiàn)的狀態(tài),并在此基礎上設計了一種自動構造系統(tǒng)故障樹的算法。該算法以AltaRica[11-12]語言為基礎,采用Guarded Transition Systems(GTS)作為語義模型[13],并通過斷言傳播算法生成完整的系統(tǒng)故障樹,但最終是以表格的形式顯示建樹結果,建樹結果可視化效果不佳,且無法實現(xiàn)具有復雜結構系統(tǒng)故障樹的自動建造。
針對傳統(tǒng)手工構造故障樹的困難,該文提出一種系統(tǒng)規(guī)范化的描述方法,并以此為基礎,實現(xiàn)對元部件模型的封裝,開發(fā)一種新型的故障樹自動建樹及分析軟件,實現(xiàn)故障樹自動建樹到分析的全自動一體化。
為了實現(xiàn)故障樹的自動建造,需要對系統(tǒng)及其各個元部件的正常工作模式和非正常工作模式進行規(guī)范化的描述。這種描述可以簡化計算機的識別與處理過程,并確保故障樹自動化構建的準確性和可靠性。
元部件模型是描述元部件自身局部的輸入、輸出變量間的關系,包括處于正常狀態(tài)及非正常狀態(tài)(失效模式)時的關系。在傳統(tǒng)的可靠性理論中,部件的狀態(tài)一般被簡化為只有正常和故障兩種狀態(tài)。這種簡化雖然方便了建樹流程但丟掉了部件失效過程中大量的物理屬性,導致所建立的故障樹不夠準確,進而影響后續(xù)的可靠性分析評估與實際結果相差較大。
因此,不考慮部件具體的故障事件,用輸出變量偏離正常值的程度表示系統(tǒng)的故障,來實現(xiàn)系統(tǒng)元部件的規(guī)范化描述??紤]到元部件具有多態(tài)性,可將輸出變量可能發(fā)生的所有偏差W與正常值相比劃分為5個不同的等級。具體劃分如表1所示。
表1 輸出變量偏差等級劃分
系統(tǒng)結構模型是用于描述系統(tǒng)的形態(tài)和構造的一種規(guī)范化表示方法。它利用系統(tǒng)中各部件的輸入和輸出變量之間的連接關系,清晰地展示了系統(tǒng)的組成部件以及它們與環(huán)境變量之間的相互聯(lián)系[14]。這種連接關系清楚地反映出信號在系統(tǒng)中傳播的路徑。用戶可以通過系統(tǒng)的工作原理圖來確定各元部件之間的連接方式。它們從元部件模型庫中拖拽相應的元部件,并通過元部件之間的輸入輸出關系將它們連接起來,從而構建出系統(tǒng)結構模型。如果所搭建的系統(tǒng)具有復雜結構,只需將相應的復雜標識符拖放到適當?shù)奈恢眉纯伞Mㄟ^這種拖拽現(xiàn)有元部件庫模型的方法,用戶能夠快速、準確地建立系統(tǒng)結構模型。簡而言之,系統(tǒng)結構模型的搭建過程直觀且便捷,使用戶能夠以準確的方式構建出系統(tǒng)的結構模型,即使是缺乏可靠性專業(yè)知識的人員也能夠輕松應用這種方法。
每個元部件模型在數(shù)據(jù)庫中都有一個對應的描述文件。該描述文件的內容由元部件模型的基本信息、正常模式屬性、失效模式屬性組成。以一個制動總泵元部件模型為例,其所對應的描述文件如圖1(左)所示,文件包含了該部件名稱、編號、輸入輸出變量等基本屬性以及各失效模式狀態(tài)下輸入輸出變量的偏差等屬性信息。當用戶從元部件模型庫中選擇一個元部件模型并將它拖拽出,根據(jù)該模型所對應的描述文本文件提取出部件模型的全部信息,并創(chuàng)建出一個元部件模型實例對象。用戶可以通過該實例對象的屬性窗口,以圖形化的方式查看該元部件的所有屬性。該屬性窗口如圖1(右)所示,提供了直觀的界面,使用戶能夠方便地瀏覽和了解元部件的各種屬性。為了確??紤]到元部件所有的故障類型,元部件模型庫可由部件廠商來構建,可靠性工程人員輔助構建。同時,對于新的元部件模型,只需要導入相應的描述文件,即可在元部件模型庫中增加對應的元部件模型。最終構建的模型庫如圖2所示。
圖1 描述文件(左)與實例對象(右)
圖2 元部件模型庫
在故障樹建造的過程中,簡單的串并聯(lián)系統(tǒng)自動建樹十分簡單,只需從頂事件搜索,直到沒有中間事件就完成該系統(tǒng)的故障樹自動構建。但大多數(shù)系統(tǒng)存在負反饋、前饋等復雜結構,為了避免建造過程陷入死循環(huán)從而構建出正確規(guī)范的故障樹,需要對系統(tǒng)中的復雜結構進行識別與處理[15]。
為了能夠識別系統(tǒng)中的復雜結構,引入一種復雜標識符的概念。每一種復雜結構都構建一個與之對應的復雜結構標識符模塊,從而形成復雜標識符庫。當所搭建的系統(tǒng)結構模型中具有復雜結構時,只需將與復雜結構相對應的標識符模塊拖拽到系統(tǒng)中相應的位置連接起來即可。系統(tǒng)通過識別復雜標識符模塊識別故障樹中的復雜結構,再根據(jù)該復雜結構所對應的算法進行相應的處理,可生成最終的故障樹。復雜標識符模塊在系統(tǒng)中實際是不存在的,故用虛框表示。系統(tǒng)的復雜標識符庫如圖3所示。
圖3 復雜標識符庫
基于Python和Qt設計的故障樹自動建樹及分析軟件,具有搭建系統(tǒng)結構模型、自動構建故障樹、復雜結構識別與處理和故障樹分析等功能,實現(xiàn)了自動建樹到分析的一體化。其操作基本流程如圖4所示,主要分為以下六個基本步驟:
圖4 故障樹自動建樹及分析流程
步驟1:搭建系統(tǒng)結構模型。用戶根據(jù)所要搭建的系統(tǒng)工作原理圖,從元部件模型庫、復雜標識符庫中拖拽相應的元部件模型及復雜標識符模塊,再根據(jù)各部件間輸入、輸出變量關系連接各元部件即可搭建出完整的系統(tǒng)結構模型;
步驟2:導出系統(tǒng)結構模型信息。為了后續(xù)系統(tǒng)模型規(guī)范化文件的自動生成,需要通過mxGraph的API接口以xml文件格式導出系統(tǒng)結構模型的全部信息;
步驟3:自動生成規(guī)范化文件。根據(jù)軟件內部設計好的文件轉換算法將xml文件自動轉換成規(guī)范化的系統(tǒng)結構模型關系表和元部件模型表,并生成相應的excel表格文件,以方便軟件在自動建樹過程中的識別與調用;
步驟4:指定頂事件。當用戶指定頂事件后,該軟件會根據(jù)內部已封裝好的自動建樹算法,通過遍歷系統(tǒng)結構模型關系表、元部件模型表,找到導致頂事件發(fā)生的下一級事件,自動構建出故障樹。若系統(tǒng)存在復雜結構,則根據(jù)內部的復雜結構識別與處理算法進行相應的處理后,再自動生成最終正確的故障樹;
步驟5:故障樹文本格式輸出。為了后續(xù)的故障樹分析,需要將故障樹的結構以文本格式輸出;
步驟6:故障樹定性、定量分析。導入故障樹文本結構后,軟件可以自動求解故障樹的最小割集。同時可采用Monte Carlo法對所構建的故障樹進行可靠性分析,通過設定相應的仿真參數(shù),求解系統(tǒng)的可靠度及各部件重要度等可靠性指標。
本節(jié)將以汽車上的ABS系統(tǒng)為例,對軟件整個自動建樹及分析流程進行詳細的說明。
步驟1:在軟件的搭建模型界面,用戶可根據(jù)ABS系統(tǒng)的功能框圖,從模型庫中拖拽出ABS系統(tǒng)的各元部件,將各部件對應的輸入、輸出連接起來,進而構建出ABS系統(tǒng)結構模型(見圖5)。因為該系統(tǒng)中存在負反饋,故需要從復雜標識符庫中拖拽NFBL(負反饋)標識符模塊到系統(tǒng)相應的位置。
圖5 搭建ABS系統(tǒng)結構模型
步驟2:將搭建好的ABS系統(tǒng)結構模型以xml文件(見圖6)格式輸出。同時,導入相應的結構模型(xml文件),軟件會自動生成結構模型,方便系統(tǒng)模型的二次修改。
圖6 ABS系統(tǒng)結構模型xml文件
步驟3:在模型文件導入界面,將系統(tǒng)結構模型xml文件導入后,軟件會根據(jù)內部封裝好的規(guī)范化文件自動生成算法將該xml文件自動轉換成規(guī)范化的系統(tǒng)結構模型關系表和部件模型表,如圖7所示。
圖7 模型文件導入軟件界面
步驟4:用戶在自動建樹軟件的生成中間樹、故障樹界面,輸入頂事件V1(車輪速度過高)后,會自動構建出以車輪速度過高為頂事件的故障樹。因為該系統(tǒng)中存在負反饋復雜結構,故所建立的故障樹為一中間樹,需要對其負反饋復雜結構進行識別與處理,即根據(jù)軟件內部的NFBL所對應的負反饋回路處理算法對中間樹中的NFBL回路處理后,再自動構建出最終正確的故障樹,并將建樹結果在窗口界面可視化,方便用戶直觀地了解建樹結果,如圖8所示。
圖8 自動建樹界面
步驟5:用戶導出故障樹的文本結構,求解最小割集。并可運用Monte Carlo法對所建造的故障樹進行可靠性仿真分析,通過設置相應的仿真參數(shù),求解該系統(tǒng)的可靠度以及相應的可靠性指標。通過仿真,得到了1 000次抽樣仿真的系統(tǒng)故障時間、各區(qū)間故障次數(shù)、可靠度,以及各元部件的重要度,如圖9所示。
圖9 故障樹分析界面
由整個實例應用流程可知,該軟件具備搭建系統(tǒng)模型、導入結構模型、自動生成規(guī)范化關系表和部件模型表、自動建樹及分析等功能,能夠實現(xiàn)從搭建系統(tǒng)模型到自動建樹及可靠性分析過程的全自動化,大大簡化了系統(tǒng)建樹過程,節(jié)省了大量手動操作的時間,提高了工作效率。同時,軟件內部的復雜結構識別與處理算法有效地解決了復雜結構下的建樹問題,避免了繁瑣的手動處理,進一步提升了工作效率,為系統(tǒng)可靠性分析與評估工作提供了便利。
該文介紹了一種故障樹自動建樹及分析軟件的實現(xiàn)方法。通過規(guī)范化描述元部件及系統(tǒng)結構模型,并針對復雜系統(tǒng)中復雜結構的識別與處理,提出一種復雜標識符的概念,建立了元部件模型庫和復雜標識符庫,成功實現(xiàn)了故障樹自動建樹及分析軟件的開發(fā)與應用。通過對汽車ABS系統(tǒng)實例的詳細說明,驗證了該軟件能夠實現(xiàn)系統(tǒng)結構模型搭建、故障樹自動構建及可靠性分析的一體化。相較于傳統(tǒng)的手工構建故障樹方法,該軟件減輕了工程師的負擔,提高了建樹效率。此外,該軟件能夠處理復雜結構的故障樹,對于已建成具有成千上萬元件的復雜系統(tǒng)該軟件可以實現(xiàn)其復雜系統(tǒng)的可靠性分析,便于系統(tǒng)可靠性設計、故障分析等,具有廣泛的應用前景,對系統(tǒng)可靠性分析的推廣亦具有重要意義。