APP下载

基于分散式的多机器人避碰协调控制

2022-09-26张鹏超

自动化与仪表 2022年9期
关键词:移动机器人障碍物矢量

康 杰,张鹏超

(陕西理工大学 机械工程学院,汉中 723000)

近年来,多机器人协同技术[1]已经广泛应用于智能仓储、自动化工厂生产以及协助军事行动[2-3]等,引起了国内外众多学者的研究,成为关注的热点。 其中机器人需要进行轨迹规划,以避免可能与环境中的静态障碍物和其他机器人发生碰撞。 利用全局规划路径的方法,例如基于图搜索[4]和基于随机采样的方法[5-6],可以获得接近全局最优的路径。在移动机器人的局部路径规划中,例如基于人工势场法(AFH)[7]和动态窗口法(dynamic window approach,DWA)[8],有静态、动态障碍物以及其他移动机器人的避碰是一个关键的问题,尤其是多机器人系统。 速度障碍法[9]被提出来以一种简单有效的方法计算移动障碍物之间的避碰动作,而两个移动机器人的相互回避可能会导致发生震荡。 为了提高VO 方法的计算速度, 提出了用抛物线函数法来近似约束[10],提高了在复杂环境下的避免碰撞的安全性和效率。

1 速度障碍法的定义

速度障碍法(VO)首先提出是为了躲避动态障碍物,如图1 所示,PA为正在执行任务的机器人,PB为机器人PA所遇到的动态障碍物(或者是其他正在执行任务的机器人),VA,VB分别为机器人PA,PB的速度矢量,rA,rB为机器人的半径。 以机器人PA为参考平面,把机器人PA的半径扩大到机器人PB,将机器人PA看作质点,将机器人PB静止,得到机器人PA对于机器人PB的相对速度VA-VB,得到了如式(1)所示的由机器人PA引起的速度障碍即如果机器人PA的速度矢量VA位于所处集合当中,则机器人PA与机器人PB一定会发生碰撞。

图1 速度障碍法定义Fig.1 Definition of velocity obstacle method

式中:A,B 是以机器人PA(PB)为圆心,rA(rB)为半径的集合;B⊕-A 表示以机器人PB为中心的集合B 与集合-A 的闵可夫斯基和,表达式如式(2)所示;λ(PA,VA-VB)表示以机器人PA为顶点,方向为VA-VB的射线,表达式如式(3)所示。

2 基于改进后的DVO 算法

速度障碍法将机器人躲避动态障碍问题转化为静态避碰问题,即求解VA在不属于由其他动态障碍物(或其他机器人)引起的速度障碍集合中,机器人一定与障碍物不会发生碰撞问题,但是该方法在躲避其他机器人时容易出现抖动问题,所以提出了分散式多机器人避障机制,该机制首先给每个机器人建立一个危险区域,提出了一个风险阈值, 根据其大小判断是否有机器人存在于危险区域,设置一个碰撞策略,来根据机器人所处的危险程度来进行避碰先后,最后通过优化目标函数来调节速度矢量。

2.1 建立危险区域

为了减少避免碰撞计算时间,引入了关键障碍物的概念,关键障碍物需要满足2 个条件。 首先,机器人A 的速度矢量必须是处于有其他机器人引起的速度障碍内,其次其他机器人必须处于高风险的障碍区域中,提出了阈值μ,当μ>1 时,其他机器人不处于危险碰撞区域,当μ≤1,说明存在其他机器人在危险碰撞区域,μ 的数学表达式为

只要存在1 个机器人符合这个条件, 机器人A开始为躲避障碍物做出相应躲避,其数学表达式为

2.2 避障策略

为了防止避碰过于保守,将运动的不确定性的影响与不同的风险程度联系起来, 如图2 所示,可以获得2 个半径Rl和Rh, 然后将其他机器人的运动不确定转为几何位置的不确定性,形成Rl与Rh2个碰撞区域,分别是对其他机器人Oi引起的半径估计下限与上限,它是由位置、大小、速度误差等因素决定的,如下式:

图2 危险程度Di 的计算Fig.2 Calculation of the risk level Di

式中:ξ 是有其他机器人引起的估计误差;Rs是安全的距离。

可以根据最小估计半径Rl计算最小安全角度α=arsin和最大安全角度β=arsin因此,可以得出风险速度Di,其中i 表示为进入危险区域的第i 个机器人,其表达如下:

式中:r 代表机器人的速度矢量与进入危险区域其他机器人的夹角;Di代表进入危险区域的机器人风险程度,因为环境中存在多机器人Oi={O1,O2,O3…}时,对风险程度Di进行排序,对风险程度高的障碍物先进行避障处理。

2.3 碰撞时间

碰撞时间是计算机器人与其他机器人碰撞的最短时间,当机器人与其他机器人的相对速度保持不变时,是碰撞评测的常用的一种标准,碰撞时间也反映了机器人的安全的时间限制,所以考虑到机器人的运动特性, 在扩展了其他机器的安全特性后,考虑到其他机器人的最大运行范围以及有其他机器人引起的速度障碍VOi,当Vi∈VOi时,碰撞时间t 表示到达其他机器人Oi=(Pi,Ph)的边缘的最短时间, 可以把最小时间解t 作为Di的碰撞时间,对于相对速度Vi满足式(9):

2.4 优化目标函数

假设每个机器人的初始位置Si与位置目标Gi在任何时候都是已知的,且不知道其他机器人目标位置,机器人在决策过程中的避碰都满足运动学约束,所以每个机器人之间的动态碰撞可以规划为碰撞速度在决策周期和速度空间中的最小目标函数。

为了使机器人趋向目标点运动,将目标速度定义为Vref,表达式为

式中:vr∈VOi表示危险程度Di最大的机器人的速度矢量,u 表示对t 时刻对速度矢量的调整。

3 仿真实验

为了验证所设计算法的有效性,对机器人之间动态避碰行为进行仿真实验。

如图3 所示,为两个机器人RA,RB相向而行的避让过程,图4 是2 个机器人趋向目标过程,图5是8 个机器人在运动过程中的避让过程,图6 是8 个机器人避让完成后趋向目标过程。

图3 2 个机器人相向而行的避让过程Fig.3 Avoidance process of two robots walking towards each other

图4 2 个机器人向相而行的趋向目标过程Fig.4 Process of approaching the goal of two robots walking towards each other

图5 8 个机器人移动过程中的避让过程Fig.5 Avoidance process during the movement of the eight robots

图6 8 个机器人避让完成后趋向目标过程Fig.6 Process of approaching the target after the eight robots have completed avoidance

通过仿真实验可以看出基于改进速度障碍法后所规划的路径能够安全避开与其他机器人的碰撞危险并顺利到达目标点,且路径较为光滑。

4 结语

本文提出了一种分散式的多机器人自主导航防撞方案,称为分散式速度障碍法(DVO)。 所提出的方法是基于速度障碍法的一种变体,通过规定危险区域、碰撞检测区以及碰撞角来对移动机器人进行安全约束, 可以在复杂环境下进行动态避障,所提出的方法继承了所有显著的特征,通过约定通讯区域来减少机器人之间的不必要的通讯,通过设定检测碰撞区和碰撞角可以让机器人在局限的传感器能够检测出机器人在动态环境下的安全系数从而对速度大小和方向进行调整,这是通过在以自我为中心的框架中实现算法来实现的,通过隐式地为机器分配避碰方案。 通过仿真实验表明,该方法能够降低计算量的同时实时地规划出一条无碰撞路径。

猜你喜欢

移动机器人障碍物矢量
移动机器人自主动态避障方法
一种适用于高轨空间的GNSS矢量跟踪方案设计
矢量三角形法的应用
移动机器人路径规划算法综述
高低翻越
室内环境下移动机器人地图构建与路径规划技术
赶飞机
月亮为什么会有圆缺
基于多传感器融合的机器人编队ADRC控制
推力矢量对舰载机安全起降的意义