Cartographer + Navigation 建图导航(个人定制版)

实时建图链接:Cartographer实时建图(个人定制版)

一、建图

1、启动机器人

roslaunch lp_robot lp_robot.launch

2、启动键盘

roslaunch lp_robot keybord.launch

3、录包

rosbag record -a

4、生成pbstream文件(两种方法)
方法1:

roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=floor_12.bag
rosservice call /finish_trajectory 0
rosservice call /write_state "{filename: '${HOME}/Downloads/floor_12.pbstream'}"

方法2:

roslaunch cartographer_ros offline_backpack_2d_lp_hy.launch bag_filenames:=/home/lyp/XXX.bag

bag使用绝对路径

注意:修改yaml文件夹的绝对路径

5、转成pgmyaml文件

rosrun cartographer_ros cartographer_pbstream_to_ros_map -map_filestem=/home/lyp/Downloads/floor_22 -pbstream_filename=/home/lyp/Downloads/floor_22.pbstream -resolution=0.05

详细链接:基于Carto的小车SLAM建图定位与导航

二、修图

1、将pbstreampgmyaml文件复制到rviz_map_tool文件夹的map下。
2、启动rviz_map.launch文件

roslaunch rviz_map_tool rviz_map.launch

3、依次选择Panels—>Add New Panel—>RvizMapTool。再选择Add,再添加Map。最后选择Add—>SegmentArry,然后修改topic为roadedge,配置修图的线颜色和粗细。

4、将data文件夹下的.csv文件复制到read_markfile_pub文件夹下。
5、运行read_markfile_pub.launch文件测试是否能发布/roadedge话题

 roslaunch rviz_map_tool rviz_map.launch
roslaunch read_markfile_pub read_markfile_pub.launch 

6、在上一步基础上测试navigation_map是否发布/navigation_map话题

roslaunch navigation_map navigation_map.launch 

详细链接:
【1】Cartographer建图后的原始图像处理(Rviz插件修图)
【2】Rviz插件修完图之后发布修图坐标值(读取CSV文件)
【3】navigation_map订阅修图的坐标值并发布导航专用的地图

三、导航

1、修改read_markfile_pub.launch加载.csv文件路径

注意:将roadedge.csv文件拷贝到/read_markfile_pub/data/floor_11/文件夹下

2、修改dwa_loop_move_base_simulation_object.launch的加载地图.yaml路径

注意:将pbstream/pgm/yaml文件拷贝到/simulation_launch/map/文件夹下

3、 修改demo_backpack_2d_localization_test.launch定位包,修改pbstream文件路径

4、运行导航launch文件

roslaunch simulation_launch dwa_loop_move_base_simulation_object.launch

5、启动rviz监测画面

rviz

6、将导航过程录制成bag

rosbag record -a

[总结]:需要修改的文件:

simulation_launch/launch/dwa_loop_move_base_simulation_object.launch
./read_markfile_pub/launch/read_markfile_pub.launch
./install_isolated/share/cartographer_ros/launch/demo_backpack_2d_localization_test.launch

四、仿真

/home/lyp/zhankun/SLAM/slam_simulation/catkin_ws
/home/lyp/zhankun/SLAM/slam_simulation/catkin_ws/src/rbx1/rbx1_nav/maps

1、运行一个机器人

roslaunch rbx1_bringup fake_turtlebot.launch

2、运行fake_amcl.launch调用已有的测试地图

roslaunch rbx1_nav fake_amcl.launch

或者,手动指定要调用的地图

roslaunch rbx1_nav fake_amcl.launch map:=test_map.yaml

3、启动rviz 并调用amcl配置文件

rosrun rviz rviz -d `rospack find rbx1_nav`/amcl.rviz

参考链接:ROS导航仿真和多点导航1———导航仿真

  • 8
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值