RSSI-based Outdoor Localization with Single Unmanned Aerial Vehicle

04/20/2020 ∙ by Seyma Yucer, et al. ∙ 0

Localization of a target object has been performed conventionally using multiple terrestrial reference nodes. This paradigm is recently shifted towards utilization of unmanned aerial vehicles (UAVs) for locating target objects. Since locating of a target using simultaneous multiple UAVs is costly and impractical, achieving this task by utilizing single UAV becomes desirable. Hence, in this paper, we propose an RSSI-based localization method that utilizes only a single UAV. The proposed approach is based on clustering method along with the Singular Value Decomposition (SVD). The performance of the proposed method is verified by the experimental measurements collected by a UAV that we have designed and computer simulations. The results show that the proposed method can achieve location accuracy as low as 7m depending on the number of iterations.



There are no comments yet.


page 1

page 2

page 3

page 4

page 5

page 6

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

In recent years, Unmanned Aircraft Systems (UAS) drew significant attention due to the proliferation of their usage in the places that are not easy to reach by humans [Santamaria2007]. UAS play a critical role in many applications including search and rescue, public security and natural disaster aid [Shi2018, Waharte2010].

One of the most critical parts of these systems is the positioning of targets and Unmanned Aerial Vehicles (UAV) itself [Lazzari2017]. Although the GPS became a de-facto standard for outdoor positioning [Sutheerakul2017], especially for UAS, it can become obsolete in rural areas or in cases of natural disasters [Rady2011] and GPS is not preferred due to the high energy consumption of GPS sensors. In such cases, RF signals can be exploited to be used as a positioning solutions [Bittencourt2018, Dehghan2014] instead of GPS.

RF signal-based outdoor positioning methods use different properties of RF signals, for instance, Angle of Arrival, Time of Arrival, Time Difference of Arrival, and Received Signal Strength Indicator (RSSI). Unlike other methods, RSSI-based outdoor positioning methods [Kuo2010, Dong2014] do not require a specialized hardware and much more affordable, since commodity hardware can provide RSSI of RF signals.

RF signal-based methods utilize [Oguejiofor2013, Yang2016] received signal strength indicator (RSSI) by employing the signal propagation model. Since the outdoor environment can have a dynamic and complex settings, signal propagation model [Alippi2006] fails to satisfy positioning requirements. To overcome such obstacles, a study [Naik2008]

uses multiple RSSI, i.e., RSSI fingerprints, from various sources in order to estimate position by creating a radio map, an RSSI fingerprint model, of the environment. These passive

[Tang2016, Deak2011] methods consist of offline survey phase for creating the radio map and the online positioning phase. When comparing to trilateration-based approaches [Oguejiofor2013], most of the time radio map-based approaches can achieve more accurate and robust results. Data selection and preprocessing are the vital parts of radio map-based approaches since they are more sensitive to noise and environment dynamics.

Moreover, active positioning methods provide a position estimation without a priori exploration of the RF signal behavior in the environment. Therefore, these methods also need to confront the same challenges as the radio map-based methods do. These methods become more challenging when positioning occurs while moving. Localization in UAS is an excellent example of such cases as some UAVs can fly tens of meters each second. Most of the methods [Khelifi2018, Dehghan2012] provide promising results by using simulation data, yet they would fail when applied to real-world scenarios.

In this paper, we propose an RSSI-based localization method which utilizes clustering method as a pre-processing module and Singular Value Decomposition (SVD) for positioning target transmitter node using only a single UAV instead of multiple UAVs. We present the performance of our method using a fixed-wing UAV in a real-world setup. In particular, our contributions are three-folds:

  1. Requiring only a single UAV for localization instead of multiple UAVs,

  2. A pre-processing method to eliminate less relevant or outlier RSSI samples in order to increase efficiency regarding the processing power and energy consumption while preserving real-time positioning capabilities

  3. A hybrid model which combines the powerful features of active and passive positioning methods in order to provide robust location accuracy.

This paper is organized as follows. Section II describes UAV’s hardware design. Then, Section III introduces the details of our proposed method. Section IV discusses the experimental results. Finally, the last section provides conclusions and directions for future work.

