【无人机】基于虚拟leader实现无人机编队仿真附matlab代码

简介: 【无人机】基于虚拟leader实现无人机编队仿真附matlab代码

 ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测雷达通信 无线传感器

信号处理图像处理路径规划元胞自动机无人机

⛄ 内容介绍

从分散化协同控制的角度对多架固定翼无人机的编队飞行控制问题进行研究。以编队运动方向为参照,利用无人机期望位置的集合来描述给定的编队几何构型。将无人机当做是自主运动体,利用信息流图描述无人机之间的信息交换关系。根据无人机的特点和编队飞行的要求,提出一种基于局部信息交互和相对位置控制的分散化编队飞行控制策略。该控制策略由两部分组成,一部分进行速度和航向同步,另一部分进行编队形成和队形保持。为了方便对无人机编队的运动速度和航向角进行控制,还额外引入一个虚拟Leader。仿真结果表明,分散化编队飞行控制策略是有效的,引入虚拟Leader对无人机编队飞行控制很有必要。

⛄ 部分代码

clc

close all

clear all

dbstop if error

N=10;%个数

pos=[40 0 500;%初始位置,需要保持连通

   30 20  500;

   50 20  500;

   20 40  500;

   40 40  500;

   60 40  500;

   10 60 500;

   30 60 500;

   50 60 500

   70 60 500];

V=[ 40;%初始速度

   35;

   35;

   30;

   30;

   30;

   25;

   25;

   25;

   25]-20;

pitch=[0.3;0.9;-1.1;0.4;-0.7;-0.8;0;0;0;0];%航迹倾角

yaw=[0.8;-1.1;1.2;0.3;-0.7;-0.9;0;0;0;0];%航迹偏角

k=1;%7.07;%增益1

l=1;%增益2

r=1;%碰撞距离

R=500;%通信距离

step=200;%仿真步数

dt=0.1;%步长

Vg=10;%期望速度

pitchg=0;%期望倾角

yawg=0;%期望偏航角

posg=[40 60 500];%初始位置

%-----增益计算

delv=norm(V-ones(N,1)*Vg)/N;

delp=norm(pitch-ones(N,1)*pitchg)/N;

dely=norm(yaw-ones(N,1)*yawg)/N;

kl=(1.414*delv+2.414*(delv+Vg)*(delp+dely))/10;

%-------图矩阵及初始化

A=zeros(N,N);

timm=zeros(1,step);

Dij=zeros(1,N*(N-1));

DDD=zeros(1,N*(N-1));

D=zeros(1,step);

Dm=zeros(1,step);

u1=zeros(1,N);

u2=zeros(1,N);

u3=zeros(1,N);

dx=zeros(1,N);

dy=zeros(1,N);

dz=zeros(1,N);

   plot3(posg(1),posg(3),posg(2),'>','Markersize',10);

   quiver3(pos(:,1),pos(:,3),pos(:,2),dx',dy',dz',0.4,'LineWidth',2);

   quiver3(posg(1),posg(3),posg(2),dxg,dyg,dzg,0.4,'LineWidth',2);

   for i=1:N

       plot3(pos(i,1),pos(i,3),pos(i,2),'.');

       hold on

   end

%     axis equal

 

   hold off

end

figure(2)

plot(timm,V(i,1:step),'r--','LineWidth',1.5);

hold on

plot(timm,Vg*ones(1,step),'b','LineWidth',1.5);

for i=1:N

   plot(timm,V(i,1:step),'r--','LineWidth',1.5);

   hold on

end

xlabel('t/s','Fontsize',20);ylabel('V(m/s)','Fontsize',20,'Rotation',90);

% legend({'\itUAV','\itLeader'},1,'Fontsize',15);

h=gca;

set(h,'Fontsize',14)

figure(3)

plot(timm,pitch(1,1:step),'b','LineWidth',1.5);hold on

plot(timm,pitchg*ones(1,step),'r','LineWidth',1.5);

for i=1:N

   plot(timm,pitch(i,1:step),'b','LineWidth',1.5);

   hold on

end

xlabel('t/s','Fontsize',20);ylabel('\theta(rad)','Fontsize',20,'Rotation',90);

% legend({'\itUAV','\itLeader'},1,'Fontsize',15);

h=gca;

set(h,'Fontsize',14)

figure(4)

plot(timm,yaw(1,1:step),'g','LineWidth',1.5);

hold on

plot(timm,yawg*ones(1,step),'b','LineWidth',1.5);

for i=1:N

   plot(timm,yaw(i,1:step),'g','LineWidth',1.5);

   hold on

end

% legend({'\itUAV','\itLeader'},1,'Fontsize',15);

xlabel('t/s','Fontsize',20);ylabel('\phi(rad)','Fontsize',20,'Rotation',90);

h=gca;

set(h,'Fontsize',14)

figure(5)

plot(timm,D,'k.-','LineWidth',1);

xlabel('t/s','Fontsize',20);ylabel('Distance(m)','Fontsize',20,'Rotation',90);

h=gca;

set(h,'Fontsize',14)

⛄ 运行结果

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

⛄ 参考文献

❤️ 关注我领取海量matlab电子书和数学建模资料

❤️部分理论引用网络文献,若有侵权联系博主删除

相关文章
|
7月前
|
算法 定位技术 计算机视觉
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
791 0
|
7月前
|
算法 机器人 计算机视觉
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
219 0
|
7月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
314 8
|
7月前
|
机器学习/深度学习 编解码 算法
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
315 8
|
7月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
641 0
|
7月前
|
新能源 Java Go
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
235 0
|
7月前
|
机器学习/深度学习 数据采集 测试技术
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
270 8
|
7月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
357 8
|
7月前
|
编解码 运维 算法
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
547 12
|
7月前
|
人工智能 数据可视化 网络性能优化
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
228 9

热门文章

最新文章