張 鵬
(中國船舶重工集團公司第723研究所,揚州 225001)
?
基于DeltaOS&QT的雷達終端的設計與實現
張 鵬
(中國船舶重工集團公司第723研究所,揚州 225001)
針對雷達終端要求的高實時性、高可靠性,提出了某雷達終端顯示控制系統的軟硬件設計方案。在設計方案中,顯示控制系統基于PowerPC微處理器,采用嵌入式實時操作系統DeltaOS,并利用跨平臺開發環境QT進行應用程序開發。測試表明該終端系統具有較高的實時性和可靠性,滿足相關應用需求。
DeltaOS;QT;雷達終端;PowerPC
隨著計算機技術的快速發展,嵌入式計算機在實際中的應用已十分廣泛。雷達終端是典型的強實時性應用系統,需使用嵌入式操作系統進行支持。現階段,廣泛采用的是Vxworks操作系統,在Vxworks系統支持下系統可靠性、實時性均可滿足用戶的需求。但現在應信息安全的考慮及國家對具有自主知識產權操作系統的支持,國產操作系統陸續推出,其中DeltaOS(道系統)便是其中的代表。
本文選用了PowerPC集成處理器為硬件基礎,結合DeltaOS嵌入式操作系統,采用可跨平臺開發環境QT進行可視化應用程序開發,討論了基于MPC8540集成處理器的雷達終端設計實現方案。
DeltaOS作為我國依靠自主技術力量開發的嵌入式實時操作系統,具有較高的成熟度,可提供基于優先級搶占的實時任務調度策略和動態加載功能,已陸續應用于軍工裝備軟件開發領域,并對硬件支持提供持續改進。DeltaOS主要包括:DeltaCORE(嵌入式內核,提供系統核心接口)、DeltaNET(基于TCP/IP協議族嵌入式網絡模塊),DeltaFILE(嵌入式文件模塊)以及DeltaGUI(嵌入式圖形模塊)。在DeltaCore和其他支持系統模塊之間,DeltaOS提供VxWorks接口兼容層,兼容多功能標準顯控臺標準配套模塊所使用的全部VxWorks操作系統接口,支持VxWorks5.5目標代碼的加載、運行,保障多功能標準顯控臺標準的沿用,保障基于多功能標準顯控臺所開發應用程序的快速移植[1]。DeltaOS系統架構如圖1所示。

圖1 DeltaOS組成
QT提供了一整套基于C++應用程序開發的集成開發環境(IDE),包括類庫以及用于跨平臺開發的通用工具。QT的類庫對應用程序開發所需要的所有基礎結構進行了封裝:包括了成熟的對象模型、內容豐富的集合類、圖形用戶界面編程與布局設計功能、數據庫編程、網絡、可擴展標記語言(XML)、國際化、OpenGL集成等,其中主要有QtGui、QtCort、QtNetWork及QtOpenGL4個模塊,提供了較為廣泛的開發能力,可對高性能、跨平臺的人機界面進行開發[2]。
QT提供了跨平臺開發工具QtCreator,它的主要功能優勢:使用強大的C++編輯器可快速進行代碼編寫;集成Perforce版本控制工具管理源代碼;為跨平臺開發人員提供量身定制(如QTDesigner)。一般情況下,可使用QTCreator+MinGW在Windows環境下進行用戶界面開發與調試,在開發完成后,用戶可以使用QT提供的商用化跨平臺開發工具(QT-commercial)進行特定平臺移植,達到快速開發并且降低平臺移植風險的目的。
雷達終端是雷達系統中必不可少的組成部分,其主要工作是為操作員提供與雷達系統的交互,實現對雷達的控制、設備狀態監視、探測目標觀測等功能。雷達終端主要包括了顯示模塊、控制模塊以及接口模塊3個部分。雷達終端系統采用了嵌入式實時操作系統DeltaOS,開發調試在QTCreator中進行[3]。
3.1 硬件總體設計
雷達終端由一塊PowerPC板組成,選用了MPC8540集成芯片,輸入電壓為1.5V和3.3V,集成了256kBL2cache,支持SIMD擴展,工作主頻800MHz,同時還集成了通訊處理模塊(CPM)。CPM分擔了內核外圍通訊工作。雷達終端的顯示控制板主要具有如下功能(如圖2所示):
(1) 具有上電、復位及掉電保護功能,并具有自檢、輸出自檢信號功能;
(2) 1路CAN實現雷達整機加電、高壓控制等功能;
(3) 1路USB總線實現觸摸屏控制、摸球控制功能;
(4)CPM提供網絡接口功能,RS422串口功能。

圖2 顯示控制板框圖
3.2 DeltaOS功能性能分析
DeltaOS內核DeltaCORE提供了12類共130多個系統調用,為多任務應用程序開發提供了基礎。本文主要就DeltaOS與Vxworks進行了比較,功能方面,針對于作戰應用軟件所用到的任務管理、內存管理、中斷管理、信號量、消息隊列、時間管理、看門狗定時器等功能,DeltaCORE與Wind(Vxworks內核)提供了相似的系統功能調用,能夠滿足具體應用要求。其功能比對如表1所示[4]。

