|
本帖最后由 dcexpert 于 2018-7-18 11:36 编辑
原文请见:https://forum.micropython.org/viewtopic.php?f=19&t=5007
在第三期MicroPython时事通讯中,我们想向您介绍有关在空间应用中使用MicroPython的一些细节。
太空资格和OBCP
在过去一年左右的时间里,我们一直与一家名为Spacebel的比利时公司合作,帮助他们定制MicroPython作为机载控制程序(OBCP)引擎用于太空中使用。这是基于我们之前为欧洲航天局所做的工作,使MicroPython在运行在LEON系统上SPARC处理器中。
OBCP是程序或脚本,即使在发射后也可以在航天器上动态加载和执行。它们可用于在任务期间改变或扩展航天器的功能。使用MicroPython作为OBCP引擎将使操作员能够在Python中编写这样的控制脚本,允许他们使用熟悉的语言编写富有表现力和简洁的代码。将MicroPython作为OBCP引擎集成的主要挑战之一是确保它在系统中完全隔离,并且如果出现问题,它不会对航天器系统的其他部分造成风险。这需要MicroPython软件的认证过程,以确保它适合飞行。
资格认证需要对代码进行深度静态和动态分析,以建立正确的信任并证明它极不可能失败。对于任何复杂的软件,几乎不可能证明它是完美的并且始终表现正确(甚至定义这个概念都很难),因此努力遵循既定的工程原则,并尽可能严格地进行测试和检查并再次测试代码。作为使用Spacebel完成的工作的一部分,许多新测试都是针对MicroPython编写的,并且发现的错误已得到修复。绝大多数这些改进已经在主要的公共代码库中提供。核心运行时和虚拟机上的代码覆盖率(py /目录中的代码)现在超过99.2%,只有总共15540行中的大约125行还未涉及。
Spacebel的工作于今年5月在航空航天会议的数据系统上公布。如果您有兴趣了解更多OBCP的详细信息以及MicroPython如何适应这张图片,那么请查看演示文稿并阅读论文。
我们非常兴奋MicroPython已经集成到OBCP空间系统中。除此之外,它意味着MicroPython对每个人来说都变得更加强健,并且表明它可以在关键系统中使用。它有可能在未来用于控制真实的太空任务!
活动
上周在德克萨斯州奥斯汀(美国)的SciPy期间,Roberto Colistete Jr.举办了MicroPython研讨会和Sprint,以吸引新开发人员为科学MicroPython模块做出贡献。
墨尔本MicroPython聚会!墨尔本(澳大利亚)每月举行一次MicroPython聚会,您可以阅读相关博客:https://melbournemicropythonmeetup.github.io 。如果您在该地区,请务必前往。下次聚会定于7月25日举行。
来自Damien和MicroPython团队。
|
|