Machine Vision and Image Processing With CompactRIO: The Ultimate Multipurpose Controller


Machine vision is a common element of advanced control systems in the Industrial Internet of Things (IIoT)1. Traditionally, machine vision applications operate within a separate subsystem that links to the main controller using an industrial network.  This approach has several drawbacks, including the latency of the industrial network, and the extra cost and complexity associated with having multiple subsystems.  This ultimately limits the level of integration that can be achieved, which is further problematic when you consider that design teams must reduce complexity and improve integration to lower overall cost and get to market sooner.  As technology evolves, so must your approach – simplify system design with CompactRIO: the ultimate multipurpose controller.


NI CompactRIO as a Vision Controller

With native connectivity for USB and Gigabit Ethernet, you can connect machine vision cameras directly to the CompactRIO controller, allowing you to integrate machine vision alongside motion control, industrial I/O, and advanced measurements within a single, high-performance controller.  Additionally, you can customize the user-programmable FPGA within the intuitive, graphical LabVIEW FPGA environment to perform high-speed image processing without knowledge of traditional FPGA hardware development tools such as VHDL or Verilog.  Processed images can be used within advanced algorithms or as inputs to control loops running on the FPGA – which is particularly useful in vision-guided motion applications where cameras are used to gather position or velocity information for a motion control system.

Figure 1.  
The NI CompactRIO platform delivers direct connectivity to machine vision cameras, and allows you to combine vision acquisition with other measurements and control tasks.

Machine Vision Software

The Vision Development Module for LabVIEW includes thousands of machine vision and image processing functions that can be deployed across NI’s hardware platforms, including dozens of function blocks specifically for the FPGA.  With these built-in operations, such as functions for efficiently transferring images between the CPU and FPGA, you can focus on algorithm development, instead of low-level drivers, middleware, and data transfer mechanisms.  To help you develop your machine vision applications quickly, the Vision Development Module also includes the Vision Assistant -- an algorithm development tool for rapidly prototyping advanced vision algorithms.  With the Vision Assistant, you can quickly adjust and iterate on machine vision algorithms by selecting, applying, and connecting hundreds of built-in processing functions, and immediately see the results on sample images, eliminating the need to deploy code or test with live images. When the algorithm is complete, the Vision Assistant automatically generates LabVIEW code complete with the necessary CPU and FPGA libraries and pre-configured DMA channels to transfer images between the CPU and FPGA.  

Learn more about the Vision Development Module.


Figure 2.  The Vision Development module is a library of powerful machine vision functions that can be deployed across NI’s hardware platforms.

Selecting the Right Cameras, Lenses, and Lighting

Choosing the proper components for your vision system is an important task.  For optimal results, one must consider various characteristics of the imagining environment as well as the object(s) being imaged. To help you find all of the components for your machine vision system in one location, NI has partnered with industry-leading vision suppliers such as Basler, Edmund Optics, and Advanced Illumination for cameras, lenses, and lighting solutions.   

Learn more about more about the fundamentals of vision lighting
Learn more about setting up a vision acquisition system.


Figure 4.  Choosing the correct camera, lenses, and lighting for your vision application requires careful consideration. NI has partnered with industry-leading vision manufactures to provide the necessary components for your system.

Next Steps

Improve the integration and performance of your next machine vision application with CompactRIO:  The Ultimate Multipurpose Controller.  Learn more about the CompactRIO platform, or read more about the CompactRIO Controller.

1Source:  IMS Research (now part of HIS Inc.)Forecast presented includes only embedded vision systems and system predicted to include the installation of augmented reality, video analytics, or similar embedded vision applications.

The registered trademark Linux® is used pursuant to a sublicense from LMI, the exclusive licensee of Linus Torvalds, owner of the mark on a worldwide basis.