I have read posts about OpAmps and MPX's for some hours now, but as I am a mechanical engineer I give up. :~
The MPX10DP has these connections: 1 GND, 2 +Vout, 3 +Vs and 4 -Vout.
The LM358 module has these connections: VCC, IN, OUT and GND.
When I measure voltage (connect mpx 1 to Arduino ground and mpx 3 to Arduino 5V) 1-2 and 1-4 give approximate 2,55 V. Between 2-4 give 0,029V. Change when pressure is added.
connection of pin 1 and 3 of the mpx, shouldn't it be swapped?
the LM358 schematics has separate inputs, my module have only one input.
(My plan was to measure level in a hot water tank in my homebrew equipment, and control valve for filling and only apply heating power when level is above the element.)
In what way should I connect mpx output (pin 2 and/or 4) to the LM358 module?
The LM358 is a poor choice of amplifier for that sensor. You should use an instrumentation amplifier such as INA122 instead. Even better, use a combined instrumentation amplifier and 24-bit ADC such as the ADS1231.
Whether you need to swap pins 1 and 3 in the circuit you referred to depends on whether you want an increasing or decreasing output voltage when the pressure increases.
You have an differential output from the pressure sensor and your amplifier must also have an differential input.
Exactly whats written in #7.
LM 358 or an instrumental OP and how many bits in the ADC depends on what precision you want. Only on and off?
Thank you for the tip about e-Tape. I am planning to use two level indicators and I think this solution will be a little to expensive. Besides the functional water level device, I also like a challenge. So I continue with the MPX10DP for now!
I have ordered some INA122's. Waiting for the postman, I have done some preparations but need some verification :):
Max pressure of sensor is 10kPa with an output of 35mV, roughly 1 meter of water. My tank is no more than 30cm high, so the sensor output will be 10-11mV. To get this up to 5V of the Arduino analog input I need a gain of 450-500. Correct?
By coincident this is quite close to the calculated resistance Rg=450ohm. From TI INA122 datasheet: G = 5 + (200000/Rg). Correct?
But for the wiring I am a little uncertain. Can it really be straight forward?
Arduino 5V power and ground to sensor and amp.
From sensor two Vout's to the two Vin's of the amp.
HansF:
But for the wiring I am a little uncertain. Can it really be straight forward?
Arduino 5V power and ground to sensor and amp.
From sensor two Vout's to the two Vin's of the amp.
Resistance 450ohm on amp Rg.
And amp's Vo to analog pin on the Arduino.
You may also need a decoupling capacitor connected between Vcc and Gnd of the instrumentation amplifier - consult the datasheet for recommendations.
You will need to connect the Ref pin of the op amp either to ground, or to a small positive voltage, depending on the sign of the zero-pressure voltage provided by the sensor. Try connecting it to ground to start with. If the output voltage is zero and remains zero when the pressure is increased, or it is nonzero and decreases when the pressure is increased, try swapping the + and - amplifier inputs.
Something like a HX711 shield would be a good solution. My only worry is that the sensor's initial offset is about half of fullscale, so some form of offset adjustmant may be necessary.
The MPX10DP could be powered from the E+ and E- pins of the HX711 board (4.3volt regulated).
Then the output of the sensor will be in range of the HX711's inputs.
Maybe easier to use an MPX sensor with buildin instrumentation amp and temp compensation.
Most of them do.
Leo..