Music In Matlab: Programming Challenges For An Introductory Course
Shranjeno v:
| izdano v: | Association for Engineering Education - Engineering Library Division Papers (Jun 18, 2006), p. 11.945.1 |
|---|---|
| Glavni avtor: | |
| Izdano: |
American Society for Engineering Education-ASEE
|
| Teme: | |
| Online dostop: | Citation/Abstract Full text outside of ProQuest |
| Oznake: |
Brez oznak, prvi označite!
|
| Resumen: | Students often find their first course that includes programming a difficult new world. First-year students may not be inspired by programs that input numbers, perform a calculation and then output a number. To help motivate students there are many examples of courses using robotics or graphics projects and problems to provide a more concrete result for programming exercises. MATLAB’s ability to output a time series to the sound card of a PC provides an opportunity for problems that create sounds and music instead of numbers. This approach requires little or no equipment to implement. Over the past year and a half, we have developed problems and small projects for an introductory computer tools course where MATLAB is taught. Music and sound form the basis of challenges with a range of topics and difficulties. Problems have been developed that illustrate almost all aspects of the course from a script that plays a very simple tune to a general song player that reads a data file containing the note names, durations and amplitudes. This player illustrates the use of loops, conditionals and several sub-functions. Other project problems include functions to distort a .wav file illustrating file handling, a stereo player illustrating arrays, graphing a wave file illustrating graphing issues, adding harmony to illustrate array calculations, converting note names to frequencies illustrating the use of a switch structure or a complex calculation. More advanced projects can include adding attack and decay to notes, random generation of notes, developing a wind chime simulator and analysis of sound waves using a preprogrammed FFT function. Problems build over the course of the semester as students develop their ability with the software. In addition to developing students understanding of computer manipulations they are introduced to a range of important engineering topics including: waves, wave shape, sampling, digital representation of analogue phenomenon, sound, signal processing, analogue/digital conversion and bit resolution. These projects have added an interesting variation into the course. The students have found these projects challenging, and it has been important to develop aids to help them understand working with sound. Particularly important is providing materials to help students who have little or no musical training. This paper includes a discussion of the various problems and projects used and the lessons learned in implementing them. In a recent assessment of their first-year engineering program, Notre Dame found that their greatest student attrition coincided with a first semester programming module.1 This result is not unusual. First-year students often find programming a challenging topic.2 In addition to |
|---|---|
| Fuente: | Library Science Database |