💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
针对固定翼飞行器的最短时间航迹的最佳控制策略,可以采用基于模型预测控制(MPC)的方法。MPC是一种先进的控制策略,它通过对系统动态模型进行优化,能够在每个控制周期内计算出最优控制输入,以实现系统的最佳性能。
在考虑航路点约束的情况下,可以将航路点作为系统状态的约束条件,同时将其他约束条件(如飞行器动力学、性能限制等)也纳入考虑。这样,MPC控制器就能够在保证航路点到达的同时,满足其他约束条件,实现飞行器的最短时间航迹。
具体实现时,需要建立固定翼飞行器的动态模型,并将其作为MPC控制器的基础。在每个控制周期内,MPC控制器将对未来一段时间内的飞行器状态进行预测,并通过优化算法计算出最优的控制输入,以实现最短时间航迹的目标。
另外,航路点约束的考虑也可以通过将航路点的到达时间和顺序等信息纳入MPC控制器中,从而实现对航路点的约束。这样一来,MPC控制器就能够在保证飞行器按照指定航路飞行的同时,最大化地减少飞行时间。
综上,基于MPC的最佳控制策略可以很好地应用于固定翼飞行器的最短时间航迹规划,并且能够充分考虑航路点约束,以实现飞行器的最佳性能。
📚2 运行结果
部分代码:
function [u, xnext, optval] = mpc_step(x,x_df, t)
Q = diag([1,1,0.1,0.1]);
Qhalf = sqrtm(Q);
v_max=15.5;
% Turn radius = 20m
w_max = v_max/20; % rad/sec
m = 1; % kg
f_max = w_max*m*v_max;
N = 4;
dt = .1;
T=5;
A = [1 0 dt 0;
0 1 0 dt;
0 0 1 0;
0 0 0 1];
B = [0 0;
0 0;
dt 0;
0 dt];
A_force = zeros(N,2);
for n=1:N
A_force(n,:) = [sin(2*pi*n/N) cos(2*pi*n/N)];
end
force_lim = f_max*ones(N,1);
A_vel = zeros(N,4);
for n=1:N
A_vel(n,:) = [0 0 sin(2*pi*n/N) cos(2*pi*n/N)];
end
vel_lim = v_max*ones(N,1);
desired_traj = x_df(t:dt:t+dt*T)'
cvx_precision(max(min(abs(x))/35,1e-6))
cvx_begin
variables X(4,T+1) U(2, T)
max((A_force*U)')' <= force_lim;
max((A_vel*X)')' <= vel_lim;
X(:,2:T+1) == A*X(:,1:T)+B*U;
X(:,1) == x';
minimize ( norm(Qhalf*(X(:,1:T) - desired_traj(:,1:T)),'fro') )
cvx_end
u = U(:, 1);
xnext = (A*x'+B*u)'+[normrnd(0, .1), normrnd(0, .1), 0, 0];
optval = cvx_optval;
if strcmp(cvx_status, 'Infeasible' ) == 1
optval = Inf;
end
end
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
[1]王晓海,孟秀云,李传旭.基于MPC的无人机航迹跟踪控制器设计[J].系统工程与电子技术, 2021, 43(1):8.DOI:10.3969/j.issn.1001-506X.2021.01.23.
[2]郭亦平,王益民,任元洲.基于视线导航法的AUV航迹MPC控制技术研究[C]//2018年数字化造船学术交流会议论文集.2018.