- 弹道优化组成
MissileMain.m包含环境参数、弹体参数设置,读入气动力数据,读入推力数据;设置两个 phase,phase(1)为主动段,phase(2)为被动段,前者质量随时间变化,后者质量不变。设置仿真过程中状态量、控制量(攻角、侧滑角变化率)的初始及终端约束、过程约束,设置 guess 初始值与终端值,指定两段间连接关系,指定末端约束(eventgroup 在 endpoint 中设置);
MissileEndpoint.m:利用 cell 数组,指定两段 eventgroup 的限制,并给出表达式,指定性能指标 output.objective;
MissileContinuous.m:给出各段动力学方程,设置phaseout(1).dynamics、
phaseout(2).dynamics、phaseout(1).path、phaseout(2).path。 - setup.auxdata = auxdata
该句指明程序中的全局变量名为 auxdata。程序中该全局变量为结构数组,用于保存所有全局变量,亦可在 main 程序中将气动、推力、大气环境等也读入 auxdata 中。 - 状态量、控制量
在三自由度优化程序中,状态量为速度、弹道倾角、弹道偏角(运动学方程),x 方向位置、y 方向位置、z 方向位置(之心运动学方程),质量;控制量为攻角、侧滑角;由于攻角侧滑角受舵效限制不能瞬时响应,在优化问题中将攻角、侧滑角作为状态量,而将二者变化率作为名义控制量。 - 推力
在优化问题中,可采用平均推力与平均秒流量进行计算;亦可直接读入推力、秒流量曲线,进行插值运算。 - 气动力
按照气动给出的形式进行读取,在 MissileContinuous.m 中采用插值运算求解。 - 输出结果
Output 为包含 5 个字段的结构数组,其中 result 中包括 objective(性能指标值)、solution(按照 phase 顺序存储最优解相关信息)、nlptime (非线性问题求解时间)、配点信息等。
GPOPS弹道优化设置指南
于 2023-06-11 23:16:33 首次发布