SpaceX: 太空火箭自主精准着陆

本文是根据Lars Blackmore在16年的一篇公开论文翻译而来,虽然有些早而且是科普文章,但是可以初见一些SpaceX火箭着陆的细节,后面我会对spaceX landing control 技术主管MIT博士期间研究火箭控制算法的论文进行讲解,敬请期待。
Lars Blackmore:Lars Blackmore is principal rocket landing engineer at SpaceX.
在这里插入图片描述

太空火箭自主精准着陆

Lars Blackmore 是SpaceX公司的首席火箭着陆工程师。
精准着陆能够增强太阳系的探索并实现可重复利用和重复加注燃料的火箭。

对自主航天器或火箭进行着陆非常具有挑战性,在预定目标附近实现精准着陆更是难上加难。精准着陆有潜力改善太阳系探索并实现像飞机一样可重复利用和重复加注燃料的火箭。

他介绍了精准着陆的挑战、最近在地球上商业可重复使用火箭领域精准着陆的进展,以及将此技术扩展到火星等行星着陆所需的条件。

自主航天着陆简史

在过去50年里,自主航天器将人类从太空送回、将几个火星车着陆在火星表面、将探测器送至土星的卫星土卫六、在小行星着陆,等等。通过这些任务,人们现在知道火星曾经温暖多水,很可能支持生命存在,而土卫六有甲烷湖,甲烷是一种有机化合物。稳步进展使得更重的有效载荷能够在更奇特的地点着陆,最近的改进如先进减速技术将进一步扩大探索者在太阳系中的触角。

尽管这些任务瞄准目标行星表面上的特定位置,但精确度各不相同。精确度用着陆椭圆来量化,着陆椭圆是飞行器99%可能着陆的区域。飞行前,任务规划者必须选择一个着陆点,使得着陆椭圆内的每一点都可安全着陆。图1显示火星任务的着陆椭圆在稳步改善,但仍以公里而非米来衡量。
在这里插入图片描述

精准着陆的必要性

当精度以公里计时,任务必须在沙漠(火星情况)或海洋或平原(地球情况)着陆。如果着陆精度可以达到米级而非公里级,一个充满机遇的世界将会开启:

  • 探索火星洞穴和山谷
  • 从其他行星取回样本
  • 在整个太阳系建立永久前哨
  • 制造火箭,在将有效载荷送入轨道后,能像飞机一样重复加注燃料和重复使用,而不是单次飞行后就丢弃,从而大幅降低太空旅行成本

挑战

在行星上实现精准着陆存在一些重要挑战。

极端环境

从太空进入大气层的飞行器要经历极端条件。

  • 绝大部分进入能量通过与大气的摩擦耗散,导致极端高温必须耗散;例如阿波罗防热盾前缘温度超过2500摄氏度。
  • 阻力导致再入飞行器受到巨大作用力;例如SpaceX的Falcon 9 可重复使用(F9R)火箭重约35吨,再入时最大减速为6个地球重力加速度。
  • 强风吹拂再入飞行器,地球高空风速经常超过每小时100英里。
  • 由于航天器周围电离空气干扰无线电通信,所有或部分再入过程中通信可能中断;例如阿波罗13号返回舱经历了6分钟的通讯中断。
  • 最后,在地球轨道外运行的航天器受到强辐射,可能对电子设备致命。木星附近执行任务尤其如此,那里辐射环境极其强烈。

微小的错误余地

大多数着陆,第一次尝试必须成功,否则飞行器将在撞击中被摧毁。此外,很少有额外推进剂可用于第二次着陆尝试。对于大型火箭发动机,技术上很难并且低效地将推力调低到悬停状态——每多悬停一秒都是在浪费推进剂。

对于 F9R,火箭必须在高度恰好为零时速度也恰好达到零。如果速度过早到零,它会坠毁;如果速度过晚到零,它会开始回升,此时切断发动机然后下落是唯一选择。这需要对垂直位置和速度有精确的了解和控制。

触地挑战

