Analog to Digital Conversion
Electronics Engineering Technology Program
Texas A&M University
The purpose of this lab is to provide the students with hand on experience in using the analog inputs of a National Instruments data acquisition card. The lab assumes that the students have prior exposure to LabVIEW, and that they know the basics of writing and debugging LabVIEW VIs (Virtual Instruments). The experiment will teach them how to apply their LabVIEW knowledge to acquire an analog signal from the function generator. They will display it in LabVIEW and calculate its RMS and average values. The students should have studied Analog to Digital conversion theory in class before coming to the lab.
The objective for this experiment is for the students to write the needed LabVIEW VI to sample an analog signal and display it on a waveform chart in LabVIEW. The instructions provided in the student’s section describe a step-by-step approach to write the basic structure of the VI. The rest of the implementation is left to the students. The VI provided is a sample implementation and is intended for the instructor’s reference use and not for the students. The diagram can be password protected in case the students want to look at the front panel and see how the VI they are writing should behave.
This experiment applies to general instrumentation and electronics systems interfacing courses in electrical engineering or engineering technology programs. The experiment can also be useful in basic LabVIEW courses, teaching the concepts of analog input through data acquisition cards, in addition to other LabVIEW techniques such as the use of Waveform Charts and the use of statistical functions such as RMS and Mean.
Analog to Digital Conversion 1
; PC running MS Windows
(visit http://www.ni.com/labview/lv_sysreq.htm for
requirements specific to your operating system)
; LabVIEW Full Development System
; PCI 1200 DAQ from National Instruments (part number 777386-01) ; CB-50LP I/O Connector Block from National Instruments (part
; NBI Ribbon Cable from National Instruments (part number 180624-10) ; Tektronix TAS475 Four Channel Oscilloscope, or any general lab
scope with 2 or more channels.
; HP 3312A Function Generator, or any general function generator with
sinusoidal and sqaure output signals of variable frequency.
Follow the steps listed below to prepare the workstation for this experiment. The instructions assume you are using the equipment list shown previously.
Note: Most of the manuals that are referred to ship with National Instruments hardware and software. If you can’t find your hardcopy of the manuals, you can get them online at http://www.ni.com/manuals.
If you encounter problems during setup, contact technical support at http://www.ni.com/support.
Before the Day of the Lab
1. Install LabVIEW (see the LabVIEW Release Notes for your version of
2. Install your PCI-1200 board (see the PCI1200 User Manual, or online
3. Connect the ribbon cable to the PCI1200 card and to the I/O connector
On the Day of the Lab
1. Power up the computer.
2. Start LabVIEW.
3. Power up the function generator.
Analog to Digital Conversion 2
; NI’s web site: http://www.ni.com
; Schweber, William. Electronic Communication Systems. Upper
Saddle River: Prentice-Hall, 1999; p 292-3.
; Burns, Mark and Roberts. An Introduction to Mixed-Signal IC
Test and Measurement. Texas Instruments, 2000; p.174.
Analog to Digital Conversion 3
In this experiment, you will write a LabVIEW VI to acquire an analog
signal from the analog input pins of the PCI 1200 Data Acquisition Card
(DAQ), display it in LabVIEW, and calculate its RMS and average values.
You will also show the relationship of amplitude to number of averages.
This lab requires background in analog to digital conversion and the
concepts of sampling and Nyquist theorem. These concepts are
summarized in the Theory section of this experiment.
; To learn how to use LabVIEW for analog input through a DAQ card.
; To learn about Analog to Digital conversion and how to acquire a
signal and display it in LabVIEW.
; To study the effect of the sampling frequency in analog to digital
In 1928, H. Nyquist showed that an analog signal could be perfectly
reconstructed solely from its sample values. This could be done without
any loss of its original information if the sampling rate is at least twice the
bandwidth of the signal, thus the famous rule:
Nyquist sampling rate = 2 x signal bandwidth
For example, a signal with a bandwidth of 1000Hz must be sampled at
2000 or more samples/second without any loss of information.
Figure 1. Sine and cosine waves sampled at twice the signal frequency
(Source: Burns, Mark and Roberts. An Introduction to Mixed-Signal IC Test and Measurement)
Sampling at exactly twice the signal frequency is not enough in most
practical situations. Figure 1 illustrates this problem:
“As is evident, all the samples from the sine wave are zero
whereas those from the cosine signal are not. Clearly, any
Analog to Digital Conversion 4
information contained in the sine wave such as its
amplitude would be lost and unobtainable from the samples.
We can therefore conclude that one should not attempt to
sample at exactly twice the Nyquist rate”
(Source: Burns, Mark and Roberts. An Introduction to Mixed-Signal IC Test and
This is why a sampling rate as much as 10 times the signal bandwidth is used when doing an anolog to digital conversion.
The term quantization error (or quantization noise) is used to describe the fact that a digital value can correspond to a distinct span of analog signals. Any analog signal within the zone of one LSB will have the same digital value and therefore look identical to all others after the analog-to-digital process. It is this small degree of error in misrepresentation that is known as quantization error. In order to closely reconstruct the original analog signal, the analog to digital conversion process needs to minimize the quantization error as much as possible. To reduce the quantization error, more divisions (higher resolution) should be used to represent the analog value. For this experiment, this type of error is minimized by the fact that the PCI 1200 boards use a device with relatively good resolution (12-bits).
Figure 2. Quantization Error
( Source: Schweber, William. Electronic Communication Systems. p287)
Analog to Digital Conversion 5
Figure 2, presents the idea that the original analog signal (a) can be represented in varying degrees of resolution thereby determining the amount of quantization error included. A two-bit representation as in (b) has more quantization error than the three-bit representation in (c). In fact, with every increasing bit of resolution, quantization error is cut in half.
Read this experiment before coming to the lab. You should understand the concepts of sampling and quantization errors and study the Nyquist theorem.
Bring the following to lab with you:
; This experiment.
; Your lab notebook and pencil.
; 2 virus-free formatted 3.5-inch floppy disks (always make a backup
copy of your code on the second disk).
Answer the following questions in the datasheet provided at the end of this experiment before coming to the lab. Remember to include these answers in your lab report too.
1. What are the pin numbers for analog output and analog input on the
PCI 1200 DAQ card? How many channels are there for analog input
and analog output?
2. Which VI is used to read the analog signal from the analog input pin? 3. Which VIs calculate the RMS and mean values of a signal?
Your workstation should have the following items:
; Computer with National Instruments LabVIEW software
; National Instruments DAQ board (inside the computer)
; National Instruments DAQ board terminal block
; Tektronix Oscilloscope.
; HP 3312A Function Generator.
1. Start a new VI in LabVIEW. You should then add the following controls and indicators to the front panel:
Analog to Digital Conversion 6
a. Start/Stop Switch: This is the main On/Off switch for the VI.
b. Number of Readings Digital Control: This value will be used to
control the main loop of the VI.
c. Number of Samples per Reading Digital Control: This VI will
determine the number of buffered samples for each reading from
the analog input.
d. Sample Rate Digital Control: This value will configure the
sampling rate of the analog input on the DAQ.
e. Waveform of the Acquired Signal: This chart will display the
acquired analog signal. It should match the signal obtained on the
oscilloscope when measured from the function generator. f. RMS value Digital Indicator: You will display the RMS value of
each buffered input of the acquired signal.
g. Mean value Digital Indicator: You will display the mean value of
each buffered input from the acquired signal.
h. Average DC Value Digital Indicator: You will display the running
average DC value (average of the mean values) for the entire
2. The VI is supposed to work as follows: it reads an analog signal by acquiring a number of “samples” at a certain “sampling rate” (buffered input). The acquired signal, along with the mean and RMS values of those samples are displayed on the front panel. Then, the process repeats. Each iteration of the loop is called one “reading”. It is also required to display the average DC value (average of means for all readings).
3. After adding those controls, start wiring the VI diagrams with the controls to implement the functionality of your program. You might find the following VIs useful in your code:
a. A main loop, best implemented as a For Loop structure, which
will be controlled by the Start/Stop switch and the number of
readings digital control.
b. An Analog Input Multi Point VI, which will be configured to
read from AI channel 0 from device 1. Wire the number of
samples and sampling rate inputs to the corresponding control in
the front panel.
c. A waveform graph VI which is wired directly to the output of the
Analog Input VI.
d. An RMS VI, wired to the output of the Analog Input VI, and its
output wired to the RMS Digital indicator on the front panel.
Analog to Digital Conversion 7
e. A mean value VI, wired in the same way as the RMS VI.
4. These are the basic VIs that you will need to have a working program. Wire the entire diagram correctly and debug any errors you have. You will still need to add some code to generate the running DC Average value. You may also want to add more features, or implement the logic in a different way. If you have any questions about writing the code, ask your lab instructor.
5. After finishing your code save it to the floppy disks. Next, you need to connect the DAQ Analog In Channel 0 (ACH0) and Analog Ground (AGND) to the function generator output. Also, connect the function generator output to the Scope.
6. Test your code by generating waves of different duty cycles and
frequencies and amplitude and shapes on the function generator.
Compare the result you get on the waveform chart with the one
displayed on the scope. What is the limit on the frequency you can
successfully measure? What happens at higher frequencies? 7. Next, modify your VI to run only once (one reading, without the loop).
Capture one shot (with N samples) of a sine wave at a certain
frequency. Confirm that the sampled sine wave has the expected
number of points. For example, if your input is a 100Hz sine wave,
sampling at 1000 Hz sampling rate will result in getting 1000 points of
the sine wave in one shot, or what is equivalent to 10 exact periods of
the sine signal. Study the effect of aliasing by choosing a frequency
inappropriate for sampling. Note down any observations you have. 8. Fill the table of results in the datasheet section. Describe or plot the
signal used to generate the results.
Your report must be typed and of professional quality. You should include the following in your report:
1. All schematics, which must be computer-generated. Components
must be labeled with circuit references and values. The
schematics must be fully compliant with standard engineering
practices for circuit depiction.
2. Front panel and block diagram of all VI’s and Sub VI’s that you
wrote or used.
3. A Theory section describing the theory behind the concepts used
in this lab.
4. An implementation section describing the details of your VI code
and the logic flow.
Analog to Digital Conversion 8
5. The tabulated test results and observations.
6. The answers to the Pre-lab questions in the provided datasheet.
7. Selected sections of the datasheet of the PCI 1200. Analog to Digital Conversion 9
1. Answer : ……………………………………………………………….
2. Answer : ……………………………………………………………….
3. Answer : ……………………………………………………………….
Samples/Reading RMS Values (volts) Running Average DC Value (volts)
Analog to Digital Conversion 10