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

    ros2机器人在执行导航命令后,报错

    已定时 已固定 已锁定 已移动
    ROS 2相关问题
    ros2、navigation navigation2
    3
    4
    366
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • D
      demo123
      最后由 编辑

      标题:[ros2机器人在执行导航命令后,报错]

      背景(可选):

      [实现网页点击按钮,机器人导航至指定地点]

      问题描述:

      我在执行命令后:

      export DISPLAY=:0;cd /home/it/bn_ws/;source install/setup.bash;ros2 launch robot_navigation2 navigation2.launch.py slam:=True
      

      在网页点击按钮实现机器人移动至某个点位,开始一次两次是能实现导航至指定点,去往第三个第四个就会出现卡死的情况,用rviz导航不会出现卡死。

      具体细节和上下文:

      6ce67d59-8279-4ed1-b063-5e76e3985355-image.png

      报错信息:
      component_container_isolated-1] terminate called after throwing an instance of 'rclcpp::exceptions::RCLError'
      [component_container_isolated-1]   what():  client will not receive response, at ./src/rmw_response.cpp:154, at ./src/rcl/service.c:314
      [ERROR] [component_container_isolated-1]: process has died [pid 2847, exit code -6, cmd '/opt/ros/humble/lib/rclcpp_components/component_container_isolated --ros-args --log-level info --ros-args -r __node:=nav2_container --params-file /tmp/launch_params_lm2rkw4u --params-file /tmp/launch_params_sw10ocji -r /tf:=tf -r /tf_static:=tf_static'].
      
      

      ![替代文字](c4c96ead-00af-4bb4-a124-c2b0263f17dd-image.png 图片地址)
      ![替代文字](3c5383cc-b395-44a9-bfa7-89a8b0c61eb8-image.png 图片地址)

      • [出现上面内容就会卡死,rviz动不了,在rviz标导航点位无法移动,但是网页控制前后左右还是可以
        试过一些解决方法;
        ]

      尝试过的解决方法:

      方法一:

      Message Filter dropping message: frame 'laser' at time 1721884570.330 for reason 'discarding message because the queue is full'
      

      链接文本
      这里两个都试过了,不管是改为true还是false,依然会存在卡死的现象。
      ![替代文字](d443994c-d7b4-4971-8e6b-e4fb0c7402c2-image.png 图片地址)

      方法二:
      有人说跟这个可能有关系(注释的是网上的)
      ![替代文字](cfcb4fed-2572-4979-af3f-d16863c3c23a-image.png 图片地址)
      经过测试也是不太行

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

        针对您描述的ROS 2机器人在执行导航任务时出现的卡死和错误,这里有几个可能的原因和解决方案供您尝试:

        1. 检查并优化消息队列

        从错误信息来看,可能存在消息队列满的问题。这通常是因为节点处理消息的速度跟不上消息生成的速度。

        • 增加队列大小:在相关的订阅者节点中,尝试增加队列大小(queue_size)。这可以在ROS 2的订阅者设置中进行调整。
        • 优化处理速度:检查处理消息的节点是否可以进行优化,比如减少不必要的计算或调用更高效的算法。

        2. 检查并优化TF变换

        导航严重依赖于TF变换来同步不同坐标系下的数据。

        • 确保TF发布稳定:检查是否有TF发布器偶尔丢失数据或发布频率不稳定。
        • 查看TF延迟:使用ros2 tf_echo命令来检查特定变换的延迟和稳定性。

        3. 检查并优化网络通信

        如果网络通信不稳定或带宽不足,也可能导致消息丢失和响应延迟。

        • 检查网络设置:确保网络连接稳定,带宽足够。
        • 使用Wireshark等工具:分析网络数据包,查看是否有数据包丢失或延迟。

        4. 检查并调整ROS 2的配置

        ROS 2的配置也可能影响性能。

        • 调整日志级别:减少不必要的日志输出,将日志级别设置为WARN或ERROR。
        • 检查资源使用情况:使用top、htop或ros2 topic echo等命令来检查CPU和内存使用情况,以及特定话题的消息频率。

        5. 重启和清理

        有时简单的重启ROS 2节点或整个系统可以解决一些暂时性的问题。

        • 重启ROS 2节点:使用ros2 node kill命令杀死有问题的节点,然后重新启动它们。
        • 重启系统:如果问题持续存在,尝试重启整个系统。

        6. 查看和调试具体服务

        由于错误涉及服务调用,您可能需要更详细地查看服务调用和处理过程。

        • 检查服务实现:确保服务实现正确,没有死循环或无限等待。
        • 使用ros2 service list和ros2 service call:查看可用服务和尝试手动调用服务,以查看是否有响应。

        7. 更新和兼容性检查

        确保您的ROS 2版本和所有依赖库都是最新的,并且彼此兼容。

        • 更新ROS 2:使用sudo apt update && sudo apt upgrade更新您的ROS 2安装。
        • 检查依赖库的兼容性:确保所有第三方库都与您的ROS 2版本兼容。

        通过上述步骤,您应该能够诊断并解决导致机器人卡死和错误的问题。如果问题仍然存在,您可能需要更深入地分析代码或寻求社区的帮助。


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

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

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

          @demo123

          @demo123 在 ros2机器人在执行导航命令后,报错 中说:

          用rviz导航不会出现卡死。

          检查可能是下发模块问题

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

          D 1 条回复 最后回复 回复 引用 0
          • D
            demo123 @小鱼
            最后由 编辑

            @小鱼 那报的错是什么意思鱼哥有见过吗,component_container_isolated --ros-args --log-level info --ros-args -r __node:=nav2_container --params-file ,还是说这个就是下发模块导致的

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