楊 娜,鄒 勇,康雋睿
(中國兵器工業第203研究所,西安 710065)
傳統武器系統的發控系統設計基本上都是采用PC104作為硬件開發平臺,軟件基于DOS進行開發。隨著武器系統的發展,對發控系統的可靠性和實時響應能力的要求也越來越高,而傳統的設計方式無法滿足新的多任務的要求,同時也為了方便軟件的調試、升級,采用多任務的嵌入式實時操作系統進行發控系統的設計成為推進武器系統發展的一個重要手段。采用PC104作為硬件開發平臺時,為了滿足發控系統的性能需要,需要將各種板子堆棧起來,這樣導致體積大、功耗大。而采用PowerPC作為硬件開發平臺時,可以輕松的將滿足功能要求的芯片都集成在一塊板子上,節省了箱體的體積,降低了功耗。與DOS相比,DeltaOS具有多任務處理能力,可降低系統的復雜性,保證系統的實時性、可維護性及系統間的可移植性。
以PowerPC微處理器為基礎,結合嵌入式實時操作系統DeltaOS,研制了基于MPC8280微處理器的發控系統。介紹了該發控系統的軟硬件設計方案及調試工具。
PowerPC嵌入式微處理器是一種高性能、低功耗的RISC(精簡指令集)芯片。20世紀90年代,由IBM、Apple和Motorola公司成功開發了PowerPC芯片,并制造出基于PowerPC的多處理器計算機。PowerPC處理器有非常強的嵌入式功能、較低的能量損耗以及較低的散熱量。PowerPC架構可伸縮性好、方便靈活[1]。
在發控系統中采用的PowerPC處理器是由FREESCALE公司開發的MPC8280,MPC8280是一款16/32位RISC結構的低成本高性能微處理器,這款產品采用FREESCALE公司的內核,支持嵌入式片內斷點仿真調試。
DeltaOS是目前我國依靠自己的技術和力量自主開發的最成熟的嵌入式實時操作系統,以良好的可持續發展能力、高性能的內核以及友好的用戶開發環境,在嵌入式實時操作系統領域占一席之地。DeltaOS主要包括:具有高可靠性和實時性的內核DeltaCORE,嵌入式TCP/IP DeltaNET,嵌入式文件系統DeltaFILE以及嵌入式圖形接口DeltaGUI。DeltaOS可以嵌入到32位CPU為核心的各種電子設備中。作為應用程序運行的支撐環境,DeltaOS所提供的各種機制可以使電子設備中的應用程序在多任務環境下運行,同時滿足開發人員在開發電子設備時的基本需求,比如:實時響應外部事件、存儲管理以及聯網需求等。DeltaOS已成功地應用于消費電子產品、通信產品、工業控制及軍用電子產品中。
發控系統是武器系統中必不可缺的一部分,其工作環境是一個與地面各控制系統、彈載計算機系統進行信息交互、通信,并且受到時間約束的環境。發控系統是用來完成導彈發射前準備、發射導彈、操縱控制導引頭指向目標、控制導彈按導引律飛行的成套裝置[2],由發控電子箱(含操控單元和解算單元)、顯示控制箱(顯控單元)、點火選彈箱、左手柄、右手柄、射手控制盒、射手顯示器和配套電纜組成。
發控系統采用嵌入式實時操作系統DeltaOS,調試開發工作在開發環境LambdaPRO中進行。
發控系統包含三塊PowerPC板,操控板、解算板、顯控板,三塊板子均選用內核電壓僅為1.5V,IO電壓3.3V的低功耗 MPC8280處理器,工作頻率450MHz,并集成了一個通信處理模塊(CPM),CPM分擔了嵌入式PowerPC核的外圍工作任務,這種雙處理器體系結構功耗要低于傳統的體系結構處理器,效率也得到了提高。PowerPC板還集成了控制電路、輸入輸出接口和存儲器等嵌入式硬件,搭建了一個基于PowerPC處理器的高性能硬件平臺。
操控板具有如下功能:
1)具有上電自動復位功能、掉電保護功能、復位自檢功能,并輸出自檢結果信號;
2)三路CAN接口,一路接入彈上CAN網絡,實現與彈載計算機的信息交互;一路接入地面CAN網絡,實現與地面相關子系統(包括綜合管理器、定位定向、指揮終端、伺服、周觀、駕駛員終端、圖像跟蹤器、端機和智能配電箱)的信息交互;一路接入發控系統的顯控單元和解算單元,實現與顯控單元和解算單元的信息交互;
3)三路RS422,用來實現與兩個射手控制盒、點火選彈箱的信息交互;
4)24路I/O,用來查詢8個有無彈信號、8個開蓋信號以及8個切線信號。
解算板具有如下功能:
1)具有上電自動復位功能、掉電保護功能、復位自檢功能,并輸出自檢結果信號;
2)一路CAN接口,用來實現與發控系統的操控單元進行信息交互。
顯控板具有如下功能:
1)具有上電自動復位功能、掉電保護功能、復位自檢功能,并輸出自檢結果信號;
2)一路CAN接口,用來實現與發控系統的操控單元進行信息交互;
3)一路RS422,用來實現顯示器的4個不同頁面(綜合顯示頁面、觀瞄頁面、態勢頁面以及導引頭頁面)的切換。
操控板系統框圖如圖1所示,解算板系統框圖如圖2所示,顯控板系統框圖如圖3所示。

