999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MVVM 架構的飛行模擬器教員控制臺系統的設計和實現

2022-08-17 10:53:26楊宛璐王建普鄧鑄洲
教練機 2022年2期
關鍵詞:界面系統設計

楊宛璐,韓 立,王建普,鄧鑄洲

(航空工業洪都,江西 南昌, 330024)

0 引言

飛行模擬器分為飛機性能仿真分系統、座艙模擬分系統、視景、教員臺控制分系統、計算機和網絡分系統、航空電子模擬分系統、聲音模擬分系統、輔助分系統等八大分系統。 其中教員控制臺(IOS—Instructors Operating Station)作為飛行模擬器與教員的人機交互界面,是整個系統中重要的環節之一。 通過教員控制臺可以控制整個飛行模擬器的全過程,如訓練開始、訓練結束、設置飛機數據、機場數據、飛行環境、特情等。除此之外,通過態勢監控、電子地圖、語音通信等功能操作,教員可以隨時掌握飛行訓練中的每一個細節。

目前國內大部分飛行模擬器教員控制臺大都采用可視化集成開發工具來開發教員控制臺軟件,但界面設計與底層邏輯代碼的緊密耦合度高,隨著程序功能的拓展與擴張,代碼量也會相應地增加,程序也會變得十分復雜,使得在后期維護修改時,工作量繁重,牽一發而動全身,后期維護較為不便。

針對上述缺點, 將MVVM 模式應用在教員臺系統的設計上可以很好地解決上述問題,MVVM 模式是基于微軟.Net 架構以及WPF 全新設計模式,將數據層、業務邏輯層以及表現層分開,并利用Data/Binding(數據綁定與命令綁定)進行接口粘合,可以使業務邏輯與界面最大程度地分離開來。

根據教員控制臺的應用特點,結合各種先進技術的發展,并考慮到系統設計的通用性,提出以下設計思路:采用面向對象技術進行教員控制臺軟件引擎的分析與實現,利用模塊化的軟件結構和網絡通訊框架提高系統的通用性、擴展性和可移植性,注重從界面布局、風格設計和功能實現方法等方面增強人機交互界面的靈活性和友好性。

1 軟件架構設計

教員控制臺系統是飛行模擬器的一個重要組成系統,擔負著整個飛行模擬器的輸入控制和輸出顯示工作,它與模擬器幾乎所有的系統都存在著直接或間接的信息交互。

教員控制臺軟件采用三層架構,底層為網絡通訊層,用于主控計算機與其他計算機網絡數據的接收和發送;中間層為數據的邏輯處理層;最上層為用戶交互界面,實現界面布局和顯示。

在飛行訓練過程中,教員控制臺軟件將教員設置的各類控制指令通過以太網發送給仿真計算機,仿真計算機通過數據處理模塊將解算出的飛行數據及指令通過以太網反饋給教員臺,用于軟件界面的實時顯示。

本系統界面采用WPF 編程實現:

1) 采用Visual Studio 2010 和.Net Framework 4.0平臺架構。

2) 應用C#、XAML 語言進行開發,C# 用于軟件框架的搭建,XAML 用于軟件界面的布局和設計,XML 用于系統數據配置文件。

界面設計采用微軟的Expression Blend 4 和Visual Studio 2012。Blend 主要負責界面設計,包括空間布局,背景色,控件樣式以及自定義控件;Visual Studio 2012 主要完成界面上控件的響應及界面之間的傳值,完成用戶與系統的信息交互。

教員控制臺軟件界面采用數據驅動的方式實現,在完成內部功能模塊設計后,將界面顯示與配置文件和數據驅動模型進行綁定。 界面配置文件,包括中英文切換、單位切換、值域編輯、屏幕分辨率配置、系統樣式以及圖標更換,均采用XAML 文件存儲,這些文件修改之后不需要進行再編譯,重新啟動軟件后將自動識別載入系統數據。

數據交換處理模塊主要是用于將操作界面發出的請求發送給仿真框架中的仿真管理系統主機,并將網絡接收過來的數據實時傳給教員控制臺,供界面顯示。

2 MVVM 架構

