|Download Help (Windows Only)|
The application software that runs on an NI real-time hardware target consists of a top-level VI that initializes the device code and then executes several processes in parallel. A process performs a specific set of tasks. For example, in the NI InsightCM SDK reference code for devices, the Blink process implements the default behavior of the CompactRIO USER LED, such as blinking twice per second when a process returns an unhandled error.
The NI InsightCM SDK includes a copy of the software that runs on NI Monitoring Devices, which are Compact-RIO based systems that are delivered with particular C Series modules and software pre-installed. Use this reference code according to your unique programming goals. You can reuse certain NI-developed processes, add functionality to these processes, and develop custom processes.
In the SDK reference code, the role of most processes is to continuously acquire data from equipment and to log the data when one of several types of triggers occur. Several other processes perform supporting operations, such as controlling the behavior of LEDs. Processes communicate with each other via Qbus, an internal message bus that implements communication, including message routing and storage, among all processes that run in the top-level VI. For communication between the application software and NI InsightCM Server, one dedicated process performs communication tasks.
Whether you develop a new process or edit an existing one, you interact with a process VI file stored in its own LabVIEW project library (.lvlib). The project library organizes the process VI and supporting files into a single hierarchy of items, avoids potential VI name duplication, and sets a default palette file for VIs in public APIs. The following illustration shows the relationship between the top-level VI, project libraries, and processes.
NI-developed processes and project libraries in the device reference code conform to a standard structure that builds on a common set of files and infrastructure features, such as the Qbus message bus.
Before you begin developing with the NI InsightCM SDK, familiarize yourself with the following concepts and techniques the device software is designed around: