scraff
Posts: 15
Joined: Tue Jun 30, 2015 10:21 am

Sensing a Laser Beam Hitting Object (Laser Range Finder)

Fri Jul 17, 2015 2:09 pm

Hi All,

I am currently interested in the Lidar Lite (laser range finder). I may buy one, but am interested if I could make something similar with a laser beam and a sensor. Obviously I can sense a laser with a laser sensor (ie like those used in a laser break beam). But for this I would need to sense a laser beam hitting a far object. Maybe this could be done with a camera and filtering out with OpenCV (?) but this would take CPU power. Surely there is a "simpler" way?

What I want this to achieve (at least to start off with) is a simple program and sensor. Laser switches on at 0ms, then the sensor detects the distant beam at x milliseconds, and works out the distance.
How would I detect that laser dot?

Thanks

User avatar
experix
Posts: 204
Joined: Mon Nov 10, 2014 7:39 pm
Location: Coquille OR
Contact: Website

Re: Sensing a Laser Beam Hitting Object (Laser Range Finder)

Fri Jul 17, 2015 3:21 pm

You might use a camera with a filter to admit only the laser wavelength, and scan the region of interest quickly during the camera's exposure time. But this has a lot of synchronization issues and probably will not give the best sensitivity. Probably a better approach is to scan with a modulated laser and use a photodiode with a filter and a lens that collects light from the region of interest. Then your receiver detects the modulation, and the strength and time shift of that gives you information on the reflectance and distance. An avalanche photodiode will give greater sensitivity, maybe allow you to operate at an eye-safe power level, but it's more expensive.

rotwang
Posts: 243
Joined: Sat Dec 07, 2013 1:12 pm

Re: Sensing a Laser Beam Hitting Object (Laser Range Finder)

Mon Jul 20, 2015 1:23 pm

Given that the speed of light is just under 300 million meters per second, you need to be thinking in terms of nanoseconds, not milliseconds, at which level your timings are going to be swamped by the response time of your detector. What range do you expect to cover, and what resolution do you want to achieve? Also do you wish this system to be eye-safe and legal?
In any case, you have no chance at all of measuring time-of-flight using any video system. You may however be able to use triangulation methods to detect the position of the laser spot, Try googling "laser range finding", there's a lot of stuff out there.
scraff wrote:Hi All,

I am currently interested in the Lidar Lite (laser range finder). I may buy one, but am interested if I could make something similar with a laser beam and a sensor. Obviously I can sense a laser with a laser sensor (ie like those used in a laser break beam). But for this I would need to sense a laser beam hitting a far object. Maybe this could be done with a camera and filtering out with OpenCV (?) but this would take CPU power. Surely there is a "simpler" way?

What I want this to achieve (at least to start off with) is a simple program and sensor. Laser switches on at 0ms, then the sensor detects the distant beam at x milliseconds, and works out the distance.
How would I detect that laser dot?

Thanks

PiGraham
Posts: 3932
Joined: Fri Jun 07, 2013 12:37 pm
Location: Waterlooville

Re: Sensing a Laser Beam Hitting Object (Laser Range Finder)

Mon Jul 20, 2015 1:36 pm

LIDAR is not an imaging application. You don't use a camera, you use a very fast photosensor.

Have you seen this:
https://www.sparkfun.com/products/13167

An alternative is triangulation. Project a laser spot or line, or other pattern, and use a camera to detect the pattern. From displacement of the pattern in the image you can calculate distance.

https://en.wikipedia.org/wiki/3D_scanner#Triangulation
https://www.youtube.com/watch?v=fVsiPNkZ594

scraff
Posts: 15
Joined: Tue Jun 30, 2015 10:21 am

Re: Sensing a Laser Beam Hitting Object (Laser Range Finder)

Wed Jul 22, 2015 9:35 am

I was thinking medium range (5-40 meters) which is why the infrared and ultrasonic wont cut it.
The timing would probably be a problem... As not sure the Pi would be up to the nanosecond time gaps! So I am guessing the only way to do this would be to build a special bit of hardware?
rotwang wrote:Given that the speed of light is just under 300 million meters per second, you need to be thinking in terms of nanoseconds, not milliseconds, at which level your timings are going to be swamped by the response time of your detector. What range do you expect to cover, and what resolution do you want to achieve? Also do you wish this system to be eye-safe and legal?
In any case, you have no chance at all of measuring time-of-flight using any video system. You may however be able to use triangulation methods to detect the position of the laser spot, Try googling "laser range finding", there's a lot of stuff out there.

Triangulation is something ive looked at with a laser line (like that of a barcode scanner). The benefit of this is I could detect distances of larger areas at once. The draw back is it probably wont work well over longer distances, especially in bright light/outside.
Although a robot with a scanner that looks like its out of Prometheus or the Matrix would be cool!
PiGraham wrote: An alternative is triangulation. Project a laser spot or line, or other pattern, and use a camera to detect the pattern. From displacement of the pattern in the image you can calculate distance.

Return to “Automation, sensing and robotics”