FM Radio Receiver
FM Radio Receiver
In the flowchart for the FM Radio Receiver I started with the file source and then
throttled it to a sample rate of 10MHz. I then created my own signal so we can use it to
tune in to a specific frequency to receive a radio signal on said frequency. This signal is
then multiplied with the source signal after which it is send to a Rational Resampler.
I send it to a Rational Resampler because our desired frequency is our channel_width,
which is 200kHz. This means the signal needs to be decimated by 50 so I use this
Rational Resampler to decimate the signal by 50. A Rational Resampler simply changes
the sample rate from one to another. Since I am using decimation this means the
sample rate will be divided, in this case by 50. This results in a new sample rate of
200kHz, which is my desired sample rate.
After this I send it to the FM Demodulation block, which will demodulate the FM signal
so that we can get the audio signal from it. The Channel Rate is the incoming sample
rate. I use an Audio Decimation of 8. This is necessary to get the correct audio signal
using this setup. If you were to put the Audio Decimation of the FM Demod higher than 8
it would produce a higher frequency of sound, leading to the sound being too fast, and
because of this also too high in pitch. The reverse would happen if this Audio
Decimation would be put lower than 8. The frequency would decrease, causing the
speed of the audio to decrease and with it the pitch would also decrease.
After the FM Demod block I still use a Multiply block to regulate the volume of the
output audio before sending it to the audio sink.
For the GUI I show the Frequency and Time using a QT GUI Frequency Sink and a QT GUI
Time Sink after multiplying with my own signal, after the Rational Resampler and after
the FM Demodulator as well as after the multiplication with my volume value. I also use
a QT GUI Range for my frequency to tune in to and a second QT GUI Range for adjusting
the volume of the output audio.
Beyond this there are 2 variables used. The samp_rate is the source file’s sample rate
and the channel_width is the desired sample rate for our FM Demodulator.