Hi:
I'm a relative newcomer to the arduino world and I have an electronics problem!
I'm trying to use the arduino to get a reading from a breath sensor, then send the data to Max MSP to control sounds... simple enough i thought, just one sensor and arduino-to-max...
The sensor itself is a stretch-band piezo sensor, to be worn around the chest, it stretches as the user breathes.
The problem is that the range is TINY. When I stretch the sensor from nothing to maximum, the 0-1023 value moves from around 100 to 120, [or sometimes from 0-20, or sometimes from 1000 to 1020.... it appears in a seemingly random point in the voltage range each time i connect it...] & that's stretching the sensor manually. When someone has it on and is breathing, it means the practical range is about 5. Which, also factoring in noise, makes the data completely unusable.
What can I do to increase the range?
I've tested the arduino with plain old potentiometers and it's fine, and arduino-to-max is working alright too. I have the two connections from the sensor plugged into ground and an analog pin, and the data is quite smooth... (It doesn't feel right that I have no resistor from analog pin to 5v, but whatever resistance I put there makes the range even smaller.)
The specs of the sensor are as follows:
Piezo Respiratory Belt Transducer
Signal source: Piezo-electric
Output range: 20 mV to 400 mV
Sensitivity: 4.5 +-1 mV/mm
Capacitance: 2.2 microFarads
Resistance: 100,000,000 ohm
Natural Frequency of Belt: >35 Hz
Do I need to use a different combination of resistors to improve the range? A friend of mine suggests using an amplifier - how would I wire this up if I were to use it?
I'll be grateful for any tips or comments, I'd really like to get this working.
Thanks a lot
Nick