來源:DeepTech深科技

NASA 將在 2023 年發射 VIPER(揮發性物質調查用極地探險車),它會行駛於月球表面,尋找有朝一日可用於製備火箭燃料的固態水。這臺月球車將裝備 NASA 所能擁有的最頂級的儀器設備和工具,包括能在月壤上正常旋轉的車輪和能在地外環境進行挖掘的鑽頭,這些硬件設備可以經受住長達十四天、氣溫低至 -173℃ 的月夜的考驗。

但是,儘管 VIPER 在很大程度上是獨一無二、專爲其任務而定製的,它運行的許多軟件卻是開源的,這意味着任何人都可以出於任何目的而使用、修改或傳播它。如果能成功的話,這次任務不僅將爲未來的月球殖民地打下基石,它可能還會成爲一個拐點,能讓航天工業換個角度去思考如何開發和操作自動化機械設備。

我們在談論航天任務時很少會想到開源技術,造一個能發射到太空、順利抵達目的地、並在離地球成百上千(甚至上萬乃至幾十萬)英里遠的地方完成一系列特定任務的東西往往成本不菲。

人們會自然而然地把與其相關的知識視若珍寶、嚴加看管。相比之下,開源軟件則更多地與小型項目的蹩腳編程相聯繫,比如黑客馬拉松活動和學生展示之類的,充斥於 GitHub 等在線庫中的代碼通常是缺少資金、沒有從零開始寫代碼的資源的團隊所採用的廉價解決方案。

但是,航天工業正在迅速擴張,這在很大程度上是因爲存在大量進入太空的需求。這也就意味着需要使用成本更低、更易獲得的技術,軟件也包括其中。

就算是對於 NASA 這樣不差錢的巨頭來說,開源方法也終將帶來軟件層面上的加強。“我想說,目前的飛行軟件,在航天領域中非常平庸,”旅行者太空控股(Voyager Space Holdings)的主席兼 CEO 迪倫·泰勒 (Dylan Taylor)說。

此話的背景是,波音的 Starliner 飛船在 2019 年由於軟件故障試飛失敗了,如果它是開源的,哪怕是最聰明的科學家,也可以像業餘的開發者一樣,利用更多人的專業知識和反饋來解決問題。

基本上,如果它符合 NASA 的要求,那它就應該能滿足任何在太空中操縱自動機械的需求。想以低成本發射衛星和探測器的企業和國家機構在世界各地不斷湧現,對於他們來說,能夠自如應對航天任務這種高風險情境的廉價自動化機械軟件是重大利好。

開源軟件也有助於降低前往太空的成本,因爲它會帶來人人都可採納和使用的標準,定製代碼的高成本將不復存在,新任的工程師通常都使用過開源框架。“如果我們對這一點加以利用,讓他們能在飛行任務中運用更多在學校學到的東西,那將會縮短他們的適應過程,”泰瑞·方(Terry Fong)說。

他是 NASA 在加州山景城的埃姆斯(Ames)研究中心的智能機器人團隊負責人,也是 VIPER 任務的副領隊,泰瑞還表示,“它讓我們能更快地把研究領域中的突破運用到飛行任務中。”

在過去 10 到 15 年間,NASA 已經在許多研究與發展(R&D)項目中運用過開源軟件了——它保留着大量使用過的開源代碼的目錄,但這項技術在自動化航天機械中的實際應用尚無太多先例。

“機器人操作系統(ROS)”是 NASA 試驗過的系統之一,它是由總部同樣位於山景城的非營利組織“開放機器人”(Open Robotics)進行維護和更新的一組開源軟件框架,ROS 已經在國際空間站的科研助理機器人 Robonaut2 號上應用過了,目前正在國際空間站裏飛來飛去、幫助宇航員開展日常工作的自動化機器人 Astrobee 也使用了 ROS。

ROS 將會運行和推進對於所謂“地面飛行控制”至關重要的一系列任務,VIPER 將由 NASA 的地面人員操縱,地面飛行控制會運用 VIPER 蒐集到的數據來繪製實時地圖,並渲染月面環境以供月球車操作人員進行安全導航。

這臺月球車軟件的其它部分也有開源的 root:譬如遙感和內存管理等基本功能是由一個被稱作核心飛行系統(cFS)的車載程序負責的,這個程序由 NASA 自行研發併發佈於 GitHub 上,可以免費使用。VIPER 在月球車本體之外的其它任務操作則由 Open MCT 負責處理,這也是 NASA 自研的。

相比於火星,月球的環境很難在地球上進行模擬,這意味着對月球車的軟硬件構件開展測試並非易事。泰瑞·方表示,對於這次任務而言,依靠包括開源軟件在內的數字模擬來對月球車的構件進行測試是更合理的選擇。

這次任務選擇依靠開源軟件的另一個原因是,月球離地球足夠近,可以對月球車進行基本上是實時的控制,這意味着可以在地面上運行某些軟件,而不必將其掛載在月球車上。

“我們決定把月球車的大腦分置於地球和月球上,”泰瑞·方說,“這樣一來,我們就有可能去使用不受輻射、艱苦的飛行和計算能力限制的軟件,我們可以把成品的商業軟件直接拿來用。所以我們可以在地面上使用比如 ROS 這種很多人很常用的軟件。我們不用完全依靠定製軟件。”

VIPER 使用的軟件也並非百分百開源。例如,它的機載飛行系統用的就是非常可靠的專利軟件。但不難想象的是,未來會有更多任務採用並擴展VIPER所使用的軟件。“我都懷疑 NASA 的下部月球車要用 Linux 系統了,”泰瑞·方說。

要在所有情況下都使用開源軟件是永遠都不可能的,安全性可能是個問題,這會讓有些機構堅持全部使用專利技術 (儘管開源平臺的優勢之一是開發者對於發現漏洞和發佈補丁非常公開)。泰瑞·方也強調,有些任務對於開源技術來說始終都顯得過於專業或先進,它們不能太過依賴開源技術。

儘管如此,轉向開源社羣的不僅是 NASA,Blue Origin 最近宣佈,它將會和數個 NASA 團隊進行合作,以開源框架爲基礎“爲自動機械的智能化和自主化編寫代碼”(但該公司拒絕透露合作細節)。

體量更小的創業公司——比如總部位於希臘、爲小型衛星提供開源硬件和軟件的“自由太空基金”(Libre Space Foundation)——勢必會隨着航天飛行成本的降低而受到更多關注。Open Robotics 的 CEO 布萊恩·格爾基(Brian Gerkey)說:“這是個多米諾骨牌效應。一旦有像 NASA 這種的大型機構公開說‘我們要依靠這個軟件了’,就會有其它機構想抓住風口,它們會投身其中,完成那些讓這個軟件可堪 NASA 之用的必要工作。”

相關文章