圖1 操控板系統框圖

圖2 解算板系統框圖
發控軟件根據嵌入式軟件的設計思想把發控軟件分為BSP(硬件驅動程序)和應用程序兩部分。
1)BSP(硬件驅動程序)。其目標是在組成發控系統的硬件與在發控系統中運行的應用程序之間提供一個固定的接口。該接口可用來在未知系統硬件和運行狀態的情況下對應用軟件進行開發。大多數硬件可以在對應用軟件無任何影響的情況下變更,BSP的存在保證了系統應用軟件的高效運行。BSP包括對應用軟件的控制、調度和對I/O過程的局部參與的控制。通過BSP,應用軟件在邏輯上與硬件隔離。

圖3 顯控板系統框圖
發控軟件中的BSP包括串口驅動、CAN口驅動、I/O 驅動、顯卡 驅動、定時器驅動。

圖4 應用程序調用硬件驅動程序
在嵌入式系統中調用BSP通常有三種方式:應用程序直接調用、應用程序通過操作系統內核調用以及應用程序通過操作系統的擴展模塊進行調用。發控系統軟件中采用了這三種調用方式,圖4所示為應用程序調用硬件驅動程序。

圖5 軟件設計流程圖
2)應用程序。主要目標是通過調用底層軟件完成發控系統相應的功能。應用程序與硬件在邏輯上是隔離的,因此當整個軟件完成以后,如果硬件設計方面不理想而需要改動時,只需改動BSP即可,由此極大地方便了軟件的維護性以及系統的升級。在保證系統實時性和可靠性的前提下,采用多任務調度及時間片輪轉的方法,多任務劃分的原則有:I/O依賴性原則、時間關鍵性的功能原則、大計算量的功能原則、功能內聚原則、時間內聚原則、周期執行的功能原則。根據多任務劃分的原則,發控系統操控單元的任務劃分為:CAN任務、串口任務、I/O 任務;解算單元的任務劃分為:CAN任務、解算任務;顯控單元的任務劃分為:CAN任務、串口任務、GUI任務。軟件設計流程圖如圖5所示。對于操控單元、解算單元和顯控單元的流程圖只需要依次替換圖5中的任務即可。

圖6 系統的集成調試過程
采用Abatron公司的BDI3000進行在線調試應用程序,可進行單步調試、全速運行、斷點設置、觀察點和跟蹤點設置、寄存器、內存和堆棧察看、命令行接口等,使開發者可以迅速方便的實現軟件的調試。
發控系統軟件在LambdaPRO中使用C語言開發,進行調試的步驟如圖6所示。
發控系統通過采用嵌入式實時操作系統DeltaOS實現和管理系統,構建了一個基于MPC8280處理器的高性能計算、管理平臺,以滿足系統的高速響應和實時特性。通過對處理單元進行軟件編程就可滿足各種系統功能,具有很強的擴展能力和通用性,同時也有較好的可靠性和抗干擾能力,為將來實現復雜的控制提供了高性能的計算和管理平臺。經測試、電氣聯試、仿真以及外場試驗表明,系統在復雜惡劣環境下,具有較高的實時性和可靠性,完全滿足設計技術要求。
[1]張京.嵌入式軟件開發[M].西安:西安電子科技大學出版社,2008.
[2]趙育善,吳斌.導彈引論[M].西安:西北工業大學出版社,2006.
[3]羅蕾.嵌入式實時操作系統及應用開發[M].北京:北京航空航天大學出版社,2005.
[4]李朋銅.嵌入式設計及通信設備開發詳解——基于MPC82XX處理器[M].北京:機械工業出版社,2009.
[5]DeltaGUI3.0編程手冊[Z].北京科銀京成技術有限公司,2006.