Water Surface Touch Pad: Can My Project Work?

Click For Summary

Discussion Overview

The discussion revolves around the feasibility of using a water surface as a touchpad through a system of electrodes and signal processing. Participants explore the construction, functionality, and potential challenges of this project, including the effects of water conductivity and interference on the accuracy of touch detection.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested
  • Experimental/applied

Main Points Raised

  • One participant proposes a design involving a cubical bowl of water with electrodes to detect touch coordinates based on voltage drop.
  • Another participant questions the importance of the water's properties for the system to function effectively.
  • Concerns are raised about interference and electrostatic discharge affecting the ADC readings in the proposed system.
  • Participants discuss the possibility of using salt to increase water conductivity, while also noting that this could lead to electrolysis and disrupt water composition.
  • There is a suggestion to use an AC probe signal to mitigate electrolysis issues, with a focus on high-frequency AC signals behaving like resistors.
  • Questions arise about the necessity of sensing voltage versus injecting current into the water, and the placement of electrodes at the edges of the setup.
  • One participant mentions the dielectric constant of water and its implications for capacitive reactance in the system.
  • A later post shares a successful implementation of the water touchpad sensor, including a link to a demonstration video.

Areas of Agreement / Disagreement

Participants express a mix of skepticism and support regarding the project's feasibility. While some agree that the concept could work under certain conditions, others raise significant concerns about practical challenges and limitations. No consensus is reached on the best approach or the effectiveness of the proposed methods.

Contextual Notes

Participants highlight various limitations, such as the effects of electrolysis on water composition, the need for shallow water, and the potential for interference in the ADC readings. The discussion also touches on the dielectric properties of water and how they might affect the system's performance.

hackhard
Messages
183
Reaction score
15
an idea for my new project
construction - a cubical bowl of tap water , 2 sheet electrodes for 1 pair (y-axis pair)of opposite face(square wave 10Hz 10vpp), 2 sheet electrodes for the other pair (x-axis pair)(similar square wave lags by half cycle )
left hand touches adc pin. right hand touches water surface.10v drops linearly with normal distance from pulse electrode
process adc input for realtime x-y coordinates of touch (maybe z also if added 3rd pair electrodes at surface and floor)
so water surface can be used as touch pad .
will this work?
 
Engineering news on Phys.org
hackhard said:
an idea for my new project
construction - a cubical bowl of tap water , 2 sheet electrodes for 1 pair (y-axis pair)of opposite face(square wave 10Hz 10vpp), 2 sheet electrodes for the other pair (x-axis pair)(similar square wave lags by half cycle )
left hand touches adc pin. right hand touches water surface.10v drops linearly with normal distance from pulse electrode
process adc input for realtime x-y coordinates of touch (maybe z also if added 3rd pair electrodes at surface and floor)
so water surface can be used as touch pad .
will this work?
The 2-D version could work. What is important about the water/liquid to make this work?
 
With your system the body will pick up lots of interference and electrostatic discharge that will get into the ADC.

There are similar 2D positioning systems that inject signal current or noise into a point on a resistive sheet. The edges of the sheet are tied to virtual Earth with op-amps that convert each edge current to a voltage. Those four voltages are a function of the sheet x–y position where the current is being injected.
 
Baluncore said:
With your system the body will pick up lots of interference and electrostatic discharge that will get into the ADC.

There are similar 2D positioning systems that inject signal current or noise into a point on a resistive sheet. The edges of the sheet are tied to virtual Earth with op-amps that convert each edge current to a voltage. Those four voltages are a function of the sheet x–y position where the current is being injected.
will this work with water in place of resistive sheet
 
hackhard said:
will this work with water in place of resistive sheet
Yes, but the water should be shallow.
You may need to add some salt to the water to make it more conductive.
 
adding salt to water will cause electrolysis , so it disrupts uniform composition of water.
voltage drop will not vary linearly with normal distance from pulse electrode
perhaps something else can increase the conductivity of the water
 
hackhard said:
adding salt to water will cause electrolysis
Then use an AC probe signal, or maybe a DC voltage below the disassociation voltage of NaCl in H2O.
 
Baluncore said:
Then use an AC probe signal
yeah, at high frequency ac 1kHz salt water must behave more or less like resistor due to negligible capacitive reactance.
but how can i sense ac voltage and convert it to digital?
 
How you do it will depend on why you need to do it.
What are you really trying to do ?
 
  • #10
Baluncore said:
How you do it will depend on why you need to do it.
What are you really trying to do ?
what did you mean by
Baluncore said:
use an AC probe signal
 
  • #11
hackhard said:
yeah, at high frequency ac 1kHz salt water must behave more or less like resistor due to negligible capacitive reactance.
Can you explain why you think capacitive reactance would be negligible.
What is the dielectric constant of water ?

hackhard said:
what did you mean by; use an AC probe signal
Do you need to sense the voltage at a point on the sheet, or do you need to inject a current into the sheet at a point?

How will you place electrodes at the edges of the sheet ?
What will you do where they meet at the corners ?

Baluncore said:
How you do it will depend on why you need to do it.
What are you really trying to do ?
Unless you can write a specification you are only dreaming.
 
  • #12
Baluncore said:
What is the dielectric constant of water ?
80.4
 
  • #13
Baluncore said:
Can you explain why you think capacitive reactance would be negligible.
alright , it wont
 
  • #14
Baluncore said:
Do you need to sense the voltage at a point on the sheet, or do you need to inject a current into the sheet at a point?

How will you place electrodes at the edges of the sheet ?
What will you do where they meet at the corners ?
I need to sense the voltage at a point on the sheet.
copper wires attached to sheet at its edge
the sheets are separated at the corners
 
  • #15
