Ask Your Question

Laser Filter and Hector Mapping Issue

asked 2017-02-21 06:50:59 -0500

Rayner gravatar image

Hi all,

I recently implemented the angular_bounds_filter from the laser_filters package to hector SLAM for map building. I decided to limit my RPLidar A2 laserscan from 360deg to 180deg. However, by doing so, when I launch Hector mapping, there seems to be a high tendency of drift and multiple warnings of SearchDir angle change too largewhile I see my frame on RVIZ jump around. All this happens while my robot is stationary. Is there a reason why this is happening? This particular filter is also not documented on the laser_filters wiki page too .

edit retag flag offensive close merge delete


Hi! any update on this issue? i seem to have same issue and warning SearchDir angle change too large

fj138696 gravatar image fj138696  ( 2017-06-08 03:28:53 -0500 )edit

Hi, it actually depends on what sensor you are using and the sensor range. I realized that for a 360deg sensor, this error rarely occurs unless the sensor is shifted very abruptly, However, as the sensor range decreases, this probability of the error occurring increases.

Rayner gravatar image Rayner  ( 2017-06-13 09:26:55 -0500 )edit

I am using 360deg as well, now I understand what you mean by sensor range, I was trying to run the hector_mapping on the table and this error occurs. When I finally mounted the RPLIDAR on my robot and run in quite spacious rooom, it maps quite good enough. Thanks for your update!

fj138696 gravatar image fj138696  ( 2017-06-15 03:16:08 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2017-08-11 09:55:19 -0500

Goldie gravatar image

updated 2017-08-11 12:53:33 -0500

Hi, even tho this question is little old, I had the same SearchDir warning and couldn't find something helpful. I solved the problem now and I hope I can help other people by sharing my solution:

probably your tf to scanmatch is too slow (static_transform_publisher x y z yaw pitch roll frame_id child_frame_id period_in_ms) and you simply have to set a lower value for period_in_ms than before, e.g.

<node pkg="tf" type="static_transform_publisher" name="map_scanmatcher_broadcaster" args="0 0 0 0 0 0 map scanmatcher_frame 5"/>
edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2017-02-21 06:50:59 -0500

Seen: 603 times

Last updated: Aug 11 '17