25 Dec 2010
robots
ros
slam
I've now get the Monte Carlo Localization turned on, map publishing working in ROS, and a number of
parameters defined. This required some hacking of the CoreSLAM library, in particular I removed all
of the references to differential drive odometry, instead loading odometry externally from TF.
Here's an updated map using the 12-12-neato-ils bag file:
There's still some work to fix the way that the map->odom transform is handled, and allow a
configurable map size and resolution (both of which will require reworking some more of the
underlying library). I'm hoping to have the code released shortly.
24 Dec 2010
robots
ros
slam
Over the past semester I've been spending a lot of time working with low-cost SLAM. In doing so,
I've collected a number of datasets around the Albany campus. I've uploaded a number of them
(as ROS bag files), along with sample maps, to
this site. All are free to use these
datasets for whatever they please -- however, please post back maps and algorithms/parameters
used to create them. Over time I would like to develop a set of best-known algorithms/parameters
for low-cost SLAM.
These datasets were collected on iRobot Creates, the Neato XV-11, and the Vanadium Armadillo
using the Neato Laser or the Hokuyo URG-04LX-UG01. In particular, I've recently collected a
dataset I really am looking forward to working with: the 2010-12-23-double-laser.bag dataset,
which consists of a long route around the ILS lab with a Neato XV-11. I mounted a second
laser on the Neato for this run, a Hokuyo URG-04LX-UG01 sensor, which is aligned with the
Neato laser from above:
And a picture of the Neato with second laser:
23 Dec 2010
robots
ros
slam
gmapping is the map building (SLAM) software most commonly used in ROS. It works very
well if you have a very high quality and long-range laser. The Neato laser is neither high
quality nor long range (and the low-cost Hokuyos, while fairly accurate, are still near-sighted).
There isn't a lot of academic literature that mentions low-cost lidars (unless it's a paper
about building a low cost module).
One paper recently published that actually uses a short range Hokuyo is
CoreSLAM, a SLAM implementation in under
200 lines of code. Well..., the map update/storage aspects are less than 200 lines of C
code, however the complete system relies on a bit more, namely a particle filter for
localization.
It looked good. So I integrated it into ROS:
This map is currently only using odometry, I'm going to try and get the MCL localization
aspects working more tomorrow. I also need to get the map_saver to work with my ROS
wrapper. I hope to have this on our SVN by the weekend.