LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Error -200279 DAQmx

Solved!
Go to solution

J'utilise un module NI USB-6000 pour faire l'acquisition de 5 entrées analogiques en tension. Je visualise ensuite ces données sur un Waveform graph. Problème, au bout d'un certain temps l'erreur -200279 se produit et mes données ne défilent plus sur le graphe. J'ai mis en pièce jointe à quoi correspond cette erreur. 

 

J'ai besoin de lire un point toutes les 10 ms. Pour cela j'ai essayé plusieurs réglages tels que :

1000Hz pour 10 samples to read ou 100Hz pour 1 sample to read mais je n'arrive pas à corriger cette erreur. 

Je n'utilise pas le DAQ assistant mais un code générer à partir de celui-ci et adapté à mon besoin. 

 

J'ajoute que pour visualiser les données dans un waveform graph, je viens prendre 6000 points (pour visualiser 1minutes) à l'aide de tableau. 

J'utilise un waveform graph plutôt qu'un waveform chart pour pouvoir utiliser les curseurs. De plus, une fois que mon test est terminé, la boucle while se stoppe et les 6000 derniers points sont enregistrés dans un fichier Excel. 

 

Est-ce que quelqu'un connaît ce problème et a une idée ? 

 

Merci d'avance. Cordialement. 

0 Kudos
Message 1 of 9
(394 Views)

@Labo81 wrote:

I use an NI USB-6000 module to acquire 5 analog voltage inputs. I then visualize this data on a Waveform graph. Problem, after a certain time the error -200279 occurs and my data no longer scrolls on the graph. I have attached what this error is.

 

I need to read a point every 10ms. For this I tried several settings such as:

1000Hz for 10 samples to read or 100Hz for 1 sample to read but I cannot correct this error.

I do not use the DAQ assistant but generate code from it and adapted to my needs.

 

I add that to visualize the data in a waveform graph, I take 6000 points (to visualize 1 minute) using a table.

I use a waveform graph rather than a waveform chart to be able to use the sliders. Additionally, once my test is finished, the while loop stops and the last 6000 points are saved in an Excel file.

 

Does anyone know this problem and have any ideas?

 

Thanks in advance. Sincerely.


See Error -200279: Unable to Keep Up With Acquisition in NI-DAQmx

If you need advise to configure the sample rate and number of sample, post your code.

-------------------------------------------------------
Control Lead | Intelline Inc
0 Kudos
Message 2 of 9
(343 Views)

Maybe the problem comes from m manipulations on array ? 

0 Kudos
Message 3 of 9
(319 Views)

Hi Labo,

 


@Labo81 wrote:

Maybe the problem comes from m manipulations on array ? 


Even though this array manipulation looks highly flawed the answer to your question is "No!".

 

The problem is in your main VI:

  • Why do you configure the DAQmxTiming for "1 sample"? Did you read the help for this function and the SPECIAL meaning of this parameter in "continuous" mode???
  • Why do you read waveforms from DAQmx when all you need is an array of samples?
  • Why do you use all those ExpressVIs (ToDDT, FromDDT) to replace simple array functions like IndexArray/BuildArray???
  • Why do you need formula nodes for (rather) simple scalings?
  • Last, but not least: why do you process your data sample by sample? The main problem is: you read just one sample from DAQmxRead!

Suggestion:

  • Cleanup your VI and remove all that Rube-Goldberg.
  • Read more samples at once, the usual recommendation is to read 1/10 of the samplerate which would be 10 samples in your case!
  • Your "array manipulation" should use BuildArray instead of InsertIntoArray and ArraySubset instead of ReshapeArray. It may even use Rotate1DArray and ReplaceArraySubset to work with a fixed-sized array!!! And it may even handle a 2D buffer instead of 5 instances to handle 5 1D arrays of the same size…
Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 4 of 9
(314 Views)

Thanks for your answer, I try to clean up my VI. 

 

I need to visualize on my graph "Sécateur 1" 1 point every 10ms. I don't understand how it's possible with 1/10 of the sample rate... 

 

I have a last question, formula nodes it's not optimized ? What is better to do ? 

0 Kudos
Message 5 of 9
(305 Views)
Solution
Accepted by topic author Labo81

Hi Labo,

 


@Labo81 wrote:

I need to visualize on my graph "Sécateur 1" 1 point every 10ms. I don't understand how it's possible with 1/10 of the sample rate... 


You cannot recognize images with an update rate of 100Hz, so it doesn't makes sense to update a graph at 100Hz.

You get the same display when you update the graph with 10 new samples each 100ms…

 


@Labo81 wrote:

I have a last question, formula nodes it's not optimized ? What is better to do ? 


You can use simple functions from numerics or math palette…

Basic LabVIEW functions are polymorphic so you can even apply formulas on arrays of samples!

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 6 of 9
(302 Views)

What settings could be the best between 10 samples to read at 100Hz and 100 samples to read at 1000Hz or more maybe like 200 samples to read at 2000Hz in my case?

 

Thanks a lot for your time. I work on my array with your advice. 

 

Best regards. 

0 Kudos
Message 7 of 9
(290 Views)

Hi Labo,

 


@Labo81 wrote:

What settings could be the best between 10 samples to read at 100Hz and 100 samples to read at 1000Hz or more maybe like 200 samples to read at 2000Hz in my case?


On a modern computer there will be only very small differences as handling arrays of 10 to 200 elements doesn't need a huge amount of time…

 

The more important question is: what are your requirements? (What is the frequency in your signals that you need to detect and which samplerate do you need to use to detect those frequencies according to Nyquist?)

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 8 of 9
(281 Views)

I cycle a tool indefinitely. Its action lasts approximately 200 ms and a current peak appears after 30 ms.

 

And I want to visualize the curve as best as possible throughout the duration of the test. The ideal would even be to have a point every 1 ms to have a smooth curve.

 

So my requirements is to find the best setting to have the best precision to obtain the best possible curve.

 

Maybe I have reached the limits of the NI USB-6001 module and need another one?

 

 

0 Kudos
Message 9 of 9
(272 Views)