通常使用专用系统如着陆支架来减缓着陆载荷,保护火箭免受岩石损坏,并防止着陆后倾覆。设计出在质量和空间上尽可能高效的着陆支架是一项挑战,将火箭送到直立静止位置并避免超出支架承受能力也是一项挑战。对于"好奇号"火星车,天空吊车系统实现了火星车悬架的双重用途即作为着陆减震系统。

此外,着陆环境可能很危险。对于"火星探测车",岩石和强风的组合可能会刺破着陆气囊,因此增加了自主视觉和火箭系统来检测并减小横向速度。

需要击中目标

实现精确着陆要求飞行器能在风等干扰下击中目标。对于太空再入飞行器,这是一个独特的问题,因为它既不是弹道导弹也不是飞机。弹道导弹试图高速击中目标,因此(像子弹一样)它利用高弹道系数和高速度来避免受干扰影响。飞机确实会被干扰推来推去,但机翼赋予它轻松纠正这些干扰的控制权。垂直着陆的火箭两者都没有,使得精确着陆极具挑战性。

最新进展

在过去两年里,两家商业公司 SpaceX 和 Blue Origin 已经将火箭送入太空并在距目标数米范围内着陆回地球。Blue Origin 的 New Shepard 火箭已经在该公司西德克萨斯州试验场多次着陆。SpaceX 的 Falcon 9 一级火箭已经在Cape Canaveral陆地以及名为"自主太空港无人驳船"(ASDS)的浮动着陆平台上着陆,如图2所示。图3展示了 SpaceX 最近着陆的图像。
在这里插入图片描述

控制弥散是实现精确着陆的关键,弥散是由环境不确定性引起的轨迹变化。为了说明这一点,考虑 Falcon 9一级从太空返回的例子。为实现精确着陆,必须控制弥散使得触地时至少99%的弥散落在指定着陆区内。对于F9R,这意味着在无人驳船着陆时着陆位置的弥散要达到10米或更好,在Cape Canaveral着陆时达到30米或更好。

图4展示了F9R任务的各个阶段。在上升过程中,风将火箭推来推去,使得弥散增大。第一次缩小弥散的机会是倒推燃烧,使火箭射回发射台。在大气层再入期间,风和大气不确定性再次增加弥散。着陆燃烧是最后一次减小弥散的机会,需要能够转向或侧向移动。

对于 F9R,控制弥散需要精确的倒推燃烧瞄准、带翼的大气内控制(如图5所示)以及带转向机动的着陆燃烧。后者是最具挑战性的方面之一,也是火星精确着陆提案所需的。飞行器必须计算从当前位置到目标的转向轨迹,在不超出硬件能力的情况下静止着陆并保持良好姿态。计算必须自主完成,在几分之一秒内完成。如果不能及时找到可行解,航天器将坠毁在地面上。如果不能找到最优解,可能会耗尽可用推进剂,结果一样。最后,硬件故障可能需要多次重新规划轨迹。

自1960年代以来,这类问题的一维通用解就已存在,但在三维空间还没有。在过去十年,研究表明如何使用现代数学优化技术来解决火星着陆问题,并保证及时找到最佳解。由于地球大气层密度是火星的100倍,气动力成为主要关注点,而不是像在轨迹规划阶段可以忽略的微小干扰。因此,地球着陆是一个非常不同的问题,但SpaceX和Blue Origin已经证明这也是可以解决的。 SpaceX 使用 CVXGEN 生成定制飞行代码,实现超高速机载凸优化。
在这里插入图片描述

下一步行动

虽然从太空高精度着陆已经在地球上实现,但将这项技术转移到在太阳系其他天体着陆仍面临挑战。

一个问题是导航:精确着陆要求火箭精确知道它在哪里以及移动速度有多快。虽然GPS对地球着陆是一大助力,但宇宙其他任何地方都是GPS盲区。几乎所有行星任务都依赖地面导航:巨大的无线电天线跟踪飞行器,计算其位置和速度,并将这些信息上传到飞行器的飞行计算机。这对于只需精确到数公里的着陆就足够了,但对于需要精确到数米的着陆则不够。

