Go Down

Topic: Reading 4 to 20ma pressure sensor using uno  (Read 20843 times) previous topic - next topic

resolver101757

Hello,

I have a OsiSenseā„¢ XMLP pressure sensor that i want to read from my Arduino uno.  Whats the best way to read the pressure from it?

I am powering it with a 24v DC power directly, but not sure how it should be wired to the Arduino?  Is there a shield available that will read in milliamps directly?

Thanks

jremington

#1
Oct 09, 2017, 05:14 pm Last Edit: Oct 09, 2017, 05:15 pm by jremington
Most people use a 250 Ohm resistor to convert 4-20 mA to 1-5V and read the voltage drop with an analog input.

resolver101757

Thanks for getting back to me so quick.  This is the circuit I am looking at building.  I've read online to build the circuit.  Can you tell me if it is correct?

Also I dont understand why it works and im hoping you can correct my thinking.  Following ohms law we want to leave 5v when 20 milliamps goes through the circuit.  We know the voltage on the circuit is 24 volts and we know the maximum current is 20 milliamps so my maths says :

Resistance = Voltage  / I (current)

We need to leave 5 volts for the arduino to read so we subtract 5 from 24.

Resistance = 19  / 20 milliamp

So the resistance to leave to give us a maximum of 5 volts is a 0.95 Kilohms resistor.  I dont see where the 250 ohm resistor comes in? please help.

jremington

#3
Oct 10, 2017, 05:43 pm Last Edit: Oct 10, 2017, 05:45 pm by jremington
The sensor is designed to drive 4 to 20 mA through the output circuit regardless of the sensor supply voltage (within the allowed limits).

So, using a 250 Ohm resistor, Ohm's Law gives:

0.004A*250R = 1V
0.020A*250R = 5V

A better circuit includes a 10K resistor for overvoltage protection at the input, and has the negative sensor power supply connected to Arduino ground, as follows:




ABurford

I have this design working well with one 4-20 mA input to A1 and ground but when I add another input (A5) to the same ground (using either the same transformer or a different transformer) my Arduino freezes. Is there something extra that needs to be done to have two of these inputs on the same board? Thanks in advance for any tips!

hammy

You've another post with that question ... which I answered .

shaunh84

I'm about to to do the same, was going to put a 250ohm resistor in my 4-20mA circuit - I am slightly confused, won't another 10k ohm resistor drop the voltage before it gets to the pin?

jremington

#7
May 13, 2020, 04:37 pm Last Edit: May 13, 2020, 04:39 pm by jremington
Quote
won't another 10k ohm resistor drop the voltage before it gets to the pin?
No. The analog inputs draw negligible current under normal operating conditions.

The resistor is intended to prevent the Arduino input from being destroyed, if the input voltage goes above the Arduino supply voltage.

Go Up