rviz2显示静态地图:
在我们建好自己的地图pgm图像的环境地图以后,需要使用这个地图进行导航和定位。但是在使用过程中总是发现rviz2无法加载地图。
使用如下的代码调用地图服务
ros2 run nav2_map_server map_server --ros-args --params-file ./pars.yaml
[INFO] [1670916871.905383175] [map_server]: Creating map_server
会一直卡在这个上面不动
问题描述
上面的问题在ros1中是不会遇到的,我按照相同的流程在ros1一旦打开地图服务直接就能在rviz上显示你之前创建的地图。那么这个问题肯定是来自于ros2和ros1的差异性上面。
网上说的是,ros2的nav2_map_server项目是使用生命周期节点进行开发的,因此在使用上面的代码会等待ros2节点(node)激活.解决方法使用下面代码:
ros2 run nav2_util lifecycle_bringup map_server
或者两步走:ros2 lifecycle set /map_server configure #节点配置
ros2 lifecycle set /map_server activate # 节点激活
经过上面的操作,你的map_save