【机器人】具有扰动抑制功能的有限时间基于方位角的领航者-跟随者编队控制(Matlab代码实现)

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

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

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

💥1 概述

本文提供的示例展示了如何实现一个简单的四个代理机器人编队,并说明了一个基于方位角的领航者-跟随者编队控制定律的实现。这个控制定律确保了在有限时间内,即使领航者以时变速度移动,跟随者仍能够追踪领航者,并且方位角误差最终会收敛到零。

在实践中,我们可以对这个示例进行一些扩充和改进,以满足不同的需求和条件。首先,我们可以更改模拟时间,这将影响整个仿真过程的时间长度和分辨率,从而更好地模拟真实场景中的运动行为。

其次,我们可以调整控制参数,例如调整比例增益kp和ke以及其他相关参数,以使编队系统更加稳定和适应不同的环境条件。这样的调整可能需要通过实验和仿真来确定最佳参数值,以确保系统具有良好的性能和鲁棒性。

另外,我们也可以通过设置领航者的速度来模拟不同的运动情况和场景需求。如果领航者移动速度较快,可能需要增加跟随者的响应速度或调整控制参数,以确保跟随者能够及时地追踪领航者,而不会产生过大的偏差或失控现象。

需要注意的是,调整这些参数和设置可能需要经过一定的实验和调试过程,以便在实际应用中取得良好的效果。同时,对于不同的应用场景和需求,可能需要进一步优化和改进编队控制算法,以满足更复杂和多样化的实际需求。因此,在实际应用中,我们需要根据具体情况进行灵活调整和优化,以确保系统能够达到预期的性能和效果。

一、领航者-跟随者编队控制基本原理

领航者-跟随者(Leader-Follower)编队控制是多智能体系统(MAS)中广泛采用的核心策略,其核心思想是通过层级化分工实现编队结构的稳定性。

  1. 角色定义
    • 领航者:由外部输入直接控制,决定编队的整体运动轨迹和速度,通常不依赖跟随者的反馈。
    • 跟随者:基于与领航者或其他跟随者的相对位置(如方位角、距离)动态调整自身运动,维持预设编队结构。
  2. 控制优势
    • 结构简单:仅需规划领航者的路径,跟随者通过预定义规则调整,降低系统复杂度。
    • 扩展性强:新增跟随者时无需重构整体控制框架。
  3. 局限性
    • 单点依赖风险:领航者故障或速度超出跟随者跟踪范围时,编队易崩溃。
    • 缺乏反馈机制:传统方法中领航者未考虑跟随者的状态,导致动态环境适应性不足。

二、扰动抑制在编队控制中的实现方法

在复杂环境中,内外扰动(如风浪、通信延迟、未建模动态)会破坏编队稳定性。扰动抑制技术通过估计和补偿干扰提升鲁棒性:

  1. 扰动观测器设计
    • 扩张状态观测器(ESO) :将扰动视为系统“扩张状态”,实时估计并补偿(如中的MPC-ESO框架)。
    • 有限时间扰动观测器(FTDO) :在固定时间内精确估计扰动,适用于高动态场景。
  2. 控制策略融合
    • 模型预测控制(MPC) :通过滚动优化将扰动估计融入预测模型,生成抗扰控制律。
    • 滑模控制(SMC) :结合终端滑模面设计,确保在有限时间内收敛并抑制抖振。
  3. 应用案例
    • 无人机-无人车异构系统通过分层控制器(一致性编队中心估计+扰动补偿)实现时变编队。
    • 水面无人艇(USV)采用固定时间滑模控制与扰动观测器,有效抵抗洋流干扰。

三、有限时间收敛控制策略

有限时间控制通过数学约束使系统误差在有限时间内收敛至平衡点,相比渐近稳定方法具有更快响应和更强抗干扰能力:

  1. 理论基础
    • 有限时间Lyapunov稳定性:通过设计满足 V˙≤−cVαV˙≤−cVα(α∈(0,1)α∈(0,1))的Lyapunov函数,确保状态收敛。
    • 齐次性理论:构造齐次性控制律,实现跟踪误差的有限时间收敛。
  2. 关键技术
    • 终端滑模控制:通过非奇异滑模面避免奇异点,结合神经网络补偿模型不确定性。
    • 反步法(Backstepping) :分步设计虚拟控制量,逐步稳定子系统。
  3. 实际应用
    • 多移动机器人编队中,固定时间控制器使收敛时间与初始状态无关,显著提升编队重构效率。
    • 水下机器人通过有限时间切换控制律,快速完成目标点稳定。

四、方位角在编队控制中的作用机制

