三维路径跟踪算法:三维LOS制导+PID艏向+PID纵倾跟踪控制(Matlab代码、Simulink仿真)

 💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码、Simulink仿真


💥1 概述

三维路径跟踪算法通常涉及多个方面,包括三维路径规划、导航控制和姿态控制。以下是一种基本的三维路径跟踪算法,结合了三维LOS(Line-of-Sight)制导、PID(Proportional-Integral-Derivative)艏向控制和PID纵倾控制。

1. **三维路径规划**:
   - 首先,需要确定目标路径或轨迹,这可以是一系列连续的路径点,也可以是一个连续函数描述的曲线。
   - 根据所选路径和飞行器当前位置,确定下一个目标点。

2. **三维LOS制导**:
   - LOS制导是一种基本的导航方法,它通过计算飞行器与目标点之间的LOS角度来调整飞行器的航向和俯仰。
   - 计算LOS角度可以使用向量运算或者四元数来实现,确保飞行器指向目标点。
   - LOS角度的计算还可能受到风速、风向等环境因素的影响,需要相应地进行补偿。

3. **PID艏向控制**:
   - 使用PID控制器来调整飞行器的艏向,使其朝向LOS方向。
   - PID控制器根据当前艏向误差、艏向误差的变化率和累积误差来计算舵面或推力的控制输出。
   - 艏向控制器需要根据飞行器的动力系统和舵面配置进行调参,以获得良好的跟踪性能。

4. **PID纵倾控制**:
   - 使用PID控制器来调整飞行器的纵倾角,使其保持在期望的倾斜角度。
   - 纵倾角控制器同样根据当前纵倾角误差、误差变化率和累积误差来计算控制输出,调整飞行器的姿态。
   - 纵倾角控制器的参数也需要根据飞行器的动力学特性进行调节,以确保稳定的跟踪行为。

5. **整合与优化**:
   - 将三维LOS制导、PID艏向控制和PID纵倾控制整合在一起,构成一个完整的路径跟踪系统。
   - 通过不断优化参数,以及根据实际环境的反馈进行调整,使得飞行器能够稳定、精确地跟踪给定的路径或轨迹。

这种算法可以应用于各种类型的飞行器,包括飞机、直升机、多轴飞行器等,可以在不同的任务中实现精确的路径跟踪和导航控制。

📚2 运行结果

仿真平台:Matlab2020b/Simulink

部分代码:

figure
plot3(Y,X,Z,'-b',WaypointsPlot(:,2),WaypointsPlot(:,1),WaypointsPlot(:,3),'--r','LineWidth',1.5);
hold on;grid on;
scatter3(Y(1),X(1),Z(1),40,'p','filled','MarkerFaceColor','red');
scatter3(Y(end),X(end),Z(end),40,'h','filled','MarkerFaceColor','black');
scatter3(WaypointsPlot(:,2),WaypointsPlot(:,1),WaypointsPlot(:,3),40,'o','MarkerEdgeColor','red');
%axis equal;
%zlim([0 0.6]);
set(gca,'DataAspectRatio' ,[1 1 0.06]);
legend({'Track','Task Path','Start','End','WPs'},'Location','best');legend('boxoff');
xlabel('X[m]');ylabel('Y[m]');zlabel('Depth[m]');
set(gca,'ZDir','reverse');

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

[1]Chuan Liu, Xianbo Xiang, Lichun Yang, Jinjiang Li, Shaolong Yang,
A hierarchical disturbance rejection depth tracking control of underactuated AUV with experimental verification,Ocean Engineering,Volume 264,2022,112458,ISSN 0029-8018,

[2]庹冠军.无人水下航行器多模型切换控制方法研究[D].哈尔滨工程大学[2024-04-09].DOI:CNKI:CDMD:2.1018.048014.

🌈4 Matlab代码、Simulink仿真

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值