A N Im At In G T H Eoret Ical Co N Ce P Ts For S Ign Al Proce Ssin G Co .

1y ago
3 Views
1 Downloads
741.45 KB
10 Pages
Last View : 2m ago
Last Download : 3m ago
Upload by : Mya Leung
Transcription

Session 3220 Animating Theoretical Concepts for Signal Processing Courses James H. McClellan, Jordan Rosenthal Georgia Institute of Technology / MIT Lincoln Laboratory Abstract: Although most topics in Digital Signal Processing (DSP) are highly mathematical, most experts possess knowledge of these concepts that is primarily graphical. Therefore, we have developed a variety of multimedia adjuncts for use in an introductory signal processing course at Georgia Tech to teach abstract concepts. These same multimedia tools are also valuable in senior-level and graduate DSP courses. Among the available resources are animations, demonstrations MATLAB GUIs that address nearly every major conceptual issue in a basic DSP course. 1. INTRODUCTION Since 1994 we have developed and used a variety of multimedia animations and demonstrations as an integral part of the sophomore-level signal processing course at Georgia Tech. We have found it most convenient to present these tools to beginning students either in the form of graphical user interfaces (GUIs) programmed in MATLAB, or animations and movies produced in MATLAB. The GUIs and movies can serve a variety of purposes. First of all, they address nearly every major conceptual issue in the course, so we hope that students will use them to gain visual insights that are not possible from a printed page. In addition, we have found that instructors benefit as much as the students, because they can employ the GUIs and movies as lecture aids that supplement traditional methods of instruction. The GUI tools are convenient because they allow the instructor to quickly pose alternate cases or respond to student questions. Animations and movies serve a similar purpose, and even though they are less versatile than a GUI, they can be created more quickly. Ideally, the GUIs would engage students in active learning through interactive exercises, but this is difficult to accomplish in all cases. We have had some success with GUIs that generate drill problems. However, one interesting finding is that students are reluctant to use these new tools when studying alone. Therefore, we have started to create new homework and lab assignments that require active use of the GUIs to compare computer-generated results to analytical derivations. In this paper, we will describe the features of a few GUIs and animations and the scenarios in which they have successfully been deployed. Page 7.203.1 Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright 2002, American Society for Engineering Education

2. DEVELOPMENT USING MATLAB We have found it most convenient to present these tools to beginning students in the form of graphical user interfaces (GUIs) programmed in MATLAB. In the following sections, we will describe features of the GUIs, and some different scenarios where they have been successfully deployed. In this section, we show why MATLAB [2], or an equivalent language, should be chosen for developing of high quality GUIs. Another consideration for our curriculum is that our students already use MATLAB for many courses, so they have universal access to MATLAB. GUIs that illustrate engineering concepts typically require an advanced numerical engine, a sophisticated plotting package, and professional user-interface capabilities. When choosing a computer language for developing GUIs, these requirements must be balanced with other issues such as the complexity of the programming language, the portability of the code produced, and widespread availability to other users. While developers want to produce professional products, they do not want to spend an inordinate amount of time writing code. These conflicting desires could be satisfied with large libraries of pre-written code from which the developer can draw. While code repositories exist for almost all languages, most engineering GUIs require the use of multiple libraries. For example, a single GUI can easily involve three libraries: one to do the back-end numerical calculations, a second to create professional quality plots, and a third to handle the userinterface aspects of the GUI. Tracking down the necessary libraries and integrating them into a cohesive application can require a substantial amount of time. Development time can be reduced if the engineering GUI is written in a language such as MATLAB because the extensive library of engineering functions greatly simplifies the back-end programming. As a simple but important example, consider an application that needs to handle complex data, such as spectrum analysis with the Fourier transform. Because complex numbers are a built-in datatype in MATLAB, no special considerations are needed, unlike other languages where additional packages must be implemented. Aside from the numerical libraries, MATLAB also has extensive graphical functions and user interface tools that exceed the capabilities of other programming environments. Plots, animations, and GUIs can be quickly developed and they will run on any platform that can run MATLAB. Very few other languages integrate the numerical, graphical, and user-interface aspects as easily as MATLAB. With MATLAB, a developer can spend less time worrying about how a GUI is implemented, and more time thinking about what will make it a useful tool. One drawback to using MATLAB is that its GUIs are not as portable as GUIs written in a language like JAVA. For example, you cannot run a MATLAB GUI inside a web page. The code can still be distributed via the web, and because MATLAB files are just small text files, the code downloads quickly. When choosing a language for developing our GUIs, we felt the small reduction in portability was overshadowed by the superior way in which MATLAB integrates the different capabilities necessary to quickly develop an engineering GUI. 3. GUI DESCRIPTIONS In this section, we will discuss the details of five GUIs that we have developed recently [5]. Page 7.203.2 Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright 2002, American Society for Engineering Education