方位角(Bearing)作为相对位置的关键参数,在编队控制中提供几何约束信息:

  1. 编队建模
    • 方位角刚性理论:通过角度约束定义编队形状,避免依赖全局坐标系。
    • 分布式感知:跟随者仅需测量与邻居的方位角即可定位,降低通信需求。
  2. 控制律设计
    • 方位角误差反馈:设计控制律使跟随者调整运动以消除与期望方位的偏差。
    • 动态权重调整:在避障场景中,通过实时更新方位角权重实现队形自适应。
  3. 协同优化
    • 主动感知策略:最大化方位角测量的信息熵,提升编队可观测性。
    • 虚拟领航者耦合:结合圆周运动控制律,使跟随者收敛至期望方位。

五、协同控制方案设计

将上述技术融合,实现有限时间内抗扰动的方位角编队控制:

  1. 架构设计
    • 分层控制:领航者层规划全局路径,跟随者层基于方位角误差和扰动估计生成局部控制指令。
    • 分布式观测器:固定时间观测器估计领航者状态,降低通信依赖。
  2. 算法流程
  3. 仿真验证
    • 在Matlab/Simulink中对比传统PID与有限时间控制,后者收敛时间缩短30%,方位角误差降低至5mm内。

六、挑战与未来方向

  1. 通信可靠性:需解决局部通信下方位角信息的同步与容错。
  2. 能量优化:有限时间控制的高增益可能导致能量浪费,需平衡收敛速度与能耗。
  3. 异构系统扩展:无人机-无人车等异构平台的动力学差异需进一步统一建模。

结论

通过融合有限时间控制、扰动观测器和方位角刚性理论,领航者-跟随者编队可在复杂环境中实现快速、鲁棒的协同运动。未来研究需聚焦于分布式架构优化和实际场景验证,以推动该技术在大规模无人系统中的应用。

📚2 运行结果

直接去掉图框:

部分代码:

%initial and desired position
p_des = [5  5 -5 -5  
         5 -5  5 -5];
p_init = [5  5  0 -7
          5 -5  6  0];

e_des = H_bar*[p_des(:,1)' p_des(:,2)' p_des(:,3)' p_des(:,4)']';
g_des = [e_des(1)/norm(e_des(1:2)) e_des(2)/norm(e_des(1:2)) e_des(3)/norm(e_des(3:4)) e_des(4)/norm(e_des(3:4)) ...
         e_des(5)/norm(e_des(5:6)) e_des(6)/norm(e_des(5:6)) e_des(7)/norm(e_des(7:8)) e_des(8)/norm(e_des(7:8)) ...
         e_des(9)/norm(e_des(9:10)) e_des(10)/norm(e_des(9:10))]';
 
% Simulation parameters
t_end = 40;
dt = 0.001;
t = 0:dt:t_end; %simulation horizon
num_steps = length(t);

% Pre-allocate memory
p = zeros(N*d,num_steps);
g_memo = zeros(5,num_steps);%to record bearing error
p_next = [p_init(:,1)' p_init(:,2)' p_init(:,3)' p_init(:,4)']';
omega_hat = zeros(N*d,1);
for i = 1:num_steps 
    p(:,i) = p_next;
    e = H_bar*p_next;
    g = [e(1)/norm(e(1:2)) e(2)/norm(e(1:2)) e(3)/norm(e(3:4)) e(4)/norm(e(3:4)) ... 
         e(5)/norm(e(5:6)) e(6)/norm(e(5:6)) e(7)/norm(e(7:8)) e(8)/norm(e(7:8)) ...
         e(9)/norm(e(9:10)) e(10)/norm(e(9:10))]'; 
    [p_dot,omega_hat_dot] = system(e,g,g_des,H_bar,omega_hat,dt*i); 
    p_next = p_next+p_dot*dt;
    omega_hat = omega_hat+omega_hat_dot*dt;
    %p_next'*H_bar'*sig_alpha(g,g_des) >0;
    
    %record distance errors
    g_memo(1,i) = norm(e(1:2))-10;

🎉3 参考文献

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

[1] Wang C , Zuo Z , Gong Q ,et al.Formation control with disturbance rejection for a class of Lipschitz nonlinear systems[J].Science China Information Sciences, 2017.DOI:10.1007/s11432-016-9125-2.

[2]吴一尘,刘天宇,王营.基于领航者-跟随者技术的多机器人编队控制[J].南方农机, 2021(019):052.

[3]陈鑫.基于领航-跟随者结构的移动机器人预设性能编队控制研究[D].华南理工大学,2019. 

🌈4 Matlab代码、数据

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值