02-22-2010 09:41 AM
Solved! Go to Solution.
02-22-2010 10:32 AM
Hi Darren,
If I had to guess, it is because your buffer mode is set to "Next." Depending on the exact timing between when the camera starts acquiring and when the Get Image starts waiting, you will possibly be waiting for a future image instead of one that was just acquired. You likely want to request buffer 0 directly (also why are you using 10 buffers in a non-continuous acquisition if you only want to acquire 1?).
Also, you may want to restructure your application to put the configure/unconfigure outside of your triggered code and simply do a start/stop. This is much faster than a full re-configuration each time.
Eric
02-23-2010 02:13 AM
Hi Eric
Thanks for the reply.
I've tried setting 'get image' to buffer mode and having config before the loop and 'stop aquisition' inside the loop, all with the same effect.
The delay always occurs in 'get image' so I'm guessing as you say the image has already been sent by the time 'get image' looks for it.
Is it therefore neccesary to introduce explicit timing into the code?
thanks
Darren
02-23-2010 10:47 AM
Darren,
5 seconds sounds suspiciously like a timeout error. When you get this delay do you see an error? Are you triggering these cameras? Can you post your new code?
Eric
02-23-2010 11:48 AM
Hi Eric
below is the version that works when slightly modified and iserted into a triggered loop.
Exactly 5 seconds does suggest a specific timer. I've searched all my MAX settings and those on the PCs network controller and found nothing with 5 second.
Thanks Darren
02-23-2010 11:51 AM
Darren,
The default timeout attribute in IMAQdx is 5000 milliseconds.
Are you triggering the cameras with a hardware trigger? You'd need to ensure you synchronize that with when you configure and start the cameras.
Eric
02-24-2010 03:01 AM