Solution
Only USB3, GigE and Internet Protocol (IP) cameras are supported for use with cRIO and sbRIO, with restrictions for each type of camera. Using NI Vision Acquisition Software, you can acquire images from these types of cameras with RIO, sbRIO and PXI controllers targets. Vision Acquisition Software start supported on PXI controllers running Linux RT as of VAS 20.6, make sure to install Linux RT Image 20.6 on the PXI controller to match the version of Vision Acquisition Software.
USB3 Vision
Machine vision cameras following the USB3 Vision standard can be used with certain real-time targets running either the VxWorks or NI Linux Real-Time operating systems. USB3 cameras are not supported on real-time targets running Phar Lap ETS operating systems. The cameras must comply with the USB3 Vision standard, be backward compatible to USB 2.0, and have a maximum current draw of 500mA. Compatible cameras include certain Basler USB3 Vision cameras, such as the Basler ace acA640-120, as well as other manufacturers’ USB3 Vision cameras with USB 2.0 backward compatibility. See the Related Links for more information on using USB3 cameras with NI cRIO and sbRIO targets.
Note: Some specific NI hardware supports USB3 Vision cameras which do not have USB 2.0 backward compatibility. Please refer USB3 Vision Cameras and NI Real-Time Targets Compatibility.
GigE Vision
Cameras following the GigE Vision standard are supported by high-performance, multi-core cRIO devices, such as the cRIO-908x, cRIO-903x, cRIO-904x and cRIO-905x series as well as the Intel-based sbRIOs.
Internet Protocol (IP)
IP cameras manufactured by Basler and Axis are supported by all cRIO targets with two ethernet adapters. Vision Acquisition Software 2009 or later is required to acquire images from these IP cameras. The NI-IMAQdx driver, which is a part of the Vision Acquisition Software package, only supports IP cameras that provide MJPEG images. Axis IP cameras must have firmware revision 2.0 (or later) to be supported. Since there are currently no sbRIO targets with two ethernet adapters, IP cameras are not currently supported on sbRIO.
USB 2.0 Cameras (Linux RT Targets only)
On Real-Time controllers running NI Linux Real-Time, USB 2.0 cameras that are USB Video Class (UVC) compliant are supported. Please check with the camera manufacturer to see if you have a UVC camera. To use a UVC camera with your Linux RT target, you need to perform a custom software installation on the target and install the component USB Webcam Support.
Other cameras
To establish communication with other cameras, the following approach should be adopted: First, select the appropriate communication protocol (e.g., TCP/IP, HTTP, RTSP etc.). Then, develop the necessary code to acquire video from the camera. This task can be implemented using LabVIEW (which offers several examples for different communication types), C/C++, or other suitable programming languages.
Remember, that NI Vision Acquisition Software components are not compatible with these cameras, but in common you can use NI Vision Development Module for image processing functions for LabVIEW, C/C++, Visual Basic, and .NET environments.