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

Document Type: Tutorial
NI Supported: Yes
Publish Date: Dec 6, 2006


Feedback


Yes No

Related Categories

Related Links - Developer Zone

Related Links - Products and Services

Advantages of NI-DAQmx

18 ratings | 3.28 out of 5
Read in | Print

Overview

This document highlights a few of the advantages of the new NI-DAQmx driver (part of NI-DAQ 7) over Traditional NI-DAQ. A list of operating systems, software, and hardware that NI-DAQ 7 supports is found in the link at the bottom of this document.

Improved State Model

NI-DAQmx defines and enforces a state model, which eliminates unnecessary reconfigurations of input limits, timing, triggering, and accessories. This improvement significantly increases overall performance, but is most noticeable in single-point software-timed analog input. The link below contains examples that illustrate the significant single-point software-timed speed improvement in NI-DAQmx over Traditional NI-DAQ.

Another key part of the performance improvement of single-point software-timed I/O is memory-mapped registers. For more information on memory-mapped registers, see the Waveform and Single-Point I/O in NI-DAQ 7 Application Note below.
See Also:
NI-DAQ 7 vs. Traditional NI-DAQ Performance Improvements
Waveform and Single-Point I/O in NI-DAQ 7

Multithreaded Driver


Because NI-DAQmx is a multithreaded driver, programming concurrent I/O operations is much easier. Two operations that do not use the same functional subsection (counters, analog input, analog output, digital I/O) of a device can execute simultaneously. The link below contains examples that illustrate how the multithreaded NI-DAQmx driver improves the performance of concurrent operations.
See Also:
NI-DAQ 7 vs. Traditional NI-DAQ Performance Improvements

Robustness in Exceptional Conditions


Traditional NI-DAQ can have difficulty handling exceptional conditions like abnormal process termination. NI-DAQmx defines and enforces policies for such conditions and is much more robust than Traditional NI-DAQ.

Simplified Synchronization


Synchronizing devices and operations in Traditional NI-DAQ can be fairly complex. Typically, you must explicitly route signals over the RTSI bus or through PFI lines. NI-DAQmx eliminates the need to route signals. You simply choose the signal upon which you would like to synchronize and NI-DAQmx does all the routing for you.

Decreased LabVIEW Diagram Clutter


With NI-DAQmx, the diagram does not contain configuration information. Instead of putting configuration information in the program, you use the DAQ Assistant to configure your measurement tasks and channels. This results in:
- Increased development productivity
- Less expensive code, debug, and test cycles
- Ability to get started quickly with difficult tasks
- Cleaner, less cluttered diagrams.

To illustrate the last point, compare the code required for an operation to acquire N scans with an external scan clock and a digital trigger. In Traditional NI-DAQ, the code required looks like this:


[+] Enlarge Image



The code for the same operation in NI-DAQmx could look like this:




For more information on the DAQ Assistant, refer to the DAQ Assistant Help and the links below.
See Also:
DAQ Assistant
Using the DAQ Assistant to Automatically Generate LabVIEW Code
NI-DAQ 7 Measurement-Ready Virtual Channels and Configuration Services

Smooth Transition from Easy to Advanced Programming


The NI-DAQmx API exposes increasing power and complexity through interoperable layers. This means that if you decide at the last minute to include an advanced feature in your operation (like a trigger), you don't have to start over. Notice how much easier it is to change an internally clocked acquisition to externally clocked in NI-DAQmx:


Traditional NI-DAQ - Internally Clocked

[+] Enlarge Image


Traditional NI-DAQ - Externally Clocked


[+] Enlarge Image


NI-DAQmx - Internally Clocked




NI-DAQmx - Externally Clocked

[+] Enlarge Image
See Also:
KnowledgeBase 2XDHH7BG: Overview of Hardware and Software Support in DAQmx

18 ratings | 3.28 out of 5
Read in | 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/).