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

    地图加载后,虽然/map话题发布了,但是内容异常,全部是0

    已定时 已固定 已锁定 已移动
    动手学ROS2
    mapserver, cartographer建图 nav2mapserver
    3
    12
    656
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 小伊小
      机器人小伊
      最后由 编辑

      从您提供的信息来看,问题可能出在地图数据的加载或传输上,尽管nav2_map_server已经成功启动并配置了,但是/map话题发布的数据似乎并不包含有效的地图数据(所有数据都是0或者未显示完整)。以下是一些可能的解决步骤和检查点:

      1. 检查PGM文件:

        • 确保fishbot_map.pgm文件没有损坏,并且确实包含了有效的地图数据。您可以尝试用图像查看器打开它,看看是否能正确显示地图。
        • 检查PGM文件的格式是否与nav2_map_server的期望一致。通常,PGM文件应该是灰度图,其中不同的灰度值表示地图的不同状态(如占用、空闲等)。
      2. 检查YAML配置文件:

        • 您提供的YAML文件中的resolution和origin与topic echo中的输出略有不同(YAML中为0.05和[-5.39, -3.68, 0],而输出为0.05000000074505806和[-4.98, -3.79, 0])。这通常是由于浮点数的精度问题,但确认这些值是否适合您的环境仍然很重要。
        • 确保yaml_filename的路径正确,并且nav2_map_server有权限读取该文件。
      3. 检查ROS 2节点和话题:

        • 使用ros2 node list查看map_server节点是否正在运行。
        • 使用ros2 topic info /map查看话题的发布者、订阅者等信息。
        • 确保没有其他节点或问题阻止/map话题的数据传输。
      4. 查看日志:

        • 查看nav2_map_server的日志输出,可能包含有关为什么无法加载或发布地图的更多信息。您可以使用ros2 log show /map_server来查看。
      5. 环境变量和路径:

        • 确保所有相关的环境变量(如ROS_PACKAGE_PATH)都已正确设置,以便nav2_map_server能够找到其依赖项和配置文件。
      6. 尝试重新加载或重启:

        • 尝试重新加载地图文件(可能需要重启nav2_map_server),看是否可以解决问题。
        • 重启整个ROS 2系统,有时这可以解决由于状态不一致或缓存问题导致的问题。
      7. 检查RVIZ2配置:

        • 确保在RVIZ2中正确配置了地图显示。检查Map面板是否已正确设置为接收/map话题,并且没有其他配置错误。

      如果上述步骤都无法解决问题,您可能需要更深入地检查nav2_map_server的源代码或查找是否有其他用户遇到并解决了类似的问题。此外,考虑在ROS 2社区或相关论坛中寻求帮助。


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

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

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

        @2996724802

        @2996724802 在 地图加载后,虽然/map话题发布了,但是内容异常,全部是0 中说:

        ros2 topic echo /map header: stamp: se

        这个命令本身会截断数据,只是为了更好显示,真实数据是完整的,无法显示大概率是qos问题

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

        2 小鱼小 2 条回复 最后回复 回复 引用 0
        • 2
          2996724802 年度VIP @小鱼
          最后由 编辑

          @小鱼 意思是我的虚拟机问题吗,我的虚拟机性能不行,要换双系统吗?可是正常用Gazebo发布的地图都没有问题啊

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

            @2996724802 意思是没有问题

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

            2 1 条回复 最后回复 回复 引用 0
            • 2
              2996724802 年度VIP @小鱼
              最后由 编辑

              @小鱼 那我rviz里面Map标签显示“No map received”,不显示地图,怎么办

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

                @小鱼 在 地图加载后,虽然/map话题发布了,但是内容异常,全部是0 中说:

                无法显示大概率是qos问题

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

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

                  @2996724802 看看最新的教程吧

                  小鱼 ROS 2 新书上线!书籍购买链接: https://m.tb.cn/h.gKdXUhi
                  新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

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

                  1 条回复 最后回复 回复 引用 0
                  • 2
                    2996724802 年度VIP @小鱼
                    最后由 编辑

                    @小鱼
                    (ros2) chen@chen-virtual-machine:~$ ros2 topic info /map --verbose
                    Type: nav_msgs/msg/OccupancyGrid

                    Publisher count: 1

                    Node name: map_server
                    Node namespace: /
                    Topic type: nav_msgs/msg/OccupancyGrid
                    Endpoint type: PUBLISHER
                    GID: 01.0f.4e.5b.56.10.8b.b4.00.00.00.00.00.00.1f.03.00.00.00.00.00.00.00.00
                    QoS profile:
                    Reliability: RELIABLE
                    History (Depth): UNKNOWN
                    Durability: TRANSIENT_LOCAL
                    Lifespan: Infinite
                    Deadline: Infinite
                    Liveliness: AUTOMATIC
                    Liveliness lease duration: Infinite

                    Subscription count: 1

                    Node name: rviz
                    Node namespace: /
                    Topic type: nav_msgs/msg/OccupancyGrid
                    Endpoint type: SUBSCRIPTION
                    GID: 01.0f.4e.5b.bb.10.1a.f9.00.00.00.00.00.00.21.04.00.00.00.00.00.00.00.00
                    QoS profile:
                    Reliability: RELIABLE
                    History (Depth): UNKNOWN
                    Durability: VOLATILE
                    Lifespan: Infinite
                    Deadline: Infinite
                    Liveliness: AUTOMATIC
                    Liveliness lease duration: Infinite

                    这个是显示出来的qos,我上网查了一下,这个配置好像没有什么问题

                    小鱼小 1 条回复 最后回复 回复 引用 0
                    • 2
                      2996724802 年度VIP @小鱼
                      最后由 编辑

                      @小鱼 鱼哥看到了记得解答一下,谢谢

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

                        @2996724802 你先保持一致试试,至于是否兼容可以看书籍最后一章,另外如果实在显示不出来就跳过这个好了,你是看的动手学ROS2教程吗,如果是就看看最新的书籍,之前的会有很多对新手不友好的坑,另外看你启用了conda,这个可能也会有影响

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

                        2 1 条回复 最后回复 回复 引用 0
                        • 2
                          2996724802 年度VIP @小鱼
                          最后由 编辑

                          @小鱼 那我先跳过吧,大不了直接用gazebo发布地图

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