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

slam_gmapping & laser sicklms

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

chcorbato gravatar image

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


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 -0500

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

Question Tools

1 follower


Asked: 2011-03-28 02:18:50 -0500

Seen: 1,210 times

Last updated: Mar 28 '11