主控系統框架采用MVVM(Model-View-ViewMode)模式。 該模式由Model(模型層)、View(視圖層)和ViewModel(視圖模型)三部分組成,該模式系統框架如圖1 所示。 View 先綁定ViewModel,然后執行一些命令向其請求動作。 ViewModel 與Model 通訊,通知響應UI。 View 層只需展示數據格式不同生成的不同窗體視圖的界面設計。 ViewModel 實現數據邏輯的展示,它只關注操作任務、操作邏輯的行為,Model 層制定數據模型。 相對于之前把邏輯結構卸載Code Behind 里面的方式,MVVM 幾乎完全解耦視圖與邏輯業務的關系, 通過數據綁定和命令來處理UI 屬性及事件驅動。 同理,ViewModel 的視圖交互業務邏輯處理導致的屬性變更也會通知到View 前端,讓View前端實時更新,關系如圖1 所示。View 使用XAML 語言只包含界面相關邏輯代碼,并運用綁定屬性和綁定命令的方式與視圖模型層進行交互。當一個控件值改變后,XAML 會根據控件綁定的ViewModel 的屬性進行相應的更新,同理,若ViewModel 的屬性值發生變化時,可調用INotify Property Changed 的事件來通知前臺進行改變。這樣的通訊機制使得系統構建十分容易。 在系統界面和功能越來越松耦合的同時,功能可測性越來越強。

圖1 MVVM 架構圖

3 軟件功能模塊設計

根據模擬器對教員控制臺的需求分析,將軟件模塊分為以下內容,如圖2 所示。

圖2 教員控制臺功能模塊設計

1) 窗口布局管理

(1)加載各類資源文件,完成主窗口的動態創建顯示;

(2)加載頁面資源,完成各功能頁面內容的動態創建顯示;

(3)實現各功能頁面間的切換顯示。

2) 通用顯示和控制

(1)讀取基本界面元素配置文件,實現頁面中界面元素的加載,如參數設置按鈕、狀態設置按鈕、標志按鈕、參數狀態顯示框、圖片控件等。

(2)利用WPF 的數據綁定和依賴項屬性等特性,實時顯示從主機網絡服務軟件獲取的數據;

(3)根據控制指令的數據類型,通過開關按鈕、彈出對話框輸入數據或選擇狀態等不同方式,將控制指令對應的數據發送到主機網絡服務軟件。

3) 故障管理

(1)按系統分頁顯示可設故障名稱以及各故障的描述內容;

(2)提供即時觸發和預設故障的設置及取消;

(3)所有已激活故障集中顯示,便于教員了解當前故障設置狀態;

(4)故障預設的觸發條件管理。

4) 多語言版本管理

(1)創建語言切換配置文件,描述不同語言版本下對應的翻譯內容;

(2)實現軟件顯示內容多語言版本的動態切換。

5) 網絡通訊

(1)實現與主機網絡服務軟件通過UDP 進行數據交互,完成數據的發送和接收。

(2)接收主機網絡服務軟件發送過來的信息包和數據包; 解析信息包獲取數據包的拆解描述信息;解析數據包,獲取數值更新到數據資源,用于界面實時顯示數據信息;

(3)發送控制指令時,提供控制指令對應的唯一標識、數據類型和值,按數據發送協議組包并序列化后的數據包發送給主機網絡服務軟件。

4 教員臺界面設計

教員臺主控軟件顯示界面即MVVM 模式中的View 層, 以數字和圖形的方式顯示了以太網接收的所有數據。 顯示界面的前端為用戶提供程序交互界面。 View 層通過豐富多樣的圖形化界面使得使用者能得到很好的人機交互體驗。 ViewModel 與View 通過屬性綁定在一起,將數據以更加直觀的圖形化的方式展現給用戶,若用戶需改變圖形界面顯示,只需將界面與數據重新綁定一次即可。對于整體模塊無需進行多余修改。

圖3所示教員臺系統的界面設計,主界面左側為導航欄,內容包括:任務(創建任務、選擇任務、任務頁面)、故障設置、活動目標、檔案管理和系統設置。

