Ask Your Question

slam_gmapping & laser sicklms

asked 2011-03-28 02:18:50 -0600

chcorbato gravatar image

updated 2011-03-28 19:37:02 -0600


I'm trying to build a map using slam_gmapping and a pioneer2AT8 with a SICK LMS 200, for which I'm using the sicklms node from sicktoolbox_wrapper.

I'm getting this error from slam_gmapping node, and I do not know what could be causing it: ...

Registering First Scan
slam_gmapping: rangereading.cpp:17: GMapping::RangeReading::RangeReading(unsigned int, const double*, const GMapping::RangeSensor*, double): Assertion `n_beams==rs->beams().size()' failed.
[slam_gmapping-4] process has died [pid 11686, exit code -6].

the first lines of the log file are:

[roscpp_internal] [2011-03-28 15:59:11,400] [thread 0xb68a7710]: [DEBUG] UDPROS server listening on port [49509]
[roscpp_internal] [2011-03-28 15:59:11,404] [thread 0xb68a7710]: [DEBUG] Started node /slam_gmapping], pid [11686], bound on [arturo-desktop], xmlrpc port [57727], tcpros port 56264], logging to [/home/admin/.ros/log/8db54af8-5943-11e0-a221-001fd0a561c6/slam_gmapping-4.log], using [real] time
[roscpp_internal] [2011-03-28 15:59:11,406] [thread 0xb68a7710]: [DEBUG] Publisher update for /tf]:  already have these connections: 
[roscpp_internal] [2011-03-28 15:59:11,407] [thread 0xb68a7710]: [DEBUG] XML-RPC call lookupService] returned an error (-1): [no provider]
[roscpp_internal] [2011-03-28 15:59:11,409] [thread 0xb68a7710]: [DEBUG] XML-RPC call searchParam] returned an error (-1): [Cannot find parameter [tf_prefix] in an upwards search]
[roscpp_internal] [2011-03-28 15:59:11,409] [thread 0xb68a7710]: [DEBUG] Creating intraprocess link for topic [/tf]
[roscpp_internal] [2011-03-28 15:59:11,412] [thread 0xb68a7710]: [DEBUG] XML-RPC call searchParam] returned an error (-1): [Cannot find parameter [tf_prefix] in an upwards search]
[roscpp_internal] [2011-03-28 15:59:11,413] [thread 0xb68a7710]: [DEBUG] XML-RPC call getParam] returned an error (-1): [Parameter [/slam_gmapping/throttle_scans] is not set]

Thank you in advance for any idea on what the problem may be.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2011-03-28 06:12:14 -0600

Eric Perko gravatar image

Is your SICK configured for 0.5 degree mode? Gmapping cannot currently handle a laser that outputs a variable number of pings. See Ticket 4865 for details.

You can fix the problem by setting your SICK to 1 degree mode. It will then only output 181 readings per scan and not alternate between 181 and 180 pings per scan.

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: 2011-03-28 02:18:50 -0600

Seen: 1,122 times

Last updated: Mar 28 '11