移动机器人路径规划中A星算法与DWA融合的应用与优化
改进 A 星算法的路径搜索速度,加上 DWA 的动态避障能力,配合起来用在移动机器人上,效果还挺不错的。路径规划不再死板,像遇到障碍物也能灵活绕开,尤其适合动态环境下的室内场景。
A 星算法的优点就是找出来的路径比较规整,不会乱走,配合 DWA 后还能实时调整轨迹,挺适合那种有突发障碍的情况。要是你之前用纯 A 星,应该能感觉到它规划一条死路就难改,合起来后就好多。
DWA主要是靠预测轨迹来选速度指令,像你设定了前进速度和转向角,它会算出未来一小段时间的位置,选个最优的方案。融合 A 星之后,你可以先拿 A 星给出一条的全局路径,再让 DWA 去实时调整,路径更自然。
实际项目里,建议你先用 A 星做一次路径规划,把结果存在一个path
数组里,DWA 每次规划的时候参考这个数组选方向。别忘了设定代价地图,不然 DWA 选出来的路径会离障碍太近,容易撞。
如果你想看看相关的应用案例,可以顺手翻翻这两篇文章:
- 移动机器人路径规划(入门不错,图文都有)
- 基于路径优化 D Lite 算法的移动机器人路径规划(算法细节讲得更清楚)
如果你是搞 SLAM 或者在做服务机器人,挺推荐你试试这套组合。配合ROS
的话,用起来更方便,社区支持也好。
下载地址
用户评论