最新发布《数智时代的AI人才粮仓模型解读白皮书(2024版)》,立即领取! 了解详情
写点什么

史上最强韦伯太空望远镜:软件是深度探索宇宙的关键

  • 2022-07-14
  • 本文字数:2599 字

    阅读完需:约 9 分钟

史上最强韦伯太空望远镜:软件是深度探索宇宙的关键

近日,承载人类探索星辰大海梦想的詹姆斯·韦伯望远镜因为一组从距离地球 100 万英里处拍摄的全彩照片而成为全球热议话题。韦伯望远镜(简称“韦伯”)是哈勃望远镜的继任者,于 1996 年开发,最初计划于 2007 年发射,数次延期后最终于 2021 年 12 月升空,项目花费预计高达百亿美元。


花了 25 年才完成,韦伯望远镜也是目前史上最复杂、最精密的太空望远镜。“韦伯不仅仅是哈勃的一个更好的版本,它是一个新事物,”美国太空望远镜科学研究所(STScI,负责韦伯运营工作的组织)天文学家 Erik Tollerud 说,韦伯将成为天文学的探索引擎,而天文学是一个基于软件的领域。

软件是深空探索的关键

按照官方的说法,西门子在韦伯项目中贡献了巨大力量。


望远镜中的集成科学仪器模块(ISIM)包含传感器、相机、电子设备等元素的复杂组合。从最低级别的定制化集成电路,到 ISIM 中四种科学仪器的整体多物理场仿真,西门子软件可以说渗透到了韦伯项目中的各个层面:


  • Tanner 设计套件(包含内置 Calibre 集成)负责建立关键的模数转换器(ADC)阵列,将由韦伯拍摄系统捕捉到的模拟图像,转换为可以下载的数字图像。Teledyne Technologies 在 Lewyn Consulting Incorporated (LCI)的支持下,为四大光学仪器中的三种提供了专用集成电路(ASIC),而此阵列正是这套集成电路的组成部分。

  • 在英国莱斯特大学空间研究中心,NX 和 Teamcenter 被用于 MIRI 模块(低温仪器模块的一部分)的设计、模拟和制造。

  • 各仪器间依靠西门子 Capital 软件实现电子连接。此外,西门子还使用了 Femap 帮助 NASA 模拟韦伯望远镜的组件性能,该软件能够汇集所有解算器信息,借此对韦伯望远镜上的全组装仪器模块进行热分析与结构分析。

使用什么类型的数据库

韦伯望远镜项目是美国宇航局第一个将 XML 用于数据库的大型太空任务。NASA 科学家使用 XML 作为他们的数据库。据 Wiki 百科介绍,这是一种面向文档的数据库。它有助于交换信息,从不同的地面系统组件迁移数据,还减少了每个数据库版本所需的测试。


航天器内部的数据要迁移到各个地面系统组件,迁移由航天器厂商负责。放在以前,这个过程是非常费钱且费时的。当韦伯项目安装 XML 系统作为他们的数据库时,组件之间的数据迁移变得容易多。此外,数据库可以解决系统中的多个问题。目前,韦伯项目中的 XML 已经在模拟器、前端处理器、工程档案、分析系统等系统中得到应用。

飞行软件用 C++编写

韦伯项目整体采用事件驱动的软件架构 (event-driven architecture)。根据太空望远镜科学研究所发表的论文,此举为操作望远镜提供了更大的灵活性,也大幅简化了底层系统。此外, 事件驱动系统的自主性提供了基于遥测响应的航天器和科学仪器指令。在发生故障的情况下,望远镜可继续进行不受事件影响的科学观测计划的部分,从而保证观测站的效率最大化。


韦伯项目简化机载结构


韦伯望远镜的科学操作是由 ASCII(而非二进制命令块)板载脚本来驱动,该脚本的编写借助的则是 JavaScript 的一套定制化版本。脚本解释器采用的是 C++编写的飞行软件,负责操作航天器与科学仪器。


其中,板载脚本能够自动构建并向飞行软件发出实时命令和遥测请求,进而指导各 Observatory(天文台)子系统(包括科学仪器、姿态控制等)的运作。飞行软件随后会执行板载脚本发来的命令,并返回遥测数据。板载脚本对遥测数据进行实时评估,再调用脚本将状态信息发送至更高级别的板载脚本,进一步根据观测计划中的跳过逻辑对特定事件做出响应。

344 个故障点,确保应急计划

韦伯项目对于单点故障项目也给予了很多关注。2018 年的一份审查报告曾显示,NASA 估计整个韦伯望远镜至少还有 344 个在完全展开前可能发生的故障点。单点故障(single point of failure,缩写 SPOF)是指系统中一点失效,就会让整个系统无法运作的部件。


换句话说,只要其中任意 1 个问题出现,都可能让整个系统无法顺利运作。一般可以透过冗余的方式增加多个相同机能的部件,只要这些部件没有同时失效,系统(或至少部分系统)仍可运作,这会让可靠度提高,不过也增加成本和一些设计难度。而韦伯也很难做到“完全冗余”。


后来,根据该份审查报告,NASA 对韦伯望远镜进行了系统性的排查与测试。NASA 戈达德韦伯部署系统负责人 Alphonso Steward 表示,韦伯任务的大部分内容中都存在“相当多的冗余”。其应急计划覆盖了从超级简单到非常复杂的整个范围,有些计划甚至就像“重新发送未通过的命令”一样简单。

开源对太空事业的帮助

值得一提的是,开源也为天文学提供了有力的支撑。当前,开源软件已经成为天文学家手中的重要工具,而 Python 则成为其中最常见的首选编程语言。与众多技术领域一样,Python 及其相关科学 Python 生态系统,在过去十年间风靡整个天文科学世界,Astropy 等项目也在这股风潮中发挥了重要作用。


具体来说,天文学家们的工作严重依赖 NumPy 和 matplotlib 等数学软件包。而现代天文学家工作流程中最核心的工具可能是 Astropy,该项目由 Astropy 核心包和一系列工具包组成。超过 400 人为 Astropy 做出了贡献,其中包括天文学家和其他科学家、软件工程师和基础设施专家。


在 GitHub 负责管理太空望远镜科学研究所数据档案的产品管理总监 Arfon Smith 曾在受访时表示,韦伯太空望远镜是个庞大的项目,其研发周期不可能在几年间完成。事实上,这台望远镜已然经历 20 多年的发展沉积,而直到过去五年左右,开源成果才开始在项目之内生根发芽。


韦伯望远镜项目的特殊之处在于,过去几年来,开源已经成为全球天文学家社区在合作构建韦伯科学项目时能用到的最便捷、最灵活的方式。


从将原始图像转换为科学数据的核心数据管道,到通过模拟场景帮助天文学家们探索望远镜的最佳使用方式,再到用于探索新发现的科学工具,开源已经成为这些创新技术成果中的绝对核心。


宇宙的预估年龄(自“宇宙大爆炸”以来)为 138 亿年。在如此漫长的岁月中,其他星球上是否也孕育出了生命?宇宙中还有无数秘密有待揭开,而也许韦伯望远镜能帮助我们找到答案。


参考链接:


https://www.stsci.edu/~idash/pub/dashevsky0607rcsgso.pdf

https://github.com/readme/featured/webb-telescope-astropy

https://github.blog/2022-01-18-how-open-source-is-supporting-nasas-new-eyes-in-space/

https://coderons.com/post/the-james-webb-space-telescope-hsh

https://www.oschina.net/news/202809/jwst-runs-a-proprietary-interpreter

https://ntrs.nasa.gov/api/citations/20060002698/downloads/20060002698.pdf

2022-07-14 21:3710509

评论 2 条评论

