李 暉,邢廣義
(中國航天科技集團公司第四研究院第四十一研究所,燃燒、流動和熱結構國家級重點實驗室,西安710025)
某型制導彈彈載計算機測試系統設計
李 暉,邢廣義
(中國航天科技集團公司第四研究院第四十一研究所,燃燒、流動和熱結構國家級重點實驗室,西安710025)
彈載計算機作為整個導彈控制系統的核心部件,有著最復雜的電氣功能及對外接口。以某新型號制導彈彈載計算機測試方法為研究對象,Lab Windows/CVI為開發平臺,通過自主編程,設計并實現了一套彈載計算機測試系統。使用串口服務器實現了多串口同時控制,在CVI環境中應用基于多線程的異步定時器實現了多個高精度時鐘。該系統具有功能較強、構建簡易、定時器精度高、具有一定通用性等特點。某型制導彈彈載計算機的驗收測試結果表明該系統能夠完成具有復雜電氣功能的彈載計算機測試任務。
彈載計算機;LabWindows/CVI平臺;測試;串行通信;多線程;設計
在新型導彈研制周期中制導彈處于最后階段,彈載計算機作為整個導彈控制系統“大腦”,有著最復雜的電氣功能及對外接口[1]。制導彈彈載計算機在發射階段需通過彈地通信接口完成諸元裝訂、導航啟動、數據鏈檢測等發射時序;在中制導階段需通過與慣性測量裝置(或測姿儀)通信接口不斷接收導航信息并依據控制律生成舵指令驅動舵機偏轉;進入末制導后需通過與數據鏈通信接口不斷接收來自地面發控裝置上行的導引頭控制指令,并結合來自導引頭通信接口發來的導引頭狀態信息依據制導律生成舵指令驅動舵機偏轉將導彈導向目標。可見彈載計算機有著復雜的功能及接口,自然,對彈載計算機的測試也成為一項較為復雜的事情。
現有的彈載計算機測試系統一般采用上下位機的形式,即上位機提供人機交互界面,下位機為嵌入式系統,上位機通過向下位機發送控制指令控制下位機向相應接口發出/接收信號來實現對彈載計算機的測試。然而這種方式往往系統構建時間較長,下位機嵌入式系統結構復雜、研制經費較大、測試功能不夠靈活[2]。因此研制一套構建簡易、功能較強、軟硬件擴展性好、并具有一定通用性的彈載計算機測試系統很有必要。
以某新型制導彈彈載計算機測試為背景,設計并實現了一套彈載計算機測試系統。該系統能夠模擬彈載計算機在整個發射飛行過程中的外界電氣接口環境,對彈載計算機進行全面測試,系統具有構建簡易、功能較強、精度較高、軟硬件擴展性好,并具有一定通用性等特點。
串行通信作為一種協議簡單、成本低廉、穩定性高、構建方便的數字通信方式在導彈武器系統中的應用最為廣泛[3-4]。本制導彈彈載計算機與彈上及地面其它電氣部件的數字通信也均采用異步RS-422通信方式。測試系統構成如圖1所示。

