Your shopping cart is empty.

RoboPeak LIDAR Review

30 Jun, 2014

What is it?

The RoboPeak LIDAR is a two-dimensional rangefinder that uses a laser reflection sensor to collect distances. For an overview, check out our Quick Reference, or keep reading for the full unboxing experience!

Aerospace Robotics stickers not included.

What’s in the box?

The RoboPeak LIDAR unit, a 7-pin female-female connector (5267), a serial to USB adapter board, a micro-USB cable, a little “Quick Start” sheet, and a bunch of foam packing material.

Initial Setup Process:

Out of the box, it’s not difficult at all to hook all the silly connectors together...

 

RoboPeak LIDAR Review

What is it?

The RoboPeak LIDAR is a two-dimensional rangefinder that uses a laser reflection sensor to collect distances. For an overview, check out our Quick Reference, or keep reading for the full unboxing experience!

What’s in the box?

The RoboPeak LIDAR unit, a 7-pin female-female connector (5267), a serial to USB adapter board, a micro-USB cable, a little “Quick Start” sheet, and a bunch of foam packing material.

Aerospace Robotics stickers not included.

Initial Setup Process:

Out of the box, it’s not difficult at all to hook all the silly connectors together and plop the sensor down. The 7-pin port on the LIDAR unit is mounted straight down and is barely smaller than the stand-offs, so a little bending persuasion is required to let the thing sit flat, but it works.

Download the drivers and demo software from the RoboPeak website (http://rplidar.robopeak.com/download.html) using the link under the “SDK & Documents” heading (direct link). Unzip the files to wherever you want to put them on your computer. Next, plug the USB into your computer. The drivers should automatically install after this. If they don’t, go into your device manager and manually set the path of the driver (it should be in the \tools\cp2012_driver folder).

Reading Data:

PC:
If you’re on Windows, you’re now in luck! Just run any of the executables in \tools\win32 and you’ll be reading live data. If you’re not on a Win32 or better Windows system, you’ll need to build your executables from the included source code first (which worked for us on both Ubuntu 10.04.4 and Windows 7).

Three different Windows executable (Win32) files in the devkit allow for basic testing and playing-around with the unit:

  • frame_grabber.exe opens a pretty GUI with the data already processed and on a polar plot.  We’ve noticed significantly slower performance with this executable on some machines than on others.
  • simple_grabber.exe displays information from the device and an attempt at a basic visual representation of the data (which we could not get working).
  • ultra_simple.exe simply spits out decimal data points into your command line (angle, distance, and quality of each point, on a new line)

 
Screenshot of frame_grabber.exe, showing millimeter distances from the sensor. It's only really legible full-screen. 

Microcontroller:
Since the LIDAR uses serial communication, if you want to run the LIDAR with a microcontroller, it needs to have two or more serial ports if you want to simultaneously view and record measurements. It's not really advisable to use SoftwareSerial or any similar bitbanging package, as there is such a vast stream of data (~2000 scans / second, 5 bytes / scan = 10kB/s). If you're clever with data preprocessing and want to overhaul the drivers by throwing out a lot of the data checks, it is possible to drop the stream to a rate Software Serial can handle if you're in a fairly sparse or large room; however, with the thought of putting this on a robot navigating real spaces in mind (check back in a day or two to see it!), we used a Seeeduino MEGA, which boasts four serial ports.

Included in the SDK download is an Arduino program which demonstrates using the libraries for communicating with the LIDAR. Since it was written for the Uno, which only has one UART, it only establishes communication with the LIDAR and tells it to record data, dumping everything it receives into nothingness. A few lines of code is all it takes to broadcast this over another serial back to a PC. Viewed through the serial monitor, this stream of data is not easy to make sense of; we made a TkInter visualization to make sure everything worked. Check back later this week for our code demos and Github unveiling!

Sensor Evaluation

The RP LIDAR's measurements are astonishingly good. It has millimeter-order precision over its entire operating range with very simple filtering; the raw results are never worse than centimeter-order. Accuracy was also high (on the same order as precision), but is a less critical measurement for a sensor typically used for navigation and localization. As advertised, the precision is <1% of the range! 


Measure of the precision of the LIDAR sensor, compared with formulaic relationships to range.

Comparisons

Compared to making a 2D scanner using your own rangefinder and actuation, the RP LIDAR is almost certainly far superior in terms of consistency. It also works out-of-the-box, and if the goal of your project isn't making a sensor, but making something that uses a sensor, you should choose the RP LIDAR over most home-brewed alternatives. It looks polished, and though the cylinder that the laser and sensor are in wobbles a bit when it spins, the built-in angular encoder compensates for any variation in rotation incredibly well.


Various hacked multi-dimensional sensors from an Olin class, Principles of Engineering.

Many hobbyists have also pursued turning the sensor from a Neato vacuum into a standalone sensor. New Neato XV-11 vacuums cost around $400 at the time of writing; the torn-out sensors can be found on eBay and similar for around $100. While the innards of the RP LIDAR and XV-11 are incredibly similar, the hacking required to make the XV-11 behave like the RP LIDAR is not for the inexperienced, and is not reliable. While we certainly hope that the prices of the XV-11 and RoboPeak units will converge on the lower end, if you aren't trying to make a sensor in addition to your robotics project, the RoboPeak option is the best option. 


Left to Right: The Neato XV-11 Robot Vacuum and its removed LIDAR sensor. Eerily familiar...

 

Of course, there is also the option to buy an expensive Hokuyo or other high-end LIDAR device, priced from $1400 to however much money you can think of. Even if you have the wherewithal to do so, you won't be gaining much in terms of angular or distance resolution at the operating range of the RP LIDAR (~0.2m - 7m). If you're seeking higher range or significantly higher quality measurements, perhaps the right option is to splurge - or get research funding somewhere, since you're probably working on something begging such resources.

Overall, for any ordinary projects looking to use 2D LIDAR without the work and bugs of building such a system, RP LIDAR is the best product on the market now.

Applications

Check back in later this week for details about our Aerospace Robotics SLAMbot, an ongoing project exploring the capabilities of the RP LIDAR and other products we sell or are hoping to make available to roboticists like you!

Leave a comment
111 comments

Viktor

October 25, 2016

Hi!

I’m trying to use the Rplidar A1 with an Arduino Uno. I’ve got the code working and can see some results on the Serial Monitor thanks to the println()-command. My biggest problem is that i only get 1 sample/second and I need a lot more.

How do I get more data on the serial monitor?

is added to your shopping cart.
Go to Cart
is added to your wishlist.
Go to Wishlist