Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

NI 6110 , 6711 synchronized AO only works with 1ch on 6110

I am trying to synchronize 2 NI cards, each has two analog output signals, so I would like all 4 signals to be synchronized. I am using an NI 6110 and an NI 6711; they are connected via an RTSI cable within the host computer enclosure. The cards are synchronized when using one channel on the 6110 and two on the 6711, but if I try to use a second channel on the 6110, the
cards are no longer synchronized in their output. Instead, the two channels within each card are synchronized and appear normal, but channels from different cards are no longer synchronized. I would like to know if this is a hardware limitation of the cards or perhaps an issue in DAQmx or LabVIEW. Any help would be much appreciated! Technical details follow:

I am controlling the cards via LabVIEW 2010 (Version 10.0, 32-bit). The cards are set to share their master timebase; the 6711 is set to use its "OnboardClock" via the DAQmx Timing property node-MasterTimebase.Src property, while the 6110 is set to use /Dev2/20MHzTimebase (where Dev2 refers to the 6711; Dev1 is the 6110, so the 6110 uses the master clock from the 6711 - it will not work at all the other way). The initial starts are synchronized by setting the 6711 via the DAQmx Start Trigger (Digital Edge) VI with the source set to /Dev1/ao/StartTrigger, so the 6711 will wait for the 6110 to start, and the DAQmx start Task VI is run for the 6711 before it is for the 6110, so the 6711 does not miss the start trigger from the 6110.

Everything works fine when I have one channel on the 6110 (via the DAQmx write VI -> 'Analog Wfm 1Chan NSamp') and two channels on the 6711 (DAQmx write VI -> 'Analog 1D Wfm NChan NSamp'). However, when I add a second channel to the 6110, the synchronization between the cards seems to be lost. This happens even if I am just creating the second channel for the 6110
by duplicating the data from its first channel, and changing the DAQmx write VI to 'Analog 1D Wfm NChan NSamp'. There is still proper output, 4 channels total, and the output within each card's 2 channels is synchronized between those 2 channels, but the synchronization between channels on different cards is lost. This problem persists even if I reverse the start triggering so that the 6110 waits for the 6711.

The 6110 has an on-card buffer for 2048 samples maximum, and I am not receiving any errors in that regard, and I'm only using 1000 samples for each channel/waveform, on both cards.  Lastly, I am accessing the signals on these boards via a BNC-2110 for the 6110 and a SCB-68 for the 6711.

 

Does anyone have any ideas? Is it perhaps a limitation of the card, or DAQmx, or LabVIEW? Is the RTSI bus disabled by using 2 channels at once on the 6110? If so, is there another way to route the timebase signal and maintain synchronization over 4 channels split between these 2 cards? Thanks!

0 Kudos
Message 1 of 16
(4,064 Views)

Hello DanCA,

 

I've looked through the specifications of each card, and haven't found anything that would point to a RTSI-disabling mechanism on either card.  

PCI 6110 Specifications

PCI 6711 Sepcifications

 

How are you adding the second channel in your code?  Are you adding it to the same task (per card)? Or does your code have a separate task for each channel?

A coworker of mine suggested that we look at the the Shipping Example "Multi-Device Synch-Analog Input-Finite Acq-Ext Dig Start.vi"  Though the example program was intended for analog input tasks, it does synchronize the activity of two diffrent cards, and should work fine with multiple channels per card.

 

The Example Finder may be found by navigating:
Help » Find Examples

 

In the Example Finder, navigate:
Hardware Input and Output » DAQmx » Synchronization » Multi-Device » Multi-Device Synch-Analog Input-Finite Acq-Ext Dig Start.vi

 

Best regards.
 

Matthew H.
Applications Engineer
National Instruments
0 Kudos
Message 2 of 16
(4,047 Views)

Thank you very much for your response. I am adding the second channel to my code by adding it to the same task (for that card); I am not trying to use a separate task for each channel on the same card. So overall, I have two tasks - one for each of two cards. That is why this behavior seems so strange - I have already successfully synchronized the two cards; it works just fine when there is only one active channel on the 6110 and two channels on the 6711. The problem only shows up when I add a second channel to the 6110, and I don't think there is any problem in how I am adding the channel. Indeed, I add the channel to the pre-existing task on the 6110  in the same way that I successfully added a second channel to the task for the 6711 card. 

 

