07-13-2019 07:49 AM
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??
07-13-2019 01:38 PM
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
07-14-2019 07:30 AM
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.
07-14-2019 08:21 AM
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.
07-14-2019 09:04 AM - edited 07-14-2019 09:08 AM
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.
07-14-2019 10:22 AM
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.
07-14-2019 01:20 PM - edited 07-14-2019 01:21 PM
how can I do it?
07-14-2019 04:54 PM
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.
07-15-2019 02:10 AM - edited 07-15-2019 02:11 AM
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.
07-16-2019 05:47 AM
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??