?

智能化的試飛測試軟件體系架構研究

2018-02-05 01:45,
計算機測量與控制 2018年1期
關鍵詞:遙測數據處理工程師

,

(中國飛行試驗研究院,西安 710089)

0 引言

安全與效率是飛行試驗永恒的主題,遙測監控是實現飛行試驗實時預警、確保試飛安全,提高試飛效率、縮短試飛周期的重要手段,飛行試驗遙測監控技術一直是國內、外航空飛行試驗領域研究和拓展的關鍵技術,隨著近幾年我國試飛型號任務的增加,實時監控課題也越來越多。為滿足日益增長的實時監控需求、提高監控效率,如何提升“一個監控科目,一套監控畫面軟件”的實時監控模式,已成為航空飛行試驗遙測監控系統技術研究中重點突破的難題。另外,隨著 飛行試驗“智能化監控技術”的研究方向的提出,對地面飛行實時監控系統的開發在“多目標多科目實時自主監控”方面提出了新的目標,并需要進行更廣更深更細的研究,有規劃分階段逐步突破所面臨的技術難題。

近年來,國內外基于智能化的監控技術取得了飛快的發展,應用領域也日趨拓展,吸引了國內、外眾多自動化公司紛紛投資開展相關技術的研究。組態監控軟件具備靈活、便捷的開發環境,集成了非常多的監控功能,因而可以適應不同工業自動化領域,具有很強的通用性。其通用性特征,為其贏得了廣泛的應用領域,但是同時也帶來了一定的后果:組態監控軟件[1]由于結合了許多的自動功能,使得其接口形式多樣,而且開發和維護成本相對較高,而對于飛行試驗這一特定的應用領域,提供的許多“大而全”的功能對于很多用戶也并不適用,造成極大的資源浪費。在設計中工程技術人員在開發某一專用系統時一些專業性的ActiveX控件和特殊的I/O設備的驅動需要自己手動添加[2],這種設計思路和架構不僅沒有實現自動化,更談不上智能化。遙測實時監控系統針對飛行試驗地面實時監控的特定需求,其數據接口、數據傳輸模式、監控軟件組成結構、數據表現形式都有其自身特點。針對試飛實時監控的特殊需求,目前還沒有一種智能化的軟件設計架構滿足實時監控任務。

飛行試驗研究院基于智能化試飛測試軟件設計架構,采用模塊化設計思想,研究開發基于組件的自主監控平臺,實現了組件對象可重組、參數算法可定義,為數據處理工程師提供快速構建監控軟件的平臺。平臺使用靈活的組件方式(而不是編程方式),使用戶能根據監控需求任意組態,設計完成實時監控軟件。項目中根據實時監控中的實際需求,編寫設計一套完整的數字、曲線、儀表、柱狀圖、飛機平顯及通用電子地圖等監控組件,數據處理工程師能夠按照實時/預處理任務書中監控參數的要求表現形式選擇相應組件并進行相應的參數配置即可快速完成監控軟件的設計,而不要求數據處理工程師具備專業的編程知識,有效提高了監控軟件準備效率,降低了監控軟件設計的難度和復雜度;在監控過程中,數據處理工程師、試飛工程師可以根據任務需求實時進行監控參數的調整;此外,該平臺實現了數據處理常用的基本算法,滿足常規的數據處理需求,使得監控參數以正確的形式呈現給試飛工程師及地面指揮人員。

1 智能化軟件總體架構設計

智能化實時監控組態軟件平臺以功能模塊劃分為設計主導思路[3],劃分為3個功能模塊:控制/管理模塊、數據接口模塊和界面顯示模塊,3個單元獨立的完成各自功能而又相互連接,軟件體系架構如圖1所示。

圖1 軟件總體架構圖

1)I/O驅動模塊:它是試飛測試智能化實時監控架構中不可或缺的部分,由信息數據處理觸發模塊和接口匹配模塊組成,通過該驅動模塊實現實時監控軟件和前端遙測信號進行交互式數據通信,是實時數監控軟件與遙測前端數據處理系統的橋梁,是本軟件的基礎,為整個軟件提供數據來源,它向下為實時監控客戶端提供監控參數名,向上提供實時遙測數據。

2)控制/管理理模塊:用于管理和維護工程中的各種信息,如監控軟件通信配置信息、監控頁面參數配置信息等,同時運行管理模塊還將接收到的網絡數據處理為可理解和便于進一步利用的結果,并把飛行所需的結果數據傳輸到界面顯示模塊進行符號參數、圖形和曲線進行顯示。此外,控制/管理理模塊承擔著科目備份和新增任務功能。

3)界面顯示模塊:它是基于圖形顯示系統生成的開發環境。界面圖形顯示試飛工程師的人機交互界面通過創建系列化的用戶數據文件及操作,形成參數功能應用系統。通過設計的定制化監控應用程序可在終端機的操作系統中運行和顯示。在監控界面進行參數核實、報送、設置告警門限以及文檔生成和記錄功能。其數據源都可以通過圖形界面來指定,然后通過運行模塊,取得各種處理好的參數,把監控對象通過儀表、曲線、告警燈等形式反映給試飛工程師。

平臺主要實現的功能包括:

1)實現監控畫面軟件的動態編輯設計;

2)使用靈活的組件方式(而非編程方式),實現組件對象可重組、參數算法可定義,為數據處理工程師提供快速構建監控畫面的平臺;

3)在監控過程中,數據處理工程師、試飛工程師可以根據任務需求實時進行監控參數的動態調整;

4)實現試飛數據二次處理常用算法動態配置功能,滿足常規的數據處理需求。

2 功能模塊設計

2.1 圖形界面的設計及實現

圖形界面模塊為試飛人員提供了與平臺交互的接口,是整個軟件的核心部分,用戶可以方便的通過鼠標拖拽組件的方式而不是編程方式進行控件的創建和配置編輯工作。監控畫面的制作過程完全是一個可視化操作,利用鼠標等輸入設備,動態創建所需要的監控組件并對其進行任意縮放和拖動位置以及進行參數和運算配置。使用戶實現對監控畫面的智能操作。編輯好的畫面進入運行狀態后,各組件接收過程邏輯層解算好的參數實現實時狀態刷新。該模塊的實現主要包括監控組件模型庫的開發以及組件的動態調用。

2.1.1 組件模型庫開發

在試飛遙測實時監控過程中[4],需要通過數字、儀表、曲線、柱狀圖等多種數據表現形式對機上測試參數進行地面復現,智能化實時監控軟件架構設計時需要創建適合試飛功能的模型數據庫為不同課題的試飛工程師和飛行指揮員提供個性化的選擇。因此,根據試飛監控中的實際需求,開發了一組基于MFC的監控組件,如儀表、曲線、柱狀圖等,以及飛機平顯、地圖等專用組件。監控組件的開發分為靜態和動態兩部分,靜態部分沒有參數驅動,一般為控件的基本屬性部分如背景,參數名稱等。動態部分的任務是以直觀的動畫來模擬現場,反映被控對象的變化,其通過實時接收的數據流來驅動。

試驗機在空中飛行過程中,一般會設計多用途的監控顯示畫面,并對畫面進行實時調整和切換,在架構設計時采用多線程調用機制,在圖形和畫面驅動前,先用OnPaint創建一組備份對象數據,將這組備份對象數據映射到前端顯示的內存緩存區,利用虛擬技術將這組數據的驅動畫面顯示到監控終端的計算機屏幕上,這樣就避免了因景色與繪圖內容不一致造成的閃爍現象。通常需要創建多組監控程序,并對其進行參數編輯、縮放、移動等操作,這種情況下,會產生嚴重的跳動現象,給工程師帶來很大的不便。產生跳動的原因是:圖形界面需要重繪時,總是先用背景色將顯示區域覆蓋,然后才調用OnPaint進行繪制,由于背景色與繪圖內容差別較大,就會產生跳動現象。本架構設計中,采用雙向緩存機制來編輯畫面,在繪圖區域顯示所需的畫面之前,先在內存中生成與繪圖區域一致的類對象,將圖形繪制到這個內存的類對象上,最后將這個類對象上的圖形復制到顯示屏幕上,加快繪圖編輯的速度,從而避免跳動現象。

