03-04-2008 09:06 AM
03-05-2008 01:45 AM
Hi Thijs,
Why do you want to use two loops? And why do you want to use a Timed loop?
What is the update mode of the chart that you are using?
The most basic example what exactly does what you want is the next:
Example Finder >> Hardware input and output >> DAQmx >> Analog Measurement >> Cont Acq&Graph Voltage-Int Clk.vi
Regards,
Bas van Dijke
AE, Netherlands
03-05-2008 03:27 AM
Thanks for the answer! I thought i'd use two loops with each a different priority, i want to be shure that loop 1 aquires the data with a hardware timed clock (500 Hz) and that loop 2 displayes the data.
The problem that i always have is that when i use a sample frequency of 500 Hz that that the loop udates every 1000ms (i think it has to do with the hardware clock.
I am rebuilding my eyemovement data-acquisition program, so what i want is a loop that is udated say every 1/75 second (refresh rate of my monitor) So that i smoothly can see what the eyes are doing and at the same time i want to aquire the data in EDF format, i allready wrote a VI that converts binairy data in this format, the condition is that i need to write 8 channels 500Hz every second. So there is some sort of need of a buffer that fills up every second and empty's it in my data-file.
Best regards and i really appriciate your time!!
Thijs Boeree
04-22-2008 10:01 AM
Hi Thijs,
I am sorry for the late response.
The problem that i always have is that when i use a sample frequency of 500 Hz that that the loop udates every 1000ms (i think it has to do with the hardware clock.
I don't understand what you mean with this. Could you post some code?
Maybe an idea is to enter a number of samples, based on a known samplerate. And then send the samples with a queue function to the second loop.
You can also contact us by phone. That is maybe more easy.
Regards,
Bas
01-08-2009 03:30 AM
Hi Bas,
Happy newyear! It has been some time that i started with my acquisition program... Still, i used to have a data-acquisition loop with a daq occurence build in, but since that isn't available anymore with the new labview i don't know how to built it...
It very simple what i want to do, but don't know how...
1. I want a very preciese data acquisition with 6 channels @ 500 Hz
2. every 1 second the data has to be written to a file, in chunks of 6 x 500 samples = 3000 samples
3. I want to see every last sample in a waveform graph udated every 10 ms. ( so that I have a smooth update of the data being aquired, like a heart monitor, but this is for eye movement)
Best regards,
Thijs Boeree
01-08-2009 05:21 AM
Hi Thijs,
Thanks for your reply to Bas.
Have your top loop doing the DAQ for 6 channels at 500Hz. Set the number of samples to collect to 3000. In the read DAQ loop (top loop) enqueue the data. In the second loop have a dequeue and a save to file code. (both examples of saving to file and queues in the NI Example finder - Help>>Find Examples).
Why do you want to update the graph every10ms? I would use a chart (which just adds the new data) and place it in the top loop, so everytime it iterates, the new 3000 samples are just added to the chart. Graphs are used when data isn't being continously acquired. It would only show the last 3000samples.
01-08-2009 05:50 AM
Thanks for your fast reaction!
Is there a specific VI that i need to look up, to learn about qeues? I've seen some, but i don't know how to use them in conjunction with the daq story?
Best regards,
Thijs Boeree
01-08-2009 06:02 AM
Hi Thijs,
Thanks for your reply.
I have posted an example in LabVIEW 8.6.
Hope it helps,
01-08-2009 06:08 AM
Thanks so much... but i have version 8.5... Aaaargh!!
Can you convert it to version 8.5?
Best regards!
Thijs
01-08-2009 06:17 AM
Hi Thijs,
No Problems.