06-12-2007 03:28 PM
06-12-2007 06:05 PM
06-13-2007 11:11 AM
02-14-2008 10:13 AM
That's exactly what I'm trying to do with a PCIe-8231 and a Scout, but I could use one more hint. I can acquire an image in NI's MAX utility by configuring the Acquisition attributes and then clicking the Execute button for the 'Generate Software Trigger' attribute.
I tried this on a Basler Scout that we have and only a single frame was generated in this mode when triggered via a software trigger.Eric G
02-14-2008 01:24 PM
02-14-2008 02:11 PM
04-13-2012 05:38 AM
Hi Eric,
Your post dealing with the triggering of a GigE camera using software Trigger in Labview is now 4 years old, but I am currently experiencing the same problem in my application. I am creating a Labview program to acquire images from a Basler (acA2500-14gm) camera, and can't really understand how to generate an equivalent to the MAX-command "Execute" within Labview. Your post helps me to understand how it works, but it is still not clear how to implement the "command type" required by the SoftwareTrigger attribute...
I have attached an image showing what I have implemented so far. By setting the "TriggerMode" attribute to Off, the acquisition starts as soon as the vi is executed, which is fine. However, by setting the "TriggerMode" attribute to "On", there are no error messages but the acquisition simply doesn't start by clicking the execute button and a timeout error occurs after 5 seconds... Could you give me some precisions about how to implement an Execute button?
Thank you very much in advance for your help!
Regards,
Ben
04-16-2012 03:12 PM
Hi Ben,
If you can run your code without errors and then you get a time out usually that means the camera is not receiving the trigger. Please look at the documents below, they outline how to set up a task and shows an example for triggering with a GigE camera. If you are just trying to have your camera acquire after a user presses execute (and not worried about timing) you could use the Grab.vi example and put is within a Case Structure inside a While Loop and have you execute button controlling the Case Structure.
Triggered Acquisition GigE IMAQdx
https://decibel.ni.com/content/docs/DOC-7501
Acquiring from GigE Vision Cameras with Vision Acquisition Software - Part II
http://zone.ni.com/devzone/cda/tut/p/id/5750
Creating a Task in NI-DAQmx and Using it in LabVIEW
http://zone.ni.com/devzone/cda/tut/p/id/5374#toc0
Tim O
04-18-2012 08:54 AM
Hi Tim,
Thank you for your answer and the suggestions. Unfortunately I am quite a novice in Labview and I couldn't find a satisfying solution so far, thus I still have further issues concerining this subject.
As far as I understood you, both examples using a DAQ (https://decibel.ni.com/content/docs/DOC-7501 and that with with creating a task) require an external connection with the camera, which I like to avoid. Please correct me if I'm wrong!
Your suggestion to simply use the Grab.vi is good, but the problem is that I want the camera to acquire a certain amount of frames (let's say, 10) after having clicked on "start". In order to be able to control the number of frames to be acquired with my camera (BASLER ac2500-14gm), the "acquisition start trigger" has to be set "On", which in turn requires some trigger signal. If the "acquisition start trigger" is set to "Off", your suggestion to simply use the Grab.vi would work but the camera will acquire frames continuously... How could I implement a simple software trigger like a start button?
Thank you,
Regards
Ben
04-18-2012 06:14 PM
Hi Ben,
On the Ace you are using you could use the Acquisition Start (instead of Frame Start) trigger and set it to be triggered by a Software Trigger. Then you could set the Acquisition Frame Count to 10 frames. It would also make sense to use the Sequence VI rather than a continuous Grab since the camera will stop sending images after those 10 frames and the continuous Grab would time out. Then after you start the camera you could then send a Software Trigger whenever you want to start it. Of course this mechanism is not the best if you want to synchronize with other hardware like DAQ, in which case you'd likely want to use a trigger signal between them to have them be absolutely synchronized.
Eric