Pages: [1]   Go Down
Author Topic: Connecting a Phidgets 1129 touch sensor to the Arduino  (Read 1262 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I've connected a Phidget 1129 capacitive touch sensor to Analog In 0 and am using Tom Igoe's AnalogIn SerialOut code example in Arduino (I've attached it below though it comes with the Arduino software).

I've put a 10k resistor between the 5V and the sensor . Ground in Gnd..... Analog Input to Analog 0....

My problem is that though the sensor definately I can't seem to get much variation in the output values, it's either a 0 or a 255 for the most part. The sensor seems more digital than analogue.

I know that Phidgets sells their own brand of sensor to USB interfaces, but I'd like to use my Arduino. In the Phidget 1129 touch sensor product manual, they give these tips for "Other Interfacing Alternatives" :

If you want maximum accuracy, you can use the RawSensorValue property from the PhidgetInterfaceKit. To adjust a formula, substitute (SensorValue) with (RawSensorValue / 4.095)

If the sensor is being interfaced to your own Analog to Digital Converter and not a Phidget device, our formulas can be modified by replacing (SensorValue) with (Vin * 200). It is important to consider the voltage reference and input voltage range of your ADC for full accuracy and range.



Hmmm... I'm not sure where to substitute these values smiley-sad



The AnalogueIn SerialOut sketch:


/*
  Analog input, analog output, serial output
 
 Reads an analog input pin, maps the result to a range from 0 to 255
 and uses the result to set the pulsewidth modulation (PWM) of an output pin.
 Also prints the results to the serial monitor.
 
 The circuit:
 * potentiometer connected to analog pin 0.
   Center pin of the potentiometer goes to the analog pin.
   side pins of the potentiometer go to +5V and ground
 * LED connected from digital pin 9 to ground
 
 created 29 Dec. 2008
 by Tom Igoe
 
 */

// These constants won't change.  They're used to give names
// to the pins used:
const int analogInPin = 0;  // Analog input pin that the potentiometer is attached to
const int analogOutPin = 9; // Analog output pin that the LED is attached to

int sensorValue = 0;        // value read from the pot
int outputValue = 0;        // value output to the PWM (analog out)

void setup() {
  // initialize serial communications at 9600 bps:
  Serial.begin(9600);
}

void loop() {
  // read the analog in value:
  sensorValue = analogRead(analogInPin);            
  // map it to the range of the analog out:
  outputValue = map(sensorValue, 0, 1023, 0, 255);  
  // change the analog out value:
  analogWrite(analogOutPin, outputValue);          

  // print the results to the serial monitor:
  Serial.print("sensor = " );                      
  Serial.print(sensorValue);      
  Serial.print("\t output = ");      
  Serial.println(outputValue);  

  // wait 10 milliseconds before the next loop
  // for the analog-to-digital converter to settle
  // after the last reading:
  delay(10);                    
}


 

« Last Edit: April 18, 2011, 09:27:05 pm by lickey » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 1
Phidgets connect computers and technology to the real world. We make the plug & play sensors and controllers that thousands of customers have used in hundreds of applications.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi Lickey, the touch sensor is really sensitive so it does behave much like a digital sensor. The big benefit comes in it's self-calibration so to speak. The touch sensor as it comes can be connected to 1/2" thick piece of plastic, glass or paper and detect touch through that surface (after it re-calibrates, which takes just 30 seconds). To give you an idea, this project used those touch sensors on each of the metal poles.

What are you hoping to do with it? There might be a better sensor out there for your application.

- Kat
« Last Edit: June 05, 2014, 12:18:26 pm by phidgets » Logged

Pages: [1]   Go Up
Jump to: