Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

How can I trigger an external device with the FG card when an image is captured?

System:  PCI 1428 Frame Grabber Card, Redlake MS4100 camera

 

I need to figure out how I can trigger an IMU that accepts in event input using the frame grabber card.  The IMU has to receive the trigger pulse at or very near the exact time an image is captured by the camera.  Is there a way to trigger using the FG card that will provide the accuracy that I'm looking for?  Also, maybe this isn't the best way to accomplish what it is I'm trying to do.  Does anyone know of another way that would also work?  I want to stay away from triggering the camera and would rather trigger the IMU because of problems I've had in triggering the camera in prior tests.  I'd like to tie into or sense when the capture command is given and use it to generate or cause a trigger pulse to be produced at the same time.  I still need to be able to tell the camera at what rate I want the images captured, which is done currently by using the camera interface software (DT Control)to tell it to save every 10th frame for instance or every 38th frame depending on the time interval I'm needing between images.  Hopefully this is enough information for someone to help me.  I'm still trying to learn the way an image is captured and the relationship between the camera, the FG card, and DT Control, the camera interface software, so any help would be greatly appreciated.

 

Thanks in advance!

 

0 Kudos
Message 1 of 13
(4,507 Views)

Hi dirtpics,

 

What is the reason for not triggering the camera? The easiest would be to send the trigger to the IMU and camera at the same time.

Jeff | LabVIEW Software Engineer
0 Kudos
Message 2 of 13
(4,489 Views)
I tried triggering the camera from the IMU earlier using it's output of one pulse per second and the camera for some reason only acquired an image every two seconds.  I don't really trust it because of this, but if I can resolve this problem, I would have nothing against triggering both units simultaneously.  Regardless, I have to trigger the IMU so that I have one data entry per trigger pulse it receives, which I could then match to each image acquired to avoid having to match up timestamps between the two seperate data sources.
0 Kudos
Message 3 of 13
(4,487 Views)

Many cameras have digital outputs available straight from the camera.  The default signal is usually a pulse that indicates when the camera is taking a picture or just finished.  I would assume you could use this signal to trigger your IMU, if it exists.

 

The frame grabber may have the ability to output the same sort of signal.  Most of them do.

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 4 of 13
(4,485 Views)

Hi dirtpics,

 

You may be able to send a trigger out of the framegrabber into IMU and back into the framegrabber for acquisition. Would that work for your application?

Jeff | LabVIEW Software Engineer
0 Kudos
Message 5 of 13
(4,468 Views)

The IMU doesn't appear to have the ability to return a received trigger pulse, so I'm not sure that I'd have that option. 

 

Using NI's "MAX" software I am able to issue a snap command that tells the camera to acquire an image.  I'm wondering if I can use that same command (behind the scenes) to tell the FG card to produce a trigger pulse through its trigger port and using a breakout cable that goes to the IMU event input pin on the I/O port I could trigger the IMU.  What I don't know is what issues the "capture " command that causes the image to be acquired.  Is it the DT Control software for the camera or is it the FG card.  That whole relationship between the camera, the camera's interface software (DT Control), and the FG card is a large unknown to me, when it comes to controlling the camera and acquiring images.  Any help here would be very useful!

 

Thanks for everyones input so far!

0 Kudos
Message 6 of 13
(4,442 Views)

Hi dirtpics,

 

How is your camera configured in terms of shutter specifications? If you open MAX and go to the settings for the camera, are you in a trigger mode or continuous mode? If you're in continuous mode the camera will continuously send images and we're just picking up the latest one off the framegrabber.

 

If you were using one of the PCIe boards, you could set it to triggered mode where you simply configure the Camera Control (CC) lines to have a direct routing (meaning pass through of a signal from RTSI, External, etc.) out to the camera to trigger it.

 

Since you are using a PCI board, you could use indirect routing, where the board reads in a trigger and sends out another one.

 

So are you in continuous mode? Or other?

Jeff | LabVIEW Software Engineer
0 Kudos
Message 7 of 13
(4,419 Views)

Hey Jeff,

 

As far as I know, I am in continuous mode.  Through the serial connection to the camera I can change integration and gain settings, etc... using DT Control (camera interface software) though .

0 Kudos
Message 8 of 13
(4,415 Views)

Hi dirtpics,

 

If you aren't using a triggered mode on the camera, you can't be guaranteed the exact moment the picture will be taken. The framegrabber will grab the last completed buffer, which may be milliseconds before the trigger - but perhaps that is acceptable for your application?

 

Go into MAX and find your camera. Check the shutter mode there and see if you have the option of configuring the CC lines for triggering.

Jeff | LabVIEW Software Engineer
0 Kudos
Message 9 of 13
(4,396 Views)

Hi Jeff,

 

 There is a setting within the camera software that I can set it to receive a trigger through the FG Card or the BNC connector on the back of the camera.  I messed around with it a little yesterday, but was unsuccessful.  Without the framegrabber being told to send a trigger to the camera through the Camera link cable, I assume it won't work.  I just don't know how to tell the camera to issue triggers either through the camera link cable or the trigger port on the card along with a breakout cable.  Is there an easy way to tell the FG card in MAX to trigger the camera directly?  I did install the newer version of the driver for the card and it had trigger options, but the version that I have installed now is 2.61.0 (NI IMAQ) and it doesn't have any trigger options under the interface properties in MAX.  I attached the *.icd file for our camera in case it might be any help.

 

Thanks!

0 Kudos
Message 10 of 13
(4,390 Views)