From Saturday, Nov 23rd 7:00 PM CST - Sunday, Nov 24th 7:45 AM CST, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Saturday, Nov 23rd 7:00 PM CST - Sunday, Nov 24th 7:45 AM CST, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
Developing Deterministic Applications using LabVIEW Real-Time course delivers a learning experience for designing, prototyping, and deploying a reliable Real-Time application. At the end of the course, you will be able to translate your system requirements into a scalable software architecture, choose appropriate methods for inter-process and network-based communication, design, deploy and define your Real-Time algorithm.
Course Last Release Date or Version Number: 2023
On-Demand: 8 hours
Engineers interested on real time application development, debugging and troubleshooting
LabVIEW Core 1 and LabVIEW Core 2
LabVIEW Professional Development System
LabVIEW FPGA Module
LabVIEW Real-Time Module
NI CompactRIO Controller
NI Analog Input, Analog Output, Thermocouple Input, and Digital Output modules
Explore the main structure of LabVIEW projects using LabVIEW Real-Time
Explore data acquisition and generation, control timing, and implement signal processing on an RT processor.
Explore the implementation of a human machine interface (HMI) on the PC.
Explore the data communication between FPGA, RT, and PC.
Explore debugging, benchmarking, and testing techniques for your application.
Explore the deployment of an application.
Lesson | Overview | Topics |
---|---|---|
Exploring Embedded Real-Time Applications Using LabVIEW Real-Time | Explore an embedded application requiring data logging, control, and monitoring capabilities. |
|
Identifying Application Requirements | Learn how to design embedded applications, create communication diagrams using vector tools, and develop system diagrams. |
|
Hardware Setup and PC Configurations | Distinguish between real-time hardware and PC software setup processes, connecting and configuring a cRIO device using NI MAX. |
|
Configuring Network Settings | Learn the options available to connect to and configure the network settings of your RT Hardware. |
|
Configuring LabVIEW to Communicate with Real-Time Targets | Learn how to configure and run LabVIEW VIs on Real-Time targets, while exploring the distinctions between the CompactRIO programming models. |
|
Accessing I/O in LabVIEW Real-Time Projects | Learn about DAQmx and Scan Engine programming modes for RT Target I/O access and explore FPGA programming mode and compatible products. |
|
Multitasking and Multithreading RT VIs | Explore LabVIEW Real-Time VI architecture and investigate multitasking and multithreading concepts for efficient real-time system design. |
|
Scheduling Overview | Explore the types of scheduling used by NI RT systems. |
|
Investigating Priority Levels of Processes | Explore VI priority levels. |
|
Configuring Determinism in LabVIEW | Explore how to configure the VI priority levels and how to yield execution while configuring deterministic tasks. |
|
Timing and Performance in LabVIEW Real-Time | Explore LabVIEW RT VIs, optimizing performance and execution speed through timing functions, Express VIs, and loop configurations. |
|
Transferring Data between Deterministic and Non-deterministic Loops | Explore different implementations in LabVIEW Real-Time to communicate deterministic loops with non-deterministic loops. |
|
Transferring Data between Non-deterministic Loops | Study common methods to transfer data between non-deterministic loops. |
|
Introduction to Channel Wires | Explore the concept of Channel Wires and its implementation as an additional method to communicate loops in LabVIEW Real-Time. |
|
Communicating from Host to Target Using Tags | Distinguish between Front Panel and Network communication in UI implementation and explore the use of Network-Published Shared Variables for efficient data sharing between the target and host. |
|
Communicating from Host to Target Using Buffered Values | Explore Network Streams Configuration and explore communicating Hosts and Targets using buffered values. |
|
Investigating Standard Communication Protocols | Investigate options to communicate with hardware that does not support LabVIEW. |
|
Enabling Human Machine Interfaces Using Embedded UI | Explore how the Embedded UI can be used with RT applications to have easier access to an HMI. |
|
Exploring the Impact of Memory Usage and Memory Pre-Allocation | Compare dynamic vs. pre-allocated memory and learn strategies to minimize dynamic memory usage. |
|
Exploring System Monitoring | Learn how to monitor and analyze system performance, including CPU usage, memory utilization, and network activity. |
|
Exploring the Impact of Reliability and Safe Shutdown for RT Applications | Study the concept of reliability in the context of real-time application development and review the benefits of having safe shutdown procedures programmed on your applications to reinforce the system’s safety and integrity. |
|
Comprehensive Error Handling | Investigate the Error Handling approaches commonly used in RT systems. |
|
Exploring Reliability Techniques | Explore watchdog timers, system redundancy, and the C Series Functional Safety Module to enhance LabVIEW program reliability and real-time system safety. |
|
Invesigate Software Testing Techniques for Embedded Applications Using LabVIEW Real-Time | Learn Real-Time system benchmarking tools and understand the importance of testing code in software development. |
|
Getting Your Embedded Application Ready for Deployment | Learn how to deploy Real-Time applications, use debugging tools, and communicate effectively with deployed applications. |
|