Reading 4-20ma signal on arduino

Hi,

I want to read a 4-20 mA analog signal from a 24V flowmeter. I've read the simplest way is to convert it into 1-5V signal using a 250 ohm resistor. The thing is I want my reading to be precise so my question is; is there any resolution loss when converting it to 1-5V?

I've also looked up on current to voltage converting boards similar to this one: SparkFun Current Sensor Breakout - ACS723 (Low Current) - SEN-14544 - SparkFun Electronics

but I don't think they can detect 4mA signal.

I am a beginner in this so need some guidance here.

Better use a 47 or 51 Ohm resistor and use the internal 1.1V reference. Better stability. You of course have to calibrate once as that 1.1V reference does have a 10% tolerance.

If I use a 51 ohm resistor, I get voltage of 0.2V - 1.02 V, which decreases my resolution even more. How does the 1.1V reference come into play?

The internal ~1.1V "bandgap" reference is much more stable than the 5V default which is derived from Vcc supply and can vary with I/O load.

The resolution of your measurement is set by the ADC resolution which is one part in 1024 for the Uno and Mega chips.

For a single measurement the least significant bit is noise therefore your effective resolution is one part in 512. What resolution do you require?

The ultimate accuracy is probably set by the linearity of the flow meter. If there is a datasheet look for a calibration graph.

sumitmn:
If I use a 51 ohm resistor, I get voltage of 0.2V - 1.02 V, which decreases my resolution even more. How does the 1.1V reference come into play?

If you switch to 1.1volt Aref in setup(), then 0 to ~1.1volt will return 0-1023.
Same resolution, but readout is more stable.
Leo..

Example diagram with protection and noise removal.