Hi,
I'm designing a multi-touch panel using 39 pairs of 3mm IR led emitters + photo-transistors arranged as per this drawing:
It works perfectly in dust/dark situations but as expected - any ambient light turns it into a random generator
I know the obvious solution would be to replace my cheap IR photo-transistors with proper IR modules and modulate the Leds @40khz...
But with 39 sensors, it isn't going to be cheap. I'm currently taking 3 readings at once using 3 4067 multiplexers so I'm wondering if I couldn't use an IR filter/demodulator circuit and simply multiplex the leds into that. it would save a ton of cash and soldering.
I was considering taking a sharp sensor's eyes out and multiplexing my leds into it's sockets but maybe there is a more elegant way to achieve this.
Is there maybe an IC that can do this? I know most IR modules output HIGH/LOW logic but an analog reading would be heavenly for eventual threshold calibration etc...
Try taking readings with the LED's off and with the LED's on. Perhaps the difference between the two readings will be enough to tell you if a finger is present.
Also Atmel and a few other companies sell IC's which do the job. I believe the name of the IC you are looking for is an IR Preamplifier or sometimes an IR Demodulator. Here is a link to their product page:
They have more than 1 to choose from.
As far as the delay ... I think you are looking at a maximum of 1 kHz rate per Photodiode... But... you can always use different frequencies. I think you could get away with spacing the frequencies apart by 2 kHz (you should look at the chip data sheets). Most of the chips go from 30 something to 56 or 60 kHz. So you should be able to operate some of your transmitters and receivers as sets on different frequencies. With that you should be able to get your update rate up to something acceptable... However... just doing a little bit of math.
Lets assume that you can get 500 Hz update rate per Receiver where you can discriminate between on/off. If you divide that by 40 (1 more than the 39 you quoted) you still end up with 12.5 Hz. Which comes in a lot faster than the 4 Hz you said was a bare minimum. If you use more than one carrier frequency then you can double your update rate for each additional frequency you use. Simply using 38 kHz and 40kHz you can get a nice 25 Hz update rate.