Academic Company Events NI Developer Zone Support Solutions Products & Services Contact NI MyNI

Document Type: Tutorial
NI Supported: Yes
Publish Date: May 7, 2009


Feedback


Yes No

Related Links - Developer Zone

Related Links - Products and Services

Converting a Desktop PC to a LabVIEW Real-Time Target

17 ratings | 3.29 out of 5
Print

Overview

Chances are you already own a desktop PC that could serve as your next reliable deterministic test or control system. This PC is most likely running a general-purpose operating system, which provides an excellent platform for developing and running your non-critical applications, but fails to provide the requirements for critical applications such as machine control or extended runtime tests. General-purpose operating systems are optimized to run a variety of applications simultaneously, ensuring that all applications receive some processing time. As a result, high-priority tasks can be preempted by lower priority tasks, making it impossible to guarantee a response time for your critical applications. In contrast, real-time operating systems give you the ability to prioritize tasks so that the most critical task can always take control of the processor when needed, guaranteeing reliable predictable execution.

Using the LabVIEW Real-Time Module, you can convert a compatible desktop or single-board computer into dedicated hardware running a real-time operating system. A free utility allows you to quickly verify system compatibility via a USB or floppy drive. Also, the LabVIEW Real-Time Module installs with a fully functional 30 day evaluation period, giving you the flexibly to prototype at no cost.


[+] Enlarge Image
Figure 1. Advantages of using a Desktop PC as a LabVIEW Real-Time Target


Introduction

With LabVIEW Real-Time, applications are developed using the same intuitive graphical programming approach as LabVIEW on the desktop. At runtime your application is sent over Ethernet to run with absolute reliability on the real-time system. While your application runs, you can continue to interact with the front panel and block diagram to debug the application with controls, indicators, execution highlighting, probes, and breakpoints. Applications can also be configured to run headless, without user interaction, when your real-time system starts-up. You also have the option to access your application from any Web browser via an embedded Web server.

Real-time processing is used in various applications ranging from control to design to test. While application space plays a role in determining the appropriateness of one target versus another, system requirements such as processing requirements, I/O availability, ruggedness of design, and scalability, play an even more critical role. For more information on when to choose a particular real-time target refer to Selecting Your LabVIEW Real-Time Deployment Platform.

Deploying a desktop PC as a LabVIEW Real-Time target is ideal for the following scenarios:

Migrating a LabVIEW desktop Windows application to LabVIEW Real-Time - At the outset of application development, it may not be known if real-time is necessary or not. If a developer chooses to start out on a Windows machine running LabVIEW, the option exists to later migrate to LabVIEW Real-Time if more reliability or determinism is required. Additionally, if PCI boards such as multifunction DAQ, FPGA-based reconfigurable I/O, or high-accuracy modular instruments are used, these will be able to seamlessly migrate from a desktop PC running LabVIEW for Windows to a desktop PC running LabVIEW Real-Time.

Considering a single-board computer - Single-board computers are a common platform deployed in an embedded system. The same process outlined in this document for desktop PC’s is also applicable for single-board computers.

Needing I/O hardware with low to medium number of channels - Desktop PCs normally offer up to three PCI slots (or more) for use with I/O boards. While this number is sufficient for some applications; if more I/O is required, other real-time targets are available to meet those requirements.

Developing Preliminary Systems - Desktop PCs are ideal for an early prototyping platform when proving out algorithms and system functionality. They offer the ability to scale to PXI-based real-time systems down the road

Requiring a real-time target with minimal investment -  Because desktop PCs compatible with LabVIEW Real-Time use common PC technology components including processors from Intel and AMD, the chance of already owning a PC compatible with LabVIEW Real-Time is very high.

The steps below outline the process for converting a desktop PC to a LabVIEW Real-Time target.

 

Step 1 – Verify System Requirements

Verifying that your system is compatible with LabVIEW Real-Time is the first step in converting your desktop PC into a real-time system. If you plan to purchase a new PC for use as a real-time system, see the section below: LabVIEW Real-Time System Requirements.

Testing a PC for compatibility with LabVIEW Real-Time involves:

  1. Creating a USB boot utility using Measurement & Automation Explorer (MAX) on the development machine
  2. Creating a FAT32 partition on your real-time PC, or formatting the entire drive as FAT32
  3. Testing compatibility of the real-time PC with the USB boot utility