飛行試驗研究院遙測實時監控在幾十年的發展過程中,開發積累了相當多的界面友好、功能強大的通用平臺監控組件。軟件平臺中對常用的部分監控組件進行提取和封裝優化,滿足了基本的監控軟件設計監控組件元素需求。平臺綜合加載了自定義組件、專用組件以及通用平臺組件,并對外提供統一接口形式進行管理,以實現組件的無差別動態生成、參數配置、運算配置與解析以及組件配置信息的存儲與解析。同時,具有良好的擴展性,新開發組件按照接口定義規則可以方便加入到平臺當中,功能齊全的模型庫為監控畫面提供了靈活的智能選擇。

2.1.2 組件的動態調用

為了實現監控組件的動態生成,位置移動和縮放,軟件在實現過程中為每一個監控組件添加一個運行時包裝類。通過這種方法,可以實現將自定義組件如儀表曲線以及封裝好的通用平臺組件以統一的表現形式呈現給開發人員,實現二者的統一靈活加載。軟件運行時用戶點擊一個組件圖標并拖放到指定位置實際上就是為該組件的包裝類創建一個對象并進行顯示,同時可以用線框選中該組件,進行組件的移動、縮放,實現良好的人機交互。組件創建好之后,為該組件添加雙擊相應事件,在彈出的對話框中設置該組件的基本屬性如組件名稱及背景顏色等、配置要監控的參數以及參數的運算信息。每一個組件的創建與運行都是獨立的,單個組件的修改與增刪不會對系統的運行產生任何影響。圖2是一幅監控畫面的一般設計過程。

圖2 畫面生成過程

2.2 運行管理模塊設計

2.2.1 參數運算動態配置及解析實現

參數解算模塊接收到的PCM參數通常是由服務器軟件已經解算好的物理量,對于該類型參數,解算模塊不做任何操作直接輸出到該組件的數據驅動接口。但是,同時也存在著部分服務器無法完成解算或解算過于復雜的參數,如一個PCM字中包含了多個開關量。對于這類嚴格從ICD中提取物理特性的參數,需要引入校線和計算公式進行解析后最終形成工程物理數據包。遙測數據處理常用算法包括多PCM字合并、取位以及表達式運算,圖3是一個組件完整的參數提取解算過程。

圖3 參數提取過程

2.2.2 配置信息管理

在一個監控軟件參數配置文件中所有組件呈樹狀關系,如圖4所示。按照智能化軟件設計架構在監控畫面存儲時也應該保持這種樹狀關系,以便下次飛行時智能調用,在標準化架構下應該使用XML(eXtensible Makeup Language)語言來實現這一功能。XML提供了一種智能的人機交互界面將實現的功能進行簡單、便捷的標注,同時也符合標準化設計需求結構邏輯性強而且易于存儲。試飛工程師采用任何一種設計工具都可以實現查詢、顯示和編輯,畫面關聯性強易于同步屬性修改。

同型號不同科目監控軟件的配置信息,采用結構化層次劃分進行管理,通過型號及科目劃分建立分層的配置信息庫結構,從而實現所有監控軟件配置信息的結構化存儲管理。配置信息存儲結構如圖5所示。

圖4 存儲畫面的樹形結構

圖5 信息配置庫的樹形結構

2.3 I/O驅動模塊設計

系統通過建立Socket套接字的方式與遙測實時數據處理前端進行數據交換,當前,常用的網絡數據傳輸協議包括TCP( transmission control protocol,傳輸控制協議)和UDP(user datagram protocol,用戶數據報協議)兩種,TCP是一種面向對象連接的協議,應用在對參數數據要求可靠性極高的場合,實現從服務器到監控網絡中的監控終端的直連互通,不做任何修改的將數據進行傳輸;兩臺TCP主機之間進行數據交換之前,必須通過三次握手機制先相互建立會話,通過確認和按順序傳遞數據來確保數據的可靠傳輸,其在發生丟包時會進行數據包重傳。

UDP協議使用內部程序來實現傳輸數據的可靠性,不能完全確保數據傳遞類型或順序,對同一個局域網來說,采用UDP協議可以實現良好的性能,它能夠滿足數據傳輸量不太大、對數據實時性要求較高的工程項目中,在這種情況下,UDP的低開銷和多播能力比TCP更合適。

