Data Logging, Control, and Monitoring 1 Course Overview

Data Logging, Control, and Monitoring 1 Course delivers hands-on training for designing, prototyping, and deploying a reliable Real-Time application. 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 replicate your Real-Time datalogging, control, and/or monitoring application.

Course Details:

Data Logging, Control, and Monitoring 1 Course Outline

Course WelcomeThis lesson welcomes you to the Datalogging, Control and Monitoring (DCM) course and introduces the course topics, learning objectives, and course materials.
  • Overview of course lessons and topics
  • Learning objectives for each lesson
  • Overview of course learning tools
Introduction to Datalogging, Control and Monitoring with LabVIEWIn this lesson, you will learn about the typical components of DCM systems and see examples of these systems in the real world.
  • Examples of typical DCM systems
  • Overview of DCM system components (HMI, Real-Time Target, FPGA target)
Identifying Application Requirements

This lesson walks through a variety of considerations when designing and developing a datalogging, control and monitoring application.

  • Identify I/O and I/O rate requirements.
  • Identify processes.
  • Identify process timing.
  • Identify data transfer types.
  • Identify performance and reliability requirements.

Document Your Design


This lesson describes how to use and create different types of diagrams to document your system design.

  • Overview of diagrams
  • Creating a communication diagram
  • Typical control & monitoring diagrams
  • Additional documentation

Configure Hardware

This lesson describes how to setup real-time hardware and software. You receive hands-on experience in configuring a CompactRIO RT system.

  • Setup hardware and PC
  • Configure RT system settings and software
  • Configure network settings
  • Configure RT target from web browser

Accessing Your I/O in LabVIEW


This lesson describes how to access the inputs and outputs of your RT target in your application. Various methodologies will be discussed, compared and contrasted including NI DAQmx and NI Scan Engine.

  • Configuring RT targets through the LabVIEW Project
  • Accessing I/O using DAQmx
  • Accessing I/O using Scan Engine

Programming Using LabVIEW Real-Time

This lesson describes how to design the real-time VI. You will learn about features specific to LabVIEW RT including how to configure and use timed loops. General considerations for designing deterministic applications will be covered extensively.

  • RT VI Architecture
  • Setting Priority Levels of Processes
  • Yielding Execution in Deterministic Loops
  • Timing Loops in LabVIEW Real-Time
  • Improving Speed and Determinism

Inter-Process Communication in LabVIEW Real-Time

This lesson describes how to transfer tag, stream, and message data between multiple loops on your RT VI.

  • Sharing data between deterministic and non-deterministic processes
  • Sharing data between non-deterministic processes.

Communicating between the Real-Time Target and Host PC

This lesson describes how to transfer data and communicate between a host PC (Windows-based) and an RT Target.

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

Managing Memory and Monitoring System Health

In this lesson, you will learn about best practices for monitoring RT system health, memory and CPU usage to mitigate potential issues during an applications execution.

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


In this lesson, you will learn more about best practices for creating reliable RT applications.

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


This lesson discusses methods of benchmarking your real-time application.

  • Debugging
  • Benchmarking performance
  • Testing

Deployment and Replication

This lesson discusses how to deploy a stand-alone RT application and replicate it on multiple RT targets.

  • Introduction to RT deployment
  • Communicating with deployed applications
  • Replicating RT systems

Get started with Data Logging, Control, and Monitoring 1 today