01-10-2013 04:22 AM
Hi guys,
I am performing multiple test inspections via vision assistant. The tests include capturing LEDs,patterns and character recognition. There are a series of tests to perform but i am trying to wrap my head around trying get the camera to capture a flashing LED. Any advice helpful.
Damien
Solved! Go to Solution.
01-14-2013 09:34 AM
Hi Damien,
Are you looking for any specific advice? It may be useful to grab a set of images and try to filter the image by colour intensity. This will help distinguish an LED which is either on or off.
Please let me know if that helps!
01-14-2013 10:13 AM
Hi,
Thanks for the reply,
I have my camera inspection set up where i call a vision express vi with a single acquisition type and can recognise if an LED is on or off, character recognition and pattern matching etc.
But what i am looking for is to pick up a flashing LED so that within my inspection i can see that yes the LED flashes on and off. I have thought about
implementing the finite acquisition type and capture 3-5 images and setup my inspection to recognise the LED is on for 1-2 images and off for the other 2-3?Would you have any other suggestions as to how to pick up a flashing LED in an inspection.
Thanks
Damien
01-14-2013 10:36 AM - edited 01-14-2013 10:37 AM
Hi Damien,
This would be a suitable method, If you have already set up recognition so that an LED is defined either on or off it would be safe to assume that if there is a difference of state between a short period of time then this is a blinking LED. This should be easily done in LabVIEW with a shift register and a comparison node. Is this LED going to blink at different rates?
01-14-2013 10:55 AM
No the LED will flash at around 50Hz for this one test the other test inspections the LEDs stay either on or off. With the shift register and comparison node how would you configure this in accordance with an express vi? I have attached one case structure with a camera inspection so show you how i have my vi set up.
Damien
01-15-2013 10:10 AM
Hi Damien,
I see that you've done many things at once inside that VI, if you use a mask on a region of interest you can speed up the acquisition process.
It's difficult to understand what is happening inside the VI, but if you have a Boolean output for the LED being off or on then you should be able to place the imaging process in a loop to take several of these images, and then make a comparison between the last LED status and the current LED status to see if a change has occurred, if it has then the LED is flashing.
01-16-2013 02:01 AM
Hi Ben,
I am not quite sure what you mean by using a mask in the acquisition process. Thanks for the advice with regards to making the comparison.i will attempt to implement this.
Regards,
Damien
01-16-2013 05:13 AM
Hi Damien,
Sorry, if the camera has the ability to acquire from a region of interest, this can be found during the acquisition settings for your camera. You'll be looking to set the acquisition mode to "Finite Acquisition with Post Processing" and the settings to use a region of interest can be made in the next step. Your comparison can be contained inside a for loop indexed by the array of images.
I hope that helps.
01-16-2013 06:14 AM - edited 01-16-2013 06:14 AM
Hi Ben,
I have attached a vi i put together, whereby, I set up the acquisition to be inline. I acquire the four images and outside the loop i set up my comparison to expect a certain boolean array. Would the post processing be a more efficient way of achieving the same result?
Damien
01-16-2013 07:17 AM
Hi Damien,
It is yes, since you'll be able to acquire images at a faster rate. I'm assuming you don't need to see the images as they are taken so you will only need to call the function to acquire once. It means that the acquisition doesn't have to wait for the processing to finish before taking the next capture.