Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

RTSI cable configuration.

We are using NI PCI-6251 M series multifunction DAQ devices and NI-DAQmx driver. We have our own application software that makes use of NI-DAQmx APIs (i.e. we are not using LabVIEW or any other NI application software).

I have following questions regarding multi-device synchrnoization using RTSI cable: -

  • My understanding is that RTSI is not a plug and play cable and it needs to be configured in application software. Is this correct?

  • Is it sufficient to configure RTSI cable in NI MAX (Measurement and Automation Explorer) by using "Create New... -> RTSI cable", add all devices using "Add Device to RTSI Cable" option and then use "any" application software?

  • Regardless of the capability provided in MAX, is there something that needs to be done in the "used" application software (e.g. LabVIEW or other custom) using some APIs of NI-DAQmx for configuring the RTSI cable?

Sumit
0 Kudos
Message 1 of 5
(4,823 Views)
 Hi Sumit,

  1. The RTSI cable must first be registered in MAX before DAQmx can access it. This is done by adding the RTSI cable in MAX as a new DAQmx device.

  2. After adding the RTSI cable to MAX, then right-click on the RTSI Cable in MAX and Add Devices to the RTSI cable. Now DAQmx devices can route to/from the RTSI bus.

  3. There is no further configuration of RTSI required. What you will have to do to actually use the RTSI bus is to place triggers/clocks on the bus using something like
      DAQmx Export Signals or Connect Signals functions.

 Have a great afternoon,

 MatthewW
 Applications Engineer
 National Instruments


 

0 Kudos
Message 2 of 5
(4,809 Views)
You should only use connect signal functions for debugging purposes.  You should only use "Export Signal" for exporting signals outside of the DAQmx domain (i.e. to devices that are not supported under DAQmx).  DAQmx provides powerful routing capabilities, but as soon as you export the signal outside of the DAQmx domain, the driver can no longer provide you with error checking to see if you've routed things correctly, or if your route is valid.  For a visual display of valid routes, click on the routing tab in MAX to view all possible routes available on one device. 
 
If you are routing between two devices and need to synchronize them, for example, having them share a master timebase, you would want to do something like the following:
 
DAQmxSetSampClkTimebaseSrc(TaskHandle slaveTaskHandle,
   DAQmxGetSampClkTimebaseSrc(TaskHandle masterTaskHandle,
                                                            char *data,
                                                            uInt32 bufferSize););
 
DAQmxSetSampClkTimebaseRate(TaskHandle slaveTaskHandle,
   DAQmxGetSampClkTimebaseRate(TaskHandle masterTaskHandle,
                                                              float64 *data););
 
This would set the slave tasks master timebase rate and source to be the same as the master task.  DAQmx will then handle complex routing without you having to worry about routing anything directly to RTSI cables.  As the above post mentions, since you configured you're cable in MAX, DAQmx has all the information it needs about how to route these signals between the devices.
 
0 Kudos
Message 3 of 5
(4,807 Views)
Thanks a lot Matthew and balki for your prompt and detailed replies!

We'll try this out and everything should work like you described (steps seem logical).
0 Kudos
Message 4 of 5
(4,797 Views)

Hi guys,

 

Is it possible to sinhronize two DAQ boards (ni 4472) without having the RTSI cable?

 

Thanks,

0 Kudos
Message 5 of 5
(4,469 Views)