湯永東
(中國人民解放軍第五七二〇工廠,安徽 蕪湖 241007)
作為飛機(jī)重要的機(jī)載電子設(shè)備,代碼轉(zhuǎn)換器是連接飛機(jī)導(dǎo)航系統(tǒng)計(jì)算機(jī)與外部系統(tǒng)之間數(shù)據(jù)傳輸重要的關(guān)鍵部件[1],其性能直接關(guān)系到通信的可靠性。為提高其可靠性,對(duì)其進(jìn)行測(cè)試將顯得尤為重要。迄今為止,有關(guān)代碼轉(zhuǎn)換器方面的研究主要集中在測(cè)試電路設(shè)計(jì)[2]、可靠性試驗(yàn)[3]等方面,有關(guān)代碼轉(zhuǎn)換器測(cè)試設(shè)備設(shè)計(jì)方面的研究較少。
目前,飛機(jī)大修測(cè)試代碼轉(zhuǎn)換器測(cè)試的設(shè)備使用時(shí)間較長、功能很不穩(wěn)定,且32位雙極性碼板和20位串行碼板之間傳輸誤碼率也越來越高,從而導(dǎo)致測(cè)試設(shè)備經(jīng)常無法使用,嚴(yán)重影響代碼轉(zhuǎn)換器修理與生產(chǎn)進(jìn)度。維修工程師也為此對(duì)該設(shè)備進(jìn)行多次維修,但由于沒有板卡資料和程序,無法解決設(shè)備修復(fù)核心技術(shù)問題。
當(dāng)前,飛機(jī)維修與保障正呈數(shù)字化、自動(dòng)化、網(wǎng)絡(luò)化發(fā)展趨勢(shì)。基于多處理協(xié)同技術(shù)與自動(dòng)測(cè)試?yán)碚揫4]的維修手段正被廣泛應(yīng)用于飛機(jī)修理保障領(lǐng)域。文獻(xiàn)[5]和文獻(xiàn)[6]基于C8051F040+BU61580、FPGA+SCV64這兩種主從處理器,完成1553B總線通信接口模塊、VME總線從模塊的設(shè)計(jì);文獻(xiàn)[7]基于虛擬儀器與自動(dòng)測(cè)試?yán)碚?,完成飛機(jī)三相靜止變流器綜合測(cè)試設(shè)備設(shè)計(jì)。
為掌握代碼轉(zhuǎn)換器不同傳輸數(shù)據(jù)之間的解析方法,針對(duì)代碼轉(zhuǎn)換器研究與修理現(xiàn)狀,形成代碼轉(zhuǎn)換器測(cè)試分析能力,筆者基于多處理協(xié)同技術(shù)與自動(dòng)測(cè)試?yán)碚摚詥纹瑱C(jī)為主處理器,以FPGA為協(xié)處理器,提出一種基于“FPGA+單片機(jī)”架構(gòu)的代碼轉(zhuǎn)換器測(cè)試儀設(shè)計(jì)方法。
① 20位串行碼轉(zhuǎn)換為32位雙極性碼按2通道,每個(gè)通道16字。
② 通過對(duì)串行碼中每一個(gè)字所包含的信息進(jìn)行解碼,形成用于控制頻率碼通道的一次性指令。
③ 串行碼的交換是按照同步原理在主動(dòng)設(shè)備(檢測(cè)儀)的控制下完成的。代碼轉(zhuǎn)換器是從動(dòng)設(shè)備,主動(dòng)設(shè)備按照2個(gè)通道中的每個(gè)通道形成發(fā)送碼選通交換信號(hào)(CBK1OUT、CBK2OUT)、接收碼選通交換信號(hào)(CNK1OUT、CNK2OUT)、同步脈沖交換信號(hào)(40KOUT、80KOUT)和串行碼交換信號(hào)(DOUT1、DOUT2、DIN1、DIN2)。
④ 在每個(gè)同步周期(40KOUT)內(nèi),信息“0”表示與同步脈沖相同,而信息“1”則表示與同步脈沖相反。
⑤ 串行碼所傳送的信號(hào)電平與TTL集成電路的標(biāo)準(zhǔn)電平相一致,即“0”電平對(duì)應(yīng)的電壓為0~0.45 V,而“1”電平對(duì)應(yīng)的電壓為2.4~5 V。
⑥ 根據(jù)發(fā)送碼選用脈沖的選通,代碼轉(zhuǎn)換器接收來自主動(dòng)設(shè)備的信息,而通過接收碼選通實(shí)現(xiàn)信息的發(fā)送。
⑦ 在傳送的串行碼中(20位串行碼為1個(gè)字),高位的前4位表示字的地址,而剩下的16位則表示信息,其字格式定義如表1所示。
表1 20位串行碼的字格式
⑧ 由于地址已經(jīng)占用了4個(gè)二進(jìn)制位,按照每個(gè)通道能容納16個(gè)不同地址字的原則,2個(gè)通道共可容納32個(gè)字。
⑨ 代碼轉(zhuǎn)換器發(fā)送帶地址的串行碼,其中地址是上一次發(fā)送選通脈沖時(shí)從主動(dòng)設(shè)備接收來的。
① 32位雙極性碼以32位雙極性碼為1個(gè)字,每個(gè)字由地址、信息以及輔助部分組成,其字格式定義如表2所示。
表2 32位雙極性碼的字格式
如果前面所有位(從1~31)上的和是偶數(shù),則32位傳送“1”,否則,傳送“0”。31、30字位(輔助位)的值如表3所示。
表3 31、30字位(輔助位)的值
通過表2可以看出,如果31、30位的值相符(相等),則表示這兩位所表示的是符號(hào)信息,否則,表示的是數(shù)據(jù)的不確定信息,或者表示的是檢測(cè)數(shù)據(jù)。
② 32位雙極性碼的地址部分首先發(fā)送,而且信息部分是先低位后高位傳送。
③ 為了提高抗干擾能力,代碼以雙極、電平為±(5±0.5) V的方式通過2個(gè)匯流條“a”和“б”傳送。為了保證在接收時(shí)能夠在差動(dòng)輸入級(jí)對(duì)同相干擾進(jìn)行抑制,在信息脈沖信息傳送時(shí)“a”線路上的電壓和“б”線路上的電壓總是相反的。
④ 每個(gè)通道在周期內(nèi)所能傳輸?shù)淖植淮笥?6個(gè),如果發(fā)送字中的每一位時(shí)間為T,那么字之間發(fā)送間隔則為4T, 其中T=1/48 kHz=20.8 ms。
所設(shè)計(jì)的測(cè)試儀需要滿足代碼轉(zhuǎn)換器的各項(xiàng)測(cè)試需求,具體如下。
① 測(cè)試其電源模塊27 V輸入電源電壓、5 V輸出電壓和消耗電流。
② 測(cè)試其燈(包括“ИСПР”、“5?!薄ⅰ哀厂!?狀態(tài)。
③ 測(cè)試其自檢測(cè)功能。
④ 測(cè)試其數(shù)據(jù)交換功能,包括32位雙極性碼轉(zhuǎn)20位串行碼、20位串行碼轉(zhuǎn)32位雙極性碼。
⑤ 測(cè)試其一次性指令功能。
⑥ 測(cè)試其狀態(tài)判別矩陣功能。
⑦ 測(cè)試其時(shí)序電路功能。
⑧ 測(cè)試其存儲(chǔ)器模塊功能。
針對(duì)上述代碼轉(zhuǎn)換器測(cè)試需求,為了提高測(cè)試的可靠性與便捷性,以工控機(jī)為上位機(jī),以控制盒為下位機(jī),兩者之間采用串口通信方式,其中控制盒由1塊底板和5塊分板(包括A/D板、AB4K板、20位碼板、32位碼板、一次性指令板)組成,底板以P89V51RD2FN單片機(jī)為主處理器,各分板以Cyclone III系列FPGA為協(xié)處理器,各分板與底板之間采用并行(口)通信方式,其架構(gòu)如圖1所示。
圖1 測(cè)試儀架構(gòu)示意圖
測(cè)試儀的硬件設(shè)計(jì)主要集中在控制盒內(nèi)部的1塊底板和5塊分板的硬件設(shè)計(jì)上。
所設(shè)計(jì)的底板由高電平復(fù)位(注:MAX813L)、時(shí)鐘產(chǎn)生(注:P89V51RD2FN單片機(jī)最大時(shí)鐘可達(dá)40 MHz,在此選24 MHz)、地址鎖存(注:74LS373)、地址譯碼(注:74LS138)、數(shù)據(jù)保存(注:UM6116)、并行接口(注:8255A)、串口通信接口(注:MAX232)等組成,其架構(gòu)如圖2所示。
圖2 底板結(jié)構(gòu)框圖
為了滿足測(cè)試代碼轉(zhuǎn)換器的27 V輸入電源電壓、消耗電流和電源模塊輸出電壓(5 V)的功能,所設(shè)計(jì)的A/D板由信號(hào)變換、A/D轉(zhuǎn)換等電路組成。
為了滿足測(cè)試代碼轉(zhuǎn)換器所輸出的AB4K信號(hào)脈寬功能,所設(shè)計(jì)的AB4K板由信號(hào)變換等電路組成。
為了滿足能夠發(fā)送與接收2路20位串行碼的功能,所設(shè)計(jì)的20位碼板由電平轉(zhuǎn)換、信號(hào)處理等電路組成。
為了滿足能夠發(fā)送7路、接收2路32位雙極性碼功能,所設(shè)計(jì)的32位碼板由電平轉(zhuǎn)換、通道選擇、自檢等電路組成。
為了滿足能夠完成輸出5 V信號(hào)、27 V信號(hào)和其他24種信號(hào)的測(cè)量功能,所設(shè)計(jì)的一次性指令板由信號(hào)變換、信號(hào)采集等電路組成。
為了實(shí)現(xiàn)對(duì)代碼轉(zhuǎn)換器的自動(dòng)測(cè)試,需要針對(duì)其測(cè)試需求,對(duì)測(cè)試儀的上下位機(jī)進(jìn)行軟件開發(fā),其中上位機(jī)在XP操作系統(tǒng)下,基于Visual C++6.0[10]進(jìn)行開發(fā),而下位機(jī)則要在μVsion與QuarutsII開發(fā)環(huán)境下,基于Keil C與Verilog進(jìn)行設(shè)計(jì)與開發(fā)。上位機(jī)主程序流程框圖及軟件界面如圖3和圖4所示。
圖3 上位機(jī)流程框圖
圖4 上位機(jī)軟件界面
所設(shè)計(jì)的測(cè)試儀由研華工控機(jī)及上架式顯示器、控制盒和代碼轉(zhuǎn)換器組成,其實(shí)物如圖5所示。
圖5 測(cè)試儀實(shí)物圖
(1) 電源模塊的測(cè)試驗(yàn)證。
由觀察得到代碼轉(zhuǎn)換器的5B指示燈狀態(tài)。電壓范圍為5 V(1±10%),實(shí)測(cè)為4.98 V,滿足測(cè)試要求。
(2) 消耗電流模塊的測(cè)試驗(yàn)證。
代碼轉(zhuǎn)換器的消耗電流不能大于250 mA,27 V電壓值介于24~30 V范圍內(nèi)。消耗電流實(shí)測(cè)為196 mA,27 V電壓實(shí)測(cè)為26.6 V,滿足測(cè)試要求。
(3) 自檢測(cè)電路測(cè)試模塊的測(cè)試驗(yàn)證。
控制盒在收到“自測(cè)試電路測(cè)試”指令后,將接通“低良好BH”信號(hào),并測(cè)試“ИПР”狀態(tài),測(cè)試正確后,將點(diǎn)亮相應(yīng)的指示燈,滿足測(cè)試要求。
(4) 一次性指令模塊的測(cè)試驗(yàn)證。
控制盒在收到“頻率代碼通道20個(gè)一次性指令測(cè)試”、“MCH測(cè)試”、“手動(dòng)測(cè)試”、“著陸一次性指令測(cè)試”、“良好БПК一次性指令測(cè)試”指令后,將進(jìn)行相應(yīng)的測(cè)試,并點(diǎn)亮相應(yīng)的指示燈,滿足測(cè)試要求。
(5) 狀態(tài)判別矩陣模塊的測(cè)試驗(yàn)證。
控制盒在收到“狀態(tài)判別矩陣模塊”測(cè)試指令后,將進(jìn)行相應(yīng)的測(cè)試,并點(diǎn)亮相應(yīng)的指示燈,滿足測(cè)試要求。
(6) 內(nèi)部時(shí)序電路模塊的測(cè)試驗(yàn)證。
如果脈寬在10~13 ms內(nèi),則轉(zhuǎn)換正常,否則,轉(zhuǎn)換錯(cuò)誤。脈寬實(shí)測(cè)為12.2 ms,滿足測(cè)試要求。
(7) 存儲(chǔ)器模塊、32位雙極性碼轉(zhuǎn)20位串行碼模塊和20位串行碼轉(zhuǎn)32位雙極性碼模塊的測(cè)試驗(yàn)證。
選擇不同的通道按鈕,控制盒在收到該指令后,將進(jìn)行相應(yīng)的測(cè)試,測(cè)試結(jié)果與默認(rèn)值不一致者,則顯示為紅色,滿足測(cè)試要求。
為滿足某型飛機(jī)代碼轉(zhuǎn)換器裝備維修保障過程中的系統(tǒng)性能檢查需求,針對(duì)工廠目前代碼轉(zhuǎn)換器測(cè)試設(shè)備的使用現(xiàn)狀,基于多處理協(xié)同技術(shù)與自動(dòng)測(cè)試?yán)碚?,設(shè)計(jì)并開發(fā)一臺(tái)代碼轉(zhuǎn)換器測(cè)試儀,測(cè)試結(jié)果表明其具有有效性。所提出的設(shè)計(jì)思路對(duì)于其他飛機(jī)重要機(jī)載電子設(shè)備代碼轉(zhuǎn)換器測(cè)試儀的設(shè)計(jì)具有參考與借鑒意義。