基于SCADE的嵌入式軟件開發
下面根據模塊功能,對系統模型進行了進一步劃分,主要分為以下幾個模塊:
(1)飛行狀態條件計算模塊Condition.其輸人為彈體姿態和彈目相對位置信息,以及兩個常數參數,輸出為三個飛行狀態變化的條件。
(2)飛行狀態判斷模塊Fly-State.其輸人為三個狀態變化條件變量,輸出為三種狀態標志。
(3)導引指令坐標系轉換模塊Transition.其輸入為彈體姿態和慣性系下比例導引指令,輸出為彈體系下比例導引指令。
(4)過載計算模塊Acceleration.其輸入為三個飛行狀態標志,彈體速度。攻角信息,彈體系下的比例導引指令,以及一個常數參數,輸出為彈體過載指令。
(5)過載限幅模塊Alimit.其輸入為彈體過載指令,輸出為限幅后的彈體過載指令。
其中Condition.Acceleration.Transition和Alimit是功能計算模塊,用數據流圖建模;Fly-State是狀態計算模塊,用有限狀態機建模。系統模型圖如圖5所示。
圖6為飛行狀態計算模塊Fly-State的模型,其中共包含3個狀態,分別為初始狀態(Istate),轉彎狀態(Tstate)和俯沖狀態(Astate)。根據三個輸入的布爾量條件可以進行狀態變化。其中的狀態變化都是單向不可反復的,變化方向和線條箭頭方向一致。
5.4模型驗證和算法調試
完成模型設計后,需要使用SCADE提供的一系列檢查驗證手段來確保模型的正確性和安全性。對于發現的問題,可以在直觀的圖形化模型上進行模型修改和參數調試。
使用模擬仿真工具,可以通過設計各種測試用例來模擬可能出現的實際情況,對模型進行仿真調試。可以從控制算法角度和軟件工程角度對模型進行優化,以達到滿足設計需求的目的。
5.5代碼集成
在代碼集成階段,根據實際需要,按照效率優先原則進行了配置并自動生成了標準C代碼。然后對使用了SCADE自動生成代碼的軟件進行仿真,其仿真結果與模型仿真的結果一致,滿足設計需求。
6結束語
SCADE軟件開發環境的出現,提供了一種基于模型的高安全性嵌入式軟件解決方案,使嵌入式軟件的開發效率大大提高。同時由于使用了基于模型的設計流程和高度自動化的開發進程,研制工作的重心集中在建模層面,把軟件設計人員從繁復的編碼和驗證工作中解放出來,能夠把大量的精力投入到算法設計和建模工作中,這對于嵌入式軟件的工程開發有著重要的意義。
評論