?

基于軟件故障注入的系統驗證測試評估技術研究

2024-01-10 02:10喬邦江劉彪易澤鵬林鎮明廖家旺國營長虹機械廠空軍駐桂林地區軍事代表室
航空維修與工程 2023年12期
關鍵詞:故障注入武器總線

喬邦江 劉彪 易澤鵬 林鎮明 廖家旺/ 國營長虹機械廠 空軍駐桂林地區軍事代表室

0 引言

當前,綜合電子系統的復雜度越來越高,對穩定性的要求更高,系統的故障適應能力需要在系統設計之初考慮清楚。系統出廠前,針對設計之初論證的臨界狀態以及功能、性能超限等技術指標,需要采用故障注入技術模擬故障測試環境,進行系統的故障適應性分析,驗證系統的容錯性能和系統的可靠性;系統出廠后,由于工作在特殊、惡劣的環境下,常常出現一些無法預測的隨機故障,一般通過主動向目標系統注入標準激勵信號,觀察系統在標準激勵信號下的響應,查看能否重現測試中的故障,以幫助提升故障定位的準確率和故障處理效果。

故障注入技術作為測評系統容錯機制的有效性方法,已經在航空航天、飛行器控制、商業交易以及通信等領域廣泛應用。故障注入技術可以分為基于物理硬件的實現方法和基于軟件的實現方法。硬件故障注入技術易使系統造成永久性損壞,且無法評測系統的軟件故障;軟件故障注入技術通??勺⑷氲墓收戏秶鼜V,既可以模擬系統的硬故障又可以模擬系統的軟故障,且不會對系統硬件產生任何形式的破壞,還具有方便地跟蹤目標操作系統執行情況并實現數據處理的特點。軟件故障注入成為故障注入技術的發展方向與研究熱點[1],引起各國研究者的廣泛關注。

本文通過分析國內外基于軟件故障注入技術的研究現狀及其發展趨勢,開展軟件故障注入技術方法調研,歸納總結軟件故障注入技術在不同應用領域的研究情況。該研究成果可為航空航天領域應用該項技術對裝備武器系統、無人機飛行控制系統和裝備總線通信系統的可靠性評估提供參考。

1 研究現狀及其發展趨勢

故障是指在系統運行過程中導致或可能導致系統故障的缺陷。故障注入是指人為地有意識地通過特定的故障模型產生故障,在特定工作負載的目標系統上運行,加速系統故障和錯誤的發生,同步觀察目標系統的反饋信息,并對收集到的信息進行分析,從而得到相關的評價結果。因此,故障注入成為一種評價系統可靠性的有效方法。

軟件故障注入是一種模擬目標系統硬件或軟件故障的方法,通過修改內存映像來實現,分為靜態和動態兩種方式。在程序運行前將故障代碼嵌入到程序中,稱之為靜態模式,根據程序運行時的數據判斷結果是否存在故障;在程序運行過程中進行故障實時注入的則稱為動態故障注入。

運行前的軟件故障注入方法需要修改程序源代碼,包括修改賦值語句和進程結構以實現故障注入,然后將程序重新編譯并運行,通過監控程序運行過程中的數據分析結果,評估注入的故障是否符合要求,從而診斷故障[2]。運行中的軟件故障注入方法不需要對程序源代碼進行修改,也不需修改賦值語句及程序的邏輯結構。在程序執行過程中,將錯誤數據插入到程序中,監視其執行狀態以獲取必要的數據,根據獲取的數據判斷程序是否存在問題或出現故障。

與運行前的軟件故障注入方法相比,研究運行中的軟件故障注入方法更具實際意義,主要原因如下。

1)運行前的軟件故障注入方法需要多次對源代碼進行更改,以檢測程序中是否存在故障。這種方法過于復雜煩瑣,不易一步到位。

2)修改源代碼中的賦值語句或邏輯結構,可能影響程序的行為,導致程序出現錯誤或異常;可能導致程序在發生故障時產生不同的數據,難以診斷故障問題。

基于軟件方法實現的故障注入技術的研究正在向以下幾個方面發展。

1)研究并應用不同的故障注入方法,如將硬件故障注入與軟件故障注入方法相結合,構建實用的注入工具,并將理論應用于實踐[3]。

2)在分布式系統與網絡設計中,運用宏觀層次的軟件故障注入策略。

3)對改進現有的采樣技術、參數估計和建模方法的研究,可以降低故障注入測試的實際運行時間和經濟成本,提高評估結果的準確性[4]。

4)將設計階段與評估階段使用的故障注入方式相結合,并將故障注入方法與現場測量和建模相結合。

5)改進現有的軟件故障注入方法,以實現特定時間和地點的故障數據注入。

6)故障注入測試正在向錯誤注入自動化和智能化、錯誤注入反饋智能化、錯誤注入結果分析和評估智能化方向發展[5]。

2 軟件故障注入技術應用領域研究

2.1 軟件故障注入技術在武器裝備系統中的應用研究

由于武器系統本身的設計論證涉及測量和控制技術、紅外技術、圖像技術、電源技術、總線技術、激光技術、毫米波技術以及電氣、光學和運動學等學科的方方面面,以及數字無刷伺服、氣動/推力矢量控制、紅外成像制導等新技術的應用,因此很難在武器系統發生故障后找到故障的真正原因。將故障注入技術應用于武器系統,為武器系統的故障診斷、隔離和定位提供了有效手段,極大地促進了武器系統的開發、測試和性能評估。

一些武器設計總體單位已經將故障注入技術應用于裝備武器系統設計中。例如,航空研究所采用軟件方法測試裝備武器系統的信息交互故障(包含武器與外部設備以及武器內部之間),驗證裝備武器系統的工作能力,如圖1 所示,虛線框內為裝備武器系統,即目標系統,目標系統的正常通信信號被引出至故障注入系統,經注入故障后再送回到目標系統中[6]。

武器故障注入系統可以從物理層、電氣層和協議層三個層面進行故障注入,具有實時數據傳輸能力,可以阻斷和收集武器的各種信息交換通道,可以在實時注入故障的同時生成各種信號,不影響武器測試的實時性能。具體功能如下。

圖1 裝備武器系統故障注入原理圖