3.1 Convolution GUIs Two GUIs have been developed to illustrate the principle of convolution: CCONVDEMO for continuous-time convolution, and DCONVDEMO for discrete-time convolution. Both GUIs are operated in the same manner — the only difference being the domains from which the signals are drawn. Features of these GUIs include: Users can choose from a variety of different signal types and set the signal’s parameters. Signals can be dragged horizontally with the mouse with results displayed in real time. A tutorial mode lets students hide convolution results until requested. Various plot options enable the tool to be effectively used as a lecture aid in a classroom environment. When either convolution GUI loads, the user is prompted to choose the two signals that will be convolved together. The process of choosing a signal involves opening a dialog box in which the signal class can be chosen from a drop-down box, and then adjusting the signal's parameters using a set of on-screen controls. The GUI not only plots a graph of the signal, but it also provides the written formula that describes the signal. We believe that this juxtaposition of the visual and the written representations of the signal are essential in allowing a student to discover the connection between the analytical paper-and-pencil world and the hands-on world of numerical computing. After initializing the GUI by choosing the two signals to be convolved, the user is presented with plots that describe the various components of convolution. Figures 1 and 2 illustrate the two GUIs in this state. One of the trickiest parts of learning convolution is understanding the “flip and slide” viewpoint. The GUI supports this visualization by letting the user drag the signal horizontally with the mouse. Thus, the user can change the sample for which the convolution output is being calculated. Another feature allows the user to select the flipped signal, illustrating that convolution is commutative. FIGURE 1 CONTINUOUS CONVOLUTION DEMO FIGURE 2 DISCRETE CONVOLUTION DEMO Page 7.203.3 Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright 2002, American Society for Engineering Education

3.2 LTIDemos DLTIDemo is a GUI that illustrates the frequency response concept — when the input to an LTI system is a sinusoid of a particular frequency, then its output will also be a sinusoid of the same frequency, but with a possible change in its amplitude and phase. Figure 3(a) shows a screen shot of this GUI; Fig. 3(b) shows CLTIDdemo, the continuous-time counterpart. The input sinusoid is shown on the left, the frequency response of the filter in the middle, and the output sinusoid on the right. Using the controls in the lower left of the GUI, the user can control the parameters of the input sinusoid. These changes take effect immediately. As with the convolution GUIs, the formulas for the sinusoids are also given in their textual form to solidify the connection between the written and visual representations of the sinusoid. Using the controls in the lower right of the GUI, the user can change the type of filter and its corresponding parameters. A number of preset filters are available from which the user can choose. These include both ideal and actual filters, thus allowing the instructor to move quickly between an abstract and realistic description of the filtering operation. Other interesting topics that can be illustrated with the DLTIDemo GUI, include: The frequency of the input can be increased beyond the Nyquist frequency to illustrate aliasing The length of an averaging filter can be increased and its narrowing effect on the main lobe of the frequency response observed The effect of linear phase filters can easily be observed and related to the time delay of the output sinusoid FIGURE 3(a) DISCRETE LTI (LINEAR TIME INVARIANT) SYSTEM DEMO FIGURE 3(b) CONTINUOUS LTI SYSTEM DEMO WITH A BPF 3.2 Aliasing Demo The sampling and aliasing demo (Fig. 4) illustrates the frequency spectrum changes that occur during analog-to-digital conversion. Both the time domain and frequency domain are shown for the analog signal at the input to the A/D, and the digital signal at the A/D output. In addition, the D/A converter is included, so that the effect of aliasing can be illustrated. In Fig. 4 the D/A output frequency is lower than the input frequency to the A/D converter because the sampling rate is not high enough. Page 7.203.4 Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright 2002, American Society for Engineering Education

