CompactRIO: shift for embedded system design


Figure 4
(Click graphic to zoom by 1.9x)

Primary target applications:


Year of specification release:

Year of latest major update:

Design and product information:



Power input:

Real-time controller features:

CompactRIO rugged specifications:

CompactRIO is an advanced embedded control and data acquisition system designed for applications that require high performance and reliability. With the system’s open architecture, small size, extreme ruggedness, and flexibility, engineers and embedded developers can use COTS hardware to quickly build custom embedded systems. CompactRIO is powered by National Instruments LabVIEW FPGA and LabVIEW Real-Time technologies, giving engineers the ability to quickly design, program, and customize the CompactRIO embedded system with easy-to-use graphical programming tools for industries such as automotive, mil/aero, industrial and machine control, and embedded systems prototyping.

Figure 1: CompactRIO diagram (side)
(Click graphic to zoom by 1.9x)
Figure 2: CompactRIO diagram (bottom)
(Click graphic to zoom by 1.9x)

CompactRIO combines a unique system architecture including an embedded real-time processor, high-performance FPGA, and hot-swappable I/O modules. The I/O modules contain built-in isolation, signal conditioning, and connectivity and are connected directly to the embedded FPGA. Because each module is independently connected to the FPGA, engineers and designers can use the FPGA to perform custom timing, digital processing, and control on a per-module basis.

Figure 3
(Click graphic to zoom by 1.9x)

Both the real-time processor and FPGA are programmable with graphical LabVIEW tools. While built-in graphical function blocks perform integer-based (FPGA) and floating-point (real-time processor) analysis, processing, and control within LabVIEW, data mechanisms transfer data between I/O modules, the FPGA, and the real-time processor. Users can also leverage and integrate existing C/C++ code on the real-time processor and VHDL code on the FPGA within their LabVIEW code.