It is a great challenge to teach mathematically intensive engineering courses to undergraduate engineering technology students. Especially, teaching subjects like analog and digital communication systems involves in elaboration of numerous theories as well as extensive derivation of formulae. This paper shows how Matlab can be used to teach effectively communication theory to undergraduate students who may not have a sound mathematical background in the relevant topics but come with a little knowledge in programming.
Matlab has been a very popular tool among researchers, in industrial community and as well as in military to simulate control systems, circuit design, signal processing, communication systems and many more applications. The popularity of Matlab among these communities is mainly due to its simplicity in coding and availability of vast number of functions related to various disciplines. In Matlab, results can be visualized much easily unlike in other programming languages like C/C++. In most of the academic institutions Matlab has been used at the graduate school but not as much integrated in teaching undergraduate students.
Due to various reasons, a message signal is used to modulate a carrier signal before it is being transmitted. The reverse process (demodulation) – recovery of the original message signal is being done at the receiver side of the communication system. Therefore modulation and demodulation is a fundamental topic in a communication systems course. To understand analog and digital modulation techniques, signals have to be described in time domain as well as the in frequency domain. Even, a student who is novice to coding can implement this in Matlab without much difficulty. All what he/she requires is only a little understanding how to introduce variables, how Matlab generates function values for a given argument (array), how easily array/matrix multiplication and division can be done using the “dot” operator, and how to create a figure. Use of readily available fast Fourier transform function (fft()) can be used to represent signals in the frequency domain. A student may require some explanation how to interpret output data of this function with regard to frequency and amplitude scaling as well as the order of the data. Students can be acquaintance of this in a very short period of time with an example code provided by the instructor. Demodulation of a signal requires low pass filtering which can overwhelm a student who does not have a good grasp of z-transform and filter theory. Ideal low, high, or band pass filtering can be easily implemented in Matlab by processing a signal in the frequency domain and thereby avoiding learning additional theory. Furthermore, Matlab offers functions to read different types of media (audio, video) very easily and process them, offering the student more intuitive understanding of the theory.
This paper will show how Matlab can effectively be used to teach many more topics like additive white Gaussian noise (AWGN) channels, analog to digital conversion, bit error rate analysis of binary phase shift keying transmission system, and channel coding. Additionally, student survey results will be analyzed and presented.
Are you a researcher? Would you like to cite this paper?
Visit the ASEE document repository at
for more tools and easy citations.