基于虛擬儀器技術(shù)的引信軟件安全性測試
1 引言
本文引用地址:http://m.butianyuan.cn/article/201706/347802.htm引信軟件是指嵌入到引信系統(tǒng)中對引信硬件起控制作用的程序,其作用是對引信安全系統(tǒng)和發(fā)火系統(tǒng)實(shí)施控制,防止引信意外作用和適時輸出起爆信號。由于引信軟件安全性問題會導(dǎo)致重大人 身傷亡和財產(chǎn)損失,所以對引信軟件的安全性要求非常高。為保障引信軟件達(dá)到安全性要求,需對其進(jìn)行安全性測試,由于手工測試不僅測試效率較低,而且需要大量的人力物力,本文正是基于此 開發(fā)了基于虛擬儀器技術(shù)的引信軟件安全性測試系統(tǒng)。
2 系統(tǒng)特點(diǎn)分析
本系統(tǒng)主要面向引信軟件進(jìn)行測試,由于測試對象的特殊性,使得該系統(tǒng)具有如下特點(diǎn):
2.1 嵌入式軟件測試系統(tǒng)
引信軟件是固化在引信中嵌入式微處理器單元上的軟件,屬于嵌入式軟件,因此其測試系統(tǒng)屬于嵌入式軟件測試系統(tǒng)。由于嵌入式軟件都是直接或間接和硬件設(shè)備相連的,所以嵌入式軟件的測 試無法直接在宿主機(jī)上進(jìn)行。要對其進(jìn)行測試,系統(tǒng)必須具有以下功能:把被測嵌入式軟件和測試系統(tǒng)物理地連接在一起,并進(jìn)行邏輯的描述,通過自動生成測試用例,仿真產(chǎn)生輸入,驅(qū)動被測目 標(biāo)系統(tǒng)運(yùn)行,得到運(yùn)行結(jié)果。
2.2 測試重點(diǎn)為安全性測試
安全性測試相對日見成熟的可靠性測試來講是一個較新的領(lǐng)域??煽啃躁P(guān)注的是系統(tǒng)在該作用的時候必須作用,安全性則要求系統(tǒng)在不該作用的時候不能作用。所以,從測試的目的到測試用例的 設(shè)計,兩者都是有區(qū)別的,而安全性測試則更加關(guān)注軟件對非正常的測試用例的響應(yīng)、在特殊情況下的輸出。另外,由于對引信軟件的安全性要求極高,所以系統(tǒng)應(yīng)具有自動重復(fù)測試功能。
2.3 測試系統(tǒng)為單機(jī)平臺
目前仿真測試系統(tǒng)的體系結(jié)構(gòu)大體上分為兩類:單機(jī)平臺和分布式平臺。由于引信軟件程序量少、功能相對簡單,所以本系統(tǒng)采用單機(jī)平臺。
3 系統(tǒng)實(shí)現(xiàn)
基于上述對系統(tǒng)特點(diǎn)的分析,本文決定采用虛擬儀器(Visual Instrument)技術(shù)來實(shí)現(xiàn)系統(tǒng)。虛 擬儀器是指通過應(yīng)用程序?qū)⑼ㄓ?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/計算機(jī)">計算機(jī)與硬件結(jié)合起來,用戶通過虛擬控制面板進(jìn)行操作,從而完成被測量值的采集、分析、判斷、顯示和數(shù)據(jù)儲存。用戶僅通過特定編程,就能定制具有特殊用途的儀器。采用該技術(shù)構(gòu)建的測試系統(tǒng)不僅可以實(shí)現(xiàn)自動測試,而且可以大大降低設(shè)計成本,提高測 試效率。
3.1 系統(tǒng)硬件結(jié)構(gòu)
本系統(tǒng)由主控計算機(jī)、數(shù)據(jù)采集卡和待測目標(biāo)機(jī)組成。 硬件結(jié)構(gòu)框圖如圖 1 所示:
主控計算機(jī)為一臺 PC 機(jī),主要功能:進(jìn)行I/O 配置;生成測試用例;進(jìn)行過程控制。 數(shù)據(jù)采集卡完成仿真信號的輸入和輸出。本系統(tǒng)采用美國NI 公司的PCI-*0E 數(shù)據(jù)采集卡,配 有16 個模擬輸入通道、2 個模擬輸出通道、8 個數(shù)字I/O,自帶A/D、D/A 等功能,完全滿足了系統(tǒng) 需求。被測目標(biāo)機(jī)為引信上起控制作用的微處理器。
3.2 系統(tǒng)軟件設(shè)計
3.2.1 軟件功能
軟件是引信軟件安全性測試系統(tǒng)的核心,其功能包括:自動生成測試用例,通過采集卡驅(qū)動被測程序運(yùn)行,實(shí)時捕獲運(yùn)行結(jié)果,進(jìn)行判斷,同時具有顯示和打印記錄的功能?;谀K化編程思 想,將軟件系統(tǒng)分為三大模塊:激勵信號產(chǎn)生模塊,數(shù)據(jù)采集模塊,數(shù)據(jù)處理模塊。
3.2.2 關(guān)鍵技術(shù)
本系統(tǒng)實(shí)現(xiàn)的難點(diǎn)和重點(diǎn)是如何解決多任務(wù)性。LabVIEW 對多任務(wù)的運(yùn)行機(jī)制是:考慮任務(wù)的 優(yōu)先級和任務(wù)先后順序的CPU 的分時占用過程。并行任務(wù)優(yōu)先級的設(shè)置有兩種方式:一種是設(shè)置 Wait 函數(shù);另一種是通過VI 設(shè)置對話框中的優(yōu)先級設(shè)置。通過設(shè)置Wait 函數(shù),可以讓其它更重要 的任務(wù)有更多時間執(zhí)行,通過VI 設(shè)置對話框中的優(yōu)先級選項(xiàng)來設(shè)置優(yōu)先級。這兩種方法可以綜合使用。需要指出的是以上兩種方法都需要對被測程序有深入的了解,和用戶有良好的交流。
3.3 系統(tǒng)測試過程
基于虛擬儀器技術(shù)的引信軟件安全性測試系統(tǒng) 測試流程如圖 2:
4 結(jié)束語
利用 LabVIEW 和數(shù)據(jù)采集卡構(gòu)建虛擬儀器來開發(fā)引信軟件安全性測試系統(tǒng),實(shí)現(xiàn)自動測試、仿真測試,克服了手工測試效率低,需要花費(fèi)大量人力物力的不足,減少了系統(tǒng)開發(fā)時間和開發(fā)成本。
評論