Analog Modulation Simulation Project 1
The goal of this project is to explore the effects of noise on frequency modulation (FM), phase
modulation (PM) and two kinds of amplitude modulation (conventional AM, SSB AM). In class,
we discussed the theoretical performance of these schemes in the presence of noise, and compared
them in terms of bandwidth efficiency, power efficiency and ease of implementation – no scheme is
“the best”, and compromises must be made when designing a communication system.
For this project, we will observe the practical effects of these compromises on a short audio clip
– you may record your own, download one from the internet or use a built-in MATLAB clip, but
make sure to recall the sampling rate – which we will refer to as m(t). You will write functions
which take the signal and some parameters, and return modulated versions of them, and similarly,
functions which demodulate a modulated signal. You will explore the effects of certain modulation
parameters and the addition of noise in a systematic way.
You have three weeks to complete this assignment – the future two simulation projects will be
of a similar scale, but you will only have two weeks. This extra week is there mostly so that you
may ask for help in report-writing, given that it is your first report for this class. Do not take the
time for granted!
1. For each of FM, PM, conventional AM and SSB AM, write functions which modulate and
demodulate a given audio signal. All modulator/demodulator functions require the carrier
amplitude and frequency as an input – document which units you choose the carrier frequency
to be in. The FM/PM modulators and demodulators require k as an input, conventional AM
requires the modulation index, and the conventional AM demodulator requires the use of a
low-pass filter. For the low-pass filter, assume a first-order (just an RC circuit) low-pass filter
is used, and let the cutoff frequency or τ be an input to the demodulator function. Note:
Each function also needs the sampling frequency of your audio signal – why (don’t write it in
your report, just understand why)?
2. First, verify the operation of the modulator functions by picking reasonable values for all
parameters (choose values/frequencies consistent with AM and FM radio) and passing m(t)
through each modulator. Ensure that the singal power will be equal at the output in each
scheme. Observe all four modulated signals in time and frequency on subplots. Do they
look about right? For AM signals, success should be clear from the frequency domain signal –
comment on this. For angle modulated signals – do they follow Carson’s rule? Recall FM/PM
signals ought to have infinite bandwidth.
3. Pass these noise-free modulated signals directly into the demodulators, and listen to the
outputs. There is no noise, so they ought to sound like what you put in more-or-less exactly,
save the case of conventional AM – what is different in the sound at the output of the
conventional AM system, qualitatively? Why? Make sure the signal for conventional AM
does not sound too bad!
4. We are going to add noise to the signals. At the output of the demodulators, the signals are
bandlimited, but the noise is not. Write a simple low-pass filter function (first order is fine
but get fancy if you want) which filters out noise above the audible range. Make sure you
pass noisy signals through this filter before you play them!
5. Generate at least three noise processes (AWGN with three different variances) to apply to
your modulated signals using the randn function. Compute, for each process, the theoretical
SNR for each modulation scheme in dB and print them. I want you to toy around with this –
find a variance that makes the signal at the output of your demodulators noisy but audible,
one that makes some schemes seem far worse than others. Make a figure with 4 subplots for
each modulation scheme, showing the magnitude of the spectrum of: the noise-free input, the
noise-free modulated signal, the noisy modulated signal (all noise processes on one figure with
a legend, or in separate subplots if you would prefer) and the noisy output signal (same as
6. Isolate a noise process that makes conventional AM sound qualitatively noisy, but audible.
Vary the modulation index by a factor of 2 both downward and upward, and observe the
results of this noise process on the three new modulated signals (making similar plots to
those you made for the previous problem but with three curves plotted on each subplot).
What effect do you expect this to have?
7. Repeat the above for FM and PM, recalling that the modulation index and k are proportional.
I would like you to present your findings in a short report, containing at least three sections:
1. Introduction: Give an overview of the project and the theory behind it. What did you set
out to explore? Which modulation schemes are you comparing? How are they defined? What
are their theoretical pros and cons?
2. Results: The bulk of your report – Each figure generated in the MATLAB code should
appear here, with appropriate axis labels, titles and legends. In the text, describe which
values you used for all parameters to generate those curves, and briefly describe why you
chose them. Give the theoretical SNR values you were asked to compute for problem 5 in a
table. You need not evaluate your results here or answer any of the questions – that is for
3. Discussion: Answer questions that appear in the problems above – evaluate your results,
and tell a story as to what benefits and detriments are seen from using a given modulation
scheme. You need not make a bulleted or numbered list, but you may if that helps you
(personally I think it is more helpful to answer the questions naturally in less structured
paragraphs). Lastly, tell me – does this set of experiments match the theory you described in
the introduction, as to the benefits and detriments of each modulation scheme?
I would suggest using a LaTeX editor if you can to write this report – it is useful to start learning
this skill early – but I will not require it. There is no upper or lower page limit on the report. You
must send me the MATLAB files used to generate the results as well as the audio clip used.
1. Report Content (75%): The majority of your grade will be from the content of your report,
including your responses to the questions and your ability to produce correct graphs (whether
or not they are pretty).
2. Report Style (15%): It is important that you present your results with labeled graphs and
grammatically correct sentences. Your report should be organized well enough that someone
(for example, yourself in the future) might be able to look at it as a reference on the topic it
3. MATLAB Style (10%): Just as in your homeworks – don’t write bad MATLAB code!