徐 茜,宮海波,楊 哲
(中國飛行試驗研究院 陜西 西安710089)
隨著現(xiàn)代航空事業(yè)的不斷進步,各種新型飛機的研究得到了空前的發(fā)展。飛行試驗是對飛行器及相關設備進行研究和產品試驗驗證的重要手段。在飛行試驗中進行遙測實時監(jiān)控,對保證飛行安全,提高飛行效率起到至關重要的作用[1]。
隨著通信和計算機技術的不斷發(fā)展,飛行試驗中的實時監(jiān)控方法也不斷改進。傳統(tǒng)的監(jiān)控方法采用數字、運動曲線等單一方式來顯示試飛數據,這種方法專業(yè)性太強,比較死板、直觀性較差,易造成視覺疲勞[2]。LabVIEW軟件具有可視化程度高,軟件開發(fā)效率高,軟件維護簡單等優(yōu)點,因此在許多領域得到了廣泛應用[3]。文中設計的某型發(fā)動機實時監(jiān)控軟件采用LabVIEW進行監(jiān)控畫面的開發(fā)與設計,在監(jiān)控畫面的設計中,針對傳統(tǒng)發(fā)動機監(jiān)控畫面中存在的專業(yè)性強、直觀性差等問題,結合數值顯示飛行數據,采用分區(qū)儀表盤設計、進度條、指示燈、時間歷程曲線等相結合的方式顯示關鍵飛行參數,具有直觀、人性化的特點。該實時監(jiān)控軟件采用模塊化設計并引入子VI設計思路,提高了軟件執(zhí)行效率,軟件操作更加簡便。該軟件對發(fā)動機的關鍵參數進行實時監(jiān)控,保證了飛行安全,為發(fā)動機的設計定型提供了重要的試驗數據。
實時監(jiān)控系統(tǒng)的功能是對遙測數據進行采集、記錄并在客戶端PC機上進行數據實時顯示及回放[4]。
實時監(jiān)控系統(tǒng)的軟件功能結構如圖1所示,實時監(jiān)控系統(tǒng)具有數據采集、記錄、回放、處理和顯示等功能。實時監(jiān)控系統(tǒng)采用C/S結構,由前端服務器和客戶端組成,前端服務器軟件通過調用帶頭文件生成試驗文件,試驗文件包含了帶頭中的所有信息,包括參數名,參數的取位、校線、同步字以及幀結構等信息。飛行時通過調用試驗文件來采集、記錄、處理和向客戶端發(fā)送飛行數據。
圖1 實時監(jiān)控系統(tǒng)軟件功能結構Fig.1 Software functional structure of the real-timemonitoring system
服務器將設定的參數組的全部參數名通過UDP協(xié)議廣播/組播發(fā)送到客戶端,客戶端在兩次接收到參數名后,對比兩次收到的參數名是否一致,如一致,則關閉參數名接收端口。服務器端在信號同步后,將參數數據也通過UDP協(xié)議廣播/組播發(fā)送到客戶端;客戶端通過TCP協(xié)議將監(jiān)控畫面需要的參數數據發(fā)送到監(jiān)控畫面實時顯示。
文中闡述的實時監(jiān)控系統(tǒng)中,為了保證監(jiān)控畫面顯示的實時性,減少數據發(fā)送的時間延遲以及提高數據發(fā)送效率,實時監(jiān)控系統(tǒng)的服務器端采用UDP協(xié)議與客戶端進行通信。另外,使用UDP協(xié)議利于系統(tǒng)擴展,用戶可以方便地增加顯示實時監(jiān)控畫面的客戶端的數量。
LabVIEW軟件是NI(美國國家儀器)公司開發(fā)的一款圖形化編輯軟件[5],該軟件采用G語言編程,具有可視化程度高、軟件維護簡單等優(yōu)點[6]。文中設計的監(jiān)控畫面采用LabVIEW軟件來實現(xiàn)。
實時監(jiān)控畫面通過圖形化界面的方式,采用數字、曲線、進度條、信號燈和虛擬儀表等表現(xiàn)形式向用戶提供一個顯示界面,將發(fā)動機各項參數分類以多個頁面向用戶顯示,實現(xiàn)了發(fā)動機重要性能指標參數的實時動態(tài)顯示的功能。此外,用戶還可以自由改變進度條及曲線的顯示范圍及顯示速度。
在監(jiān)控畫面的前面板,通過選取各類LabVIEW組件,將監(jiān)控參數分類以多頁面、模塊化的方式進行圖形化顯示。在監(jiān)控畫面的后面板,通過3個步驟實現(xiàn)參數名的發(fā)送,參數的接收、處理和顯示。
1)調用tcp_open.vi(參數名發(fā)送函數),配置小系統(tǒng)和Magali系統(tǒng)雙接口的參數名,將畫面需要的參數名發(fā)送給客戶端。
2)通過配置網絡數據接收函數,實現(xiàn)對客戶端發(fā)到畫面的參數數據的接收。
3)在后面板進行參數的計算后,將結果連接到前面板控件輸出顯示。
監(jiān)控畫面的軟件結構如圖2所示。
圖2 監(jiān)控畫面的軟件結構Fig.2 Software structure of themonitor screen
本文設計的監(jiān)控畫面上的參數分為429總線參數,422總線參數,232總線參數,機上抽引參數和加裝參數等,參數類型不同,參數的算法也不相同。
單字429總線參數、加裝參數的算法主要在服務器端通過配置帶頭文件來實現(xiàn)。雙字429總線參數、422總線參數、232總線參數、部分機上抽引參數則一般由多個參數進行綜合計算后得到最終的參數值。因此,這些參數的計算需要在監(jiān)控畫面的后面板上根據一定的算法進行編程實現(xiàn)。由于畫面涉及的參數主要是422總線參數,其算法也最為復雜,因此下面將422總線參數的算法進行介紹。
422總線上記錄了飛參數據,該總線參數數據分布在2048個采樣點內。每個采樣點由兩個字節(jié)數據組成,每個字節(jié)的高8位是有效位。如圖3所示,參數的計算由5部分組成。
第一步:通信協(xié)議中規(guī)定了每個參數的采樣率,通過在帶頭中設置該參數采樣點的長周采樣率進行采樣。
第二步:組成每個采樣點的兩個字節(jié)的排列是低位在前,高位在后,因此首先需將兩個字節(jié)的順序進行顛倒,然后將兩個字節(jié)分別取高8位再拼成一個16位參數字。例如,組成當前采樣點的兩個字節(jié)的數值分別是0x5DBC、0x0CDD,則拼位后的采樣點的數值是0x0C5D。
第三步:根據參數的后續(xù)點類型決定該參數由幾個采樣點組成,不同的后續(xù)點類型占據的采樣點個數和每個采樣點的取位方式不同,由幾個采樣點拼成一個參數的方式也不同。例如,當前參數的采樣點的后續(xù)點類型為2時,定義為:每個采樣點只用其低8位,本類型占據兩個采樣點,由2個采樣點的低8位組成16位數,低位在前一個采樣點,高位在后一個采樣點。例如,某一參數的后續(xù)點類型為2,經過第一步計算后,得到的前后兩個采樣點的值分別為0x0B3D,0x0C2A,根據后續(xù)點2的定義,得到該參數拼位后的值為0x2A3D。
第四步:將第三步計算得到的參數值和給定的有效位掩碼進行“位與運算”,得到新的參數值。例如,取后12位時,有效位掩碼為0xFFF。
第五步:將參數進行數據還原。由于機載采集的數據是源碼值,因此需要根據一定的算法將源碼值還原成物理量再輸出。數據還原類型有如下幾類:1)無:即不需要進行還原,直接輸出;2)線性關系:即源碼值和物理量之間是線性關系,采用線性插值法來得到物理量;3)離散還原關系:源碼值為離散量0、1,分別代表不同的含義;4)多段關系:數值中不同的位代表不同的含義,得到對應的含義后再進行組合,例如采集器時間由時分秒組成;5)公式類型:將源碼值根據給定的公式計算得出對應的物理量。
經過以上五步計算,就得到了每個422總線參數的物理量值,然后將其與前面板控件連接并輸出顯示。
實時監(jiān)控畫面界面如圖4所示。監(jiān)控畫面采用小系統(tǒng)和Magali系統(tǒng)雙接口的形式,在監(jiān)控時可根據資源情況靈活選用小系統(tǒng)或Magali系統(tǒng)進行實時監(jiān)控。
圖3 422總線參數算法流程圖Fig.3 422 bus parameters algorithm flowchart
由于監(jiān)控畫面參數較多、參數類型各不相同,無法同時在一個屏幕上顯示所有參數。為了便于用戶理解,對參數進行分類顯示,將監(jiān)控畫面前面板分為主畫面、發(fā)動機主畫面、發(fā)動機輔助畫面、APU畫面、振動畫面和測溫畫面等幾個模塊顯示。本文采用LabVIEW中的系統(tǒng)選項卡(Tab)控件來對不同類型的參數進行分類顯示。Tab控件可以由多個卡片頁組成,通過單擊鼠標右鍵可以增加或刪除卡片頁。本文設計的不同模塊顯示在不同的卡片頁上,用戶通過鼠標點擊某一卡片頁對應的標簽,即可顯示出當前卡片頁的內容,其它卡片頁的內容則被隱藏,將卡片頁的標簽定義成各個功能模塊的名稱,這樣使監(jiān)控畫面更加清晰和直觀。相比傳統(tǒng)的單屏顯示所有參數的畫面,本文設計的畫面層次感更強、也更利于用戶監(jiān)控和理解。監(jiān)控畫面采用儀表盤、信號燈、數字量以及時間歷程曲線相結合的方式顯示畫面參數,有效、直觀地顯示出了當前各項參數狀態(tài)。
從圖4中可以看到,通過利用LabVIEW中屬性節(jié)點的功能,在儀表盤的不同數值段用不同的顏色區(qū)分,不同區(qū)域分別代表正常、告警以及故障等含義,與真實的汽車儀表盤類似,簡潔、直觀地反映了飛行參數在不同范圍的意義。
在程序編寫過程中,由于有些算法具有類似的規(guī)律,例如參數取位運算、422總線、232總線參數的計算等。我們將公共算法編寫成子VI,通過調用子VI的方法來提高程序執(zhí)行效率,減少重復代碼的編寫。
圖4 實時監(jiān)控畫面Fig.4 Real-timemonitoring screen
文中基于LabVIEW軟件開發(fā)平臺,詳細論述了發(fā)動機實時監(jiān)控軟件的設計與實現(xiàn)。與傳統(tǒng)方法相比,該實時監(jiān)控軟件具有更加直觀、人性化的特點,軟件操作簡便、支持多種接口。通過采用模塊化設計、引入子VI等設計思路,極大提高了軟件執(zhí)行效率。該監(jiān)控軟件在發(fā)動機定型試飛中得到實際應用,試驗結果表明,該監(jiān)控軟件在保證飛行安全、提高飛行效率的同時具有良好的實時性、準確性和可靠性。
[1]霍培鋒,李虎誠.遙測傳輸質量與射頻系統(tǒng)的調整[J].測控技術,2008,27(1):4-6.HUO Pei-feng,LIHu-cheng.Telemetry transmission quality and adjustment of RF system [J].Measurement&Control Technolgy,2008,27(1):4-6.
[2]陳輝煌.基于LabVIEW的蓄電池在線監(jiān)測系統(tǒng)設計[J].電子設計工程,2012,20(9):151-153.CHEN Hui-huang.Based on on-line monitoring system of Labview battery design[J].Electronic Design Engineering,2012,20(9):151-153.
[3]候國屏,王坤,葉齊鑫.LabVIEW7.1編程與虛擬儀器設計[M].北京:清華大學出版社,2005.
[4]祁春,段寶元.遙測數據實時處理軟件系統(tǒng)及其應用[J].科學技術與工程,2010,10(28):7047-7050.QI Chun,DUAN Bao-yuan.Telemetry data real-time processing software system and its application[J].Science Technology and Engineering,2010,10(28):7047-7050.
[5]盧天海,王見.基于LabVIEW的電機功耗實時監(jiān)測系統(tǒng)設計[J].計算機測量與控制,2012,20(3):580-582.LU Tian-hai,WANG Jian.Design of real-time monitoringsurvey system for motor power consumption based on LabVIEW[J].Computer Measurement&Control,2012,20(3):580-582.
[6]袁琦,儲春華,李中品,等.基于LabVIEW的水環(huán)境因子無線監(jiān)測系統(tǒng)設計[J].電子設計工程,2012,20(5):159-162.YUAN Qi,CHU Chun-hua,LI Zhong-pin,et al.Design of water environmental factorswirelessmonitoring system based on LabVIEW[J].Electronic Design Engineering,2012,20(5):159-162.