AN3579: Proximity Sensing questions

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

AN3579: Proximity Sensing questions

1,257 Views
aaron800
Contributor I
I was reading the App note, AN3579, which is on freescale's website talking about proximity sensing using the micro's i/o parts to determine when a "touch" sensor has been touched.  At the end of this document it says that this approach should not be used for 'real' applications because the algorithm is not very good.  Does anyone have any ideas on how to make this code or approach usable for the 'real' world? 

I was looking at Analog's capacitance->digital conversion ics for this functionality and they are very complicated it seems to me, plus you have to have a i2c or spi bus to them as well.  Reading their datasheets though, it seems to me their approach is not simply to look for a rise above a certain threshold but to continually monitor all the pins and get a floor level for the surrounding medium to compensate for changes in humidity, etc, and thus the threshold is continually changing. 

Anyone have any ideas?

Not sure if I posted this question in the right forum as it applies to both s08's and coldfires.

Thanks
Labels (1)
0 Kudos
2 Replies

320 Views
walt
Contributor II
There is a similar approach in this tech note (originally done with 6805)
that has been used in several commercial keypads with pc board keypads and plastic or polycarbonate overlay.
 
The secret is the insulating separating layer. We have found this to be a very effective form of touch switch
 
 
0 Kudos

320 Views
RickN
Contributor I
Hi Aaron800,
 
   You can try adding some extra filtering on the signal read from each electrode, in addition you can add some debounce until you have determined that a touch event has been detected, and it isn't just system noise.  
 
The calibration of the background signal on each electrode, when not being touched, is also something that you might spend some time improving.  This calibration value can be used in conjunction with a threshold to determine that a touch event has occurred.  The background signal is dynamic and will change over time, so you need to figure out how often to update this value.
 
It may take some time and effort to characterize your touch sensor and get the performance necessary for your application.  Basically you need to have a decent response time and make sure you don't get false detections for an electrode.  
 
    Thanks,
 
    Rick
0 Kudos