張 貞,茅 坪
(海軍研究院,上海 200436)
電子飛行包是飛行人員的一種飛行輔助工具[1],是在駕駛艙使用的電子顯示系統(tǒng),可以進行各個飛行階段的計算和檢查工作,如瀏覽電子航圖、查詢氣象資料、顯示情報信息、執(zhí)行油量計算等[2-3]。近年來,美國空軍已經為C-5、C-17、C-130、KC-10、KC-135等多個型號的大約1160架戰(zhàn)機和16000多名機組人員提供了基于iPad的電子飛行包服務,從而極大地提升了飛行安全性和工作效率[4]。
目前,我國軍機飛行員大多仍舊使用紙質飛行圖囊,部分運輸機上會使用平板電腦進行一些數(shù)據(jù)航圖資料的查詢,但不具備飛行計劃制定、飛行數(shù)據(jù)計算等功能,因此急需裝備軍用電子飛行包以減輕飛行員工作負擔,提高工作效率。在高速飛行狀態(tài)下,飛行員通常是通過周邊鍵方式同軍用機載設備進行人機交互,以保證機載設備響應快捷,可靠性高,從而提升機載設備的使用效能。本文即是圍繞軍用電子飛行包的周邊鍵進行設計和驗證[5-7]。
周邊鍵是飛行員與電子飛行包進行交互的樞紐,是電子飛行包至關重要的組成部分[8]。本文采用物理按鍵和虛擬按鍵相結合的設計方式,使用按鍵功能復用的設計思想,利用串口數(shù)據(jù)通信和C++面向對象程序設計語言,設計并開發(fā)出了支持多級按鍵相關聯(lián)的菜單式周邊鍵,系統(tǒng)總體工作流程如圖1所示,系統(tǒng)外觀如圖2所示。
圖1 周邊鍵總體工作流程Fig.1 Overall workflow of peripheral key
圖2 周邊鍵硬件設備及按鍵編號Fig.2 Peripheral hardware and key number
具體步驟如下:
(1)數(shù)字電路板與顯示計算機通過USB接口連接,并利用該接口進行數(shù)據(jù)傳輸和供電。
(2)按鍵信號采集程序采用線程循環(huán)方式,實時監(jiān)測數(shù)字電路板上物理按鍵的狀態(tài)。
(3)當物理按鍵被按下時,信號采集程序將物理按鍵觸發(fā)的數(shù)字信號傳遞到按鍵功能識別算法中,該算法通過按鍵的等級和按鍵被按下的先后次序,計算出需要執(zhí)行的功能。
(4)顯示界面調用程序接收按鍵功能識別算法計算的結果,從待顯示界面中,調用當前需要的界面,在顯示器與物理按鍵相對應的位置,顯示虛擬按鍵。
(5)由于顯示屏是觸摸屏,當點擊虛擬按鍵時,虛擬按鍵產生的數(shù)字信號和其對應的物理按鍵產生的數(shù)字信號一樣,此時系統(tǒng)跳轉到步驟(2)中。
(6)待顯示界面采用隊列的方式,對多個界面進行顯示和隱藏狀態(tài)的管理。
通過上述設計,無論飛行員按壓的是物理按鍵還是虛擬按鍵,系統(tǒng)都執(zhí)行同樣的功能,從而達到虛實結合的效果。實際飛行中飛行員主要操作物理按鍵,虛擬按鍵主要通過文字或符號提示飛行員當前按鍵對應的功能,避免戰(zhàn)機抖動時的無效操作或誤操作。
電子飛行包周邊鍵由32個按鍵組成,每個按鍵與電路板上的觸發(fā)按鈕相連接,并采用高強度材料進行封裝,周邊鍵包圍的區(qū)域,是一臺觸摸屏電腦,可使用Surface、iPad、華為Pad等便攜式觸摸屏電腦。周邊鍵通過RS-485通信接口與顯示主機的USB接口相連,采用全雙工方式與電腦設備進行數(shù)據(jù)傳輸。為方便描述,為每個按鍵進行了命名,命名規(guī)則為從上到下、從左到右,以單詞Key的首字母K開頭,如圖2所示。當某一按鍵被按下時,硬件設備會產生一個數(shù)字信號,每個按鍵的編號及產生的數(shù)字信號值如表1所示。
表1 按鍵所產生的數(shù)字信號值Tab.1 The value of the digital signal generated by the keystroke
該程序主要負責采集硬件設備觸發(fā)的數(shù)字信號,并將采集到的數(shù)字信號以Socket網(wǎng)絡通信的方式發(fā)送到按鍵功能識別算法中。該程序的工作流程為:軟件啟動后將開辟一個線程,該線程實時監(jiān)控與硬件設備所連接的串口,當按鍵狀態(tài)發(fā)生變化產生數(shù)據(jù)時讀取該數(shù)據(jù),并采用UDP協(xié)議將采集到的數(shù)據(jù)發(fā)送到按鍵功能識別算法中,僅當采集到數(shù)據(jù)時才執(zhí)行網(wǎng)絡發(fā)送命令,沒有采集到數(shù)據(jù)時不進行發(fā)送。
該算法實現(xiàn)按鍵所觸發(fā)的數(shù)字信號值與待調用軟件具體功能的匹配,其難點在于周邊鍵功能的復用。該算法借鑒軟件菜單的設計思想,使用按鍵分級和功能分級策略,采用樹狀結構,將按鍵分為一級、二級、三級按鍵;將軟件功能分為一級、二級、三級功能,其中每一級按鍵對應每一級功能。按鍵分級策略為:一級按鍵,包括頂部按鍵6個,底部按鍵6個,按鍵編號區(qū)間為[k01,k12],這些按鍵在軟件的整個生命期都有效;任意時刻,有且只有一個按鍵生效,生效按鍵為一級按鍵的當前按鍵,其他按鍵為一級按鍵的未生效按鍵;系統(tǒng)啟動時,默認編號K01的按鍵為當前按鍵。一級按鍵可以擁有多個子鍵(二級按鍵),在K01鍵生效時,二級按鍵都是它的子鍵。二級及三級按鍵的策略同一級按鍵,按鍵分級關系如圖3所示。
圖3 按鍵分級及關系Fig.3 Keystroke grading and relationship
采用按鍵分級之后,三個級別的按鍵最多具有12×10×10=1200種組合,若每個組合對應一種功能,則可對應1200種功能,能夠滿足電子飛行包功能設計的需要。
對應于按鍵分級,按鍵功能響應策略為:一級功能,該級功能對應于待調用軟件模塊級別的功能,是系統(tǒng)的頂級功能。當某個一級功能被激活時,系統(tǒng)的界面切換到該功能對應的模塊。任意時刻,有且只有一個一級功能被激活,激活的功能為一級功能的當前功能,其他功能為一級功能的未激活功能;一級功能可以包含多個子功能(二級功能)。二級和三級功能的響應策略同一級功能。整個軟件系統(tǒng)的功能及與按鍵的關聯(lián)如表2所示,用戶可以根據(jù)實際情況對功能及按鍵進行擴展和調整。
該程序負責顯示器中可視化界面管理和切換。程序啟動后,將系統(tǒng)需要使用的所有軟件都打開,并將軟件的窗口設置為隱藏狀態(tài)。當程序接收到某條命令后,找到該命令對應的窗口,將該窗口置頂,設置為顯示狀態(tài),同時將其他窗口設置為隱藏狀態(tài)。該程序也負責周邊鍵文字提示窗口的管理,同一周邊鍵在不同時刻所對應的功能不一樣,系統(tǒng)需要根據(jù)周邊鍵的當前功能動態(tài)更新周邊鍵的文字提示。系統(tǒng)為表2中的每一種功能都創(chuàng)建了文字提示窗口,并將窗口背景設置為半透明,通過移動窗口位置的方式確保其顯示位置與物理周邊鍵相對應,待調用的功能軟件界面顯示在該半透明提示符號的下層。周邊鍵功能改變時,實現(xiàn)文字提示的動態(tài)切換。生效周邊鍵的文字提示窗口背景為紅色,未生效周邊鍵的文字提示背景為藍色,以示區(qū)分。
表2 軟件功能與周邊鍵的對應關系(限于篇幅,僅列出部分對應關系)Tab.2 Corresponding relationship between software functions and peripheral keys
由于電子飛行包設備只有單個屏幕,而飛行員在各個飛行階段需要調取的數(shù)據(jù)和資源并不一致,使用的軟件功能也各不相同,因此需要對這些軟件的界面進行統(tǒng)一管理,并將其歸類為待顯示界面,本系統(tǒng)所設計的待顯示界面包括二維航圖、三維視景、多屏顯示、文件管理、高度計算、領航計算、轟炸計算、靶場計算、飛行計劃、桌面鍵盤、系統(tǒng)設置、退出系統(tǒng)等12個窗口,每個窗口分別與一級周邊鍵相對應。
采用本文的思路和方法,設計出電子飛行包系統(tǒng)的周邊鍵,并對其進行試驗,試驗參數(shù)分別為:(1)硬件設備:自制周邊鍵設備、RS485數(shù)據(jù)線、Surface Pro4;(2)操作系統(tǒng):Windows10 64位,版本號1903;(3)CPU及內存:Intel酷睿i7 6650U,16G DDR4內存;(4)顯卡:Intel GMA Iris 540;(5)波特率:115200;(6)待顯示界面:二維航圖、三維視景、多屏顯示、文件管理、高度計算、領航計算等12個界面。
圖4為電子飛行包系統(tǒng)的二維航圖功能顯示效果,該功能為電子飛行包系統(tǒng)的一級功能,對應一級周邊鍵K01,該周邊鍵對應的文字提示為紅色,說明當前該周邊鍵生效。按下其他周邊鍵,對應顯示相應功能。
圖4 二維航圖界面Fig.4 Two-dimensional aerial map interface
試驗步驟如下:
(1)開發(fā)出相關的待顯示軟件,并安裝在Surface Pro4中,構建出電子飛行包設備。
(2)使用RS485數(shù)據(jù)線實現(xiàn)周邊鍵和電子飛行包設備的連接。
(3)啟用周邊鍵運行所需要的按鍵采集程序、顯示界面調用程序和待顯示界面程序。
(4)按照前期設定按鍵與功能對應關系,依次按下指定的實體按鍵或虛擬按鍵。
(5)查看顯示結果與前期設置的是否一致。
本文將物理周邊鍵和虛擬周邊鍵有機結合,結合按鍵可重復使用設計思路,設計出了滿足軍用電子飛行包需求的周邊鍵設備,并通過試驗驗證了周邊鍵的有效性和可靠性,設備具有結構簡單、使用方便、易于擴展的特點,可擴展應用到其他便攜式穿戴設備中。