LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

labVIEW & Delta Power Meter

Hi 

I read float 4 byte data from Delta power meter (DPM) C530A model in labview (RS485 modbus). but the data digits are different from measured value. what is the problem??

0 Kudos
Message 1 of 11
(3,387 Views)

Well, I can "imagine" your VI, and I think the wire going into the 4th function from the left needs to be reconnected to ... oops, my crystal ball just started doing the latest update to "Crystal Ball 10 (64-bit)", so I'll have to wait until you post your VI (please, not a picture, or maybe a picture + the VI itself).

 

Bob Schor

0 Kudos
Message 2 of 11
(3,354 Views)

I didn't have problem with Int data type before. float type data shows in labview is not equal with Delta DPM shows in LCD.

0 Kudos
Message 3 of 11
(3,331 Views)

To  quote Bob "I'll have to wait until you post your VI (please, not a picture, or maybe a picture + the VI itself).please not a picture".

 

I guess you didn't read that part.

 

Without the VI, we can't see how you've coded it.  It looks like you read an integer, but are looking for a floating point.  We can guess that you converted the values wrong.

 

  • Post a VI with the data you read saved as default.
  • Reread the manual for the device.  Pay attention to how they describe the data.  Do you need to scale it?  Do you need to typecast it from an integer to a double or single precision float?
  • What is different now from before when you say "I didn't have problem with Int data type before."?
0 Kudos
Message 4 of 11
(3,324 Views)

I mean I didn't convert any int data type before to read in labview.

just read int data from specific address (modbus). and they had same digits and they were OK.

in that image i sent, the value of data in labview and Delta DPM LCD are different.

0 Kudos
Message 5 of 11
(3,311 Views)

That VI doesn't do anything.  It is just a numeric control that seems to be bound to something else.

 

What does the manual say?  Modbus only outputs a 16 bit integer per register.  So you need to do something to convert it to a floating point value.  Typically for floating points, two registers will be combined together and then converted to single precision float.

 

 

0 Kudos
Message 6 of 11
(3,305 Views)

how can I do it?

0 Kudos
Message 7 of 11
(3,295 Views)

Do what?

 

You can't do anything until you know what it is you are supposed to do.

 

With 2 registers, you can use Join Numbers, then type cast.  But until you read that you are supposed to do that, Note the order of joining will matter as to which U16 register is the low word and which is the high word.

0 Kudos
Message 8 of 11
(3,278 Views)

If your data is "float 4 byte" (sic), why is your indicator an 8 byte datatype (DBL). as a first step change the representation to SGL, but you probably need to do some corrections upstream too.

0 Kudos
Message 9 of 11
(3,264 Views)

Thank you
so what exactly should I do about  corrections upstream? (4 byte float )
I never do that before. I just binding int data from the specific address and use it very easy.

can you show me by some example??

0 Kudos
Message 10 of 11
(3,243 Views)