Professional Documents
Culture Documents
frequency (typically from some thousands to many millions • Zephyr Engineering Inc, UDPSDR-HF1 [6]
of samples per second). This determines the signal bandwidth The hardware requires at least the following parameters to
that may be processed digitally. operate:
The digital process is divided into two parts: • Central frequency (ωc = 2.π. fc )
• High Speed Processing (FPGA) • Bandwidth (BT )
• GNU Radio Processing (PC) In GNU Radio Companion (GRC) [7] the hardware is
If the sample rate is high, the processing capacity of a per- represented by a “UHD USRP Source” source block (it may
sonal computer may be insufficient. Then, an FPGA extracts be another similar block depending on the SDR adopted). This
an even more reduced portion of the digitalized spectrum and block is connected to a “File Sink” block with the aim to store
thus reduces the sample rate to be processed in a PC. complex samples in one file.
Following this, the samples are treated in the demodulation It is important to remember at which rate the file’s samples
process using blocks for the treatment of signals developed were stored since it is a fundamental parameter for the
using GNU Radio on a PC and, finally, the demodulated environment of simulations of hands-on experiences of ana-
message is reproduced through a sound card or is visualized logical or digital passband signal demodulation. The file name
on the screen. may contain this information, for example “capture-100MHz-
20MSps”, where the central frequency and the sample rates
III. M EANING OF COMPLEX ENVELOPE were stored. The type of stored modulation may also be added.
A modulated signal available on the antenna, s(t) (bandpass The size of the file will depend on the sample rate and the
signal with BT bandwidth) is mathematically represented [3] duration of the capture.
as follows: A real source block of data (hardware including an ADC
receiving in real time) differs from a source file block with
s(t) = x(t) cos(ωc t) − y(t) sin(ωc t) (1) data (which once were a real signal) in the temporization.
In the former, data enter to the rate determined by the ADC
The expression: and associated hardware; while in the source file block, the
limitation is the ability to process data from the PC. For the
g(t) = x(t) + j y(t) (2) simulation with source file block to respect the original rate
of the captured signal, a Throttle block must be added as
is called the complex envelope of s(t) and it is the modulated
indicated in figure 3. Otherwise, GRC would take samples
signal’s spectrum translated to baseband.
from the file, processing them one after the other and thus
The complex envelope is the input information for GNU
consume all the PC’s processing ability. The Throttle block
Radio, it is a data stream representing complex samples of g(t)
administers the required pause between the samples to be
to be demodulated. This data stream can be stored in a file, as
processed.
indicated in figure 2 and then the examples can be developed
using the file without the need for additional hardware to the IV. F ILTERING AND C ONVOLUTION
PC, figure 3. The signal coming from the hardware to implement an
There are several hardware options to implement an SDR SDR receiver, or from a “File Source” block (figure 3),
receiver. Some of the characteristics to choose from are: can have such a sample rate as to allow for more than
• Number of ADC bits, which determines the receiver’s one communication service. For example, if it is a spectrum
sensitivity. taken in FM Broadcasting band where each service requires
• Sample rate per second (Sps), which determines the approximately 200 KHz and the complex sample rate were
available bandwidth. of 2 MSps without oversampling, then there could be more
• Operation frequency (Minimum and Maximum). than one available service to demodulate since the captured
• Available software. bandwidth is 2 MHz. In these cases, it is necessary to reduce
• Cost. the bandwidth before demodulating and, to that aim, GRC get
Some examples of tested hardware are: available filter blocks.
Fig. 4. Convolution and Filtering
Fig. 5. Envelope detector blocks
V. D EMODULATION
Fig. 6. Color Mapping
Demodulation is the process that retrieves the message sent
from the complex envelope with the appropriate bandwidth.
The characteristics of the process will depend on the modula- B. AM and DSB-SC demodulation with synchronous detector
tion used. Another way to retrieve the AM modulated message is by
If the message is audible, then the message data may go means of a synchronic or product detector. Mathematically,
to the PC’s speaker throughout “Audio Sink” sink block. This the output satisfies the following:
block works with a sample rate corresponding to the audible
spectrum (8, 16, 22.05, 24, 32, 44.1, 48 KSps), well below r(t) = x(t) (4)
the rates obtained from hardware or work files.
The reduction of the sample rate is achieved through the Where x(t) is the real part of the complex envelope, g(t) ,
decimation process that is available in blocks such as: Filters, of the signal of interest. The “Complex to Real” block strictly
AM Demod, FM Demod, and Rational Resamplers. satisfies equation 4, figure 7.
The “Complex to Mag” block strictly satisfies equation 3. C. Single side band demodulation
Another alternative is the “AM Demod”, which also enables The demodulation of modulated signals in single sideband
output filtration and decimation. (lower or upper) is achieved through: the Hilbert Transform,
Note the colour difference between input port, Complex Weaver’s Method or the Filter Method. The latter is the easiest
of 32 bits on the right side (complex enveloping signal) and to implement.
floating point output of 32 bits on the left side, at figure 5. The filter method consists in filtering the complex envelope,
GRC handles different types of data and figure 6 shows those only allowing the desired sideband to pass. In the case of the
available. This information is available in the help menu of lower sideband (LSB), only the negative spectral components
the software. of the complex envelope are allowed; and in the case of the
upper sideband (USB), the positive spectral components. The VI. V ISUALIZATION BLOCKS
“Frequency Xlating FIR Filter” can be useful for this. GNU Radio uses the wxWidgets (WX) multi-platform li-
After filtration, the signal is treated as a DSB-SC signal and braries and the Qt object-oriented multi-platform framework
is retrieved with a product detector, figure 7. for the user graphic interface (QT). The graphic resources
available will depend on the Operating System of the PC.
D. FM Broadcasting demodulation The time representation of the (modulated or modulating)
signals is obtained through the “WX GUI Scope Sink” block
GRC has a block to demodulate FM Broadcasting signals, or its representation in the spectrum with the “WX GUI FFT
the “FM Demod” block, which can perform de-emphasis, Sink” block (Figure 9). These are especially useful if the
decimation and filtration. message is a periodic signal.
The demodulation of this kind of signals using GRC makes
it possible to visualize the characteristics of the stereo FM
emission (MPX). Figure 8 shows the demodulated spectrum,
where is appreciated the left channel plus right channel signal
(x L(t ) + xR(t ) ) at baseband, a pilot tone of stereo FM on 19 KHz
and the left channel less right channel signal (x L(t ) −xR(t ) ) DSB-
SC modulated on 38 KHz. In addition, is possible appreciate
the digital signal of Radio Data System (RDS) on 57 KHz.
E. OOK demodulation
The On-Off Keying binary digital signals receive the same
treatment as the analog signals modulated in amplitude, AM.
Therefore, the same resources used for AM are used to
demodulate OOK signals, i.e. envelope detector (figure 5) for
simplicity.
Should the complex envelope of the signal to be processed
be centered with the frequency carrying the OOK signal, a
product detector may also be used.
Then a “Threshold” block defines which symbol is received
[8].
F. BPSK demodulation
Fig. 10. WX GUI Waterfall
Binary Phase Shift Keying (BPSK) binary digital signals
receive the same treatment as the analog signals modulated The signal histogram can be analyzed through the “WX GUI
in double sideband suppressed carrier, DSB-SC. Therefore, a Histo Sink” or the “QT GUI Histogram Sink” blocks. This is
product detector is used to demodulate BPSK signals (figure useful to explain the benefits of companding in the reduction
7). Then, a “threshold block” defines which symbol is received of the quantification noise. Figure 11 shows the histogram of
[9]. a music fragment and it is compared with the theory [10].
EIUTNBA0003921). Files with captures of the signals used
for the simulations are available from the web server of the
Electronics Engineering Department [11].
Labs using GRC can be combined with other labs using real
equipment, such as: signal generators, oscilloscopes, spectrum
analyzers, transmitters, receivers. This contributes to a better
understanding of the concept of complex envelope of a mod-
ulated signal.
If a question or doubt arises during theoretical lessons, GRC
simulations can be used as a tool to develop or complement
the explanation.
If hardware for SDR is available, students might generate
their own emission capture files and then simulate the same
practices or variants of it at home.
Even an academic institution lacking the equipment can
perform simulations with files provided by another institution.
In this way, Communication System introductory courses will
not be fully theoretical and they will foster students’ interest
in the subject.
GRC is a free & open-source software. Since it is free of
charge, it can be implemented without requiring the submis-
sion of a budget to purchase software licenses for laboratories.
Licensed software programs offering similar features require
purchase paperwork which usually take time to deal with.
Fig. 11. WX GUI Histogram Generally, user licenses do not allow students to install the
software at home. GNU Radio avoids ethical or moral con-
flicts, especially for those in charge of software in laboratories.
For QAM digital signals (including BPSK, QPSK, MPSK), The student can investigate how each GNU Radio block was
the “QT GUI Constellation Sink” block shows the constella- programmed. In order to understand how a block works, it is
tions (figure 12). first necessary to know what that block does and what purpose
it has, and this means learning about Communication Systems.
This investigation links the course with the contents of other
courses, such as programming or signal digital processing.
There are sites which promote this research [12] [13].
For this reason, we recommend the use of GNU Radio in
Communication Systems courses.
ACKNOWLEDGMENT
The authors are grateful for the collaboration given by
students, teaching assistants, professors and researches, who in
one way or another contributed to this work, especially María
Victoria García, Eng. Matías Barneto and Luciano Arroyo.
We would also like to thank the Department of Electronics
Engineering and the Science, Technology and Productive Inno-
vation Office, both part of Universidad Tecnológica Nacional,
Fig. 12. QPSK Constellation example Facultad Regional Buenos Aires.
R EFERENCES
VII. C ONCLUSIONS
[1] Free Software Foundation, The GNU Operating System and the Free
The students of the Communication Systems courses in Software Movement. Accessed on Oct. 19, 2017. [Online]. Available:
the Electronics Engineering undergraduate program at UTN- https://www.gnu.org/home.en.html
[2] GNU Radio, What is GNU Radio. Accessed on Oct. 19, 2017. [Online].
FRBA found the simulations performed interesting. These Available: https://wiki.gnuradio.org/index.php/What_is_GNU_Radio%3F
simulations and others are part of the results of the research [3] Leon W. Couch, Sistemas de Comunicaciones digitales y analógicos,
and development project entitled “Development of Commu- 7ma ed., PEARSON Education, 2008, pp. 230-246.
[4] Ettus Research, Ettus Research USRPTM , B200. Accessed on Oct. 19,
nication Systems based on Software-Defined Radio (SDR) 2017. [Online]. Available: https://www.ettus.com/product/details/UB200-
and their Application to Education” approved by UTN (ID KIT
[5] Great Scott Gadgets, Great Scott Gadgets - HackRF One. Accessed on TATA McGRAW-HILL, 2010, pp. 548-554.
Oct. 19, 2017. [Online]. Available: https://greatscottgadgets.com/hackrf/ [11] UTN-FRBA Electronic Department, SDR - Capture files. Accessed on
[6] Zephyr Engineering Inc, UDPSDR-HF1. Accessed on Oct. 19, 2017. [On- Oct. 19, 2017. [Online]. Available:
line]. Available: http://www.zpci.com/products/sdr/sdrstick/udpsdr-hf1/ http://www2.electron.frba.utn.edu.ar/ mdoallo/sc/descargas/sdr/
[7] GNU Radio, InstallingGR. Accessed on Oct. 19, 2017. [Online]. Avail-
able: https://wiki.gnuradio.org/index.php/InstallingGR [12] GNU Radio, Guided Tutorial GNU Radio in Python. Accessed on Oct.
[8] A. Bruce Carlson and Paul B. Crilly, Communication Systems, 5th ed., 19, 2017. [Online]. Available: https://wiki.gnuradio.org/index.php/
TATA McGRAW-HILL, 2010, pp. 673-677. Guided_Tutorial_GNU_Radio_in_Python
[9] A. Bruce Carlson and Paul B. Crilly, Communication Systems, 5th ed., [13] GNU Radio, Guided Tutorial GNU Radio in C++. Accessed on Oct.
TATA McGRAW-HILL, 2010, pp. 668-670. 19, 2017. [Online]. Available: https://wiki.gnuradio.org/index.php/
[10] A. Bruce Carlson and Paul B. Crilly, Communication Systems, 5th ed., Guided_Tutorial_GNU_Radio_in_C%2B%2B