PreciseVision is a machine vision software package that executes on a PC and is intended for applications such as locating fiducials on circuit boards, feeding parts from trays or conveyor belts, sampling fluids and solids in the life science industries, and assembling precision parts in the electronics and mechanical parts industries. This software is designed for motion guidance applications and has a built-in interface to Guidance Controllers that makes incorporating vision information into a motion application extremely simple. All of the complex operations of processing and analyzing the image, extracting key locations and dimensions, transforming the information into the coordinate system of a robot, and transmitting the results to the motion controller are handled automatically by PreciseVision.
PreciseVision comes with a powerful set of tools for locating, identifying, measuring and inspecting parts. A versatile, patented Finder tool can locate and identify parts regardless of their position, orientation or size in a camera’s field of view, based upon a single picture taken to train the object. Other tools can measure the dimensions of parts to within sub-pixel accuracy, test for key features, and manipulate the image data for quality control and precision alignment purposes. Constructing a complete vision process is extremely easy and intuitive within PreciseVision. Vision tools are taught and sized by dragging and dropping them onto a camera image. Tool parameters are presented in a familiar object property table. Multiple tools can be easily chained together into a processing sequence by dragging and dropping them into a process sequence display. Once a vision process has been generated, a single instruction in the Guidance Controller initiates its execution and the retrieval of its key results.
By visually closing the robot’s position loop using a process known as visual servoing, a robot can achieve placement accuracies based on its encoder resolution rather than its absolute accuracy. By looking at both the object and target simultaneously, PreciseVision can determine their relative distance and direction and move the part accordingly. Instead of sending the robot a single motion command in world coordinates as in a traditional vision guidance application, vision sends a series of incremental distance and direction motion commands to a Guidance Controller embedded in a robot. As the robot executes the motion, more pictures are taken, analyzed and new motion commands are issued. This process continues until vision confirms that the task is accomplished. Since the system is constantly correcting for inaccuracies from multiple sources, the system can achieve placement accuracies at the level of its encoder resolution. The tight integration of PreciseVision and Guidance controllers result in a system that can capture, analyze and put corrections into effect dozens of times per second making visual servoing practical for the first time.