0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

NASA的开源软件是什么?NASA的开源软件的详细分析

工业4俱乐部 来源:未知 作者:易水寒 2018-08-12 12:00 次阅读

随着开源软件技术的迅速发展和影响,各领域各行业的相关共性软件逐渐开放,另一方面也应用开源软件进行系统开发。在航天领域NASA在开源方面走在前列,已开源软件、设计工具达1072个,涵盖航天器整个研制和应用过程。近年来,高性能部组件及高速总线在航天器上的应用,使得卫星计算能力、存储能力都有大幅度提升,星载软件得以有很大施展空间,尤其对卫星小型化、一体化、智能化发展有极大推动作用。本文对NASA的开源软件进行了研究,对部分开源项目做了深入分析,并结合项目需求,开发了基于开源软件的卫星健康状态监视原型系统,同时对未来航天领域开源软件技术的发展趋势及卫星智能化的发展思路进行了探讨。

开源软件的迅速发展,逐渐改变了世界开发软件的格局。作为太空探索领域的佼佼者,美国国家航空航天局NASA在2017年3月发布了2017-2018软件目录[1],开源了一系列航天相关项目,包括多年使用的设计仿真工具、应用软件和代码库等,大部分可免费使用,如用于与航天器交换大文件的标准工具CCSDS CFDP文件传输协议等。以往论文研究集中在NASA的技术成果转化政策和机制方面,本文从技术角度,对NASA开源软件进行了研究,二次开发实践,并思考了开源技术对软件定义类卫星技术发展,对解决卫星智能化问题有一定的借鉴意义。

1

NASA开源软件发展概况

1.1技术转让计划

从1964年开始,一直以尖端的科学技术领先全球的NASA通过设立技术转让计划,开始建立航天技术服务于民生的长效机制,每年都出版一期Spinoff报告,迄今为止,超过2000项技术成功转移到民用领域。NASA在履行好座右铭“我们努力奔向新的高度,为人类福祉而发现未知”的同时,其建立的技术转让计划使得众多中小企业利用NASA科研成果进行创业,新的领域得到广泛应用。在航天领域NASA设立的技术转让计划成为运行良好、效益突出的高技术成果转化机制,加速了科技成果转化。

1.21.2 开源进展和目的

作为技术转让计划中的一部分,NASA在官网上发布了大量航天项目中的开源软件和工具,目前,一共有1072可用的程序软件,涵盖项目管理、数据和图像处理、电源系统、航天器设计与集成工具、自主系统等15个方面,见图1。这些代码来自NASA Ames、JPL、Jonhson、Armstrong等11个研发中心和机构。NASA的做法有两方面目的,一方面希望通过开源社区同行评审提高代码质量、加速开发,并能收获更多项目改进的建议,另一方面,最大化NASA研究的知名度和影响,同时也将技术转让给企业和个人,用于新的领域发展最新科技。

图1 软件目录分类

Fig.1 NASA Open Source Software Category

2

NASA典型开源项目

2.1Livingstone2(L2)

Livingstone2[2-3]由NASA Ames中心研制,是基于模型的故障诊断和恢复引擎,目的使复杂系统如航天器,不断自主化和智能化,在最少人工干预下,实现系统状态自我感知、诊断和响应非正常状态,尤其是面临硬件故障或未知事件。

通过建立一组多层次的定性逻辑模型,通过对比模型预测数据和传感器实测数据来检测和诊断系统故障,实现追踪系统的状态,并根据不同状态给出建议指令实现系统继续运行,原理见图2所示。L2已经在包括X34推进系统和国际空间站等几个试验床上实施和应用,同时也在地球观测卫星1号(EO-1)上进行过飞行试验。

图2 L2诊断原理

Fig.2 NASA L2 Diagnosis Principle

2.2Trick 航天器仿真环境

