Developing Embedded Applications Using CompactRIO and LabVIEW Real-Time Course Overview

Developing Embedded Applications using CompactRIO and LabVIEW Real-Time course delivers a learning experience for designing, prototyping, and deploying a reliable Real-Time application using NI compactRIO. At the end of the course, you will be able to translate your embedded system requirements into a scalable software architecture, choose appropriate methods for inter-process and network-based communication, design, deploy and define your Real-Time datalogging, control, and/or monitoring algorithm.

Available Formats

 

On-Demand training not available for this course

 

Virtual Training

 

Classroom Training

 

Private Classes

Course Objectives

Course Details

Duration

Audience

Prerequisites

NI Products Used

Training Materials

Cost in Credits

Developing Embedded Applications Using CompactRIO and LabVIEW Real-Time Course Outline

LessonOverviewTopics

Introduction to Embedded Measurement, Control, and Monitoring Using LabVIEW Real-Time

Explore an embedded application requiring data logging, control, and monitoring capabilities.

  • Overview of System Commonalities
  • Real-Time Processor Overview
  • Field-Programmable Gate Array (FPGA) Overview
  • Human-Machine Interface (HMI) Overview

Identifying Application Requirements

Explore the considerations when designing and developing an embedded application.

  • Identify I/O and I/O Rate Requirements.
  • Exploring Common Application Processes
  • Investigating Process Timing
  • Exploring Data Transfer Types
  • Identifying Performance and Reliability Requirements

Document Your Design

Explore the use of diagrams to aid in system design. Implement the design for the CompactRIO-based course project.

  • Identifying Diagram Types and Benefits
  • Creating a Communication Diagram
  • Exploring Common Embedded Applications System Diagrams

Configure Your Hardware

Set up real-time HW and install the necessary SW to work with the CompactRIO.

  • Setting Up Hardware and PC
  • Configuring RT System Settings and Software
  • Configuring Network Settings

Accessing Your I/O in LabVIEW

Explore the methods available to use the I/O channels of your hardware.

  • Configuring RT Targets through the LabVIEW Project
  • Comparing I/O Methods
  • Accessing I/O Using DAQmx
  • Accessing I/O Using Scan Engine
  • Accessing I/O from FPGA

Programming Using LabVIEW Real-Time

Learn how to access the inputs and outputs of your RT target in your application.

  • Real-Time VI Architecture Overview
  • Multitasking and Multithreading Overview
  • Scheduling Overview
  • Investigating Priority Levels of Processes
  • Setting Priority Levels of VIs
  • Yielding Execution in Deterministic Loops
  • Timing Loops in LabVIEW Real-Time
  • Improving Speed and Determinism

Inter-Process Communication in LabVIEW Real-Time

Learn how to transfer data between multiple loops on your Real-Time VI.

  • Introduction to Inter-Process Communication in Real-Time
  • Transfer Data between Deterministic and Non-deterministic Loops
  • Transfer Data between Non-deterministic Loops
  • Introduction to Channel Wires

Communicating between the Real-Time Target and Host PC

Explore how to transfer data and communicate between a host PC and an RT Target.

  • Front Panel Communication versus Programmatic Network Communication
  • Transferring Latest Values (Tag)
  • Transferring Buffered Values (Stream, Message)
  • Investigating Standard Protocols
  • Embedded UI Overview

Managing Memory and Monitoring System Health

Explore best practices for monitoring RT system health, memory, and CPU usage to mitigate potential issues during application execution.

  • Exploring Impacts of Memory Usage
  • Investigating Memory Pre-Allocation
  • Minimizing Dynamic Memory Allocations
  • Exploring System Monitoring

Creating Reliable RT Applications

Learn about the techniques available to improve the reliability of your RT system and application

  • Reliability Overview
  • Safe Shutdown Overview
  • Comprehensive Error Handling
  • Watchdogs Overview
  • Redundancy Overview
  • C-Series Functional Safety Module

Debugging, Benchmarking, and Testing

Explore methods for debugging, benchmarking, and testing your real-time application.

  • Debugging Real-Time VIs
  • Benchmarking the Performance of a Real-Time System
  • Testing the Code Functionality

Deployment and Replication

Deploy a stand-alone RT application and replicate it on multiple RT targets.

  • Introduction to RT Deployment
  • Communicating with Deployed Applications
  • Replicating RT Systems

 

Continue Your Learning Path

Engineer learns LabVIEW on his computer.

 

Developing Embedded Applications using CompactRIO and LabVIEW FPGA

 

Developing Embedded Applications using CompactRIO and LabVIEW FPGA course delivers a learning experience for designing, prototyping, and deploying reliable FPGA code for application using NI CompactRIO.

Engineer sets up SystemLink.

 

SystemLink Server to Manage Systems and Data


This course teaches how to use the SystemLink server environment to manage test systems, deploy software, manage hardware assets, and collect and analyze test results.

 

Engineer learns DIAdem.

 

Exploring Data Interactively Using DIAdem

 

 

Exploring Data Interactively Using DIAdem teaches importing data sets, analyzing them visually and computationally, and creating publisher-quality reports. Learn how to use DIAdem SCRIPT to automate each of these tasks.

Upgrade to Membership

If you are planning to take three or more NI instructor-led courses within one year, a Training Membership provides cost-effective, unlimited access to all NI public classroom and public virtual courses, along with unlimited certification vouchers.