03-07-2007 06:38 AM
03-08-2007 04:36 AM
Hi eesen,
There are serveral examples for synchronization. The best way would be to use the LabVIEW Example Finder (LabVIEW>Help>Find Examples) and search for a example using 'synchronize' as search string.
The synchronization is done in hardware e.g. by sharing the AI sample clock to the AO.
BR, Christian
03-08-2007 06:06 AM
This is not answer to my question. I need an exact and clear answer. ( I look every DQA example as you mentioned.)
If I used the samling vi (attached at my pervious message) , how is the be sample and read cylcles.
Is there any body to know the detail of the samling process cycling?
03-08-2007 06:24 AM - edited 03-08-2007 06:24 AM
eesen,
So, if you want to know how your VI works, in therms of aquisition and data transfer from the board to the application software (so there is no synchronization), then this is quite easy to answer. If you configure the acquisition Task for continous and the sample rate at 1kHz, then the mentioned channel will be sampled with a hardware clock with 1kHz. The number of samples at this point is the buffer size in your RAM, where the sampled data will be transfered from the card into this buffer via DMA. Then the application software, in your case LabVIEW, reads this buffer with a rate of 1kHz, as you configured the timing of your timed loop. So the last one is software timing of your operating system, and this is not deterministic! You can see the number of samples as a buffer in your RAM to avoid loosing samples if another windows task with a higher priority is disrupting windows!
E.g. if you configure a task with a sample rate of 100kHz, with a number of samples of 100 and place the DAQmxRead.vi within a timed loop with 200ms timing you will get a buffer overflow error!
I hope I answerd your question now clearly!
Christian
Message Edited by Christian_M on 03-08-2007 06:24 AM
03-09-2007 03:11 AM
Do you mean that sampling and reading run independently? so non of my drawing shows the right case:( Am I correct?
You said that using software timing is not deterministic, as far as I know, PCI -6289 card does not support Hardware timing.
Is this means that I can't make deterministic data acqusition with PCI -6289 card?
03-10-2007 10:57 AM
Hi eesen,
Sampling is done in hardware with the rate you specifiy, so if you take samples continuous with 1000Hz and specify the number of samples to 1000, then you will have a buffer in your RAM with the size of 1000 samples. What your now meaning with software timing is the rate with which you are reading the samples out of this buffer! So, between the samples there is always 1ms!
The best would be to read the M-Series Help, or DAQmx help for more information on sampling!
BR, Christian
03-11-2007 10:29 PM
03-13-2007 07:58 AM - edited 03-13-2007 07:58 AM
Message Edited by eesen on 03-13-2007 08:00 AM
03-15-2007 03:01 AM
03-15-2007 10:29 AM - edited 03-15-2007 10:29 AM
Message Edited by Raajit L on 03-15-2007 10:30 AM