樹人論文發表網辦的非常成功,極具口碑。在這里,你可以找到最具時事性的文章和最具代表性的各類文章。當然,因為免費和開源,大家都可以學習、借鑒和共同使用,如果你需要專屬于個人的原創文章,請點擊鏈接獲得專業文秘寫作服務。
摘要:針對彈載飛行控制軟件研制現狀,探討軟件重用的目的、意義及技術途徑;結合彈載飛行控制軟件的組成和設計原則,分析可重用軟件應滿足的基本條件;提出一種基于領域工程的彈載飛行控制軟件重用實施方法;從軟件工程化要求、編碼要求、軟件測試要求和硬件設計要求等方面建立彈載飛行控制軟件通用構件庫的可重用構件選取標準。最后,用實例說明了彈載飛行控制軟件重用的可操作性。
關鍵詞:彈載飛行控制軟件;軟件重用 ;可重用構件
0引言
我國航天事業正處于高速發展時期,型號發射任務密集,對彈載飛行控制軟件研制周期提出了更高要求。開發人員往往迫于項目壓力,優先進行軟件產品開發,而忽視軟件重用問題。當前彈載飛行控制軟件研制實行項目管理,不同項目團隊開發的軟件框架不同,開發人員所使用的數據結構也不同,軟件重用難以推廣。此外,不同型號彈載計算機硬件平臺的不同,也直接導致了底層驅動軟件的不可重用。
1彈載飛行控制軟件重用
1.1軟件重用的目的和意義
早期的彈載計算機電路是由模擬電路搭建而成的,隨著電子技術的發展,彈載計算機電路設計實現了數字化,彈載飛行控制軟件研制快速興起。但受現實條件的約束,每個型號彈載飛行控制軟件研制都不得不重復編碼、測試、調試、編寫文檔、系統聯調等工作。
當前彈載飛行控制軟件研制工作量大、時間緊、任務重,從開發效率、企業成本,以及軟件工程化、標準化、軟件測試等角度考慮,實施彈載飛行控制軟件重用迫在眉睫。彈載飛行控制軟件不同于其它商業軟件,需要找到符合自身特點的重用技術途徑和實施方法。
1.2軟件重用的技術途徑
軟件重用的技術包括庫函數、模板、面向對象、設計模式、組件、框架、構架等。圖1為軟件重用的主要技術、實現途徑以及實例。
面向對象技術主要針對使用面向對象的語言開發的軟件,彈載飛行控制軟件作為嵌入式軟件,一般采用C語言,或者C語言和匯編語言混合編程進行開發。因此,可以綜合考慮庫函數、模板、構件、架構、框架等技術途徑,選取符合彈載飛行控制軟件自身特點的重用方法。
構件、架構、框架三者呈現層次遞進的關系,同時又存在交集。對于彈載飛行控制軟件而言,可以將各函數單元劃分為功能構件;架構主要指軟件的組織結構,即邏輯時序和構件的調用關系;框架則可理解為工程的文件目錄結構,包括頭文件的定義和引用關系等。只有正確理解上述概念,才能正確區分彈載飛行控制軟件的構件、架構和框架,為重用打好基礎。
1.3可重用軟件
重用最重要的是要有可重用的軟件。導彈分類方法較多,如根據作戰使命不同可分為戰略導彈和戰術導彈;根據發射載具不同可以分為空空導彈、面空導彈等;根據制導體制不同可以分為雷達制導導彈、紅外制導導彈等。不同類型導彈其彈載飛行控制軟件研制任務需求和彈載計算機硬件平臺不盡相同,底層驅動,接口協議,算法模型等較難重用。同一類型導彈彈載飛行控制軟件的研制需求和彈載計算機硬件平臺往往具有共同特性??梢詮目傮w需求層次區分出不同的軟件系統,新研彈載飛行控制軟件可以在同一系統類型的彈載飛行控制軟件的基礎上加以改進。
從系統角度來講,可重用的彈載飛行控制軟件應滿足以下條件:①軟件模塊劃分及其框架、架構布局合理;②軟件運行的硬件平臺DSP及數據接口選型標準;③通信協議制定規范。以上3個條件也是對軟件控制算法功能模塊劃分、軟件運行硬件平臺和通信協議提出的通用化要求。
除此之外,結合航天特點,可重用的彈載飛行控制軟件相關配套文檔要齊備;軟件必須通過單元測試、確認測試和第三方評測,所發現的問題都已經改正且通過回歸測試。此外,應經過型號研制所有階段的飛行試驗驗證。
2彈載飛行控制軟件組成與設計原則
彈載飛行控制軟件通常由底層硬件驅動軟件、接口協議層軟件和應用層軟件組成。其中,底層硬件驅動軟件主要完成硬件端口的初始化,設備自檢和數據輸入輸出控制;接口協議層軟件主要完成數據組包發送和接收解包;應用層軟件主要完成制導控制計算和指令形成計算。上述3層軟件由時間驅動的事件響應機制,即彈上時序和邏輯控制來實現任務調度。彈載飛行控制軟件組成如圖2所示。
彈載飛行控制軟件具有實時性高、時序和邏輯復雜,可靠性強的特點。其設計需遵守以下原則:
(1)自頂向下的原則。即在確定彈載計算機硬件平臺的前提下,首先確定軟件的基本結構,然后細化到實現這些功能的每一個具體的軟件模塊,形成詳細的軟件開發卷宗,直至定義某一個具體的函數、變量和指針,使設計做到有條不紊,開發過程清晰明了,從宏觀上把握軟件設計質量。
(2)結構化設計原則。包括程序和數據的結構化設計。通過細化軟件模塊,形成由所有軟件模塊按照一定的接口關系和數據交換關系構成的軟件結構,做到結構完整,易讀、易查、易測試。
(3)針對彈載計算機的實時性應用特點,以導彈工作時序為主線,進行合理的實時任務調度,通過彈載計算機系統在規定時間內可靠地完成設計任務。
3彈載飛行控制軟件重用方法
彈載飛行控制軟件與其它商業軟件不同,必須探索出一條符合航天型號軟件特點的重用途徑。近年來,相關研究成果豐富。2006年,北京航天自動控制研究所孟小韋、馬衛華[1]認為,可以從模塊級和任務級兩個方面來進行軟件通用化設計,并提出了開發飛行控制軟件集成開發工具原型。2007年,中國空間技術研究院提出了可重的星載軟件構件應具有的基本特性[2]。2011年,上海衛星工程研究所提出了基于(I/O層、軟件總線層和應用層)層次框架的星載軟件重用方法[3]。
領域工程強調為一組相似或相近系統的應用建立基本能力和必備基礎(包括產品空間、構件、體系結構)的過程,是實現構件獲取和重用的有效方法[4]。相關研究表明,相似領域的軟件更容易重用。在彈載飛行控制軟件重用過程中,可以根據導彈系統類別從縱向領域確定可重用軟件系統框架和架構,進而根據軟件總體研制需求從橫向領域選擇可重用的構件。
因此,從領域工程的角度出發,可以按照領域分析、領域設計、領域實現3個活動過程來實施彈載飛行控制軟件重用,如圖3所示。具體步驟如下:
第一步:領域分析。分析彈載飛行控制軟件的系統類別,獲得領域模型;參照導彈種類劃分,如戰術和戰略、空空和面空、雷達制導和紅外制導等區分彈載飛行控制軟件;同時兼顧彈載計算機硬件平臺,確定軟件領域模型,即可重用軟件選型。
第二步:領域設計。按照軟件研制任務需求,確定軟件框架,設計軟件架構。不同領域模型的軟件架構可能有所不同,但是軟件框架基本相同。因此,可以在選擇好可重用軟件的基礎上進行框架和架構設計。
第三步:領域實現。將滿足需求的功能構件組成軟件系統。
4彈載飛行控制軟件可重用構件標準
一套可重用軟件不一定包含所有的可重用構件。從圖2可以看出彈載飛行控制軟件組成層次和功能模塊,可在此基礎上,建立可重用的彈載飛行控制軟件可重用構件庫,該庫由彈載飛行控制軟件的功能模塊(構件)組成。
4.1軟件工程化要求
航天系統從1996年開始,就已從標準化和加強測試入手,推行航天型號軟件的工程化開發。1998年召開的航天系統第四次責任人會議提出提高航天型號軟件質量,全面加強航天型號軟件產品開發,初步確立了型號軟件的管理體制,并著手確定箭(星)載計算機的選型,確定了統一型號軟件的運行環境[5]。
小編推薦優秀電子論文 電子論文代理機構淺析對膠帶機控制系統
【摘 要】結合現場膠帶機的實際情況及經常出現的設備故障,對膠帶機的控制系統做了改造,主要有:膠帶機啟停機控制原理的改造、膠帶機的控制中增加下游皮帶打滑保護的改造。
【關鍵詞】控制系統 啟停機控制 堵料 打滑
論文指導 >
SCI期刊推薦 >
論文常見問題 >
SCI常見問題 >