以天氣設置界面設計為例,如圖3 所示,風向的設置由一個自定義的控件DashBoard 組成,將控件的Maximum 最大值、Minumum 最小值、和Value 當前值定義為依賴屬性(Dependency Property),這樣就可以跟WPF 的原生控件一樣, 允許對該控件進行屬性綁定, 將風向設置的TextBox 的Text 屬性與DashBoard的Value 屬性綁定在一起, 如:Text="{BindingValue,ElementName=DashBoard},這樣使得TextBox 與Dash-Board 間建立關聯,產生聯動效果。 利用自定義控件制作動畫來顯示風向,使得同一個數據擁有兩種不一樣的表現形式,雖然兩種表現方式、效果完全不一樣,但兩者來源的數據是一樣的。底層數據并沒有因為界面顯示的不同而進行代碼修改,就可有兩種不同的顯示方式,很好地將界面的設計開發與底層的數據開發分離。

圖3 風向設置界面

5 顯示界面與數據綁定

傳統的界面監控設計思路是消息觸發機制,結合TCP/UDP 通訊協議即可以搭建完整的網絡監控系統。 本文采用的是數據綁定機制,此方法是對消息觸發方式的一次革新,更加強調模塊化設計,與常規桌面軟件的設計,帶來了全新的設計思路。 其中關鍵的技術革新即為一對多的數據綁定取代了一對一的消息觸發機制,突破了數據來源與界面顯示的專一性,僅在需要顯示的界面才進行數據綁定,模塊化程度高。

6 結語

將MVVM 框架融合于飛行模擬器教員臺軟件系統中,使其具備低耦合、可重用性、可測試性等優點,通過綁定及自動更新,使得后臺業務邏輯更加清晰,便于進行飛行模擬器教員臺界面設計的修改和更新,給傳統桌面開發帶來全新的設計理念,為以后開發桌面交互設計界面提供了開發經驗。

猜你喜歡
界面系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
人機交互界面發展趨勢研究
主站蜘蛛池模板: 日本精品一在线观看视频| 免费va国产在线观看| 久久国产精品夜色| 制服丝袜国产精品| 99视频精品在线观看| 国产精品手机在线观看你懂的| 国产另类视频| 国产91导航| 激情在线网| 日韩欧美中文字幕在线精品| 亚洲中文字幕国产av| 日韩A∨精品日韩精品无码| 欧美一级黄片一区2区| 亚洲中文字幕久久无码精品A| 久久视精品| 亚洲日韩第九十九页| 国产精品香蕉在线| 又污又黄又无遮挡网站| 国产地址二永久伊甸园| 91国内在线观看| 19国产精品麻豆免费观看| 99视频免费观看| 亚洲欧美一区二区三区图片 | 国产在线精品香蕉麻豆| 国产一区成人| 国产97视频在线观看| 在线国产91| 六月婷婷激情综合| 亚洲全网成人资源在线观看| 福利在线一区| 一本久道久综合久久鬼色| 91久久精品日日躁夜夜躁欧美| 97人妻精品专区久久久久| 人人91人人澡人人妻人人爽| 国产精品青青| 亚洲精品亚洲人成在线| 精品一区二区三区四区五区| 免费a级毛片18以上观看精品| 成年免费在线观看| 久久性妇女精品免费| 国产视频大全| 亚洲 欧美 日韩综合一区| 日韩在线影院| 无码AV日韩一二三区| 五月激激激综合网色播免费| 91精品网站| 天堂成人av| 午夜国产精品视频| 久久成人免费| 亚洲一区二区三区麻豆| 国产日本欧美在线观看| 高清免费毛片| 亚洲国产精品一区二区第一页免 | 夜夜操天天摸| 精品国产成人国产在线| 中文字幕2区| 伊人成人在线视频| 亚洲a免费| 亚洲成人在线免费观看| 免费av一区二区三区在线| 欧美午夜理伦三级在线观看| 亚洲天天更新| 伊人91视频| 99热这里只有精品免费| 亚洲丝袜第一页| 日本一区中文字幕最新在线| 激情国产精品一区| 亚洲性一区| 欧美成人手机在线观看网址| 午夜色综合| 久久亚洲高清国产| 精品免费在线视频| 国产哺乳奶水91在线播放| 熟女成人国产精品视频| 自拍偷拍欧美| 色爽网免费视频| 国产无套粉嫩白浆| 国产欧美在线观看视频| a级毛片免费在线观看| 婷婷色丁香综合激情| 精品国产网| 国产成人无码AV在线播放动漫|