美文网首页
Nav2之行为树(BT)

Nav2之行为树(BT)

作者: WilsonGuo | 来源:发表于2022-06-29 12:13 被阅读0次
ROS2

      行为树,即Behavior Tree,简称BT,是Nav2中新引入的流程控制机制,该机制的加入使其在上层业务流程控制上更加灵活,对开发者来说更加友好,所覆盖的范围如下图所示,主要涵盖了条件插件、动作插件、控制插件、装饰器插件等四大类别,具体每个插件的作用可以参照Navigation2-BT官方网站,  BehaviorTree.CPP官网

行为树的样例介绍

重点了解一下控制插件,该插件决定了所有action的执行流程和顺序

PipelineSequence插件

勾选第一个子节点直到它成功,然后勾选第一个和第二个子节点直到第二个成功。

再然后勾选第一个、第二个和第三个子节点,直到第三个成功,依此类推。

如果在任何时候子节点返回RUNNING,那就不会改变行为。

而如果在任何时候一个子节点返回FAILURE,这会停止所有子节点并返回FAILURE。

示例:

  <PipelineSequence>

      <!--Add tree components here--->

  </PipelineSequence>

RoundRobin插件

用于为BT子节点创建循环行为的自定义控制流节点。

示例:

  <RoundRobin>

     <!--Add tree components here--->

   </RoundRobin>

RecoveryNode

RecoveryNode流程

RecoveryNode

RecoveryNode是一个有两个子节点的控制流节点。

当且仅当第一个子节点返回SUCCESS时,它才会返回SUCCESS。只有当第一个子节点返回FAILURE时,才会执行第二个子节点。如果第二个子节点返回SUCCESS,则会再次执行第一个子节点。

用户可以指定在返回FAILURE之前应该执行多少次恢复动作。在nav2中,RecoveryNode包含在行为树中,用于在发生故障时执行恢复动作。

具体流程如上图,该节点流程比较复杂,不过也是最常用的,需要搞明白流程走向。

输入端口:

number_of_retries端口:数据类型为int,默认值为1。端口描述—用于设置执行恢复动作的次数。

示例:

     <RecoveryNode number_of_retries="1">

           <!--Add tree components here--->

     </RecoveryNode>

Nav2中所涉及的行为、条件、控制、装饰

相关文章

  • Nav2之行为树(BT)

    行为树,即Behavior Tree,简称BT,是Nav2中新引入的流程控制机制,该机制的加入使其在上层业务流...

  • 2020-09-04【BT】行为树设计学习

    BT DESIGN TAKE AWAY 把问题从行为树中解耦,比如说使用一个黑板。(感觉类似把状态等,作为行为树的...

  • Nav2之QT学习

    QT是linux平台重要的交互平台开发工具,同时也是跨平台开发和小团队的首先 浅谈VSCode配置并进行Qt开发的...

  • Nav2之视觉建图

    算法层面建议: 3D Lidar + IMU方式: Cartographer3D Cartographer 2D在...

  • Nav2之调试经验汇总

    1.ROS2的官方教程[https://docs.ros.org/en/foxy/Tutorials.html] ...

  • BT相关

    BT影视资源 比特大雄BT之家磁力熊BT首发BT吧BT电影天堂BT世界高清啦BT之家 磁力 磁力狗磁力猪磁力蜘蛛

  • Linux下安装Vuze(Azureus)客户端教程,可离线BT

    阐明:之条件到了许多BT下载东西,譬如Aria2,uTorrent,Deluge,Peerflix Server,...

  • Android之Bt框架

    源码 框架图 启动 案例分析: 打开蓝牙开关(BluetoothAdapter.enable())1.Blueto...

  • ios开发之单位时间内限制button的点击次数

    ios开发之单位时间内限制button的点击次数 -(void)timeEnough:(UIButton *)bt...

  • 自醒,浮华

    &. 自醒 虚生之华,迷眼。 落入套中套, 以套而取。 立身之向,行为之印, 而树之果—— 可于天地之间,行而自在...

网友评论

      本文标题:Nav2之行为树(BT)

      本文链接:https://www.haomeiwen.com/subject/qcvtbrtx.html