I checked out the example file, it looks somewhat similar to what I am doing. I'm away from my lab right now, but I'll try some further testing over the weekend, and if need be, pass along my VI. Thanks again for your help, I really appreciate it!

 

Regards,

Dan H.

 

 

0 Kudos
Message 3 of 16
(4,045 Views)

Thanks again for your help. I compared my code to the example file you suggested, as well as other example files, and can't yet see what I am doing wrong. My VI works just fine when there is 1 AO channel active on the 6110 (with two AO ch on the 6711), but synchronization is still lost when I try 2 AO channels on the 6110 (still with two AO ch on the 6711).

 

If it is not too much trouble, I was hoping you could look at my 2 VI's. I should note that these VIs are relatively simple.These VIs are meant to allow a user to generate some synchronized triangle waves (either 1 or 2 channels on the 6110) as well as two square waves (from the 6711); the front panel allows the user to change simple parameters like amplitude, frequency, offset, and phase. Other than the code to setup and run the analog output, the only other code present is that for generating the triangle and square waves.

 

The only substantive difference, that I can see, between the two VI's is that one of them has 2 AO channels on the 6110 and doesn't synchronize, and the other VI has 1 AO channel on the 6110 and does synchronize between cards.

 

I have attached the two files as:

1) DanCA_single_ch_works.vi

2) DanCA_dual_ch_fails.vi

 

The first file has 1 AO ch on the 6110 (w/2 AO on the 6711) and has proper synchronization as noted above, the second file has 2 AO on the 6110 (w/2 AO on the 6711) and has no synchronization between cards (waveforms from the same card are of course synchronized with each other).

 

Thanks again for your time and help, I really appreciate it!

 

Regards,

Dan H.

Download All
0 Kudos
Message 4 of 16
(4,040 Views)

Hello Dan,

 

Looking over the code you sent in, it looks like the interfaces on each card are writing the same data (ao1 and ao2 on Dev2 are writing B, ao1 and ao2 on Dev1 are writing A).  What kind of behavior do you get if you include the interfaces in the same Create Channel node.  

The constants wired to the two nodes would look like:
Dev1/ao0:1

Dev2/ao0:1

 

You'll lose the ability to assign a name to each individual line, but it may improve the code's ability to synchronize things.

 

I'm still playing with some things on this side to see how else we can synchronize this.  I'll try to hunt down those cards tomorrow to replicate your setup.

 

You may find the article, Synchronizing DSA, S Series, and X Series Devices With a Single NI-DAQmx Task of interest.

 

Best regards 

Matthew H.
Applications Engineer
National Instruments
0 Kudos
Message 5 of 16
(4,034 Views)

Thanks again for your help on this problem. I was wondering if you found 6110 and 6711 cards and were able to replicate the behavior I've observed in my setup. 

 

Regards,

Dan H.

0 Kudos
Message 6 of 16
(4,020 Views)

Hello Dan,

 

It looks like the cards will come in sometime tomorrow.  I will be able to work on replicating your setup at that time.

 

Thank you so much for your patience,

Matthew H.
Applications Engineer
National Instruments
0 Kudos
Message 7 of 16
(4,011 Views)

Thank you very much for the update and for being so thorough in working up this problem. I really appreciate it!

 

Regards,

Dan H.

0 Kudos
Message 8 of 16
(4,009 Views)

Hello again.

 

I was just curious if you were able to replicate the setup, and the synchronization problem. Thanks again for your help!

0 Kudos
Message 9 of 16
(3,952 Views)

Hello Dan,

 

I apologize for not updating you sooner.  I had an issue with the 6110 that made it my way (mechanical in nature).  When I find a replacement I'll get things put back together and try to see what needs to be done to get the cards operating simultaneously.

 

Best regards

 

 

Matthew H.
Applications Engineer
National Instruments
0 Kudos
Message 10 of 16
(3,944 Views)