%------main主函数--------------------------------------------------

%------初始格式化--------------------------------------------------

clear all;
clc;
format bank;

%------定义全局变量----------------------------------------------

%-粒子群的-
global c1;             %学习因子1
global c2;             %学习因子2
global w;              %惯性权重
global MaxDT;            %最大迭代次数
global m;                  %搜索空间维数(未知数个数)
global N;                  %初始化群体个体数目
global eps;           %设置精度(在已知最小值时候用)
global Kmax;          %初始化x时用的最大迭代次数
global Qmax;          %初始化x时粒子全部重新初始化用的最大迭代次数
global fitw1;         %适应值函数中的两个权重
global fitw2;
global pathta ;       %移动的角度为60度
global psosued;         %粒子群成功
global pathsued;        %路径可行

%-路径规划的-
global robotv;          %机器人半径
global s;               %起始点
global g;               %目标点
global obstaclesx;       %障碍物点
global obstaclesy;
global Nsteps;          %机器人最多能移动的步数
global ploR;            %极坐标半径
global segR;            %极坐标的分段半径
global mapmin;         % 地图大小
global mapmax;
global curpoint;        %当前点的位置
global hadsteps;        %只记录curpoint的集:链表一样
global curstep;         %当前的步数
global rangOb;          %在粒子范围内的障碍物点
global obIndex;         %记录在粒子范围内的障碍物点的索引
global goalLine;        %记录当前点和目标点之间连线的方程
global movelen;         %机器人移动长度
global V;               %机器人的速度(矢量)

global pointIndex;      %记录点的索引
global pathpoint;       %记录所有的点
global goalta               %当前点到目标点的角度

global numta;           %把圈分为几个角
global pamoveta;        %粒子的可行角度,维数由numta定
global searchsued;      %是否搜索成功

%-------初始化矩阵----------------------------------------------

initial;

%pause;
%-------开始寻找路径--------------------------------------------

result = pathplanning(); 
if result == 1
    disp('找到路径');
    hadsteps(curstep+1,1) = g(1);
    hadsteps(curstep+1,2) = g(2);
else
    disp('路径找不到');
end

%-最后处理-----------------------------
pointIndex = pointIndex+1;
pathpoint(pointIndex,1) = g(1);
pathpoint(pointIndex,2) = g(2);

pathpoint

%-------画---------------------------------------
figure(1)
hold on
%plot(pathpoint(:,1),pathpoint(:,2),'r-')
 plot(hadsteps(:,1),hadsteps(:,2),'b-')
hold off
%plot(pathpoint);
 

D-122

技术
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信