Ii Hardware System Design

Ii-a The UAV Design

In order to conduct RSSI-based outdoor localization experiments for this paper, we designed a special fixed-wing UAV with minimum moving surfaces. This UAV constructed with a tractor configuration and has two independently-driven elevon surfaces. The designed UAV can be seen in Figure 1 while it is controlled via autopilot software. Hardware used in the UAV is listed in Table I.

Fig. 1: Designed UAV performs an autonomous flight

To conduct experiments of this paper, we launched predefined measurement campaigns in each flight. UAV performs these surveys in autonomous mode using Navio2, Autopilot card attached to Raspberry Pi 3. It is worthy to mention that Navio2 uses ArduPilot software which is a real-time flight control system that is empowered with MAVLink protocol. The UAV communicate with Ground Control Station (GCS) over a full-duplex telemetry module via the UART interface of the Navio2 with 57600 bps.

Flight controller Navio2 + Raspberry Pi 3
Weight 2200g
Engine NTM Prop Drive 28-36 1400KV
Propeller APC 9.0/4.5
Telemetry RFD 900+
Battery MultiStar LiPo 4S2P 8000mAh
RC Arkbird 433Mhz UHF 10-CH

TABLE I: Hardware Characterization of the UAV

Each UAV is equipped with six antennas. The first antenna is used to receive GPS signals and attached to Navio2. Two of them are used for the different polarization in the telemetry module. The forth antenna used to gather RSSI samples from the target node. The fifth antenna emits an analog video stream to the ground with an On-screen Display telemetry information, and the last antenna is used for the remote controller. Note that the UAV hardware placement scheme can be seen in Figure 2.

MAVLink is a communication protocol widely used between aerial vehicles and ground control stations as well as inside the aerial vehicles itself. MAVLink protocol can be extended to exchange custom message types in addition to its own predefined message types. We transferred RSSI measurements of the UAV to the GCS using a custom MAVLink message. These messages contain UAV’s current GPS position and the RSSI sensor readings for different channels.

RSSI module was calibrated with an external signal generator to report the same RSSI value from the same distance in different measurement campaings. UAV marshalls RSSI measurements with the current GPS position of the UAV, then transmits them to the GCS. After having certain number of RSSI observations, GCS estimates the target position using the collected RSSI readings.

Fig. 2: UAV hardware configuration for RSS observation flights

Ii-B RSSI Measurement Instrument

RSSI measurement device is used to gather RF signals of desired frequency with pre-defined bandwidth and then calculate the signal strength of the measured RF signal. This sensor is able to linearly measure -10 dBm -120 dBm band with 0.5 dBm steps. The measurement module was developed in-house. It consists of two sub-modules.

  • The first module is a RF transceiver, which uses SI4463 IC. It can measure the RSSI of RF band of interest which it has been tuned to within 12.5 KHz bandwidth. Transceiver uses SPI to communicate with microcontroller module.

  • The second module is the Arduino Nano, a microcontroller module. It communicates with RF module, reads RSSI measurements, sorts them within a time window and sends the maximum reading to the onboard computer via UART communication bus. A custom communication protocol is designed between onboard computer and micro controller module. The microcontroller module gathers RSSI measurements from RF transceiver and sends them to onboard computer at 1Hz.

Iii The Proposed Method

In this paper, our aim is to localize an active stationary RF transmitter using a single fixed-wing UAV. Since having multiple UAVs on the air is not always possible and feasible, we try to achieve robust positioning accuracy with a single UAV by eliminating the erroneous RSSI measurements and selecting the most accurate ones. In the following sections, we assume that UAV has a dedicated GPS module along with a RF receiver module to transmit RSSI measurements and GPS coordinates to the GCS over a telemetry link. We will explain our method in three subsections: (a) RF pathloss model, (b) proposed multiple node clustering method, and (c) multilateration model for UAVs.

Iii-a RSSI Path-loss Model

