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

    在跟着视频运行chapt7配套代码的时候,没有map坐标系

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

      背景:

      chapt7的第一步,用slam_toolbox建图

      问题描述:

      f00a92d0-847b-455c-93f9-6d6cecf6c2c6-image.png
      能够打开仿真,应该没有报错。
      e6966e59-94bb-438c-9a44-330c36318506-image.png
      但是打开rviz2后,报错map不存在。
      6b75aa9f-8439-408e-bcdf-03eabcf8c283-image.png
      发现确实没有map坐标系。
      14d07ffd-91e4-4fac-a747-fc9cf0c80379-image.png
      有map话题,但没有数据发送
      25e744e1-a670-4f6f-9e0e-69f626d21027-image.png
      rqt如上

      具体细节和上下文:

      没有进行别的配置,仅仅build了chapt7的代码,然后运行仿真、slam、rviz2。不知道是不是要配置别的东西?我看了gazebo_sim.launch.py中的路径都是自动获取的

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

        当你在使用 slam_toolbox 进行建图时,如果遇到了 map 坐标系不存在或 map 话题没有数据发送的问题,可能是由于以下几个原因导致的。以下是一些排查和解决步骤,希望能帮助你解决问题:

        1. 检查 SLAM 节点是否正常运行:

          • 确保 SLAM 节点(如 cartographer_ros 或 slam_toolbox 的相应节点)已经正确启动,并且没有报错。
          • 你可以使用 ros2 node list 查看所有活动的节点,确认 SLAM 节点是否在运行。
          • 使用 ros2 topic list 查看所有主题,确认是否有 /map 和 /odom 等相关主题。
        2. 检查 TF 变换:

          • 使用 ros2 tf static_list 或 ros2 tf tree 命令查看当前的 TF 树,确认是否有从 map 到 odom,再到 base_link 或 base_footprint 的变换。
          • 如果 TF 树不完整,可能是 SLAM 节点没有正确发布变换。
        3. 检查 RViz 配置:

          • 在 RViz 中,确保你已经添加了 Map 显示类型,并且选择了正确的 map 框架。
          • 检查 Global Options 中的 Fixed Frame 是否设置为 map。
        4. 检查仿真环境配置:

          • 确认 gazebo_sim.launch.py 中的路径和参数是否正确,特别是关于 SLAM 和地图的部分。
          • 如果 SLAM 需要特定的传感器数据(如激光扫描或深度相机),确保这些数据正在被正确发布并且 SLAM 节点能够接收到。
        5. 检查日志文件:

          • 查看 SLAM 节点的日志文件,通常可以通过 ros2 node info <node_name> 获取日志文件的路径。
          • 日志文件中可能包含关于为什么 map 话题没有数据或 SLAM 失败的具体错误信息。
        6. 重新构建和部署:

          • 有时候,简单的重新构建整个工作空间(colcon build)和重新部署(确保所有依赖项都是最新的)可以解决问题。
          • 确保你的工作空间是干净的,没有旧的或损坏的构建文件。
        7. 检查依赖关系:

          • 确保所有依赖的软件包都已正确安装,并且版本兼容。
          • 对于 slam_toolbox,检查是否所有必要的依赖项都已安装,如 robot_localization、tf2_ros 等。

        如果以上步骤都不能解决问题,你可能需要更详细地检查 SLAM 节点的配置或寻求社区的帮助,比如在 ROS 2 的官方论坛或 GitHub 仓库中提问。


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

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

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

          @3262269395 先检查各个主体的数据是否正常

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

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