【路径规划】基于DWA实现机器人动态避障附matlab代码

1 内容介绍

DWA 算法是基于机器人运动学与动力学理论的一种局部避障算法,它将对机器人的位置控制转换为对机器人的速度控制。DWA 算法可以概括为三步:一是根据机器人自身的限制以及环境制约将速度的采样空间约束在一定范围内; 二是根据机器人运动学对采样后的速度进行模拟得到预轨迹; 三是设定评价函数对预轨迹进行评分以获取最优轨迹对应的执行速度。

【路径规划】基于DWA实现机器人动态避障附matlab代码_第1张图片

【路径规划】基于DWA实现机器人动态避障附matlab代码_第2张图片

【路径规划】基于DWA实现机器人动态避障附matlab代码_第3张图片

【路径规划】基于DWA实现机器人动态避障附matlab代码_第4张图片

2 部分代码

%% 单条轨迹生成、轨迹推演函数

% 输入参数: 当前状态、vt当前速度、ot角速度、evaldt 前向模拟时间、机器人模型参数(没用到)

% 返回参数;

%           x   : 机器人模拟时间内向前运动 预测的终点位姿(状态);

%           traj: 当前时刻 到 预测时刻之间 过程中的位姿记录(状态记录) 当前模拟的轨迹

%                  轨迹点的个数为 evaldt / dt + 1 = 3.0 / 0.1 + 1 = 31

%

function [x,traj] = GenerateTrajectory(x,vt,ot,evaldt,model)

global dt;

time = 0;

u = [vt;ot];% 输入值

traj = x;   % 机器人轨迹

while time <= evaldt

    time = time+dt; % 时间更新

    x = f(x,u);     % 运动更新 前项模拟时间内 速度、角速度恒定

    traj = [traj x]; % 每一列代表一个轨迹点 一列一列的添加

end

end​

3 运行结果

【路径规划】基于DWA实现机器人动态避障附matlab代码_第5张图片

【路径规划】基于DWA实现机器人动态避障附matlab代码_第6张图片

4 参考文献

[1]卞永明, 季鹏成, 周怡和,等. 基于改进型DWA的移动机器人避障路径规划[J]. 中国工程机械学报, 2021.

[2]王菁华, 崔世钢, 罗云林. 基于Matlab的智能机器人路径规划仿真[C]// '2008系统仿真技术及其应用学术会议论文集. 2008.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机、雷达通信、无线传感器等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

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

你可能感兴趣的:(路径规划,机器人,matlab,算法)