SpaceX火箭精准着陆的算法

Lars Blackmore是SpaceX的首席火箭着陆工程师,他撰写的文章《火箭自主精准着陆》(Autonomous Precision Landing of Space Rockets)中粗略提到了猎鹰9火箭精准着陆的算法,即凸优化(Convex Optimization)。

实现精准着陆的关键在于控制偏离变量(Dispersions)。降落过程中的环境不确定性导致偏离变量增加。在着陆前的一瞬间,至少要99%的偏离变量值符合要求,否则着陆将会失败。控制偏离变量的三个关键过程是:1)返回前发动机点火及大气层外的轨道控制;2)大气层内采用栅格翼(Grid Fin)的空气动力控制;3)着陆前发动机点火及转向控制(或横向移动)。

很显然,对降落过程中的火箭进行远程控制是不现实的,必须采用自主控制,所有的计算和控制均须火箭自行完成,且必须瞬间完成。Lars Blackmore提到,降落的高速控制计算是凸优化计算,采用了CVXGEN生成飞控代码(Flight Code)。CVXGEN是一套自动生成解决凸优化问题程序代码的软件,作者是斯坦福大学的Jacob Mattingley博士。CVXGEN适合解决少于2000个系数因子的凸优化问题。

猎鹰9火箭采用CVXGEN生成的飞控代码是静态的还是动态的?前者是一次性生成、安装并执行,后者是在降落和着陆过程中动态生成并执行。个人判断倾向于后者。

CVXGEN作者Jacob Mattingley博士的指导老师是斯坦福大学教授Stephen Boyd。Stephen Boyd教授所著的《凸优化》(Convex Optimization)一书是凸优化问题方面的权威著作。

Leave a Reply

Your email address will not be published. Required fields are marked *