an image an image

Master's Thesis (2013) - Self-organisation Algorithm in a WSN

no image

The topic of my Master's Thesis was: Self-organisation Algorithm Design for Wireless Sensor Network of Variable Range and Structure. The promotor of the thesis is Magdalena Szeżyńska, Ph.D. It was written with large assistance received from Krzysztof Gołofit, M.Sc. from the Institute of Electronic Systems at the Faculty of Electronics and Information Technology, and Robert Samborski, Ph.D from the National Institute of Telecommunications.

After deep studies of the existing algorithms and protocols, a connection of SMECN routing protocol and RNS algorithm was considered best for the specific type of mobile sensor network. Both algorithms were implemented in the ns-3 network simulator. Then, a series of tests was performed on them to verify their performance in specific mobile conditions. For this purpose special node mobility models were created to mimic behaviour of the network in the real world.

The thesis contains a thorough description of both implementations. Their performance was measured and compared to a reference protocol - DSDV.

The source code of the thesis is available. You are also welcome to view the RNS module documentation.

The slightly modified version of the source code was submitted for a review to the ns-3 developers group.


Network Simulator ns-3 (2012-2013)

no image

The Network Simulator 3 (ns-3) is the most popular wireless sensor network simulator. It's an open-source project, developed by the community of users. It is written entirely in C++.

In the course of my Master's Thesis I created two modules of the ns-3 simulator:

  1. smecn implements the algorithm of Small Minimum Energy Communication Network (SMECN) routing protocol. It uses the information on accurate node's position to calculate best routes, using variable power levels. The protocol was implemented in the network layer of the OSI model, based on the pseudo-code given by it's authors. It has not yet been included in the ns-3 main development tree.
  2. rns (Redundant Node Selection) is an algorithm allowing local calculation of node's redundancy. The ns-3 module was written in a way that allows many different uses: from routing protocol support to cooperation with measurement applications run in the network. The algorithm's concept is based on a scientific article, but during the implementation many features were modified or added.

The source code of both modules is still under development in order to let it be added to the ns-3 simulator's main development tree.


Sensorbox (2012)

no image

In cooperation with Cezary Sałbut during ISYP university course classes a Sensorbox project was started.

Sensorbox is an STM32 microcontroller based device, equipped with GPS and GSM modules along with three RJ-45 sockets, which can serve as peripheral entries for any kind of compatible sensors. The device is supposed to be a node of a wireless sensor network, communicating with the base station using GPRS.

I was participating in most project design decisions and PCB design creation using Altium Designer software.

The project was manufactured in the prototype series and some basic source code is being developed on BitBucket server.

Full hardware description can be found in the Open Hardware repository.


UAV.PL (2011-2012)

For one year (Oct 2011 to Oct 2012) I was employed in a private electronic company Unmanned Aerial Vehicles Polska sp. z o.o. as an electronic engineer and programmer. I participated mainly in three projects:

  1. Antenna station: design and creation of mobility module, responsible for moving the station in two dimensions and automatic antenna direction towards a given point on the horizon.
  2. Centrifuge for acceleration examination of any electronic device attached to its arms: design and creation of power supply module, electric motors control module and their communication with a PC application.
  3. Unmanned aerial vehicle for civillian applications: project and implementation of a flight control algorithm, using data from Inertial Measurement Unit for X-Plane flight simulator and subsequently for an STM32 microcontroller running a real-time operating system; co-operation on other modules; planning and conducting field tests.

In all the projects I was responsible for creating LaTeX and Doxygen documentation. I also participated in designing simple, auxiliary electronic circuits.


LG Internship (2011)

In June and July 2011, thanks to the kindness of Kyungpook National University, in Deagu, South Korea, which hosted me as an exchange student, I had an internship in LG Osan branch, where I worked in Plasma Display Panel Research & Development Department.

My task was to try to port Android OS onto one of LG hardware platforms.

During the internship I had a great chance to see what work in a major foreign corporation looks like and I was in touch with the bleeding edge technologies and people who developed them for LG.

You're welcome to view the official Internship Portfolio (eng).


Bachelor Thesis (2010) - Wireless Sensor Network Node

no image

I wrote my Bachelor Thesis under supervision of Krzysztof Gołofit, M.Sc. from the Institute of Electronic Systems at the Faculty of Electronics and Information Technology and Robert Samborski, Ph.D., from the National Institute of Telecommunications. It was written during a six month internship in the NIT, where I worked as a microcontroller programmer.

The topic of the thesis was: Error correcting codes implementation for wireless sensor networks, based on a microprocessor with an ARM core and digital radio communication.

The aim of the thesis was to design, construct and programme a device which could become a functional node in a wireless sensor network. The basic architecture consists of an ARM-based microcontroller and an AT86RF211 transceiver. The software was written in C and was compiled using a self-designed GNU-ARM-like toolchain. A real-time operating system FreeRTOS was used. The device allowed successful implementation and testing of a few different error-correcting codes (including Hamming code and BCH code).

The thesis received a very good grade (5 out of 5).

The Bechelor thesis is available from this website as well as full source code.