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

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

    已定时 已固定 已锁定 已移动
    FishBot二驱机器人
    fishbot 导航
    65
    236
    109.6k
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 1922248011
      早点睡觉.
      最后由 编辑

      Screenshot from 2024-01-12 17-10-55.png

      10320637471 1 条回复 最后回复 回复 引用 1
      • S
        safereinforcementlab
        最后由 编辑

        鱼哥,这是什么问题

        autoliu@autoliu-LEGION-REN7000K-26IRB:~/fishbot$ rosdep install --from-paths src --ignore-src -y -r # 安装依赖
        #All required rosdeps installed successfully
        autoliu@autoliu-LEGION-REN7000K-26IRB:~/fishbot$ colcon build
        Starting >>> fishbot_bringup
        Starting >>> fishbot_cartographer
        Starting >>> fishbot_description
        Starting >>> fishbot_interfaces
        Starting >>> fishbot_navigation2
        --- stderr: fishbot_cartographer
        CMake Error at /usr/share/cmake-3.22/Modules/CMakeTestCCompiler.cmake:69 (message):
        The C compiler

        "/usr/bin/cc"
        

        is not able to compile a simple test program.

        It fails with the following output:

        Change Dir: /home/autoliu/fishbot/build/fishbot_cartographer/CMakeFiles/CMakeTmp
        
        Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_0c79a/fast && /usr/bin/gmake  -f CMakeFiles/cmTC_0c79a.dir/build.make CMakeFiles/cmTC_0c79a.dir/build
        gmake[1]: 进入目录“/home/autoliu/fishbot/build/fishbot_cartographer/CMakeFiles/CMakeTmp”
        Building C object CMakeFiles/cmTC_0c79a.dir/testCCompiler.c.o
        /usr/bin/cc    -o CMakeFiles/cmTC_0c79a.dir/testCCompiler.c.o -c /home/autoliu/fishbot/build/fishbot_cartographer/CMakeFiles/CMakeTmp/testCCompiler.c
        /home/autoliu/fishbot/build/fishbot_cartographer/CMakeFiles/CMakeTmp/testCCompiler.c:11:1: fatal error: error closing /tmp/cc76K2IV.s: 设备上没有空间
           11 | { (void)argv; return argc-1;}
              | ^
        compilation terminated.
        gmake[1]: *** [CMakeFiles/cmTC_0c79a.dir/build.make:78:CMakeFiles/cmTC_0c79a.dir/testCCompiler.c.o] 错误 1
        gmake[1]: 离开目录“/home/autoliu/fishbot/build/fishbot_cartographer/CMakeFiles/CMakeTmp”
        gmake: *** [Makefile:127:cmTC_0c79a/fast] 错误 2
        

        CMake will not be able to correctly generate this project.
        Call Stack (most recent call first):
        CMakeLists.txt:2 (project)


        Failed <<< fishbot_cartographer [0.39s, exited with code 1]
        Aborted <<< fishbot_description [0.38s]
        Aborted <<< fishbot_bringup [0.41s]
        Aborted <<< fishbot_interfaces [0.49s]
        Aborted <<< fishbot_navigation2 [0.48s]

        Summary: 0 packages finished [0.91s]
        1 package failed: fishbot_cartographer
        4 packages aborted: fishbot_bringup fishbot_description fishbot_interfaces fishbot_navigation2
        4 packages had stderr output: fishbot_bringup fishbot_cartographer fishbot_interfaces fishbot_navigation2

        S 1 条回复 最后回复 回复 引用 0
        • S
          safereinforcementlab
          最后由 编辑

          鱼哥,如果我要自己写控制算法,应该在哪里改,没找到源码的控制算法在那里

          1 条回复 最后回复 回复 引用 0
          • S
            safereinforcementlab @safereinforcementlab
            最后由 编辑

            @safereinforcementlab 我重新装了ros2,就好了

            1 条回复 最后回复 回复 引用 0
            • S
              safereinforcementlab
              最后由 编辑

              请问在这个程序里面,具体的控制算法程序在哪里,https://github.com/fishros/fishbot,没有看到

              1 条回复 最后回复 回复 引用 0
              • 11470227431
                (解放版)沉迷睡觉
                最后由 编辑

                此回复已被删除!
                1 条回复 最后回复 回复 引用 0
                • 11470227431
                  (解放版)沉迷睡觉
                  最后由 编辑

                  @小鱼 e4109e5e-ea6c-4dfc-a1d5-4af1063da542-1706435786052.png
                  54fc8ed1-e33c-4043-9109-a97982e91d15-1706435815032.png
                  鱼哥 都做完了 最后给了小车目标之后 他只是转了个向 并没有移动 我看雷达这边报了警 是这个原因吗? 还是因为什么?

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

                    @1147022743 这个警告没关系,是Qos 主要是你这膨胀半径太大了吧

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

                    1 条回复 最后回复 回复 引用 0
                    • 11654208751
                      . @2496480233
                      最后由 编辑

                      @小鱼 鱼哥,我安装依赖是成功的,但是在编译的时候我也出现了这个问题,请问该怎么解决

                      1 条回复 最后回复 回复 引用 0
                      • 10320637471
                        大道至简 @blairan121122885
                        最后由 编辑

                        @blairan121122885 解决了吗,跑了一次一键安装?

                        S 1 条回复 最后回复 回复 引用 0
                        • 10320637471
                          大道至简 @192224801
                          最后由 编辑

                          @192224801 同样问题解决了吗

                          1 条回复 最后回复 回复 引用 0
                          • 10320637471
                            大道至简 @小鱼
                            最后由 编辑

                            @小鱼 鱼哥这一步跑一键安装,输入命令后安装第几项?

                            1 条回复 最后回复 回复 引用 0
                            • 10320637471
                              大道至简 @小鱼
                              最后由 编辑

                              @小鱼 截图 2024-02-20 20-03-27.png 截图 2024-02-20 20-13-53.png鱼哥,卡在“fishbot_bringup”这里了,没找到如何解决的方法呢,帮我看看怎么个问题,多谢😊

                              小鱼小 1 条回复 最后回复 回复 引用 0
                              • 5634119395
                                那年那兔
                                最后由 编辑

                                我下载的NAV2的代码为什么编译阶段会报错

                                rclcpp::Node>; std::string = std::__cxx11::basic_string<char>]’:
                                /home/tq/workspace/nav2/src/navigation2-main/nav2_util/src/lifecycle_service_client.cpp:35:3:   required from here
                                /home/tq/workspace/nav2/src/navigation2-main/nav2_util/include/nav2_util/service_client.hpp:49:15: error: cannot convert ‘rclcpp::SystemDefaultsQoS’ to ‘const rmw_qos_profile_t&’ {aka ‘const rmw_qos_profile_s&’}
                                   49 |       rclcpp::SystemDefaultsQoS(),
                                      |               ^~~~~~~~~~~~~~~~~~~
                                      |               |
                                      |               rclcpp::SystemDefaultsQoS
                                In file included from /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:1321,
                                                 from /opt/ros/humble/include/rclcpp/rclcpp/executors/single_threaded_executor.hpp:28,
                                                 from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:22,
                                                 from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155,
                                                 from /home/tq/workspace/nav2/src/navigation2-main/nav2_util/include/nav2_util/service_client.hpp:20,
                                                 from /home/tq/workspace/nav2/src/navigation2-main/nav2_util/include/nav2_util/lifecycle_service_client.hpp:24,
                                                 from /home/tq/workspace/nav2/src/navigation2-main/nav2_util/src/lifecycle_service_client.cpp:15:
                                /opt/ros/humble/include/rclcpp/rclcpp/node_impl.hpp:127:29: note:   initializing argument 2 of ‘typename rclcpp::Client<ServiceT>::SharedPtr rclcpp::Node::create_client(const string&, const rmw_qos_profile_t&, rclcpp::CallbackGroup::SharedPtr) [with ServiceT = lifecycle_msgs::srv::ChangeState; typename rclcpp::Client<ServiceT>::SharedPtr = std::shared_ptr<rclcpp::Client<lifecycle_msgs::srv::ChangeState> >; std::string = std::__cxx11::basic_string<char>; rmw_qos_profile_t = rmw_qos_profile_s; rclcpp::CallbackGroup::SharedPtr = std::shared_ptr<rclcpp::CallbackGroup>]’
                                  127 |   const rmw_qos_profile_t & qos_profile,
                                      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
                                In file included from /home/tq/workspace/nav2/src/navigation2-main/nav2_util/include/nav2_util/lifecycle_service_client.hpp:24,
                                                 from /home/tq/workspace/nav2/src/navigation2-main/nav2_util/src/lifecycle_service_client.cpp:15:
                                /home/tq/workspace/nav2/src/navigation2-main/nav2_util/include/nav2_util/service_client.hpp: In instantiation of ‘nav2_util::ServiceClient<ServiceT, NodeT>::ServiceClient(const string&, const NodeT&) [with ServiceT = lifecycle_msgs::srv::GetState; NodeT = std::shared_ptr<rclcpp::Node>; std::string = std::__cxx11::basic_string<char>]’:
                                /home/tq/workspace/nav2/src/navigation2-main/nav2_util/src/lifecycle_service_client.cpp:36:3:   required from here
                                /home/tq/workspace/nav2/src/navigation2-main/nav2_util/include/nav2_util/service_client.hpp:49:15: error: cannot convert ‘rclcpp::SystemDefaultsQoS’ to ‘const rmw_qos_profile_t&’ {aka ‘const rmw_qos_profile_s&’}
                                   49 |       rclcpp::SystemDefaultsQoS(),
                                      |               ^~~~~~~~~~~~~~~~~~~
                                      |               |
                                      |               rclcpp::SystemDefaultsQoS
                                In file included from /opt/ros/humble/include/rclcpp/rclcpp/node.hpp:1321,
                                                 from /opt/ros/humble/include/rclcpp/rclcpp/executors/single_threaded_executor.hpp:28,
                                                 from /opt/ros/humble/include/rclcpp/rclcpp/executors.hpp:22,
                                                 from /opt/ros/humble/include/rclcpp/rclcpp/rclcpp.hpp:155,
                                                 from /home/tq/workspace/nav2/src/navigation2-main/nav2_util/include/nav2_util/service_client.hpp:20,
                                                 from /home/tq/workspace/nav2/src/navigation2-main/nav2_util/include/nav2_util/lifecycle_service_client.hpp:24,
                                                 from /home/tq/workspace/nav2/src/navigation2-main/nav2_util/src/lifecycle_service_client.cpp:15:
                                /opt/ros/humble/include/rclcpp/rclcpp/node_impl.hpp:127:29: note:   initializing argument 2 of ‘typename rclcpp::Client<ServiceT>::SharedPtr rclcpp::Node::create_client(const string&, const rmw_qos_profile_t&, rclcpp::CallbackGroup::SharedPtr) [with ServiceT = lifecycle_msgs::srv::GetState; typename rclcpp::Client<ServiceT>::SharedPtr = std::shared_ptr<rclcpp::Client<lifecycle_msgs::srv::GetState> >; std::string = std::__cxx11::basic_string<char>; rmw_qos_profile_t = rmw_qos_profile_s; rclcpp::CallbackGroup::SharedPtr = std::shared_ptr<rclcpp::CallbackGroup>]’
                                
                                
                                1 条回复 最后回复 回复 引用 0
                                • 小鱼小
                                  小鱼 技术大佬 @1032063747
                                  最后由 编辑

                                  @1032063747 第二个命令应该在第一个后面输入,注意终端目录

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

                                  1 条回复 最后回复 回复 引用 0
                                  • 19238250151
                                    Woah damn @小鱼
                                    最后由 编辑

                                    此回复已被删除!
                                    1 条回复 最后回复 回复 引用 0
                                    • 19238250151
                                      Woah damn @1923825015
                                      最后由 编辑

                                      @1923825015 https://fishros.org.cn/forum/topic/923/fishbot配套资料教程汇总?lang=zh-CN

                                      1 条回复 最后回复 回复 引用 0
                                      • 19238250151
                                        Woah damn @小鱼
                                        最后由 编辑

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

                                        source install/setup.bash
                                        ros2 launch fishbot_navigation2 navigation2.launch.py

                                        哥,我前面都弄好了,最后一步点击Rviz2工具栏——2D Pose Estimate没有反应是什么原因?4157af28-15b1-4766-9385-eaf865be402c-1709551263769.png ,是Ubuntu22.04,humble版本,前面的都没问题,知道一下呗,很急!!!重试了很多次都是没反应。

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

                                          @1923825015 你提供的信息不足,连个日志都没有

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

                                          一个好的提问不仅能够帮助自己理清楚问题,还有助于别人快速帮助到你。——提问的智慧

                                          问题一定要描述清楚,终端打印一定复制粘贴,方便回答者检索和引用(你可以在linux系统上打开浏览器进社区)
                                          基本的Markdown语法一定要学习下,有的小伙伴图片代码一团糟
                                          提问时一定要提供尽可能多的信息(系统版本,ROS版本,前后操作,终端日志),包括你的目的,比如你其实想装装某个库遇到问题,不要只说这个问题,因为可能有更好的替代方案
                                          先搜索再提问,很多问题其实都有解决方案,确保你自己对自己的问题有一定了解再提问
                                          尽量一句话说完,不要把社区当微信聊天一样用,每一个回复都尽量提供更多的的信息。

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

                                          19238250151 1 条回复 最后回复 回复 引用 0
                                          • 19238250151
                                            Woah damn @小鱼
                                            最后由 编辑

                                            @小鱼 鱼哥在构建完地图导航测试时遇到了一点问题,问题如下:
                                            平台:Ubuntu22.04 ROS:humble
                                            问题:地图成功构建好后,按照教程加载到navigation2.launch.py程序中去,编译成功,然后运行后,按照问档设置起点和目标点,无法使小车导航移动。

                                            具体操作步骤和执行状态如下:
                                            1、启动micro-ros命令:
                                            sudo docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO udp4 --port 8888 -v6
                                            状态正常,可以接收到话题
                                            2、启动雷达驱动:
                                            xhost + && sudo docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged -v /tmp/.X11-unix:/tmp/.X11-unix --device /dev/snd -e DISPLAY=unix$DISPLAY -p 8889:8888 fishros2/fishbot_laser
                                            在新开的RVIZ中可以看到雷达正常工作。
                                            3、修改navigation2.launch.py程序,加载新建的地图
                                            4、运行程序,加载地图如下3913b6df-269e-48d1-bb6e-fbc8af74dcd2-1709557682799.png cd0cfc78-dcd9-4bfe-9b00-c4a878c3ec51-1709557670585.png fd271237-1e0a-405e-bfc4-851700638cb1-1709557660299.png 190802ed-f1ae-41ea-a0b0-3da74e614b44-1709557650488.png

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