Forums

Re: ADC12 Vref on MSP430F169

Started by Technical Kripa December 8, 2008
I need to measure a 4-20 mA current signal using an ADC port of MSP430. What I did was connect a series resistance of 200 Ohm in the current path and measure voltage across the resistance using ADC port. This works fine but I know this is not the correct way of doing it as the current without the resistor and with the resistor is slightly different.

Another issue with this method is that in case of a short circuit in the origin of current signal (a sensor in this case), voltage across the 200 ohm resistor would increase beyond safe limits of MSP430 - this issue I solved by not conecting voltage arossĀ 200 Ohm resistor directly but putting a 1K Ohm resistor in between and putting a 3.3V zener diode on the pin. Please let me know if there is a better way of doing this.

Could someone shouw me a simple yet good way of converting the 4-20mA current signal into 0-3.3V for the ADC port considering
1. interface circuit requires minimum components
2. the current signal is not affected by the circuit more than say around 5%
3. Any surge in the current doesnt affect the microontroller or interface circuit

Thanks and regards
SH
Add more friends to your messenger and enjoy! Go to http://messenger.yahoo.com/invite/


Beginning Microcontrollers with the MSP430

A 4-20mA signal is designed to be a constant
current, the value of which indicates your
present sensor output value. This form of output
is designed to load-independent (ie
series-resistance independent), such that any
length, impedance and type of cable can be used,
and the voltage developed across an external
sense load will simply saturate at the maximum
voltage of the sensor if the resistance of that
load becomes too high (such as for an
open-circuit). Therefore introducing a 200 Ohm
resistor should not substantially affect the
current reading, assuming that you are simply
replacing another resistor of (say) 100R or 500R.
If that open circuit voltage is too high for the
MSP430 (very likely) then you could get away with
a high-value series resistor to the MSP430 from
the sense point on the 200R resistor. Correct
sensing requires both ends of the 200R sense
resistor to be measured, which implies either 2
input ADC channels on the MSP430 or relying on
the 200R resistor being connected to the MSP430
ground (common ground or 3-wire mode). Be aware
that in the latter case you may now be bypassing
the return line of the sensor if the sensor is
also connected to the same ground.

Of course there should be only one resistor in
the output load, that which you are measuring the
voltage across. If you are paralleling another
load resistor with your 200R (for example, if
there is another measurement device already in
situ) then you have two current paths and should
adjust your calculations accordingly. In this
latter case you most certainly cannot rely on a
common ground and will require two inputs. It
would also be preferable in such a case to series
connect the two measurement instruments instead,
but one would of course ride on top of the
voltage developed by the other, again indicating
floating measurements (2 inputs to the MSP430)
would be required. Unfortunately in this case the
MSP430 would also have to sit on top of this
voltage; if the sensor is fully isolated from the
MSP430 supply and ground then you do not have a
problem, but the other instrument would also have
to be isolated from the MSP430 ground. This only
applies when connecting 2 instruments in series
to the sensor. easiest solution is to only have
your MSP430 200R load sense resistor in the 4-20mA output path.

To avoid scaling the voltage developed across
your sense resistor, I would suggest 150 Ohms
instead of 200 Ohms. Let's assume you want to
measure a worst-case maximum of 22mA (not all
sensors behave properly!), then 22mA across 150R
develops 3.3 volts. Assuming your sensor is
isolated, you can calibrate your system such that
20mA represents 3.0V, and 4mA represents 600mV.
Adjust by measuring the lower end of the 150R as
well, or just connect it to the MSP430 ground
(remember you can't connect it to the ground if
the sensor is not isolated from the MSP430 ground
- or the PC ground which the MSP430 is connected to perhaps).

Hope that helps.
Hugh

At 08:58 AM 12/8/2008, you wrote:
I need to measure a 4-20 mA current signal using
an ADC port of MSP430. What I did was connect a
series resistance of 200 Ohm in the current path
and measure voltage across the resistance using
ADC port. This works fine but I know this is not
the correct way of doing it as the current
without the resistor and with the resistor is slightly different.

Another issue with this method is that in case of
a short circuit in the origin of current signal
(a sensor in this case), voltage across the 200
ohm resistor would increase beyond safe limits of
MSP430 - this issue I solved by not conecting
voltage aross200 Ohm resistor directly but
putting a 1K Ohm resistor in between and putting
a 3.3V zener diode on the pin. Please let me know
if there is a better way of doing this.

Could someone shouw me a simple yet good way of
converting the 4-20mA current signal into 0-3.3V for the ADC port considering
1. interface circuit requires minimum components
2. the current signal is not affected by the circuit more than say around 5%
3. Any surge in the current doesnt affect the
microontroller or interface circuit

Thanks and regards
SH