FIGURE 4 SAMPLING AND ALIASING DEMO 3.3 SinDrill and ZDrill SinDrill and ZDrill are GUIs that present students with drill problems. SinDrill tests the user’s ability to determine basic parameters of a sinusoid, while ZDrill tests the user’s ability to calculate the result of simple arithmetic operations on complex numbers. Both GUIs have a level parameter that can be set to either beginner or advanced. The primary advantage of using a drill GUI for this type of problem is that the GUIs can generate an endless supply of new problems; whereas the number of drill problems found in the back of a textbook is limited SinDrill, shown in Fig. 5, asks the user to determine the amplitude, frequency, and phase of a test sinusoid from a plot. Aside from the test sinusoid, the user's guess can also be displayed. This visual feedback is important because a student can quickly see how close their guess is to the correct answer. Visual feedback is even more important in ZDrill (see Fig. 6). In fact, one of the main purposes of ZDrill is to emphasize the vector view of a complex number. The student first chooses an operation that will be tested. Supported operations include: addition, subtraction, multiplication, division, inversion, and conjugation. After choosing an operation the computer generates one or two complex numbers, depending on the operation involved. The numerical values of the complex numbers are displayed to the user in text boxes, and are graphically drawn as vectors in the plane. The user must then provide the answer for the operation. For example, in Fig. 6, the user is being asked to find the sum of the two complex numbers that are drawn as vectors in the lower left axis. When the student enters a guess, the vector representing that complex number is drawn in blue in the lower right axis. Page 7.203.5 Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright 2002, American Society for Engineering Education

Because the correct answer can also be shown, the student can visually determine how close the guess is to the correct answer. For example, the GUI shown in Fig. 6 has its options set to show how the two input vectors can be placed head to tail to find the overall sum (displayed in black). FIGURE 5 SINDRILL: READING SINUSOIDS DRILL FIGURE 6 ZDRILL: COMPLEX NUMBER OPERATIONS DRILL 4. ANIMATION DESCRIPTIONS While GUIs enhance the educational experience via active student participation, they can take a long time to develop and require event handling for the interface. Often, complicated theoretical ideas can just as easily be explored using computer animations, which take substantially less time to produce because only one situation is shown. Figure 7 contains screenshots of a few selected animations that are included on the DSP First CD-ROM [3]. The animation in Fig. 7(a) contains a three-dimensional view of a z-transform with the associated zero-pole plot superimposed at the top of the plot box. As the animation progresses, the view is rotated and the outline of the frequency response (in blue) peels off the unit circle. The animation in Fig. 7(b) illustrates the same concept, but in a different way. An arrow traces out the unit circle and the frequency response gets drawn in the inset axes. The movie in Fig. 7(c) shows the connection between the time domain, frequency domain and transform domain for digital filters, while the animation in Fig. 7(d) illustrates the reconstruction process of the sampling theorem. These animations which are typical of the kinds one needs to create for an engineering class would have been nearly impossible to create without the extensive numerical engine in MATLAB to do the complex calculations and generate the plots. The animations shown in Fig. 7 were created using MATLAB scripts that generated the movie frames and wrote them out in the QuickTime format [1]. When these animations were first created, MATLAB did not natively support the creation of movie files. It was, therefore, necessary to use a Page 7.203.6 Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright 2002, American Society for Engineering Education

public domain function to write the QuickTime movies [4]. The latest version of MATLAB, however, supports the direct creation of AVI movies, which can then be converted to other formats. (a) (b) (c) (d) FIGURE 7. FOUR DIFFERENT ANIMATION SCREENSHOTS Most modern movie formats, such as AVI and Quicktime, allow the designer to chose from a wide variety of video compression codecs. The different codecs determine the nature of the compression algorithm used, and therefore directly affect the quality of the movie. There is no one codec that will work well for every animation. For example, a codec optimized for animations in which most of the screen remains the same from frame to frame will not produce quality output for animations in which rapid changes occur. For the MATLAB generated animations, we usually employ Apple's animation compressor or the compact video compressor (cinepak), both of which create good quality outputs at a reasonable size. The former was useful for animations with hard edges and distinct colors, such as Page 7.203.7 Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright 2002, American Society for Engineering Education

