美國宇航局 (NASA) 發(fā)射月球大氣與粉塵環(huán)境探測器 (LADEE) ,用來采集關(guān)于月球粉塵環(huán)境的密度、組成和變異性的信息。機(jī)載光譜儀和其他儀器采集的數(shù)據(jù)和月球粉塵將會幫助研究人員了解月球和太陽系中的其他天體。
為了在有限的項目成本和時間條件下開發(fā)航天器的飛行軟件,美國宇航局艾姆斯研究中心的工程師采取了一種基于模型設(shè)計的低成本、快速原型方法。
NASA LADEE航天器貼近月球表面環(huán)繞的藝術(shù)渲染圖。
圖像由 NASA 提供。
LADEE 飛行軟件負(fù)責(zé)人 Karen Gundy-Burlet 博士表示:“在Simulink中對航天器的高級控制功能進(jìn)行建模和仿真,然后利用這些模型生成 C 代碼,最大限度地減少了算法設(shè)計人員與軟件開發(fā)人員之間的溝通差錯。基于模型的設(shè)計使得我們能夠在早期確定需求原型,并在開發(fā)的初期階段進(jìn)行驗證和確認(rèn)。”
挑戰(zhàn)
LADEE 在其設(shè)計和任務(wù)周期面臨幾個挑戰(zhàn)。首先,LADEE 有各種可能的發(fā)射軌跡。其次,負(fù)責(zé)完成探測任務(wù)的儀器需要高度精確的定點,月球環(huán)境條件也需要航天器在軌道內(nèi)進(jìn)行頻繁的滾動和翻轉(zhuǎn)。
為應(yīng)對這些挑戰(zhàn),NASA 工程師想要在開發(fā)流程的早期就對眾多任務(wù)場景和故障條件進(jìn)行仿真。為幫助滿足 NASA 對軟件開發(fā)的程序性要求,他們需要在需求、模型、測試和測試結(jié)果之間建立雙向可追溯性。
解決方案
美國宇航局艾姆斯研究中心使用基于模型的設(shè)計,借助MATLAB和Simulink開發(fā)了用于 LADEE 航天器的機(jī)載飛行軟件。經(jīng)過一系列的構(gòu)建周期開發(fā)工作才得以完成,其中每個周期都由建模、仿真、代碼生成和測試組成。
美國宇航局艾姆斯研究中心的工程師使用Simulink開發(fā)了飛行軟件的模型,包括用于飛行姿態(tài)控制、電源管理、熱控制、導(dǎo)航、通信和指令處理的不同模型。該團(tuán)隊還開發(fā)了 LADEE 航天器的Simulink模型,包括它的推進(jìn)系統(tǒng)、環(huán)境和引力場。這些模型確保了飛行軟件可以在現(xiàn)實環(huán)境條件下被快速開發(fā)。
使用Simulink Verification and Validation,該團(tuán)隊確認(rèn)模型遵循他們自定義的建模指導(dǎo)原則,這些原則衍生于 MAAB (MathWorks Automotive Advisory Board) 指導(dǎo)原則。
在Simulink中運(yùn)行單元級的仿真以確認(rèn)子系統(tǒng)滿足要求之后,該團(tuán)隊使用SimulinkCoder和Embedded Coder從他們的 Simulink 控制器模型中生成了 26,000 多行 C 代碼。
為捕捉任何設(shè)計錯誤,工程師使用了Polyspace Bug Finder和Polyspace Code Prover對生成的代碼執(zhí)行靜態(tài)分析。
使用Simulink Coder,他們從被控對象模型中生成了代碼,以便進(jìn)行處理器在環(huán) (PIL) 和硬件在環(huán) (HIL) 測試。他們將自己的控制器代碼與 NASA 的 Core Flight Executive (cFE) 和 Core Flight System (cFS) 軟件包集成,并將其部署到 Broad Reach PowerPC 處理器。
該團(tuán)隊開展了大量的實時、系統(tǒng)級 PIL 和 HIL 測試,包括環(huán)月軌道進(jìn)入、任務(wù)序列、科研任務(wù)和故障管理情形。
該團(tuán)隊在整個項目范圍內(nèi)使用Simulink Report Generator,依照 NPR 7150 規(guī)范跟蹤需求和每個需求的測試結(jié)果。
他們按預(yù)定時間和成本估算完成了軟件開發(fā)。
與使用基于模型的設(shè)計相比,手工編碼飛行軟件需要更長時間,使協(xié)作變得更加困難。管理者和硬件子系統(tǒng)工程師了解 Simulink 模型,很容易達(dá)成共識,因為每個人都知道在軟件中怎么運(yùn)作。
——Karen Gundy-Burlet 博士
美國宇航局艾姆斯研究中心
結(jié)果
模型被重用于訓(xùn)練和指令驗證。Gundy-Burlet 表示:“我們使用源自 Simulink 模型的仿真來訓(xùn)練我們自己進(jìn)行任務(wù)操作。另外在我們將指令信號發(fā)送到航天器之前,我們使用源自模型的仿真,驗證指令信號是否已完成其預(yù)期要做的事情,并在將指令信號發(fā)送到航天器之前確保沒有負(fù)面的意外后果。
飛行軟件在軌道中無縫更新。Gundy-Burlet 稱:“在執(zhí)行任務(wù)過程中,我們發(fā)現(xiàn)了航天器的星體跟蹤儀問題和一些較小的軟件問題。我們在 Simulink 中更新了造成這些問題的狀態(tài)估測模型,重新生成了代碼,在新軟件上運(yùn)行了有針對性的測試組件,并將其上傳到航天器,航天器又飛行了一個月,再沒有發(fā)現(xiàn)其它缺陷。
改進(jìn)了形式化代碼檢查過程。Gundy-Burlet 指出:“Polyspace Code Prover 識別出了我們生成的代碼中的死代碼以及我們手工編寫代碼中的問題。它還識別了沒有錯誤的代碼,以及需要我們密切注意的代碼。利用這些結(jié)果,我們在形式化檢查過程中對代碼進(jìn)行了有針對性的評估。
-
控制器
+關(guān)注
關(guān)注
114文章
17791瀏覽量
193261 -
探測器
+關(guān)注
關(guān)注
15文章
2763瀏覽量
75903
發(fā)布評論請先 登錄
電氣火災(zāi)監(jiān)控探測器的防護(hù)方
紅外焦平面探測器核心指標(biāo)NETD介紹
寒潮來襲,氣體探測器能否“扛住”?
Amphenol數(shù)字紅外探測器評估套件使用指南
紅外探測器像元尺寸與光學(xué)鏡頭關(guān)系解析
關(guān)于探測器的操作、運(yùn)輸、焊接和靜電防護(hù)注意事項
相機(jī)分辨率:融合探測器與光學(xué)性能
混合探測器與光電倍增管的區(qū)別以及參數(shù)解析
光電探測器PMT、APD、CCD、CMos、ICCD、EMCCD
VirtualLab:通用探測器
DZR185AC零偏壓肖特基二極管探測器
VirtualLab Fusion應(yīng)用:光波導(dǎo)系統(tǒng)的均勻性探測器
紅外探測器像元尺寸怎么選
紅外探測器像元尺寸詳解
紅外探測器的分類介紹
關(guān)于基于模型的設(shè)計開發(fā)月球探測器的機(jī)載飛行軟件分析和介紹
評論