You are on page 1of 5

Data Acquisition Using NI-DAQmx

Wei Lin
Department of Biomedical Engineering
Stony Brook University

Instructors Portion
Summary
This experiment requires the student to use NI-DAQmx to acquire voltage
signals. Students should be familiar with the following LabVIEW
programming technique
1.
2.
3.
4.

NI-DAQmx
LabVIEW application for data acquisition
LabVIEW graph and chart
LabVIEW write LabVIEW measurement file express VI

Uses
This lecture applies to all courses of virtual instrumentation.

Equipment List

Computers

LabVIEW 8.6

NI-ELVIS benchtop workstation

LabVIEW 8, Student Version

Lecture Slides of Data Acquisition

References

Students Portion
Introduction
The students should learn the basic LabVIEW programming techniques
for the data acquisition using NI-DAQmx. They will create two VIs, one

for finite samples and the other for continuous samples. Students will use
graph and chart indicator to display acquired signals on the screen and
save the data in files for future analysis.

Objectives

NI-DAQmx Functions
Data acquisition programming using NI-DAQmx
LabVIEW graph and chart

Theory
NI-DAQmx is the next generation drivers for the data acquisition hardware
from National Instruments. It is easy to use and has many new features such
as improved ease of use, faster development time, multithreaded
measurements and increased accuracy of measurements. The data acquisition
application in LabVIEW and NI-DAQmx is quite straightforward. The
following are the steps for creating such an application.
1. Create a virtual channel and task using the NI-DAQmx Create
Virtual Channel VI.
2. Set the sampling frequency and sampling mode, continuous or
finite samples using NI-DAQmx Timing VI.
3. Set the trigger using NI-DAQmx Trigger VI. This step is optional.
4. Start the data acquisition process using NI-DAQmx Start VI.
5. Read the acquired data using NI-DAQmx Read VI.
6. Stop data acquisition task.
7. Clear the data acquisition task using the NI-DAQmx Clear VI.
All the NI-DAQmx VIs are linked through task in and task out terminal and
the error cluster chain. For continuous samples mode, the NI-DAQmx Read
VI should be placed within a while loop.

Lab Procedure
Experiment 1, Create a LabVIEW data acquisition application of
finite samples:
1.
2.

Launch LabVIEW. Create a blank VI.


Add the following to the front panel:
a. Controls: NI-DAQmx physical channel, minimum value,
maximum value, sample frequency, number of samples.
Change the representation of number of samples control to
I32.

b. Indicator: Waveform graph


3.
Drop the following functions to the block diagram.
a. NI-DAQmx Create Virtual Channel VI and choose AI
voltage.
b. NI-DAQmx timing VI and choose Sample clock.
c. NI-DAQmx Start Task VI
d. NI-DAQmx read VI and select analog 1D Wfm NCha
NSamp
e. NI-DAQmx Stop Task VI
f. NI-DAQmx Clear VI
g. Simple Error Handler VI
h. Align the VIs using alignment tool.
4.
For NI-DAQmx Create Virtual Channel VI, Connect the controls
of minimum value, maximum value and physical channel to the
respective terminals. Right click the input terminal configuration
terminal and choose create constant. Select RSE to configure the
input as referenced single ended terminal.
5.
For NI-DAQmx timing VI Connect controls of sampling
frequency and the number of samples to the respective terminals.
Right click the sample mode terminal and choose create
constant. Select the constant as finite samples. This configures
the finite sample mood. .
6.
For NI-DAQmx read VI, connect the control of the number of
samples to the terminal number of samples per channel. Connect
the output from the terminal data of NI-DAQmx read VI to the
waveform indicator.
7.
Connect the NI-DAQmx VIs through task in and task out
terminals and error cluster input and output terminals. connect the
error output of NI-DAQmx Clear VI to the input of Simple Error
Handler VI
8.
Drop a Write LabVIEW Measurement File express VI to the block
diagram and choose Ask user to choose file, Ask each iteration,
Overwrite file and one column only in X value column. Connect
the acquired data to its input.
9.
Save the VI on your H drive.
10. Keep the ELVIS unit off. Connect the output of function generator
FUNC OUT to ACH0 using connection wire on the prototype
board.
11. Turn ELVIS unit on including the prototype board.
12. Launch ELVIS application and choose function generator. Select the
frequency, waveform type and amplitude of the function generator
and turn it on.
13. Enter the parameters for the controls of the LabVIEW data
acquisition controls, run the VI and save acquired signal for lab
report.

Experiment 2, Create a LabVIEW data acquisition application of


continuous samples:
1.

2.
3.

4.

5.

Modify the LabVIEW code of previous experiment by changing the


sample mode constant for NI-DAQmx timing VI to continuous
for continuous sampling. Remove the wire connecting the number
of samples control to this VI. Remove the Write LabVIEW
Measurement File express VI.
Replace the waveform indicator to chart indicator and add a STOP
button on the front panel.
Change the X axis scale of the chart by right clicking the chart and
choosing properties, scales. Disable auto scale of X axis. Set the
minimum as 0 and maximum as 5
Using WHILE loop to enclose the NI-DAQmx read VI in the
block diagram. Move the STOP button terminal into the WHILE
loop and connect it to the WHILE loop conditional terminal. Save
the VI to your H drive.
Set the frequency of ELVIS function generator to 5Hz. Run the
application as described in the previous experiment.

Lab Report
The lab report should contain the following:
1. The experiment objective
2. Explain how to write a data acquisition application using LabVIEW.
Please also describe the physical channel, virtual channel, task and
their relationship.
3. Data (collected signal)
4. LabVIEW VIs with documentation
Lab report due on 10/17/2009
Appendix
1. VI for finite data acquisition

2. VI for continuous data acquisition

You might also like