圖1 測試系統構架
可見測試系統構成簡單,易于構建,主要由串口服務器、直流穩壓電源、加固筆記本、測試電纜等組成。
(1)串口服務器:測試系統的核心組成部分,型號為臺灣MOXA的Nport 5650I-8-DTL,帶8路RS232/RS422/RS485可配置串口,各路均帶隔離,具有抗干擾能力強、擴展性和通用性好等特點;制導彈彈載計算機用到其中5個串口,分別對應發控接口、數據鏈接口、導引頭接口、慣導接口、彈載記錄儀接口。
(2)直流穩壓電源:TDK可調直流穩壓電源,用于給彈載計算機供電。
(3)加固筆記本電腦:通過網線連接串口服務器,對于筆記本電腦而言,直接看到的是本機上的8個串口。
(4)測試電纜:電纜1和電纜2,用于連接彈載計算機對外接口和測試設備,若彈載計算機對外電氣接口不同則測試電纜不同。
(5)其他:示波器用于采集彈載計算機進行舵機自檢時發出的舵指令,電纜2上的開關用于發出電氣分離信號(脫插分離信號),電纜1上的開關用于控制彈載計算機上電或斷電。
3.1 軟件總體設計
顯而易見,測試軟件是該測試系統的核心。制導彈彈載計算機測試軟件應具備以下主要功能:
(1)多串口控制:能夠至少管理和控制5個串口。
(2)測試精度:串口周期發送數據時間精度應盡量高,不大于2ms。
(3)測試完備性:軟件應能模擬與彈載計算機相連的所有電氣部件,完成與彈載計算機信息交互;能夠發出錯誤的數據對彈載計算機進行容錯測試。
④通用性:軟件應能根據不同彈載計算機設計數據規格隨意編輯各串口通信協議,做到通用;應能更改串口服務器各物理串口與串口號的映射關系,對各串口參數可配置。
⑤數據完整性:對各串口接收的數據能夠進行完整保存,便于后續數據分析。
軟件開發環境選用Lab Windows/CVI 2012。LabWindows/CVI(C/C++for Visual Instrument)是美國NI公司推廣的面向測控領域的專業軟件開發環境,其優勢在于完全建立在ANSI C基礎之上,實現了功能強大、使用靈活的C語言平臺與用于數據采集、分析與顯示的測控專業工具的有機結合,特有的交互式編程方法及豐富的功能面板和函數庫可以很方便地設計出非常友好的測控操作界面[5-6]。
3.2 定時器設計
制導彈彈載計算機與其它部件數據交互復雜,大多數數據都是以一定周期發送或接收的,比如最關鍵的數據鏈上行的導引頭控制指令、慣導輸出的導航數據、導引頭輸出的導引頭狀態信息、發送給彈載記錄儀的記錄數據等,因此測試系統定時發送數據的時間精度較為重要。
LabWindows/CVI環境提供了高精度定時器,這是其作為專業測控軟件開發環境相比一般通用軟件開發環境的一大優勢。LabWindows/CVI的高精度定時器基于多線程機制。Lab Windows/CVI提供了兩種多線程機制,一種是線程池,另一種是異步定時器[7-8],其中異步定時器是以Windows下多媒體定時器為基礎的高精度定時器,定時精度為1ms。本彈載計算機軟件中所有周期性發送或接收數據的功能均采用異步定時器實現,軟件共開出6個異步定時器,模擬了與彈載計算機相連的所有電氣部件。Lab Windows/CVI環境下一個應用程序中最多可以開出16個異步定時器。
3.3 串口及通信協議管理
LabWindows/CVI作為專業的測控軟件開發環境提供了RS232函數庫,該函數庫對Windows下的串口操作API進行了高度封裝,使用非常方便。RS232函數庫相比其它開發環境下的串口API優勢在于對于被操作串口的數量及波特率不受限制,均可配置。雖然RS232函數庫是針對RS232設計的,但對于軟件而言,并不關心外部串口電平狀態,本測試系統中在串口服務器的配合下,可以任意實現RS232、RS422、RS485的串口通信。
對于制導彈彈載計算機而言,與之通信的電氣部件較多,通信協議也各不相同。為了便于用戶對通信協議的編輯,做到一定的通用性,本軟件對于協議的管理采用加載.ini配置文件的方式來實現。每個串口的發送和接收都對應一個協議配置文件,用戶只需將串口通信協議以一定格式寫入各自的配置文件中,軟件啟動時會自動加載協議,使用方便。
3.4 軟件界面設計
軟件界面設計遵從以下原則:①最小最大化原則:用戶承擔的工作量盡量少,計算機承擔的工作量盡量大;②合理利用空間,保持界面簡潔、自然友好,界面不可顯得擁擠。;③依照功能和重要性對界面上的控件等元素合理布局,重要操作位于界面醒目位置,方便用戶操作;④能夠以最直觀的方式顯示控制結果及測試數據;⑤測試數據的保存應簡單、快速。軟件界面總體設計如圖2所示。

