动态窗口法的理解和一些细节

动态窗口法(DWA)是一种经典的机器人局部路径规划算法,主要涉及速度空间计算和评价。计算包括最大速度限制、加速度限制和允许速度,形成速度空间的交集。评价函数包含方向角、障碍物距离和速度三部分,通过轨迹预测和速度评价选择最优速度。在复杂环境中,DWA可能存在局限性,如目标与障碍物间有障碍时,参数调整至关重要。

机器人局部路径规划—动态窗口法

动态窗口法(Dynamic Window Approach,DWA)是一类经典的机器人局部路径规划算法。它的过程主要分为两部分:

  1. 速度空间(v,ω)(v,\omega)(v,ω)的计算。考虑到实际的运动限制可以得到一个速度范围:
    V={ (v,ω)∣v1≤v≤v2,  ω1≤ω≤ω2} V = \{ (v,\omega)|v_1\leq v \leq v_2, \; \omega_1\leq \omega \leq \omega_2\} V={ (v,ω)v1vv2,ω1ωω2}
    这个范围由多种因素决定,如机器人的速度限制、电机的加速度限制、机器人的最小转动角度等。

  2. 速度空间(v,ω)(v,\omega)(v,ω)的评价。根据给定的评价公式,对速度空间的每一组(vi,ωi)(v_i,\omega_i)(vi,ωi)进行评价,然后选择一组最佳速度作为当前速度。

值得注意的是,在使用DWA方法进行路径规划时,一般应用于以下场景:

  • 机器人和目的地的坐标已知,但障碍物坐标未知;
  • 有传感器可以检测到障碍物,并且可以得到机器人与障碍物的距离和角度.

接下来,我会详细介绍DWA的算法流程。

1.速度空间计算

在计算速度空间时,为了更加贴近现实,我们一般会考虑一些运动限制。在DWA中,主要考虑了三种运动限制:

  • 机器人移动的最大速度限制;
  • 电机的最大加速度限制;
  • 遇到障碍物时能否在碰撞前停止.

1.1.移动最大速度限制

显然,机器人的速度是不可能无限增加的,所以应该考虑其最大运动速度。于是,我们可以得到如下公式:
vs∈[vmin,vmax] v_s \in [v_{min}, v_{max}] vs[vmin,vmax]

ωs∈[ωmin,ωmax] \omega_s \in [\omega_{min},\omega_{max}] ωs[ωmin,ωmax]

一般最小线速度取零,最小角速度和最大角速度互为相反数。但考虑到为了增加评价函数的区分度,可以考虑把最小线速度设置为1。因为当线速度为0时,评价函数就无法发挥作用。从下图的上下限可以看出,其最大速度限制设置为:
vmin=0,  vmax=90,  ωmin=−90,  ωmax=90 v_{min}=0, \; v_{max}=90, \; \omega_{min}=-90, \; \omega_{max}=90 vmin=0,vmax=90,ωmin=90,ωmax=90

在这里插入图片描述

如果不考虑其它运动限制,在设置最大速度限制时,上图的坐标系上的所有点都是我们需要考虑的速度,这些速度构成了一个速度空间。

1.2.移动最大加速度限制

由于电机的转矩有限,因此存在一个最大的加速度限制。假设机器人当前速度为(vc,ωc)(v_c,\omega_c)(vc,ωc),在一个有限的时间周期Δt\Delta tΔt,机器人的速度范围应为:
vd∈[vc−v˙aΔt,  vc+v˙bΔt] v_d \in [v_c-\dot{v}_a \Delta t, \;v_c+\dot{v}_b \Delta t] vd[vcv˙

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值