董伯佺
摘要:隨著綜合化航空電子系統的飛速發展,機載顯示軟件的安全性、可靠性、高效性已成為嵌入式技術應用的瓶頸。同時,隨著座艙顯示的人機工效要求不斷提高,多通道的人機交互成為發展熱點。本文研究了SCADE高安全性應用程序開發環境的特點和使用方法,結合顯示軟件觸控功能的應用,介紹了一種基于SCADE的觸控顯示軟件開發應用方案,并在實際的工程應用中得到了充分的驗證,該方案有助于縮短軟件開發周期,提高軟件質量,并能達到良好的人機交互效果。
關鍵詞:航空電子;嵌入式軟件;圖形化建模;SCADE;代碼自生成
一、概述
隨著綜合航電系統的迅速發展,作為航電系統中重要組成部分的座艙顯示系統也向著開放式構架發展,為適應這種發展趨勢,使得顯示模型和接口應用分離開發的方式應運而生,并得到了迅速發展。通過提供標準化的接口,將座艙顯示系統的畫面生成功能與用戶應用的邏輯功能相隔離,SCADE Suite用于設計關鍵軟件,應用于航空航天、鐵路、能源、汽車或工業等不同領域。本文介紹的設計方案通過使用SCADE簡化關鍵控制應用設計,以及驗證、可認證/認證級代碼生成和文檔生成的自動化,可以大大降低項目成本。采用SCADE Suite KCG代碼生成器自動生成的代碼滿足DO-178B標準A級和DO-178C標準的軟件質量認證。
二、觸控顯示系統軟件架構設計
本文中,將觸控顯示系統分為應用邏輯模塊和顯示模型模塊兩個部分。應用邏輯負責實現座艙顯示畫面的生成功能,同時為外部輸入設備提供數據接口,而顯示模型程序為應用邏輯提供源數據和用戶交互操作的邏輯處理。系統啟動后,應用邏輯模塊和顯示模型模塊加載并解析設計定義接口文件,之后通過應用邏輯完成顯示畫面的邏輯處理和畫面信息的實時更新工作。
觸控顯示系統包括觸摸組件、應用邏輯、接口定義文件和顯示模型,各模塊功能如下:
1) 觸摸組件模塊,用于定義和管理操作員對觸屏的操作行為,當操作員對觸屏進行操作時,實時將觸點的屏幕坐標、操作行為的狀態發送至CDS內核;
2) 顯示模型模塊,用于接收和處理觸摸組件模塊發送的觸屏操作信息,接收應用邏輯模塊發送的指令并解析,向應用邏輯模塊發送消息,渲染顯示畫面和管理所有窗體部件;
3) 接口定義文件模塊,用于設計的定義文件,是顯示模型模塊和應用邏輯模塊通信的接口定義;
三、基于SCADE的系統設計
(一)工具簡介
SCADE(Safety-Critical Application Develop-ment Environment)是高安全性的應用程序開發環境,該開發環境由法國Esterel Technologies公司研制,是符合歐洲航空業DO-178B標準的嵌入式軟件工具包。它針對嵌入式軟件的特點,運用Correct by Construction理念,提出基于SCADE模型的圖形化軟件開發方式,涵蓋了從軟件需求、設計到編碼實現的整個開發流程。SCADE開發環境提供的一系列開發工具,實現了直觀的圖形化需求建模功能,基于模型的仿真驗證和軟件測試功能,以及基于模型的標準C代碼和開發文檔的自動生成功能。
(二)模塊組件設計與實現
觸控顯示系統對顯示畫面位置的管理一般通過操作按鈕窗體部件向應用邏輯模塊發出指令,應用邏輯模塊響應后對顯示畫面進行切換或重置圖層顯示位置。運用這種方法,在設計顯示畫面時需要包含較多的按鈕窗體部件。本文提供一種顯示器全畫面區域隨屏幕觸點實時響應的設計方法,該方法不需要使用按鈕窗體部件,而是利用SCADE Display中定義的窗體部件,通過應用邏輯模塊和顯示模型間指令交互,在觸摸敏感的顯示器上全畫面局部區域內隨屏幕觸點實時響應的功能。該方法節約顯示畫面空間,簡化定義文件和應用邏輯的設計,畫面控制也更加方便靈活。根據觸控顯示系統的總體架構,本文提供的方法由觸摸組件應用設計、顯示模型設計、應用邏輯模塊設計三個部分組合實現。
四、系統集成
開發完成CDS和對應的UA指令交互邏輯設置。系統初始化階段,實例化所有窗體部件,并對各參數值進行初始設置。之后系統進入動態運行階段,觸摸組件實時監控觸摸屏狀態,如操作員有操作行為,則將觸屏信息發送給顯示模型組件。在SCADE SUITE中編譯應用邏輯組件的代碼,同時在SCADE DISPLAY中完成顯示模型,將應用邏輯和顯示模型聯合編譯后,完成觸控顯示系統的構建。假設座艙顯示器畫面設計劃分為幾個區域,操作員要移動其中一塊畫面區域,只需用手指接觸該區域,然后在屏幕上滑動,即可實現該區域畫面跟隨手指觸點實時移動。
五、結束語
本文基于SCADE工具編譯應用邏輯和顯示模型,研究設計了一套集成觸摸功能的顯示系統,利用工具中定義的窗體部件,通過應用邏輯和顯示模型間指令交互,在觸摸顯示屏上實現畫面區域隨觸點實時移動的功能,該觸控顯示系統已應用于某先進飛機座艙顯控系統。實踐證明,該系統設計合理,運行可靠,畫面區域可隨觸摸點實時移動,使畫面控制更加方便、靈活,該方法不但提高了軟件的開發效率,增加了安全性,同時降低了開發成本。
參考文獻:
[1]黃鳴豐,孫永榮,孫旭東等. 航空座艙顯示系統內核設計研究[J]. 現代電子技術, 2011, 34( 19) : 205-207.( HUANGM F,SUNYR,SUNXD,et al. Research on kernel design of aviation cockpit display system[J]. Modern
Electronics Technique, 2011, 34( 19) : 205- 207.)
[2]NAVARRED,PALANQUEP,LADRYJF,et al. An architecture and a formal description technique for the design and implementation of reconfigurable user interfaces[C]Interactive Systems,Design,Specification,and Verification,The 15th International Workshop, 2008: 208-224.