乐趣区

关于ide:能上天的代码-NASA-火星无人机飞行控制系统开源了

【导语】:F Prime 是为“机智号”火星无人机量身定制的一个组件驱动的框架,能够疾速开发和部署太空飞行及其他嵌入式软件应用程序。

简介

最近美国“毅力号”火星车胜利登陆火星,配合它实现探测工作的“机智号”无人机搭载的是“骁龙 801”处理器,并且“机智号”实际上是通过 Linux 操作系统管制的,这是人类第一次在火星上运行 Linux。

值得一提的是,多年前 NASA 把这个专门为火星无人机开发的航行控制系统开源了,它就是本文的配角:F Prime

F´(F Prime) 是一个组件驱动的框架,能够疾速开发和部署太空飞行及其他嵌入式软件应用程序。 现已胜利部署在多种太空利用中,它是为小规模航天零碎量身定制的,然而也齐全能够应用在其余嵌入式零碎开发中。

包含以下几个内容:

  • 将航行软件合成为具备定义良好的接口
  • 提供音讯队列和线程等外围性能的 C ++ 框架
  • 提供主动生成代码的建模工具
  • 丰盛可用的组件汇合
  • 用于在单元和集成测试航行软件的测试工具

我的项目地址:

https://github.com/nasa/fprime

简略应用

的装置要求环境中有以下工具:

  • cmake
  • git
  • Python 3.5+

执行以下命令即可实现装置:

git clone https://github.com/nasa/fprime.git
cd fprime
pip install --upgrade wheel setuptools pip
pip install Fw/Python Gds/

带有两个示例部署,其中一个向咱们展现了束河在树莓派上运行 F´,如何通过穿插编译,驱动程序等在嵌入式中入门;同时也提供了相干教程,以帮忙咱们了解框架,教程涵盖了根本的组件创立,零碎和拓扑设计,工具等。具体的示例和教程参考官网。

具备以下几个个性:

  • 可重用性。基于组件的体系结构可实现高度的模块化和软件重用。
  • 疾速开发。F´提供了一个残缺的开发生态系统,包含建模工具,测试工具和高空数据系统。开发人员能够应用建模工具编写标准,并主动生成实现。框架和代码生成器提供 F´部署所需的所有样板代码,包含线程治理的代码,组件通信的代码以及解决命令,遥测和参数的代码。
  • 可移植性。F´能够从微控制器运行到多核计算机的多种处理器以及多种操作系统上运行。移植到新的操作系统很简略。
  • 高性能。采纳点对点架构,缩小了计算资源的应用,非常适合较小的处理器。
  • 可适应性。F´是依据小型工作所需的复杂性水平定制的,使得它易于应用。
  • 可剖析性。类型化的端口连贯提供了弱小的编译时正确性保障。

结语

NASA 工程师在承受 IEEE 采访时示意:

这是咱们第一次在火星上应用 Linux。机智号是在 Linux 操作系统上运行的。它应用的软件框架是咱们在喷气推动实验室(JPL)为立方体卫星和仪器开发的,几年前咱们把它开源了。

所以,大家能够失去一个在火星直升机上航行的软件框架,并且用在本人的我的项目上。这是一种开源的胜利!

所以有了这个开源我的项目,是不是意味着咱们也有可能造出一架能够入地的无人机?感兴趣的童鞋,快来学一下吧。

开源前哨 日常分享热门、乏味和实用的开源我的项目。参加保护 10 万 + Star 的开源技术资源库,包含:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。

退出移动版