In two previous articles (here and here) I had tried to come up with a way to use IR light to gauge distances. It wasn’t very successful, but such is the risk of trying something new. So last night, whilst sitting at my laptop, I wondered if there was a way to emulate a $10 device (a Sharp IR Sensor) with more than $100’s worth of NXT sensors. It seems there is. I repurposed a HiTechnic IR Link and IR Seeker (v2) and turned them into a very limited IR distance sensor.
So how does it work? Well, remember I mentioned a few articles back how you could turn an IR Link into a beacon by pulsing it at 1200Hz? Well, instead of using the IR Seeker’s direction register to determine where the beacon is, you could, instead, just query the forward pointing sensor (sensor number 2) for signal strength. Now if you put the IR Link next to the IR Seeker and point them at an object some of the beacon signal from the IR Link is bound to bounce back and be detected by the IR Seeker. Using the contraption on the left, I set out to take readings at various distances. The results surprised me a little.
The first 3 points I expected to look that way, the surface was simply too close. However, the linearity of the next couple of points really boggled me. Did this actually work? They are most likely highly inaccurate as the values bounced around a fair bit, even though the program was taking 10 readings and averaging them out before displaying them. So there you go, a highly inaccurate, completely impractical IR distance sensor! I think the EOPD is probably more suitable for this kind of thing but what would the fun be in that?