Source code
The attached zip file contains all the source codes, which can also be found in a GitHub repository.
List of source codes:
-
ROS node that implements the leader-follower algorithm.
-
ROS node for UWB and UVDAR data fusion. Could be used for other types of position/distance sensors as well.
-
ROS node for communication with DWM1001-DEV.
-
Zephyr RTOS application for DWM1001. The nRF Connect SDK is needed for compilation and flashing.
-
Complete ROS Noetic workspace for UWB. Includes all necessary packages with real-world tmux scripts and gazebo simulations.
The source code for the thesis is at https://github.com/vitpetrik/UWB-thesis and can be viewed as a web page at https://vitpetrik.github.io/UWB-thesis/.
All the source codes are tested on Ubuntu 20.04 and should compile right away. In case of any trouble, feel free to contact the author of this thesis at petrivi2@fel.cvut.cz, vit.petrik@gmail.com, or GitHub.
ISO-OSI network model
Object tracker and UWB evaluation tests
Multiple tests were run to evaluate the function of the Object tracker. As a test environment, the Gazebo simulator was used. The first UAV, an observer, remained at the coordinates \(\begin{bmatrix} 0 & 0 & 5 \end{bmatrix}^T\) for the entire duration of the tests. The second UAV, a performer, followed a pre-planned trajectory.
Range error is the difference between the ground truth distance between the UAVs and the distance calculated via unscented transform from Object tracker pose estimation.