Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

How to acquire movie in a fixed frame rate

I want to use an Allied Bonito CL-400 camera to acquire a movie at a fixed frame rate of 500 fps (an image each 2 ms). I need to have a controlled application, meaning that I need to know when each frame was acquired. How can I do this in Labview?

Currently I am acquiring the movie using the extract buffer vi inside a while loop and I am also saving the time by using the tick counts. What I noticed is that my datarate oscilates whitin 1,2,3 and 4 ms (see iteration times in im3). Also, when I open my camera in MAX I see that the datarate oscilates around 500 fps.

Thanks

Download All
0 Kudos
Message 1 of 2
(4,055 Views)

Reading the ms timer is not a good way to check the timing of your camera, especially at high speeds like this.  It only tells you when you read the image from the buffer, not when the camera acquired the image and put it in the buffer.  There could be a several ms delay between those two events.

 

You need to trust the timer on your camera.  If it says it is acquiring at 500 fps, then it probably is.  The only way to verify it is to have the camera send out a pulse at the start or end of each acquisition, and use a counter timer to measure the pulse spacing.

 

The only way you can synchronize your camera with your other data is to start both simultaneously, and time both of them off the same clock.  Either use the camera pulse to trigger analog data, or use the analog pulse to trigger camera data.  If your acquisition isn't too long, you can just use a start trigger for both of them and use independent clocks for the acquisitions.

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 2 of 2
(3,989 Views)