06-13-2012 05:09 AM
Hello to all,
I'm a labview user for some years and I've a problem that I'm trying to solve for some time. This is related with the code reuse.
The purpose of my question is to find a way of building a framework that allows me to solve some simple vision tests with the few customizations. I hope that someone can point me a good direction. Because I can't.
My first approach (reentrant and call vi reference):
1. In my configurator I select the number of cameras that I want
2. I developed a vi that manages camera acquisition (error handling, grab, open, start, etc in a state machine). And made it reentrant.
2.1. The captured image is returned in a unique queue by camera (using the camera name to build the queue name).
3. The Main application only needs to read the camera names from the configuration file and using a for loop call (using "open vi reference") N times the "cameraAquisition.vi".
This procedure works well when I the images do not need to be synchronized.
But in the project where this application was developed I needed to "glue" triggered images from 4 cameras to test the product. And this forced me to give up from the good idea that I explained. And I had to do the simple approach where I place 4 grab.vi in parallel.
So I started with the good intention of making a nice generic application (because our product can have many configurations possible) but finished with a solution for only one type of machine.
So... Can anyone give me some tips please. Forgive my simple labview concepts but I never had a Labview course.
06-13-2012 06:50 AM
This will work if your cameras support external triggering (most industrial cameras do).
Set all cameras to external striiering and generate a timed bulse from an external device (such as a counter).