Flexible Software Architecture for Portability to Multiple Devices

At the heart of any machine vision system is the image processing software. Recent camera developments provide portability to multiple hardware devices and scalability to other platforms.

Early innovations in machine vision software have laid the foundation for today’s flexible programs, which have evolved from custom-programmed products, requiring a group of engineers to develop and deploy, to the present- day drag-and-drop interfaces with intuitive vision tools. Some programs use an object-oriented approach to describe a vision program as a sequence of steps, where each step, in turn, further processes the data produced by the preceding step.

For a machine vision system, the first piece of data is the image, with an eventual output of pass/fail. Over the years, developers have refined and enhanced the abilities of these steps, making assumptions for the user along the way to produce an easy-to-use interface with fewer parameters to navigate, while at the same time retaining the power and flexibility of the underlying architecture. Applications can therefore be created in a simple environment and then loaded into a broader structure with additional parameters for more complex functionality.

Microscan’s patented software technology recreates objects on a target platform rather than interpreting them, allowing for portability from one hardware device to another. Objects on a smart camera and PC, for example, are the exact implementation and sequence of objects; adding new functionality to a smart camera is the same as adding to a PC. By way of contrast, using an interpretive model would require two separate development efforts.

Figure 4. New software features user-friendly interfaces that can be scaled to more advanced programs and ported to multiple hardware devices.
Today’s machine vision technology also features more flexible software environments and user-friendly interfaces (see Figure 4). WPF (Windows Presentation Foundation) employs the declarative language XAML to define the look of the various UI elements, and how they are linked to the underlying data. The technology separates look and content, much in the same way that HTML and CSS do so for web pages. Developers determine the best way for setting up a program for a richer user experience, independent of the look and feel, without the need to write extensive code.

Looking Forward

Large multi-national companies are increasingly deploying machine vision technology across their plants. Scalable software that can be deployed across multiple cameras, and the flexibility to make system modifications without extensive downtime, are essential to optimizing operational efficiency in global, multi-facility environments. Employees need only be trained on one standardized platform that can be used on many cameras, instead of learning a different program for each piece of hardware. In addition, the user’s time, effort, and investment are protected if the scope of the application grows over time or requires a different hardware configuration.

As more and more industries adopt machine vision, manufacturers of the technology will continue to focus on the ease of use of their products in order to address a range of user levels. Customers are also looking for higher throughput, which means higher frame rates and/or the ability to take one image and run multiple inspections on it — not moving the object or camera and taking multiple images. A higher throughput enables faster job changeover in applications such as PCB assembly. An ongoing emphasis on ease of use will continue to make machine vision more accessible to a wider user group in the years to come.

This article was written by Cathy McBeth, Global Commercial Marketing Manager at Microscan (Renton, WA), or visit

« Start Prev 1 2 Next End»

The U.S. Government does not endorse any commercial product, process, or activity identified on this web site.