An Everlight or Sharp 40Khz detector, when on frequency and properly modulated, will give you 30 to 40 inches of detection - depending on the object reflectivity. I've gotten hits at over five feet before, but that certainly wasn't very reliable and such a range is pretty useless on my robots. I usually tune the osc off frequency to get the range down to less than a foot. Since I wasn't trying for long range, I would imagine that you could do a few things to get it - like driving multiple LEDs, making sure they are pumping at max current, focusing the beam, etc. Be sure you shield the LEDs with foil. Ground the case of the detector if you are using the Sharp module (already grounded with the Everlight). I've used the GP2D02 and there was just a discussion on it on the SRS list. You need to ground the case of it for a start. The case is plastic, but it is conductive. One problem with it is its narrow beam - good for ranging, but not for general object detection. The other is that it really requires a separate PIC or something to handle the code overhead for triggering and shifting in the range (IMHO). Acroname was publishing PIC code for driving it - look on their website and under the GP2D02 advertisement. Range detection by signal strength with IR is not very reliable unless the target is stable, has known reflectivity and has consistent shape. Which is not the case for any target I'm looking for. The GP2D02 detectors have very good noise filtering, the Everlight and Sharp 40 Khz detectors are OK. I have not seen a homebrew filter that would compete - though I'm sure it could be done with PLL control of some sort. If you want to see a PIC driver for an IR detector using an Everlight module, then I've made one using a 12C508/9 and it is on my site at: http://204.233.101.40/robots/brb.html . It was also in last month's Encoder at www.seattlerobotics.org . Finally, before venturing into long range IR, why not try Sonar? I get very consistent results with the Polaroid sonar pack and it works out to 35 feet and in to about 6-11 inches. You can see one at www.acroname.com . Good luck, Dan -----Original Message----- From: Dwornik, Sebastian To: PICLIST@MITVMA.MIT.EDU Date: Wednesday, August 25, 1999 8:16 AM Subject: Signal filtering through code >My current robotics project requires me to design and build an accurate >and stable IR proximity detection sensor system. It should give feedback >of objects up to 5 feet. My chosen tools are the PIC16F84, the >LTC1298 12-bit ADC, and the VTR24F1 optosensor from EG&G. >The sensor simply contains an IR LED and a photodarlington in a single >package. > >My current solution involves simple noise filtering through code. The >opto proximity method is through the use of intensity or signal >strength, >reflected off an object. > >Algorithm: > Pulse HIGH! ; LED ON. > Read ADC ; Result A = Signal + Noise > > Pulse LOW! ; LED OFF. > Read ADC ; Result B = Noise > > SUB A-B ; Result C = (Signal+Noise) - (Noise) > > C = pure signal strength. > >This has proven to work well for distances up to 8 inches using an 8-bit >ADC. This is the first time I'm trying to extend the range, with a more >sensitive sensor and a 12-bit ADC. > >Is there a better algorithm of filtering which would provide greater >results? A better sensor, or maybe a better method to the entire >project. I have played with Sharps' GP2D02 module as well; and have >gotten rather unsatisfactory results. If the current method cannot be >improved upon, then my next step is to try one of those 40 khz >Sharp IR modules. They won't give me proximity ranging, but >maybe reliable object detection; and atleast that's a start. > > >Sebastian