Active localization techniques require multiple reference nodes to be available simultaneously in the air to estimate the target position with respect to these reference nodes. The RSSI values obtained from these reference nodes are converted to a distance metric, individually. Thus, these techniques benefit from the Friis transmission formula (1), [Friis1946] as we also use in our proposed method.


In (1), is the received power, is the transmission power, and is the wavelength of the signal. and denote the antenna gain of the transmitter and receiver, respectively. The term is the relative distance between transmitter and receiver devices. The relation between RSSI values and distance is defined in this formula.

The received RSSI fingerprints are transmitted to the GCS and converted into relative real world distances using the log distance path loss formula [Rappaport2002]:


The value of the relative distance, , can be calculated using (2) where X

is a Gaussian distributed random variable. In order to estimate

, we need to determine , signal propagation constant, , the reference distance value, beforehand and measure the , the reference power value in dBm at . It is worthy to note that, weather conditions and environment dynamics have a dramatic effect on these measurements. So that, we measured these reference values before each survey during the first loiter of the flight. These reference values are also affected by noise which has a dramatic effect on localization accuracy. To show the noise effect on RSSI measurements at the same distance, we visualized the relationship between RSSI values and the distance where we have multiple measurements at the same distance in the Figure 3. Therefore, it is important to select the most reliable RSSI measurements for accurate positioning. In the next section, we will elaborate on our proposed RSSI selection approach.

Fig. 3: The noise effect on the RSSI measurements at different distances

Iii-B Multiple Node Clustering

In our experiments, we observed that the fluctuations of RSSI values needs to be addressed to achieve a robust localization accuracy. In order to do so, we propose a dynamic clustering module which eliminates the noisy RSSI measurements as well as applies a threshold to RSSI values below a certain dBm value. This module also selects the most eligible RSSI measurements among neighbor RSSI measurements. We observed that this selection concludes better positioning accuracy over using all available RSSI measurements.

There are several methods for selecting the most representative RSSI measurements such as grid planning and hierarchical clustering. For instance, grid planning method slices the survey area into a rectangular grid then selects either minimum, average or maximum RSSI value within each rectangular area. Our module dynamically clusters the latitude and longitude coordinates of the given reference node. Then we obtain the cluster centers and the cluster membership for every RSSI measurement.

In (3), where , we define a simple reference node which has the latitude coordinate of and longitude coordinate of

. To cluster these reference nodes, we preferred K-means clustering, an efficient and popular unsupervised clustering technique. In (

4), we select value depending on the , an empirical constant distance, and the maximum distance between given reference nodes. in (4) represents the Haversine distance formula [H.1930] for calculating the real-world distance using the latitude and longitude coordinates.


Our method groups each RSSI measurement into a geographically defined cluster, then selects the most powerful RSSI values within each cluster, denoted as . It also eliminates the clusters which contain less number of RSSI measurements. Then using the most powerful RSSI values, we convert this problem into a linear form and solve it using a Singular Value Decomposition (SVD) technique. We will describe how we dynamically applied this method in the following section.

Iii-C Multilateration Model for UAVs

The multilateration technique consists of matrix-based simple operations and the accuracy of this technique strongly depends on minimum three RSSI measurements used in creation of this matrix.

In UAVs, RSSI measurements deviate due to several factors including vehicle speed, wind, trees and buildings and so on. Therefore, we need a positioning method that rely on multiple representative measurements. Assume that we have M reference measurements including latitude and longitude, and is the relative distance between target node and the reference node at . First, we need to transform latitude and longitude to the projection coordinates, , , respectively. Then, we use (5) from [Yang2016] to find the target node coordinates by solving the following equations. We can form (6) using (5) where is an M x N matrix, x is an N x 1 matrix, and is an M x 1 matrix.

Matrix contains the reference measurement coordinates and matrix contains distances between target node and reference node within the same row. Therefore, using the coordinates and distances between nodes, we can transform the multilateration localization problem into a linear problem, so that we can estimate the position of the target node by solving (6).


After solving the linear equation using SVD, we transform x’ matrix’ elements into the WGS84 real world coordinate system to obtain geographic coordinates of the target node, and .

