樊茜 何雨昂 劉海山 宋茜 焦震



摘要
針對(duì)航天型號(hào)伺服系統(tǒng)中的伺服飛控軟件測(cè)試項(xiàng)多,故障診斷測(cè)試時(shí)間較長的問題,提出一種基于動(dòng)態(tài)故障樹的伺服飛控軟件故障診斷方法。動(dòng)態(tài)故障樹完整展示了導(dǎo)致被測(cè)軟件失效的邏輯錯(cuò)誤,自上而下的分析軟件故障模式,選擇最少的測(cè)試點(diǎn)進(jìn)行故障定位,在保證較高故障診斷率的前提下,降低測(cè)試時(shí)間,提高故障診斷效率和軟件質(zhì)量。
【關(guān)鍵詞】動(dòng)態(tài)故障樹 故障診斷 伺服飛控軟件
1 引言
在航天型號(hào)產(chǎn)品不斷增多的大背景下,航天嵌入式系統(tǒng)由過去的軟硬件協(xié)同完成基本功能,向“硬件軟件化”的趨勢(shì)發(fā)展,許多重要的功能由軟件實(shí)現(xiàn)。在導(dǎo)彈與火箭的伺服系統(tǒng)中,伺服飛控軟件的主要功能為接收控制系統(tǒng)的姿態(tài)指令,采集伺服機(jī)構(gòu)各傳感器信號(hào),通過高速運(yùn)算精確控制噴管或空氣舵的擺角,軟件產(chǎn)品質(zhì)量直接影響甚至決定整個(gè)伺服系統(tǒng)的質(zhì)量。
伺服飛控軟件具有多指令、多總線、強(qiáng)實(shí)時(shí)等特點(diǎn),導(dǎo)致其測(cè)試項(xiàng)多,測(cè)試不方便且測(cè)試時(shí)間較長等難題。為保證飛控軟件的研制進(jìn)度,進(jìn)行故障診斷時(shí)需高效快速。如果故障定位不準(zhǔn)確,將潛在故障遺漏在產(chǎn)品中,則會(huì)嚴(yán)重影響軟件質(zhì)量。為了解決以上問題,本文將動(dòng)態(tài)故障樹模型引入到軟件故障診斷的過程中,利用故障樹對(duì)軟件故障進(jìn)行分析。在保證較高故障檢查率的前提下,獲得最小測(cè)試集,縮短了故障診斷時(shí)間。
2 伺服飛控軟件的結(jié)構(gòu)組成
伺服飛控軟件一般由總線指令解析模塊、本地時(shí)鐘管理模塊、初始化模塊、軟件復(fù)位模塊、總線接口和模擬采集接口等組成。其中,總線指令解析功能主要完成總線與控制系統(tǒng)通信,接收姿態(tài)指令和返回遙測(cè)數(shù)據(jù)等功能。本地時(shí)鐘管理實(shí)現(xiàn)閉環(huán)運(yùn)算,精確控制伺服機(jī)構(gòu)的擺角,如圖1所示。
從以上分析看出,伺服飛控軟件具有多測(cè)試項(xiàng)、測(cè)試時(shí)間長等問題,傳統(tǒng)的測(cè)試方法所需的故障診斷時(shí)間遠(yuǎn)遠(yuǎn)超出了項(xiàng)目研制進(jìn)度允許的最大時(shí)間,需研究快速高效的故障診斷方法。
3 基于動(dòng)態(tài)故障樹的伺服飛控軟件故障診斷方法
3.1 故障樹的知識(shí)表示與推理方法
3.1.1 靜態(tài)故障樹
軟件故障樹分析是指通過系統(tǒng)的演繹推算,檢查出可能導(dǎo)致系統(tǒng)失效的基礎(chǔ)原因,計(jì)算引發(fā)故障的所有組合模式,統(tǒng)計(jì)各底事件對(duì)整個(gè)系統(tǒng)的頂事件發(fā)生的影響程度,以及預(yù)測(cè)故障發(fā)生的概率等。
如果故障樹的某些底事件同時(shí)發(fā)生時(shí),會(huì)觸發(fā)故障樹的頂事件,則稱這些底事件所組成的集合為這棵故障樹的割集。對(duì)于故障樹的任意一個(gè)割集,假如去掉其中任意的一個(gè)底事件不再觸發(fā)頂事件,則這個(gè)割集稱為這棵故障樹的最小割集。下面簡要介紹靜態(tài)故障樹最小割集計(jì)算方法,為論文動(dòng)態(tài)故障樹模型的引出和分析提供鋪墊。
3.1.2 動(dòng)態(tài)故障樹
靜態(tài)故障樹的邏輯門均為靜態(tài)邏輯門,當(dāng)系統(tǒng)的元素之間存在順序相關(guān)性,或者具有冷熱備件的情況,單純的靜態(tài)邏輯門已經(jīng)不能滿足分析的需求,因此引入了動(dòng)態(tài)邏輯門的概念,可以表征系統(tǒng)的一些動(dòng)態(tài)特性,比如時(shí)序關(guān)系、依賴關(guān)系。具有一個(gè)或一個(gè)以上動(dòng)態(tài)邏輯門的故障樹稱為動(dòng)態(tài)故障樹。
常用的動(dòng)態(tài)邏輯門有優(yōu)先與門,順序門,冷備件門,熱備件門,功能相關(guān)門等。搭建伺服飛控軟件的動(dòng)態(tài)故障樹主要用到優(yōu)先與門、順序門。這表明伺服飛控軟件時(shí)序要求高,時(shí)序邏輯復(fù)雜。
(1)優(yōu)先與門。優(yōu)先與門指定了與門中的基本事件的發(fā)生順序,是在與門的基礎(chǔ)上擴(kuò)展的動(dòng)態(tài)邏輯門。假設(shè)如圖3,優(yōu)先與門具有兩個(gè)基本事件A和B,并定義了它們之間的發(fā)生順序?yàn)橄華后B。則只有當(dāng)先發(fā)生A且后發(fā)生B時(shí)系統(tǒng)才會(huì)故障,先發(fā)生B且后發(fā)生時(shí)A不會(huì)導(dǎo)致系統(tǒng)故障。同時(shí)A事件和B事件兩個(gè)中只發(fā)生一個(gè)或者都不發(fā)生,不會(huì)導(dǎo)致頂事件發(fā)生。
(2)順序門。“順序門”與優(yōu)先與門類似,都表示基本事件的時(shí)序性,順序們可以由幾個(gè)優(yōu)先與門組合而成,如圖4。順序門指定基本事件按照一定的順序發(fā)生,即從左到右的順序,只有當(dāng)左邊的事件都先于右邊的事件發(fā)生,而且所有事件都發(fā)生時(shí),其頂事件才會(huì)發(fā)生。在這個(gè)過程中,即使有一個(gè)事件不按照順序發(fā)生,事件就永遠(yuǎn)進(jìn)入不了頂事件。
3.2 故障診斷方法設(shè)計(jì)
基于動(dòng)態(tài)故障樹的故障診斷方法,按照系統(tǒng)故障分析、動(dòng)態(tài)故障樹生成、最小測(cè)試集求解的步驟對(duì)軟件進(jìn)行分解與分析。軟件故障診斷方法流程圖如圖5所示,頂事件的選取是分析的基礎(chǔ),是系統(tǒng)中關(guān)鍵功能可能出現(xiàn)的故障,是中間事件及底事件故障樹形成的主要元素。故障樹的形成過程就是列舉故障原因,分清故障間關(guān)系。最終系統(tǒng)分析與最小測(cè)試集求解是整個(gè)流程的目的。
軟件故障樹把被分析軟件當(dāng)作一個(gè)整體,可以很好的展示導(dǎo)致系統(tǒng)失效的邏輯錯(cuò)誤,采用自上而下流程分析軟件系統(tǒng)故障模式。軟件故障樹結(jié)構(gòu)類似一個(gè)倒立的樹,樹的輸入輸出是故障結(jié)果與故障原因的邏輯因果關(guān)系。通過故障樹的演繹推算,檢查出可能導(dǎo)致系統(tǒng)失效的基礎(chǔ)原因,進(jìn)而找到系統(tǒng)的脆弱環(huán)節(jié),指導(dǎo)系統(tǒng)設(shè)計(jì)改進(jìn)。在開發(fā)早期,使用軟件故障樹方法確定需要重點(diǎn)設(shè)計(jì)的環(huán)節(jié)。在軟件研制階段后期,通過故障樹最小割集求解,完成快速故障診斷及定位工作。
基于以上原則,本文選取了伺服飛控軟件的總線指令解析模塊進(jìn)行仿真試驗(yàn),以驗(yàn)證本文方法的有效性。
4 仿真實(shí)驗(yàn)
仿真實(shí)驗(yàn)選取某型號(hào)伺服飛控軟件的總線指令解析模塊,利用故障注入的方法進(jìn)行仿真,并記錄傳統(tǒng)的專家代碼審查故障診斷時(shí)間和基于動(dòng)態(tài)故障樹的故障診斷時(shí)間,對(duì)比兩種方法的優(yōu)勢(shì)和劣勢(shì)。
某型號(hào)伺服飛控軟件的總線指令解析模塊組成如圖6。
從圖6可以看出,該軟件的總線指令解析模塊由總線初始化、指令響應(yīng)等單元組成。該模塊的功能點(diǎn)多,測(cè)試點(diǎn)多,且該系統(tǒng)為伺服飛控軟件核心功能,直接影響整個(gè)系統(tǒng)的功能完備性。對(duì)軟件進(jìn)行故障注入,對(duì)比兩種診斷方式的診斷結(jié)果。如表1所示。
由于傳統(tǒng)專家代碼審查需對(duì)總線指令解析模塊的全部17個(gè)函數(shù),即17個(gè)測(cè)試點(diǎn)進(jìn)行查閱,傳統(tǒng)方法的故障診斷率依賴專家經(jīng)驗(yàn),所以使用傳統(tǒng)方法故障診斷時(shí)間長,診斷率有可能出現(xiàn)偏差。而本文方法通過構(gòu)造總線指令解析模塊的故障樹,分析出完整的故障情況,再求得該樹最小割集,得到最小測(cè)試集為9個(gè)。本文方法所需測(cè)試點(diǎn)的數(shù)目減少了大約50%,在縮短了故障診斷時(shí)間的同時(shí),保證了高故障診斷率,實(shí)驗(yàn)結(jié)果表明本文方法有效可行。
參考文獻(xiàn)
[1]沈作軍.載人航天故障統(tǒng)計(jì)分析及其安全要求系統(tǒng)研究[J].中國航天,1997(11):21-24.
[2]龍兵,宋立輝,荊武興,姜興渭,李志.航天器故障診斷技術(shù)回顧與展望[J].北京:導(dǎo)彈與航天運(yùn)載技術(shù),2003.
[3]劉小明.基于故障樹和神經(jīng)網(wǎng)絡(luò)的運(yùn)載火箭故障診斷關(guān)鍵技術(shù)研究[J].電子科技大學(xué)碩士學(xué)位論文,2010.