隨著開(kāi)源軟件技術(shù)的迅速發(fā)展和影響,各領(lǐng)域各行業(yè)的相關(guān)共性軟件逐漸開(kāi)放,另一方面也應(yīng)用開(kāi)源軟件進(jìn)行系統(tǒng)開(kāi)發(fā)。在航天領(lǐng)域NASA在開(kāi)源方面走在前列,已開(kāi)源軟件、設(shè)計(jì)工具達(dá)1072個(gè),涵蓋航天器整個(gè)研制和應(yīng)用過(guò)程。近年來(lái),高性能部組件及高速總線在航天器上的應(yīng)用,使得衛(wèi)星計(jì)算能力、存儲(chǔ)能力都有大幅度提升,星載軟件得以有很大施展空間,尤其對(duì)衛(wèi)星小型化、一體化、智能化發(fā)展有極大推動(dòng)作用。本文對(duì)NASA的開(kāi)源軟件進(jìn)行了研究,對(duì)部分開(kāi)源項(xiàng)目做了深入分析,并結(jié)合項(xiàng)目需求,開(kāi)發(fā)了基于開(kāi)源軟件的衛(wèi)星健康狀態(tài)監(jiān)視原型系統(tǒng),同時(shí)對(duì)未來(lái)航天領(lǐng)域開(kāi)源軟件技術(shù)的發(fā)展趨勢(shì)及衛(wèi)星智能化的發(fā)展思路進(jìn)行了探討。
開(kāi)源軟件的迅速發(fā)展,逐漸改變了世界開(kāi)發(fā)軟件的格局。作為太空探索領(lǐng)域的佼佼者,美國(guó)國(guó)家航空航天局NASA在2017年3月發(fā)布了2017-2018軟件目錄[1],開(kāi)源了一系列航天相關(guān)項(xiàng)目,包括多年使用的設(shè)計(jì)仿真工具、應(yīng)用軟件和代碼庫(kù)等,大部分可免費(fèi)使用,如用于與航天器交換大文件的標(biāo)準(zhǔn)工具CCSDS CFDP文件傳輸協(xié)議等。以往論文研究集中在NASA的技術(shù)成果轉(zhuǎn)化政策和機(jī)制方面,本文從技術(shù)角度,對(duì)NASA開(kāi)源軟件進(jìn)行了研究,二次開(kāi)發(fā)實(shí)踐,并思考了開(kāi)源技術(shù)對(duì)軟件定義類衛(wèi)星技術(shù)發(fā)展,對(duì)解決衛(wèi)星智能化問(wèn)題有一定的借鑒意義。
1
NASA開(kāi)源軟件發(fā)展概況
1.1技術(shù)轉(zhuǎn)讓計(jì)劃
從1964年開(kāi)始,一直以尖端的科學(xué)技術(shù)領(lǐng)先全球的NASA通過(guò)設(shè)立技術(shù)轉(zhuǎn)讓計(jì)劃,開(kāi)始建立航天技術(shù)服務(wù)于民生的長(zhǎng)效機(jī)制,每年都出版一期Spinoff報(bào)告,迄今為止,超過(guò)2000項(xiàng)技術(shù)成功轉(zhuǎn)移到民用領(lǐng)域。NASA在履行好座右銘“我們努力奔向新的高度,為人類福祉而發(fā)現(xiàn)未知”的同時(shí),其建立的技術(shù)轉(zhuǎn)讓計(jì)劃使得眾多中小企業(yè)利用NASA科研成果進(jìn)行創(chuàng)業(yè),新的領(lǐng)域得到廣泛應(yīng)用。在航天領(lǐng)域NASA設(shè)立的技術(shù)轉(zhuǎn)讓計(jì)劃成為運(yùn)行良好、效益突出的高技術(shù)成果轉(zhuǎn)化機(jī)制,加速了科技成果轉(zhuǎn)化。
1.21.2 開(kāi)源進(jìn)展和目的
作為技術(shù)轉(zhuǎn)讓計(jì)劃中的一部分,NASA在官網(wǎng)上發(fā)布了大量航天項(xiàng)目中的開(kāi)源軟件和工具,目前,一共有1072可用的程序軟件,涵蓋項(xiàng)目管理、數(shù)據(jù)和圖像處理、電源系統(tǒng)、航天器設(shè)計(jì)與集成工具、自主系統(tǒng)等15個(gè)方面,見(jiàn)圖1。這些代碼來(lái)自NASA Ames、JPL、Jonhson、Armstrong等11個(gè)研發(fā)中心和機(jī)構(gòu)。NASA的做法有兩方面目的,一方面希望通過(guò)開(kāi)源社區(qū)同行評(píng)審提高代碼質(zhì)量、加速開(kāi)發(fā),并能收獲更多項(xiàng)目改進(jìn)的建議,另一方面,最大化NASA研究的知名度和影響,同時(shí)也將技術(shù)轉(zhuǎn)讓給企業(yè)和個(gè)人,用于新的領(lǐng)域發(fā)展最新科技。
圖1 軟件目錄分類
Fig.1 NASA Open Source Software Category
2
NASA典型開(kāi)源項(xiàng)目
2.1Livingstone2(L2)
Livingstone2[2-3]由NASA Ames中心研制,是基于模型的故障診斷和恢復(fù)引擎,目的使復(fù)雜系統(tǒng)如航天器,不斷自主化和智能化,在最少人工干預(yù)下,實(shí)現(xiàn)系統(tǒng)狀態(tài)自我感知、診斷和響應(yīng)非正常狀態(tài),尤其是面臨硬件故障或未知事件。
通過(guò)建立一組多層次的定性邏輯模型,通過(guò)對(duì)比模型預(yù)測(cè)數(shù)據(jù)和傳感器實(shí)測(cè)數(shù)據(jù)來(lái)檢測(cè)和診斷系統(tǒng)故障,實(shí)現(xiàn)追蹤系統(tǒng)的狀態(tài),并根據(jù)不同狀態(tài)給出建議指令實(shí)現(xiàn)系統(tǒng)繼續(xù)運(yùn)行,原理見(jiàn)圖2所示。L2已經(jīng)在包括X34推進(jìn)系統(tǒng)和國(guó)際空間站等幾個(gè)試驗(yàn)床上實(shí)施和應(yīng)用,同時(shí)也在地球觀測(cè)衛(wèi)星1號(hào)(EO-1)上進(jìn)行過(guò)飛行試驗(yàn)。
圖2 L2診斷原理
Fig.2 NASA L2 Diagnosis Principle
2.2Trick 航天器仿真環(huán)境
Trick 航天器仿真環(huán)境[4]由NASA 約翰遜空間中心研發(fā),使用戶可以對(duì)航天器研制的各個(gè)階段建立仿真應(yīng)用,包括早期設(shè)計(jì)、性能指標(biāo)評(píng)估、飛行軟件開(kāi)發(fā)和測(cè)試,飛行過(guò)程動(dòng)態(tài)分析,軟件和硬件的閉環(huán)測(cè)試。目的是提供一種通用共性的仿真能力,以便各領(lǐng)域?qū)<腋鼘W⒃谔囟I(lǐng)域的模型,而不是仿真功能應(yīng)用如任務(wù)排序、數(shù)據(jù)存儲(chǔ)等。但是這款軟件只對(duì)美國(guó)公民開(kāi)放。圖3為Trick蒙特卡洛高級(jí)仿真功能流程,允許用戶對(duì)不同輸入進(jìn)行重復(fù)仿真,不斷優(yōu)化。
圖3 Trick的蒙特卡洛功能流程
Fig.3 Trick Monte Carlo Advanced Simulation Capability Flow
2.3Open MCT[5]
Open MCT( Open Mission Control Technologies )是下一代具有數(shù)據(jù)可視化的任務(wù)控制框架,可在桌面端和移動(dòng)端分別使用,由NASA Ames中心開(kāi)發(fā),用于航天器任務(wù)分析,運(yùn)行控制和規(guī)劃。作為一個(gè)通用開(kāi)放的基礎(chǔ)平臺(tái),用戶可在Open MCT基礎(chǔ)上進(jìn)行二次開(kāi)發(fā),針對(duì)不同航天器開(kāi)發(fā)任務(wù)規(guī)劃、控制和數(shù)據(jù)分析等應(yīng)用。系統(tǒng)效果圖見(jiàn)圖4。
圖4 Open MCT系統(tǒng)效果
Fig.4 Open MCT General View
3
基于開(kāi)源軟件的衛(wèi)星健康狀態(tài)監(jiān)視原型系統(tǒng)
3.1系統(tǒng)介紹
系統(tǒng)用于監(jiān)視衛(wèi)星平臺(tái)健康狀態(tài),目前包括但不限于CPU溫度、GPU溫度、CPU使用率、RAM使用率、ROM使用率、姿態(tài)測(cè)量參數(shù)(如加速度傳感器XYZ,磁強(qiáng)計(jì)XYZ等)等信息,將健康狀態(tài)信息(SOH: State Of Health)以CCSDS數(shù)據(jù)包格式封裝,通過(guò)無(wú)線射頻鏈路發(fā)送到地面站系統(tǒng),以圖表形式進(jìn)行顯示信息。
3.2系統(tǒng)架構(gòu)
系統(tǒng)利用Raspberry PI+PC構(gòu)建驗(yàn)證原型系統(tǒng),RPI作為衛(wèi)星端,運(yùn)行Linux系統(tǒng)和飛控系統(tǒng)軟件,應(yīng)用軟件SOH,PC端作為地面端,運(yùn)行Linux系統(tǒng)及地面站軟件,通過(guò)WiFi無(wú)線鏈路連接,系統(tǒng)運(yùn)行后,可進(jìn)行遙測(cè)遙控功能。系統(tǒng)架構(gòu)圖如下:
圖5系統(tǒng)架構(gòu)
Fig.5 System architecture
3.3系統(tǒng)成果
系統(tǒng)集成開(kāi)源軟件的技術(shù)優(yōu)勢(shì),并結(jié)合需求進(jìn)行定制化改進(jìn),經(jīng)過(guò)三個(gè)月測(cè)試,軟件工作正常,系統(tǒng)運(yùn)行穩(wěn)定,實(shí)現(xiàn)了簡(jiǎn)單的健康狀態(tài)監(jiān)視功能。下一步可通過(guò)總線集成更多部件,進(jìn)行對(duì)應(yīng)功能軟件開(kāi)發(fā),豐富完善。地面系統(tǒng)運(yùn)行圖,見(jiàn)圖6
圖6地面系統(tǒng)運(yùn)行圖
Fig.6 Ground System View
4
思考與啟示
4.1航天領(lǐng)域開(kāi)源軟件思考
在航天軟件領(lǐng)域,NASA開(kāi)源了從航天器仿真、設(shè)計(jì)工具、星載軟件、地面任務(wù)控制、結(jié)構(gòu)材料設(shè)計(jì)工具等各類應(yīng)用軟件、代碼庫(kù)和工具。官網(wǎng)上開(kāi)源動(dòng)機(jī)是希望開(kāi)源社區(qū)同行的使用提高軟件質(zhì)量,從某種程度上講,使用這些代碼尤其是二次開(kāi)發(fā)會(huì)讓技術(shù)實(shí)力稍弱的企業(yè)依賴NASA的基礎(chǔ)級(jí)代碼,影響自主創(chuàng)新能力。
航天軟件對(duì)太空資產(chǎn)的重要性不言而喻,尤其是基礎(chǔ)的核心軟件。在操作系統(tǒng)方面,VxWorks 操作系統(tǒng)依然是國(guó)內(nèi)大部分航天項(xiàng)目主流選擇,開(kāi)源化研究操作系統(tǒng),值得思考。另一方面,人工智能技術(shù)共性的系統(tǒng)是Linux,許多機(jī)器學(xué)習(xí)算法基于Linux開(kāi)發(fā),衛(wèi)星智能化發(fā)展是選擇開(kāi)源的路線,集智發(fā)展,抑或是傳統(tǒng)領(lǐng)域吸收成熟智能算法融合發(fā)展,這也是一個(gè)值得探討的研究方向。
4.2開(kāi)源將會(huì)是商業(yè)航天企業(yè)技術(shù)重要驅(qū)動(dòng)
開(kāi)源軟件具有開(kāi)放、共享、自由等特性,企業(yè)可避免重復(fù)造輪子,使用最少的人力、物力、財(cái)力就能很快構(gòu)建一個(gè)系統(tǒng),在開(kāi)源軟件基礎(chǔ)上定制靈活,通過(guò)社區(qū)的力量,軟件也更穩(wěn)定、安全性更高,可及時(shí)發(fā)現(xiàn)和修復(fù)安全漏洞,一個(gè)非常成功的例子,Android 2007年以開(kāi)源形式發(fā)布后,陣營(yíng)呈現(xiàn)爆炸式增長(zhǎng),成為份額第一的移動(dòng)操作系統(tǒng)[6]。
更穩(wěn)定、更安全、更可靠的追求促使航天軟件開(kāi)發(fā)測(cè)試成本更高,由于追求高可靠和責(zé)任重大,導(dǎo)致軟件發(fā)展已慢于互聯(lián)網(wǎng)軟件行業(yè)發(fā)展。商業(yè)航天的發(fā)展,結(jié)合開(kāi)源技術(shù),在軟件質(zhì)量、軟件成本方面,有望改變這一局面。
結(jié)束語(yǔ)
NASA開(kāi)源的項(xiàng)目軟件,部分代碼每天迭代更新,提高了軟件的質(zhì)量,進(jìn)一步降低了應(yīng)用在航天類項(xiàng)目中的風(fēng)險(xiǎn),這對(duì)于軟件定義類衛(wèi)星技術(shù)發(fā)展有著很大借鑒意義。
-
開(kāi)源軟件
+關(guān)注
關(guān)注
0文章
210瀏覽量
15904 -
NASA
+關(guān)注
關(guān)注
0文章
427瀏覽量
30944 -
仿真
+關(guān)注
關(guān)注
50文章
4082瀏覽量
133606
原文標(biāo)題:NASA開(kāi)源軟件實(shí)踐與思考
文章出處:【微信號(hào):industry4_0club,微信公眾號(hào):工業(yè)4俱樂(lè)部】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論