04-04-2011 03:14 PM
Hello!
I am getting error code while running this VI. The error code read as " Error 1 occured during Fush queue in Queue Processing .." Can Somebody guide me with a solution and also send me a link wherein details of Queue processing is given.
Regards
Shashi
04-04-2011 03:33 PM - edited 04-04-2011 03:41 PM
Due to the queue ref branch, the flush queue can happen after the release Queue is called.
You need better data flow with your queue ref to make sure you do not release the queue before all other queue functions are done.
What is the need for the queue set to size 10 where you only put 1 item in it.
Plus you will not be able to read the queue until the time structure is completed.
Why not just pass the data out?
I am just not sure what it is you are trying to do.
04-04-2011 03:35 PM
Most likely the Release Queue executed before the Flush Queue so the Invalid Input Parameter was the Queue reference.
You Dequeue and Preview Queue Element in parallel with only one element in the queue. You have no way of knowing which will occur first, as you found out.
What are you trying to do. There is almost certainly an easier way to do it.
Lynn
04-05-2011 12:17 PM
The problem statement is "I am trying to store 10 datas in a queue and then send it once i get 10 datas in queue. For this i have tried to consider the case so that i get the data every 10ms and so when it is the end of 100 ms i am expecting all the data from the queue"
I am naive to the concepts of flush and release queue. It would be great if u can send some link where i can read this in detail.
With best regards
Shashi
04-05-2011 12:36 PM
I would start with the help files. Look at the detailed help for the queue VIs. Also search the documentation for queue usage.
It appears that you may be new to LabVIEW also because the issue of which VI executes first is fundamental to the dataflow paradigm on which LV is based. The on-line tutorials are good places to start.
Lynn
04-05-2011 02:02 PM
@differential equation wrote:
...so that i get the data every 10ms ...
If you are running on a Window based system you should be able to loop and push data on a queue every 10ms "most of the time", but every now and then due to Windows, you will not make it back around your loop by 10ms.
The Window related delay can be 30ms or more. Unless your time loop is on a real time system or FPGA you will not get a constant 10ms data reads.
How are you getting your data? If you can, you need to set up the 10ms data acquisition at the hardware level. If you are using a DAQ hardware device it can be setup to acquire data every 10ms. Your loop in LabVIEW just needs to read the buffer when it can and get all data. The DAQ device's data buffer in effect becomes your queue.
We still are not sure just what it is you are trying to do. Trying to store 10 "datas" from where and sending it to where?