Message Edited by weichengatech on 06-12-2007 09:06 AM
It isn't clear how you are running the acquisition on the computer end. If you are using Grab, you will miss images on a regular basis. A buffered ring is the only thing that will work for high speed acquisition.
Are you using a buffered ring acquisition with a large number of buffers (I would use several thousand)? Are you reading all of these buffers in order instead of last one acquired?
For a quick test, acquire a sequence of several thousand images at high speed. The sequence works just like a buffered ring, but doesn't loop. This will show if you can capture every image coming in.
Message Edited by weichengatech on 06-12-2007 02:08 PM
The high level grab only has a 1 image buffer. If you don't read it before the next image is acquired, it is gone forever. This is definitely your problem - you aren't reading images at 2000 images per second, and you are losing the ones in between. You have to acquire them into a large buffer and read the buffer sequentially.
Look for a sequence example in the IMAQ examples. It is a high level operation. You might be better off just finding a LL ring example and skipping a step.
The buffer size isn't critical. It depends what you are doing with the images and how much other stuff you have going on in the program. You just want to make sure it is big enough that the buffer doesn't overflow before you get back to it to process more images. It doesn't hurt to make the buffer too large, unless you start to run out of memory. Your images are really small, so that shouldn't be an issue.
recently I updated my system to PCIe-1430 frame grabber, Intel Core2 E6600, Labview 8.6
According to above suggestions, I run the capture at the LL ring mode, but the fastest frame rate is till very slow, only 20fps, way much lower than the speed supposed to be.
I attaced my code here,
two steps are shown:
I'm wondering is there any mistake on this LL ring code?
any helps will be appreciated!!! Thank you veyr much
Everything looks okay to me, but it is easy to miss small details when you can't run the code.
Have you tried acquiring with the same setting in MAX? What frame rate do you get there?
Try disabling the case structure that does the time stamp. Building an array could be slowing you down, but that is doubtful.
Many cameras are limited by the exposure time. You can have a camera capable of 100 fps, but if you use a long exposure time it becomes the limiting factor. I would try adjusting your different parameters and see if they change the frame rate.