that shown in Fig. 7(d); the latter was useful for plots with smoothly varying colors, such as the surface plots shown in Figs. 7(a) and 7(b). 5. LECTURE USAGE The GUIs are intended to give students new insights that are not possible from a printed page, so it is also true that instructors can employ the GUIs as lecture aids to visually strengthen a student's understanding of the material. For example, the GUI tools allow an instructor to quickly pose alternate cases in response to student questions. The animation movies can be augmented with sound tracks and played in their entirety, but they don’t need to be played continuously from beginning to end. Using modern media players, it is possible to scroll through an animation frame by frame, or even rewind if necessary. This is a much more flexible way for an instructor to use the animations and point out specific behavior. For example, the sliding nature of convolution is much easier to illustrate with the GUIs than with a static blackboard approach, because a large variety of examples can quickly be explored. In addition to explaining the convolution process, one can also illustrate ideas such as the transient response of a digital filter, or how filtering with a long pulse is related to integration. When writing the GUIs, we have added specific features to enhance the GUI for use in large classrooms. One menu allows the instructor to quickly increase the widths of all the plot lines to make the graphics more visible when displayed through an overhead projector. Another menu enlarges the three main plots to cover the entire figure while hiding the other elements from view. 6. ASSESSMENT Students have taken surveys in this class for each for the past five years. The results, shown in Figs. 8–10, were taken at the end of the Fall-200 semester and these responses are typical of our experience over a longer period of time. First of all, we see that a majority of the students agree that the computer demos can help their understanding of the material. Anecdotal comments from many students also indicate that certain demos are memorable as the definitive way to remember a concept. The question in Fig. 8 refers to instructor usage of the demos during a lecture, so this indicates passive acceptance by the students. The perceived utility is a little bit less when the question is posed independent of classroom usage, as shown in Fig. 9. Furthermore, Fig. 10 shows clearly that students are not naturally attracted to the demos. They do not actively use the demos in conjunction with their other learning activities. More than likely this is because most of the learning tasks are traditional paper-and-pencil assignments, e.g., homework problems, lab reports, etc. This assessment of student usage also shows that students will not use the GUIs without specific assignments. Therefore, to engage students in the interactive process of trying different cases with the GUIs, we have written several laboratories centered on the GUIs for convolution and frequency response. In these labs, the students run the GUIs to generate observations and then perform a companion analysis to explain the observations with theoretical results. In addition, we are creating new GUIs that generate drill problems on other basic concepts such as spectrum diagrams and factoring z-transform polynomials. The goal is to promote active use of these visualization tools for learning. Page 7.203.8 Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright 2002, American Society for Engineering Education

FIGURE 8 STUDENT REACTION TO LECTURE PRESENTATION OF GUIS. “THE COMPUTER DEMOS IN CLASS/RECITATION HELPED ME UNDERSTAND THE CONCEPTS BEING TAUGHT.” FIGURE 9 STUDENT LEARNING FROM DEMOS AND GUIS. “THE DEMOS ON THE WEB PAGE HELPED ME UNDERSTAND THE CONCEPTS BEING DEMONSTRATED.” FIGURE 10 STUDENT USAGE OF DEMOS AND GUIS. “I VIEWED THE COMPUTER DEMOS USED IN CLASS LATER VIA THE WEB.” Page 7.203.9 Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright 2002, American Society for Engineering Education

REFERENCES 1. Apple Computer, Inc., 1 Infinite Loop, Cupertino, CA, QuickTime, Available: http://www.quicktime.com [2002, Jan 10]. 2. The Mathworks, Inc., 24 Prime Park Way, Natick, MA, MATLAB. Available: http://www.mathworks.com [2002, Jan 10]. 3. McClellan, J. H., Schafer, R. W., Yoder, M. A., DSP First: A Multimedia Approach, Prentice-Hall, Inc., Upper Saddle River, NJ, 1998. 4. Slaney, Malcolm, "MakeQTMovie – Create QuickTime movies in Matlab", Interval Technical Report, 1999-066, 1999. Available: http://rvl4.ecn.purdue.edu/ malcolm/interval/1999-066/ [2002, Jan 10]. 5. Rosenthal, J., Educational MATLAB GUIs, available at http://users.ece.gatech.edu/mcclella/matlabGUIs. 6. McClellan, J. H., Rosenthal, J., “Animations and GUIs for Introductory Engineering Courses,” Intl. Conf. Engineering Education, Oslo, NORWAY, 6–10August, 2001, pp. 6E4-11 – 6E4-16. JAMES McCLELLAN James H. McClellan is Byers’ Professor of Electrical and Computer Engineering at Georgia Tech. He received the B.S. degree in Electrical Engineering from L.S.U. in 1969, and the M.S. and Ph.D. degrees from Rice University in 1972 and 1973, respectively. From 1973 to 1982, he was a member of the research staff at Lincoln Laboratory and then a professor at MIT. From 1982 to 1987, Dr. McClellan was employed by Schlumberger Well Services. Since 1987, he has been a Professor in the School of Electrical and Computer Engineering at Georgia Tech. He is a coauthor of the texts Number Theory in Digital Signal Processing, Computer Exercises for Signal Processing, and DSP First: A Multimedia Approach. In 1998, Prof. McClellan received the W. Howard Ector Outstanding Teacher Award at Georgia Tech. In 2001, he received the Society Education Award from the IEEE Signal Processing Society, in 1996, he received the Signal Processing Society Award, and in 1987, the SP Technical Achievement Award for work on FIR filter design. He is a Fellow of the IEEE and a member of Tau Beta Pi and Eta Kappa Nu. JORDAN ROSENTHAL Jordan Rosenthal received his B.S. degree in Electrical Engineering from the State University of New York at Buffalo in 1995, and his M.S. and Ph.D. degrees in Electrical Engineering from the Georgia Institute of Technology in 1997 and 2001, respectively. He is currently a research staff member at MIT Lincoln Laboratory. His research interests include multidimensional signal processing, multirate and wavelet processing, and the use of non-standard sampling grids such as hexagonal lattices. Dr. Rosenthal is a member of Tau Beta Pi, Eta Kappa Nu, and IEEE. Page 7.203.10 Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition Copyright 2002, American Society for Engineering Education

