【四旋翼】四旋翼无人机的几何跟踪控制(含速度和加速度误差)【含Matlab源码 7380期】

✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,Matlab项目合作可私信或扫描文章底部QQ二维码。
🍎个人主页:Matlab凤凰涅槃
🏆代码获取方式:扫描文章底部QQ二维码

⛳️座右铭:行百里者,半于九十。
更多Matlab路径规划仿真内容点击👇
Matlab路径规划(凤凰涅槃版)

⛳️关注微信公众号Matlab王者助手或Matlab海神之光,更多资源等你来!!

⛄一、四旋翼飞行器风场中几何控制

四旋翼飞行器(也称UAV或多轴飞行器)在风场中的几何控制主要是通过调整四个旋翼的旋转速度和倾斜角度(即桨距角),来抵消风的影响并保持飞行器稳定。这个过程主要包括以下几个步骤:

1 姿态感知:飞行控制器首先需要精确测量飞行器的姿态,包括俯仰、偏航和滚转等方向,通常通过陀螺仪、加速度计和磁力计等传感器完成。

2 风场建模:利用环境模型,如大气动力学理论,估计当前风向和风速,这有助于预测风对飞行器运动的影响。

3 控制策略:基于姿态感知数据和风场信息,控制器会计算出每个旋翼应如何调整其旋转速度和桨距角,以产生升力并补偿风的效果。常见的控制策略有PID(比例积分微分)控制、滑模控制等。

4 实时调整:旋翼通过电子速度控制器(ESC)接收指令,并调节电机电流来改变旋翼的旋转速度,同时调整桨叶的角度(通过舵机)来调整桨距。

5 反馈循环:整个过程是一个闭环系统,通过不断监测飞行状态并与设定的目标相对比,进行实时的控制调整,以保持飞行器在风场中的稳定飞行。

⛄二、部分源代码和运行步骤

1 部分代码
clear all;
clc;

%% Initial Conditions
x0=[0, 0, 0]‘; % Initial Position
v0=[0, 0, 0]’; % Initial Velocity
R0=eye(3); % Initial Rotation Matrix
omega0=[0, 0, 0]'; % Initial Angular Velocity

%% Numerical Solution
[t,s]=ode45(@Quadrotor,[0 40],[x0;v0;R0(:,1);R0(:,2);R0(:,3);omega0]); % Duration: 0 to 40S

%% Error Computation
e_x=Gen_e_x(t,s); % Position Error
e_R=Gen_e_R(t,s); % Attitude Error

%% Ploting Errors

subplot(3,2,1)
plot(t,e_x(:,1))
ylabel(‘e_x_1’)
grid on

subplot(3,2,2)
plot(t,e_R(:,1))
ylabel(‘e_R_1’)
grid on

subplot(3,2,3)
plot(t,e_x(:,2))
ylabel(‘e_x_2’)
axis([0 40 -.1 .1])
grid on

subplot(3,2,4)
plot(t,e_R(:,2))
ylabel(‘e_R_2’)
grid on

subplot(3,2,5)
plot(t,e_x(:,3))
xlabel(‘Time (s)’)
ylabel(‘e_x_3’)
grid o

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值