石海婷
陜西省西安市中航工業(yè)試飛中心數(shù)字化中心 710089
飛控計(jì)算機(jī)環(huán)境試驗(yàn)/外場(chǎng)維護(hù)測(cè)試軟件的實(shí)現(xiàn)
石海婷
陜西省西安市中航工業(yè)試飛中心數(shù)字化中心 710089
本文簡(jiǎn)述了飛控計(jì)算機(jī)環(huán)境試驗(yàn)/外場(chǎng)維護(hù)測(cè)試設(shè)備的原理、要點(diǎn),并以Windows操作系統(tǒng)平臺(tái)為例,描述了測(cè)試設(shè)備的整體框架,著重介紹了飛控計(jì)算機(jī)信號(hào)測(cè)試的設(shè)置、測(cè)試流程的設(shè)計(jì)。最后給出了某些具體的技術(shù)問(wèn)題的實(shí)現(xiàn)方法。
測(cè)試設(shè)備;飛控計(jì)算機(jī);串口;以太網(wǎng)
飛控計(jì)算機(jī)主要完成自動(dòng)飛行控制系統(tǒng)的系統(tǒng)管理、控制率計(jì)算等功能。為滿足飛控計(jì)算機(jī)環(huán)境試驗(yàn)檢測(cè)、外場(chǎng)維護(hù)的要求,建立一個(gè)平臺(tái)為飛控計(jì)算機(jī)提供電源,加載激勵(lì)信號(hào),測(cè)試記錄輸出的數(shù)據(jù),測(cè)算功能及性能參數(shù),進(jìn)而對(duì)飛控計(jì)算機(jī)的各項(xiàng)技術(shù)參數(shù)、性能指標(biāo)作出評(píng)判,同時(shí)用于飛控計(jì)算機(jī)軟硬件開(kāi)發(fā)、試驗(yàn)、交付驗(yàn)收測(cè)試及維護(hù)??傮w結(jié)構(gòu)
飛控計(jì)算機(jī)環(huán)境試驗(yàn)/外場(chǎng)維護(hù)測(cè)試設(shè)備組成圖如圖1所示。
環(huán)境試驗(yàn)檢測(cè)設(shè)備。環(huán)境試驗(yàn)檢測(cè)設(shè)備主要包括便攜式工控機(jī)及其接口、接口適配器、電源。
環(huán)境試驗(yàn)檢測(cè)設(shè)備軟件與飛控計(jì)算機(jī)測(cè)試支持軟件之間的配合如圖2所示。其中環(huán)境試驗(yàn)檢測(cè)設(shè)備軟件包括測(cè)試管理軟件、數(shù)據(jù)流軟件,它們的配合關(guān)系如圖3所示。
飛控計(jì)算機(jī)環(huán)境試驗(yàn)測(cè)試設(shè)備主要完成飛控計(jì)算機(jī)軟硬件功能、性能的自動(dòng)或手動(dòng)測(cè)試,針對(duì)測(cè)試要求,須包括三方面的軟件要求:
(1)測(cè)試管理軟件。
(2)數(shù)據(jù)流軟件。
(3)飛控計(jì)算機(jī)內(nèi)部的測(cè)試支持軟件。運(yùn)行于飛控計(jì)算機(jī)內(nèi)部,接收數(shù)據(jù)流軟件的測(cè)試指令,發(fā)送測(cè)試結(jié)果。
2.1 測(cè)試管理軟件
運(yùn)行于便攜式工控機(jī)上,負(fù)責(zé)調(diào)用測(cè)試程序進(jìn)行各項(xiàng)驗(yàn)收、試驗(yàn)測(cè)試,完成系統(tǒng)初始化、任務(wù)定制、發(fā)送測(cè)試指令、板卡信號(hào)數(shù)據(jù)的讀寫(xiě)、故障設(shè)置、報(bào)警、生成測(cè)試報(bào)告等管理工作。
測(cè)試管理程序中運(yùn)用多線程完成測(cè)試工作。開(kāi)始一個(gè)測(cè)試項(xiàng),設(shè)置兩個(gè)線程,一個(gè)用于循環(huán)判定開(kāi)始的測(cè)試內(nèi)容,一個(gè)用于以太網(wǎng)接收、發(fā)送測(cè)試結(jié)果如圖4所示。
T1:每一個(gè)測(cè)試項(xiàng)并不是只有一個(gè)測(cè)試內(nèi)容,比如包括+5V輸出、+10V輸出測(cè)試;首先用戶向測(cè)試管理軟件發(fā)出測(cè)試一個(gè)測(cè)試內(nèi)容,可是測(cè)試結(jié)果還沒(méi)到達(dá),無(wú)法進(jìn)行下一個(gè)內(nèi)容,線程一陷入等待狀態(tài);
T2:線程一被掛起,線程二為以太網(wǎng)發(fā)送、接收線程,此時(shí)根據(jù)測(cè)試指令啟動(dòng),發(fā)送測(cè)試指令,等待測(cè)試結(jié)果;等待一段時(shí)間后,數(shù)據(jù)流軟件的數(shù)據(jù)通過(guò)以太網(wǎng)到達(dá),線程二將數(shù)據(jù)存入公用數(shù)組,并向線程一發(fā)送接收到測(cè)試結(jié)果的標(biāo)志;
T3:線程二被掛起,線程一通過(guò)板卡讀取輸入數(shù)值,并判讀數(shù)據(jù);
T4:線程一、二掛起,程序內(nèi)部將數(shù)據(jù)結(jié)果分類存入到數(shù)據(jù)庫(kù)中。
由于等待數(shù)據(jù),數(shù)據(jù)判讀、存儲(chǔ)都需要一定時(shí)間,而工控機(jī)上的板卡采集數(shù)據(jù)到來(lái)是不定時(shí)的,如果在上一次的判讀、存儲(chǔ)的過(guò)程花費(fèi)了較多時(shí)間,就會(huì)導(dǎo)致丟失數(shù)據(jù),因此,在此過(guò)程中要根據(jù)接收測(cè)試結(jié)果的標(biāo)志嚴(yán)格控制下一個(gè)測(cè)試內(nèi)容的開(kāi)始。
2.2 數(shù)據(jù)流軟件
圖1 飛控計(jì)算機(jī)測(cè)試設(shè)備組成示意圖
圖3 測(cè)試管理軟件與數(shù)據(jù)流軟件的配合流程圖
圖2 環(huán)境試驗(yàn)檢測(cè)軟件與被測(cè)支持軟件配合流程圖
運(yùn)行于外場(chǎng)維護(hù)檢測(cè)設(shè)備(加固筆記本)上,負(fù)責(zé)接收測(cè)試管理軟件測(cè)試指令,并轉(zhuǎn)發(fā)測(cè)試指令到飛控計(jì)算機(jī),同時(shí)接收飛控計(jì)算機(jī)的測(cè)試結(jié)果,將測(cè)試結(jié)果發(fā)送到測(cè)試管理軟件進(jìn)行判定與存儲(chǔ)如圖5所示。
數(shù)據(jù)流軟件中啟動(dòng)一個(gè)線程、響應(yīng)一個(gè)COMM串口命令、一個(gè)定時(shí)器。線程用于與測(cè)試管理軟件之間的測(cè)試指令、結(jié)果的通訊;串口用于與飛控計(jì)算機(jī)的數(shù)據(jù)傳輸;定時(shí)器用于發(fā)送測(cè)試結(jié)果。
T1:軟件啟動(dòng),線程啟動(dòng),等待測(cè)試管理軟件的測(cè)試指令;
T2:線程接收到測(cè)試指令,線程掛起;程序內(nèi)部將接收的測(cè)試指令標(biāo)志告知COMM口;串口通信將測(cè)試指令通過(guò)RS232發(fā)送到飛控計(jì)算機(jī);此后,COMM口開(kāi)始等待飛控計(jì)算機(jī)的測(cè)試結(jié)果;
T3:COMM口將接收的字符串存于緩存中,線程繼續(xù)掛起,程序內(nèi)部將緩存中的字符串組進(jìn)行剔除,根據(jù)字符標(biāo)志選取需要的測(cè)試結(jié)果,并將測(cè)試結(jié)果存放到數(shù)組中;
T4:將存放測(cè)試結(jié)果的數(shù)組通過(guò)定時(shí)器調(diào)用以太網(wǎng)發(fā)送函數(shù)將測(cè)試結(jié)果發(fā)送給測(cè)試管理軟件。
在數(shù)據(jù)流程序中有一個(gè)判定目前處于第一級(jí)菜單的字符串?dāng)?shù)組,用于比較串口過(guò)來(lái)的字符串是哪個(gè)測(cè)試項(xiàng)的測(cè)試結(jié)果。
筆者闡述了該類測(cè)試設(shè)備的設(shè)計(jì)原理,著重講述了測(cè)試設(shè)備各通訊模塊間數(shù)據(jù)通訊、多線程實(shí)現(xiàn)飛控計(jì)算機(jī)硬件測(cè)試的方法。該方法目前已成功的應(yīng)用到多個(gè)測(cè)試設(shè)備中,并且取得了良好的應(yīng)用效果。
此方法適用于所有這一類的計(jì)算機(jī)測(cè)試。只要能夠了解需要完成的測(cè)試項(xiàng),就能研制出一個(gè)針對(duì)飛控計(jì)算機(jī)信號(hào)的測(cè)試軟件。
10.3969/j.issn.1001-8972.2012.02.030
圖4 測(cè)試管理軟件數(shù)據(jù)控制
圖5 數(shù)據(jù)流軟件數(shù)據(jù)控制
石海婷(1979),女,大學(xué)本科,軟件工程師,主要從事飛行仿真技術(shù)、計(jì)算機(jī)測(cè)試技術(shù),工作單位:中航工業(yè)試飛中心數(shù)字化中心。