圖2 軟件界面總體設計
5路串口控制位于界面頂端第一排醒目位置,串口開關采用LabWindows/CVI自帶的二值開關控件,波特率可通過下拉框進行選擇,旁邊的LED燈用來直觀顯示串口打開狀態。
模擬數據鏈發出的導引頭控制指令開關采用二值開關控件,用戶可通過界面設置控制指令發送周期以及導引頭轉入手動跟蹤狀態、轉入自動跟蹤狀態、轉比相對于計時零點的時刻,時刻到后控制指令轉入相應狀態。
模擬導引頭發出的導引頭狀態信息開關采用二值開關控件,用戶可通過界面設置狀態信息發送周期、導引頭俯仰/偏航框架角以及視線角速度數值。
5路串口的接收區均采用TextBox控件,實時顯示串口接收內容,并具備顯示/停止顯示開關,“清空”按鈕用來清空接收區。
5路串口的發送區均采用ListBox控件,軟件啟動后自動加載各路串口配置的通信協議,用戶選中某個協議后點擊“發送”即可發送數據,各發送區均具有“周期發送”單項框,選中后軟件將自動周期發送選中的協議,發送周期也可以通過旁邊的發送周期設置框進行設置。
軟件具備“電氣分離”模擬開關,模擬脫插分離,以便為導引頭控制指令提供計時零點,采用二值開關控件,二值開關復位后軟件回到初始狀態。
軟件為各個串口均開出了較大的數據接收緩沖區,可保證各串口接收到的所有數據不會丟失,界面上各串口接收區均配備有保存數據按鈕,用戶點擊后可將串口接收到的所有數據一次保存為二進制流文件,方便下一步數據處理。
彈載計算機測試系統已經順利完成了某型制導彈彈載計算機的測試驗收工作,且已通過了導彈飛行試驗考核,彈載計算機全程工作正常。經多次試驗測量,本測試系統在同時控制5個串口時10ms定時器誤差最大為1.8ms,滿足不大于2ms的精度要求。另外,在更換測試電纜及重新配置各串口通信協議的情況下,該測試系統也順利完成了另一型號程控彈彈載計算機的測試驗收任務,并已通過了導彈飛行試驗考核,能夠說明本彈載計算機測試系統具有一定的通用性。
彈載計算機作為整個導彈控制系統的“大腦”,有著最復雜的電氣功能及對外接口,其測試工作也是一項較為復雜的任務。現行的彈載計算機測試系統大多基于上下位機形式構建,結構復雜、構建時間較長、研制經費較高。以某新型制導彈彈載計算機測試為背景,設計并實現了一套相對簡易的彈載計算機測試系統。該系統能夠模擬彈載計算機在整個工作過程中的外部電氣接口,完成與彈上其它電氣部件的信息交互,對彈載計算機功能進行測試。某型制導彈彈載計算機以及另一型程控彈彈載計算機的測試結果表明該系統具有測試功能較強、構建簡易、具有一定通用性等特點,具有較強的實用性。
[1] 羅陽,張紅波,王春雷.基于PXI+LVDS的彈載計算機測試系統[J].航空兵器,2011(1):60-64.LUO Yang,ZHANG Hong-bo,WANG Chun-lei.Test System of Missile-Borne Computer Based on PXI and LVDS[J].AERO WEAPONRY,2011(1):60-64.
[2] 葉中脈,秦開宇,陳華偉,等.航電系統通用總線監控軟件的設計與實現[J].測控技術,2012,31(3):94-97.YEZhong-mai,QINKai-yu,CHENHua-wei.Design and Implementation of Monitor Soft for Universal Avionics Bus[J].Measurement&Control Technology,2012,31(3):94-97.
[3] 鄭紅星,曹曉緋.RS422在反坦克導彈上的應用研究[J].彈箭與制導學報,2008,4(4):32-35.ZHENG Hongxing,CAO Xiaofei.The Study of Application of RS422 to Anti-tank Missile[J].JOURNAL OF PROJECTILES,ROCKETS,MISSILESANDGUIDANCE,2008,4(4):32-35.
[4] 趙冬冬,竇滿峰,陳哲.RS-422總線在大功率BLDCM通信中的抗干擾設計[J].測控技術,2010,29(8):76-78.ZHAO Dong-dong,DOU Man-feng,CHEN Zhe.Anti Jamming Design of RS-422 Communication Bus in High Power BLDCM[J].Measurement&Control Technology,2010,29(8):76-78.
[5] 李騰飛,張輝.基于Labwindows/CVI和Matlab的濾波器設計[J].電子科技,2007(3):29-35.Li Tengfei,Zhang Hui.Designing filters with Labwindows/CVI and Matlab[J].ELECTRONIC SCIENCE AND TECHNOLOGY,2007(3):29-35.
[6] 王浩,齊建宇.基于Labwindows/CVI的捷聯慣導測試軟件設計[J].航天控制,2011,29(2):56-60.WANG Hao,QI Jianyu.The Test Software Design for Strap-down Inertial Navigation Based on Labwindows/CVI[J].AEROSPACE CONTROL,2011,29(2):56-60.
[7] 譚秀萍,吳曉輝,范蟠果,等.Labwindows/CVI多線程技術在電負載系統中的應用[J].測控技術,2011,30(8):79-83.TAN Xiu-ping,WU Xiao-hui,FAN Pan-guo.Labwindows/CVI Multi-thread Technology in Electrical-Load System[J].Measurement&Control Technology,2011,30(8):79-83.
[8] 王俊鳴,張智軍,張安旭,等.基于Labwindows/CVI的多線程技術的電磁兼容預測試系統設計與實現[J].彈箭與制導學報,2008,28(2):311-314.WANG Junming,ZHANG Zhijun,ZHANG Anxu.Design and Realization of EMC Prearrangement Test System Based on Multithreading Technique of Labwindows/CVI[J].JOURNALOFPROJECTILES,ROCKETS,MISSILES AND GUIDANCE,2008,28(2):311-314.
Design on Test System of Guided-Missile-Borne Computer
Li Hui,Xing Guangyi
(National Key Laboratory of Combustion,Flow and Thermo-structure,The 41st Institute of the Academy of China Aerospace Science and Technology Corporation,Xi’an 710025,China)
The missile-borne computer,as the core component of the control system of missile,has the most complex electric functions and external interfaces.The test method of the missile-borne computer of a new guided missile is provided for studying,a missile-borne computer test system is designed and implemented by programming based on Lab Windows/CVI development platform.The serial port server is applied to control multiple serial ports simultaneously,asynchronous timer based on multithreading is applied to achieve several high precision timers in CVI environment.The system has such features as powerful function,simple structure,high precision timer and certain versatility.The test results of the guided-missile-borne computer show that the system can accomplish the test task of missile-borne computer with complex electric functions.
Missile-Borne Computer;LabWindws/CVI Platform;Test;Serial Communication;Multithreading;Design
10.3969/j.issn.1002-2279.2015.04.020
TP392
A
1002-2279(2015)04-0077-04
李暉(1984-),男,陜西省咸陽市人,碩士研究生,工程師,主研方向:計算機測量與控制。
2015-01-09