ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Hector SLAM map does not update based on robot motion

asked 2019-04-21 16:40:26 -0500

danielwu gravatar image

Hi, I am having trouble with Hector SLAM using a car with LIDAR and no odometry frame. I started with a recorded bag file that has Velodyne LIDAR data and used rosrun pointcloud_to_laserscan pointcloud_to_laserscan_node to convert from pointcloud2 format to scan format. Now I am trying to run Hector SLAM, without using odometry frame. I am following the information on this page , part 2, “Use without odom frame.”

I am able to generate a map, but the map just expands radially from the center. My car is definitely driving, but the map looks like the car is sitting in the same spot.

I suspect that there is something wrong with the transformations between the car and the earth. I tried using tf_echo to look at the transform between the robot and the earth, but the values there don’t seem to make sense and the transform seems to always be the same, because the car isn’t always driving at a constant speed.

Here is the launch file:

Here is the bag file:

Here is a picture of the tf tree:

Here is the corresponding camera image video:

Here is the current map in rviz:

I am using ROS Kinetic with Ubuntu 16.04 dual-booted on a Dell Inspiron computer.

What am I doing wrong that makes the map appear to not move?

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted

answered 2019-04-25 01:12:54 -0500

@danielwu, can you try to add

<param name="use_sim_time" value="true" />

to your launch file. Then, play your rosbag file

 rosbag play --clock newVelo.bag
edit flag offensive delete link more

Question Tools

1 follower


Asked: 2019-04-21 16:40:26 -0500

Seen: 554 times

Last updated: Apr 25 '19