Creating the USB boot utility requires LabVIEW Real-Time 8.2 (or later) and MAX 4.1 (or later) on the development machine. If you do not have LabVIEW Real-Time 8.2 or later installed, you have the following options.

  • Install LabVIEW Real-Time from your LabVIEW Platform DVD
  • Download and install the LabVIEW 8.6 Evaluation and the LabVIEW Real-Time Module from here
  • Use a floppy disk to validate your PC (requires a floppy drive on the development machine and real-time target)

Once you have LabVIEW Real-Time 8.2 (or later) installed on your development machine, or if you plan to use a floppy drive, follow the step-by-step instructions in How Can I Test My PC For Compatibility with LabVIEW Real-Time or LabWindows/CVI Real-Time for Desktop ETS?

After validating compatibility, refer to the section below: Step 2 – Configure Your Desktop PC as a Real-Time Target.

 

LabVIEW Real-Time System Requirements

When purchasing a new PC for use as a LabVIEW Real-Time target, it is very important to first ensure that the PC meets all the required hardware specifications.

Figure 3 below shows two example configurations.

Example Configuration 1

Example Configuration 2

Processor

Intel Pentium 4

AMD Athlon 64

Ethernet chip set

Intel 82559
(onboard chip set)

NI PCI-8232
(plug-in Ethernet board)

Hard-drive

Parallel ATA (IDE)

Parallel ATA (IDE)

Boot-up Method

Boot into real-time OS with floppy disk loaded with boot image

Boot into real-time OS with USB thumb drive loaded with boot image

Figure 3. Example Real-Time Desktop Configurations


The requirements for a using a desktop PC as a LabVIEW Real-Time target are detailed in Requirements for Desktop PCs as LabVIEW Real-Time Targets.

The most common incompatibility is Ethernet chipset. For convenient set-up, the Real-Time ETS Desktop Bundle may be purchased which combines the LabVIEW Real-Time deployment license with a PCI Ethernet board that meets the LabVIEW Real-Time hardware requirements.

 

Step 2 – Configure a Desktop PC as a Real-Time Target

After hardware requirements have been met, the next step is to configure the desktop PC for application development. This includes:

  1. Booting the real-time target PC into safe mode with the USB utility
  2. Installing LabVIEW Real-Time and additional required software on the real-time target PC, via Measurement & Automation Explorer (MAX) on the development machine

For step by step instructions, follow the guidance outlined in the document Using Desktop PCs as RT Targets with the LabVIEW Real-Time Module for ETS Targets.

It is important to also consider which I/O boards will be compatible with your system. The majority of drivers that function on PXI real-time targets are compatible with a desktop PC real-time target. Refer to the specific driver documentation for details.

http:/zone.ni.com/cms/images/devzone/tut/c/31578304164.gif

Figure 2. PCI Multifunction Data Acquisition, FPGA-Based Reconfigurable I/O, and High-Accuracy Modular Instruments

 

LabVIEW Real-Time Deployment License for Standard PCs - ETS RTOS is also required for each desktop system used as a LabVIEW Real-Time target, if you chose to continue using the real-time PC beyond the 30 day evaluation period.

 

Conclusion

Prototyping your next real-time system on a desktop or single-board computer provides a flexible low cost option with the ability to select hardware from multiple vendors. Finish your projects faster with intuitive graphical development and an existing breath of I/O drivers from National Instruments.


Related Links

Developer Zone: Requirements for Desktop PCs as a LabVIEW Real-Time Targets

KnowledgeBase 4LEHIQ4N: How Can I Test My PC For Compatibility with LabVIEW Real-Time or LabWindows/CVI Real-Time for Desktop ETS?

Product Manuals: Using Desktop PCs as RT Targets with the LabVIEW Real-Time Module for ETS Targets

Developer Zone: Selecting Your LabVIEW Real-Time Deployment Platform

Real-Time ETS Desktop Bundle 

 

17 ratings | 3.29 out of 5
Print

Reader Comments | Submit a comment »

 

Legal
This tutorial (this "tutorial") was developed by National Instruments ("NI"). Although technical support of this tutorial may be made available by National Instruments, the content in this tutorial may not be completely tested and verified, and NI does not guarantee its quality in any way or that NI will continue to support this content with each new revision of related products and drivers. THIS TUTORIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).