Digital I/O

cancel
Showing results for 
Search instead for 
Did you mean: 

Identifying human touch of POT

Hi there,

 

I am working on a system where there are a few potentiometers. These are capacitive pots, which mean that they can identify if they are touched. Im sure you guys know how a capacitive touch system works.

 

the TOUCH data written to the pots are from a 3-8 de-multiplexer which is set to active low setup. The de-mux is a 74HC238D.

 

When I view the data on a scope, I can see the effect of capacitiveness my body is exerting on a pot. this means that I can see the state of the output going LOW for a small amount of time (very small) and then coming back to the HIGH state. It is this LOW state I want to measure using LABVIEW.

 

how would I go about to do this? Any suggestions?

 

thanks

LABMAT

 

0 Kudos
Message 1 of 6
(4,174 Views)

Guys any feedback?

 

I got the program to display which pot is touched. But this requires me to be grounded. That is If I hold my other hand to a GROUND and touch the pot with the other hand, then on;y the signal goes to 0 and is detected by LABVIEW. Can you please help me out here?

 

Thanks

0 Kudos
Message 2 of 6
(4,138 Views)

Hi LABMAT,

 

I'm Oli, an Applications Engineer at NIUK.  Having a read through your post, it looks like you are trying to detect when the signals from your capacitive pot goes low is that correct?

 

Firstly, what data are you acquiring?  Are you using your pots in some sort of voltage divider or to trigger a transistor or something similar?

What hardware are you using to acquire the signals?

And lastly, would you be able to post your code so that I can familiarise myself with what you've done so far?

 

Best Regards,

Oli
LabVIEW Student Ambassador
National Instruments UK
0 Kudos
Message 3 of 6
(4,122 Views)

Hi Oli,

 

Thank you verymuch for replying to my post. Ive almost given up on this thing. But I hope everything will work out. OK here goes.

 

1), Yes you are correct. There are a few pots (16) that are all capacitive. they are multiplexed and the output is a single line which is set to the state of the inputs based on what address is used. the output of the MUX is a TRISTATE output.

Normally, when the person is touching the pot, due to the capacitance, of the body, the voltage (currently at LOGIC HIGH) is pulled down. I scoped this and I can see that the dips are not that evident. This is what I am trying to detect and then diplay it on the screen until the thing is released.

 

2). the POTs that Im using consist of 2 wipers instead of one. the pot is also a conductive surface. These surfaces are directly interfaced to a mux which has a TRISTATE OUTPUT.

 

3.) The hardware Im using is a USB 6009 DAQ.

 

4. Here is my code FYI.

 

thanks.

 

Download All
0 Kudos
Message 4 of 6
(4,116 Views)

Hi Labmat,

 

Thanks for the reply.  Sorry for the delay, I've been out of the office.  I'm still struggling to grasp exactly what the current issue is at the moment.  Can you explain the current problem?  Is it just that you have to ground yourself to make the touch register properly?

 

Can you also confirm: Do the cap pots stay a logic low for the duration that they are touched?

 

You have DAQ write tasks inside your loop too.  What do these do?  I looks like they count up in binary as you move through each state.  Do these control the address inputs of the de-multiplexer?

 

I'm not particulularly familiar with capacitive pots, do you have a link to a datasheet that I could look at?

 

How is the de-mux wired up?  I've been looking at a datasheet for the de-mux that you mentioned in your first post.  The DAQ write tasks that you have in your code look like the map to the A0,A1,A2 address inputs.  But I can't work out what A3, A4 are in your code.  Unless the writes aren't actually for the de-mux.  Can you clarify exactly what each of the tasks (both the writes and reads) do and how everything is wired up between the de-mux and the 6009.

 

Best Regards,

Oli
LabVIEW Student Ambassador
National Instruments UK
0 Kudos
Message 5 of 6
(4,094 Views)

Hi Oli,

 

thnks very much for your reply. Ill clear your doubts.

 

Currently as you know, I am trying to sense if a pot is touched by a user. currently In the proper system, when a user touches a pot with his finger, the system flags up as that pot being touched. I am trying to replicate this system as a test. In the actual system, the user does not have to hold onto a GROUND to test the pot. but for me, I have to hold a GROUND to test the pots. so you are right, I have to GROUND myself to make the touch register properly.

 

Yes the pots stay on a LOGIC 0 for the duration they are touched. But, this is only till the next pot is selected. when I am GROUNDING myself, All I am doing is making the width of the LOGIC 0 signal longer. hence I can sense it. Or else it doesnot sense the signal being pulled to LOGIC 0 because the signal change may be too fast for the DAQ to register (Im not so sure about this)

 

Yes, you are right. the DAQ Write tasks write the ADDRESS of the pots directly to the DEMUX.  The DEMUX is a 3 to 8 DEMUX.  

the Capacitive layer of the pots are connected directly to the output of the DEMUX. Hence when each address is selected, the coresponding oputput goes HIGH and this is applied to the capacitive layer. This cycles through each POT layer by the case structure. when a finger is touched, the signal is pulled LOW.

The capacitive layer is also connected to the inputs of another MUX. the address lines of this MUX is connected directly to those of the DEMUX. Hence both of then select the same address and gives the outputof the selected line. This output is a TRISTATE output.

 

the circuit is wired up as follows:

 

The 74HC238D (3-8 MUX) has 3 ADDRESS inputs and 8 outputs.

 

Each of the 8 outputs are connected directly to the capacitive Layer of Pots

 

These outputs are also going into a 8 - 3 MUX. 74HC251D

 

The SELECTOR inputs are connected to the 3 ADDRESS inputs of the 74HC258

 

The output of the  8 - 3 MUX is one Line and is a TRISTATE output.

 

In answer to your question about the A3 and A4 bits, these are used to select which bank of POTS to be processed as there are 3 banks of pots and each bank has 4-5 pots.

 

Unfortunately I dont have the datasheet for this.

 

hope this helps.

 

thanks

LABMAT

 

 

0 Kudos
Message 6 of 6
(4,087 Views)