类似于驾驶时看后视镜,地面跟踪随着距起点距离增加而越来越不准确。相反,需要聚焦在目标行星上才能在其上精确着陆。"深度撞击"是利用目标导航的一个任务例子,但(顾名思义)它是一个撞击任务,而非着陆。

最近的研究利用地形相对导航实现了数十米量级的导航精度,着陆器在着陆过程中成像行星表面并将特征与机载地图匹配来确定自己的位置。这可以在地球上进行测试,至少部分不需要从太空执行整个再入。

几家公司已使用实验飞行器,其中一些如图6所示,通过低空跳跃演示动力下降技术。利用这些飞行器,地形相对导航已在地球上进行了测试,"火星2020"火星车任务正在考虑在火星上进行演示。如果成功,将地形相对导航与已证实的精确制导控制相结合,最终可能实现在火星、木卫二以及太阳系其他天体上的精确着陆。
在这里插入图片描述

参考文献

[参考文献列表从原文中省略]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/22453.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenEuler华为欧拉系统安装—从零开始,小白也能学会

介绍 openEuler(欧拉)是一款开源操作系统。 当前openEuler内核源于Linux,支持鲲鹏及其它多种处理器, 能够充分释放计算芯片的潜能,是由全球开源贡献者构建的高效、 稳定、安全的开源操作系统,适用于数据库…

JVM运行数据区-Java堆

Java堆 堆区(Heap区)是JVM运行时数据区占用内存最大的一块区域,每一个JVM进程只存在一个堆区,它在JVM启动时被创建,JVM规范中规定堆区可以是物理上不连续的内存,但必须是逻辑上连续的内存。 1、堆区是线程…

「网络编程」基于 UDP 协议实现回显服务器

🎇个人主页:Ice_Sugar_7 🎇所属专栏:计网 🎇欢迎点赞收藏加关注哦! 实现回显服务器 🍉socket api🍉回显服务器🍌实现🥝服务器🥝客户端 &#x1f3…

纯血鸿蒙实战开发—如何添加顶部tab页面

1.Tabs组件 Tabs组件的页面组成包含两个部分,分别是TabContent和TabBar。TabContent是内容页,TabBar是导航页签栏. 根据不同的导航类型,布局会有区别,可以分为底部导航、顶部导航、侧边导航,其导航栏分别位于底部、顶…

react基础学习 JSX

