From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Trouble using two DAQ Assistants in one case

I'm trying to acquire 4 voltage signals from a 9205 and also an encoder position (digital signals from an absolute multi-turn encoder) on a 9425.  When the task is triggered, I need to save the 4 voltage signals corresponding to the changing position to a TDMS file.  The VI worked before I attempted to add the encoder position DAQAssistant.  The error message I get is as shown below:

 

Error -201062 occurred at DAQ Assistant



Possible Reason(s):

Measurements: Selected lines do not support buffered operations.

Ensure only lines that support buffered operations are being used in the task. If using change detection, the task must be changed to non-buffered hardware timed single point to support these lines.

Device: cDAQ1Mod4
Physical Channel Name: port0/line0

 

Is there a way I can acquire and log these 5 signals together?

 

Thanks,

Mike Voll

0 Kudos
Message 1 of 7
(2,996 Views)
Try and post screenshots of the two DAQassistant configuration frontpanels. We need to know what exactly you configured in order to say what you could do to fix it.
Regards,
André (CLA, CLED)
0 Kudos
Message 2 of 7
(2,971 Views)

Hi Mike,

 

The 9425 is a software-timed module, so you can only read a single value.  If you are using the DAQ Assistant, this would correspond to using the "On Demand" timing setting in the configuration window.

 

Typically one would use a correlated module (such as the 9423) for encoder measurements.  In this case, you would have access to the built-in counters on the 9172 chassis.  Currently with the 9425, you are limited to software-timed digital I/O.

 

 

-John

John Passiak
0 Kudos
Message 3 of 7
(2,942 Views)

Thanks John.  Unfortunately, we are tied into using an absolute multi-turn encoder that will only interface with the 9425.  The module documentation indicates 7 microsecond response time and yet when I try to use DAQ assistant, I am lucky to get 100ms.  Is there any way of grabbing these samples at or even 1/4 of rate (30 to 143 KHz) and stuffing them into an array buffer or something for subsequent processing?  We are trying to corelate the encoder position with analog tonnage signals we are grabbing from the 9203 and 9205 modules.

 

Please advise,

 

Thanks,

Mike

0 Kudos
Message 4 of 7
(2,906 Views)

Hi Mike,

 

While the 9425 product page does mention a Maximum Rate of 140 kHz (about 7 u seconds), the limiting factor here is how fast the loop rate can execute in software since the timing is Software only.  To increase your loop rate, I would recommend using the lower level DAQmx functions so you have more control over the execution of your task.

 

In particular, I would try looking at the example finder (Help >> Find Examples...) for the following:

Hardware Input and Output >> DAQmx >> Digital Measurements >> Read Dig Chan.vi

 

This should show you how to use the lower level functions to perform a Digital Read.  I would use this as a starting point for this portion of your application.

 

 

-John

John Passiak
0 Kudos
Message 5 of 7
(2,893 Views)

Thanks John.  That explains why we can't acquire position at production rate.

 

One other issue we're having now is having the DAQAssistant acquire two consecutive good samples in a row.  We have the acquisition inside a case structure inside a while-loop and we only get good acquisitions on every-other-trigger.

 

Is there a way to "flush" the DAQAssistant buffer at the end of each cycle?

 

Mike

0 Kudos
Message 6 of 7
(2,819 Views)

Hi Mike,

 

I would still recommend looking into the example I linked previously--it should run faster and give you a better idea of what is going on in the code.

 

Since you are reading a single value every loop iteration, there is not really a DAQ Assistant buffer to speak of--you would have to progammatically ignore every other sample. 

 

Ideally we would like to diagnose the problem at its root cause.  What is the signal you are measuring, and what do you mean by a "good sample"?  Again, typically one would use the on-board counters on the 9172 for encoder-type measurements, what is the end goal of your application?

 

-John

John Passiak
0 Kudos
Message 7 of 7
(2,805 Views)