I have been trying to read a 4wire pressure transducer (M3021-000005-01KPG) with a microcontroller, but problems keep arising. First of all, I realized that the signal (0-100 mV) is differential, which means that we have to measure it between the 2 signal wires of the transducer, not between the ground of the circuit and a single wire. With lab instruments this is no problem, but I would like to read the signal with a microcontroller. In this case, the problem becomes obvious because not only is the signal too small (0-100mV), but also the microcontroller's ADC (ex. the ADC of an Arduino) compares a voltage with its ground, and does not read differential signals.
I tried to pass the signal through a differential amplifier circuit (an op amp with some resistors) with unity gain (i will add gain later) in order to convert it to a signal relative to the circuit's ground, but the signal was not correctly read. More specifically, I was reading 5mV without the sensor connected and 8mV with the sensor @6bar pressure. The sensor's signal @6 bar should be 9 mV, so I assume that i should read 5+9 = 14mV. I know that the diff. amp. circuit is correct because I was measuring the expected results when I was sending a custom differential signal instead of the sensor (I was getting the signal value + the noise). I also know that the transducer's signal is OK beause I measured it with a multimeter, without the diff. amp. circuit.
So, I can't find out what is wrong. I dont have much experience with op-amps, so any help would be appreciated !!
P.S. : Some info about the transducer. The signal is 0-100mV representing values from 1 to 69 bar linearly. I know that the signal is almost at noise level, but I could consistently measure 9mV @6 bar with a good mulimeter, so I assume that the sensor works fine. Filters and amplification will probably need to be added later on, but for now I just need to be able to convert the differential signal to single-ended.
simulate this circuit – Schematic created using CircuitLab
Datasheet : https://eu.mouser.com/datasheet/2/418/6/ENG_DS_MSP300_B-1130121.pdf