Trick 航天器仿真环境[4]由NASA 约翰逊空间中心研发,使用户可以对航天器研制的各个阶段建立仿真应用,包括早期设计、性能指标评估、飞行软件开发和测试,飞行过程动态分析,软件和硬件的闭环测试。目的是提供一种通用共性的仿真能力,以便各领域专家更专注在特定领域的模型,而不是仿真功能应用如任务排序、数据存储等。但是这款软件只对美国公民开放。图3为Trick蒙特卡洛高级仿真功能流程,允许用户对不同输入进行重复仿真,不断优化。

图3 Trick的蒙特卡洛功能流程

Fig.3 Trick Monte Carlo Advanced Simulation Capability Flow

2.3Open MCT[5]

Open MCT( Open Mission Control Technologies )是下一代具有数据可视化的任务控制框架,可在桌面端和移动端分别使用,由NASA Ames中心开发,用于航天器任务分析,运行控制和规划。作为一个通用开放的基础平台,用户可在Open MCT基础上进行二次开发,针对不同航天器开发任务规划、控制和数据分析等应用。系统效果图见图4。

图4 Open MCT系统效果

Fig.4 Open MCT General View

3

基于开源软件的卫星健康状态监视原型系统

3.1系统介绍

系统用于监视卫星平台健康状态,目前包括但不限于CPU温度、GPU温度、CPU使用率、RAM使用率、ROM使用率、姿态测量参数(如加速度传感器XYZ,磁强计XYZ等)等信息,将健康状态信息(SOH: State Of Health)以CCSDS数据包格式封装,通过无线射频链路发送到地面站系统,以图表形式进行显示信息。

3.2系统架构

系统利用Raspberry PI+PC构建验证原型系统,RPI作为卫星端,运行Linux系统和飞控系统软件,应用软件SOH,PC端作为地面端,运行Linux系统及地面站软件,通过WiFi无线链路连接,系统运行后,可进行遥测遥控功能。系统架构图如下:

图5系统架构

Fig.5 System architecture

3.3系统成果

系统集成开源软件的技术优势,并结合需求进行定制化改进,经过三个月测试,软件工作正常,系统运行稳定,实现了简单的健康状态监视功能。下一步可通过总线集成更多部件,进行对应功能软件开发,丰富完善。地面系统运行图,见图6

图6地面系统运行图

Fig.6 Ground System View

4

思考与启示

4.1航天领域开源软件思考

在航天软件领域,NASA开源了从航天器仿真、设计工具、星载软件、地面任务控制、结构材料设计工具等各类应用软件、代码库和工具。官网上开源动机是希望开源社区同行的使用提高软件质量,从某种程度上讲,使用这些代码尤其是二次开发会让技术实力稍弱的企业依赖NASA的基础级代码,影响自主创新能力。

航天软件对太空资产的重要性不言而喻,尤其是基础的核心软件。在操作系统方面,VxWorks 操作系统依然是国内大部分航天项目主流选择,开源化研究操作系统,值得思考。另一方面,人工智能技术共性的系统是Linux,许多机器学习算法基于Linux开发,卫星智能化发展是选择开源的路线,集智发展,抑或是传统领域吸收成熟智能算法融合发展,这也是一个值得探讨的研究方向。

4.2开源将会是商业航天企业技术重要驱动

开源软件具有开放、共享、自由等特性,企业可避免重复造轮子,使用最少的人力、物力、财力就能很快构建一个系统,在开源软件基础上定制灵活,通过社区的力量,软件也更稳定、安全性更高,可及时发现和修复安全漏洞,一个非常成功的例子,Android 2007年以开源形式发布后,阵营呈现爆炸式增长,成为份额第一的移动操作系统[6]。

更稳定、更安全、更可靠的追求促使航天软件开发测试成本更高,由于追求高可靠和责任重大,导致软件发展已慢于互联网软件行业发展。商业航天的发展,结合开源技术,在软件质量、软件成本方面,有望改变这一局面。

结束语

NASA开源的项目软件,部分代码每天迭代更新,提高了软件的质量,进一步降低了应用在航天类项目中的风险,这对于软件定义类卫星技术发展有着很大借鉴意义。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源软件
    +关注

    关注

    0

    文章

    203

    浏览量

    15640
  • NASA
    +关注

    关注

    0

    文章

    405

    浏览量

    30631
  • 仿真
    +关注

    关注

    50

    文章

    3860

    浏览量

    131952

原文标题:NASA开源软件实践与思考

文章出处:【微信号:industry4_0club,微信公众号:工业4俱乐部】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    NASA恐怖的隔热技术 #NASA #太阳 #科普 #科学 #硬声创作季

    NASA
    电子知识科普
    发布于 :2022年11月13日 21:34:44

    NASA恐怖的引力弹弓技术 #太阳 #NASA #科普 #硬声创作季

    NASA
    电子知识科普
    发布于 :2022年11月13日 21:35:12

    DVI接口详细分析

    DVI接口详细分析DVI 接口规格和定义 DVI 有DVI 1.0 和DVI 2.0 两种标准,其中 DVI 1.0 仅用了其中的一组信号传输信道(data0-data2 ),传输图像的最高像素时钟
    发表于 08-11 09:51

    uboot代码详细分析

    [url=]uboot代码详细分析[/url]
    发表于 01-29 13:51

    详细分析一下USB协议

    本文跟大家一起详细分析一下USB协议。
    发表于 05-24 06:16

    详细分析stm32f10x.h

    每日开讲---学习STM32不得不看的剖析(详细分析stm32f10x.h)摘要: 学习STM32不得不看的剖析(详细分析stm32f10x.h)。/**这里是STM32比较重要的头文件*******************************************
    发表于 08-05 07:44

    详细分析了VTIM和VMIN的功能

    上一篇文章中,我们详细分析了VTIM和VMIN的功能,《嵌入式Linux 串口编程系列2--termios的VMIN和VTIME深入理解》 也明白了这两个参数设计的初衷和使用方法,接下来我们 就详细
    发表于 11-05 07:09

    构建工业软件开源工具链,2022 开放原子全球开源峰会开源工业软件论坛即将开幕

    工业软件是全球产业升级的重要基础,打造开放、共建、共治、共享的开源工业软件,则是为工业软件构建健康发展的基石。2022 年 7 月 25 日,由开放原子
    发表于 07-08 16:05

    电子工程师需要掌握的20个模拟电路的详细分析

    电子工程师需要掌握的20个模拟电路的详细分析
    发表于 09-28 06:22

    电子工程师必须掌握的20个模拟电路详细分析

    内含参考答案以及详细分析
    发表于 10-07 07:15

    uboot1-1-6代码详细分析

    uboot 1-1-6版本的 代码详细分析
    发表于 11-02 11:02 25次下载

    Buck变换器原理详细分析

    Buck变换器原理详细分析
    发表于 09-15 17:26 30次下载
    Buck变换器原理<b class='flag-5'>详细分析</b>

    NASA计划2023年月球车运行开源软件

    ,包括能在月壤上正常旋转的车轮和能在地外环境进行挖掘的钻头,这些硬件设备可以经受住长达十四天、气温低至 -173℃ 的月夜的考验。 但是,尽管 VIPER 在很大程度上是独一无二、专为其任务而定制的,它运行的许多软件却是开源的,这意味着任何人都可以出于任何
    的头像 发表于 04-18 09:41 1225次阅读

    正激有源钳位的详细分析

    正激有源钳位的详细分析介绍。
    发表于 06-16 16:57 56次下载

    NASA 携手 IBM 发布 Hugging Face 平台最大开源地理空间 AI 基础模型

    近日,IBM (NYSE: IBM) 与开源 AI 平台 Hugging Face 共同宣布,基于美国宇航局 ( NASA) 卫星数据构建的 IBM watsonx.ai 地理空间基础模型,现已
    的头像 发表于 08-08 18:15 408次阅读
    <b class='flag-5'>NASA</b> 携手 IBM 发布 Hugging Face 平台最大<b class='flag-5'>开源</b>地理空间 AI 基础模型