試飛實時監控網絡屬于專用網絡,網絡規模較小,數據一般不需要在交換設備之間進行多級跳轉,因此,數據包丟失或出現錯序的幾率較低。面向實時性要求較高的試飛監控畫面,UDP傳輸協議具有很強的適應性和功能性。PCM數據處理前端服務器與本自主實時監控組態軟件建立UDP鏈接,從而實現將遙測數據“推送”到監控軟件畫面,從而確保了數據的實時性。圖6是監控軟件數據傳輸流程圖。

圖6 監控軟件數據傳輸流程

3 應用驗證及分析

將軟件安裝到實際飛行試驗中的監控客戶端主機上,為試飛工程師及飛行指揮員提供快速構建監控畫面及實時監控平臺,并通過后臺的資源信息配置庫進行集中控制和統一管理,如圖7所示。在試飛過程中,試飛工程師根據任務需求通過鼠標“拖拽”方式創建儀表、曲線等某一特定監控組件,然后綁定監控參數數據源并對其運算信息進行動態配置,自主實時監控組態軟件自動接入遙測實時監控系統,便可完成試飛課題所關心機載測試參數的實時監控,極大的簡化了實時監控任務準備流程,有效降低了任務準備壓力和復雜度。目前,該基于組件配置的實時監控軟件已成功應用于運輸機、C919等型號的多架飛機試飛全過程,提供了持續不間斷的數據鏈路,為地面監控、數據分析、指揮決策提供了優質、高效的安全保障。

4 結束語

針對飛行試驗未來的發展需求,采用智能化試飛測試軟件體系設計架構和模塊化方法,在Visual Studio平臺開發完成自主實時監控組態軟件。通過該自主監控平臺,數據處理工程師根據監控參數的表現形式選擇相應的監控組件進行參數配置和運算配置即可完成監控畫面的編輯任務;試飛工程師在監控過程中可以靈活的調整監控參數和畫面布局;軟件根據配置參數接收網絡數據并根據定義的運算進行相應解算,驅動整個監控畫面圖形元素的運行,為試飛工程師和監控指揮員提供及時、準確的全過程試飛信息。與傳統的基于LabVIEW和C++ Bulider監控畫面相比,具有自主程度高、記憶能力強等特點,能夠為未來的飛行試驗發展提高畫面準備效率、提高畫面編輯的靈活性。

圖7 智能化測試架構應用場景圖

[1] 王亞民, 陳 青, 劉暢生,等. 組態軟件設計與開發[M]. 西安:西安電子科技大學出版社, 2003.

[2] 姜錦鋒. 紅外圖像的目標檢測、識別與跟蹤技術研究[D]. 西安:西北工業大學. 2007

[3] Comaniciu D, Ramesh V, Meer P. Kernel-based object tracking [J].IEEE Trans. on Pattern Analysis and Machine Intelligence, 2003, 25(5):564-575

[4] 管小清,呂志強.適用于復雜環境下的實時目標跟蹤技術[J].計算機測量與控制,2012,20(10):2776-2778.

[5] 董 欣, 陳曉鷗. XML文件的顯示與瀏覽[J]. 計算機應用, 2000, 20(8):29-32.

[6] Doucet A, Gordon N, Krishnamurthy V. Particle Filters for State Estimation of Jump Markov Linear Systems [J]. IEEE Trans. Signal Processing, 2001, 49(3):613-624

[7] 姬雪峰. 基于粒子濾波的紅外目標跟蹤方法研究[D]. 西安:西安電子科技大學. 2011

[8] 鄭致力. 算術表達式解析引擎的設計及實現[D]. 北京:北京郵電大學, 2012.

[9] Huang T, Ren Q, Liu Q, et al. Application technology study of measurement and control configuration software pocket[Z]. IEEE, 2000:347 - 349.

[10] 趙民正. 面向監控的組態軟件——技術分析和設計[D]. 杭州:浙江大學, 2002.

猜你喜歡
遙測數據處理工程師
《機械工程師》征訂啟事
環保工程師:生來為了“拯救地球”
認知診斷缺失數據處理方法的比較:零替換、多重插補與極大似然估計法*
前饋復合控制在提高遙測跟蹤性能中的應用
基于低頻功率數據處理的負荷分解方法
Kenoteq的工程師研發環保磚塊
無人機測繪數據處理關鍵技術及運用
青年工程師
遠程控制式遙測地面站關鍵技術研究
基于WPF的遙測CAS信息實時監控系統設計開發
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合