(中國(guó)直升機(jī)設(shè)計(jì)研究所,江西 景德鎮(zhèn) 333001)
針對(duì)不同型號(hào)飛機(jī)航空電子系統(tǒng)不同分系統(tǒng)分設(shè)備測(cè)試需求存在較大差異的實(shí)際情況,根據(jù)測(cè)設(shè)需求的并集[1],研制規(guī)模合理航空電子系統(tǒng)綜合自動(dòng)檢測(cè)設(shè)備可以提高其通用性,提高多型號(hào)飛機(jī)航空電子系統(tǒng)的維修保障效率。目前,自動(dòng)測(cè)試領(lǐng)域中使用的測(cè)試程序(TP)開(kāi)發(fā)環(huán)境主要有面向儀器和面向信號(hào)兩種[2]。面向儀器的開(kāi)發(fā)環(huán)境需要把測(cè)試程序和測(cè)設(shè)設(shè)備驅(qū)動(dòng)集合在一起,使測(cè)試程序設(shè)計(jì)與開(kāi)發(fā)周期較長(zhǎng)、維護(hù)困難,可移植性、可重用性較差[2]。而基于PAWS的面向信號(hào)的開(kāi)發(fā)環(huán)境,測(cè)試程序中只包含被測(cè)對(duì)象(UUT)端口的信號(hào)激勵(lì)與測(cè)試要求,測(cè)試程序運(yùn)行環(huán)境可自動(dòng)分配測(cè)試資源和路由測(cè)試通道,開(kāi)發(fā)的測(cè)試程序具有測(cè)試資源無(wú)關(guān)性,提高了平臺(tái)資源配置利用的效率,利于測(cè)試程序的再移植[2-3]。同時(shí),提高自動(dòng)檢測(cè)設(shè)備的通用性可以解決檢測(cè)設(shè)備和UUT生命周期不匹配的問(wèn)題[4]?;赑AWS的面向信號(hào)的開(kāi)發(fā)環(huán)境使用ATLAS語(yǔ)言開(kāi)發(fā)測(cè)試程序。ATLAS作為廣泛應(yīng)用于軍事和電子測(cè)試的通用標(biāo)準(zhǔn)測(cè)試語(yǔ)言,具有設(shè)備無(wú)關(guān)性、信號(hào)相關(guān)性、可擴(kuò)展性、并行性和定時(shí)功能,語(yǔ)法接近自然語(yǔ)言,文法限制不嚴(yán)格的特點(diǎn)[5]。為便于航空電子系統(tǒng)設(shè)備TP的管理,在PAWS開(kāi)發(fā)平臺(tái)上開(kāi)發(fā)的TP一般以生成TP運(yùn)行環(huán)境可執(zhí)行的PAX文件進(jìn)行交付。然而,TP運(yùn)行環(huán)境功能單一,人機(jī)界面過(guò)于簡(jiǎn)單,為對(duì)航空電子系統(tǒng)等大型系統(tǒng)的綜合自動(dòng)檢測(cè)設(shè)備的測(cè)試程序、測(cè)試報(bào)告、使用者權(quán)限、測(cè)試日志等進(jìn)行管理,需要開(kāi)發(fā)便于人機(jī)交互的客戶端軟件。
MFC(microsoft foundation classes)是微軟提供框架類(lèi)庫(kù),提供了強(qiáng)大的可視化編程環(huán)境[6]。依據(jù)ABBET標(biāo)準(zhǔn),PAWS提供了如COM/DCOM、ActiveX等流行的接口功能。針對(duì)PAWS的TP運(yùn)行環(huán)境缺乏強(qiáng)大的測(cè)試系統(tǒng)文件管理功能等問(wèn)題,本文在MFC應(yīng)用程序框架下,利用COM、ActiveX等接口技術(shù)實(shí)現(xiàn)了測(cè)試系統(tǒng)客戶端軟件對(duì)TP運(yùn)行環(huán)境組件和ACCESS數(shù)據(jù)庫(kù)的調(diào)用,編制了測(cè)試程序管理、測(cè)試報(bào)告管理、用戶權(quán)限管理、測(cè)試日志管理等模塊,極大地方便了整套系統(tǒng)的使用與管理。
航空電子系統(tǒng)綜合自動(dòng)檢測(cè)設(shè)備由硬件系統(tǒng)和軟件系統(tǒng)兩大部分組成。硬件系統(tǒng)主要包括主控計(jì)算機(jī)、測(cè)試資源平臺(tái)、各被測(cè)件適配器(TUA)3大部分組成。其中,測(cè)試資源平臺(tái)是整個(gè)綜合自動(dòng)檢測(cè)設(shè)備硬件的主干部分,由1553B總線類(lèi)儀器、GPIB總線類(lèi)儀器、VXI總線類(lèi)儀器、ICA陣列接口、ITA測(cè)試接口組件組成。VXI總線類(lèi)儀器由VXI總線零槽控制器、VXI總線測(cè)試儀器板卡、VXI總線開(kāi)關(guān)板卡組成。測(cè)試資源平臺(tái)各儀器的輸入輸出信號(hào)引腳通過(guò)直通導(dǎo)線與ICA陣列接口的各信號(hào)孔相連。各被測(cè)件適配器的主要功能是用于航空電子系統(tǒng)各被測(cè)件(UUT)的信號(hào)引腳與平臺(tái)測(cè)試資源固定的ICA陣列接口進(jìn)行匹配耦合,測(cè)試單元適配器通過(guò)各自的ITA測(cè)試接口組件與測(cè)試資源平臺(tái)的ICA陣列接口組件對(duì)接。主控計(jì)算機(jī)用于自動(dòng)檢測(cè)設(shè)備的人機(jī)交互,完成所有測(cè)試任務(wù)的執(zhí)行、控制與管理任務(wù)。為實(shí)現(xiàn)這些功能,計(jì)算機(jī)需安裝與VXI零槽控制器通訊的1394總線通訊卡,與GPIB測(cè)試儀器通訊的IEEE488總線通訊卡,與1553B測(cè)試儀器通訊的1553B總線通訊卡。計(jì)算機(jī)軟件則需安裝VISA庫(kù),ACCESS數(shù)據(jù)庫(kù),配置所有硬件資源的底層驅(qū)動(dòng)和TP運(yùn)行環(huán)境組件。設(shè)備的總體結(jié)構(gòu)如圖1所示。
圖1 綜合自動(dòng)檢測(cè)設(shè)備總體結(jié)構(gòu)
綜合自動(dòng)檢測(cè)設(shè)備客戶端軟件用于系統(tǒng)的人機(jī)交互,整個(gè)客戶端軟件由ACCESS數(shù)據(jù)庫(kù)、TP管理模塊、測(cè)試報(bào)告管理模塊、用戶權(quán)限管理模塊、測(cè)試日志管理模塊等組成。
ACCESS數(shù)據(jù)庫(kù)用于整個(gè)系統(tǒng)使用過(guò)程中信息的存儲(chǔ),按存儲(chǔ)的信息分類(lèi),ACCESS數(shù)據(jù)庫(kù)包含UUT信息表、TP信息表、測(cè)試報(bào)告信息表、用戶信息表、日志信息表。UUT信息表用于存儲(chǔ)UUT的中文名稱,型號(hào),生產(chǎn)廠家及年月,產(chǎn)品序列號(hào)等信息。TP信息表用于存儲(chǔ)各被測(cè)件(UUT)的測(cè)試程序(TP)及其編制人員,版本號(hào),編寫(xiě)年月,版本修改說(shuō)明等信息。測(cè)試報(bào)告信息表的主要功能是存儲(chǔ)TP運(yùn)行后生成的測(cè)試報(bào)告測(cè)試時(shí)間和對(duì)應(yīng)的被測(cè)件型號(hào)等信息。用戶信息表用于存儲(chǔ)所有可以登錄客戶端軟件的用戶名、用戶密碼、用戶權(quán)限的信息。用戶權(quán)限分為管理員用戶和普通用戶。管理員用戶具備操作客戶端軟件所有功能的權(quán)限,包括添加刪除用戶信息等操作,普通用戶只限于運(yùn)行TP,查看測(cè)試報(bào)告和瀏覽客戶端軟件運(yùn)行日志等操作??蛻舳塑浖牡卿涍\(yùn)行等信息則存儲(chǔ)于日志信息表中。
客戶端軟件功能模塊中的TP管理模塊的主要任務(wù)是完成被測(cè)件TP的加載運(yùn)行,UUT目錄信息顯示以目錄樹(shù)的形式顯示航空電子系統(tǒng)所有被測(cè)件名稱或型號(hào),點(diǎn)擊相應(yīng)的被測(cè)件后再點(diǎn)擊TP加載則導(dǎo)入需要的TP。平臺(tái)自檢模塊用于TP運(yùn)行前平臺(tái)狀態(tài)的檢查。測(cè)試報(bào)告管理模塊完成測(cè)試報(bào)告的查找瀏覽打印等需求。用戶權(quán)限管理模塊對(duì)客戶端軟件的使用者進(jìn)行管理,可以添加用戶、刪除用戶、更改用戶密碼和權(quán)限。用戶使用測(cè)試日志管理模塊可以瀏覽客戶端軟件以往的運(yùn)行使用信息,打印報(bào)告。綜合檢測(cè)設(shè)備客戶端軟件是Windows操作系統(tǒng)下的一款應(yīng)用軟件。在Windows操作系統(tǒng)應(yīng)用程序開(kāi)發(fā)中,微軟基礎(chǔ)類(lèi)(Microsoft Foundation Classes, MFC)提供了在C++環(huán)境下編寫(xiě)應(yīng)用程序的框架和引擎,豐富的類(lèi)庫(kù)和開(kāi)放的API接口特別便于開(kāi)發(fā)者使用。整個(gè)軟件的總體結(jié)構(gòu)如圖2所示。
圖2 客戶端軟件總體結(jié)構(gòu)
綜合自動(dòng)檢測(cè)設(shè)備在使用過(guò)程中涉及到較多的數(shù)據(jù)信息管理,如用戶的管理,UUT的管理,測(cè)試報(bào)告信息的管理等。采用數(shù)據(jù)庫(kù)技術(shù)對(duì)這些數(shù)據(jù)進(jìn)行有效的組織和管理,能夠準(zhǔn)確反映數(shù)據(jù)之間的聯(lián)系,方便用戶對(duì)整套檢測(cè)設(shè)備的操作。Access是一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),可以根據(jù)用戶定義的關(guān)系進(jìn)行存儲(chǔ)、處理和管理數(shù)據(jù),容量大,功能強(qiáng),適合本客戶端軟件的開(kāi)發(fā)。
客戶端軟件需要管理的信息包括使用者信息、被測(cè)件信息、TP信息、測(cè)試報(bào)告信息、客戶端軟件使用日志信息,根據(jù)這些信息分類(lèi)制成5份數(shù)據(jù)表,各表根據(jù)各自需要管理的信息添加相應(yīng)的字段。
基于MFC類(lèi)庫(kù),比較流行的兩種數(shù)據(jù)庫(kù)操作方式有開(kāi)放數(shù)據(jù)庫(kù)連接(Open Database Connectivity, ODBC)和ADO(ActiveX Data Object)數(shù)據(jù)庫(kù)訪問(wèn)接口。ODBC是一種直觀和常用的數(shù)據(jù)庫(kù)操作方式,但其執(zhí)行速速與ADO方式相比存在一定劣勢(shì),且ADO便于移植,不需要額外的配置,本客戶端軟件使用ADO對(duì)ACCESS數(shù)據(jù)庫(kù)進(jìn)行操作。
2.2.1 ADO初始化
在本客戶端軟件應(yīng)用程序的編制過(guò)程中,使用ADO操作數(shù)據(jù)庫(kù)時(shí)必須先在應(yīng)用程序中首先初始化COM環(huán)境,做法是在MFC生成的應(yīng)用程序框架下應(yīng)用程序初始化子函數(shù)中加入API函數(shù):AfxOleInit();。在COM環(huán)境初始化完成后需要配置ADO運(yùn)行所指出的動(dòng)態(tài)鏈接庫(kù)msado15.dll,所有ADO操作的接口函數(shù)與數(shù)據(jù)結(jié)構(gòu)都依賴于該定義文件。在應(yīng)用程序中引入該文件的一種簡(jiǎn)便做法是在stdafx.h頭文件中加入語(yǔ)句:#import "C:programfilescommon filessystemadomsado15.dll" rename_namespace("ADOBS") rename("EOF","adoEOF");using namespace ADOBS;。文件的具體路徑根據(jù)操作系統(tǒng)的安裝情況而定。
2.2.2 數(shù)據(jù)庫(kù)連接
進(jìn)行數(shù)據(jù)庫(kù)連接是使用ADO操作ACCESS數(shù)據(jù)庫(kù)必須建立與ACCESS數(shù)據(jù)庫(kù)服務(wù)器與ACCESS數(shù)據(jù)庫(kù)文件的連接。本客戶端所有的數(shù)據(jù)庫(kù)表都存儲(chǔ)在數(shù)據(jù)庫(kù)文件ATE.accdb文件中,數(shù)據(jù)庫(kù)服務(wù)器是微軟的Microsoft.ACE.OLEDB.12.0。ADO連接ACCESS數(shù)據(jù)庫(kù)通過(guò)ADO連接對(duì)象指針_ConnectionPtr和ADO記錄集對(duì)象指針_RecordsetPtr實(shí)現(xiàn)。具體代碼如下:
_ConnectionPtr m_pCon; //ADO連接對(duì)象
_RecordsetPtr m_pRs; //創(chuàng)建ADO記錄集對(duì)象
_bstr_t strConnect="Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + bstr_t(DataPath) + "DataATE.accdb";
m_pCon.CreateInstance(_uuidof(Connection));
m_pCon->Open(strConnect,"","",adModeUnknown);
m_pRs.CreateInstance(_uuidof(Recordset));
2.2.3 數(shù)據(jù)表的操作
本客戶端軟件使用ADO操作ACCESS數(shù)據(jù)庫(kù)數(shù)據(jù)表的常用操作包括打開(kāi)數(shù)據(jù)表記錄、獲取記錄字段,刪除記錄字段、寫(xiě)入記錄字段。以本客戶端軟件的“ATE用戶信息管理”表為例,ADO定位到該表用戶名的代碼為:
theApp.IniAdo();
sql.Format("select 用戶名from ATE用戶信息管理");//格式化一個(gè)字符串寫(xiě)入字符串變量sql中
m_pRs->Open((_variant_t)sql,_variant_t((IDispatch*)m_pCon,true), adOpenDynamic, adLockOptimistic, adCmdUnknown);
使用m_pRs->MoveNext();移動(dòng)記錄集指針在表中指向的位置。
獲取字段“用戶名”的值使用函數(shù)GetCollect,參考代碼如下“
txt=m_pRs->GetCollect("用戶名").bstrVal;
新增一個(gè)空記錄則通過(guò)AddNew()方法,再用PuttCollect(字段名,值)輸入每個(gè)字段的值,最后再用Update()更新到數(shù)據(jù)庫(kù)中即可,參考代碼如下:
m_pRs ->AddNew();
m_pRs ->PutCollect(“用戶名”,_variant_t(Newname));
m_pRs ->Update();
要對(duì)數(shù)據(jù)庫(kù)中某一特定記錄進(jìn)行刪除,需要移動(dòng)記錄集指針定位到該記錄后再行刪除。移動(dòng)記錄集指針使用MoveFirst()方法定位到表第一條記錄,使用MoveNext()方法往下移動(dòng)記錄集指正,在通過(guò)獲取字段的值判斷是否是所需要?jiǎng)h除的記錄,刪除記錄時(shí)使用Delete(adAffectCurrent)方法刪除當(dāng)前記錄。參考代碼如下:
m_pRs -> Delete(adAffectCurrent);
2.2.4 對(duì)象釋放
在MFC使用ADO操作數(shù)據(jù)庫(kù)后,需要人為釋放ADO操作對(duì)象,整個(gè)釋放過(guò)程需要先關(guān)閉記錄集對(duì)象后關(guān)閉連接對(duì)象的順序,參考代碼如下:
m_pRs ->Close();//關(guān)閉記錄集對(duì)象
m_pCon->Close();//關(guān)閉連接集對(duì)象
TP管理模塊的主要功能是實(shí)現(xiàn)對(duì)應(yīng)被測(cè)件(UUT)測(cè)試程序的管理、加載、運(yùn)行。航空電子系統(tǒng)各被測(cè)件(UUT)的測(cè)試程序(TP)根據(jù)測(cè)試需求文檔(TRD)使用ATLAS語(yǔ)言進(jìn)行開(kāi)發(fā),使用PAWS作為開(kāi)發(fā)平臺(tái)。為防止用戶對(duì)TP進(jìn)行篡改,TP以編譯之后的可執(zhí)行PAX文件的形式進(jìn)行交付。PAX文件的運(yùn)行環(huán)境為PAWS的RTS服務(wù)器,該系統(tǒng)是一個(gè)run-time測(cè)試執(zhí)行系統(tǒng),可實(shí)現(xiàn)自動(dòng)測(cè)試控制、人工測(cè)試控制功能,但PAWS/RTS只有英文版,不便于航空電子系統(tǒng)維修人員使用,也不具備對(duì)測(cè)試系統(tǒng)信息的管理功能。
圖3 RTS服務(wù)器編程接口關(guān)系圖
RTS服務(wù)器可通過(guò)RTS控件集(RTS ActiveX controls)、RTS COM適配器(RTS COM Adapters)和TPS服務(wù)器(TPS Server)3種方式向客戶端程序提供服務(wù)[7],如圖3所示。在RTS服務(wù)器中,其中RTSMachine支持測(cè)試程序集TPS(Test Programe Set)的執(zhí)行和監(jiān)控,IOSubsystem為系統(tǒng)的輸入/輸出(I/O)操作提供支持,DataLogger提供系統(tǒng)的數(shù)據(jù)記錄功能,Debugger為系統(tǒng)提供給調(diào)試功能[7]。RTS控件集支持MFC、VB、Web瀏覽器等ActiveX容器,采用Idispatch自動(dòng)化接口,使得腳本語(yǔ)言能夠驅(qū)動(dòng)RTS服務(wù)。在本客戶端軟件中采用RTS控件集接口的方式進(jìn)行開(kāi)發(fā)。
圖4 MFC插入RTS ActiveX控件
圖5 RTS服務(wù)器狀態(tài)與動(dòng)作邏輯
在MFC下開(kāi)發(fā)RTS ActiveX控件集應(yīng)用程序需要?jiǎng)?chuàng)建RTS ActiveX類(lèi)庫(kù),安裝PAWS軟件會(huì)自帶創(chuàng)建該類(lèi)庫(kù)。該類(lèi)庫(kù)提供了RtsCombo Class、RtsControl Class、RtsMonitor Class三類(lèi)ActiveX控件,如圖4所示。本客戶端軟件調(diào)用RTS的RTSMachine服務(wù),對(duì)應(yīng)在對(duì)話框中插入RtsCombo Class控件,同時(shí)會(huì)在MFC工程中添加rtscombo.h和rtscombo.cpp兩個(gè)文件。在rtscombo.cpp文件中定義了RTS ActiveX控件對(duì)應(yīng)的類(lèi)class CRtscomno,其類(lèi)屬性指向RTS服務(wù)器運(yùn)行時(shí)的信息,類(lèi)方法是與RTS服務(wù)器交互的接口函數(shù)。RTS服務(wù)器的動(dòng)作邏輯如圖5所示。代碼編寫(xiě)時(shí)使用類(lèi)class CRtscomno創(chuàng)建RTS ActiveX控件對(duì)象,通過(guò)對(duì)象調(diào)用Attach方法連接RTS服務(wù)器,Load方法加載PAX格式TPS,Run方法運(yùn)行TPS,Halt方法暫停TPS的運(yùn)行,Unload方法卸載RTS服務(wù)器中的TP,get_StmInfo等方法獲取PAX運(yùn)行中的信息。
為方便用戶快速準(zhǔn)確導(dǎo)入需要的TP,在TP管理模塊中還集成了UUT目錄樹(shù),航空電子系統(tǒng)的UUT名稱通過(guò)ACCESS數(shù)據(jù)庫(kù)導(dǎo)入到UUT目錄樹(shù)中。用戶需要測(cè)試某一UUT時(shí),只要選中對(duì)應(yīng)的UUT名稱或型號(hào),點(diǎn)擊對(duì)話框中的加載按鈕,則其PAX文件將自動(dòng)傳到RTS服務(wù)器的Load方法,進(jìn)行TP加載。
測(cè)試報(bào)告管理模塊主要實(shí)現(xiàn)用戶對(duì)平臺(tái)自檢、UUT測(cè)試歷次報(bào)告的查閱,其對(duì)話框如圖6所示。對(duì)話框分為自檢報(bào)告查閱欄、UUT測(cè)試報(bào)告查閱欄。在自檢報(bào)告查閱欄點(diǎn)擊下拉框會(huì)顯示以往所有平臺(tái)自檢報(bào)告名稱。自檢報(bào)告由平臺(tái)自檢TP生成,文件名按自檢時(shí)間命名。選中要查看的自檢報(bào)告名稱,點(diǎn)擊查看記錄該報(bào)告文檔將自動(dòng)彈出。打印文檔時(shí)點(diǎn)擊文檔中的打印設(shè)置進(jìn)行打印。UUT測(cè)試報(bào)告根據(jù)UUT的名稱進(jìn)行分類(lèi),查閱UUT測(cè)試報(bào)告首先要從產(chǎn)品名稱下拉框中選中產(chǎn)品,選中產(chǎn)品后,點(diǎn)擊測(cè)試數(shù)據(jù)下拉框會(huì)顯示以往該產(chǎn)品的所有測(cè)試報(bào)告名稱。UUT測(cè)試報(bào)告由UUT測(cè)試TP生成,文件名按時(shí)間命名。選中測(cè)試報(bào)告名稱,點(diǎn)擊查看記錄,測(cè)試報(bào)告將自動(dòng)彈出,打印操作同平臺(tái)自檢報(bào)告。
圖6 測(cè)試報(bào)告管理模塊對(duì)話框
用戶權(quán)限管理模塊實(shí)現(xiàn)對(duì)自動(dòng)檢測(cè)設(shè)備使用著權(quán)限的授予與管理,其對(duì)話框如圖7所示。根據(jù)權(quán)限管理模塊的基本功能,對(duì)話框分為添加用戶欄、用戶名和密碼修改欄、刪除用戶欄。添加用戶欄用于添加新用戶,需要設(shè)置新用戶的用戶名、密碼和身份。用戶身份有兩種,分別是管理員和普通用戶,管理員用戶具備系統(tǒng)日志刪除、ATE平臺(tái)自檢和UUT測(cè)試的權(quán)限,普通用戶只具備ATE平臺(tái)自檢和UUT測(cè)試的權(quán)限。用戶名和密碼修改可以分別實(shí)現(xiàn)對(duì)用戶名和密碼的修改。刪除用戶可以根據(jù)實(shí)際需要把授予平臺(tái)使用權(quán)限的用戶刪除。錄入客戶端軟件的信息由ADO添加到ACCESS數(shù)據(jù)庫(kù)的用戶信息表中,用戶密碼信息在添加到數(shù)據(jù)表之前使用加密算法進(jìn)行加密。信息加入數(shù)據(jù)表后將對(duì)應(yīng)的增加一條記錄。進(jìn)行用戶名密碼修改時(shí),ADO首先定位到用戶信息表中與舊用戶名或舊密碼相符的記錄,再將對(duì)話框中輸入的信息更新到對(duì)應(yīng)記錄的相關(guān)字段中。刪除用戶下拉欄會(huì)通過(guò)ADO獲取用戶信息表中所有用戶名,根據(jù)需要選擇要?jiǎng)h除的用戶名點(diǎn)擊刪除按鈕后,ADO將用戶信息表中與此用戶名對(duì)應(yīng)的記錄刪除。
圖7 權(quán)限管理模塊對(duì)話框
客戶端軟件日志管理模塊只有管理員用戶具備權(quán)限查看,用于查找綜合自動(dòng)檢測(cè)設(shè)備的每一次使用記錄,其對(duì)話框如圖8所示。其中事件類(lèi)型下拉框分為全部事件、平臺(tái)自檢事件、UUT測(cè)試事件、更改用戶信息事件,日期下拉框顯示全部日期和客戶端軟件所有使用被記錄的日期,用戶下拉框可選擇全部用戶和具有客戶端軟件使用權(quán)限的某一具體用戶。日志記錄顯示對(duì)話框顯示信息包括登錄時(shí)間、操作用戶、事件類(lèi)型、事件標(biāo)題、事件內(nèi)容。在事件類(lèi)型選擇全部事件,用戶選擇全部用戶、日期選擇全部日期時(shí),點(diǎn)擊查看記錄按鈕ADO將把記錄在ACCESS數(shù)據(jù)庫(kù)中客戶端軟件的每一次使用記錄傳至日志管理模塊對(duì)話框進(jìn)行顯示。選中某一條記錄再點(diǎn)擊刪除記錄,管理員用戶可將顯示在對(duì)話框中的該記錄進(jìn)行刪除,同時(shí)ACCESS數(shù)據(jù)庫(kù)中的記錄一并刪除。事件類(lèi)型、用戶、日期下拉框選擇其他選項(xiàng),對(duì)話框中顯示的記錄信息只顯示符合下拉框條件的信息,管理員可快速定位要查找的日志記錄。
圖8 日志管理模塊對(duì)話框
綜合自動(dòng)檢測(cè)設(shè)備客戶端軟件作為用戶與檢測(cè)設(shè)備硬件系統(tǒng)交互的主要工具,其主要功能是實(shí)現(xiàn)用戶操作設(shè)備實(shí)現(xiàn)對(duì)各UUT的自動(dòng)檢測(cè)功能,其人機(jī)對(duì)話窗口如圖9所示。選擇測(cè)試對(duì)象時(shí)可根據(jù)顯示UUT名稱或顯示UUT型號(hào),下方樹(shù)狀目錄將顯示各UUT的名稱或型號(hào)。在樹(shù)狀目錄中選中要測(cè)試的UUT,點(diǎn)擊左下角加載按鈕,則該UUT的TP將導(dǎo)入RTS服務(wù)器,TP在RTS中運(yùn)行時(shí)的打印信息將顯示在圖9對(duì)話框的測(cè)試過(guò)程信息顯示框中。如圖10所示是進(jìn)行飛控計(jì)算機(jī)測(cè)試時(shí),TP打印的測(cè)試過(guò)程信息。如圖9所示,在綜合自動(dòng)檢測(cè)設(shè)備開(kāi)啟后進(jìn)行飛控計(jì)算機(jī)測(cè)試前TP會(huì)給出測(cè)試前準(zhǔn)備信息,主要工作有安裝TUA連接設(shè)備。在設(shè)備安裝無(wú)誤之后,TP開(kāi)始進(jìn)行飛控計(jì)算機(jī)測(cè)試。首先TP程序要控制平臺(tái)電源給飛控計(jì)算機(jī)通電使飛控計(jì)算機(jī)進(jìn)入運(yùn)行狀態(tài)。上電過(guò)程中RTS根據(jù)TP中的上電程序代碼從ATLAS設(shè)備庫(kù)中分配電源資源并調(diào)用該資源的底層驅(qū)動(dòng)與平臺(tái)電源通訊執(zhí)行對(duì)應(yīng)動(dòng)作。上電之后,通過(guò)TP程序中使用萬(wàn)用表測(cè)量飛控計(jì)算機(jī)電壓輸出引腳的電壓確定上電是否完成,RTS調(diào)用萬(wàn)用表資源的過(guò)程同調(diào)用電源資源的過(guò)程。萬(wàn)用表測(cè)得正常電壓后在測(cè)試過(guò)程信息中顯示“27V輸入電源正確!”后進(jìn)入后續(xù)與飛控計(jì)算機(jī)的握手測(cè)試。握手測(cè)試過(guò)程中,TP驅(qū)動(dòng)ATE平臺(tái)RS422總線仿真卡向飛控計(jì)算機(jī)發(fā)送“7F7F7F”命令字,飛控計(jì)算機(jī)進(jìn)入維護(hù)測(cè)試模式后向外發(fā)送“8A8A8A”狀態(tài)字。TP驅(qū)動(dòng)平臺(tái)RS422總線卡處于偵聽(tīng)狀態(tài),當(dāng)接收到飛控計(jì)算機(jī)返回的狀態(tài)字后將測(cè)試過(guò)程信息顯示在測(cè)試過(guò)程信息顯示界面上。經(jīng)實(shí)際使用驗(yàn)證,客戶端軟件運(yùn)行飛控計(jì)算機(jī)TP進(jìn)行后續(xù)模擬輸入測(cè)試、模擬輸出測(cè)試等測(cè)試操作均正常無(wú)誤。通過(guò)調(diào)用客戶端軟件的日志管理模塊可以查閱到用戶的該次測(cè)試登錄信息和測(cè)試項(xiàng)目信息,通過(guò)調(diào)用測(cè)試報(bào)告管理模塊可以調(diào)閱本次飛控計(jì)算機(jī)測(cè)試生成的測(cè)試報(bào)告。
圖9 UUT測(cè)試對(duì)話框及運(yùn)行結(jié)果
圖10 UUT測(cè)試過(guò)程信息
航空電子系統(tǒng)綜合自動(dòng)檢測(cè)設(shè)備作為集成度較高的信息化儀器平臺(tái)用于航空電子系統(tǒng)的維修保障可提高航空電子設(shè)備故障檢測(cè)的自動(dòng)化水平與故障隔離率。平臺(tái)高度的信息化程度,較多的管理信息和自動(dòng)化測(cè)試要求綜合自動(dòng)檢測(cè)設(shè)備具備高效的人機(jī)交互能力。本文設(shè)計(jì)的基于MFC的航空電子系統(tǒng)綜合自動(dòng)檢測(cè)設(shè)備客戶端軟件集合ACCESS數(shù)據(jù)庫(kù)的信息管理與RTS驅(qū)動(dòng)TP自動(dòng)測(cè)試的功能,使用戶可快速便捷與平臺(tái)會(huì)話進(jìn)行UUT測(cè)試。通過(guò)交付使用驗(yàn)證該客戶端軟件運(yùn)行穩(wěn)定,能夠很好的控制ATE平臺(tái)完成型號(hào)直升機(jī)各電子設(shè)備的自動(dòng)測(cè)試任務(wù),其用戶信息管理、測(cè)試報(bào)告管理、日志信息管理等功能極大地方便了用戶對(duì)整套系統(tǒng)的信息管理。