1.算法描绘

跟着无人机作业自主性、智能化、多使命等方面要求的进步,无人机从单机作业发展到集群作业,对多机集群通讯技术提出了更高的要求。选用多架无人机协同方法,无人机之间经过通讯,进行信息同享,扩展对环境态势的感知,完结协同使命分配、协同查找、协同侦查与进犯,能有效进步无人机集群的生存能力和全体作战效能。

跟着无人机作业自主性、智能化、多使命等方面要求的进步,无人机从单机作业发展到集群作业,对多机集群通讯技术提出了更高的要求。选用多架无人机协同方法,无人机之间经过通讯,进行信息同享,扩展对环境态势的感知,完结协同使命分配、协同查找、协同侦查与进犯,能有效进步无人机集群的生存能力和全体作战效能。

集中式操控无人机集群计划选用飞思实验室自研的点对多点高带宽数据链,针对不同的载荷和应用场景完结最大30架无人机操控。在集中式操控体系中,由地上操控站中的操作人员制定使命分配计划和无人机具体飞翔航路,无人机本身不具备决策能力,彻底按照地上操控站宣布的使命指令和航路执行使命。其优点是整体系构成简略成本低、分配算法完结简略且具备产生全局最优解的潜力。体系拓扑如图:

基于matlab和simulink的小型无人机集群仿真演示平台

无人机的飞翔操控信息、吊舱等负载信息经过数据链回传到地上操控站,地上操控站同时可对一切无人机进行实时操控和使命分配。无人机彼此之间不进行数据交换,一切数据下发到地上操控站后完结数据处理。分布式操控无人机集群计划各无人机搭载自研的自组网高带宽数据链和高性能机载板卡,可完结各机之间彼此通讯,恣意组网,可完结星型、网状、链式等多种组网方法,完结去中心化组网,各机均可和地上操控站通讯,飞翔个体之间具备方位同享及路径规划、感知规避能力,且任何一架无人机脱离集群,剩余无人机可快速构成新的稳定的集群网络,体系抗毁伤能力强。机载板卡可完结无人机间信息交互处理、目标辨认、航迹自主规划、使命协同分配,最终完结无人机集群协同使命分配、协同查找、协同侦查与进犯。

2.仿真效果预览

matlab2022a仿真成果如下:

基于matlab和simulink的小型无人机集群仿真演示平台

基于matlab和simulink的小型无人机集群仿真演示平台

3.MATLAB中心程序 `addpath ‘data’

addpath ‘uavA1’

uavW = 1;

save(‘uavW.mat’,’uavW’);

sim(‘New_mavsim_chap12’);

ii = 1;

eval([‘x’ num2str(ii) ‘= x;’])

eval([‘path’ num2str(ii) ‘= path;’])

eval([‘waypoints’ num2str(ii) ‘= waypoints;’])

save(‘x1.mat’,’x1′,’path1′,’waypoints1′);

%—————-

clear;

uavW = 2;

uavi = uavW;

save(‘uavW.mat’,’uavW’);

sim(‘New_mavsim_chap12’);

ii = 2;

eval([‘x’ num2str(ii) ‘= x;’])

eval([‘path’ num2str(ii) ‘= path;’])

eval([‘waypoints’ num2str(ii) ‘= waypoints;’])

save(‘x2.mat’,’x2′,’path2′,’waypoints2′);

%—————-

clear;

uavW = 3;

save(‘uavW.mat’,’uavW’);

sim(‘New_mavsim_chap12’);

ii = 3;

eval([‘x’ num2str(ii) ‘= x;’])

eval([‘path’ num2str(ii) ‘= path;’])

eval([‘waypoints’ num2str(ii) ‘= waypoints;’])

save(‘x3.mat’,’x3′,’path3′,’waypoints3′);

%—————-

clear;

uavW = 4;

save(‘uavW.mat’,’uavW’);

sim(‘New_mavsim_chap12’);

ii = 4;

eval([‘x’ num2str(ii) ‘= x;’])

eval([‘path’ num2str(ii) ‘= path;’])

eval([‘waypoints’ num2str(ii) ‘= waypoints;’])

save(‘x4.mat’,’x4′,’path4′,’waypoints4′);

%—————-

clear;

uavW = 5;

save(‘uavW.mat’,’uavW’);

sim(‘New_mavsim_chap12’);

ii = 5;

eval([‘x’ num2str(ii) ‘= x;’])

eval([‘path’ num2str(ii) ‘= path;’])

eval([‘waypoints’ num2str(ii) ‘= waypoints;’])

save(‘x5.mat’,’x5′,’path5′,’waypoints5′);

% Show part

%—————-

close all;clear;

load ‘x1’

load ‘x2’

load ‘x3’

load ‘x4’

load ‘x5’

addpath ‘uavShow’

sim(‘mavsim_show’);`