1)故障設置功能??梢造`活設置各種故障,涵蓋設備和武器系統中的各種常見故障。根據設備和武器系統中通信數據所代表的實際物理意義,數據故障分為三類:通信量故障、連續量故障和開關量故障。設備和武器系統中的故障包含十余種故障模式和近百種故障編號。

2)故障注入功能。該故障注入系統可以在特定時間、特定故障位置注入指定數量的故障。故障注入的開始時間、持續時間、結束時間、重復時間和注入周期可以根據故障模型確定。在故障注入過程中實時控制和監控故障的注入狀態。該系統還可以根據要求注入瞬態故障、永久故障和間歇性故障。

3)測試結果存儲和分析功能??梢詫⒃囼灁祿晕募问奖4?,并提供數據分析和處理方法。

4)故障注入系統采用軟硬件故障注入方法相結合,從物理、電氣和協議層對裝備和武器系統進行實時動態故障注入測試,對裝備和武器系統的可靠性進行更加全面的評估,對提高武器裝備的可靠性起著關鍵作用[7]。

2.2 軟件故障注入技術在無人機飛控系統中的應用研究

飛行控制系統是無人機的核心子系統之一。飛行控制系統一旦發生故障,將造成重大財產損失。若能及時有效地發現故障,可采取一定措施防止重大事故的發生[8]。

基于上述需求,南京航空航天大學和西北工業大學研發了一種無人機飛行控制系統的軟件故障注入與故障診斷實時仿真驗證平臺。該系統具有靈活多變的特點,可以隨時在系統的任何地方注入不同類型的故障,快速滿足用戶的需求,能夠在特定條件下快速檢測并定位故障,診斷算法的質量。

軟件故障注入系統、故障診斷系統和飛行控制系統之間的關系如圖2 所示。虛線框代表無人機飛行控制系統或者目標系統。軟件故障注入系統和故障診斷系統在無人機飛行控制系統中串聯連接。雙箭頭表示從目標系統提取正常信號到軟件故障注入系統的雙向過程,并在故障注入后將信號發送回目標系統[9]。雙箭頭和目標系統的交點表示故障注入節點。

根據機載傳感器、執行器、外圍設備、綜合控制計算機、飛機專用設備之間的通信特點,可將故障注入分為切換故障注入、連續故障注入及通信故障注入三種方式[10]。

連續故障注入通過拉動、移動、短路和斷開來改變正確值,從而產生故障數據;開關故障注入通過改變描述載機設備運行狀態的二進制位來產生故障值,通常使用設置0、1 和反轉的方法;通信故障注入通過修改通信內容來產生故障值。

事件觸發機制是在目標系統運行時激活一組故障,生成故障注入序列,并自動將它們注入到系統中[11]。采用事件觸發的動態故障注入方法設計的故障注入系統的故障注入測試流程如圖3 所示。

無人機的飛行狀態受機載設備故障的影響很大。表1 所示的故障注入范例是將故障注入到無人機不同飛行狀態下的所有分系統中。故障注入范例與故障注入的統計結果如表2 所示。

試驗結果研究表明,將軟件故障注入技術應用到無人機飛行控制系統的測試中,對無人機飛行控制系統的故障檢測、系統可靠性和容錯能力的研究具有重要的指導意義,是評估無人機飛行控制系統性能指標的一種有效手段。

2.3 軟件故障注入技術在總線通信系統中的應用研究

控制系統作為整個武器系統的關鍵組成部分,承擔著各子系統間的數據交互。早期,武器控制系統各部分間的信號交互大多采用模擬信號進行。隨著通信數據量愈來愈多,傳統的信號交互方法逐步被總線通信替代。

圖2 飛行控制系統軟件故障注入與故障診斷系統原理圖

圖3 動態故障注入流程

兵器研究所采用故障注入方法,主動向武器系統注入特定總線類型的故障,通過確定系統的響應,實現總線故障的定位和故障排除。為了滿足上述需求,該團隊研發了一種用于多總線的電氣故障注入系統,包括1553B、ARINC 429、RS232、RS422、CAN 總線、以太網和武器系統中常用的其他通信方式,該系統可以實現從電氣和協議層的故障注入。

以下故障注入方法可用于RS422、CAN、ARINC 429 和以太網。

1)在RS422 協議層上實施數據位、奇偶校驗和停止位的替換以及啟動位反轉等故障處理,可以實現在RS422 電氣層差分信號幅值的調整[12]。

2)在ARINC 429 協議層實施同步報頭反轉、數據替換和指定比特編碼極性等故障處理,可以實現在ARINC 429電氣層信號幅值和速率的調整。

3)在CAN 電氣層實施終端匹配電阻調整及內部電源故障,可以實現CAN總線的電氣層故障注入;在CAN 協議層實施自定義傳輸波特率和傳輸錯誤數據幀故障,可以實現CAN 總線的協議層故障注入[13]。

4)在網絡電氣層采用直流、正負信號以及TX/RX 差分信號的同時疊加,可以提供疊加的共模電壓,采用IP/UDP層或TCP 中報文的錯誤、消息長度錯誤或其他故障注入方式,可以實現網絡協議層的故障注入[14]。

故障注入系統的總體結構如圖4 所示。故障注入單元首先通過通信網絡接收來自故障軟件的故障命令,并進行相關的故障注入運算,然后再利用故障注入系統,完成對總線上的所有故障的注入;故障注入單元完成了故障注入設備和待測裝備和武器控制系統之間的接口交聯與數據交互;信息收集單元通過接口信息收集各種信號,并按照ICD 的協議格式分析原始消息;信號采集接口實現對故障注入單元輸出信號的采集;故障注入軟件用于故障模式設置、測試管理、設備管理等。信號激勵和采集設備完成標準信號的產生及目標信號的采集和顯示,在故障注入期間可以采用激勵信號替換標準信號。

表2 故障注入試驗統計結果

圖4 故障注入系統架構圖

圖5 測試系統連接關系圖

故障注入系統可以測試系統的多項設計重點,包括CAN 總線及RS422 總線通信鏈路,該系統可應用CAN 總線完成地面測控單元與武器系統之間的通信,還可應用RS422 通信總線完成綜合控制計算機與機載組件之間的通信[15]。系統連接關系圖如圖5 所示。

該總線電氣故障注入系統可針對多種類型的故障向多條總線注入故障?;诳偩€故障注入原理,可以對多種類型的總線裝備武器系統進行實時動態故障注入,從而對武器系統的可靠性進行更加全面的評估。該系統可為未來的總線系統設計提供有效的評估方法,有助于提高武器裝備的可靠性水平。

3 總結與展望

本文對軟件故障注入技術發展現狀和發展趨勢進行調研,通過查閱文獻,歸納總結軟件故障注入技術在不同領域的應用情況,重點分析了軟件故障注入技術在裝備武器系統、總線通信系統等幾個領域的應用。

從故障注入技術在上述領域的應用情況來看,該技術作為評測系統容錯性與可靠性的有效手段,已經廣泛應用于軍事、航空航天和工業控制等領域。將軟件故障注入技術應用于軟件系統的整體測試中,不但可以觀察系統內部的錯誤傳播規律,還可以評估系統的可靠性。為后續單位使用該項技術對飛艇和武器類產品的可靠性評估提供參考。

針對現有的軟件故障注入系統可以看出,這些系統都是針對具體項目而專門設計的故障注入系統,因此應用范圍具有相對的局限性。未來可以根據相關產品的特點和應用環境等因素,定制特定的軟件故障注入系統,為提高產品的設計可靠性提供保障。

猜你喜歡
故障注入武器總線
模擬訓練裝備故障注入系統研究
SM4算法前四輪約減輪故障注入分析
采用修改-回放原理的1553B故障注入方法
基于PCI Express總線的xHC與FPGA的直接通信
機載飛控1553B總線轉以太網總線設計
一張圖看懂武器發展史
列車MVB總線故障注入研究
請放下你的武器
退役武器去哪兒了?
多通道ARINC429總線檢查儀
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合