Communication Systems Laboratory Projects Featuring Interactive Simulation and Visualization
Communication Systems Laboratory Projects Featuring Interactive Simulation and Visualization
Page 14.341.1
Abstract
Engineering communication systems courses rely heavily on mathematical descriptions that can
be difficult for students to quickly grasp. Hands-on laboratory projects and interactive simulation
are two well-established methods to help students develop an intuitive understanding of a
knowledge domain. Constructing a tangible physical system helps students connect the
mathematically-expressed concepts to something real. Moreover, building an interactive
simulation fosters intuition, provided the simulation itself can be constructed quickly and
efficiently.
We have developed a set of laboratory projects that leverage the unique interactive visualization
and simulation capabilities of the LabVIEW graphical dataflow programming environment. With
LabVIEW, students quickly transform mathematical models, algorithms, and block diagrams
into real-time systems whose dynamics can be experienced visually and aurally with an
interactive graphical user interface. The laboratory projects guide students as they assemble
working simulations and interact with the finished result. Each project presents required
background theory as a mini-lecture embodied by a combination of text, diagrams, and streaming
video screencasts, detailed specifications for subsystems to be built supported by video
screencasts of relevant LabVIEW coding techniques, and suggested experiments to study and
interact with the finished system. Hosted on the Connexions web-based open publishing
resource, the projects are openly available and suitable as a turn-key solution for faculty who
wish to enhance an existing communication systems course with little effort. What’s more, the
modularity of the project materials and availability of Connexions editing tools enable faculty to
modify and extend the projects.
Project topics cover fundamental concepts such as bit error rate (BER) vs. Eb/No performance
measure, coherent detection, baseband modulation, inter-symbol interference (ISI) and eye
diagrams, and block coding. More advanced projects explore bandpass modulation schemes
using the computer soundcard and speaker-air-microphone (SAM) channel; students visualize
the signals as they pass through each subsystem and listen to the modulated waveforms, and
quickly develop an appreciation for interrelationships between carrier frequency, channel
bandwidth, bit rate, and noise level. Practical projects such as text messaging over the SAM
channel and Caller ID signal decoding motivate student interest to further study of
communication systems.
Introduction
Hands-on laboratory projects help students to make connections between theory and practice.
Hardware-based projects often require a substantial amount of setup time and debugging effort,
and therefore can only explore a relatively small subset of the course topics. Computer-based
simulation and visualization of communication systems, on the other hand, allow students to
experience a wider variety of fundamental concepts in the same amount of time, provided that
the computer tools offer a sufficiently high level of abstraction. Since modern communication
systems are largely implemented by programmable DSP microprocessors or FPGAs, students
just getting started with communication systems can learn valuable practical implementation
skills by writing computer programs to create small-scale communication systems.
A set of ten new LabVIEW-based laboratory projects has been developed to support the
communication systems curriculum. These projects leverage the unique capability of LabVIEW
to quickly transform a concept into an interactive simulation. Hosted on the Connexions2 open
web-based content repository, the projects follow the format of a traditional paper-based lab
handout, but also include embedded video clips, or “screencasts,” to demonstrate the LabVIEW
tool in action and to explain relevant background theory. The projects refer to specific chapters
within standard communication systems textbooks3-11, helping faculty to choose projects relevant
to their course syllabi.
Each project strives to make communication systems concepts as tactile and hands-on as
possible, and to engage multiple senses. Whenever possible, signals are visualized as waveforms
and “auralized” as sound simultaneously. The real-time nature of the LabVIEW implementations
ensures that students can adjust a parameter and see and hear the resulting changes in behavior
immediately, helping students to quickly gain an intuitive feel for the systems under study. The
topics also motivate students with familiar “attention grabber” projects such as Caller ID, text
messaging, and audio signal processing.
This paper describes the overall structure and design of the laboratory projects, and the
implementation of the project materials on the Connexions resource. Each of the ten laboratory
projects is also summarized.
Page 14.341.3
Laboratory Project Structure
Each laboratory project opens with a summary of activities and expected results, learning
objectives, list of deliverables, and linkages to relevant chapters in popular textbooks3-11. An
introductory section presents enough background theory to bridge between the student’s
classroom experiences and the project activities. The introduction relays factual information as
text and static diagrams, and presents more complex material and concepts as video screencasts
created from a writing tablet. These screencasts feature handwriting, diagrams, and narration,
and serve as a virtual lecture with supporting whiteboard diagrams.
The laboratory procedure guides the student to create a set of software building blocks
(LabVIEW subroutines – “subVIs”) according to precise specifications, and then assemble these
building blocks to form a complete system (LabVIEW application VI). Each project requires
about five or more subVIs, although many subVIs are reused by several projects. For example,
the specifications of the utility subVI “util_BinarySymmetricChannel.vi”
(http://cnx.org/content/m18537) describe the subVI, provide a list of required input controls and
output indicators (and associated data types), state the required behavior of the subVI, and
illustrate relevant LabVIEW coding techniques with a screencast video. In this way students
practice good bottom-up implementation by building and debugging the low-level building
blocks before constructing the top-level system.
The laboratory project materials are hosted on the Connexions open resource at Rice University
(http://cnx.org). Connexions organizes content as discrete learning modules (individual web
pages) that can be combined into collections. Authors can create modules using CNXML, a
variant of XML that supports a rich variety of text markup, including MathML for mathematical
symbols and equations. Module authors maintain copyright, and agree to license their work
under the Creative Commons Attribution License12.
The laboratory projects explore several basic themes, including simulation and visualization of
fundamental concepts in communication systems, channel coding and error control, FSK
demodulation, and bandpass communications over a speaker-to-air-to-microphone (SAM)
channel. The ten laboratory projects and 40 subVI specifications are combined into a collection
called “Communication Systems Projects with LabVIEW,” http://cnx.org/content/col10610, and
are summarized below.
FSK Demodulation:
Examples
Rectangular pulses familiar to students from earlier digital logic courses seem intuitively obvious
for the signaling waveform of a digital communications system. However, finite channel
bandwidth smears the pulses into adjacent time slots, a phenomenon known as intersymbol
interference (ISI). This interference reduces noise margin and increases the bit error rate (BER)
in the received message. An eye diagram plot visualizes the time-domain signaling waveform at
the receiver; it illustrates the ISI effect and also facilitates direct measurement of optimum
Page 14.341.6
sampling time, noise margin, timing error sensitivity, jitter, and peak ISI. Mitigating intersymbol
interference requires a signaling waveform with zero value at the sample instants in all adjacent
time slots. The sinc pulse and the more practical raised cosine pulse both satisfy this
requirement.
Students begin by running the LabVIEW VI “ISI_and_EyeDiagram.vi” with front panel shown
in Figure 1 and block diagram in Figure 2. The VI uses a single event structure enclosed in a
while-loop structure to maximize responsiveness to front panel control changes without
needlessly refreshing the display as in a polled loop structure. The upper left controls provide
flexibility to explore single pulses, multiple pulses, various pulse shapes, and various channel
filter models and bandwidths.
The project continues with a video tutorial that explains how to interpret the various waveform
plots. For example, the transmitted and received pulses plots on the lower left of Figure 1 depict
each pulse individually, with color codes to match each transmitted pulse with its received pulse.
Students vary the channel bandwidth and observe how a rectangular pulse blurs further into the
time slots of adjacent pulses as channel bandwidth decreases. Students then change the pulse
shape to sinc and raised cosine, and observe how the damped sinusoidal oscillation produces null
values periodically; choosing the sampling instant at these null points eliminates ISI.
The color-coded plots in the lower left of Figure 1 are only a model, however. The pulses are
superimposed to produce the actual signaling waveforms plotted in the lower left of Figure 1.
Students are encouraged to understand the relationship between the color-coded individual
pulses and the superimposed pulses of the actual signaling waveform.
Next, students vary the sliders in the center left of Figure 1 to adjust the start time and time span
of the eye diagram. The yellow dashed lines on the transmitted and received waveform displays
on the lower right corner of Figure 1 track the slider control values, and the selected subset of the
waveform is plotted as the eye diagram in the upper right corner of Figure 1. Students are
instructed to begin with a time span of only one symbol, and then gradually increase the time
span. In this way the students can form the conceptual connection between the time waveform
and the overlapping nature of the eye diagram.
Transmitters use pulse amplitude modulation (PAM) to produce a baseband signaling waveform
prior to up-conversion for a bandpass channel. The receiver down-converts the signal back to
baseband and then apply one of two detection schemes. The simpler (and less expensive)
incoherent detection does not require carrier and bit synchronization as does coherent detection,
but at the expense of higher bit error rate. The learning objectives for this project include:
After reviewing the background theory presented as a mixture of text, mathematical equations,
diagrams, and videos, the students are directed to build and debug the following low-level
subVIs:
Figures 3 through 7 show the block diagrams the transmitter-related subVIs as illustrative
examples. Each of these subVI projects includes a screencast video to present relevant LabVIEW
coding techniques. Once completed, the students are guided through the process necessary to
integrate these subVIs into the top-level application VI shown in Figure 8 (front panel) and
Figure 9 (block diagram). During the system integration process students are provided with
checkpoint test values to confirm that they have properly implemented the system. Students
Page 14.341.8
experiment with their finished product and experience the remarkable ability of coherent
detection to recover a useful signal with relatively low bit error rate, even with significant
channel noise level.
Results
The beginning of December 2008 marked the public release of the laboratory project materials.
As of this writing, two months of usage data collected by the Connexions system indicates over
7,000 page views. Google Analytics tracks the screencast videos, and reports over 800 videos
viewed with an average viewing time of four minutes, about half of the typical duration of a
video. Home countries of the majority of viewers include the USA, Poland, India, Pakistan, UK,
France, Germany, China, Canada, and Romania, as well as over 50 additional countries and
territories.
Summary
“Communications Systems Projects with LabVIEW” features ten project activities in digital
communication systems based on the LabVIEW graphical dataflow programming platform. Each
project includes introductory material in the form of text and narrated screencast videos,
specifications for low-level subVI building blocks, and step-by-step instructions to assemble
application VIs to implement a variety of simulations, visualizations, and working transmitters
and receivers. Usage statistics during the first two months of public availability of the project
materials show a strong interest so far, and we plan to work with a variety of universities to
encourage adoption of the materials.
Bibliography
1. http://ni.com/labview
2. Baraniuk, R.G., C.S. Burrus, D.H. Johnson, and D.L. Jones, “Sharing Knowledge and Building Communities in
Signal Processing,” IEEE Signal Processing Magazine, pp. 10-16, Sep 2004.
3. Carlson, A.B., P.B. Crilly, and J.C. Rutledge, Communication Systems, 4th ed., McGraw-Hill, 2002.
4. Couch, L.W. II, Digital and Analog Communication Systems, 7th ed., Pearson Prentice Hall, 2007.
5. Haykin, S., Communication Systems, 4th ed., Wiley, 2001.
6. Haykin, S., and M. Moher, Introduction to Analog and Digital Communication Systems, 2nd ed., Wiley, 2007.
7. Lathi, B.P., Modern Digital and Analog Communication Systems, 3rd ed., Oxford University Press, 1998.
8. Proakis, J.G., and M. Salehi, Fundamentals of Communication Systems, Pearson Prentice Hall, 2005.
9. Proakis, J.G., and M. Salehi, Communication Systems Engineering, 2nd ed., Pearson Prentice Hall, 2002.
10. Stern, H.P.E., and S.A. Mahmoud, Communication Systems, Pearson Prentice Hall, 2004.
11. Wheeler, T., Electronic Communications for Technicians, 2nd ed., Pearson Prentice Hall, 2006.
12. Creative Commons Attribution License, http://creativecommons.org/licenses/by/2.0/.
Page 14.341.9
Figure 1: Front panel of LabVIEW VI “ISI_and_EyeDiagram.vi” used to visualize intersymbol
interference as an eye diagram.
Page 14.341.10
Page 14.341.11
Figure 5: The “pam_ManchesterPulse.vi” subVI produces a two-valued array suitable for the
Manchester pulse shape.
Page 14.341.12
Figure 6: The “pam_TransmitFilter.vi” subVI maps a list of signal levels onto pulse waveforms
using an FIR filter.
Figure 7: The “pam_TransmitSync.vi” subVI produces Boolean arrays to indicate when a bit
interval begins and ends.
Page 14.341.13
Figure 8: Front panel of top-level application VI for coherent detection.
Page 14.341.14
Figure 9: Block diagram of top-level application VI for coherent detection.
Page 14.341.15