how to interprete 4-20 mA signal and feed to OPC server

D

Thread Starter

dinster

hi guys..
simple question. i have 4-20 mA pressure transmitter which is connected to Moxa IOlogik 2000 series (which captures this 4-20 mA signal and transmit over ethernet via Modbus TCP protocol).

using OPC server eg. Kepware's KepserverEx.. i can now poll this 4-20 mA signal at interval time of my choise..

problem is... 4-20 mA is NOT MEANINGFUl at all.. instead i would like to record my pressure in BAR..

what's missing in my system?
 
What you are missing is scaling to engineering units. You need to apply a y = mx + b type equation to convert raw values (x) to engineering units (y), where m is the "gain" and b is the "offset". This usually takes place at the receiving end (although it is sometimes done in the field transmitter).

I can't tell from your description just what you are doing with the signal after it reaches the destination, but it is likely that you need to program a conversion there.
 
got the point. but how do i do it?

normally a DCS eg. Delta V, Foxboro IA etc etc can interpret 4-20 mA well ie. we can specify the zero, span, gain etc etc

but in my case, i got pure 4-20 mA from OPC server (which talks to my remote IO module via Modbus TCP protocol).

i just dont know what program can be used to manipulate this raw signal.

i need to get it to my Osisoft's PI server for final storage.
 
R
You just need to know the transmitter calibration
Example Assuming
4mA (zero) = 0 bar
20 mA (100% or span) = 10 bar

Then its just a matter of figuring out the values for mA in between
Pressure in Bar = (mA-4) x 10/16 (Note: 10 is the span in this case)
e.g. if mA =12
12-4 = 8
8 x 10/16
= 5 bar

Just remember
4mA = 0% of span
8mA = 25%
12mA = 50%
16mA = 75%
20mA = 100%

Once you get the hang of it, it's easy.
Roy

 
S

Srenivasan Neelameghan

Hi,
You want your Pressure to be evented (Historised) through OPC Server? Then Your 4-20mA Transmitter transmits its value to any hardware like PLC (Programmable Logic Controller) or any control Hardware. Then that particular hardware might be OPC enabled.

All control hardware were OPC Client enabled. So you can have your system as OPC Server & your hardware as OPC Client which enables historisation of your pressure.

For further details contact me at [email protected]
+91 9790920239

With Best Regards
N.Srenivasan
 
I think the KEPWare OPC server will do scaling. You have to enable this and define the scaling factors somewhere in the configuration menus for it.

 
ok. well understood.

looks like i still need PLC for the job. i'm trying to eliminate PLC by using Remote IO module eg. Moxa IOlogik or Advantech ADAM 6000 series.

 
I don't believe you understand the basic concept. When you terminate the 4-20mA signal in either of the general purpose I/O cards, you must also connect a precision 250 ohm resistor across these same terminals. This results in a 1-5 volt drop across that resistor that is read by the input card circuit which contains an analog-to-digital converter, typically a 12-bit A/D.

The output of the A/D converter is a 16-bit register with the converted analog value aligned usually to the most significant 12 bits, except for the sign bit that is reserved for negative voltages (remember this is a DC circuit.) You must calculate the register values for both the 1 and 5 volt signals corresponding to 4 and 20 mA respectively. Only now can you allow the Kepware software to scale the A/D values to equivalent engineering units.

If you use a DCS or a PLC, the software supplied by these suppliers will do all of this scaling for you. To use only commodity I/O, you must do some actual calculation work.

Dick Caro
===========================================
Richard H. Caro, Certified Automation Professional, CEO, CMC Associates,
2 Beth Circle, Acton, MA 01720
Tel: +1.978.635.9449 Mobile: +.978.764.4728
Fax: +1.978.246.1270
E-mail: [email protected]
Subscribe to the CMC Wireless Report at http://www.CMC.us
Web: http://www.CMC.us
 
But i want to understand in the case of minus value drift (-10 psi to +5 psi). But in this equation you are putting only 0 to + values not for minus values.
 
just add zero value to the equation, so it becomes as (ma-4)*(span-zero/16)+zero in your case zero is -10 psi

> But i want to understand in the case of minus value drift (-10 psi to +5 psi).
> But in this equation you are putting only 0 to + values not for minus values.
 
Top