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

laser_scan_matcher error!

asked 2015-06-24 03:04:01 -0500

osmancns gravatar image

updated 2015-06-24 03:14:45 -0500

hello friends... I am using gmapping and it is working fine with fake odometry. But now I wanted to use laser_scan_matcher to get better odometry data. I am not use a bag file and rosparam use_sim_time is "false". But laser_scan_matcher throws some error. I couldnt solve this. (I am using static tf for laser to base_link)

error link :

And this is my laser_scan_matcher.launch file:

<param name="/use_sim_time" value="false"/>  
<node pkg="laser_scan_matcher" type="laser_scan_matcher_node"   
name="laser_scan_matcher_node" output="screen">    
<param name="max_iterations" value="10"/>    
<param name="use_imu" type="bool" value="false" />    
<param name="use_odom" type="bool" value="false" />    
<param name="fixed_frame" type="string" value="world" />    
<param name="base_frame" type="string" value="base_link" />

my error:

****process[laser_scan_matcher_node-1]: started with pid [36778]
[ INFO] [1435132670.287163697]: Starting LaserScanMatcher

[ WARN] [1435132671.572234872]: Could not get initial transform from base to laser frame, Lookup would require extrapolation into the past.  Requested time 1435132670.566868328 but the earliest data is at time 1435132670.570998429, when looking up transform from frame [laser] to frame [base_link]

[ WARN] [1435132671.572301017]: Skipping scan
Strange FOV: -6.283185 rad = -360.000010 deg 
[ WARN] [1435132671.572614765]: Error in scan matching****
edit retag flag offensive close merge delete

2 Answers

Sort by » oldest newest most voted

answered 2015-07-03 01:22:35 -0500

osmancns gravatar image

updated 2015-07-03 01:36:57 -0500

this error was solved like that: Error is relates to Rplidar node.cpp.

Modify the original code:

scan_msg.angle_min = M_PI - angle_min;
scan_msg.angle_max = M_PI - angle_max;


scan_msg.angle_min = -1*(M_PI - angle_min);
scan_msg.angle_max = M_PI - angle_min;

edit flag offensive delete link more


Thanks! That works for me!

rosRabbit gravatar image rosRabbit  ( 2015-08-26 02:39:37 -0500 )edit

Thank you very much!

jrobe gravatar image jrobe  ( 2016-05-10 11:37:04 -0500 )edit

Thanks a lot!

Clack gravatar image Clack  ( 2016-07-09 07:27:38 -0500 )edit

Could you help me with the modification I should do, if I'm using a ydlidar?

danthb gravatar image danthb  ( 2018-11-22 18:40:52 -0500 )edit

answered 2015-06-24 16:08:49 -0500

bona gravatar image

Did you subscribe to the same topic laser scanner publishing? Also make sure you have published transformation between "base_line" and "laser".

Wish that will help.

edit flag offensive delete link more


thank you .ı am sure ı have a tf for base_link between laser because ı see it on my tree views. it is not problem for first time because node see this tf one second later. importent problem : error scan matching. But can you explain " same topic laser scanner publishing " ı couldnt understand

osmancns gravatar image osmancns  ( 2015-06-24 19:27:17 -0500 )edit

Because this is my laser to base_link TF launcher :

<launch> <node pkg="tf" type="static_transform_publisher" name="base_link_to_laser" args="0.0 0.0 0.0 0.0 0.0 0.0 /base_link /laser 40"/> </launch> what can I do you think ?

osmancns gravatar image osmancns  ( 2015-06-25 01:58:50 -0500 )edit

ı use this command $ rosmake scan_tools and ı see this result.

You know what is that ?

osmancns gravatar image osmancns  ( 2015-06-25 07:02:39 -0500 )edit

Question Tools

1 follower


Asked: 2015-06-24 03:04:01 -0500

Seen: 2,159 times

Last updated: Jul 03 '15