Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Verifying UUT Orientation Using Vision Builder

Solved!
Go to solution

Hi,

I would like to implement a vision inspection system that ensures a UUT is placed under the camera at the exact orientation every time without using test fixtures. Once it's placed correctly it will run its inspection for existence of parts. What is the best way to ensure the UUT is correctly placed under the camera?

Thank you in advance!

 

0 Kudos
Message 1 of 6
(2,981 Views)

Hi TNH1,

The easiest way to handle this is to actually use part of your image processing to reorient the image in software. That is, you can adjust the image so that the part is facing the same way when you start processing. 

 

The easiest thing to do would be to perform a pattern match or geometric match on the image using one of the features. This allows you to define a coordinate system to which all your other inspection steps can be relative.

A good example to look at would be the Geometric Matching Example. It's very similar to what you describe, and can be found in the following location (depending on your Vision Builder version):
C:\Users\Public\Documents\National Instruments\Vision Builder AI 2015\Examples

 

I would make sure to read some of the documentation on geometric matching to ensure you understand the correct way to setup the system as well.
http://zone.ni.com/reference/en-XX/help/370281AD-01/TOC21.htm

http://zone.ni.com/reference/en-XX/help/370281AD-01/nivisionconcepts/what_to_expect_from_a_geometric...

http://zone.ni.com/reference/en-XX/help/370281AD-01/nivisionconcepts/geometric_matching_whento/

Charlie J.
National Instruments
0 Kudos
Message 2 of 6
(2,936 Views)

Hi Charlie,

Thank you for the response. I should elaborate on this further: The purpose of this inspection is to ensure that an operator orients the UUT correctly before any test is to be executed. So, it would have to be something that is dynamically capturing and processing the image as the operator orients the UUT to a desired fixed location. Once it is placed correctly, then a test can be performed. Is this something that can be done?

0 Kudos
Message 3 of 6
(2,930 Views)
Solution
Accepted by topic author LNH02

Vision Builder has the notion of Coordinate System. When you create an inspection, all the inspection steps that are based on region of interest can be repositioned based on a coordinate system and all your measurements will be taken at the same location inside the fixture. In other words, you don't need the fixture to be position at exactly the same place between 2 images, to ensure that the measurements you'll make on the object inside your fixture will be at the correct place.

The Tutorial 1 - Coordinate System.vbai example illustrate the concept of coordinate system.

 

You can use functions like edge detection, intensity measurements or pattern matching to ensure that your entire Object Under Test is within the field of view or at a specific position, before starting an inspection and placing limits on the positions/measurements found.

 

But again, Vision Builder provides tools and functionality that does not require the UUT to be at exactly the same position between 2 images, for the measurements to be made at the same place relative to your fixture.

Message 4 of 6
(2,925 Views)

Hi ChristopheC, Charlie,

 

I used the coordinate system, but I am not getting the results I am looking for between runs. Maybe it's my setup. Please let me explain my application:

I have holder or nest that contains 4 independent, non-attaching round object (from camera's point of view). Inside each round object are 6 other small circular objects located uniformly (equally spaced) along the edge of that outer circular object. The ultimate goal is to detect all 6 objects one by one for all 4 outer objects.

Assuming that each outer object will not be in the same orientation each time it is placed inside the nest under the camera, how do I set up the vbai. such that I get the same results between each test?

 

I've attached a diagram for your reference.

 

Thank you.

 

0 Kudos
Message 5 of 6
(2,890 Views)

Hi TNH1,

In the case CristopheC describes above, the idea is that the relative position of all the features could be determined or found from some initial coordinate space. However, in your case there are 4 completely independent items you wish to inspect in the image which may or may not have the same relative positions to each other in each test.

With that said, it's not impossible to accomplish the same. Instead of performing the inspection for all 4 items from the same point of reference or coordinate space, you will need to find a reference point for each object.

 

The Pattern Match step mentioned before has a setting to find multiple instances of the pattern in the Settings tab for the step. From there, you can perform an inspection on each individual item using the pattern matches as your reference. All you would need to do is select a different coordinate space for each iteration.

While not set up for multiple objects, the Detect Objects Example might be worth looking at as well. It might give you some ideas on how to approach your overall inspection.
"C:\Users\Public\Documents\National Instruments\Vision Builder AI 2015\Examples\Detect Objects Example.vbai"

 

 

Charlie J.
National Instruments
0 Kudos
Message 6 of 6
(2,865 Views)