传统人工势场算法介绍
势场函数的负梯度就是力函数
传统人工势场算法存在的问题:
机器人会由于引力和斥力的平衡,陷入“势能陷阱”,有如下四种可能的情况:
a.机器人、障碍物、目标点共线,障碍物在中间。
b.机器人、障碍物、目标点共线,目标点在中间。
c.机器人和目标点在障碍物的包围圈中。
d.目标在障碍物的包围圈中。
改进的人工势场法
通过修改斥力的指向和自适应调节斥力系数,就可以达到破坏这种平衡的效果,从而使得机器人走出陷阱。其具体改进有两点:1.改变斥力分力的方向,2修改斥力的增益系数。
具体体现为,当合力F和引力之间的夹角为钝角时,机器人存在较大的可能性陷入局部极小点(钝角会趋向180°),此时我们就设定将斥力
的方向旋转一个角度,使得合力F和引力
之间的夹角为锐角,机器人就可避开局部极小点
基于改进人工势场法的 Leader-follower编队方法
在人工势场的思想上,假设各个机器人周围也存在一个势场,同时该势场分为三个区域,如图所示,分为排斥区域、一致区域,吸引区域,且各机器人划分的区域范围一致。
虚拟领航者同样存在势场,只是它不会受到其他力的影响,只会一直奔向目标点同时对其他机器人产生力。
多机器人避障与编队控制设计方案
系统总体设计图:
避障系统流程图:
编队系统流程图:
ROS仿真程序流程图:
ROS仿真程序模块图: