Ideas for detecting reflected laser light

Just for fun and coding experience, I have conceptualized an Arduino project where a laser line sweeps across a surface (wall) and the range to that surface is determined by triangulation.

The problem I have run into is detecting the light returning to the source. My initial bench tests using a 5mw red laser diode module and a standard A9950 LDR only nets in a detection range of about 1 meter and that's in a pretty dark room. (I'm using a small lens to focus the image of the room onto the sensor area.) Before scrapping my idea, I wanted to see if there might be some hardware or software alternatives.

If I keep the laser, it appears there are a couple of possible solutions:

1) A more sensitive sensor What are the hardware options? I've looked over various photodiodes and phototransisitors, but it's not really clear to me if they would have any markedly better sensitivity/selectivity.

2) Modulating the laser in a way that it can easily be picked up. (maybe in addition to item #1 ) Would the laser module respond to PWM input, and if so, what method would be used to detect the reflected signal?

Plan B may be just to go with a very bright focusing flashlight, but the laser would be much cooler.

  1. I think PIN and avalanche photodiodes can provide better sensitivity. Some of these devices can get expensive but I found some Optek devices at Mouser that were inexpensive and respond in the red wavelengths.

  2. Modulation will definitely improve performance in the presence of ambient light. If you can't modulate your laser electronically you could spin a chopper wheel in the beam.

Yes, LDRs are not very sensitive, and they are slow to respond. The lower the light level, the slower they are to respond.

Using a narrow band red filter in front of the detector will help a lot. The narrower the band width, the better (as long as the band is centered correctly on the laser emission color). They aren't cheap, though. I get mine from Edmund Scientific. Whatever detector you use, make sure it is responsive to red light. Many aren't very efficient at long wavelengths.

LDRs are mainly sensitive in the yellow-green band.

Thanks all for the suggestions.

It looks like this might be something equivalent in the thru-hole genre.

My laser operates in the 650nm range. (I looked back at the specs again, it's only 2mw) In general, would a photodiode be more sensitive than a phototransistor?

Could someone elaborate a bit on the (any) method for recognizing the modulated input?

Sure appreciate the help.


The standard method of detecting an amplitude modulated source is to put a narrow band frequency filter somewhere in the chain that amplifies the signal from the detector. The source modulation frequency and the detector modulation frequency obviously have to match.

IR remotes work that way. The IR beam is modulated (on and off) at typically 38 kHz, and the detection circuitry is sensitive only to 38 kHz signals (plus or minus a very small deviation).

A photodiode responds a lot more quickly than a phototransistor, and is easier to wire up so it doesn't saturate.

The BPW34 PIN photodiode is pretty good. At 600 nm, its relative sensitivity is about 60% of the maximum (which peaks at 900 nm in the near infrared). You will need a photodiode amplifier circuit to use it effectively but this also gives you the opportunity to introduce a frequency filter. The data sheet is here: and the diode costs about US$ 1.00 at Mouser.

On the other hand, a standard 38 kHz IR detector might also work with your laser, if you can modulate the laser at 38 kHz.

If you are using this to range, wouldn't it be better to use something like a webcam as a sensor? Put on a filter.

BTW, do I need to go into the danger of Lasers? 5mW is not eye safe. Laser pointers are only "safe" because the only expected exposure is from occasional accidental reflections.

I played with a laser sensor that scanned around with a laser, and detected when the laser hit a retro-reflective target (like a bicycle reflector). The idea was that if the location of the targets was known, and the angle my robot was measuring between the targets, it was possible to calculate the position (let me know if you want more information about this approach). The main thins is that the reflective targets made sensing a hit MUCH easier than trying to detect the laser hitting a regular surface.

You may not be aware of an existing sensor made by Sharp. They only cost around $8. Here is a link to a discussion here, And another link from another web site.

What the Sharp sensor already does, is it projects a light, and then to detect the angle to the beam. It does this by using a lens to focus the image on a linear sensor array. I.e. a 2-D only camera. It modulates the IR beam, so that it can easily detect only its own beam.

-Joe Dunfee