用BT实现的waypoints控制

文章讲述了在Nav2导航系统中遇到路径规划问题后,作者采用waypoints和行为树(BT)进行优化。增加了对路径点的处理,通过BT判断并依次导航至存储的点,处理了Nav2可能的导航失败情况,确保连续性。
摘要由CSDN通过智能技术生成

1 起源

在nav2的导航控制中Nav2hunter的控制软件结构设计发现,路径规划不合理,所以需要采用waypoints来指定路径点,当时时间紧迫来不及学习调用nav2的waypoint 服务,直接采用自己的行为树来实现了路径点导航。

2 原来BT

原来的单目标点导航的BT图如下
在这里插入图片描述

分两步是为了先nav2导航到距离目标点2米处,在采用自己的位姿调整算法阿克曼转向车型导航末段位姿调整控制到目标点

3 增加路径点后的BT

在这里插入图片描述
在原来的BT前面增加了一个判断节点(一直运行直到失败),那就会逐个(按命名规则的顺序)去查找保存的点位,做为路径点,如果找不到路径点返回错误,则进入下一步就是原来的控制流程。
找到路径点后就把路径点作为nav2导航目标,调用Nav2Pose节点,使用Nav2导航到那个路径点。但是要注意的是Nav2导航有可能会失败(位置被障碍占据等),Nav2返回失败要让系统导航向下一个路径点,所以有一个强制成功,否则它的返回错误会向上到KeepRunningUntilFailure就会返回错误,这样就没法调出下一个路径点了。

4 运行情况

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

code .

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值