hokuyo激光雷达跑cartographer

转载请标明出处:http://www.cnblogs.com/wenhust/

 

一、相关说明

此实验使用hokuyo UTM-30LX激光雷达在Ubuntu 14.04及ROS indigo下进行实测Cartographer建图效果。
hokuyo激光雷达设备相关资料:https://sourceforge.net/p/urgnetwork/wiki/Home/
hokuyo_node相关资料:http://wiki.ros.org/hokuyo_node

二、安装hokuyo UTM-30LX

参见:http://wiki.ros.org/hokuyo_node/Tutorials

  1. How to use Hokuyo Laser Scanners with the hokuyo_node
    This tutorial is an introduction to using a Hokuyo laser scanner connected to a desktop. After reading this tutorial, you should be able to bring up the hokuyo_node and display the laser data.
  2. How to Dynamically Reconfigure the hokuyo_node
    This tutorial covers using the reconfigure_gui to dynamically reconfigure the hokuyo_node to run with different parameters. After reading this tutorial, you should be able to bring up the reconfigure_gui and change the hokuyo_node parameters.
  3. How to dynamically reconfigure the hokuyo_node from the command line or code
    After completing this tutorial, you will be able to reconfigure the parameters of the hokuyo_node from the command line or python code.

将激光雷达连接进入ROS并给其配置好对应的参数后,即完成hokuyo UTM-30LX激光雷达的安装。

三、使用hokuyo UTM-30LX跑cartographer

1. 安装cartographer

参见之前的文章:http://www.cnblogs.com/wenhust/p/5961017.html

2. 创建相关文件

  1. 创建demo_hokuyo.launch 进入 catkin_ws/src/cartographer_ros/cartographer_ros/launch/,将 下列代码写入demo_hokuyo.launch:

  "/use_sim_time" value="false" />

  "cartographer_node" pkg="cartographer_ros"
      type="cartographer_node" args=" -configuration_directory $(find cartographer_ros)/configuration_files -configuration_basename demo_hokuyo.lua" output="screen">  "rviz" pkg="rviz" type="rviz" required="true" args="-d $(find cartographer_ros)/configuration_files/demo_hokuyo.rviz" /> 
  1. 创建demo_hokuyo.lua 进入 catkin_ws/src/cartographer_ros/cartographer_ros/configuration_files/,将下列代码写入demo_hokuyo.lua:
include "map_builder.lua"

options = {
  map_builder = MAP_BUILDER,
  map_frame = "map",
  tracking_frame = "laser",
  published_frame = "laser",
  odom_frame = "odom", provide_odom_frame = true, use_odometry_data = false, use_constant_odometry_variance = false, constant_odometry_translational_variance = 0., constant_odometry_rotational_variance = 0., use_horizontal_laser = true, use_horizontal_multi_echo_laser = false, horizontal_laser_min_range = 0.3, horizontal_laser_max_range = 30., horizontal_laser_missing_echo_ray_length = 1., num_lasers_3d = 0, lookup_transform_timeout_sec = 0.2, submap_publish_period_sec = 0.3, pose_publish_period_sec = 5e-3, } MAP_BUILDER.use_trajectory_builder_2d = true TRAJECTORY_BUILDER_2D.use_imu_data = false TRAJECTORY_BUILDER_2D.use_online_correlative_scan_matching = true SPARSE_POSE_GRAPH.optimization_problem.huber_scale = 1e2 return options
  1. 创建demo_hokuyo.rviz 进入 catkin_ws/src/cartographer_ros/cartographer_ros/configuration_files/,将下列代码写入demo_hokuyo.rviz:
Panels:
  - Class: rviz/Displays
    Help Height: 78
 Name: Displays Property Tree Widget:  Expanded: - /Submaps1 - /PointCloud21 Splitter Ratio: 0.600671 Tree Height: 821 - Class: rviz/Selection  Name: Selection - Class: rviz/Tool Properties  Expanded: - /2D Pose Estimate1 - /2D Nav Goal1 - /Publish Point1  Name: Tool Properties Splitter Ratio: 0.588679 - Class: rviz/Views  Expanded: - /Current View1  Name: Views Splitter Ratio: 0.5 - Class: rviz/Time  Experimental: false  Name: Time  SyncMode: 0  SyncSource: PointCloud2 Visualization Manager:  Class: ""  Displays: - Alpha: 0.5 Cell Size: 1  Class: rviz/Grid  Color: 160; 160; 164  Enabled: true Line Style: Line Width: 0.03  Value: Lines  Name: Grid Normal Cell Count: 0  Offset:  X: 0  Y: 0  Z: 0  Plane: XY Plane Cell Count: 100 Reference Frame:   Value: true - Class: rviz/TF  Enabled: true Frame Timeout: 15  Frames: All Enabled: true  base_link:  Value: true  horizontal_laser_link:  Value: true  imu_link:  Value: true  map:  Value: true  odom:  Value: true  vertical_laser_link:  Value: true Marker Scale: 1  Name: TF Show Arrows: true Show Axes: true Show Names: true  Tree:  map:  odom:  base_link:  horizontal_laser_link: {}  imu_link: {}  vertical_laser_link: {} Update Interval: 0  Value: true - Alpha: 1  Class: rviz/RobotModel Collision Enabled: false  Enabled: true  Links: All Links Enabled: true Expand Joint Details: false Expand Link Details: false Expand Tree: false Link Tree Style: Links in Alphabetic Order  base_link:  Alpha: 1 Show Axes: false Show Trail: false  horizontal_laser_link:  Alpha: 1 Show Axes: false Show Trail: false  Value: true  imu_link:  Alpha: 1 Show Axes: false Show Trail: false  Value: true  vertical_laser_link:  Alpha: 1 Show Axes: false Show Trail: false  Value: true  Name: RobotModel Robot Description: robot_description TF Prefix: "" Update Interval: 0  Value: true Visual Enabled: true - Class: Submaps  Enabled: true Map frame: map  Name: Submaps Submap query service: /submap_query  Topic: /submap_list Tracking frame: base_link  Unreliable: false  Value: true - Alpha: 1 Autocompute Intensity Bounds: true Autocompute Value Bounds: Max Value: 10 Min Value: -10  Value: true  Axis: Z Channel Name: intensity  Class: rviz/PointCloud2  Color: 0; 255; 0 Color Transformer: FlatColor Decay Time: 0  Enabled: true Invert Rainbow: false Max Color: 255; 255; 255 Max Intensity: 4096 Min Color: 0; 0; 0 Min Intensity: 0  Name: PointCloud2 Position Transformer: XYZ Queue Size: 10  Selectable: true Size (Pixels): 3 Size (m): 0.05  Style: Flat Squares  Topic: /scan_matched_points2  Unreliable: false Use Fixed Frame: true Use rainbow: true  Value: true  Enabled: true Global Options: Background Color: 100; 100; 100 Fixed Frame: map Frame 

你可能感兴趣的:(hokuyo,cartographer)