1
Emulation of a Radio Link by means of Software Radio (Abstract) Arturo Rinaldi The goal of my thesis research was to build an open-source application, the gr-bertool, consisting of a set of useful tools to evaluate the BER (Bit Error Rate) performances of the digital modulations (such as PSK, FSK, QAM and so on) over the wired and the wireless channels of the communication systems. The choice of pursuing this target was dictated by the fact that most of the university students, attending communication systems courses, need a ready-to-go and useful resource to compare their theoretical learning with practical examples. By using the gr-bertool the student can get a quick comparison from what it has just learnt in a few minutes. Together with my supervisors, I decided to use the GNU Radio DSP (Digital Signal Processing) open-source platform to build the core of my application. It provides a great number of DSP blocks written in C++ and its bindings with the Python programming language as well. So the obvious choice was to write my entire application with the Python language and nesting the GNU Radio blocks in a effective way inside the lines of code of the main body of the application itself. I took care of all the events regarding the GUI (i.e. the actions following the pression of a button, the start of a flow diagram and so on) in a clever and easy way. When running, the main GUI of the application shows all the available tools in one single frame. The most important are the ones regarding the BER calculation. It is possible to perform a BER evaluation in static and in a real-time way. The first method consists in calculating the BER and then plotting the theoretical and experimental curves, while the second one allows the evaluation by means of GUI scopes available in the source tarball of the platform. During the real-time BER evolution is also possible to observe how the constellation points of the digital modulations are affected by the noise propagating in the simulated trasmission channel. In addition, complementary tools are available to show how the most common audio (i.e. mp3, wav, aiff) and video (i.e. jpg, bmp, png) file formats are affected by the digital modulations. I used two channel models to perform the evaluation of the BER during my work, the AWGN (Additive White Gaussian Noise or wired) Channel and the Rician/Rayleigh (or wireless) channel. Both are modeled in a mathematical way using the Python scientific libraries. In particular, I made an extensive use of the numpy and the scipy packages which together provided me all the functions needed to write the BER theoretical formulas of the different modulations. In addition to all these features my application is multi-threaded, so it is possible to launch different instances of it (depending on the number of avalaible CPU(s) of course), and software-independent by which i mean I didn’t use any external software to plot my theorethical and experimental curves. This task is well fulfilled by the matplotlib libraries package. All the programming work has been also set up in favour of high modularity, to allow the building and in- tegration of new modules in addition to the existing ones in a very easy way (future developments could include a Bluetooth or a 802.11n module). It takes only of a few line of codes to merge a new component into the whole work. Great care was also taken to create a user-friendly layout of all the elements of every single graphic frame to make it very simple and intuitive. For further reference, please consider also viewing the PDF slides of my work uploaded on the box.net file hosting service by clicking on the following hyperlink : Thesis A.Rinaldi 1

Abstract Thesis A. Rinaldi

Embed Size (px)

Citation preview

Page 1: Abstract Thesis A. Rinaldi

Emulation of a Radio Link by means of Software Radio (Abstract)

Arturo Rinaldi

The goal of my thesis research was to build an open-source application, the gr-bertool, consisting of a set ofuseful tools to evaluate the BER (Bit Error Rate) performances of the digital modulations (such as PSK, FSK,QAM and so on) over the wired and the wireless channels of the communication systems.

The choice of pursuing this target was dictated by the fact that most of the university students, attendingcommunication systems courses, need a ready-to-go and useful resource to compare their theoretical learningwith practical examples. By using the gr-bertool the student can get a quick comparison from what it has justlearnt in a few minutes.

Together with my supervisors, I decided to use the GNU Radio DSP (Digital Signal Processing) open-sourceplatform to build the core of my application. It provides a great number of DSP blocks written in C++ andits bindings with the Python programming language as well. So the obvious choice was to write my entireapplication with the Python language and nesting the GNU Radio blocks in a effective way inside the lines ofcode of the main body of the application itself.

I took care of all the events regarding the GUI (i.e. the actions following the pression of a button, the start ofa flow diagram and so on) in a clever and easy way. When running, the main GUI of the application shows allthe available tools in one single frame. The most important are the ones regarding the BER calculation.

It is possible to perform a BER evaluation in static and in a real-time way. The first method consists incalculating the BER and then plotting the theoretical and experimental curves, while the second one allows theevaluation by means of GUI scopes available in the source tarball of the platform. During the real-time BERevolution is also possible to observe how the constellation points of the digital modulations are affected by thenoise propagating in the simulated trasmission channel.

In addition, complementary tools are available to show how the most common audio (i.e. mp3, wav, aiff)and video (i.e. jpg, bmp, png) file formats are affected by the digital modulations.

I used two channel models to perform the evaluation of the BER during my work, the AWGN (AdditiveWhite Gaussian Noise or wired) Channel and the Rician/Rayleigh (or wireless) channel. Both are modeled in amathematical way using the Python scientific libraries. In particular, I made an extensive use of the numpy andthe scipy packages which together provided me all the functions needed to write the BER theoretical formulasof the different modulations.

In addition to all these features my application is multi-threaded, so it is possible to launch different instancesof it (depending on the number of avalaible CPU(s) of course), and software-independent by which i mean Ididn’t use any external software to plot my theorethical and experimental curves. This task is well fulfilled bythe matplotlib libraries package.

All the programming work has been also set up in favour of high modularity, to allow the building and in-tegration of new modules in addition to the existing ones in a very easy way (future developments could includea Bluetooth or a 802.11n module). It takes only of a few line of codes to merge a new component into the wholework. Great care was also taken to create a user-friendly layout of all the elements of every single graphic frameto make it very simple and intuitive.

For further reference, please consider also viewing the PDF slides of my work uploaded on the box.net filehosting service by clicking on the following hyperlink : Thesis A.Rinaldi

1