A n im at in g T h eoret ical Co n ce p ts for S ign al Proce ssin g Co . . u .

Related Documents:

akuntansi musyarakah (sak no 106) Ayat tentang Musyarakah (Q.S. 39; 29) لًََّز ãَ åِاَ óِ îَخظَْ ó Þَْ ë Þٍجُزَِ ß ا äًَّ àَط لًَّجُرَ íَ åَ îظُِ Ûاَش

Collectively make tawbah to Allāh S so that you may acquire falāḥ [of this world and the Hereafter]. (24:31) The one who repents also becomes the beloved of Allāh S, Âَْ Èِﺑاﻮَّﺘﻟاَّﺐُّ ßُِ çﻪَّٰﻠﻟانَّاِ Verily, Allāh S loves those who are most repenting. (2:22

your banking, reduce your working capital needs and possibly save you money. So whether you need to find more efficient ways of paying your suppliers or offer alternative ways for your customers to pay you, improve your accounts reconciliation process, or simply maximise the return on your surplus funds, we have the solutions and experience to help. Managing the cash flowing through your .

BEC Higher Second Edition Bilingual Wordlist English and German Tapescripts Tapescripts Resulting Terms English Translation (be the) catalyst for (v) der Beschleuniger (with the utmost) discretion (n) die Diskretion adventurous (adj) abenteuerlich appraisal (n) die Beurteilung assertiveness (n) die Bestimmheit assumption (n) die Annahme attribute (n) die Attribute audience reach (n) die .

T echnlcol port Documentation Page 1. Report Ho. 2. Government Accuaion Ho. 3. Recipient' 1 Catalog Ho. DOT/FAA/CT-89/15 4. Title onfl Subtitle AIRCRAFT MATERIAL FIRE TEST HANDBOOK

Part II: Chemistry at the Upper Primary Level . Part I . Science at the Upper Primary Level . An Introduction. Unfolding the Curriculum: SCIENCE Curriculum in Practice . 3 . 1.0 Overview: Why, what and how of this module? Why this module? This module aims at providing an understanding on various aspects of the SCIENCE curriculum in Classes VI-VIII, along with the salient features of the .

OCD in Children and Teens The information contained within this pack was correct at the time of sharing. We update this on a regular basis. If you notice any links are broken or information has changed please contact ShropshireFIS@shropshire.gov.uk and we will update the information. Further Family Information Services and Resource Packs are available through the Early Help website www .

CODE OF ORGANIZATION AND CIVIL PROCEDURE [CAP. 12. 1 CHAPTER 12 CODE OF ORGANIZATION AND CIVIL PROCEDURE To amend and consolidate the Laws of Organization and Civil Procedure. * 1st August, 1855 ORDINANCE IV of 1854 as amended by Ordinances: V, VII and X of 1856, XII of 1857, XI of 1858, XI of 1859, IV of 1862, III of 1863, V of 1864, IV of 1865, IV of 1868, IX of 1871, VII of 1876, I, VI and .