LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

USB NI 9263 AO underflows randomly

Hello

 

I have a problem with the NI 9263  mounted on the 4 slot usb chassis cDAQ 9174.  Errors encountered are 200621 and 200018, I think it means my AO is not receiving enough data to write. 

 

The error pops up randomly, the longest i've managed to have my program run was 2.5 hr, average around 30 minutes.

 

What my program is doing is sampling 8 sensors using two ENET 9231 as AI (4 channels each) at a rate of 25.6 KS/s continously, reading 10,240 per iteration.  Each AI are in their own timed loop.  The data is passed to two other loops via queues for some processing and file IO (.wav).

 

Some of the processed data is then passed through (i select data from either AIs to send to AO at start) another queue to another timed loop where the NI 9263 AO sits, non regeneration, update rate of 25.6 KS/s.

 

There is another timed loop that controls another device not linked to any NI instruments, its for communicating with a serial device.

 

Altogther I have 6 timed loops (I might make the last loop a while loop) and manually set them to use different cores.  I am using a Dell Precision M6500.  I am currently home and can't upload the program.

 

Is there a work around to avoid underflow?  I can say now that I cannot lower my sampling/update speed, I would actually like to do 51.2 KS/s.

 

Thanks

 

 

0 Kudos
Message 1 of 5
(2,699 Views)

Attaching program and subvis in zip folder.

 

Open "AA main-top VI"

0 Kudos
Message 2 of 5
(2,686 Views)

Hey Lahan,

 

Error 200621 and 200018 will require you to Increase the Samples to Write and/or Decrease the Rate.  This is due to the program not being able to generate data fast enough for the device.

 

For some great community examples on the errors that you are experiencing, please refer to Community: myDAQ Optical Theremin for a more detailed explanation of what is going on with error -200621, and Community: DAQmx: Continuous buffered generation for an in-depth look at error -200018. 

 

Regards,
Jake G.
National Instruments
Applications Engineer
0 Kudos
Message 3 of 5
(2,647 Views)

Hi Jake,

 

I've tried increasing the samples to write and had no real effect, I cannot decrease the rate as i am sampling audio frequency and would like to keep the bandwidth.  I did try to lower the AO update rate and kept the AI rate unchanged but the generated signal was different than the one sampled at AI, for example original analog signal frequency of 1Khz sampled and the generated signal frequency ended up to be something less than 1Khz.

 

I've tried different transfer request conditions and mechanism and the problem still comes up randomly.  There is a property called Underflow Behaviour under Sample Clock option in the Daqmx Timing Property Node that could be set to “pause until data available” but unfortunately labview is saying the 9263 does not support it. 

 

I’ve had a look through the pdf file you suggested and on page 10 and 11 with the “avoid underflow error” equation, how can it ever be true, even if it was wouldn’t it eventually run into an overflow situation?

 

I’ll keep chipping at it.

0 Kudos
Message 4 of 5
(2,610 Views)

Hey Lahan,

 

Since changing those rates did nothing to help, it may be a known issue.  What version of of NI-DAQmx are you using?

 

If you aren't using the latest version, you may try upgrading your DAQmx driver to 9.3 here.

 

It may be an issue with a library handling USB errors incorrectly in an earlier version of the driver.

Regards,
Jake G.
National Instruments
Applications Engineer
0 Kudos
Message 5 of 5
(2,590 Views)