Using LIDAR-Lite to sweep an arc for sense-and-avoid

I was curious how well LIDAR-Lite, which is just a laser range finder out of the box, would work as a full sweeping LIDAR unit, so I set up this demo unit. The unit updates at 100Hz, so to detect a 10cm object (like a telephone pole) within a 5m arc at 10m distance (with 2x oversampling), I calculate that you need to sweep 30 degrees back and forth each second. (5m = 10m*sin (30)).

That's totally within the speed of a regular servo, so I threw together this test. It just uses APM as an Arduino, sends the LIDAR-Lite and servo position data over serial and reads and graphs the data with a Processing sketch on the laptop.  The Arduino code and Processing sketch are here: LIDAR%20sweep.zip

BTW, the LIDAR-Lite sensor is already fully supported by the APM code as a range finder (for altitude hold with copters and/or autolanding assist with planes). You can read more about using it here

The code for object avoidance using LIDAR-Lite is already written (thanks to Robert Lefebvre), and this would just add a sweeping component. Here's a video of it working in static mode, on a 2-axis stabilized gimbal:

Some observations:

  • It works! I can spot telephone poles with no problem
  • That said, the effective range of the LIDAR-Lite unit in this application is just 10m. I'm not using a low-pass filter on the cable, which is normally recommended, and I'm just taking one data point at each position, so I think that can be improved with a smarter sampling strategy.
  • In practice, this would be better implemented by moving a mirror, not the entire LIDAR unit, to avoid shaking and other off-axis movement that can get in the way of sampling
  • Laser range finders are SO MUCH BETTER than sonar. 

Views: 14364


Admin
Comment by Thomas J Coyle III on January 16, 2015 at 3:04pm

Hi Chris

Have you seen this use of LIDAR-Lite on the ArduRover User Group Discussion Forum: Giving sight to AVs 

Regards,

TCIII AVD

Comment by Julien Dubois on January 16, 2015 at 3:10pm

Very good Chris!

I'm using it more or less the same way to try and detect objects (and avoid them if possible :))

Well, you servo pitch angles are very low (1°) so you don't have to wait for the target position to be reached before polling the lidar.

In case of bigger angles, you could just wait for the time the servo need to move (eg: abs(new_angle - previous_angle)/servo_turn_rate)

Regards

Julien


3D Robotics
Comment by Chris Anderson on January 16, 2015 at 3:21pm

Tom, I hadn't seen that -- very impressive! Much better than mine ;-)


Developer
Comment by Randy on January 16, 2015 at 5:45pm

Chris,

That's a pretty nice piece of work there!

Comment by Waladi on January 16, 2015 at 7:46pm
Great!!
Will it allow us to use 5 unit of lidar lite for 4 axis and alt object avoidance?
Comment by Gary McCray on January 16, 2015 at 10:01pm

Great Post Chris,

Interesting thought about mirrors.

I put together a galvo driven first surface mirror pair (and S100 8080 computer) for some of the earliest Laser Light shows.

Galvos work really well for that, but they suck a lot of power.

Program had to be in Basic, because that's all the light show people understood well enough to work with it.

But it was still fast enough for writing and limited graphics.

I think the idea of using the brushless gimbal motor instead of servos is a really good one, because the mechanical gear jitter in RC servos is hard to avoid.

Don't like the slip ring though, too problematic so I think you back and forth sweep is a superior solution, you don't generally need to know what is behind you anyway.

Although, eventually omni-vision and omni-motion may change that.

I am really happy that the inexpensive Lidar Lite is becoming available now, already getting put into it's most useful "scanned" application, much better than normal $5000.00 Laser Scanner for us.

Best regards,

Gary

Comment by Johnatan on January 17, 2015 at 12:19am

Thanks for the post Chris.

BTW could anyone please tell me with Lidar-Lite what is benefit of using sonar?

Comment by Julien Dubois on January 17, 2015 at 12:25am

sonar has wider beam so better for surface tracking at low altitude with no additionnal software filter.

Otherwise, lidar is much less disturbed and get a much bigger range. That's definitelly a great product.

Comment by Laser Developer on January 17, 2015 at 12:44am

Spinning mirrors for LRF applications are very tricky to get working properly. Here are a few of the difficulties:

  1. Optical quality of the mirror: The laser beam needs to remain well collimated and aligned with the return beam in order to get long range measurements. If the mirror is not front silvered and optically flat then the beam spreads randomly and the useable range becomes very short. This situation is made worse if a back silvered mirror is used (an ordinary mirror) because there is a secondary reflection off the un-silvered, front face. This splits the beam into two components, each spreading in different directions.
  2. Scattering off the mirror: A good quality, front silvered mirror will give 90% reflectivity. The other 10% is mostly scattered in random directions creating a false return signal. Dust particles that collect on the surface of the mirror also produce backscatter and this is particularly problematic if the mirror is exposed during take-off and landing in dusty areas. Even fingerprints on a mirror can produce false readings and provide a sticky surface for dust to adhere.
  3. Mechanical structure: The mechanical structure required to hold a spinning mirror and its drive mechanism in a stable position in front of a laser beam is quite large and heavy. An optically flat mirror weighs about 2.4 oz (68 gms) and the whole mechanism gets to be quite long: LRF (long axis) -> gap -> mirror (at 45 degrees) -> mirror holder -> shaft -> motor etc, and also quite wide because the supporting structure for the motor needs to go around the outside of the mirror.
  4. Measuring long distances: Long range measurements, such as those required for collision avoidance when traveling at speed, require the use of higher power lasers, more sensitive detector circuits or better quality optics. The problems mentioned above become significantly worse when any of these methods are applied.

Conventional LRF scanners deal with these technical difficulties by using high quality mirrors that are enclosed behind optically clear glass. Dynamic thresholds reduce the effects of backscatter and cast aluminum baseplates keep everything in place. However, the modern trend is to spin the laser and its optics and we have found this to be a cheaper, easier to implement and very reliable solution. Slip-rings are compact and run for 1000's of hours before they need replacing. Alternatively, careful placement of good quality wires can result in an equally reliable reciprocating system.


MR60
Comment by Hugues on January 17, 2015 at 3:24am

Woaw, impressed. GG chris.

Comment

You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service