多旋翼无人机的软着陆,使用稳健的非线性控制和风力建模(Matlab代码实现)

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

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

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

💥1 概述

文献来源:

摘要:
多旋翼系统进行抓取、操作和检查时需要软着陆,以避免任何颠簸;因此,在多旋翼无人机(UAV)下的空气动力学效应下,一次性着陆是至关重要的。HYFLIERS项目中的一个任务是在管道架上进行着陆,主要是测量管道的厚度和腐蚀情况。管道架在着陆阶段由螺旋桨引起的感应气流产生未知干扰。对这个问题进行了两种情况的建模,即在地面和管道架上着陆。地面效应建模比较直接;然而,管道架会给系统建模带来更多的不确定性。空气动力学干扰的来源可能是外部风或者无人机螺旋桨在管道或地面附近引起的干扰。本文提出了考虑地面效应的四旋翼一次性着陆解决方案。首先,计算了靠近地面的螺旋桨引起的感应风,然后定义了靠近地面的反射模型。进行了考虑环境中风的四旋翼建模。接下来,将地面反射的风设置在系统的风模型中。由于无人机下的气流干扰和其行为的干扰,建模存在不确定性,因此选择了鲁棒非线性控制来控制系统。滑模控制器的校正增益是基于稳态推力定义的,它起到了不确定性的上限的作用。通过模拟成功展示了考虑地面效应的软着陆方法的优势。结果输入推力在管道附近平稳下降,以抵消地面效应推力。

详细文章见第4部分。

一、研究背景与意义

多旋翼无人机凭借其垂直起降能力和灵活机动性,在物流配送、电力巡检、灾害救援等领域得到广泛应用。然而,在复杂风扰环境下(如地面效应、阵风、管道架附近的气流干扰),实现安全平稳的软着陆仍面临挑战。传统PID控制在强风或非线性干扰下易出现超调、震荡甚至失控,而软着陆要求无人机在接触地面时垂直速度≤0.5m/s、姿态倾角≤5°,且能抵御外界干扰。因此,研究基于稳健非线性控制和风力建模的软着陆方法,对提升无人机任务安全性和可靠性具有重要意义。

二、关键技术挑战
  1. 非线性动力学特性
    多旋翼无人机是一个多变量、强耦合、高度非线性的系统,其动力学方程包含姿态角、角速度、推力等变量的复杂交互作用。传统线性控制方法难以处理此类非线性特性。

  2. 风扰不确定性
    风扰来源包括外部自然风、螺旋桨引起的感应风以及地面或管道架附近的气流反射。这些干扰具有时变性和不可预测性,对无人机姿态和高度控制产生显著影响。

  3. 地面效应建模
    靠近地面时,螺旋桨下洗气流被地面反射,导致推力增加和气流紊乱。地面效应的强度与无人机高度、螺旋桨转速和地面材质密切相关,需精确建模以补偿干扰。

  4. 模型不确定性
    无人机质量、惯性矩阵等参数可能因载荷变化或结构损耗而偏离标称值,导致控制模型与实际系统失配。

三、核心研究方法
  1. 非线性控制策略
    • Backstepping控制:通过递归设计将复杂系统分解为多个子系统,逐层设计虚拟控制量,最终实现全局稳定控制。例如,将无人机控制分解为位置子系统和姿态子系统,分别设计控制器并引入鲁棒项抑制干扰。
    • 滑模控制(SMC):设计滑模面使系统状态在有限时间内到达并保持在该面上,通过校正增益补偿不确定性。例如,基于稳态推力定义滑模控制器增益,作为不确定性的上限。
    • 自适应控制:根据系统状态实时调整控制参数,以适应模型变化和外部干扰。
  2. 风力建模与补偿
    • 风力干扰模型:通过计算螺旋桨引起的感应风和地面反射风,建立风力干扰模型。例如,定义靠近地面的反射模型,将地面反射风纳入系统风模型。
    • 卡尔曼滤波风速估计:利用加速度计、陀螺仪等传感器数据,通过卡尔曼滤波实时估计风速,并将估计值用于补偿控制,提升抗风能力。
  3. 地面效应建模
    • 螺旋桨下洗气流分析:计算靠近地面时螺旋桨引起的感应风速,结合地面反射模型,量化地面效应对推力和气流的影响。
    • 反射模型集成:将地面反射风纳入无人机动力学模型,通过仿真验证模型准确性。
