LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

ARINC 429

I am using a Ballard ARINC board to get aircraft parameters. The llb from
Ballard seems to be working OK, but the data words I am getting back for
my parameters (airspeed, latitude, etc) don't make any sense. Does anyone
know how to translate the 32 bit words returned by "L43 MsgDataRd.vi" into
the values of real measurements?
0 Kudos
Message 1 of 10
(5,325 Views)
The instrument is probibly returning the readings as floating-point values. 32 bits would be single-precision. Assuming they are using IEEE-standard floating point, you can recover the data by taking each 4-byte value and running it through an unflatten from string function.

The attached vi shows a conversion of a raw datavalue contained in a U32 into a floating point value. The important thing when building the intermediate string to unflatten is byte order. The data must come most-significant byte first.

Also note that the type definition constant on the unflatten is set to "NaN". If a conversion fails, this output will make it clear that something didn't work.

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
Message 2 of 10
(5,323 Views)
I'm assuming that you understand the layout of the ARINC word. There are bits for the label, bits for the actual data value, a couple of bits for the SDI. You have to break out all of these in order to get the proper data.

If you know this already, then are you looking for how to convert the data bits into engineering units?

Mark
0 Kudos
Message 3 of 10
(5,323 Views)
In article <50650000000500000016740000-1019262487000@exchange.ni.com>,
markwysong wrote:

> I'm assuming that you understand the layout of the ARINC word. There
> are bits for the label, bits for the actual data value, a couple of
> bits for the SDI. You have to break out all of these in order to get
> the proper data.
>
> If you know this already, then are you looking for how to convert the
> data bits into engineering units?
>
> Mark

Yes, I do know that the 32 bit word has a structure that I am supposed to
interpret. My problem is that I don't even see fixed labels when I
repeatedly look at one parameter. Lets choose airspeed. I have a
simulator that allows me to input an airspeed and vary it. If I look at
the the words I get as
I change the airspeed input, I get words that make
no sense for labels and values. I have the feeling that I am doing
something basic wrong, but the examples supplied by Ballard for using
their cards with LabVIEW never interpret the words into engineering units,
so I don't yet have a clue where I am wrong.

Bart
0 Kudos
Message 4 of 10
(5,323 Views)
Usually there is a mark that shows the beginning of the frame where all the labels and data are. Are you synching up to the frame properly?
0 Kudos
Message 5 of 10
(5,323 Views)
In article <50650000000500000039740000-1019262487000@exchange.ni.com>,
markwysong wrote:

> Usually there is a mark that shows the beginning of the frame where
> all the labels and data are. Are you synching up to the frame
> properly?

I am using the Ballard examples as a template to get the data, and there
is no such thing as a frame mark that I see. What boards and software
have you used?
Bart
0 Kudos
Message 6 of 10
(5,323 Views)
I've used SBS ARINC 429 cards. They have frames, and they can send a certain amount of labels per frame.
0 Kudos
Message 7 of 10
(5,323 Views)
You do realize that the label is in octal and that the bit order for the
label only is reversed.

Later

Randy
"Bart Jackson" wrote in message
news:bartj-3004021128180001@dialup-65.59.111.20.dial1.weehawken1.level3.net.
...
> In article <50650000000500000016740000-1019262487000@exchange.ni.com>,
> markwysong wrote:
>
> > I'm assuming that you understand the layout of the ARINC word. There
> > are bits for the label, bits for the actual data value, a couple of
> > bits for the SDI. You have to break out all of these in order to get
> > the proper data.
> >
> > If you know this already, then are you looking for how to convert the
> > data bits into engineering units?
> >
> > Mark
>
> Yes, I do know that the 32
bit word has a structure that I am supposed to
> interpret. My problem is that I don't even see fixed labels when I
> repeatedly look at one parameter. Lets choose airspeed. I have a
> simulator that allows me to input an airspeed and vary it. If I look at
> the the words I get as I change the airspeed input, I get words that make
> no sense for labels and values. I have the feeling that I am doing
> something basic wrong, but the examples supplied by Ballard for using
> their cards with LabVIEW never interpret the words into engineering units,
> so I don't yet have a clue where I am wrong.
>
> Bart
0 Kudos
Message 8 of 10
(5,323 Views)
I do know about the octal part. I don't see any group of bits of any size
staying constant as I try to follow one parameter. There should be 8 bits
for the label, and even if they are reversed, they still are supposed to
be at one end of the 32 bit word (in case I have MSB and LSB confused, I
am looking everywhere). The words don't have any part I can recognize as
a label, nor do they always have odd parity, another feature that I
believe to be fundamental to the ARINC 32 bit messages. I am trying to
get Ballard to confirm that I am following their LabVIEW example code
properly, but don't have a useful response yet. Any hints welcomed.
Bart

> You do realize that the label is in octal and that the bit order for the
> label only is reversed.
>
> Later
>
> Randy
> "Bart Jackson" wrote in message
> news:bartj-3004021128180001@dialup-65.59.111.20.dial1.weehawken1.level3.net.
> ..
> > In article <50650000000500000016740000-1019262487000@exchange.ni.com>,
> > markwysong wrote:
> >
> > > I'm assuming that you understand the layout of the ARINC word. There
> > > are bits for the label, bits for the actual data value, a couple of
> > > bits for the SDI. You have to break out all of these in order to get
> > > the proper data.
> > >
> > > If you know this already, then are you looking for how to convert the
> > > data bits into engineering units?
> > >
> > > Mark
> >
> > Yes, I do know that the 32 bit word has a structure that I am supposed to
> > interpret. My problem is that I don't even see fixed labels when I
> > repeatedly look at one parameter. Lets choose airspeed. I have a
> > simulator that allows me to input an airspeed and vary it. If I look at
> > the the words I get as I change the airspeed input, I get words that make
> > no sense for labels and values. I have the feeling that I am doing
> > something basic wrong, but the examples supplied by Ballard for using
> > their cards with LabVIEW never interpret the words into engineering units,
> > so I don't yet have a clue where I am wrong.
> >
> > Bart
0 Kudos
Message 9 of 10
(5,323 Views)
Hi!
I have also a problem with this card. I used the LV programm from Condor. But the programm works irregular I run it and the led's are green, I run it one more and the led's are red and sometimes I get this message: C:\programmes\condor engineering\cei-lv\bin\ceiapi_lv.lbb\ar_set_config: libarary does not exist (but this message comes without a change in LV)...this message hang on my computer :-s
~~~~
Regards
Sarah

LV 7.1.1
0 Kudos
Message 10 of 10
(5,323 Views)