One of the biggest problems I have had when developing my micromouse robots is creating sensors which work over the range of distances required and to a reasonable resolution. I have seen a couple of mice using red lasers so thought I would have a go.
I got a pile of 20mm long, about 5mm diameter red lasers from a random seller on ebay and plugged it into a microcontroller development board with a few additions; a potentiometer to adjust intensity and a red colour sensor (TSL250R). The colour sensor is a pretty basic affair – very similar to the IR photodiodes, just sensitive to visible red light. You can get this device in 3 different sensitivities, I got all three but only tried the highest sensitivity one.
Now the main motivation to use a laser is that the beam does not expand much over distance, so instead of having some messy interplay between the cone a normal LED creates and the reflected intensity of light, there is just reflected intensity. The dot it creates does change size over distance, so its about 2mm diameter at 10mm from the lens and maybe 4mm at 100mm. But it works! I got a few volts difference on the receiver output over a 160mm range.
BUT there is a problem, not a huge one mind; Under normal circumstances when an LED sensor is looking perpendicuar at a wall the receiver is nearly always covered in the reflected light. Problem with the small focused dot is that is does not form a cone which covers the sensor. Due to the configuration shown in the photo above you can see the reflected dot on the receiver, this saturates the sensor and makes the readings nearly useless. This is overcome by mounting the receiver vertical to the laser, but a wobbly wall or ultra reflective walls could still potentially cause a lot of problems.
The other problem is the lasers’ size – they are huge and fairly heavy. I am sure there are smaller ones somewhere, I’ve just not found them anywhere. But watch this space!