Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Triggered Cameralink Acquisition only Capturing Half of the Frames

Solved!
Go to solution

Hello all,

 

I am aware of this page -- http://digital.ni.com/public.nsf/allkb/6FFA526966E2D29386257AA80054730A

 

It describes my problem well, but I cannot find a good solution.

 

I have four cameras that need to be triggered at the same time (they cannot be free-running!)... if I only trigger the cameras, and allow the frame grabbers to run without a trigger, I end up sporadically missing frames at higher and higher frame rates.  At 100FPS I lose about 40% of the data, but around 50FPS I capture all the data fine.

 

When I trigger both the frame grabber cards (1430s) with the cameras, I seem to consistently miss every other frame.

 

I have tried triggering the cameras on a rising edge and the cards on the falling edge, but no matter what I do I end up only collecting half of the frames I would expect to collect over a period of time.

 

Below is a snippet of code that I'm using for the acquisition, is anything glaringly obvious???

 

snippet.png

 

Thanks for any suggestions!

-MK

0 Kudos
Message 1 of 6
(4,681 Views)

All,

 

As an update, I tried the LL Triggered Ring.vi example.  I let the camera be free-running (only used ONE CAMERA), and triggered my card at 100HZ.. the maximum the Frame Rate will go is 50HZ...

 

EDIT:  At 50HZ trigger and below it works perfectly, but as soon as I exceed 50 the frame rate cuts in half

 

How is this possible!?

 

Please help.

 

Thanks,

MK

0 Kudos
Message 2 of 6
(4,592 Views)

It sounds like the fastest your camera can go with an external trigger is 50 Hz.  As soon as you go faster than that, you miss every other trigger because the camera is still busy handling the previous trigger.

 

Will the camera go faster in free run?  If so, it is probably just a hardware limit on triggering.  If not, it could be your exposure time is limiting the frame rate.

 

Did you include details of which camera you are using?  That information would be useful.

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 3 of 6
(4,576 Views)

Thanks for the reply, Bruce.

 

I am using a custom camera based around the FLIR ISC0002 chip.

 

It will free-run up to 107.8Hz, and we can externally trigger it up to there.

 

If I only trigger the camera(s) at 100Hz, I can get the frame grabber to see 100Hz but it often misses frames, which is why I am trying to trigger the frame grabber instead.

0 Kudos
Message 4 of 6
(4,569 Views)
Solution
Accepted by topic author mk@opc

Triggering the camera always works better, in my opinion.

 

Are you doing a buffered acquisition?  The code you posted looks like you are just using Grab, which doesn't use a buffer.  With a buffered acquisition and triggering the camera, you shouldn't have any problems.

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 5 of 6
(4,566 Views)

Right on, Bruce.  Thanks, am transitioning to buffered acquisition now, looks promising.

0 Kudos
Message 6 of 6
(4,564 Views)