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

    [FishBot教程]9.0.7. FishBot-Nav2导航测试

    已定时 已固定 已锁定 已移动
    FishBot二驱机器人
    fishbot 导航
    62
    230
    95.4k
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 4440378434
      ZERO @小鱼
      最后由 编辑

      @小鱼

      git clone https://github.com/fishros/fishbot.git -b v1.0.0 --depth=1
      cd fishbot
      rosdep install --from-paths src --ignore-src -y  -r # 安装依赖
      colcon build
      

      鱼哥,我在编译nav2_pure_pursuit_controller这个功能包的时候报错了,错误如下:

      In file included from /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/src/pure_pursuit_controller.cpp:8:
      /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/include/nav2_pure_pursuit_controller/pure_pursuit_controller.hpp:45:18: error: ‘nav2_core::GoalChecker’ has not been declared
         45 |       nav2_core::GoalChecker *goal_checker) override;
            |                  ^~~~~~~~~~~
      /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/include/nav2_pure_pursuit_controller/pure_pursuit_controller.hpp:27:8: error: ‘void nav2_pure_pursuit_controller::PurePursuitController::configure(const WeakPtr&, std::string, std::shared_ptr<tf2_ros::Buffer>, std::shared_ptr<nav2_costmap_2d::Costmap2DROS>)’ marked ‘override’, but does not override
         27 |   void configure(
            |        ^~~~~~~~~
      /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/include/nav2_pure_pursuit_controller/pure_pursuit_controller.hpp:42:36: error: ‘geometry_msgs::msg::TwistStamped nav2_pure_pursuit_controller::PurePursuitController::computeVelocityCommands(const PoseStamped&, const Twist&, int*)’ marked ‘override’, but does not override
         42 |   geometry_msgs::msg::TwistStamped computeVelocityCommands(
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~
      /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/include/nav2_pure_pursuit_controller/pure_pursuit_controller.hpp:58:8: error: ‘void nav2_pure_pursuit_controller::PurePursuitController::setSpeedLimit(const double&, const bool&)’ marked ‘override’, but does not override
         58 |   void setSpeedLimit(const double &speed_limit,
            |        ^~~~~~~~~~~~~
      /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/src/pure_pursuit_controller.cpp:116:16: error: ‘nav2_core::GoalChecker’ has not been declared
        116 |     nav2_core::GoalChecker *goal_checker) {
            |                ^~~~~~~~~~~
      In file included from /opt/ros/foxy/include/class_loader/class_loader_core.hpp:57,
                       from /opt/ros/foxy/include/class_loader/class_loader.hpp:55,
                       from /opt/ros/foxy/include/class_loader/multi_library_class_loader.hpp:52,
                       from /opt/ros/foxy/include/pluginlib/class_loader.hpp:58,
                       from /opt/ros/foxy/include/nav2_costmap_2d/costmap_2d_ros.hpp:53,
                       from /opt/ros/foxy/include/nav2_core/controller.hpp:42,
                       from /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/include/nav2_pure_pursuit_controller/pure_pursuit_controller.hpp:8,
                       from /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/src/pure_pursuit_controller.cpp:8:
      /opt/ros/foxy/include/class_loader/meta_object.hpp: In instantiation of ‘B* class_loader::impl::MetaObject<C, B>::create() const [with C = nav2_pure_pursuit_controller::PurePursuitController; B = nav2_core::Controller]’:
      /opt/ros/foxy/include/class_loader/meta_object.hpp:216:7:   required from here
      /opt/ros/foxy/include/class_loader/meta_object.hpp:218:12: error: invalid new-expression of abstract class type ‘nav2_pure_pursuit_controller::PurePursuitController’
        218 |     return new C;
            |            ^~~~~
      In file included from /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/src/pure_pursuit_controller.cpp:8:
      /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/include/nav2_pure_pursuit_controller/pure_pursuit_controller.hpp:15:7: note:   because the following virtual functions are pure within ‘nav2_pure_pursuit_controller::PurePursuitController’:
         15 | class PurePursuitController : public nav2_core::Controller {
            |       ^~~~~~~~~~~~~~~~~~~~~
      In file included from /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/include/nav2_pure_pursuit_controller/pure_pursuit_controller.hpp:8,
                       from /home/zero/Code/SLAM/fishbot/src/nav2_pure_pursuit_controller/src/pure_pursuit_controller.cpp:8:
      /opt/ros/foxy/include/nav2_core/controller.hpp:74:16: note:     ‘virtual void nav2_core::Controller::configure(const SharedPtr&, std::string, const std::shared_ptr<tf2_ros::Buffer>&, const std::shared_ptr<nav2_costmap_2d::Costmap2DROS>&)’
         74 |   virtual void configure(
            |                ^~~~~~~~~
      /opt/ros/foxy/include/nav2_core/controller.hpp:112:44: note:    ‘virtual geometry_msgs::msg::TwistStamped nav2_core::Controller::computeVelocityCommands(const PoseStamped&, const Twist&)’
        112 |   virtual geometry_msgs::msg::TwistStamped computeVelocityCommands(
            |                                            ^~~~~~~~~~~~~~~~~~~~~~~
      make[2]: *** [CMakeFiles/nav2_pure_pursuit_controller.dir/build.make:63: CMakeFiles/nav2_pure_pursuit_controller.dir/src/pure_pursuit_controller.cpp.o] Error 1
      make[1]: *** [CMakeFiles/Makefile2:78: CMakeFiles/nav2_pure_pursuit_controller.dir/all] Error 2
      make: *** [Makefile:141: all] Error 2
      ---
      Failed   <<< nav2_pure_pursuit_controller [3.62s, exited with code 2]
      
      Summary: 5 packages finished [3.85s]
        1 package failed: nav2_pure_pursuit_controller
        1 package had stderr output: nav2_pure_pursuit_controller
      

      这个错误该怎么改呢?

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

        @444037843 在 [FishBot教程]7. FishBot-Nav2导航测试 中说:

        nav2_pure_pursuit_controller

        直接先删掉这个包吧,暂时用不倒,有时间我再更新下

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

        1 条回复 最后回复 回复 引用 0
        • 萝卜头萝
          萝卜头
          最后由 编辑

          你好,小鱼,小车电机转动运行后停止,有抱死后的高频鸣噪,是否可以适当调整停车抱死策略。

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

            @萝卜头 有这个打算,下一个固件版本会解决,有时间也可以手动改下代码:https://github.com/fishros/fishbot_motion_control_microros

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

            萝卜头萝 1 条回复 最后回复 回复 引用 0
            • 萝卜头萝
              萝卜头 @小鱼
              最后由 编辑

              @小鱼 好的,我也看一下代码,还有个问题,每当控制板和雷达板连接到局域网后,若ubuntu终端退出docker运行的程序,再次启动agent,会连不上控制板和雷达板,路由器管理端显示两个设备在线,不知您是否遇到过此问题。

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

                @萝卜头 你说的退出是直接关掉终端吗?还是先关闭程序再关闭终端。因为是使用docker,莞城终端不会打断原有程序的运行,所以再次启动就会出现占用情况,

                除此之外还有一种可能,是因为网络不稳定造成的,比较推荐,小车直连电脑,或者小车直连路由器,路由器网线接电脑,这两种线路。

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

                萝卜头萝 1 条回复 最后回复 回复 引用 0
                • 萝卜头萝
                  萝卜头 @小鱼
                  最后由 编辑

                  @小鱼 是Ctrl+C结束docker,再次运行或者再开新终端运行无法执行agent。

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

                    @萝卜头 可以贴一下log看看,具体提示什么

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

                    萝卜头萝 2 条回复 最后回复 回复 引用 0
                    • 萝卜头萝
                      萝卜头 @小鱼
                      最后由 编辑

                      @小鱼 我现在还没回去,等我回去给贴一下

                      1 条回复 最后回复 回复 引用 0
                      • 萝卜头萝
                        萝卜头 @小鱼
                        最后由 编辑

                        @小鱼 刚才测试了几次,应该是我直接关闭终端的缘故造成的,现在可以了,感谢!

                        1 条回复 最后回复 回复 引用 0
                        • 861813148
                          Finsh
                          最后由 编辑

                          你好,小鱼,我是双系统的22.04在输入:
                          git clone --recursive https://github.com/fishros/fishbot.git -b v1.0.0 --depth=1
                          fatal: 目标路径 'fishbot' 已经存在,并且不是一个空目录。
                          请问怎么处理这个问题,谢谢!

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

                            @86181314 换个目录就行了,因为当前目录下已经存在了fishbot这一目录,也可以删掉

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

                            9212037249 1 条回复 最后回复 回复 引用 0
                            • 9212037249
                              天地独鸣
                              最后由 编辑

                              c9d045ca-bf7e-44e7-89c3-b44333031dfe-image.png
                              第一步出现了如下问题,不知如何解决

                              小鱼小 1 条回复 最后回复 回复 引用 0
                              • 9212037249
                                天地独鸣 @小鱼
                                最后由 编辑

                                @小鱼 鱼哥,换个目录是什么意思?

                                1 条回复 最后回复 回复 引用 0
                                • 9212037249
                                  天地独鸣
                                  最后由 编辑

                                  bd913b51-a1b9-4403-a6ac-4b6b29a4ed13-image.png
                                  又有新的问题

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

                                    @921203724 别一次性运行太多指令,不然都搞不清楚是哪个出错,一步步来

                                    看你的错误是克隆错误,已经存在fishbot工作空间了

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

                                    9212037249 1 条回复 最后回复 回复 引用 0
                                    • 9212037249
                                      天地独鸣 @小鱼
                                      最后由 编辑

                                      @小鱼 8080cfae-3a8e-4850-ad06-f25d67e56857-image.png
                                      已经下载了rosdepc,结果还是让我跑rosdep

                                      R 1 条回复 最后回复 回复 引用 0
                                      • 9212037249
                                        天地独鸣
                                        最后由 编辑

                                        2b54cc05-7c57-4cd2-8897-dcf760f2b87f-image.png
                                        现在报错变了,变成这样了

                                        小鱼小 1 条回复 最后回复 回复 引用 0
                                        • 9212037249
                                          天地独鸣
                                          最后由 编辑

                                          6825c1b7-c95c-4e8d-9dd1-b5cf6b752496-image.png 现在变成这样了

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

                                            @921203724 仔细看提示,电脑没空间了

                                            另外


                                            @小鱼 在 提问前必看!一定要看!必须看一下! 中说:

                                            终端打印一定复制粘贴,方便回答者检索和引用(你可以在linux系统上打开浏览器进社区)

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

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