鱼香ROS社区
    • 版块
    • 最新
    • 未解决
    • 已解决
    • 群组
    • 注册
    • 登录
    紧急通知:禁止一切关于政治&VPN翻墙等话题,发现相关帖子会立马删除封号
    提问前必看的发帖注意事项: 社区问答规则(小鱼个人)更新 | 高质量帖子发布指南

    8.3.4 无法初始化导航点

    已定时 已固定 已锁定 已移动
    ROS2机器人开发:从入门到实践
    初始化导航点 自定义控制算法
    4
    5
    433
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 1
      1533453228 年度VIP
      最后由 编辑

      按照书本上的进行了设置,一步步走到8-33,也启动了仿真和导航,都没有报错,但是一直没办法用RViz初始化导航目标点。代码检查了很多遍,甚至用了原github进行了替换,还是没办法初始化导航点。其中主要的控制插件设置如下:
      a6b39430-641d-4f95-a8a1-425c9f55fca5-image.png
      让我很好奇的是这个插件名字nav2_custom_controller::CustomController是哪来的,原来的代码清单8-27(如下)也没有设置name。但是我后面即便加上name再测试也没用。
      06f857ec-1afe-487c-9dce-6fb1c59a47ae-image.png 。
      所有步骤和之前8.2节的自定义规划算法都一样的,检查了很多遍,问题出在哪?

      小鱼小 B 2 条回复 最后回复 回复 引用 0
      • 小伊小
        机器人小伊
        最后由 编辑

        针对您提到的问题,无法初始化导航目标点,并且好奇nav2_custom_controller::CustomController这个插件名称的来源,这里有几个可能的原因和排查步骤供您参考:

        1. 插件名称的来源:

          • nav2_custom_controller::CustomController这个名称通常是自定义控制器在ROS 2中的完整名称,包括包名和类名。如果在您的代码中或配置文件中出现了这个名称,那么很可能是在某个地方(如YAML配置文件或代码实现中)定义了这个控制器。
          • 检查您的ROS 2包中的CMakeLists.txt和package.xml文件,确认是否有一个名为nav2_custom_controller的包,并且这个包中是否有一个名为CustomController的类。
          • 如果这个名称不是您定义的,可能是从某个示例代码或教程中复制粘贴时未更改导致的。
        2. 检查配置文件:

          • 确保您的导航配置文件(如amcl.yaml, global_costmap.yaml, local_costmap.yaml, move_base.yaml等)正确无误,并且包含了正确的控制器和插件设置。
          • 特别是检查move_base.yaml中是否有关于控制器的配置,比如controller_config部分是否指向了正确的控制器插件。
        3. RViz配置:

          • 在RViz中,确保您已经添加了正确的2D Nav Goal工具,并且这个工具已经配置为指向正确的/move_base_simple/goal话题(这是ROS 1中常用的设置,ROS 2中可能有所不同,需要查看具体文档)。
          • 检查RViz中的显示设置,确保相关的图层(如costmap, path等)已经正确配置和显示。
        4. 日志和调试:

          • 启动ROS 2节点时,使用ros2 node list和ros2 topic list查看所有活跃的节点和话题,确保所有需要的组件都已正确启动。
          • 使用ros2 topic echo /some_topic(替换为实际的话题名)来查看特定话题的输出,确认数据是否正确。
          • 查看ROS 2的日志输出,使用ros2 log list和ros2 log show /some_node(替换为实际的节点名)来检查是否有错误或警告信息。
        5. 代码和依赖:

          • 如果您是从GitHub或其他地方复制的代码,确保您已经正确编译并安装了所有依赖项。
          • 检查您的代码库是否是最新的,特别是如果您是从一个活跃的开源项目中获取的。
        6. 环境问题:

          • 确保您的ROS 2环境配置正确,包括环境变量(如ROS_DOMAIN_ID)和工作空间设置。

        通过上述步骤,您应该能够定位问题的根源。如果问题仍然存在,可能需要更详细地检查代码和配置文件,或者考虑在ROS社区或相关论坛中寻求帮助。


        以上为生成回答,仅供参考~

        我是小伊,已接入ChatGpt,所有回复,仅供参考~

        1 条回复 最后回复 回复 引用 0
        • 1
          1533453228 年度VIP
          最后由 编辑

          初始化导航点的结果:
          f418b4a8-52fe-427b-bd9b-af36dab21444-image.png
          19a8d9ed-ccf0-4e1c-8734-7bc747a8486a-image.png
          只有雷达,没有膨胀体积的,导航也提示没有初始化导航点

          1 条回复 最后回复 回复 引用 0
          • 小鱼小
            小鱼 技术大佬 @1533453228
            最后由 编辑

            @1533453228 大概率是插件相关配置有问题,建议等等视频,或者仔细检查下Nav2的启动日志

            新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

            1 条回复 最后回复 回复 引用 0
            • B
              biancs @1533453228
              最后由 编辑

              @1533453228 我也遇到同样的问题了,请问你是怎么解决的?

              1 条回复 最后回复 回复 引用 0
              • 第一个帖子
                最后一个帖子
              皖ICP备16016415号-7
              Powered by NodeBB | 鱼香ROS