LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

NI 9213 channel configuration

Hi all,

 

I'm working on a flexible (eventually compiled .exe) DAQ system using an NI 9213 and other modules for a NI 9148 Ethernet RIO chassis. With some help I have been able to find the chassis on the network and determine the connected modules and their location in the chassis. (Which is intended to be able to change frequently)

 

I have been able to read any and all channel values, so now my trouble is actually configuring the channels programmatically based on user input.

 

Can anyone suggest a method to configure the channels (thermocouple type, etc) without actually having the RIO included in the project before it is compiled?

 

Thanks for any help.

0 Kudos
Message 1 of 4
(3,258 Views)

Hi soonxaf,

 

Can you provide me with some more information on this? What exactly is it that you are trying to do? Can you walk me through a specific use case?

 

David B.
Applications Engineer
National Instruments
0 Kudos
Message 2 of 4
(3,219 Views)

David,

 

In theory, our users should be able to check out one or more c-series modules for the cRIO chassis from a stockpile in the building, take those modules into a lab that has the NI 9148 chassis mounted and connected to the internal network, then connect whatever sensors they need for a given test. For the sake of this example lets say they use a NI 9213 (16 channel thermocouple) and a NI 9237 (AI Bridge) placed into slots 2 and 5 of the chassis...

 

The aplication I am working on needs to:

   a: detect the chassis on the network   (done)

   b: detect the modules in the chassis (slot, type, serial number, etc.)  (done)

   c: allow the user to configure the module and sample rate to log data from some test...

 

Here is where I'm having trouble. Without knowing ahead of time the module and position in the chassis, I need to provide a method for configuring the module (thermocouple type, excitation voltage, scaling, sample rate, etc.) I'm thinking of writing sub-routines for the modules we have on hand, however because the modules do not show up in MAX, I cannot use the DAQmx blocks to set the configuration. Additionally, because I don't know ahead of time what modules will be in the chassis, I cannot add it to project explorer and configure the channels there like one would typically do with the 9148 chassis.

 

It seems to me that because I can use property nodes to detect the modules, types, etc., that I an hopefully also use property nodes to set the cofiguration, but I haven't been sucessful as of yet.

 

  d: Read data from the module channels at the desired rate (done)

  e. write the data to a file  (haven't worried about this yet, but should be no issue as I have in the past)

 

 

Attached is a scren shot of reading module information with property nodes.

 

thaks for any input...

 

John

0 Kudos
Message 3 of 4
(3,200 Views)

Hi soonxaf,

 

Thanks for the detailed information. This depends on if you are accessing the modules in scan mode or FPGA mode. In scan mode, this is more easily done because there is no user defined FPGA code involved. Based on the different modules detected by the property nodes, different configuration options can be made available programmatically.

 

If you are accessing the modules in FPGA, mode you would have to have a user input which module is in each slot. You would also have to have precompiled bit files for each possibility and the necessary configuration options available on the host VI. With many different possibilities, this would be quite difficult.

 

If using Scan Engine, below are a few resources to look into to that should be able to be of assistance:

 

"Programmatic Discovery, Configuration, and Access of CompactRIO Scan Mode I/O in LabVIEW"

Check out the white paper and the "Attachments".

 

David B.
Applications Engineer
National Instruments
0 Kudos
Message 4 of 4
(3,160 Views)