代码网址:Falcon9-Soft-Landing-Simulation: 基于Simulink和Flightgear的猎鹰9号软着陆仿真 (gitee.com)
1. 运行步骤
## 软件配置- MATLAB 2020a - FlightGear 2019.1.2 - CVX(Matlab凸优化求解器)http://cvxr.com/cvx/ 凸优化工具箱使用安装网址 ---运行完安装程序后如下图所示: ## 使用方法
1. 将下载后的falcon9文件夹复制到 D:\Program Files\FlightGear 2020.3\data\Aircraft下(安装目录会有差异) 2. 编辑runfig.bat文件,修改flightgear路径等参数信息,本电脑修改后信息如下
运行runfg.bat脚本,开启FlightGear。开启后按v切换视图模式,按tab切换鼠标的作用。 如果出现"bad conversion"的错误,则在runfg.bat的最后一行末尾,加上--launcher,这样启动flightgear后,需要点一下左下角的开始飞行
3. 运行init.m,初始化参数(火星登陆器参数来自论文,猎鹰9参数来自github) 4. 运行cvx_solve.m,凸优化求解优化变量 5. 启动falcon9.slx的simulink仿真,guidance模块中的控制器利用凸优化求解出的位置、速度与真实的位置、速度的偏差和凸优化求解的推力,综合输出推力 6. 这里没有使用FlightGear自带的动力学模型,FlightGear只是用于可视化,动力学模型在Simulink中,是变质量的六自由度刚体模型,但输入力矩始终为0。 运行后flightgear显示效果如下:
gif 效果如下:
## 参考资料
Acikmese, B., Carson, J. M., & Blackmore, L. (2013). *Lossless Convexification of Nonconvex Control Bound and Pointing Constraints of the Soft Landing Optimal Control Problem. IEEE Transactions on Control Systems Technology, 21(6), 2104–2113.* doi:10.1109/tcst.2012.2237346
Acikmese, B., & Ploen, S. R. (2007). *Convex Programming Approach to Powered Descent Guidance for Mars Landing. Journal of Guidance, Control, and Dynamics, 30(5), 1353–1366.* doi:10.2514/1.27553
https://github.com/jonnyhyman/G-FOLD-Python
https://github.com/xdedss/GFOLD_KSP 标签:Control,FlightGear,--,优化,Landing,复现,猎鹰,com From: https://www.cnblogs.com/csymemory/p/17643424.html