• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

利用Robosense 16线雷达在自己机器人上跑cartographer 2D(二)

人工智能 合工大机器人实验室 2383次浏览 0个评论

大概流程走完,其实还是有点懵逼的,下面就官方文档,讨论下细节,要是我自己没注意到的点。   Validate your bag   如果是准备跑自己的或者别人的bag包,这一步是很有必要的,可以从中获得相关消息的topic和frame_id,这个在填写lua文件和launch 文件的topic重映射时可以用到。   首先要在工作目录 source 下,然后执行命令:  

source devel_isolated/setup.bash
cartographer_rosbag_validate -bag_filename your_bag_path.bag

  lua文件的配置   lua文件定义在src/cartographer_ros/cartographer_ros/configuration_files 安装在install_isolated/share/cartographer_ros/configuration_files/. 可以通过copy然后再修改: 3D:  

cp install_isolated/share/cartographer_ros/configuration_files/backpack_3d.lua install_isolated/share/cartographer_ros/configuration_files/my_robot.lua

  2D:  

cp install_isolated/share/cartographer_ros/configuration_files/backpack_3d.lua install_isolated/share/cartographer_ros/configuration_files/my_robot.lua

  num_laser_scans:二位激光的数量 num_point_cloud:三维激光的数量 还有个num_multi_echo_laser_scans:大概和laser_scan差不多,我没用到过。 还有一个全局变量TRAJECTORY_BUILDER_3D.num_accumulated_range_data or TRAJECTORY_BUILDER_2D.num_accumulated_range_data 大概是表征激光雷达的扫描一幁需要分多少个消息传出来。 lua文件里面的具体参数,这里暂时不做详细介绍,可以查看官方文档。 除此之外,还需要提供map_frame、tracking_frame、publish_frame、odom_frame之间的tf转化关系, 这里可以通过自己发布/tf消息,也可以通过加载urdf或者xacro文件,然后利用robot_state_publisher节点来发布tf tree。 常用的做法就是利用urdf文件,这里可以cp然后根据自己机器人的传感器相对位置关系进行配置。 launch文件,会调用不同的节点。这里需要分清楚,将你的需求和launch文件对应。  

cp install_isolated/share/cartographer_ros/launch/backpack_3d.launch install_isolated/share/cartographer_ros/launch/my_robot.launch
cp install_isolated/share/cartographer_ros/launch/demo_backpack_3d.launch install_isolated/share/cartographer_ros/launch/demo_my_robot.launch
cp install_isolated/share/cartographer_ros/launch/offline_backpack_3d.launch install_isolated/share/cartographer_ros/launch/offline_my_robot.launch
cp install_isolated/share/cartographer_ros/launch/demo_backpack_3d_localization.launch install_isolated/share/cartographer_ros/launch/demo_my_robot_localization.launch
cp install_isolated/share/cartographer_ros/launch/assets_writer_backpack_3d.launch install_isolated/share/cartographer_ros/launch/assets_writer_my_robot.launch

  官网给了五个launch,这里以3D为讨论,需要2D,copy时候换下即可。 第一个用于实时在线跑SLAM,用传感器真实数据。 第二个使用数据包离线跑。需要提供参数bag_filename; 第三个和第二个很接近,不过第三个建图速度会相对快一点。 第四个和第二个也很接近,不过不是用来建图,用来定位,需要提供之前建图的.bpstream文件作为load_state_filename. 第五个用来提取.bpstream文件数据。第四个和第五个我暂时还没接触,等有接触在补充。  


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明利用Robosense 16线雷达在自己机器人上跑cartographer 2D(二)
喜欢 (0)

您必须 登录 才能发表评论!

加载中……