Signal Conditioning

cancel
Showing results for 
Search instead for 
Did you mean: 

Multi-rate, Multi-DAQ type Synchronization

Hi Matt,

 

The reason we get a resource error with master time base synchronization is because of the way that the DSA module's timebase source is physically routed; the source (SampClck.TimebaseSrc) itself is used by other resources on the card, so when a SAR card wants to access that timebase, it needs to do so through another route. You can do this programatically by reserving the sample clock terminal (SampClck.Term) before sharing it with the SAR card, which essentially accesses the same timebase through an alternate physical route; this is functionally the same as using the single task method.

0 Kudos
Message 11 of 17
(1,171 Views)

When you say that it is functionally the same as the single task synchronization, are you saying that single task sync. will automatically create the necessary rout to share the timebase? Or are you saying that the sample rates for both tasks will be locked as the same such as in example 3 in the tutorial I linked?

 

 

Thanks,

Matt

0 Kudos
Message 12 of 17
(1,162 Views)

Hi Matt,

 

Single task sync will do both; however, if you use multi-rate and share the DSA timebase terminal (see the snippet attached), the two tasks will be synced via the trigger and can have different rates, as long as the SAR module uses a rate that is integer divisible from the DSA module's timebase.

0 Kudos
Message 13 of 17
(1,155 Views)

Hi Daniella,
What values did you use for the control nodes that you use connected to daqmx timing VI in both tasks?
Right now I have it set as "onboard clock" for the master task and "onboard clock" for the slave task.

I can't just drag and drop your snippet since it's in labview 16 (so it claims) and I'm running labview 15. Can you load it in 15 so I can try it directly?

 

So, I'm attempting to apply these changes to my own code, but I get error -200284. I'm using the same value for sample rate as I use for samples for channel in both DAQmx Timing and DAQmx Read.

0 Kudos
Message 14 of 17
(1,135 Views)

Hi Pittmanm83,

 

I've converted the VI snippet from 2016 to 2015, hopefully you'll be able to use that in your version of LabVIEW now.

Jorr-El
Systems Engineer
Testeract: Automated Test Specialists
0 Kudos
Message 15 of 17
(1,119 Views)

Ty,

Matt

0 Kudos
Message 16 of 17
(1,114 Views)

Ok,

So, it looks like I have managed to go full circle here. This is good though, because when I started this post, I didnt feel like I knew enough to convey the problem in a way that it could be solved. 

I have taken your snippet and edited it to fit the result that I am attempting to achieve.

What I am ultimately trying to figure out, is why I am limited to two channels in the slave task in the snipped I am attaching. The error recieved when attempting to run the full number of desired channels in the slave task (5) rather than the reduced number (2) is -200019, "ADC attempted conversion prior to previous conversion complete." The only thing I can think is that this is related to the speed at which all of the channels are "swept" due to the round-robin fashion of the SAR ADC (since it cannot sample symultaneously) 

Anyway, if it turns out that this just can't work, or is beyond the limitations of the the modules I am using, that is fine. I just want to be able to weigh my options before finaling a rout. 

 

Thanks again,

Matt

0 Kudos
Message 17 of 17
(1,099 Views)