发布
用户头像
据 NASA 称,韦伯的通信系统并不华丽。相反,数据和通信系统的设计除了可靠,还是可靠。换句话来讲都是老掉牙的技术和语言,稳定是第一。
2022-07-18 09:11
回复
用户头像
开源已经成为这些创新技术成果中的绝对核心.
2022-07-16 09:21
回复
没有更多了
发现更多内容

SolidUI 上Gitee AI-人工智能热门

李孟聊AI

开源 2D 3D AIGC ChatGPT

Kubernetes——构建平台工程的利器

SEAL安全

Kubernetes 平台工程

对线面试官-Redis(一)

派大星

Java 面试题

【直播预告】今晚7点,来HarmonyOS极客松直播间与技术专家聊聊新技术!

HarmonyOS开发者

HarmonyOS

基于ChatGPT函数调用来实现C#本地函数逻辑链式调用助力大模型落地

EquatorCoco

函数 C++ ChatGPT

IoTOS v1.0.0 开源,高效 实用 | 免费商用

IoTOS

IoT 若依 物联网, 开源物联网 国产OS开源社区

基于STM32的无人售货机系统设计

DS小龙哥

6 月 优质更文活动

【TypeScript】TS自定义类型之对象属性必选、对象属性可选

不叫猫先生

typescript 6 月 优质更文活动

Sentinel 机制解决 Redis 缓存雪崩问题:限流、降级与熔断策略实践

xfgg

redis sentinel 6 月 优质更文活动

K8S中的Node管理

穿过生命散发芬芳

k8s 6 月 优质更文活动

龙蜥白皮书精选:Ancert——硬件兼容性验证与守护

OpenAnolis小助手

开源 龙蜥社区 龙蜥操作系统 Ancert 硬件兼容性

k8s中PV和PVC的生命周期

穿过生命散发芬芳

6 月 优质更文活动

C语言编程—中缀表达式转换为后缀表达式

二哈侠

C语言 中缀 6 月 优质更文活动

数字非洲,沐光而行

脑极体

出海

让性能腾飞!亚马逊云科技的 Java 云端之旅

亚马逊云科技 (Amazon Web Services)

机器学习 Java' Amazon EC2

创新涌动于先丨2023 PingCAP 用户峰会等你来!

PingCAP

数据库 TiDB pingCAP 平凯星辰 用户峰会

ChatGPT小型平替之ChatGLM-6B本地化部署、接入本地知识库体验 | 京东云技术团队

京东科技开发者

知识库 企业号 6 月 PK 榜 ChatGLM-6B LLM模型

Apache Doris 1.2.5 版本正式发布

SelectDB

设计模式之工厂模式

越长大越悲伤

设计模式 工厂模式

龙蜥操作系统完成与高通 Cloud AI 100 兼容认证

OpenAnolis小助手

开源 操作系统 龙蜥社区 兼容适配 高通

作为超级自动化的重要先驱,流程挖掘正在成为组织运营标配

王吉伟频道

人工智能 RPA 超自动化 流程挖掘 业务流程

目前只To B,腾讯云为什么优先发布行业大模型,而非大模型?

B Impact

AI “机里机气”的虚构内容,令人愤慨

B Impact

6月14日红杉最新报告:The New Language Model Stack

B Impact

ChatGPT 不只是聊天机器人,更是……

baiyutang

创业 openai ChatGPT

Google Guava中 EventBus 导致线程阻塞

红袖添香

Java 多线程 EventBus

Flink 流批一体在 Shopee 的大规模实践

Apache Flink

大数据 flink 实时计算

Nest 实现 OSS 签名直传上传回调

昆吾kw

OSS Node 后端开发 文件上传 nestjs

参与共建 SolidUI AI 生成可视化项目:开源社区的力量

李孟聊AI

开源 2D 3D AIGC ChatGPT

如何设计一个高效的分布式日志服务平台

百度Geek说

分布式 企业号 6 月 PK 榜 服务平台 大模型结合 6 月 优质更文活动

史上最强韦伯太空望远镜:软件是深度探索宇宙的关键_开源_罗燕珊_InfoQ精选文章