: list of all prior RSS observations
: list of all prior GPS coordinates
Target coordinates and iteration error
function estimate_target_position()
     for  do
         for  do
         end for
     end for
     for all  in  do
         if  then is a constant
         end if
     end for
end function
Algorithm An iteration of the proposed localization algorithm

During flights, we measure RSSI values at constant intervals. Therefore, in order to cope with continuous flow of RSSI measurements, we need to design an iterative localization system which improves itself over time. In every iteration, we gather a certain number of RSSI measurements, then estimate the target position using the given algorithm. In the first step of the algorithm, we group all available measurements into clusters and eliminate ineffective clusters. Then we find the most powerful RSSI measurement within each cluster and use them as reference nodes. We solve the linear system described above using these reference nodes, and obtain target coordinate estimation for the current iteration. We calculate linear model error for the current iteration using this estimation. Then we estimate the final target coordinate using the iteration with minimum iteration error among all previous iterations.

Iv Experimental Results

We evaluate our method using real flight measurements as well as simulation flight measurements. In both cases, we use the same evaluation criteria and report the error between target position and estimated position using the haversine distance.

To create a simulation environment, we created a fixed-wing UAV simulator using ArduPilot’s test software. Using this UAV, we simulated a real measurement campaign inside the GTU campus and collected RSSI measurements at every second using (1) for each GPS coordinate generated by the simulated UAV.

Fig. 4: Estimation error in meters for different values on the simulation data

Fig. 5: Estimation and iteration errors for on the simulation data

The value has a strong impact on the position estimation error. Hence, it is important to select appropriate value to mitigate estimation errors. We tested and plotted the effect of different values ranging from 50 to 190 on estimation errors in Figure 4. Using our simulation and field observations, we empirically select value as 130 for simulation, 50 for real world surveys and equals to iteration number. For every RSSI measurement (i.e. iteration), we estimate the target position and . Simulation data position estimation errors when can be seen in Figure 5 where iteration has the minimum iteration error which results in 7 meter position estimation error.

In addition to simulation results, we tested our proposed method in the field using a fixed-wing UAV described in the previous section. The flight measurement campaigns are conducted in different weather conditions and climates in GTU campus and Air Wing in Konya. Before each flight, we measure the reference RSSI value and the signal path-loss exponent, , with a distance inside the campaign area using a similar hardware setup of the UAV’s. We calculated the constant using our previous observations. These two survey areas differ from each other in terms of size and Line-of-Sight (LOS) availability. In Konya, survey area has a clear LOS for more than 7 whereas GTU campus have at most 150 clear LOS. In Table II we present the position estimation errors in meters as a haversine difference between target and estimated positions. SVD denotes the plain SVD method which takes all available measurements into account.

In Figure 6, we illustrate how our method works in real-life conditions and the flight area centered in the target node is represented with the blush color. As can be seen in the figure, our method employs the spatial information of RSSI measurements, therefore it’s more robust than plain SVD method since our method uses only the reference points and diminishes the effect of outlier measurements or eliminates them, entirely.

Estimation Error
Data Survey Area () SVD () Our Method ()
GTU - Simulation 3.14 23 7
GTU - Flight 0.95 157 43
Konya - Flight 70.51 435 145
TABLE II: Error in meters for estimating target location using Our Method and SVD.

Fig. 6: Cluster visualization of the Konya flight


In this paper, we propose a RSSI-based localization method using only a single UAV instead of multiple UAVs to locate a target object. In the proposed method, we have applied clustering along with an SVD on RSSI measurements for positioning a target. In addition, a fixed-wing UAV is designed in order to demonstrate the performance of the proposed method. The flight measurements using this fixed-wing UAV and computer simulations are conducted. The results are promising for our proposed method that can be utilized for commercial and surveillance applications such as search and rescue. As a future work, the proposed method can be integrated and utilized in 5G networks.


This study is supported by Turkish Air Force. We would like to thank Mete Can Gazi, Halis Kilic, Fatih Fahreddin Ongul, and Ahmet Soyyigit for their help during the measurement campaigns.