Machine vision, machine control convergence with PC-based automation
Machine vision systems have moved beyond elevated sensors to inspection integrated in controllers. Choosing the right based PC-based automation platform can make them even better.
- Machine vision systems have moved beyond the role of elevated sensors to a complete, integrated inspection solution.
- PC-based automation can improve real-time throughput and system availability and machine vision.
- Choosing the right PC-based automation system will help improve machine vision processing as a whole.
Global semiconductor chip manufacturing companies have promoted the concept of hardware consolidation for many years, and integrating machine vision and PC-based control are among the opportunities.
CPUs with increasing power and performance can load up computationally complex functions previously handled by separate devices. Machine vision technology is no exception as it continues to evolve, and engineers are seeing exciting new capabilities more clearly.
With greater resolution and faster image processing, vision systems have moved beyond the role of elevated sensors to a complete, integrated inspection solution. Proper lighting and lensing principles still determine image quality, but important advances are taking place in other areas.
Integrating machine vision into the machine’s main controller allows machine vision technology to meet requirements in even the most complex, high-speed applications while reducing separate pieces of hardware. This approach ensures everything – from triggering the image to acting on the results – happens within the machine control’s real-time code execution. With the image processing in the machine’s main controller, close synchronization to fieldbus updates, axis positions, and other code variables offer close machine, trigger and lighting synchronization as well as being able to act on the vision results immediately.
Let’s get real-time with machine vision
In automation and controls, real-time is defined by the automation controller running all required code and updating the input/output (I/O) devices at a consistent, known rate. This includes, for example, a motion controller updating the position of its axes at a pre-described rate or frequency. Real-time also means the real-time scheduler is not influenced by tasks outside the real-time environment such as an operating system or other non-real-time software. This consistent, known controller update rate is real-time processing as defined by the DIN 44300 standard, information processing; concepts; programming.
With machine vision applications, the application requirements define the processing rate. For example, one application may require image inspection at a rate of 5 images per second while another application may require image inspection at a rate of 50 images per second. Both example inspections can be defined and processed in a real-time environment with the inspection results delivered to the main automation controller.
The type of vision solution selected impacts the ability to achieve real-time capability.
Four ways to run vision inspection software
Some common approaches to run modern vision inspection software include:
- Smart cameras with an on-board processor to provide required processing
- PC vision: A standalone multi-core CPU running vision algorithms as a process within the operating system, such as Microsoft Windows
- Vision controller: Standalone hardware running a proprietary operating system to provide image processing for one or more remote cameras
- An advanced, multi-core-capable PC-based automation software that handles the real-time machine control along with the real-time vision processing.
When running vision inspection code on a dedicated processor, the amount of time required to complete an inspection is directly related to the processor, processing speed, the code being executed, and the image. Need it to run faster? The choices are reducing image data being processed, optimize the code or get faster hardware.
With traditional PC-based vision inspection running code within Microsoft Windows on a standalone multi-core CPU, other factors come into play. The ability to use multiple cores may reduce overall processing time. However, other Microsoft Windows processes that also have access to these cores along with the Windows management of core sharing between these processes can cause fluctuations in the time required to completely execute the vision inspection code. This creates an additional unknown or variation in the processing time required to complete the inspection. The hardware is often selected to overdeliver, thus increasing cost, which is not only added by the processor, but also by factors such as a larger enclosure, additional power to operate and additional heat generation inside the enclosure that needs to be handled via cooling measures.
An additional requirement of the smart camera, PC vision, and vision controller systems is when the inspection results are determined, these results must then also be communicated to the main machine controller. These results can be simple pass/fail data, or images that consist of large amounts of data. The time required to transfer this data to the machine controller can be of consequence and must also be considered.
Real-time PC for machine vision, machine control modules
A newer approach is processing the vision inspection data on isolated core(s) of an advanced, real-time PC-based automation platform and its accompanying software. On this type of platform, it is possible to run many compartmentalized, machine-control modules, including vision inspection, on one powerful piece of hardware. PC-based software platforms provide a framework for real-time calling of modular software elements.
By modularizing the components within this real-time environment, multiple PLC, C++ or vision inspection modules can be executed independently on one piece of hardware. PC-based automation also offers the ability to isolate processor cores from the system.
Dedicating one or more of these isolated cores to vision processing, for example, prevents other processes from affecting the time required to complete vision inspections. Other processes or modules running on the same platform cause no variation in the timing results. Another benefit is the inspection results, including the images, are immediately available to the main machine automation application which runs concurrently on the same automation software platform.
The real-world benefits of using an advanced, real-time PC-based automation software platform are considerable. These can include higher real-time throughput and system availability than when machine vision is kept separate from the machine control platform. This isn’t just a different way to handle machine vision; it’s a major modernization that can elevate the performance of the entire machine and process.
Integrated machine vision optimizes automated component assembly
Aixemtec GmbH based in Herzogenrath, Germany, develops automated solutions for the precision assembly of electro-optical systems. Assembly solutions for various application areas are based on a comprehensive and modular platform. Until now, multiple PCs were uSed for vision, human-machine interface (HMI), sequential control and machine control. Now a real-time PC-based automation software platform can do these tasks. On the software side, modules for vision, programmable logic controllers (PLCs), motion control, safety and HMI are used.
Certain preparations for the process chain are carried out outside of the real-time environment in a specially developed high-level language program. Here, the PC-based control system allows software modules and user-specific programs to be seamlessly integrated on the same industrial PC. The automation software also supports the necessary communication between other software systems with universal communication interfaces.
Keywords: machine vision, machine control, PC-based automation
How can machine vision and PC-based automation improve your facility?
For more information visit: www.beckhoff.com/twincat-vision