通用自動測試軟件平臺設(shè)計(jì)
傳統(tǒng)自動測試系統(tǒng)缺乏通用性,最根本的解決方法是標(biāo)準(zhǔn)化。本文以ABBET(A BroadBased Environment for Test)標(biāo)準(zhǔn)為主,與ATS(Automatic Test System)相關(guān)的其他國際標(biāo)準(zhǔn)為輔,采用符合標(biāo)準(zhǔn)描述的軟件層次結(jié)構(gòu),使用COM組件和CORBA等軟件設(shè)計(jì)技術(shù),開發(fā)了面向信號的通用自動測試系統(tǒng)軟件平臺。采用基于國際標(biāo)準(zhǔn)ATS開發(fā)模式,一方面可以使面向信號的測試最大限度地實(shí)現(xiàn)儀器無關(guān)性和TPS(Test Program Set)通用性;另一方面這種開發(fā)模式簡化了軟件系統(tǒng)架構(gòu)難度,提高系統(tǒng)的可靠性和兼容性,對外部診斷方法提供了統(tǒng)一的接口。
本文引用地址:http://m.butianyuan.cn/article/194232.htm隨著電子科學(xué)、材料科學(xué)等技術(shù)的飛速發(fā)展,航空航天設(shè)備、軍用武器系統(tǒng)等高技術(shù)產(chǎn)品的復(fù)雜程度日益提高,傳統(tǒng)的人工檢測維護(hù)手段已經(jīng)無法滿足現(xiàn)代化裝備的支持保障要求,ATS(自動測試系統(tǒng))正逐步成為復(fù)雜系統(tǒng)與設(shè)備可靠運(yùn)行的必要保證。
然而,我國目前尚無統(tǒng)一的測試技術(shù)體制和管理體制,也沒有需要強(qiáng)制執(zhí)行的測試軟件體系標(biāo)準(zhǔn)。各種軟件采用的數(shù)據(jù)結(jié)構(gòu)不相同,系統(tǒng)模型千差萬別,帶來測試軟件系統(tǒng)繁多的種類和低水平的重復(fù)研制。另外,測試軟件運(yùn)行環(huán)境不規(guī)范,使用的測試語言不統(tǒng)一或版本各異,導(dǎo)致系統(tǒng)測試軟件不通用,造成開發(fā)周期長、重復(fù)開發(fā)、移植性差、交換能力弱等缺陷,在很大程度上影響了用戶對其的掌握和使用。以上因素使得測試系統(tǒng)軟件平臺的通用化、標(biāo)準(zhǔn)化、模塊化、系列化方面與國際水平差距很大,成為制約我國自動測試系統(tǒng)發(fā)展的首要因素。
本文重點(diǎn)研究了測試泛環(huán)境(ABBET)標(biāo)準(zhǔn)體系結(jié)構(gòu)和實(shí)現(xiàn)軟件平臺通用性的關(guān)鍵技術(shù),將ABBET定義的軟件體系框架結(jié)構(gòu)細(xì)化為5個可操作的軟件層次(測試策略與需求層、測試程序?qū)印①Y源管理層、儀器控制層、硬件層),利用每層相關(guān)標(biāo)準(zhǔn)分別開發(fā)其功能,實(shí)現(xiàn)層次間通信,最終開發(fā)出面向信號的通用自動測試軟件平臺。
1 測試相關(guān)國際標(biāo)準(zhǔn)概述
IEEE 1226 ABBET標(biāo)準(zhǔn)是一種軟件體系結(jié)構(gòu)規(guī)范,使按照該體系結(jié)構(gòu)搭建起來的軟件平臺之間進(jìn)行標(biāo)準(zhǔn)化的數(shù)據(jù)交換和相互操作。ABBET 對測試軟件作了重點(diǎn)描述和規(guī)范,從信息建模的角度對測試信息進(jìn)行形式化描述,消除了層次間測試信息移植、共享和應(yīng)用的障礙。在軟件設(shè)計(jì)上,強(qiáng)調(diào)系統(tǒng)重構(gòu)或重組,能夠根據(jù)被測對象或測試流程的不同而動態(tài)地進(jìn)行重組,降低系統(tǒng)重組的代價(jià)。但是ABBET標(biāo)準(zhǔn)僅僅提出了ATS框架并描述了測試開發(fā)過程中各個層次之間的關(guān)系,在具體應(yīng)用上如何實(shí)現(xiàn)這些層次的功能,實(shí)現(xiàn)一個完整的面向信號的自動測試系統(tǒng),則需要設(shè)計(jì)者自行開發(fā)。
IEEE 1226.3和IVI儀器驅(qū)動規(guī)范描述如何最大限度地實(shí)現(xiàn)儀器互換性。
IEEE 1641標(biāo)準(zhǔn)提供了基于COM技術(shù)實(shí)現(xiàn)的信號描述與控制的能力,使得用戶可以選擇任意支持COM的開發(fā)平臺與程序設(shè)計(jì)語言,而且能夠很方便地實(shí)現(xiàn)測試程序的可移植。
IEEE 1671提供了一個開放的信息傳輸?shù)臉?biāo)準(zhǔn),使得信息可以在不同測試儀器的測試程序之間傳輸,為TPS可移植與互操作、儀器可互換提供了便利條件。
IEEE 1232標(biāo)準(zhǔn)定義了ATS故障診斷服務(wù)接口。它提供了基本診斷服務(wù),同時允許各種診斷方法添加到ATS中去,大大提高了ATS故障診斷水平。
2 測試平臺軟件架構(gòu)
2.1 ABBET結(jié)構(gòu)層次
ABBET結(jié)構(gòu)由基礎(chǔ)結(jié)構(gòu)中的單一類別創(chuàng)建的類別集合所構(gòu)成。這個基礎(chǔ)提供了基礎(chǔ)類和主要類的參考結(jié)構(gòu)。這可以被指定在不同的層次創(chuàng)建通用測試環(huán)境(框架結(jié)構(gòu))或?qū)S脺y試應(yīng)用程序。
ABBET標(biāo)準(zhǔn)的體系結(jié)構(gòu)分為3個層次:基礎(chǔ)框架結(jié)構(gòu)、擴(kuò)展框架結(jié)構(gòu)和應(yīng)用。
基礎(chǔ)框架的組織類似于一種接口的集合,其中每個接口與一個或多個ABBET組件標(biāo)準(zhǔn)相關(guān),或者與IEEE或其他公認(rèn)的組織發(fā)布的行業(yè)標(biāo)準(zhǔn)相關(guān)。定義了適合某個產(chǎn)品系生命周期內(nèi)不同階段相適應(yīng)的基礎(chǔ)接口。
一個TAF是一個可再用類別集合,來完成一個特定應(yīng)用領(lǐng)域的要求。每個TAF服務(wù)于測試主題中的特定類別、技術(shù)、資源或需求。擴(kuò)展框架就是由一個或多個這樣的應(yīng)用框架(TAF)組成。
ABBET提供從開發(fā)工具和TAF直接訪問應(yīng)用。一個應(yīng)用可能使用一個或多個框架來提供到執(zhí)行應(yīng)用的類的訪問。圖1顯示了ABBET結(jié)構(gòu)層次,圖2說明了根據(jù)與ABBET 組件標(biāo)準(zhǔn)有關(guān)的操作、功能以及組織進(jìn)行劃分的ABBET體系結(jié)構(gòu)。
圖1 ABBET結(jié)構(gòu)層次 圖2 ABBET體系結(jié)構(gòu)
表1列舉了測試泛環(huán)境的分層模型及每層需要用到的設(shè)計(jì)和測試標(biāo)準(zhǔn)。
表1 測試泛環(huán)境分層測試標(biāo)準(zhǔn)
2.2 測試平臺軟件結(jié)構(gòu)
要實(shí)現(xiàn)通用ATS,則要求對資源的需求描述、虛擬資源的模型,以及對真實(shí)資源的驅(qū)動均基于信號接口,要摒棄驅(qū)動基于儀器的做法。TPS的可移植性和儀器可互換性的關(guān)鍵在于驅(qū)動模型的構(gòu)造。
使用面向信號的驅(qū)動組件,當(dāng)虛擬資源映射成真實(shí)信號時,儀器暴露給軟件系統(tǒng)的是信號接口,而不是具體儀器。ABBET采用TFF信號模型描述測試需求,與具體測試系統(tǒng)無關(guān)。
圖3顯示了基于TFF信號模型的面向信號測試系統(tǒng)軟件平臺結(jié)構(gòu)。
圖3 軟件平臺結(jié)構(gòu)
測試策略和需求層用于用戶配置測試信息,如測試需求、測試策略。
測試程序?qū)油瓿蓽y試流程設(shè)計(jì),并從測試需求和測試流程轉(zhuǎn)換為測試代碼。TFF信號模型組件庫為不同編程開發(fā)環(huán)境的TPS開發(fā)提供信號模型。
資源管理層完成虛擬資源到實(shí)際資源的映射,執(zhí)行具體的測試流程。編程語言接口將各種編程語言表示的測試信號資源需求形式變換成虛擬資源。資源模型庫用來具體資源建模。驅(qū)動組件對驅(qū)動實(shí)際資源。
儀器控制層全面遵守IVI儀器驅(qū)動規(guī)范,利用IVICOM技術(shù),驅(qū)動實(shí)際測試儀器。
3 關(guān)鍵技術(shù)討論
3.1 RTS運(yùn)行機(jī)制
RTS是資源管理層中核心組件,它首先對測試程序進(jìn)行語法檢查和編譯,轉(zhuǎn)換為信號模型對應(yīng)的條目(信號類型、UUT 端口連接、信號范圍、信號屬性、方法調(diào)用等);然后啟動查詢引擎,將虛擬資源定位到真實(shí)資源;接下來調(diào)用驅(qū)動引擎,按照連接模型執(zhí)行UUT端口和信號端口連接算法,并執(zhí)行信號模型規(guī)定操作,實(shí)現(xiàn)測試流程。
RTS機(jī)制保證了虛擬資源與真實(shí)資源完全隔離。虛擬資源只提出測試需求,不涉及ATS儀器配置。RTS在TPS運(yùn)行中始終處于工作狀態(tài),捕獲TPS的測試需求,控制驅(qū)動組件驅(qū)動實(shí)際儀器執(zhí)行測試流程,直到TPS執(zhí)行完成后才退出。
3.2 虛擬資源管理機(jī)制實(shí)現(xiàn)
資源管理層是平臺的核心層。在RTS組件中的“虛擬資源管理器”模塊的作用是對具體信號進(jìn)行分析,然后對具體儀器進(jìn)行選取和驅(qū)動。虛擬資源管理結(jié)構(gòu)如圖4所示。
3.2.1 虛擬資源建模
平臺中虛擬資源采用TFF信號模型建模方法和組件技術(shù),按照面向?qū)ο蟮乃枷?,將信號分為有限的幾類:常值、斜坡、隨機(jī)、指數(shù)、脈沖、階越、衰減正弦、梯形、噪聲(非周期類),正弦曲線、三角、方波、標(biāo)準(zhǔn)正弦、其他波形(周期類)。其中,每類信號都以統(tǒng)一參數(shù)屬性表建模,以便于實(shí)例化。
3.2.2 信號驅(qū)動組件
儀器驅(qū)動組件模型采用TFF 信號驅(qū)動組件模型,模型包括信號信息(名稱和邏輯地址等)、信號屬性、信號能力、信號端口及其信號驅(qū)動方法。這和虛擬資源的需求是一一對應(yīng)的,有利于虛擬資源到真實(shí)資源的映射。同時它還包含信號名稱、邏輯地址及其能力等信息,提供給RTS做查找真實(shí)資源和定位。具體來說,向上對信號驅(qū)動組件通過信號模型中的方法和事件實(shí)現(xiàn),向下對底層儀器的操作使用通用的重封裝的具體儀器驅(qū)動實(shí)現(xiàn)。
3.2.3 資源模型實(shí)現(xiàn)
測試資源模型提供ATS對系統(tǒng)資源配置和與被測單元連接通路的數(shù)據(jù)模型及管理,資源模型包括設(shè)備模型、配置模型及適配器模型,使用數(shù)據(jù)庫建立和表示模型,使模型規(guī)范化和易修改。
設(shè)備資源模型DM描述了具體資源的相關(guān)信息,是實(shí)現(xiàn)資源管理器依照信號需求選擇儀器的基礎(chǔ)。在數(shù)據(jù)庫中通過設(shè)備記錄表和設(shè)備功能表來描述設(shè)備模型:設(shè)備記錄表描述了ATE系統(tǒng)中所有的測試設(shè)備的相關(guān)信息;設(shè)備功能表記錄了測試系統(tǒng)中儀器設(shè)備的信號發(fā)生/測試能力。
配置CM模型定義了具體測試系統(tǒng)的開關(guān)資源的輸入、輸出關(guān)系。其中包含了各種開關(guān)資源、模擬總線的連接問題,因而具有較復(fù)雜的連接關(guān)系。適配器模型AM定義了開關(guān)資源與UUT的連接關(guān)系,與配置模型比較類似。采用數(shù)據(jù)庫表的形式來建模,與測試系統(tǒng)配合,實(shí)現(xiàn)儀器的匹配、通道的選擇和整條通路的連接。
圖4 虛擬資源管理結(jié)構(gòu)
3.3 最佳通路選擇問題
實(shí)際應(yīng)用中,具體的硬件設(shè)備種類比較多,而且每一種硬件設(shè)備都能實(shí)現(xiàn)多種信號功能,開關(guān)和通路連接也不止一種方式,這樣就帶來RTS對儀器和通路的選擇問題。
測試路徑搜索可以用到狀態(tài)圖搜索的理論,目前成熟的算法也比較多。根據(jù)實(shí)際問題的情況和對最優(yōu)解的需求,選取A*算法作為最優(yōu)測試路徑選擇問題的基本解決方法。A*算法通過對估價(jià)值的計(jì)算來處理節(jié)點(diǎn)的取舍,在最優(yōu)測試路徑選擇的實(shí)際問題中,在計(jì)算估價(jià)值之前利用約束條件、節(jié)點(diǎn)位置等信息減少節(jié)點(diǎn)的數(shù)量,極大地減少搜索的盲目性,迅速求得最佳路徑。
結(jié)語
在已有平臺上的試驗(yàn)證明,這種軟件平臺的設(shè)計(jì)是可行的?;趪H標(biāo)準(zhǔn)設(shè)計(jì)測試系統(tǒng)軟件平臺,解決了儀器互換性和TP可移植問題,體現(xiàn)了面向?qū)ο蟮乃枷?,?shí)現(xiàn)了測試系統(tǒng)軟件平臺的通用性。
參考文獻(xiàn)
[1] IEEE Std 12261998. IEEE trialuse standard for A Broad Based Environment for Test (ABBET),overview and architecture,199906.
[2] IEEE Std 1226.31998. IEEE standard for software interface for resource management for A BroadBased Environment for Test (ABBET),199806.
[3] IEEE SCC20. ATLAS 2000 Architecture Document. Revision 3.0, 199706.
[4] Object Management Group. The Common Object Services Specification, OMG Technical Committee Document formal/980705,199807.
[5] Jurcak Tom.Test programming in an ABBET signal oriented environment[C]//Proceedings of AUTOTESTCON, 1996: 3639.
[6] 劉金寧,孟晨,楊鎖昌,等.基于信號組件的新一代測試語言——ATLAS2K及其應(yīng)用研究[J].測控技術(shù),2004(9):5760.
[7] 于功敬, 馬好東, 楊廣志,等. 虛擬儀器測試環(huán)境軟總線體系結(jié)構(gòu)[J]. 計(jì)算機(jī)測量與控制,2006(2):141143.
[8] 羅錦,蘇振中,孟晨.自動測試系統(tǒng)軟件設(shè)計(jì)標(biāo)準(zhǔn)化研究[J].儀表技術(shù),2009(8):7173.
[9] 王肅寧,楊士元.與儀器無關(guān)的測試系統(tǒng)集成技術(shù)[J].電測與儀表, 2004,41(465):3840.
[10] 光福,王厚軍,田書林,等.現(xiàn)代測試技術(shù)[M].成都:電子科技大學(xué)出版社,2003.
[11] 楊曦盛,田書林,黃建國.ABBET在雷達(dá)綜合測試系統(tǒng)軟件設(shè)計(jì)中的應(yīng)用[J].中國測試技術(shù),2006,32(4):101104.
[12] 夏昕. 測試泛環(huán)境中虛擬資源管理技術(shù)研究[D]. 武漢:華中科技大學(xué),2006.
評論