problem with hector slam
HI All,
I'm hoping someone might be able to help. I've been trying to get gmapping working ut the update rates was incredibly slow (~5 seconds from moving the robot to the map moving) so I'm giving the hector slam ago.
This problem must be due to the tf I'm publishing, I'm just not sure what hector slam actually needs me to publish vs what is will publish for itself.
I'm starting it with the standard (i.e. I've changed nothing):
roslaunch hector_slam_launch tutorial.launch
I'm have made the tf as simple as possible
UPDATE (With updated static tf):
And my system graph looks like:
Hector slam doesn't seem to be doing anything. All I get printed out is:
process[rviz-1]: started with pid [8374]
process[hector_mapping-2]: started with pid [8375]
process[hector_trajectory_server-3]: started with pid [8379]
process[hector_geotiff_node-4]: started with pid [8383]
[ INFO] [1429946593.528284272]: Waiting for tf transform data between frames /map and scanmatcher_frame to become available
[ INFO] [1429946594.644483794]: Successfully initialized hector_geotiff MapWriter plugin TrajectoryMapWriter.
[ INFO] [1429946594.644839942]: Geotiff node started
HectorSM map lvl 0: cellLength: 0.05 res x:2048 res y: 2048
HectorSM map lvl 1: cellLength: 0.1 res x:1024 res y: 1024
[ INFO] [1429946598.082143817]: HectorSM p_base_frame_: base_footprint
[ INFO] [1429946598.082288732]: HectorSM p_map_frame_: map
[ INFO] [1429946598.082325095]: HectorSM p_odom_frame_: nav
[ INFO] [1429946598.082375357]: HectorSM p_scan_topic_: scan
[ INFO] [1429946598.082410037]: HectorSM p_use_tf_scan_transformation_: true
[ INFO] [1429946598.082460158]: HectorSM p_pub_map_odom_transform_: true
[ INFO] [1429946598.082495348]: HectorSM p_scan_subscriber_queue_size_: 5
[ INFO] [1429946598.082536563]: HectorSM p_map_pub_period_: 2.000000
[ INFO] [1429946598.082575411]: HectorSM p_update_factor_free_: 0.400000
[ INFO] [1429946598.082610219]: HectorSM p_update_factor_occupied_: 0.900000
[ INFO] [1429946598.082670763]: HectorSM p_map_update_distance_threshold_: 0.400000
[ INFO] [1429946598.082713224]: HectorSM p_map_update_angle_threshold_: 0.060000
[ INFO] [1429946598.082752979]: HectorSM p_laser_z_min_value_: -1.000000
[ INFO] [1429946598.082792572]: HectorSM p_laser_z_max_value_: 1.000000
[ WARN] [1429946613.537432314]: No transform between frames /map and scanmatcher_frame available after 20.009908 seconds of waiting. This warning only prints once.
If anyone could advise on what I need to correct I'd be most grateful
Kind Regards
Mark
Which frame is your scanner publishing in? (look at the frame_id in the header) It probably can't find the transform between your laser scanner and the rest of the robot.
It's been derived from depthimage_to_laserscan which is defaulting to frame_id: camera_depth_frame
You static transform broadcaster should probably be broadcasting the transform between
base_link
andcamera_depth_frame
, if your data is in thecamera_depth_frame
.I've updated the static broadcast - I'm still not seeing anything :(. Looking at other posts I've ensured that rviz has the map topic added. At the moment I've not getting "No transform from [map] to [base_link]" I assumed that hector_slam provides this once it's working?