Hi,
4....20 mA to 0..5V:
difference in mA = 16
difference in V = 5:
so use a 5V/0.016A resistor = 312.5 Ohms resistor (how to get this???)
then it shows 1.25V ... 6.25V.
Now just subtract the 1.25V with an OPAMP circuit then you get 0....5V.
Maybe you can use a 1.25V voltage reference for this.
************
If you are using a uController, then:
i recommend to use 4..20mA with some headrom. 0.. 25mA for example.
subtracting the 4mA in software is more easy than in hardware.
It won´t really harm your precision.
*****
in opposite i see more problems with the hardware solution:
* You need all precision resistors
* you need a precision voltage reference
* you need a precision opamp
* you need negative supply voltage.
* calibrating hardware needs more effort than with software
* hardware values may dirft (with time and temperature), software not.
* you may loose the ability to recognize a broken sensor line (0..4mA)
Klaus