劉連照,王道酉,徐 宙,余 磊,馬 暉, 楊會民
(電子信息系統(tǒng)復(fù)雜電磁環(huán)境效應(yīng)國家重點(diǎn)實(shí)驗(yàn)室,河南 洛陽 471003)
雷達(dá)裝備是電子信息裝備試驗(yàn)中的重要組成部分。為了保證雷達(dá)裝備測試數(shù)據(jù)的準(zhǔn)確性,必須對其技術(shù)狀態(tài)進(jìn)行定期的測試。隨著雷達(dá)技術(shù)的快速發(fā)展,使得對雷達(dá)裝備測試指標(biāo)的要求越來越多,測試需求越來越多樣化,每種雷達(dá)裝備參數(shù)測試軟件的開發(fā)都需要占用大量的人員和時間,專用雷達(dá)裝備參數(shù)測試軟件的開發(fā)難度也不斷增加。其主要表現(xiàn)為以下兩點(diǎn):首先是測試目標(biāo)多樣,多種測試總線并存,針對具體的測試需求,在綜合成本、指標(biāo)、應(yīng)用環(huán)境等多方面因素的前提下,規(guī)范測試系統(tǒng)的軟、硬件結(jié)構(gòu),使其發(fā)揮出最佳的測試性能是問題的關(guān)鍵[1-5];其次系統(tǒng)的研發(fā)成本過高,針對特定測試需求開發(fā)專用測試系統(tǒng)耗費(fèi)大量的人力和物力,即使在時間等條件允許的情況下成功開發(fā)的測試系統(tǒng),也不能適應(yīng)日后的不停變化的測試需求,必須再次開發(fā)新的專用測試系統(tǒng),如此循環(huán)往復(fù)造成極大的人力、物力等的資源浪費(fèi)[6-8]。
目前,主流的雷達(dá)裝備參數(shù)測試軟件開發(fā),是面向儀器的一種測試軟件開發(fā)模式[9]。面向儀器的雷達(dá)裝備參數(shù)測試軟件開發(fā),要求軟件開發(fā)人員和測試人員具備較高的儀器控制軟件開發(fā)和雷達(dá)裝備參數(shù)測試技能,同時由于雷達(dá)裝備參數(shù)測試中涉及的儀器種類繁多、生產(chǎn)廠家和型號都不相同,加大了雷達(dá)裝備參數(shù)測試軟件開發(fā)的周期和難度,大大降低了TPS的可移植性和儀器的互換性。本文提出的面向需求驅(qū)動的雷達(dá)裝備參數(shù)測試軟件開發(fā)方法,以雷達(dá)裝備參數(shù)測試需求為基礎(chǔ),通過設(shè)計可重構(gòu)的數(shù)據(jù)流結(jié)構(gòu)模型,實(shí)現(xiàn)雷達(dá)裝備參數(shù)測試軟件的按需組合配置,縮短了雷達(dá)裝備參數(shù)測試軟件的開發(fā)周期,提高了模型的可移植性和復(fù)用性。
需求驅(qū)動是指軟件的生成依賴于用戶的需求分析結(jié)果[10]。以雷達(dá)裝備參數(shù)測試需求為最基礎(chǔ)的依據(jù),往往能夠體現(xiàn)現(xiàn)階段雷達(dá)裝備參數(shù)測試的具體期望和未來雷達(dá)裝備參數(shù)測試的發(fā)展趨勢。需求驅(qū)動從測試需求出發(fā),通過用戶總結(jié)、分析測試需求內(nèi)容、特點(diǎn),逐步歸納形成完備的測試需求描述,以測試需求描述的方式輸入到軟件生成編輯器中,自動生成新的測試項(xiàng)目或測試軟件,如圖1所示。
圖1 基于需求驅(qū)動的軟件生成方法
以需求描述方式生成雷達(dá)裝備參數(shù)測試軟件,使普通的雷達(dá)裝備參數(shù)測試人員不需要具備專家級的軟件開發(fā)能力,只需要理解需求描述與軟件生成編輯器輸入的對應(yīng)關(guān)系,就可完成新的測試軟件生成,降低了雷達(dá)裝備參數(shù)測試軟件開發(fā)門檻,同時正是由于普通測試人員的大量使用,豐富了軟件底層控件庫,解決了現(xiàn)有雷達(dá)裝備參數(shù)測試中測試方法、測試資源、測試流程等多變的難題,也能夠覆蓋未來雷達(dá)裝備參數(shù)測試中大帶寬、多數(shù)據(jù)量、長時采集等需求的發(fā)展趨勢。
為了使雷達(dá)裝備參數(shù)測試軟件可以根據(jù)測試需求自由配置,并進(jìn)一步增強(qiáng)測試軟件的可重用性、模塊化,需要對電子信息裝備常用的雷達(dá)裝備測試系統(tǒng)特點(diǎn)及測試需求進(jìn)行梳理總結(jié),將測試需求細(xì)化,完成雷達(dá)裝備參數(shù)測試的用例需求分析[11-12]。雷達(dá)裝備參數(shù)測試軟件用例需求分析如圖2所示。雷達(dá)裝備參數(shù)測試過程中主要存在測試人員和軟件開發(fā)人員兩種參與者,其中軟件開發(fā)人員可以泛化為測試人員;測試人員針對雷達(dá)裝備參數(shù)測試需求進(jìn)行已有測試項(xiàng)目使用和新建測試項(xiàng)目的開發(fā);已有測試項(xiàng)目時,測試人員對相應(yīng)測試儀器進(jìn)行基本參數(shù)的設(shè)置,操作專用控件獲取測試數(shù)據(jù),并對測試結(jié)果進(jìn)行保存;新建測試項(xiàng)目開發(fā)時時,首先選擇所需類型的測試儀器,然后根據(jù)測試需求判定該測試軟件是否加載基本操作控件、專用測試控件及結(jié)果顯示控件等,完成新的測試需求描述,最后通過軟件生成編輯器生成對應(yīng)測試需求的的測試項(xiàng)目或軟件系統(tǒng);在測試人員進(jìn)行新建測試項(xiàng)目開發(fā)因參數(shù)測試功能控件不具備或不完整時,就需要軟件開發(fā)人員對相應(yīng)的基本控件和專用控件進(jìn)行編輯添加。一般一種類型測試儀器的基本控件建立后就不再需要進(jìn)行基本控件的開發(fā),只需要對與參數(shù)測試功能、流程對應(yīng)的專用測試控件進(jìn)行開發(fā)編輯。
圖2 雷達(dá)裝備參數(shù)測試用例圖
通過對雷達(dá)裝備參數(shù)測試的特點(diǎn)、多種參數(shù)的測試方法流程進(jìn)行分析研究,進(jìn)一步歸納總結(jié)試驗(yàn)常用測試需求,梳理建立不同類型測試儀器與測試需求的對應(yīng)關(guān)系。需求分析首先解析需求描述,通過解析來建立最終實(shí)現(xiàn)軟件目標(biāo)的模型[13-15]。上述用例圖中的雷達(dá)裝備試驗(yàn)測試需求可以總結(jié)歸納為5個部分,分別為測試儀器類型、配置基本控件需求、專用測試控件需求、顯示方式需求以及數(shù)據(jù)輸出需求,如圖3所示。
圖3 雷達(dá)裝備參數(shù)測試需求歸納圖
測試儀器類型主要包括信號源、頻譜分析儀、數(shù)字示波器、矢量網(wǎng)絡(luò)分析儀、功率計等常用雷達(dá)裝備參數(shù)測試儀器種類;配置基本控件需求主要按照不同類型的測試儀器總結(jié)歸納常用設(shè)置控件,以頻譜分析儀為例常用設(shè)置控件主要包括頻率、掃寬、分辨力帶寬、視頻帶寬、幅值以及掃描時間等;專用測試控件需求根據(jù)用戶常用的頻率表掃描測量、多控件標(biāo)記測量、長時間信號監(jiān)測、靈敏度測試、天線增益測試等特殊需求加載生成軟件專用測試控件,以多點(diǎn)掃描專用測試控件功能需求為例,該功能一般要求實(shí)現(xiàn)多個頻率點(diǎn)的配置寫入,然后通過多點(diǎn)掃描按鈕點(diǎn)擊事件控制相應(yīng)的信號源、頻譜分析儀等測試儀器完成信號的生成及測試;結(jié)果顯示方式需求根據(jù)用戶選擇的測試儀器類型生成測試結(jié)果界面,高速采集時顯示方式可以關(guān)閉,存在多種顯示方式的儀器(比如矢量網(wǎng)絡(luò)分析儀)可以選擇不同類型的顯示方式(X-Y,極坐標(biāo)以及Smith圓圖);測試數(shù)據(jù)輸出要求主要包括試驗(yàn)測試數(shù)據(jù)需求的指標(biāo)數(shù)目、測試點(diǎn)數(shù)以及結(jié)果的計算,軟件按需進(jìn)行測試數(shù)據(jù)表格的數(shù)據(jù)庫構(gòu)建,以控制多臺頻譜儀測量進(jìn)行多頻率點(diǎn)掃描為例,需要將多臺儀器的測試結(jié)果進(jìn)行合并,完后以DataGridView控件的形式進(jìn)行當(dāng)前測試數(shù)據(jù)的顯示,實(shí)現(xiàn)測試數(shù)據(jù)的數(shù)據(jù)庫更新、報告及數(shù)據(jù)的導(dǎo)出功能。
基于需求分析快速建立軟件原型,旨在演示目標(biāo)系統(tǒng)主要功能的可運(yùn)行系統(tǒng)。以數(shù)據(jù)流圖的方式構(gòu)建原型,能夠描繪當(dāng)數(shù)據(jù)在軟件系統(tǒng)中移動時被變換的邏輯過程,指明系統(tǒng)擁有的數(shù)據(jù)變換的功能,因此數(shù)據(jù)流圖是建立功能模型的基礎(chǔ)[16-17]。
通過不斷地模塊分解,根據(jù)通用儀器自動控制方案中的數(shù)據(jù)流向[18-20],將一個通用儀器自動控制過程分解為硬件掃描類、基本控件類、專用控件類、數(shù)據(jù)讀取類、結(jié)果顯示類和數(shù)據(jù)存儲類共6大基礎(chǔ)類,基于UML建立的雷達(dá)裝備參數(shù)測試軟件開發(fā)模型如圖4所示。每一基類設(shè)計采用標(biāo)準(zhǔn)的數(shù)據(jù)流輸入和輸出規(guī)范,以滿足軟件對6大基類的靈活組合配置要求。首先,軟件通過調(diào)用硬件掃描類進(jìn)行混合總線(如LAN總線、GPIB總線、USB總線等)下的儀器硬件掃描,獲取硬件VISA地址的字符串列表;用戶通過選擇要使用通信地址和測試需求后,根據(jù)試驗(yàn)測試需求生成儀器基本控件和專用測試控件,并根據(jù)測試儀器型號獲取需要的控制命令字符串,實(shí)現(xiàn)測試儀器的狀態(tài)控制和測試控制;使用上一階段獲取的控制命令和測試控制方法,分別獲取顯示波形的數(shù)據(jù)矩陣和需要的測試數(shù)據(jù);根據(jù)用戶的試驗(yàn)測試結(jié)果顯示方式的選擇,調(diào)用結(jié)果顯示類進(jìn)行數(shù)據(jù)波形的繪制,并按照測試操作獲取需保存的測試結(jié)果參數(shù)、點(diǎn)次以及數(shù)據(jù);結(jié)合用戶的數(shù)據(jù)保存選擇方式和參數(shù)種類、點(diǎn)次等需求,建立專用試驗(yàn)測試數(shù)據(jù)表格或數(shù)據(jù)庫,實(shí)現(xiàn)所需試驗(yàn)數(shù)據(jù)的保存及導(dǎo)出。
圖4 基于需求驅(qū)動的雷達(dá)測試軟件開發(fā)模型
根據(jù)模塊化的思想將基于通用儀器的多參數(shù)測試軟件的基類分為硬件掃描、數(shù)據(jù)讀取、結(jié)果顯示、基本控件、專用控件、數(shù)據(jù)存儲六個基類。硬件掃描類是主要通過對計算機(jī)上的多種硬件總線(如LAN總線、GPIB總線、USB總線等)進(jìn)行掃描,獲取并顯示各總線上連接儀器的VISA資源信息,并將公共屬性Ins_VISA傳遞給后續(xù)各類,如圖5所示。
圖5 硬件掃描類結(jié)構(gòu)示意圖
圖6 基本控件類結(jié)構(gòu)示意圖
圖7 數(shù)據(jù)讀取類結(jié)構(gòu)示意圖
圖8 結(jié)果顯示類結(jié)構(gòu)示意圖
圖9 專用控件類結(jié)構(gòu)示意圖
測試數(shù)據(jù)輸出要求主要包括試驗(yàn)測試數(shù)據(jù)需求的指標(biāo)數(shù)目、測試點(diǎn)數(shù)以及結(jié)果的計算,軟件按需進(jìn)行測試數(shù)據(jù)表格的構(gòu)建。以控制多臺頻譜儀測量進(jìn)行多頻率點(diǎn)掃描為例,需要將多臺儀器的測試結(jié)果進(jìn)行合并,完后以DataGridView控件的形式進(jìn)行當(dāng)前測試數(shù)據(jù)的顯示,實(shí)現(xiàn)測試數(shù)據(jù)的數(shù)據(jù)庫更新、報告及數(shù)據(jù)導(dǎo)出等操作,如圖10所示。
圖10 數(shù)據(jù)存儲類結(jié)構(gòu)示意圖
在開發(fā)硬件掃描類、基本控件類、專用控件類、數(shù)據(jù)讀取類、結(jié)果顯示類及數(shù)據(jù)存儲類6個基類的基礎(chǔ)上,需要根據(jù)用戶選擇的測試需求組合生成典型的測試項(xiàng)目,以驗(yàn)證基于數(shù)據(jù)流的通用儀器軟件控制模型的正確性。
測試項(xiàng)目生成程序根據(jù)硬件掃描得到的混合總線下的各儀器VISA資源,選擇需要控制一個或多個的測試儀器,然后軟件自動連接選擇控制的測試儀器判斷相應(yīng)的儀器類型,并讀取相應(yīng)儀器類型的6大基類選項(xiàng),用戶通過下拉列表選擇對應(yīng)描述測試需求的6大基類選項(xiàng),然后通過項(xiàng)目生成事件調(diào)用相應(yīng)的基類進(jìn)行實(shí)例化和相對位置的配置,生成對應(yīng)測試需求的測試項(xiàng)目或軟件系統(tǒng)。測試項(xiàng)目生成流程如圖11所示。
圖11 測試項(xiàng)目生成程序流程圖
為了驗(yàn)證基于需求驅(qū)動的雷達(dá)裝備參數(shù)測試軟件開發(fā)模型的有效性,下面以特體雷達(dá)多參數(shù)經(jīng)測試系統(tǒng)軟件開發(fā)為例進(jìn)行驗(yàn)證。特體雷達(dá)多參數(shù)測試系統(tǒng)主要以電子信息裝備試驗(yàn)中特殊型號、特殊體制雷達(dá)為測試對象,因此其測試需求存在著測試項(xiàng)目多變、數(shù)據(jù)采集要求不一、測試儀器可替換等難題。
以某型號特體雷達(dá)新增的天線增益測試需求為例,主要測試需求為:被測裝備頻率范圍為1~2 GHz,需要控制10 Hz~26.5 GHz頻段的信號源E8267D、9 kHz~40 GHz頻段的頻譜分析儀E4447A進(jìn)行頻譜測試,要求具備中心頻率、SPAN、分辨力帶寬、視頻帶寬及掃描時間等頻譜儀和信號源的基本參數(shù)設(shè)置功能,顯示頻譜分析儀E4447A的頻譜波形,信號源E8267D具備標(biāo)準(zhǔn)天線測量、被測天線測量及天線增益結(jié)果的自動計算,能夠?qū)崿F(xiàn)測試數(shù)據(jù)的保存及導(dǎo)出。按照測試需求分別配置6大基類,實(shí)現(xiàn)測試項(xiàng)目的生成及測試項(xiàng)目實(shí)現(xiàn)效果分別如圖12、圖13所示。
圖12 雷達(dá)天線增益測試軟件生成圖
圖13 雷達(dá)天線增益測試軟件實(shí)現(xiàn)效果圖
通過該方法生成的特體雷達(dá)多參數(shù)測試系統(tǒng)能夠完成天線增益、靈敏度、動態(tài)范圍、帶寬、信號樣式、線性調(diào)頻信號產(chǎn)生與分析等測試,對應(yīng)新的頻段、帶寬、信號樣式、存儲點(diǎn)數(shù)等測試需求,能夠?qū)崿F(xiàn)不同生產(chǎn)廠家、不同型號的同類型測試設(shè)備的快速互換,可以兼容GPIB、USB及TCPIP總線,并且生成的軟件系統(tǒng)能夠移植到其他測試系統(tǒng)中應(yīng)用。
本文通過對雷達(dá)參數(shù)測試進(jìn)行詳盡的用例需求分析,在歸納總結(jié)測試需求的基礎(chǔ)上使用UML建立了基于需求驅(qū)動的雷達(dá)參數(shù)測試軟件開發(fā)模型,并詳細(xì)介紹了模型中的類圖設(shè)計方法。實(shí)踐表明該模型能夠在雷達(dá)參數(shù)測試中完成相應(yīng)軟件系統(tǒng)生成,大大提高測試軟件開發(fā)效率、可移植性及儀器互換性,對于其他裝備參數(shù)軟件開發(fā)也具備一定的參考、借鑒價值。