hackhard said:
80.4
That would suggest that capacitive reactance would be 80.4 times greater than with air between the electrodes.

If you freeze the water it will be much less, IIRC about 3.5, but will the ice be conductive?
See; Dielectric properties of brine-wetted snow on first-year sea ice.
https://cartel.recherche.usherbrooke.ca/Documents/Langlois_Alex/Geldsetzer_etal_2009.pdf

What conductive liquids are there that have low dielectric constant and are safe?
 
  • #16
berkeman said:
The 2-D version could work. What is important about the water/liquid to make this work?

Baluncore said:
That would suggest that capacitive reactance would be 80.4 times greater than with air between the electrodes.

If you freeze the water it will be much less, IIRC about 3.5, but will the ice be conductive?
See; Dielectric properties of brine-wetted snow on first-year sea ice.
https://cartel.recherche.usherbrooke.ca/Documents/Langlois_Alex/Geldsetzer_etal_2009.pdf

What conductive liquids are there that have low dielectric constant and are safe?

I did it , I built a water touchpad sensor to track the position of my right index fingertip on a water surface! . Here's the Youtube video link -
 
  • Like
Likes   Reactions: Tom.G
  • #17
hackhard said:
I did it , I built a water touchpad sensor to track the position of my right index fingertip on a water surface!
CONGRATULATIONS!

While others were telling you why and what you couldn't do, you did it! A needed characteristic of a scientist.
KEEP AT IT!
 
  • #18
Tom.G said:
CONGRATULATIONS!

While others were telling you why and what you couldn't do, you did it! A needed characteristic of a scientist.
KEEP AT IT!
Here's the Arduino c++ code for the project DIY Water Touchpad -
Code:
/* Project Title- DIY WATER TOUCHPAD
   Author- Sumit Aich
   Project Summary- The basic idea behind this sensor is the use of a parallelopiped water container
   as a water potentiometer device. It is similar to a 3-pin slide pot used in electronic circuits,
   with the 2 aluminium electrodes equivalent to the 2 end pins of a slide pot,
   and the right index fingertip is equivalent to the middle pin (voltage output) of a slide potentiometer.
   */

#define ELECTRODE_0  2  //left water electrode
#define ELECTRODE_1  3  //right water electrode
#define SENSOR_ADC   0  //right index fingertip (Vout of water potentiometer)
#define OFFSET_0     1  //left offset pin
#define OFFSET_1     2  //right offset pin
#define BAUDRATE 2000000

long offset_0,  //voltage at left offset pin
     offset_1,  //voltage at right offset pin
     read_0,    //fingertip voltage
     m, m1; //horizontal displacement of fingertip from OFFSET_0 pin (range from 0 to 50000)

void setup() {
  pinMode(ELECTRODE_0, OUTPUT);
  pinMode(ELECTRODE_1, OUTPUT);

  //set both water electrodes to +5V to pause electrolysis for a while
  digitalWrite(ELECTRODE_0, 1);
  digitalWrite(ELECTRODE_1, 1);
  Serial.begin(BAUDRATE);
  analogReference(DEFAULT);

}

void loop() {

  //Phase 1
  //swap polarity of voltage drop across water
  digitalWrite(ELECTRODE_0, 0);
  offset_0 = analogRead(OFFSET_0);
  offset_1 = analogRead(OFFSET_1);
  read_0 = analogRead(SENSOR_ADC);

  //check whether fingertip is inside or outside water
  digitalWrite(ELECTRODE_0, 1);
  if (analogRead(SENSOR_ADC) != 1023)
  {
    m = 51000;
  }
  else {
    m =  constrain((50000 * (read_0 - offset_0) / (offset_1 - offset_0)), 0, 50000);
  }
  Serial.print('$');//format requirement for SerialPortPlotter.exe
  Serial.print(m);//print horizontal displacement of fingertip from OFFSET_0 pin (range from 0 to 50000)
  Serial.println('\;');//format requirement for SerialPortPlotter.exe

  /*this delay is just a frequency restriction imposed by SerialPortPlotter.exe
    otherwise, it is not required if you are NOT using SerialPortPlotter.exe.
  */
  delay(10);

  //Phase 2
  //swap polarity of voltage drop across water
  digitalWrite(ELECTRODE_1, 0);
  offset_0 = analogRead(OFFSET_0);
  offset_1 = analogRead(OFFSET_1);
  read_0 = analogRead(SENSOR_ADC);

  //check whether fingertip is inside or outside water
  digitalWrite(ELECTRODE_1, 1);
  if (analogRead(SENSOR_ADC) != 1023)
  {
    m = 51000;
  }
  else {
    m1 = constrain((50000 * (offset_0 - read_0) / (offset_0 - offset_1)), 0, 50000);
  }
  Serial.print('$');//format requirement for SerialPortPlotter.exe
  Serial.print(m);//print horizontal displacement of fingertip from OFFSET_0 pin (range from 0 to 50000)
  Serial.println('\;');//format requirement for SerialPortPlotter.exe

  /*this delay is just a frequency restriction imposed by SerialPortPlotter.exe
    otherwise, it is not required if you are NOT using SerialPortPlotter.exe.
  */
  delay(10);

}
 
  • #19
Here's the link to the Circuit schematic of the project DIY Water Touchpad - https://drive.google.com/open?id=1Rn8gPo9MSNmt-dv_abjr3LNTd7VQ9Egj
 

Similar threads

  • · Replies 1 ·
Replies
1
Views
5K
  • · Replies 10 ·
Replies
10
Views
3K
  • · Replies 4 ·
Replies
4
Views
4K