Inside Machines: Embedded Machine Vision Systems, an Alternative to PC Vision Systems
Today’s embedded machine vision systems can help keep manufacturing operations fast and accurate, for pharmaceutical packaging, food inspection, part stamping, and other applications, faster than 200 images per second.
Machine vision users can access a plethora of options for developing and deploying a vision-based inspection to meet specific application requirements, including speeds in excess of 200 images per second. Selecting the proper machine vision technology from these options to solve critical high-speed discrete manufacturing applications can be challenging, because no two automated manufacturing processes are identical. From goods produced and customer requirements to plant environment and material supply vendors, application parameters can vary widely.
Using inexpensive commodity sensors for critical-part inspection, placement, and identification can be very costly in the long run. This results from insufficient inspections that decrease productivity due to rejects and increased downtime. Instead, successfully solving these applications requires an optimized vision system that can maximize product quality and accommodate high production throughput, while remaining easy and intuitive to use.
Designing a PC vision system
PC vision often is used for creating specialized, high-speed inspection, guidance, and identification systems for manufacturing operations. It involves a combination of cameras, optics, and lighting, and complex vision program code, which the user or system integrator writes on a host PC using standard programming languages like C# with purchased vision software algorithms.
Because more sophisticated features are available on computers and digital cameras at a lower cost, PC vision can be an attractive method for designing a custom automated inspection. However, users who are not well versed in writing advanced vision code (much less optimizing the code for the PC processor used and integrating cameras into the equation) may find this challenging. The vision code must be written so the PC program efficiently receives camera images, extracts image features of interest, analyzes the features, and delivers meaningful results to other modules in the automated manufacturing process.
For example, manufacturers of precisely stamped connector pins must inspect each product to verify that the pin’s shape and formation is correct. To do this, the vision program must collect the pin images from the camera and deploy vision code to extract the pin edges. Then, the program needs additional efficient code to determine if the pin’s form and spacing are accurate. Finally, the program must export the collected analysis to an actuator—to remove the part if rejected, or pass it along to the next stage of production—or a manufacturing network controlling the operation.
The initial development stage of a PC vision system can consume hundreds of engineering hours, and the hand-coded design can be difficult to debug, duplicate, and modify for future manufacturing operations. Due to the rapid development of PCs and cameras, the computer and camera models needed to duplicate a system quickly become unavailable; this makes duplication not just difficult, but impossible. Thus, deploying subsequent PC vision systems requires modifying, retesting, and debugging any developed code.
Embedded vision systems
Embedded vision systems provide a convenient, user-friendly alternative to PC vision for solving specific, demanding application requirements. These systems consist of an embedded controller with integrated vision software that is directly connected to one or more cameras, which may range in image resolution and size, imaging rates, and come in grayscale or color. An embedded vision system that accommodates a range of camera types and capabilities allows the user to select the camera with the right price and performance for each application. No customized code is required to capture images in this arrangement, and camera integration requires only a cable connection from camera to controller.
For usability and flexibility, the vision software should allow users to build a specific application program by selecting from a large set of vision algorithms or tools and very specific tool controls that will achieve the required application performance. Vision program-building software is an alternative for control engineers without the time and/or expertise to develop text-based program code. Vision tools are often displayed as icons within the software, so users can drag-and-drop the tools required for a vision inspection task, and each of these tools offers its own control options that can be optimized for a specific task.
While manufacturers of embedded vision systems continue to produce new processors and more sophisticated smart cameras, the user interface (including vision program-building software tools and operation) remains the same. This eliminates the need for new training and extends the usable life of custom vision inspections: Programs written on smart cameras 10 years ago can run on today’s fastest embedded vision systems without redesigning proven custom inspection routines.
Embedded vision controllers commonly output inspection results with standard Ethernet connections to industrial operating networks, such as EtherNet/IP (an ODVA Ethernet protocol), or with simple discrete outputs that accomplish higher throughput speeds. Discrete bits and Ethernet data packets are used to grade, orient, identify, and/or guide products through the manufacturing process.
These features make embedded vision systems useful for closed-loop control. In these applications, product location, orientation, and identification information must be dynamically communicated to other process modules in a manufacturing operation. An embedded vision system delivers tighter tolerances for controlling components and assemblies compared to hard fixturing. In-process vision system use also increases throughput speeds, removing unnecessary handling and labor.
To enhance application monitoring and control, this embedded vision software may contain a program that allows users to build a custom human-machine interface (HMI). An HMI-building program allows users to build a graphical user interface (GUI) that displays the images, inspection results, process statistics, and any controls that operators use to control or maintain plant floor operations. The GUI also may be designed for consistency with company branding or to make operator tasks more intuitive, which can expedite training.
The HMI is a critical component of the vision system. If the camera images and results are not visible to the machine operators, they may not understand why parts are being rejected. A clean, customized front-end GUI greets operators accessing the vision program and adds a layer of security: Program developers can limit user access to critical program tools and tasks to eliminate tampering. Optimal vision program front-end GUIs have password-protected login levels, granting secure ranks of accessibility throughout a manufacturing enterprise.
More parts per minute
Another reason engineers choose to develop their own PC vision inspection is to achieve optimal system operation speeds. Hand-coding a vision program directly onto very fast, yet inexpensive PC processors and using high-frame rate digital cameras often seems like the ideal solution.
Dedicated embedded vision systems, however, are available with proven multicore processors. Embedded vision system code is written to fully and efficiently optimize the speed of its processor. Additionally, camera options on embedded vision systems surpass speeds of 200 full-frame images/sec, accommodating fast-paced production lines—including applications operating at thousands of parts per minute. This same embedded vision system design will accommodate emerging high-performance computers and cameras as they become available, which make the application ready for future technology advancements. Forward-looking features, custom inspection flexibility, and ease of use provide users the machine vision options desired to design more effective, efficient, and accurate plant-floor inspection.
Steve Maves is applications engineering manager, PPT Vision; Edited by Bettina Chang and Mark T. Hoske, CFE Media, Control Engineering, www.controleng.com.
For more machine vision tutorials and applications, see: