[ieee 2011 frontiers in education conference (fie) - rapid city, sd, usa (2011.10.12-2011.10.15)]...
TRANSCRIPT
Session F1G
978-1-61284-469-5/11/$26.00 ©2011 IEEE October 12 - 15, 2011, Rapid City, SD
41st ASEE/IEEE Frontiers in Education Conference
F1G-1
Wow! Linear Systems and Signal Processing is fun!
Maurice F. Aburdene and Kundan Nepal Electrical Engineering Department, Bucknell University, Lewisburg, PA 17837
Abstract - We describe a recent offering of a linear
systems and signal processing course for third-year
electrical and computer engineering students. This
course is a pre-requisite for our first digital signal
processing course. Students have traditionally viewed
linear systems courses as mathematical and extremely
difficult. Without compromising the rigor of the
required concepts, we strived to make the course fun,
with application-based hands-on laboratory projects.
These projects can be modified easily to meet specific
instructors’ preferences.
Index Terms- Linear Systems, Signal Processing, Signal
Processing Education, Student Learning
INTRODUCTION
Most undergraduate programs in electrical and computer
engineering require a course in linear systems, signals and
systems, signal processing, or a similarly named course in
the third year. There are many excellent texts in these areas
(too many to list here). The texts and courses “focus” on
continuous-time signal representation, discrete-time signal
representation, sinusoidal signal analysis and design
methods, linear system definitions and methods,
differential equations, difference equations, modeling of
systems, spectral analysis, Laplace transforms, analog
filters, sampling, Z-transforms, digital filters, continuous-
time Fourier series, convolution, and continuous-time and
discrete Fourier transforms. In addition, many texts and/or
linear systems classes incorporate software, such as
MATLAB®, Spice, Mathematica®, Mathcad® or locally
developed software. We have tried to teach all of these
topics in our classes and as instructors, we think they are
great and try to impart our excitement to our students.
Pendergrass states that students have difficulty in such
courses since they view them as “only math and theory” [1].
Greenberg, Smith and Newman found that many students
had “difficulty mastering the fundamentals of spectral
analysis, appearing to be overwhelmed by the interaction of
multiple variables” [2].
In addition, if you teach one of the linear systems courses,
then you might have observed that such a course is
perceived by students as:
Theoretical and mathematical[1],[2]
Notation intensive[2]
Difficult [1]-[4]
Fast paced and time-intensive
Counterintuitive, when moving from continuous-
time domain to discrete-time domain
Educators have tried to address the above concerns. For
example, Ferre, Giremus and Grivel have tried to make the
course more appealing by focusing on small-group based
learning projects [5]. Wright, Morrow, Allie and Welch
suggested ways to enhance engineering education and
outreach [6], and Turner and Hoffbeck suggested ways to
put theory into practice using software [7]. Warren
suggested using computational projects to optimize student
learning and retention of fundamental concepts [3]. Buck
and Wage proposed active and cooperative learning (ACL)
in signal processing courses [4].
In the summer of 2009, we decided to tackle the issue and
completely redesign the course, ELEC 320 (Linear Systems
and Signal Processing), trying to make it as much a fun
course for the students as it is for the instructors. The basic
idea was to make the course application-based and to have
hands-on laboratory projects. Our goal was to have students
view the course as an opportunity to learn most of the above
topics (very ambitious goal) and have fun. We decided not
to choose a new text, but rather, use the texts that students
had used earlier, along with web based-resources, and
industrial application notes [8]-[11]. We taught the course in
the fall of 2009 using seven projects (applications) in
addition to an introduction to MATLAB and a final project.
Each application and the major concepts involved were
discussed first in class. Students were asked to perform
experiments in lab to improve their understanding of the
major concepts and their applications. Students were then
required to write project reports (learn by writing). The
course also required the students to propose a final project
that covered one or more areas learned in the classroom.
The students then devote the final three weeks of the
semester designing and implementing their ideas to produce
a functional product. Two of the projects are described in
detail in [12].
PROJECTS AND APPLICATIONS
I. Introduction to MATLAB Using Circuit Examples
Throughout the semester, students used MATLAB to
analyze linear systems and signals applications and
problems. Our students have had prior programming
experience using JAVA and we used two introductory labs
to focus on helping students familiarize themselves with the
Session F1G
978-1-61284-469-5/11/$26.00 ©2011 IEEE October 12 - 15, 2011, Rapid City, SD
41st ASEE/IEEE Frontiers in Education Conference
F1G-2
MATLAB interface and learn its rules and syntax. The labs
focused on the representation of signals as arrays and
matrices; processing of these arrays and matrices; plotting of
signals and conditional statements and loops. In order to
show how MATLAB might be used to analyze signals, two
examples were chosen. In the first example, students were
asked to analyze an inverting op-amp circuit; create both a
DC and AC input signal and analyze the output response in
each case. For the second example, students were asked to
create a signal by combining three sinusoidal waveforms to
approximate a square wave signal with 1 kHz frequency.
Students were then tasked with using this signal as an input
to a series RC circuit with bandwidth of 1.5 kHz and to
derive and plot the output voltage across the capacitor.
These examples were an indirect introduction to the Fourier
series and analog filters incorporated in some of the course
projects.
II. Satellite Communications
FIGURE 1
A SIMULINK MODEL OF A SATELLITE COMMUNICATIONS
SYSTEM.
Communication systems provided us with excellent
applications of important concepts that students had studied
in ELEC 120 (Foundations of Electrical Engineering) and
ELEC 225-226 (Circuit Theory I &II). This project
introduced students to a satellite communication system
where a signal is transmitted from a ground transmitter,
received by the satellite after some delay and reflected back
to the ground receiver [12]-[14]. Students analyzed the
signal received by the ground station as the sum of the
signal sent from the station and the signal reflected back
from the satellite. This interesting project helped students
review sinusoidal signals, phasors, power, and understand
the effect of delays, echoes and fading. In addition, the
students got an opportunity to learn more about MATLAB
and Simulink while getting to implement fundamental
concepts they had previously learned as shown in Figure 1.
This project is fully described in [12].
III. Data Communications and Fourier Series
In this project, we focused on Fourier analysis of periodic
signals and applications to data communication [12]-[15].
Students were given the task of analyzing an 8-bit ASCII
character transmitted at a particular bit rate over a
communication link with a given bandwidth. In particular,
we were interested in having the students determine the
harmonic content and the time-response of both the
transmitted signal and received signal. Students
programmed the Agilent 33220A 20 MHz Function
Generator to create the ASCII character and created a filter
to view and analyze the output response. Students also used
MATLAB and Simulink to simulate the communication
model. This project reinforced concepts of periodic signals,
Fourier series, harmonics, phase shift, signal power, bit rate,
link bandwidth, Nyquist's theorem and Shannon‟s theorem
for data transmission on a noisy channel. Details of this
project are presented in [12].
IV. Modeling and Control of a DC Motor
FIGURE 2
TOP VIEW OF BOARD WITH DC MOTOR AND SENSORS.
The purpose of this project was to build, test and
characterize a speed control system [16]. The primary
objective of this lab was to model systems using differential
equations and Laplace transforms. Students were given a
differential equation model of a DC motor and were asked
to use Laplace transforms to obtain the open-loop and
closed loop transfer functions. The experiment used a DC
motor with an AC tachometer as shown in Figure 2. Using
rectifiers, the students converted the tachometer signal to
DC and using op-amps created a proportional feedback
speed control system.
AC
TachRectifier
Amplifier
M
DC Motor
+-
Vref Out
FIGURE 3
MODEL OF THE SPEED CONTROL SYSTEM.
For this project, students were asked to build the system
shown in Figure 3 and answer the following questions:
Session F1G
978-1-61284-469-5/11/$26.00 ©2011 IEEE October 12 - 15, 2011, Rapid City, SD
41st ASEE/IEEE Frontiers in Education Conference
F1G-3
Let va be the input voltage to the motor, τ=6.7 sec and K=
46 rad/sec-volt. The motor speed, the output, can be
determined directly from the equation written as:
What is the step response of the system?
What is the transfer function H(s) = W(s)/Val(s) based
on this equation?
Draw a block diagram of the closed-loop (CL) control
system. Obtain the transfer function of the CL system.
Use a square wave as your input voltage and observe
the speed of the motor and the rectifier output voltage
using the oscilloscope. What is the time constant of the
closed loop system? Can you determine K and τ?
V. Touch-tone® Decoding and Filters
FIGURE 4
PROGRAMMABLE FILTER BOARD.
In this project, we focused on analog filter design for the
Touch-tone® telephone dialing system [17], using the MF10
(universal monolithic dual switched capacitor filter) chip,
including a discussion of the history of the development and
design issues. To minimize the time devoted to building the
detection filters, a circuit board with an MF10 filter (shown
in Figure 4) was given to the students. The circuit board had
the necessary clock generator, audio jacks, operational
amplifiers and an area to wire circuit components. Students
were tasked with using the MF10 datasheet to create the
required filter to detect a particular touch-tone. Based on
their calculations, students then programmed the board by
proper selection of resistors. Here is a sampling of some
questions from this project:
In your own words describe the Touch-tone® telephone
dialing system. How many tones are generated per
pushbutton? What are the frequency assignments for
the pushbuttons?
Suppose the transmitter was nonlinear, list the first
three harmonics of each frequency. Compare these
harmonics with the original frequencies.
Develop a block diagram(s) for a detection system
using analog filters.
Design a lowpass/highpass filter with a 1 kHz
bandwidth. Test your design using a tone generator
program (Dual-Tone Multi-Frequency, DTMF) and the
sound card. Observe and record the output of the filter
when you push the 1 button. Observe and record the
output of the filter when you push the # button.
Using the output of the filter as an input, design a
bandpass filter to detect the 7 button. Compare the
output of the filter with output when depressing other
buttons. What is the frequency response of the filter?
What would happen to your detector circuit if the
transmitter frequencies varied by ±2%?
VI. Analog-to-Digital and Digital-to-Analog Converters
The objective of this project was to help reinforce the
concepts of analog-to-digital converters (A/Ds), digital-to-
analog converters (D/As), sampling and digital signal
processing. Students used the Keithley KUSB-3100 data
acquisition hardware, the sound card and MATLAB for
signal acquisition and processing. Students created
waveforms using a function generator, sampled the
waveforms at various sampling rates using the KUSB
hardware and then processed the samples using MATLAB
to generate the magnitude and phase plots using fast Fourier
transforms (FFT). Students also sampled and recorded
sound at various sampling rates using the sound-card and
processed it using MATLAB/Simulink. Here is a sampling
of some questions from this project:
Please study the Keithley KUSB 3100 data sheet and
answer the following questions: How many bits does
this A/D have? What is the maximum analog input
voltage? Develop the digital output vs. analog input
characteristic? What is the maximum, minimum and
average conversion error? Assume that the conversion
error introduces noise, what is the signal-to-noise ratio
for a 12-bit A/D?
In your own words, describe (a) Nyquist‟s sampling
theorem and (b) Shannon‟s theorem for noisy channels.
Using the MATLAB program provided, sample a 200
Hz sinusoidal 1V peak-to-peak signal. Now modify the
program to sample (a) two periods of the input signal,
(b) the input signal at 50 Hz, 200Hz, 500Hz, and 1 kHz.
Relate the above to the Nyquist sampling frequency.
Use the MATLAB fft program to determine magnitude
and phase spectrum of the input signal. Repeat this for a
square wave signal.
Use the program to sample a sinusoidal input signal
using the A/D and to output the sampled signal using
the D/A. Observe the input and output on the
oscilloscope.
Just like the Keithley board, the sound card in your
computer can be used to acquire analog signals.
Assume the sampling frequency is 8 kHz and a signal is
sampled for 10 seconds. How many samples are
collected? What is the time difference between two
samples?
Session F1G
978-1-61284-469-5/11/$26.00 ©2011 IEEE October 12 - 15, 2011, Rapid City, SD
41st ASEE/IEEE Frontiers in Education Conference
F1G-4
Set up your function generator to generate a sinusoidal
signal of 2 kHz. Connect a speaker to the function
generator. Now set the sampling frequency of your
program to 8 kHz and acquire 2 seconds of data. Plot
the data just acquired and play it using the sound
command in MATLAB.
Now change the function generator frequency to 6 kHz.
Acquire 2 seconds of data and view the data using the
plot command. Does the data look the same as before?
Play the sound using the sound command. Does it
sound the same? Repeat this for a sampling frequency
of 11,025Hz.
Instead of some tone generated through the function
generator, let us actually work on real speech signals.
Using the MATLAB program, record a voice at a
sampling frequency of 22,050 Hz. Play it using the
sound command. Now change the sampling frequency
to 11,025 Hz. Play it using the sound command again.
Do you hear any difference?
VII. Digital Filter Design
This project used the previous project on A/D, D/A and
sampling as a foundation to introduce students to Finite
Impulse Response (FIR) and Infinite Impulse Response
(IIR) filters. Students used MATLAB/Simulink to describe
the difference equations and interpret the transfer function
of the filters and perform an analysis of the frequency
response of the filters. In addition, students tested the
different filters by using their favorite music as inputs to the
filter. Here is a sampling of questions from this project:
In your own words, describe FIR and IIR filters. What
are the advantages/ disadvantages of both the IIR and
FIR filters?
Let x[n] = ∂[n]. Find y[n] = x(n-N). Let N=4. Sketch
y[n] vs. n. Find H(z) =Y(z)/ X(z). Sketch the amplitude
of H(z) vs. ω and phase of H(z) vs. ω. Discuss your
results.
Let x[n] = ∂[n]. Find y[n] = (x[n] + x[n-1] + ... + x[n-
(N-1)/N]) with N=4. Sketch y[n] vs. n. Find H(z) =Y(z)/
X(z). Sketch the amplitude of H(z) vs. ω and phase of
H(z) vs. ω. Discuss your results.
Load your favorite music file into MATLAB, x[n].
Implement the filter and listen to the filtered output
using the sound card. Experiment with various values of
N. Discuss your results.
Assume zero initial conditions. Let x[n]= ∂[n]. Find
y[n] = -αy[n-1] +x[n-1]. Sketch y[n] vs. n. Find H(z) =
Y(z)/X(z). Sketch the amplitude of H(z) vs. ω and phase
of H(z) vs. ω. Discuss your results. Implement this filter
and listen to the filtered output of your music file.
Experiment with various values of α. Discuss your
results.
Now implement the filter y[n] = x[n] - x[n-1]. Listen to
the filtered output of your music and discuss your
results.
VIII. Convolution: Computations and Applications
This project was designed to help students learn about the
impulse response of continuous-time systems and see the
practical application of convolution. Students were first
asked to determine the impulse response of an RC circuit
both analytically and experimentally. Then they were asked
to use convolution to determine the response to various
input signals. In addition, the class went to measure the
impulse response of the Powers Theatre (on campus). As an
application of convolution, students were asked to
experiment with music by taking their favorite music and
using convolution to determine how the music would sound
in the theatre. The trip to the Powers Theatre also
demonstrated some of the basic concepts discussed in the
satellite communications project. Here is a sampling of
some questions from this project:
Consider a series RC circuit driven by a voltage source,
with the output voltage measured across the capacitor.
We will use R = 10 kΩ and C = 0.1 μF. Analyze this
circuit and derive the expression for the impulse
response, h(t). In your analysis, consider applying a
rectangular pulse that gets briefer and briefer while
maintaining unit area.
Analyze the circuit and derive an expression for the
output, y(t).
Devise a procedure to experimentally measure the step
response of the circuit.
Obtain the impulse response of the circuit, h(t).
Use convolution to predict the response of this circuit to
a 5 volt step function. Apply a 5 volt square wave and
compare the response with your prediction.
Use convolution to predict the response of this circuit to
a 2 volt sinusoidal signal, f(t) = 2 sin(ωt). Then apply a
2 volt sinusoidal signal and compare the response with
your prediction.
Using the Keithley USB board, sample the impulse
response, h(n), of the RC circuit.
Load a music file, x(n) and convolve it with h(n) using
the conv function. What effect does convolution with
h(n) have on the music, i.e. what is different about the
music after the processing?
Load the impulse response of the Powers Theatre. The
objective is to use convolution to hear digitized music
and then play the resulting music and to listen to it as if
you are in the Powers Theater. Plot the impulse
response, h(n), of the Powers Theater vs. sample
number.
Load a music file, x(n) and convolve it with h(n). Play
x(n) and y(n). What effect does convolution with h(n)
have on the music?
IX. Final Projects
Students were asked to propose their own project that
covered one or more concepts learned in the course. The
Session F1G
978-1-61284-469-5/11/$26.00 ©2011 IEEE October 12 - 15, 2011, Rapid City, SD
41st ASEE/IEEE Frontiers in Education Conference
F1G-5
final project, which spanned three weeks, involved the
design, implementation, test and documentation of a
complete system (either hardware or software). At the end
of the semester, students were required to demonstrate a
working system to the class and guests, and prepare a
professional presentation. In addition, students were
required to write a technical report that documented their
design, a product specification datasheet for use by the
marketing group, and a sales brochure. The open-ended
nature of the project yielded a number of interesting
projects.
ASSESMENT
Since the course underwent a major redesign, and we had
tried a new project based approach to the course, it was
important for us to find out how the students perceived the
different projects. At the end of the semester (Fall 2009),
students were asked to fill out an anonymous survey which
included that they indicate “what labs you found helpful so
we can improve them.” The result of the survey is presented
in Figure 5 for each project. A total of 24 students
responded to the survey and rated each project on a scale of
1 to 5. A rating of 1 indicates that the students did not find
the project helpful while a rating of 5 indicates the students
found the projects very helpful in enhancing their
understanding of the concepts involved. Students
overwhelmingly seemed to like the first project titled
“Introduction to MATLAB using Circuit Examples”. The
final project received high scores as well. This is not
surprising since the students had themselves worked to
create the project specification, planned it, and implemented
the project. The median for each project was 4 out of 5,
indicating general satisfaction with the projects in helping
the students understand the concepts involved.
FIGURE 5
RESULTS OF THE END-OF-SEMESTER STUDENT SURVEY FOR EACH PROJECT (TOTAL RESPONDENTS= 24 STUDENTS).
Session F1G
978-1-61284-469-5/11/$26.00 ©2011 IEEE October 12 - 15, 2011, Rapid City, SD
41st ASEE/IEEE Frontiers in Education Conference
F1G-6
TABLE I
COMPARISON OF COURSE LEARNING GOALS FOR FALL 2008, 2009 AND 2010.
2008
2009
2010
Course Learning Goal Mean Median
Std.
Dev Mean Median
Std.
Dev Mean Median
Std.
Dev
Identify and use signal models 3.1 3 0.99 4.04 4 0.62 4.13 4 0.92
Develop models of engineering systems,
physical systems, and social systems 2.7 2.5 1.16 3.63 4 0.88 4.2 4 0.68
Analyze continuous-time system models
by applying Fourier and frequency response methods 3.4 3.5 0.97 3.96 4 0.69 4.13 4 0.92
Analyze discrete-time systems 2.9 3 0.88 3.96 4 0.75 3.93 4 0.96
Develop computer models using available software packages for analysis and design 3.2 3 0.79 3.75 4 0.94 4.07 4 1.1
Design a hardware or software system and
formulate system specifications 2.6 2 1.35 3.58 4 0.83 3.93 4 1.03
Table I shows a comparison of the course learning goals for
the course offerings in 2008, 2009 and 2010 using the same
scale as the survey. The classes had 10, 24, and 15 students
respectively. The course offered in 2008 was a traditional
text [14]/lecture/lab format and did not use the projects
discussed in this paper. Students responses show that scores
for the course learning goals improved from 2008 to 2009 as
a result of the move to a project based course. The learning
goals results for 2010 shows further improvements in all but
“analyze discrete-time systems.”
SUMMARY
This paper presented an overview of our project based
course on linear systems and signal processing. As
instructors, our motivation was to dispel the notion that this
type of course is too mathematical and difficult to be fun
and exciting. Through application oriented projects, we tried
to convey the enthusiasm we have for the subject to our
students in the course. An end of semester survey (Fall
2009) showed that while students did in fact enjoy the
project driven approach, we have room for improvement.
Based on the survey and our own analysis, the course was
modified from this offering in the fall of 2010. We dropped
the modeling and control of a DC motor and have gone back
to requiring a textbook [14] for the course. Textbooks from
previous classes that we thought would have been kept by
students as “reference” materials for their own private
“libraries” were, in fact, sold back.
ACKNOWLEDGEMENTS
We thank Professors Rich Kozick, Heath Hansum, James
Baish, and Mr. Tom Thul for their valuable help with the
design of the projects.
REFERENCES
[1] N. A. Pendergrass, “Using Computers, Simulators and Sound to give
hands-on experience,” Proc. of the American Society for Engineering
Education Annual Conference & Exposition, 1996.
[2] J. E. Greenberg, N. T. Smith, and J. H. Newman, “Instructional
module in Fourier spectral analysis, based on principles of „How People Learn,‟” Journal of Engineering Education, vol. 92, pp. 155 -
165, 2003.
[3] S. Warren, “Optimizing Student Learning and retention of time and frequency domain concepts through numerical computation projects,”
Proc. of the American Society for Engineering Education Annual
Conference & Exposition, 2005. [4] J. R. Buck, and K.E. Wage, “Active and Cooperative Learning in
Signal Processing Courses,” IEEE Signal Processing Magazine, vol.
22 no. 2, pp 76-81, 2005. [5] G. Ferre, A. Giremus, and E. Grivel, “Small-group learning projects
to make signal processing more appealing: From speech processing to
OFDMA synchronization,” IEEE International Conference on Acoustics, Speech and Signal Processing, pp. 2317-2320, 2009.
[6] C. H. G. Wright, M. G. Morrow, M. C. Allie, and T. B. Welch,
“Enhancing engineering education and outreach using real-time DSP,” IEEE International Conference on Acoustics, Speech and
Signal Processing (ICASSP) pp. 2657-2660, 2008.
[7] J. Turner, and J.P. Hoffbeck, “Putting Theory into Practice with Simulink,” Proc. of the American Society for Engineering Education
Annual Conference & Exposition, 2005.
[8] J.W. Nilsson, and S.A. Riedel, “Electric Circuits (8th Edition),” Prentice-Hall, 2008.
[9] L. S. Bobrow, “Fundamentals of Electrical Engineering,” Oxford
University Press, New York, 1996. [10] A. S. Sedra, and K.C. Smith, “Microelectronics Circuits (5th
Edition),” Oxford University Press, 2004.
[11] Agilent Technologies, “The Fundamentals of Signal Analysis”, Application Note 243.
[12] M. F. Aburdene, and K. Nepal, “Satellite Communications, Data
Communications, and Simulation,” Proc. of the American Society for Engineering Education Annual Conference & Exposition, 2011.
[13] D. R. Fannin, W. H. Tranter, and R. E. Ziemer, “Signals and Systems:
Continuous and Discrete: Fourth Edition,” Prentice Hall, 1998. [14] M. J. Roberts, “Fundamentals of Signals & Systems,” McGraw Hill,
New York, 2008.
[15] A. S. Tanenbaum, “Computer Networks (3rd Edition),” Prentice-Hall, 1996, (Chapter 2, pp. 78-81).
[16] R. C. Dorf, and R. H. Bishop, “Modern Control Systems (11th Edition),” Prentice-Hall, 2008.
[17] L. Schenker, "Pushbutton Calling with a Two-Group Voice
Frequency Code," The Bell System Technical Journal, vol. 39, pp.335-255, January 1960.