Anda di halaman 1dari 10

2015

PSK Modulation with GNU Radio

Author: Rakesh
Email id: rakesh@tenettech.com

What is Gnu radio?


GNU Radio is a software library, which can be used to develop complete applications for
radio engineering and signal processing.
Introduction
GNU Radio is a free and open-source software development toolkit that provides
signal processing blocks to implement software radios. It can be used with readilyavailable low-cost external RF hardware to create software-defined radios, or without
hardware in a simulation-like environment.
GNU Radio is licensed under the GNU General Public License (GPL) version 3. All of
the code is copyright of the Free Software Foundation. While all the applications are
implemented using python language while critical signal processing path is done using
C++ language.
Idea behind GNURADIO
The goal is to give ordinary software people the ability to 'hack' the electromagnetic
spectrum, i.e. to understand the radio spectrum and think of clever ways to use it.
Why GNURADIO
Instead of purchasing multiple expensive radios, a single generic radio can be
implemented using gnu radio software and with support of minimal hardware to receive
and transmit processed signal at required frequencies and any data type can be passed
from one block to another i.e.it can be in bits, bytes, vectors, bursts or more complex data
types
Since the performance critical blocks are implemented in C++ using processor floating
point extensions the developers are able to implement real-time, high-throughput radio
systems in a simple-to-use, rapid-application-development environment.

#9/3, Shree Lakshmi Complex, 2nd Floor, Opp. To Vivekananda Park, Girinagar, Bangalore - 560085.
Ph. No: 080-26722726, Website: www.tenettech.com, Email: info@tenettech.com

One can use it to write applications to receive data out of digital streams or to send data
into digital streams, which is then transmitted using hardware. GNU Radio has filters,
channel codes, synchronisation elements, equalizers, demodulators, vocoders, decoders,
and many other elements which are called as blocks that are typically found in radio
systems.
Features
The main features of gnu radio are flexibility and configurability.
Extending GNU Radio is also quite easy, if you find a specific block that is missing you
can quickly create and add it.

#9/3, Shree Lakshmi Complex, 2nd Floor, Opp. To Vivekananda Park, Girinagar, Bangalore - 560085.
Ph. No: 080-26722726, Website: www.tenettech.com, Email: info@tenettech.com

What is PSK modulation?


Phase-shift keying (PSK) is a digital modulation scheme that conveys data by changing,
or modulating, the phase of a reference signal (the carrier wave).
Any digital modulation scheme uses a finite number of distinct signals to represent
digital data. PSK uses a finite number of phases, each assigned a unique pattern of binary
digits. Usually, each phase encodes an equal number of bits. Each pattern of bits forms
the symbol that is represented by the particular phase. The demodulator, which is
designed specifically for the symbol-set used by the modulator, determines the phase of
the received signal and maps it back to the symbol it represents, thus recovering the
original data. This requires the receiver to be able to compare the phase of the received
signal to a reference signal such a system is termed coherent (and referred to as
CPSK).
Alternatively, instead of operating with respect to a constant reference wave, the
broadcast can operate with respect to itself. Changes in phase of a single broadcast
waveform can be considered the significant items. In this system, the demodulator
determines the changes in the phase of the received signal rather than the phase (relative
to a reference wave) itself. Since this scheme depends on the difference between
successive phases, it is termed differential phase-shift keying (DPSK). DPSK can be
significantly simpler to implement than ordinary PSK since there is no need for the
demodulator to have a copy of the reference signal to determine the exact phase of the
received signal (it is a non-coherent scheme). In exchange, it produces more erroneous
demodulation.

#9/3, Shree Lakshmi Complex, 2nd Floor, Opp. To Vivekananda Park, Girinagar, Bangalore - 560085.
Ph. No: 080-26722726, Website: www.tenettech.com, Email: info@tenettech.com

Implementation of PSK modulation


The GNUradio Companion with basic blocks (Options block and Variable block)

Options block defines the ID, Title and Description of the experiment.

#9/3, Shree Lakshmi Complex, 2nd Floor, Opp. To Vivekananda Park, Girinagar, Bangalore - 560085.
Ph. No: 080-26722726, Website: www.tenettech.com, Email: info@tenettech.com

Variable Block defines to declare variables globally. This block maps a value to a unique
variable. This variable block has no graphical representation. The variable can be referenced
(by ID) from other blocks in the flowgraph.
o ID = samp_rate
o Value = 32000Hz

Random source: Generates samples of random number of [min,max) repeat samples if


specified.
o ID:analog_random_source_x_0
o Output type: Byte
o Number of samples: 10000

#9/3, Shree Lakshmi Complex, 2nd Floor, Opp. To Vivekananda Park, Girinagar, Bangalore - 560085.
Ph. No: 080-26722726, Website: www.tenettech.com, Email: info@tenettech.com

PSK Mod: Hierarchical bock for RRC-filtered modulation. The input is a byte stream treated
as series of packed symbols. Symbols are groued from MSB to LSB.

o ID: digital_psk_mod_0
Throttel block: Throttel is a device that control the flow of samples such that average rate does
not exceeds samples/sec. Throttle is used because no hardware interface has done.

o ID: blocks_throttel_0
o Type: complex
o Vec length: 1

#9/3, Shree Lakshmi Complex, 2nd Floor, Opp. To Vivekananda Park, Girinagar, Bangalore - 560085.
Ph. No: 080-26722726, Website: www.tenettech.com, Email: info@tenettech.com

QT GUI Frequency sink: the GUI hint can be used to position the widget within the
application. A graphical sink to display multiple signal in frequency.
o ID: qtgui_freq_sink_X_0
o Type: complex
o FFT size: 1024

QT GUI time sink: A graphical sink to display multiple signals in time. This is a QT-based
graphical sink the takes set of a complex streams and plot them in the time domain.
ID: qtgui_time_sink_X_0
TYPE: complex
Number of points: 200

#9/3, Shree Lakshmi Complex, 2nd Floor, Opp. To Vivekananda Park, Girinagar, Bangalore - 560085.
Ph. No: 080-26722726, Website: www.tenettech.com, Email: info@tenettech.com

QT GUI constellation sink: A graphical sink to display the IQ constellation of multiple signals.
This is a QT-based graphical sink takes set of a complex streams and plots them on an IQ
constellation plot.
ID: qtgui_const_sink_x_0
Type: complex
Number of points: 4096

#9/3, Shree Lakshmi Complex, 2nd Floor, Opp. To Vivekananda Park, Girinagar, Bangalore - 560085.
Ph. No: 080-26722726, Website: www.tenettech.com, Email: info@tenettech.com

The Complete block representation

#9/3, Shree Lakshmi Complex, 2nd Floor, Opp. To Vivekananda Park, Girinagar, Bangalore - 560085.
Ph. No: 080-26722726, Website: www.tenettech.com, Email: info@tenettech.com