表1 內核功能對比
實時性操作系統一般需對其創建啟用任務事件、中斷響應時間、任務切換時間、任務通信時間等來評估系統性能[5],因此,通過在內核調用前后向I/O口寫入信號,使用邏輯分析儀測量信號并計算時間差,測量結果如表2所示。

表2 內核性能對比
從表2中數據可看出,DeltaCORE和Wind內核性能相當,部分性能甚至略占優勢,其各指標響應時間和Wind內核均屬同一量級,因此,可滿足作戰應用軟件的需求。
3.3 顯示控制終端軟件功能設計
本雷達顯示控制終端主要包含綜合顯示、目標表頁顯示、顯示控制、雷達參數設置、雷達參數顯示、雷達系統操控6個軟件模塊。模塊劃分及功能流程設計如圖3、圖4所示。

圖3 終端軟件組成

圖4 終端軟件功能流程圖
綜合顯示功能主要完成PPI顯示,包括背景視頻、目標航跡、距標線、刻度、同步線、方標線等顯示;以及導航信息、時間信息等提示信息的顯示,提供操作員友好的人機界面,對雷達探測威力區內的情況進行觀測。
目標表頁顯示功能主要完成對目標參數以表頁形式進行顯示,包括對目標批號、方位、距離、航向、航速等信息的顯示,提供操作員目標航跡參數信息的實時更新顯示,為操作者判斷目標走勢提供直觀信息。
顯示控制功能主要完成對PPI顯示區控制,包括對顯示量程、顯示/隱匿、偏心顯示、航跡軌跡顯示、顯示顏色等進行控制,提供操作者良好的交互方式,可依據操作者觀察習慣進行定制。
雷達參數控制功能主要完成對雷達處理參數的設置,包括增益、多普勒頻率、工作頻點等設置,提供操作者快捷的人機交互。
雷達參數顯示功能主要完成對設置后的雷達參數顯示,與雷達控制功能相集成,對參數設置后的雷達工作參數進行顯示,提示操作者進行正確的操作。
雷達系統操控功能主要通過中間件對操控模塊進行控制,完成雷達工作模式、工作量程、伺服開關等控制,提供操作者可觸摸控制接口,對觸摸控制模塊的操作進行響應,并將狀態反饋于觸摸控制模塊。
雷達終端軟件使用QTCreator進行開發,通過GCC+QT的編譯環境,生成可執行目標代碼后,將目標代碼下載至目標機運行。運行后界面如圖5所示。

圖5 調試運行效果圖
DeltaOS為應用程序提供了必要的內核功能接口及高可靠性、高實時性,滿足了國產化課題的需要。QT提供了豐富的控件類庫, 并提供了便捷的窗口布局工具, 為設計不同的雷達顯示控制終端界面提供了高效、快捷的方法。因此,基于DeltaOS&QT下的雷達終端開發,不僅為開發者提供了便捷的開發方式,還為應用程序提供了高可靠性、實時性的運行環境。
[1] 張京.嵌入式軟件開發[M].西安:西安電子科技大學出版社,2008.
[2] 郭兵,熊光澤,陳麗蓉,蔡建平.嵌入式應用軟件環境DeltaOS/LamTool的設計與實現[C]//第十屆全國抗惡劣環境計算機學術年會,2001:28-31.
[3] 朱秉穎.基于嵌入式GUI雷達控制系統人機界面設計[J].現代雷達,2007,29(3):52-55.
[4] 李陽,曹萬華.基于DeltaGUI的雙屏顯示技術研究[J].艦船電子工程,2004,24(6):82-84.
[5] 劉云生,徐超.TOS實時性能測試[J].計算機工程與應用,2004(11):93-95.
DesignandRealizationofRadarTerminalBasedonDeltaOS&QT
ZHANGPeng
(The723InstituteofCSIC,Yangzhou225001,China)
Aimingatthehighreliabilityandstrongreal-timeresponsecapabilityofradarterminal,thispaperputsforwardthesoftwareandhardwaredesignschemefordisplayandcontrolsystemofacertainradarterminal.Inthescheme,thedisplayandcontrolsystemisbasedonPowerPCmicroprocessor,thereal-timeoperatingsystemDeltaOSisadopted,theapplicationisdevelopedbymeansofthecross-platformdevelopmentenvironmentQT.Thetestresultshowsthattheterminalsystemisprovidedwithhighreliabilityandstrongreal-timeresponsecapability,issatisfiedwiththeapplicationrequirement.
DeltaOS;QT;radarterminal;PowerPC
2016-02-22
TN
A
CN32-1413(2016)03-0090-03
10.16426/j.cnki.jcdzdk.2016.03.023