LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Error200290

Solved!
Go to solution

Hi all,

 

I got an error200290(DAQmx-write.VI)-The generation has stopped to prevent the regeneration of old samples. Your application was unable to write samples to the background buffer fast enough to prevent old samples from being regenerated.

 

Can anyone help me?

 

Thanks,

Mei

0 Kudos
Message 1 of 8
(3,820 Views)

To avoid this error, you can do any of the following:

 

  1. Increase the size of the background buffer by configuring the buffer.
  2. Increase the number of samples you write each time you invoke a write operation.
  3. Write samples more often.
  4. reduce the sample rate.
  5. if your data transfer method is interrupts, try using DMA or USB Bulk.
  6. Reduce the number of applications your computer is executing concurrently.

In addition, if you do not need to write every sample that is generated, you can configure the regeneration, and then use the position and offset attributes to write the desired samples.

 

See: https://forums.ni.com/t5/LabVIEW/NI-DAQmx-200290-error/td-p/3367064

0 Kudos
Message 2 of 8
(3,817 Views)

Hi Tom,

 

Thanks for your reply. I got these information, but I do not know how to realize them in the VI.... so, can you help me?

 

p.s 4.reduce the sample rate. This one cannot be used as the sample rate filled in is very low.

 

Thanks,

 

Mei

0 Kudos
Message 3 of 8
(3,807 Views)
0 Kudos
Message 4 of 8
(3,802 Views)
Solution
Accepted by topic author M.Mei

In addition to the good advice from Tom, I made a couple mods and comments in place in your code -- the pic will save me from typing 1000 words.

 

 

-Kevin P

 

test modKP.png

ALERT! LabVIEW's subscription-only policy came to an end (finally!). Unfortunately, pricing favors the captured and committed over new adopters -- so tread carefully.
Message 5 of 8
(3,783 Views)

Hi Kevin,

 

Thanks for your correction! Yes, it works well according to your suggestion. But in my application, xy scanning is conducted by two axis galvo mirrors, so, I need to  put 'duplicate' the vi. Error 50103 occurred while error 200290 came again when I used two channel. What should I do to solve this?

 

p.s Should I use Nchan version of DAQmx Write when I use two channels?

 

Thanks,

 

Mei

0 Kudos
Message 6 of 8
(3,767 Views)

Hi Tom,

 

My hardware is galvo mirrors (Thorlabs, GVS012).

 

Thanks,

 

Mei

0 Kudos
Message 7 of 8
(3,764 Views)

RE: error -50103

A good answer was already given here.

 

RE: error -200290

It'll be more productive (at least initially) to change the task configuration to "allow regeneration" while doing Continuous sampling OR change to Finite sampling.

    Either way, you probably need to first troubleshoot your algorithm that generates the 2 channels of data you want to generate via AO.  It'll be important that both channels have the same # points when they're part of the same task.  And the timing of how they vary relative to one another needs to be correct.  It isn't clear that you've got that part worked out yet.  It's pretty easy to make a subvi out of this signal generation and to put a waveform graph on the front panel.  That'll be a *huge* help in refining your algorithm.

 

 

-Kevin P

ALERT! LabVIEW's subscription-only policy came to an end (finally!). Unfortunately, pricing favors the captured and committed over new adopters -- so tread carefully.
0 Kudos
Message 8 of 8
(3,734 Views)