FP2 help with analog inputs

MikeC

Member
Join Date
Jan 2006
Location
Sacramento
Posts
3
Hello All





This is my first post. I'm trying to scale a analog input to a data register that will show a actual value. What I have is a 4-20ma input that represents -20 to 180 deg C. What I'm looking to do is have a data register show the actual temperature value. The problem I’m having is with the negative numbers.



Any help on this would be greatly appreciated.





Thanks



Mike
 
What range is the value of your raw analogue input?

I suggest dividing it by x to give a range of 0-200 (or 0-2000 if u like)
then use a signed integer subtract instruction to take away 20 (or 200)
Make sure your destination address is a signed integer.


What PLC do you have?
 
Hi Jason
Thanks for the reply

The raw analog value is 0-13106. I'm using an Aromat FP2 PLC.

I haven't done this yet so its a learning curve for me. So what I'm looking at is a raw value of 65.53 per degree C. Its to bad its an odd number.
 
The following method was originally posted by Tom Jenkins, it may be of use to you:

For any unit conversion on any PLC you can use four function
math with the following, which
asumes integer math:

DataOffset = Data in input register at 4 mA (or zero analog
signal of whatever range - for example 0 VDC on a 0-10 VDC
transmitter)

DataSPan = Data at 20 mA - Data @ 4 mA

FACTOR = arbitrary factor (multiple of 10) needed to get
proper resolution and accuracy

EU = Engineering Units x FACTOR

EUOffset = Engineering Units @ 4 mA x FACTOR

EUSpan = (Engineering Units @ 20 mA - Engineering Units @ 4
mA) x FACTOR

DATA = Actual data reading in input register

EU = ((EUSpan x (DATA - DataOffset))/DataSpan) + EUOffset

ProcessValue = EU / FACTOR

For Example, 0-60 psig from 4-20 mA with resolution of 0.1
psig on a 0-20 mA input range card:

FACTOR = 10
Data @ 4 mA = 6256 (this is the 20% offset)
Data @ 20 mA = 31208
DataOffset = 6256
DataSpan = 31208 - 6256 = 24952
EUOffset = 0 x 10 = 0
EUSpan = (60 - 0) x 10 = 600

DATA = 18975

EU = ((600 x (18975 - 6256)) / 24952) + 0 = 306

Process Value = 306 / 10 = 30.6 psig

 
Sorry I don't know that PLC. Here are my thoughts anyway;

I you multiply the input by 2 then divide this by 131 you get 200.1 (a 0.05% error) then take 20 to give -20 to 180 degrees. Can you live with this error?

If not then can you re-configure the analogue input to give a different range?

Or have you got floating point arithmatic available? If so you can convert the raw analogue to FP then just divide by 65.53 and take 20.0 then convert back to integer if you need to.
 
If your PLC supports floating point math you can use the following:



Slope = (Scaled Maximum - Scaled Minimum) / (Input Maximum - Input Minimum)
Offset = Scaled Minimum - (Input Minimum X Slope)

Scaled Value = (Input Value X Slope) + Offset
 

Similar Topics

I'm working with a Customer that has 2 Panasonic FP2-C2 units. I'm not exactly sure what this even is... Is it a PLC with motion control or just...
Replies
6
Views
1,547
Can someone tell me what I'm seeing here? I'm online with the FP2 and looking at some rungs with DT120 and DT124. Each are used twice and each...
Replies
7
Views
1,733
Hello, Just hoping I can get a little help Got a FP2 Panasonic, and having trouble with an output coming on. Looking through the software, all...
Replies
2
Views
1,540
Hi! i have a panasonic FP2 PLC (FP0R-C16P), with a Minas LIQI servo controller running a band, when the band moves the carriage in to the...
Replies
0
Views
1,020
Hi all, Im have a problem with my Panasonic FP2, (FP2 16K, 10970 steps) in the system registers, "Hold on/off (5-14)" the data range is not...
Replies
0
Views
1,388
Back
Top Bottom