How Do Multiplexed Signals Work In NI-XNET Database Editor and in LabVIEW?

Updated May 14, 2020

Reported In

Driver

  • NI-XNET

Issue Details

I am trying to build a database with multiplexed signals, but I do not know how do signal multiplexing works in the NI-XNET Database Editor.

Solution

Multiplexed signals are two separate signals that occupy the same bit space in a CAN frame. They are linked by a separate signal called the Multiplexer, which determines which signal gets to occupy that bit space in that particular frame instance.

For example:

We define a CAN frame with a one-byte payload. Bit 0 will be the multiplexer and it could be either a 0 or a 1:
 

 
The bits 1 to 7 will be a 7-bit signal. We define the signals to occupy the same space, but with different Multiplexed values or modes.

When the Multiplexer = 0, the 7-bit signal will represent one specific measurement (RPM for example):
 

 
When the Multiplexer = 1, the 7-bit signal will represent a different measurement (tire pressure, for example).
 



LabVIEW Example for a Multiplexed loopback Test bases on this Database:

This example performs a loopback test for a Multiplexed Frame.
Requirements:
  • LabVIEW 2019
  • NI-XNET Driver
  • XNET Hardware
  • Multiplexed Signals Example DB.xml
Instruction:
  1. Download  the attached "Multiplexed Signals Example DB.xml" and add it to your XNET DB Aliases on your System so you can select it in LabVIEW.
  2. Ensure that you have connected the selected CAN ports with a properly terminated cable. If you do not have a terminated cable, select Yes in Termination? to enable internal termination.
  3. Run the VI.

Additional Information

Multiplexed Signals are currently supported only for CAN. A frame may only contain one multiplexer signal. Multiplexer signals may be up to 16 bits in size. Furthermore, a static signal cannot share the same position on the frame with a multiplexed signal.