JSX的测试网站 Babel Babel 可以测试代码的效果 JSX实现map列表 注意 key不一样(使用遍历的时候) 简单条件渲染 复杂条件渲染 绑定事件 function App() {const colorse (e)>{console.log("测试点击",e);}const colorse1 (name)>{…

地理信息科学中的大数据挑战

在信息化爆炸的时代,地理信息科学(GIScience)正经历着前所未有的变革,其中,地理空间大数据的涌现为科学研究与应用带来了前所未有的机遇与挑战。作为地理信息与遥感领域的探索者,本文旨在深入剖析地理空间大…

揭秘HubSpot集客营销:如何吸引并转化全球潜在客户

随着全球数字化浪潮的推进,企业出海已经成为许多公司扩大市场、增加品牌曝光度的重要战略。HubSpot集客营销作为一种以客户为中心、数据驱动的营销策略,为企业在海外市场的成功提供了强有力的支持。作为HubSpot亚太地区的合作伙伴,NetFarmer将…

godot的安装和使用 1

今天是第一节,因此呢先做godot的安装,其实很简单 godot官网:https://godotengine.org/ 进入官网, 安装好之后呢,会有两个文件 打开第一个就是可视化界面的,进入后是这个样子 说明安装成功了

鸿蒙开发接口安全:【@ohos.abilityAccessCtrl (访问控制管理)】

访问控制管理 说明: 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 导入模块 import abilityAccessCtrl from ohos.abilityAccessCtrlabilityAccessCtrl.createAtManager createAtManager(): AtMan…

OpenCV学习(4.1) 改变颜色空间

1.目标 在本教程中,你将学习如何将图像从一个色彩空间转换到另一个,像BGR↔灰色,BGR↔HSV等除此之外,我们还将创建一个应用程序,以提取视频中的彩色对象你将学习以下功能:cv2.cvtColor,**cv2.i…

更适合工程师和研究僧的FPGA专项培训课程

各位编程精英er~ 社区打造的FPGA工程师培训班上线后,有不少同学后台私信询问:“能不能出个那种专门针对某个知识点的课程呢?我想针对自己的薄弱点深入学习。” 贴心如我,当然会满足大家的学习需求啦。本周,社区FPGA专…

Nextjs使用教程

一.手动创建项目 建议看这个中文网站文档,这个里面的案例配置都是手动的,也可以往下看我这个博客一步步操作 1.在目录下执行下面命令,初始化package.json文件 npm init -y2.安装react相关包以及next包 yarn add next react react-dom // 或者 npm install --save next react…

使用Python操作Redis

大家好,在当今的互联网时代,随着数据量和用户量的爆发式增长,对于数据存储和处理的需求也日益增加。Redis作为一种高性能的键值存储数据库,以其快速的读写速度、丰富的数据结构支持和灵活的应用场景而备受青睐。本文将介绍Redis数…

猫头虎分享已解决Bug || Error: ‘fetch‘ is not defined

原创作者: 猫头虎 作者微信号: Libin9iOak 作者公众号: 猫头虎技术团队 更新日期: 2024年6月6日 博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: &…

独立游戏之路 -- 上架TapTap步骤和注意事项

个人开发者游戏上架TapTap上架步骤和注意事项 一、TapTap 介绍二、独立游戏上架 TapTap 的步骤2.1 创建游戏2.2 提交游戏审核2.3 TapTap 平台上发布。 三、注意事项3.1 关于备案3.2 遵守 TapTap 的规定3.3 保证游戏质量 四、常见问题4.1 隐私政策问题4.2 先发布还是先优化&…

PIVOT函数-动态列

一、需求说明 原始表&#xff1a; select * from pathogen_pro; 将pm_name的值转成对应的列&#xff0c;效果如下 二、PIVOT函数说明 PIVOT(<聚合函数>([聚合列值]) FOR [行转列前的列名] IN([行转列后的列名1],[行转列后的列名2],[行转列后的列名3],.......[行转列后…

Julia编程11:变量作用域 Scope of Variables

There are two main types of scopes in Julia, global* scope* and local* scope*. Julia有全局变量作用域和局部变量作用域&#xff0c;函数或者一些结构体、循环体如for等是否内部是局部环境可以参照下表。 ConstructScope typeAllowed withinmodule, baremoduleglobalglo…

.Net 基于.Net8开发的一个Asp.Net Core Webapi后端框架

1.项目结构 该项目是基于.net8开发的Asp.Net Core WebApi后端服务,集成了Efcore,Autofac,Jwt,AutoMapper,Serilog,Quartz,MiniExcel等组件。该框架简单易上手&#xff0c;没有额外的学习成本; 该项目采用了多层结构设计&#xff0c;有利于解耦&#xff0c;包含公共层&#xff0…

MySQL数据库整体知识点简述

目录 第一章&#xff1a;数据库系统概述 第二章&#xff1a;信息与数据模型 第3章 关系模型与关系规范化理论 第四章——数据库设计方法 第六-七章——MySQL存储引擎与数据库操作管理 第九章——索引 第10章——视图 第11章——MySQL存储过程与函数 第12章——MySQL 触…

IIS7整合Tomcat9服务器,并搭建ASP+PHP+JSP完整运行环境

本文以Windows Vista系统为例&#xff0c;详细讲解IIS7整合Tomcat服务器&#xff0c;同时支持ASPPHPJSP三种Web动态网页技术的方法。 Vista系统自带的IIS版本为7.0&#xff0c;能安装的IE浏览器的最高版本为IE9。IE9也是Vue2前端框架支持的最低浏览器版本。 【准备工作】 去微…