四、仿真与实验验证
  1. 仿真环境搭建
    构建包含无人机动力学模型、风力模型和噪声模型的综合仿真平台。动力学模型基于牛顿-欧拉方程,风力模型考虑外部风和螺旋桨感应风,噪声模型模拟传感器误差和执行器延迟。

  2. 控制策略性能对比

    • 传统PID控制:在强风环境下出现超调和震荡,着陆垂直速度和姿态倾角超出安全范围。
    • 鲁棒非线性控制:通过滑模控制或Backstepping控制,有效抑制风扰和模型不确定性,着陆垂直速度≤0.3m/s、姿态倾角≤3°,满足软着陆要求。
  3. 风速估计效果验证
    基于卡尔曼滤波的风速估计方法,在仿真中实现风速估计误差≤0.2m/s,显著提升控制精度。

  4. 地面效应补偿效果
    通过集成地面反射风模型,无人机在低高度阶段推力调整更加平滑,抵消地面效应引起的推力突变,避免机械冲击。

五、研究结论与展望
  1. 研究结论
    • 稳健非线性控制(如滑模控制、Backstepping控制)可有效应对多旋翼无人机的非线性特性和风扰不确定性,显著提升软着陆精度和稳定性。
    • 风力建模与卡尔曼滤波风速估计相结合,可实时补偿风扰影响,增强无人机抗风能力。
    • 地面效应建模与补偿可优化低高度阶段推力控制,避免机械冲击。
  2. 未来展望
    • 多传感器融合:结合激光雷达、视觉传感器等数据,提升风速估计和地面效应建模的精度。
    • 强化学习应用:探索基于强化学习的自适应控制策略,进一步优化复杂环境下的软着陆性能。
    • 实际飞行测试:在真实风场环境中验证控制策略的有效性,推动技术落地应用。

📚2 运行结果

2.1 Quadcopter wind SMC ground

2.2 Quadcopter wind SMC pipes

其他就不一一展示。

部分代码:

% Parameters---------------------------------------------------------------
Ixx=7.0*10^-3;                    % kgm^2
Iyy=7.3*10^-3;                    % kgm^2
Izz=3.3*10^-3;                    % kgm^2
I=diag([Ixx,Iyy,Izz]);
m=1.2;                            % kg
g0=9.81;                          % m/s^2
D=diag([0.25,0.25,0.25]);         % drag matrix kg/s
L=0.225;                          % distance between motor and CoM of quadrotor (m)
R=0.075;                          % radius of propeller (m)
thickness=0.03;                   % thickness of rotating propeller (m)
k=2.98*10^-5;                     % lift constant - thrust factor (Ns^2/rad^2)
k_psi=1.14*10^-6;                 % drag constant (Nms^2/rad^2)
omega_min=0.5*sqrt(m*g0/k/4);     % rad/s
omega_max=3*omega_min;            % rad/s
rho=1.225;                        % kg/m^3

M_force=[k,k,k,k;...
    0,-L*k,0,L*k;...
    -L*k,0,L*k,0;...
    -k_psi,k_psi,-k_psi,k_psi];
% Initial condition--------------------------------------------------------
xc_0=1;
yc_0=-1.5;
zc_0=19.25;
phi_0=0;
theta_0=0;
psi_0=0;
u_0=0;
v_0=0;
w_0=0;
p_0=0;
q_0=0;
r_0=0;
q0=[xc_0;yc_0;zc_0;phi_0;theta_0;psi_0];
dq0=[u_0;v_0;w_0;p_0;q_0;r_0];
x0=[q0;dq0];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Solution-----------------------------------------------------------------
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
tic
for i=1:1:length(t)
    x(:,1)=x0;
    % State definition-----------------------------------------------------
    xc=x(1,i);
    yc=x(2,i);
    zc=x(3,i);
    phi=x(4,i);

🎉3 参考文献

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

🌈4 Matlab代码、文章下载

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值