馬 莉,王建國,韋勇宇,閆建鵬,寧文學(xué)
(北方自動控制技術(shù)研究所,太原 030006)
基于圖元的火控系統(tǒng)人機交互界面的實現(xiàn)
馬 莉,王建國,韋勇宇,閆建鵬,寧文學(xué)
(北方自動控制技術(shù)研究所,太原 030006)
本文提出基于圖元的火控系統(tǒng)人機交互界面,在客戶端/服務(wù)器信息處理與顯示模式下,根據(jù)火控系統(tǒng)人機交互界面的實際需求,設(shè)計出所需的圖元庫。然后,利用圖元庫設(shè)計出部分UI界面,完成UI界面的注冊過程以及相應(yīng)的控制文件的編寫設(shè)計,將用戶操作同界面數(shù)據(jù)進行關(guān)聯(lián)。最后,設(shè)計并搭建顯控服務(wù)和圖元終端,采用DDS通信協(xié)議,實現(xiàn)服務(wù)器端和客戶端的數(shù)據(jù)傳輸。該設(shè)計過程將界面顯示與應(yīng)用程序、邏輯處理、業(yè)務(wù)過程相分離。這種設(shè)計思想符合模塊化、系列化發(fā)展思路,與模塊化火控設(shè)計思想一致。
圖元,人機交互界面,模塊化火控系統(tǒng),C/S架構(gòu),DDS
當(dāng)前壓制武器火控系統(tǒng)發(fā)展主要隨型號分立研制,一型武器研制一型火控系統(tǒng)。由于缺乏頂層設(shè)計,未建立層次分明、靈活配置的統(tǒng)一體系架構(gòu),火控系統(tǒng)升級改造往往“牽一發(fā)而動全身”,局部功能的升級有時需要通過系統(tǒng)改動來實現(xiàn)。導(dǎo)致通用性差、模塊化程度低、接口繁雜、保障復(fù)雜,軟件耦合度高、升級維護困難,對武器平臺性能提升和功能拓展形成了制約。而模塊化火控系統(tǒng)采用系列化、模塊化、跨平臺的系統(tǒng)架構(gòu),建立壓制武器火控的模塊化技術(shù)體制,是壓制武器平臺化發(fā)展、裝備高效化發(fā)展和快速形成戰(zhàn)斗力的必然需求。此外,模塊化火控系統(tǒng)可以形成通用的功能分區(qū)、標(biāo)準(zhǔn)的基礎(chǔ)流程和風(fēng)格一致的人機交互模式,有利于部隊訓(xùn)練使用和快速掌握。因此,模塊化火控系統(tǒng)的產(chǎn)生有其必要性和重要性。而基于圖元的火控系統(tǒng)人機交互界面符合模塊化、系列化發(fā)展思路,與模塊化火控設(shè)計思想一致。
傳統(tǒng)的火控系統(tǒng)人機界面是基于“嵌入”方式進行的,應(yīng)用程序設(shè)計人員在設(shè)計軟件時,是按照功能及界面兩方面要求混合編寫用戶界面和應(yīng)用功能兩部分程序。在這種傳統(tǒng)的設(shè)計模式下,設(shè)計人員必須同時兼顧圖形表現(xiàn)的設(shè)計及其邏輯功能設(shè)計,這大大增加其設(shè)計負(fù)擔(dān),更重要的是,用戶界面只要稍有變動,應(yīng)用程序就需要作出相應(yīng)修改且需要重新編譯,對于不同的顯示界面需要不同的應(yīng)用程序。這樣不僅增加了工作量,而且不易于操作和維護。
而基于圖元的火控系統(tǒng)人機交互界面在設(shè)計時將界面顯示與應(yīng)用處理相分離,保證服務(wù)器端軟件的升級不會影響客戶端軟件的運行狀態(tài)。另外,采用客戶端/服務(wù)器信息處理與顯示模式,實現(xiàn)信息集中處理、分布顯示,提高武器系統(tǒng)信息共享程度,顯示終端可以在不更改服務(wù)器端應(yīng)用程序的前提下根據(jù)作戰(zhàn)需求進行靈活配置。這種界面圖元化設(shè)計方法能夠提高火控系統(tǒng)軟件復(fù)用性和設(shè)計效率,增強軟件可擴展性,對火控系統(tǒng)人機交互界面的設(shè)計和開發(fā)具有重大意義。
圖1 圖元化界面顯示示意圖
圖元化界面顯示過程由圖元顯示控制服務(wù)、圖元引擎、圖元庫、圖元文件和圖元顯示5部分支撐。如圖1所示,其中圖元顯示控制服務(wù)負(fù)責(zé)針對界面切換任務(wù),選擇對應(yīng)的圖元文件作為界面顯示描述文件;負(fù)責(zé)解析當(dāng)前運行狀態(tài),把需要顯示的圖元類型和圖元屬性信息發(fā)送至客戶端??蛻舳藞D元引擎負(fù)責(zé)解析接收到的顯示內(nèi)容,在圖元庫中查找對應(yīng)圖元;負(fù)責(zé)將用戶操作發(fā)送至圖元顯示控制服務(wù),以觸發(fā)任務(wù)流程??蛻舳藞D元顯示負(fù)責(zé)根據(jù)圖元文件和圖元庫中的圖元進行界面組裝和顯示,并捕獲用戶操作。
圖元化界面實現(xiàn)過程:用戶對界面中具有交互功能的圖元進行操作后,圖元引擎負(fù)責(zé)解析動作,把當(dāng)前動作發(fā)送至圖元顯示控制服務(wù),圖元顯示控制服務(wù)根據(jù)當(dāng)前所在圖元界面和動作類型,完成對應(yīng)邏輯功能,并向圖元引擎返回新生成的圖元描述內(nèi)容,圖元引擎根據(jù)描述內(nèi)容對圖元顯示界面進行更新。
這種界面圖元化設(shè)計方法主要側(cè)重于減輕開發(fā)設(shè)計人員的負(fù)擔(dān),并且有利于后續(xù)的擴展和復(fù)用。所設(shè)計的呈現(xiàn)給用戶的界面在一定程度上可以與舊的界面有一樣的感觀效果和操作體驗,但正是由于這樣,新的開發(fā)方式設(shè)計出的界面,用戶更加容易接受,無需另外培訓(xùn)。同時,還能提高火控系統(tǒng)軟件復(fù)用性和設(shè)計效率,增強軟件可擴展性。
炮長終端、操控終端和任務(wù)服務(wù)模塊采用客戶端/服務(wù)器架構(gòu)。如圖2所示,其中的任務(wù)服務(wù)軟件由信息接口模塊、任務(wù)服務(wù)模塊和數(shù)據(jù)庫模塊組成。任務(wù)服務(wù)模塊與炮長終端和操控終端軟件之間在以太網(wǎng)基礎(chǔ)上采用DDS中間件進行信息交互。炮長終端和操控終端作為客戶端,完成輸入輸出控制;任務(wù)服務(wù)模塊作為服務(wù)器,完成信息獲取、處理和數(shù)據(jù)存儲??蛻舳伺c服務(wù)器采用統(tǒng)一的通信服務(wù)完成客戶端軟件與對應(yīng)服務(wù)的信息傳遞。
圖2 火控系統(tǒng)通信原理圖
下頁圖3為火控系統(tǒng)組成框圖。其中,人機交互單元由炮長終端和操控終端組成,終端的人機交互界面均采用圖元化界面顯示過程設(shè)計。
圖3 火控系統(tǒng)組成框圖
本文最初先確定火控系統(tǒng)顯示界面,然后分解提取圖元,并進行接口封裝。然后,在Qt平臺下利用圖元進行圖元化界面設(shè)計過程并產(chǎn)生相應(yīng)的UI界面文件。與此同時,編寫服務(wù)器端的顯示控制服務(wù)程序,進而完成客戶端/服務(wù)器架構(gòu)的搭建。最終通過DDS進行終端與服務(wù)器的通信。該軟件通過將界面顯示與應(yīng)用處理相分離來保證服務(wù)器端軟件的升級不會影響客戶端軟件的運行狀態(tài),從而驗證圖元化界面設(shè)計的優(yōu)越性。
如前所述,本文提出基于圖元的火控系統(tǒng)人機交互界面,在客戶端/服務(wù)器信息處理與顯示模式下,通過分解火控系統(tǒng)人機界面的圖元符號,經(jīng)過設(shè)計,形成標(biāo)準(zhǔn)的圖元庫。采用界面圖元化思想開發(fā)設(shè)計人機交互操作界面,實現(xiàn)信息集中處理、分布顯示,提高武器系統(tǒng)信息共享程度,顯示終端可以在不更改服務(wù)器端應(yīng)用程序的前提下根據(jù)作戰(zhàn)需求進行靈活配置。具體設(shè)計思路可分為以下幾點:
①對圖元化人機交互界面架構(gòu)設(shè)計原理進行深入研究;
②根據(jù)火控系統(tǒng)人機交互界面的實際需求,設(shè)計出所需的圖元庫;
③利用圖元設(shè)計部分UI界面,并編寫相應(yīng)的控制文件,實現(xiàn)用戶操作同界面數(shù)據(jù)的關(guān)聯(lián);
④設(shè)計并搭建顯控服務(wù)和圖元終端,采用DDS通信協(xié)議,實現(xiàn)服務(wù)器端xiangkongfuwu和客戶端tuyuan的數(shù)據(jù)傳輸;
⑤對軟件的實現(xiàn)效果進行演示驗證。
在實際設(shè)計中,在Linux環(huán)境下使用Qt創(chuàng)建兩個項目,分別為服務(wù)器端的xiangkongfuwu和客戶端的tuyuan,項目xiangkongfuwu模擬火控系統(tǒng)的任務(wù)服務(wù)模塊中的顯示控制服務(wù)部分,而項目tuyuan模擬顯示終端。二者采用DDS中間件進行通信,DDS應(yīng)用開發(fā)接口與底層硬件完全分離,上次應(yīng)用無需關(guān)注底層硬件情況,應(yīng)用程序只需調(diào)用發(fā)送或接受函數(shù)傳輸數(shù)據(jù)。DDS利用QoS對不同類型報文設(shè)置傳輸策略,保證數(shù)據(jù)傳輸及時性和可靠性;通過調(diào)用DDS通信模塊的接口函數(shù)實現(xiàn)通信,部分接口函數(shù)詳見表1:
表1 DDS通信模塊的接口函數(shù)
3.1 圖元庫中部分圖元的設(shè)計分析
圖元主要根據(jù)火控系統(tǒng)顯示界面的具體需求來制定。為使火控顯示系統(tǒng)的人機圖形交互界面更加豐富,使應(yīng)用程序開發(fā)更加簡單方便,開發(fā)周期更加簡短,使圖形顯示更具有繼承性和標(biāo)準(zhǔn)化,需開發(fā)一套火控系統(tǒng)顯示界面所需的具有標(biāo)準(zhǔn)圖形界面的圖元庫。
基于Qt的圖形圖元擴展庫能夠基本滿足開發(fā)人機圖形交互界面的需求。圖元庫具有可視化功能,即所見即所得,便于開發(fā)者進行人機圖形界面的開發(fā)。該圖元庫提供基本的圖形API交互接口,便于用戶應(yīng)用程序的二次開發(fā)。開發(fā)的最終形式為可應(yīng)用于在Linux環(huán)境下QT Designer的.so擴展插件。
實際設(shè)計中,采用了一個圖元對應(yīng)一個圖元類,所有圖元類都繼承自同一父類的設(shè)計方式。該父類名為QWidget,包括了圖元所有通用屬性和操作的設(shè)計,所有圖元的通用屬性類別大致相同,屬性值因具體圖元而異。每一個圖元類的屬性參數(shù)包括圖元狀態(tài)參數(shù)、風(fēng)格設(shè)置參數(shù)、位置尺寸參數(shù)和各自特有參數(shù),也就是說,每個圖元類都包含了繼承自QWidget的通用屬性和各自封裝的特有屬性。
例如,圖元Button是火控系統(tǒng)人機交互界面中最常見和使用最頻繁的圖元插件。Button類除繼承自QWidget類的通用屬性外,Button類有自己封裝的屬性,即圖元Button的特有屬性。圖元Button與Qt設(shè)計器Qt Designer中Widget Box里自帶的按鈕部件不同,它封裝了自己的特有屬性,例如形狀、顏色、大小、樣式以及鼠標(biāo)點擊和鼠標(biāo)釋放時顯示不同的視覺效果等。圖元Button的繪制過程如圖4所示。
圖4 圖元Button的繪制過程流程圖
圖元庫中的圖元對后期界面的設(shè)計很重要,是界面設(shè)計的基本單元和重要組成部分。為界面設(shè)計打下良好的基礎(chǔ),所以創(chuàng)建圖元庫是火控系統(tǒng)人機交互界面的核心。此外,隨著人機交互界面的不斷發(fā)展以及定制個性化圖元的需求,圖元庫還需要繼續(xù)擴充,不斷完善。
3.2 火控系統(tǒng)人機交互界面的設(shè)計
本文提出將界面圖元化思想應(yīng)用到火控系統(tǒng)人機交互界面設(shè)計過程中,根據(jù)火控系統(tǒng)的實際需求,進行終端界面的設(shè)計?;鹂叵到y(tǒng)人機交互界面在具體設(shè)計時按功能可以分為報文(報文顯示和上報編輯)、導(dǎo)航(地圖指示)、技術(shù)陣地(系統(tǒng)巡檢、慣導(dǎo)尋北等)、發(fā)射(發(fā)射控制、發(fā)射狀態(tài)監(jiān)控等)、系統(tǒng)管理(權(quán)限設(shè)置、IP設(shè)置等)等界面。火控系統(tǒng)人機交互界面設(shè)計框圖如圖5所示。界面設(shè)計過程的示意圖如圖6所示。
圖5 火控系統(tǒng)人機交互界面設(shè)計框圖
圖6 界面示意圖
UI界面直觀描述了界面上顯示的所有信息。在上一章建立的圖元庫基礎(chǔ)上,本課題通過Qt集成環(huán)境自帶的Qt設(shè)計師所見即所得,可直接設(shè)計出所需UI界面,然后在服務(wù)器端進行注冊并進行相應(yīng)的邏輯處理。在Qt Designer,即Qt設(shè)計師環(huán)境下,根據(jù)火控系統(tǒng)人機交互界面的實際需求完成所需UI界面文件(.ui文件)和對應(yīng)控制文件(.ctrl文件)的設(shè)計,所有界面文件和控制文件組成定義文件(DFiles)存儲在圖元終端存儲器中供其調(diào)用,圖元終端根據(jù)所得路徑加載不同的ui文件,并顯示界面;同時加載控制文件,將用戶操作動作與數(shù)據(jù)獲取。
圖7 圖元終端顯示原理圖
圖7中顯示窗口內(nèi)可顯示多個不同的UI界面,各UI界面由結(jié)構(gòu)化的圖元組成,且同一個圖元可應(yīng)用于不同UI界面,這里把每一個UI界面看做一層,每一層在服務(wù)器端的xiangkongfuwu中均注冊為UI類,所有UI類繼承自同一父類,即基礎(chǔ)類UiBase,基礎(chǔ)類中定義了所有類的共有函數(shù),如初始化函數(shù)、事件處理函數(shù)以及界面切換函數(shù)等,這一共有父類的定義更有利于所有界面類的統(tǒng)一調(diào)配。在注冊之后可直接通過類名對相應(yīng)界面進行邏輯處理。這種對圖元終端顯示界面進行層次劃分并實現(xiàn)分層管理的方式可以大大提高其設(shè)計模塊的可移植性,能夠滿足未來定制化火控系統(tǒng)人機交互界面的發(fā)展需求,設(shè)計人員只需按操作員的操作習(xí)慣規(guī)劃各層的顯示內(nèi)容及功能即可。
3.3 圖元化界面性能分析
為了驗證圖元化人機交互界面開發(fā)設(shè)計方法較傳統(tǒng)界面開發(fā)方法的優(yōu)勢,本節(jié)將就兩種界面開發(fā)方式進行如下比較。
選擇一個典型的火控系統(tǒng)功能:彈種擴充功能。設(shè)計時需要增加新彈的顯示和選擇功能,而且要增加針對新彈的操作流程界面。操作流程界面包括“衛(wèi)星對時”,“裝定參數(shù)”,“傳遞對準(zhǔn)”,“狀態(tài)查詢”等操作流程界面。
使用圖元化人機交互界面的開發(fā)方式,在客戶端利用圖元插件直接設(shè)計出所需界面文件,完成了新彈種操作流程界面的描述。同時,加入了相應(yīng)的界面控制文件,實現(xiàn)了彈種的選擇和顯示功能。在服務(wù)器端增加了彈種流程中各功能的業(yè)務(wù)邏輯處理代碼。開發(fā)耗時1個工作日,調(diào)試耗時0.5個工作日。調(diào)試過程中共發(fā)現(xiàn)4個軟件問題,但很快定位,問題得到解決。
使用傳統(tǒng)的界面開發(fā)方式,不能直接使用圖元庫中現(xiàn)有的圖元插件,彈種擴充后需要增加的“衛(wèi)星對時”,“裝定參數(shù)”,“傳遞對準(zhǔn)”,“狀態(tài)查詢”等操作流程界面均需要重新開發(fā)設(shè)計,在對業(yè)務(wù)非常熟悉的前提下,經(jīng)過實際編寫設(shè)計,開發(fā)耗時3.5個工作日,調(diào)試耗時2.5個工作日。調(diào)試過程中共發(fā)現(xiàn)12個問題,業(yè)務(wù)邏輯代碼和界面顯示代碼緊耦合,難以定位,問題雖得到解決,但耗時較長。
通過親測對比得到結(jié)果,如表2為兩種人機界面開發(fā)方式的開發(fā)效率對比表,表3所示為兩種人機界面開發(fā)方式下出現(xiàn)的軟件問題對比表。
通過以上對比分析,在客戶端/服務(wù)器信息處理與顯示模式下,圖元化界面設(shè)計方法將在業(yè)務(wù)邏輯處理與界面顯示相分離,并利用圖元庫中現(xiàn)有的圖元插件進行界面開發(fā),與傳統(tǒng)人機界面設(shè)計方法相比,開發(fā)效率更高,調(diào)試周期更短,軟件問題更少。因此,圖元化人機交互界面開發(fā)設(shè)計方法較傳統(tǒng)人機界面設(shè)計方法更具有優(yōu)勢。采用圖元化界面設(shè)計方法能夠提高火控系統(tǒng)軟件復(fù)用性和設(shè)計效率,增強軟件可擴展性,對火控系統(tǒng)人機交互界面的設(shè)計和開發(fā)具有重要的意義。
表2 開發(fā)效率對比表
表3 軟件問題對比表
本文對基于圖元的火控系統(tǒng)人機交互界面設(shè)計過程進行了較為深入的研究與開發(fā),實現(xiàn)了預(yù)期的功能,并對軟件的實現(xiàn)效果進行演示驗證。由于其特有的優(yōu)勢,界面圖元化的思想在火控系統(tǒng)中乃至兵器領(lǐng)域會有很好的應(yīng)用前景。具體來講,后續(xù)的研究工作主要按照下述方面展開:首先,由于時間關(guān)系和個人應(yīng)用經(jīng)驗不足,本文不能將火控系統(tǒng)所需各類界面都涉及到,以便形成一個更系統(tǒng),更完善的軟件界面集合,所以在以后的工作中,還需進一步對軟件界面進行添加完善并優(yōu)化設(shè)計;其次,現(xiàn)有顯示終端所使用到的圖元有一定的局限性,能夠滿足簡單畫面的顯示需求。然而,隨著火控系統(tǒng)人機交互界面的需求變化,或者是應(yīng)用到更多其他的顯示設(shè)備上,則要提供更多圖元部件的支持。因此,后期需要加入更多的圖元部件,在現(xiàn)有圖元庫的基礎(chǔ)上,進一步維護、擴充和完善圖元庫,相應(yīng)的研究與設(shè)計任務(wù)還比較重。
[1]陳春甫.基于DDS的數(shù)據(jù)分發(fā)系統(tǒng)的設(shè)計與實現(xiàn)[D].上海:復(fù)旦大學(xué)信息科學(xué)與工程學(xué)院,2008:13-25.
[2]Pardo-Castellote.DDS spec outfits publish-subscriber technology for the GIG[J].COTS,2005,30(4):50-55.
[3]李艷民.基于Qt跨平臺的人機交互界面的研究和應(yīng)用[D].重慶:重慶大學(xué),2007:14-18.
[4]方志剛.人機交互技術(shù)綜述[J].人類工效學(xué),1998,4(9):64-66.
Realization of the Human-computer Interaction Interface of Fire Control System Based on Graphic Element
MA Li,WANG Jian-guo,WEI Yong-yu,YAN Jian-peng,NING Wen-xue
(North Automatic Control Technology Institute,Taiyuan 030006,China)
In this paper,an interactive interface of fire control system based on graphic elements is proposed,in the client/server information processing and display mode,according to the actual requirements of the fire control system of man-machine interface design,a graphics element library required is designed.Then,a part of the UI interface is designed by using the graphic element library,the registration process of the UI interface and the design of the corresponding control files are completed,and the user operation is related to the data of the interface.Finally a display and control service and graphic element terminal is designed and built by using DDS communication protocol.By this way,the data transmission of the server and client is realized.At the same time,the interface display is separated from application program,logic processing and business process.This design can meet the modular and serialized development ideas,and be consistent with the idea of modular fire control system.
graphics element,human-computer interaction interface,modular fire control system,C/S architecture,DDS
E92;TJ02
A
10.3969/j.issn.1002-0640.2017.07.037
1002-0640(2017)07-0170-05
2016-05-05
2016-06-17
馬 莉(1989- ),女,山西霍州人,碩士研究生。研究方向:系統(tǒng)工程。