Next Article in Journal
Multi-Objective Optimization of Orchestra Scheduler for Traffic-Aware Networks
Previous Article in Journal
Forecasting Population Migration in Small Settlements Using Generative Models under Conditions of Data Scarcity
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Performance Analysis for Time Difference of Arrival Localization in Long-Range Networks

by
Ioannis Daramouskas
1,2,
Isidoros Perikos
1,2,3,*,
Michael Paraskevas
1,3,
Vaios Lappas
4 and
Vaggelis Kapoulas
1
1
Computer Technology Institute and Press “Diophantus”, 26504 Patras, Greece
2
Computer Engineering and Informatics Department, University of Patras, 26504 Patras, Greece
3
Electrical and Computer Engineering Department, University of Peloponnese, 26504 Patras, Greece
4
Department of Aerospace Science & Technology, National Kapodistrian University of Athens, 15772 Athens, Greece
*
Author to whom correspondence should be addressed.
Smart Cities 2024, 7(5), 2514-2541; https://doi.org/10.3390/smartcities7050098
Submission received: 10 July 2024 / Revised: 25 August 2024 / Accepted: 28 August 2024 / Published: 6 September 2024

Abstract

:

Highlights

What are the main findings?
  • Noise can cause discrepancies in the estimated distances, including negative values, indicating inaccuracies in reference base station identification.
  • Using sets of ten messages to average TDoA measurements helps smooth out random fluctuations and mitigate multipath and environmental noise.
  • Advanced algorithms such as Social Learning Particle Swarm Optimization (SL-PSO) and Least Squares are effective in handling noisy data and improving localization accuracy.
  • The Chan algorithm performed less reliably under high noise conditions, often failing to provide accurate solutions.
  • Grouping messages reduces the impact of noise and improves the accuracy of localization.
What are the implications of the main finding?
  • The reduction in localization errors through noise mitigation and message grouping indicates that more reliable and precise positioning can be achieved in smart city applications.
  • Better services in applications such as asset tracking, autonomous vehicles, and emergency response.
  • For applications such as search and rescue operations, improved localization accuracy means quicker and more reliable identification of individuals in need. This can significantly enhance the safety and efficiency of such operations.
  • The insights gained from this study can inform policymakers and city planners about the technical requirements and benefits of deploying advanced localization systems in urban areas. This can support strategic decisions in smart city planning and development.

Abstract

LoRa technology is a recent technology belonging to the Low Power and Wide Area Networks (LPWANs), which offers distinct advantages for wireless communications and possesses unique features. Among others, it can be used for localization procedures offering minimal energy consumption and quite long-range transmissions. However, the exact capabilities of LoRa localization performance are yet to be employed thoroughly. This article examines the efficiency of the LoRa technology in localization tasks using Time Difference of Arrival (TDoA) measurements. An extensive and concrete experimental study was conducted in a real-world setup on the University of Patras campus, employing both real-world data and simulations to assess the precision of geodetic coordinate determination. Through our experiments, we implemented advanced localization algorithms, including Social Learning Particle Swarm Optimization (PSO), Least Squares, and Chan techniques. The results are quite interesting and highlight the conditions and parameters that result in accurate LoRa-based localization in real-world scenarios in smart cities. In our context, we were able to achieve state-of-the-art localization results reporting localization errors as low as 300 m in a quite complex 8 km × 6 km real-world environment.

1. Introduction

The advent of the Internet of Things (IoT) has spurred the development of a myriad of technologies aimed at supporting the connectivity and management of countless devices over vast distances in smart cities. Among these technologies, LoRa (Long Range) has emerged as a significant approach in the stream of Low-Power Wide Area Networks (LPWANs) and offers a wide range of unique features [1,2]. One of the less explored yet highly promising features of LoRa technology lies in its capability for precise localization in smart cities. Traditional GPS-based systems, while accurate, require substantial power and are less effective in certain environments, such as indoors or in dense urban areas. Alternatively, LoRa can potentially offer a cost-effective and energy-efficient solution for localization through the use of Time Difference of Arrival (TDoA) techniques. TDoA estimates the position of a device by measuring the time difference in signal arrival from the device to multiple gateways, which can be translated into spatial coordinates.
LoRa comprises two primary components: the physical layer (LoRa) and the network protocol (LoRaWAN). LoRa is mainly a configuration technique for a specific wireless spectrum, while LoRaWAN is an open protocol that allows IoT devices to use LoRa for communication [3]. It is based on the cloud, designed and supported by the LoRa Alliance, which allows devices to communicate wirelessly with LoRa [4]. In essence, LoRaWAN takes LoRa wireless technology and adds a networking element to it, while at the same time integrating node authentication and data encryption for security [5]. The foundations of the LoRa enable communication up to 10 km in line-of-sight (LOS) situations for 5 km < distance ≤ 9 km with packet reception ratio ≥ 70%, information in NLOS situation (sight distance ≤ 2 km), low time, low required reason, required message time from each time search for various issues in GW (gateway or base station) (LoRa GW differs during different programs in eight channels), stability to the Doppler effect. LoRa technology uses 868/915 MHz, which can be used internationally and has very low power consumption compared to cellular and other short-range technologies [6,7]. In Figure 1, a rough approximation of the power consumption of the technologies regarding their communication range is illustrated.
Despite its potential, the application of TDoA techniques in LoRa networks is not without challenges [8]. These include signal multipath propagation, synchronization between gateways, and the need for robust algorithms capable of coping with the noisy data typical of real-world environments. Also, despite its potential, the exact capabilities and limitations of LoRa-based localization, particularly using Time Difference of Arrival (TDoA) techniques, are not fully understood [9]. This study aims to address these gaps by conducting a thorough performance analysis of LoRa TDoA localization in a real-world setup. The objectives include assessing the accuracy of various localization algorithms, understanding the impact of environmental noise, and providing practical guidelines for implementing efficient LoRa-based localization systems in smart cities. By addressing these challenges, this research seeks to advance the application of LoRa technology in urban localization, contributing valuable insights and potential solutions to the field. The current research contributes to this field by systematically investigating the performance of LoRa technology in localization through an extensive series of experiments conducted both in real-world settings and simulations. Specifically, we examine the localization capabilities of LoRa networks in terms of localization error. A LoRa network in the area of the University of Patras was created, which covers an area of 8 km × 6 km and consists of 4 gateways with precisely synchronized clocks and Time Difference of Arrival (TDoA) capabilities. We performed a series of studies to assess the performance of different algorithms under a different number of gateways that receive the signal sent by target sensors. A wide range of experiments were performed in simulated environments and real-world environments. First, in the experiments performed with simulated data, the localization performance of LoRa is examined for a different number of gateways receiving the signal. In this regard, we use different scenarios with up to seven gateways receiving the signal sent by the target sensor, and for each scenario, we generate 100 proper messages in terms of noise. Then, we examine the performance of different localization algorithms under grouping or not of the messages that were sent by the sensor.
In the first case, we utilize sets of k messages to calculate the average of the TDoAs of these messages and use the average value for every pair of gateways to perform the localization. In the second case, localization is performed by using each signal sent by the target sensor, and then the efficiency and performance of the algorithms are assessed. In addition, various experiments were performed to assess the localization capabilities of LoRa technology in a real-world setup. We examined the performance of the localization algorithms in specifying the position of a sensor by using every single message sent or by grouping k messages into one. The results of both experiments in the real world and in the simulation environments are quite interesting. First, the results indicate that the localization error is greatly affected by the noise of the recorded timestamps of the gateways. The noise results in underestimating and overestimating the pseudo-ranging, which is something that greatly affects the performance of the algorithms. Also, the results point out that the use of additional gateways assists in diminishing the localization error by up to 50% when a grouping of messages is used. Moreover, the number of gateways greatly affects the localization error, and the addition of more gateways substantially diminishes the localization error.
This article is conducted under a research project named WeSAR (Wearable-based Search And Rescue system). The project aims to design and develop a system for identifying and rescuing individuals, especially those belonging to population groups with a particularly high probability of being lost. The central part of the system is a modular “wearable (portable)” device, while the positioning and statusing algorithms of the person carrying the device will play an important role in its effectiveness. The wearable device will offer the possibility of basic communication with base stations that can be located many kilometers away from the device’s location. The wearable will use low-energy consumption communication and long-reach protocols (LoRa). The rhythm or the force of the broadcasted data packets will adjust to the special conditions of application so that battery life can last for days or even weeks. The ultimate goal, based on the results of the project, is to create a wearable tag family of various types (clothing, wristbands, and badges) of low consumption and long-range for monitoring and rescue, with dozens of applications in an urban or non-urban environment.
The results of this study could be assistive to both research and applied development levels. The main contributions of the work can be summarized in the following:
  • A thorough description of the steps required to perform the localization process on a LoRa network. This includes setting up the network, configuring the gateways, and implementing Time Difference of Arrival (TDoA) techniques.
  • A deep, comparative evaluation of the performance of various methods and algorithms, including Social Learning Particle Swarm Optimization (SL-PSO), Least Squares, Chan algorithm, and our modified PSO, and thoroughly examining their performance through both real-world and simulated data.
  • A clear guideline for algorithm selection based on the number of base stations communicating with sensors in real-world LoRa networks.
  • A concrete investigation into the impact of noise in recorded timestamps on localization error. The work highlights the importance of using a group of messages to mitigate this and also discusses how the number and the topology of the base stations affect localization accuracy.
  • Clear guidelines are provided for selecting appropriate localization methods and algorithms based on the number of base stations communicating with sensors in LoRa networks, aiming to assist researchers and practitioners in selecting the most suitable algorithm for their specific setup and requirements.
The proposed localization method plays a crucial role in the development of smart cities by enabling precise and energy-efficient tracking of devices over large areas. Integrating this method into smart city infrastructure can significantly enhance various applications, including asset tracking, autonomous vehicles, and emergency response systems. The importance of this approach lies in its ability to provide reliable and low-power consumption location data even in challenging environments. By leveraging the low power consumption and wide-area coverage of LoRa networks, our method ensures long-term operational efficiency, making it a vital component in the seamless functioning of smart city ecosystems.
The remainder of the article is structured as follows: Section 2 surveys the literature and presents related works on LoRa localization with TDoA. Section 3 presents our work, the LoRa network created in the area of our university, and the methodology on localization with TDoA. Section 4 presents the experimental study and the results collected. Finally, Section 5 concludes the article and provides directions for future work.

2. Background Topics and Related Work

Localization constitutes a fundamental procedure with various applications in the domain of smart cities. Efficient localization is highly desirable, and many works study the efficiency of different methods and techniques in various contexts [2,10,11].
GPS is known for its high accuracy, typically achieving precise precision in open environments. This makes it suitable for applications requiring accurate location tracking, such as navigation and mapping. GPS provides global coverage, enabling it to function anywhere without reliance on local infrastructure. However, GPS modules require significant power to operate, making them less suitable for battery-powered or low-power applications. Additionally, GPS signals can be obstructed by buildings and other structures, leading to poor performance indoors and in dense urban environments. The cost of GPS hardware can also be higher than other technologies, and the power requirements can further increase costs due to the need for expensive power solutions.
Wi-Fi-based localization leverages the widespread infrastructure of Wi-Fi networks in urban and residential areas, providing a readily available setup for localization without the need for additional hardware. Wi-Fi signals penetrate buildings better than GPS, making Wi-Fi-based localization more effective in indoor environments. However, the accuracy of Wi-Fi-based localization can greatly vary significantly depending on the density and distribution of access points, with sparse coverage leading to large errors. Wi-Fi modules consume more power than LPWAN technologies, although generally less than GPS, which can be a limitation for battery-powered IoT devices.
LPWAN technologies like NB-IoT and Sigfox are designed for low power consumption, making them ideal for battery-powered devices with long operational lifespans. These technologies offer wide-area coverage, often spanning several kilometers, which is beneficial for applications in rural or remote areas. However, the localization accuracy of LPWAN technologies is typically lower than that of GPS and Wi-Fi. NB-IoT and Sigfox can achieve accuracies in the range of tens to hundreds of meters, which may not be sufficient for applications requiring high precision. These technologies also rely on specific network infrastructures that may not be as widely available as Wi-Fi or GPS, potentially limiting their applicability in certain regions.
LoRa TDoA localization offers extremely low power consumption, making it suitable for long-term battery-operated devices [12]. It provides extensive coverage, with the ability to communicate over several kilometers in rural areas and a few kilometers in urban environments. LoRa networks can support a large number of devices, making them suitable for applications like smart cities and industrial IoT [13,14]. However, the accuracy of LoRa TDoA localization typically falls between that of GPS and other LPWAN technologies [15]. This may not be sufficient for applications requiring high precision. LoRa TDoA localization can be affected by noise and environmental factors, such as multipath propagation and synchronization errors between gateways. Implementing a LoRa TDoA localization system also requires a network of synchronized base stations, which can involve significant setup and maintenance efforts.
While GPS provides high accuracy and global coverage, its high power consumption and poor indoor performance limit its use in low-power IoT applications. Wi-Fi-based localization offers good indoor performance and leverages existing infrastructure but suffers from variable accuracy and moderate power consumption. LPWAN technologies like NB-IoT and Sigfox provide low power consumption and wide coverage but at the cost of lower localization accuracy. LoRa TDoA localization demonstrates remarkable low-power consumption and has quite good coverage. Also, it can offer proper accuracy for many applications, particularly in smart cities and industrial contexts, while maintaining its extremely low power requirements.

Related Works

Localization can be performed by utilizing the Received Signal Strength Indicator (RSSI), Angle of Arrival (AoA), Time of Arrival (ToA), and Time Difference of Arrival (TDoA) [16,17,18]. Each technique offers unique advantages and faces specific challenges, particularly in the context of smart cities. For instance, RSSI-based methods are cost-effective and simple to implement but suffer from accuracy issues due to signal attenuation and interference. In such a case, the location of a node in a network can be estimated using the RSSI metrics that are received by the corresponding gateways when a specific node conducts a signal transmission [19,20]. Angle of Arrival (AoA) techniques provide higher accuracy but require complex antenna arrays and are limited by line-of-sight conditions. Another method is based on the measurements of the AoA. In such a context, the position of a node is estimated by a couple of base stations that are equipped with proper arrays of antennas [21]. The Angle of Arrival approach is suitable to be used in line-of-sight conditions [22,23]. Time of Arrival (ToA) constitutes an approach that bases the localization on the actual time that a message was transmitted by the sensors and the actual time that it was received by each of the base stations. The ToA approach is greatly limited by the need for accurate synchronization between the base stations and the specific transmitting device. Time of Flight (ToF) can also be utilized since it can measure the distance to an object or between multiple devices. ToF denotes the duration it takes for a signal to travel from an anchor node to a target node. The distance is calculated by multiplying the time of flight with the propagation speed. ToA methods are highly precise but demand precise synchronization between the transmitter and receiver, which can be difficult to achieve in large-scale deployments. TDoA, the focus of this study, strikes a balance by offering good accuracy without the stringent synchronization requirements of ToA, though it is still challenged by multipath effects and noise in urban environments. Time Difference of Arrival (TDoA) constitutes a quite potent localization approach [24]. It is based on the calculation of the difference between the time of arrival of a signal emanating from a transmitter to remote base stations. In such a context, the position of a node is estimated using three or more base stations that possess accurate time references. Many methods utilize the TDoA metrics to perform localization in LoRa networks. The work presented in [25] utilizes TDoA in an outdoor LoRa setup of 10 × 10 km, and the authors study localization approaches like the Maximum Likelihood Estimation (MLE) and the Multilateral Dissection (MD). The authors use up to 19 base stations and report an estimation error of around 500 m. In the work presented in [26], the authors experiment with the TDoA localization in an outdoor context of 1.74 × 1.74 km. In total, four base stations are used, and the authors report an average error in the localization procedure that is 100 m on average. The work presented in [27] is one of the studies that performed a simulation of localization using a combination of AoA and TDoA methods but did not test these in real-time scenarios. Goldoni [28] presents another article that uses RSSI and compares the outdoor versus indoor localization, and in [29] further improvements have been suggested. In the work presented in [30], the authors improved the TDoA geolocation results using the Kalman filter, and another study combined TDoA and RSSI data and used the k nearest neighbors (k-NN) algorithm with a result of 332.6 m of median error in [31]. In the study presented in [32], authors reported a median estimation error of more than 400 m for stationary devices, while in [33], authors reported an error of 1000–2000 m in the case of the RSSI proximity method, while in [34], with TDoA, 300 m and more are reported. Our work results in obtaining state-of-the-art localization accuracy as low as 300 m in a quite complex real-word smart city environment.

3. Methodology

In this section, we present the methodology employed in our research, including the introduction of a modified version of the SL-PSO method. Additionally, we present the methods utilized for Time Difference of Arrival (TDoA) localization. The implementation details of the LoRa network are also illustrated, comprising descriptions of the gateways and their precise locations, as well as the specifications of the sensors used in this study.

3.1. LoRa Network Formulation

The LoRa network was implemented in Patras City, Greece, in the area of the campus of the University of Patras. Four MultiTechConduit IP67 LoRa base stations were placed and created an area of 8 × 6 km as illustrated in Figure 2.
The LoRa base stations that were used are the MultiTechConduit IP67 models that were created by MultiTech. They are a ruggedized IoT gateway solution, specifically designed for outdoor LoRa public or private network deployments. The model is based on the Semtech v2.1 reference design, which uses the LoRaWAN protocol to perform Time Difference of Arrival (TDoA) calculations to deliver end-node location information in conjunction with a v2.1 LoRa Network Server.
The MultiTech Conduit IP67 base station is widely adopted for localization in LoRa networks using TDoA measurements due to its capability to provide nanosecond-level timestamps. The characteristics of it are illustrated in Table 1.
In addition, the ELSYS ERS sensor was used for the localization procedure. The ERS sensor is illustrated in Figure 3b and is a smart and professional LoRaWAN sensor that can be used just for transmitting messages. ERS can measure a lot of metrics, including temperature, humidity, light, and room activity. The sensor is highly configurable, and all parameters can be changed. ERS works great as a sensor for smart buildings, dynamic workspaces, climate control, and many more. The ERS is a LoRaWAN-certified sensor and is quite suitable for LoRa networks. The sensor has been used for sending messages and collecting the corresponding timestamps from the base stations to facilitate the localization procedure based on the TDoA measurements.

3.2. Localization Based on TDoA Measurements

Time Difference of Arrival (TDoA) based on a group of sensor nodes with known locations has been widely used to locate targets. Assume that there are N ( N 3 ) gateways ( n 1 , n 2 , n N ), which can also be called base stations (BSs), to determine the position of the target. The coordinates of the base stations are known as B i = ( x i , y i ) in Cartesian coordinates. The target’s sensor coordinates are T = ( x , y ) . Take the base station with the smaller time of arrival as a reference and assume that the times that the signal arrives t i with propagation speed c (speed of light). The range difference between the reference base station and the other base stations is mentioned as r i , 1 . The range difference error is a zero-mean Gaussian with a known standard deviation.
r i , 1 = c ( t i t 1 )
In addition, the range difference r i , 1 is calculated as follows:
r i , 1 = d i , 1 ± n i , 1
where d i , 1   represents the range difference between the reference base station (denoted as 1 ) and the other base stations (denoted as i ), and n i , 1   represents the Gaussian noise of the range difference between the reference base station and the other base stations. Hence, from Equations (1) and (2), we derive the following:
c ( t i t 1 ) = d i , 1 ± n i , 1
where
d i , 1 = d i d 1
In Equation (4), d i represents the distance between the target sensor and base station i , and d 1 represents the distance between the target sensor and base station 1 , which is the reference base station. The distances can be expressed as follows:
d 1 = ( x x 1 ) 2 + ( y y 1 ) 2
d i = ( x x i ) 2 + ( y y i ) 2 ,             w h e r e   i , [ 2 , N ]
Hence, the problem of obtaining results based on TDoA measurements is the problem of solving N 1 equations of type (4). In general, when dealing with TDoA measurements, at least 3 base stations are needed to estimate the location of the target sensor.
In case there are 3 base stations in the 2D plane, two groups of hyperbolas are created. Therefore, in such a case, the localization of the position of the target sensor may be unclear. The reason is that the hyperbolas may intersect at just two points, and so the exact position of the location cannot be determined. To avoid ambiguous position estimations, it is necessary to increase the number of gateways. An example is illustrated in Figure 4, where three base stations are used and the two hyperbolas intersect at two points.
In blue is the hyperbola created by the base stations A and B (GW-AB), and in red is the hyperbola created by the base stations A and C (GW-AC), while T represents the target point. We can observe that the hyperbolas intersect at two points; thus, there is ambiguity in the localization since two possible positions are specified. In cases where we add additional base stations, ambiguity in localization can be faced. Specifically, in this scenario, if four base stations are used, one exact location can be specified for the target. Specifically, in Figure 5, we have 4 base stations A, B, C, D, and T as the target points. The 4 base stations form 3 groups of hyperbolas, with the reference point being base station A.
In blue is the hyperbola created by the base stations A and B (GW-AB), in red is the hyperbola created by the base stations A and C (GW-AC), and in green is the hyperbola created by base stations A and D (GW-AC), while T represents the target point. In the absence of noise, there is only one intersection of the three hyperbolas, as illustrated in Figure 5a, and thus one exact location for the target is specified. However, the presence of noise greatly affects the shape of the hyperbolas. Therefore, in the case of noise, there is no point that all the three hyperbolas are intersecting, and thus, the exact location of the target cannot be specified, as we can see in Figure 5b.

3.3. Localization Methods on TDoA

In the context of our work, we examined the performance of three main localization algorithms, which are the SL-PSO, our modified SL-PSO, the Least Squares, and the Chan localization algorithm. The SL-PSO can be used on both Cartesian and geodetic coordinates, while Least Squares and the Chan localization algorithm can be used solely on Cartesian coordinates. Therefore, a transformation from geodetic to Cartesian is needed.

3.3.1. Iterative Non-Linear Least Squares

In this section, the non-linear Least Squares method for 2D target localization based on TDoA measurement is presented. Assume that there are N ( N 3 ) base stations (BSs) to determine the position of the target. The coordinates of the base stations are known as B i = ( x i , y i ) in Cartesian coordinates. The target’s coordinates are T = ( x , y ) . The non-linear Least Squares method [35] requires an initial guess as an estimated position x 0 , y 0 . In each iteration, a local Least Squares solution is found, and then the deviation is calculated and added to the x 0 , y 0 .
h = R 2,1 R 2 R 1 R N , 1 R N R 1
where h represents the matrix of residuals, which represents the difference between the measured TDoA values and the calculated distances based on the current estimated position of the target. R i represents the distance between the ith base station and the solution in each iteration; that is, the estimated position of the target. R i , 1 represents the real range difference between the reference base station (denoted as 1) and the i base station for the target signal, representing the real data measurements as illustrated in Equation (1).
G = X 1 x R 1 X 2 x R 2 Y 1 y R 1 Y 2 y R 2 X 1 x R 1 X N x R N Y 1 y R 1 Y N y R N
where G matrix represents the geometric relationships between the target’s position and the positions of the base stations.
Δ = Δ x Δ y = G T Q 1 G 1 G T Q 1 h
The covariance matrix is denoted as Q with each iteration. Δ x is added to x 0 and Δ y to y 0 . The whole process is repeated until the termination conditions are satisfied like a minimum distance between Δ x and Δ y or exceeding the iterations.

3.3.2. Social Learning Particle Swarm Optimization (SL-PSO)

In the Social Learning Particle Swarm Optimization (SL-PSO) algorithm, the learning process of the particle is updated through the personal best position and the global best position only. The process of learning and imitating the behavior of better individuals in a population is known as social learning [36]. The SL-PSO algorithm is executed on a sorted swarm, in which a particle can perform social learning [36]. Social learning helps the particles to learn from any better particles, whereas a particle in the current swarm can learn and imitate the behavior of any better particles, known as a demonstrator. Imitators are the particles that learn from the behaviors of the demonstrators in the current swarm.
We modified the SL-PSO algorithm to handle cases and found that the convergence of the algorithm relies exclusively on the initialization of the particles if the base stations are placed closely and forming almost a line. The steps are the following:
  • N particles are created in the solution space with random position and velocity.
  • The evaluation of the particles is conducted using the following equation, which gives the score for every particle:
    s c o r e = i = 0 l e n ( t d o a ) p a r _ t d o a i t d o a i 2 l e n ( t d o a )
    where l e n ( t d o a ) represents the number of the t d o a actual measurements we have. The p a r _ t d o a i represents the particle’s i t h   t d o a , while t d o a i represents the actual i t h tdoa.
  • Scores are normalized and transformed to represent the cumulative sum.
  • The particles are ordered (the best particle is considered the one with the lowest score).
  • Every particle, starting from the worst, is imitating from the N/2 best particles if the demonstrator’s score is bigger than a randomly generated number in [0, 1]; if its order is smaller than N/2, else it is imitating from the next better particles.
  • The movement of the particles is conducted as follows:
    X j ( t + 1 ) = X j t + V j ( t + 1 )
    V i , j t + 1 = w r 1 V j t + t r 1 c 3 r 3 ( P m e a n P i )
    where c 3   is calculated as follows:
    c 3 = 0.0003 j N
  • r 1 , r 2 , and r 3 represent random numbers in [0, 1].
  • P j represents the position of the imitator particle.
  • P i represents the position of the demonstrator particle.
    t r 1 = r 2 P b e s t P i + P j 2
  • P b e s t represents the position of the best particle.
  • P i represents the position of the demonstrator particle.
As mentioned before, the geometry defined by the base stations and the geometry defined between the base stations and the position of the mobile device is very important and drastically affects the positioning error. This is particularly related to the initialization that will take place in the particles, as if base stations have been placed at close distances, forming almost a straight line, then the solution estimated by the algorithm is always on the straight side of the reference station unless a particle is found during the initialization, which is almost exactly at the actual point, or if these areas have been excluded from the initialization. With the modification, we solved this problem with the algorithm, resulting in the fact that it always converges. Figure 6 illustrates the locations of the base stations and the locations of the targets used to validate the modified PSO. The base stations are depicted in black, and the target locations are depicted in green.
In Figure 7, we present the position of the particles as we go through the iterations for the SL-PSO algorithm in the same context as before. In green color is one selected target. From the initialization, the best particle is located too far away from the true location, and as we can see, the SL-PSO algorithm did not manage through the iterations to find the correct estimation about the position of the target because it moves the particles far away from the solution space through early iterations.
In Figure 8, we present the position of the particles as we go through the iterations for our introduced and modified SL-PSO algorithm. The scenario and the conditions are the same as before. Although the initialization of the best particle is too far away from the true location, our modified SL-PSO algorithm manages through the iterations to find the correct position of the target.
The results indicate that our modified SL-PSO performs better than the SL-PSO, and more specifically, it can better handle cases where the best particle selected in the first iteration rounds is not so close to the target. In Figure 9, we can see the results of the algorithms for two test target locations.
In Figure 9a, we can see that our modified PSO performs very well, reporting a performance localization error of 0 m in the scenario where no noise is added in the simulations. In (b), we see that the PSO also reports a very good performance in the same scenario. Indeed, it demonstrates a localization error of 0 m for the target sensor. However, there are cases where the selection of the best particle in the early iterations greatly affects the performance of SL PSO and can lead to great localization errors (as presented in Figure 7). In (c), we illustrate such a case, where our modified PSO correctly specified the position of the target. Indeed, we can see that the initial best particle selected was the same as the initial best particle of SL PSO. However, our modified PSO demonstrates a robust performance and is not affected so much by the best particle selection in early iterations. Hence, it can locate the exact location of the target, even when the best selected particle in the first round of iterations is quite far from the target.

3.3.3. Chan Algorithm

If the base stations that receive the signal from the target sensor are three, then the Chan algorithm can be used. The Chan algorithm [37] is a notable localization approach that is used in indoor and outdoor location contexts since it reports quite satisfying fitting precision within non-enumerable and non-iterative characters. A main advantage of the Chan algorithm is that it can handle the non-linear nature of the TDoA equations and provide a solution directly. As we mentioned before, with three base stations, two groups of hyperbolas are defined, and the solution can be found as follows:
x y = X 2,1 Y 2,1 X 3,1 Y 3,1 1 R 2,1 R 3,1 R 1 + 1 2 R 2,1 2 K 2 + K 1 R 3,1 2 K 3 + K 1
where K i represents the squared distance of the i t h base station from the origin and is calculated as follows:
K i = X i 2 + Y i 2
where X and Y are the coordinates of the base stations and X i , 1 ,   Y i , 1 are calculated as:
X i , 1 = X i X 1
Y i , 1 = Y i Y 1
They represent the differences in the coordinates of the i t h base station relative to the reference base station.
R i 1 represents the range difference between the i t h base station and the reference one.
R 1 is calculated from Equation (6). Inserting Equation (15) into Equation (6) with i = 1 produces the following quadratic equation:
a R 1 2 + b R 1 2 + c = 0
This quadratic equation is derived from the substitution of the range differences into the position equations. By substituting the positive root into Equation (15),we obtain a solution. The nature of this equation reflects the non-linear relationship between the TDoA measurements and the target’s position. The solution to this equation gives the range (distance) from the reference base station to the target, which is then used to determine the target’s position.

3.4. Transformation of Coordinates

To transform the coordinates from the geodesic frame to the Cartesian frame, we use the Python library BASEMAP. To represent the Earth’s surface as a 2D plane, a map projection technique needs to be used. Because the Earth is ellipsoid and not flat, projecting the Earth’s surface onto a 2D plane introduces distortions. To quantify the position error of our algorithms, we can calculate the distance between our estimation and the actual position of a device. When working in a 2D plane, it is easiest to use the Pythagorean distance formula. However, the distortions of map projection may cause an error in our experiments, which should be evaluated to ensure that it is within acceptable limits. Therefore, we need a technique to find the distance between two geodetic coordinates. This technique is the Great-Circle Distance, which is calculated as follows:
d = R   c o s 1 ( s i n ( φ 1 ) s i n ( φ 2 ) + c o s ( φ 1 ) c o s ( φ 2 ) c o s ( λ 1 λ 2 ) )
where d is the Great-Circle Distance between two points on a sphere. R is the Earth’s radius. Moreover, φ 1 , λ 1 , and φ 2 , λ 2   represent the latitude and longitude of the two points.
In Figure 10a, we see the hyperbolas created using the real locations of the base stations and the target point. The solution is calculated using the Least Squares algorithm, and we can see that the intersection of the hyperbolas is the same as the solution of the algorithm. In Figure 10b, we see that the presence of noise greatly affects the shape of the hyperbolas, and there is no point where all the hyperbolas intersect.

4. Experimental Study and Results

In this section, we present the experimental studies conducted and the results collected. Our experiments are based on real data collected from LoRa sensors in our LoRa network located in the area near the University of Patras campus as depicted in Figure 11.
In Table 2, the distances between the base stations are presented, while in Table 3, the distances between the target points and base stations are illustrated.

4.1. Data Collection

Real data were gathered from the ELSYS Sensor used as targets in stationary positions, which were transmitting messages using a spending factor set to 12. In these experiments, the target sensors were placed close to one base station, and we recorded 693 messages containing information about the time of arrival, the RSSI, and the SNR. In Table 3, the latitude and the longitude of the locations of the three targets that were used in the experiments are illustrated. In Figure 12, we can see the packet ID, antenna ID (each base station contains two antennas and records a timestamp per antenna), base station ID, timestamp, RSSI, SNR, spreading factor used for the transmission, bandwidth, and frequency. These records refer to the same signal, so for every base station we use the smaller timestamp (in nanoseconds) between the two antennas, we choose as reference base station the one with the smallest timestamps.
Since the position of the target sensor is known, we can calculate the range between the pair of base stations and the reference base station. We repeat the process for every message available. The results are shown in Figure 13, where we know the reference base station, and this figure illustrates the range between the reference base station and the other two base stations. The estimated vs. the real distance between each pair of base stations is presented alongside the mean, std, maximum, and minimum values.
As we can observe in the aforementioned Figures, messages exhibit significant noise, rendering them unsuitable as inputs for any localization algorithm on their own. In some instances, this noise results in negative estimated distances, indicating discrepancies between the actual and calculated reference base stations. For example, when the position of the target sensor was known and the reference base station should have been ITY, comparisons with the ITY-CEID pair revealed instances where the CEID base station received the signal first. This highlights the challenges posed by noise in accurately determining the correct reference base station. Based on our observations and analysis of various sensor node locations, we conclude that effective localization in LoRa requires the use of message grouping. To achieve this, the target sensor should be configured to wake up and transmit a burst of k messages in quick succession. Please note that the statistical analysis of the messages of the target locations is presented in Table 4.
Despite the fact that every single message can contain a large amount of noise, resulting in overestimations or underestimations of the distance that can be up to 2 km, we can observe that in sets of messages, the mean value of the distance approximates the real distance. Based on this, we want to generate additional artificial data that can simulate the real one to execute extra experiments with additional numbers of gateways and explore the capabilities of LoRa localization because we wanted to explore the capabilities of having many messages from different locations because our setup consisted of four gateways, and we could not collect as many messages from different locations as we could with the simulated data.

4.2. Results

In this section, we will present the results from the experiments we conducted using simulated and real data. Regarding the simulated data, we decided to simulate the noise we face using the actual timestamps from the gateways and examine the effects of the number of gateways used in the localization algorithms on the estimation error. For a sequence of target points T ( x , y ) in geodetic coordinates, we will create 100 messages by using the following expression:
t o a = t 0 + d c
where t 0 is the transmission time, d is the distance between the target and the corresponding base station, and c is the speed of light. The distance is calculated using the Great-Circle Distance presented in Equation (19). The generated messages will contain a Gaussian noise given below.
n o i s e = r a n d o m ( 0,2 e 06 )
The aim is to simulate the noise we faced in real experiment data; we observed that adding to the timestamps a noise with s t d = 2 e 06 results in messages that are similar to the real data collected.
The purpose of using simulated data in addition to the real data is to examine the efficiency of the localization procedures with respect to the number of base stations in the presence of extreme noise conditions. Indeed, the noise we use in the simulations is quite greater than the noise expected in the real-world conditions, and thus, the aim is to assess the performance of the localization methods in even extreme noise scenarios.
The algorithms to be tested in the simulation using the 100 messages are presented in Table 5. The same experiments will be conducted using an average of the TDoAs from the messages. The averages are calculated as follows: For several messages, suppose n , we calculate for every message the corresponding TDoA based on the ToA of each gateway using a gateway as an anchor. To determine which gateway will be used for anchoring, we simply calculate for every ToA of the n messages the occupancies that the base stations have recorded the smallest ToA. The reference base station will be the one with the higher number of occupancies. Then, the TDoA can be determined, and for each pair of gateways, the TDoA will be expressed as follows:
g r o u p _ t d o a i , j = 1 n ( T D o A i , j ) n
where i and j represent the pair of the base stations that participate in the calculation of the TDoA of a given message. In Table 5, we present the different experiments that will be performed and the parameters of each experiment. More specifically, the algorithms that will be used in each experiment are illustrated, as are the number of base stations in each experiment and the conduct of each experiment under grouping and not grouping of the messages.
Our goal is to examine the effects of the localization error of the noise, the number of gateways, and the use of average TDoA to feed the algorithms. Below, we present the results from the experiments we conducted using simulated data. The experiments were based on both real and simulated data. Specifically, simulated data were created based on the real data and followed the same distribution with the same mean and standard deviation in terms of noise for the same three locations, with the addition of two more simulated locations. In the simulations, we also used an additional number of base stations to examine the effect of the number of base stations on the localization error.
We created 100 messages representing 100 different timestamps, and we used them to localize five different targets. In the group experiments, we grouped the timestamps by 10 and tested the localization algorithms with three, four, five, six, and seven gateways, and in the no group experiments, we performed the same experiments with no group of timestamps. The timestamps were generated, and the two sets of experiments utilized them to perform the localization. The base stations’ positions and the targets are presented in Figure 14.
From the simulations with the Chan algorithm, in most cases, the algorithm, due to the error, could not provide a solution, and we made the result 10,000 m for each corresponding case. Specifically, with grouping target_0 and target_2 and target_4 had a median error of 478 m, while the other two targets could not provide a solution, hence the results were around 10,000 m error.
We examined the impact of message clustering and the number of base stations on the performance of each localization algorithm. Performance was evaluated using metrics such as mean localization error, median error, maximum error, and standard deviation. Figure 15 and Figure 16 provide these metrics for the two algorithms for all the experiments we performed on the number of base stations. Specifically, the mean values for the detection error, median error, maximum error, and standard deviation are provided for experiments with four, five, six, and seven base stations, both with and without message grouping. When message grouping is applied, the average localization error decreases substantially—from 400 to 600 m with four base stations to 150–200 m with six stations.
We also conclude that as the number of base stations increases, all positioning metrics (mean error, mean error, maximum error, minimum error) decrease significantly when using message grouping, and the average detection error can be reduced by 400–800 m when we have four base stations and up to 150–200 m when we have six or seven base stations. There is also a big difference in all the metrics using grouping, as we see in all the experiments on the base stations for both algorithms. When we use grouping, all the metrics are doubled. For example, in Figure 16 for four base stations, the average error is about 1100 m without grouping, while it is about 500 m when using grouping. Respectively, the same happens with the maximum error, which without grouping is at 5600 m while with grouping it is at 1200 m.
Therefore, we can conclude that when we have four base stations at our disposal to perform TDoA positioning in LoRa networks where the noise in the measurements follows the distribution shown above, it is necessary to use message grouping, and the average positioning error will be in the range of 400 to 800 m, depending on the noise and where the mobile device is located, as well as whether the geometry created between the mobile device and the base stations significantly affects the location. Of course, as shown by the simulation results, the location error is greatly reduced by increasing the number of base stations so that the target device can communicate with as many base stations as possible.

4.2.1. Network 1

The results collected from the experimental study in the real world are illustrated in the next figures.
In Figure 17a, we illustrate the results of the Least Squares algorithm where four base stations were communicating with the wearable device. Four groups of messages were formulated for the location of target 2, and the average localization error was calculated to be 581 m. We can obtain the fact that more base stations used in this experiment can reduce the localization error drastically. In Figure 17b, we present the results of the Least Squares algorithm where three base stations were communicating with the wearable device from the location of target 0. In total, 188 groups of messages were formulated, and the results of the algorithm in terms of average localization error were 958 m in the context of the 8 × 6 km area. This is anticipated due to the noisy measurements. In Figure 17c, the results of Least Squares with the location of target 1 are presented. Moreover, 684 grouped messages were collected, and the average localization error was 213 m. Once again, all the base stations were able to communicate with the wearable device, and the error was drastically reduced, having a 500 m maximum error and a 45 m minimum. In Figure 17d, we illustrate the results of our modified PSO algorithm, where four base stations were communicating with the wearable device. Four groups of messages were formulated for the location of target 2, and the average localization error was calculated to be 594 m. In Figure 17e, the results of our modified PSO with the location of target 1 are presented. Moreover, 684 grouped messages were collected, and the average localization error was 212 m. Once again, all the base stations were able to communicate with the wearable device, and the error was drastically reduced, having a 500 m maximum error and a 43 m minimum. In Figure 17f, we present the results of the PSO algorithm where three base stations were communicating with the wearable device. In total, 188 groups of messages were formulated, and the results of the algorithm in terms of average localization error were 984 m in the context of the 8 × 6 km area. This is anticipated due to the noisy measurements.

4.2.2. Network 2

In this network, we moved the base station located in Arachovitika and placed it closer to the University of Patras to test the sending of messages with Spreading Factor SF 7, with the result that the transmission range in most cases is around 2000 m. The locations tested were target_0 and target_1 previously described.
These two targets communicate with all four base stations, and we could leave the target sensor for a long time to collect many messages and test our algorithms. Figure 18 shows the locations of the base stations for the new network we use.
We can observe that in our new experiments, the error we obtained varied in areas we expected and from the results of the simulations we performed. Figure 19a illustrates the results of 170 messages without grouping the messages for target 1 (ITY) of the PSO algorithm with an average error of 596 m. In Figure 19b, we can see the results for the same messages when we perform grouping of messages. In this case, the grouping reduced the localization error to 317 m, and we can derive that the use of the message grouping technique is extremely important in reducing the localization error. In Figure 19c, we present the results from 1773 messages without grouping for the target 0 (Magoula) of the modified PSO algorithm with an average error of 820 m. In Figure 19d, we can see for the same messages that the grouping of messages resulted in a quite lower localization error, which was 460 m. In this case, we can see that the message grouping technique significantly reduced both the average and maximum errors. In this experiment, the sensor was placed for 2 months at the site (Magoula) so that we could collect a significant number of messages to evaluate our algorithms.
The average error at 460 m in such a large number of messages and only with four base stations proves that our research in the field of positioning is a complete and state-of-the-art study in this field, according to the latest publications in this field. In Figure 19e,f, we see the results of Least Squares for target 1 and target 0, respectively. We can see that the Least Squares algorithm has quite lower performance compared to our modified PSO, in this case where four base stations are in the network. Such a performance was demonstrated also in the study with the simulations. We can see that the average error in Figure 19e is 735 m, and in Figure 19f the average localization error is 1028 m. In both cases, we observe that the error is increased by some outlier measurements that have errors up to 10,000 m.
Regarding the noise, we can see that the accuracy of localization in LoRa networks is significantly impacted by various types of noise, which can distort the measurements and lead to substantial errors. The primary sources of noise in our study include environmental interference, multipath propagation, and synchronization discrepancies between gateways. Environmental noise stems from physical obstructions and atmospheric conditions that can scatter or absorb the signal, while multipath propagation occurs when signals reflect off surfaces, causing multiple signal paths that interfere with the direct signal. Synchronization noise arises from the slight differences in the internal clocks of the gateways, affecting the precision of the TDoA measurements. To mitigate these noise effects, several strategies were employed. First, precise synchronization of the base stations was maintained using highly accurate clocks to minimize synchronization noise. Second, grouping of the messages in teams of 10 was used to average the TDoA measurements. This grouping helped to smooth out random fluctuations and reduce the impact of multipath and environmental noises. By simulating various noise levels and analyzing their impact on the localization results, it was found that higher noise levels significantly increased the localization error. However, the use of grouping of messages and also advanced algorithms like our modified Social Learning Particle Swarm Optimization (SL-PSO) substantially mitigated this effect, demonstrating the robustness of localization even in extremely noisy environments. These highlight the importance of noise mitigation strategies and the effectiveness of our modified PSO and the grouping technique in enhancing localization accuracy in real-world LoRa networks.

5. Discussion and Conclusions

In this paper, we examined the localization capabilities of LoRa networks, particularly focusing on localization errors. Our study was conducted using a LoRa network covering an 8 × 6 km area at the University of Patras, equipped with precisely synchronized clocks and TDoA capabilities. Various experiments were performed to assess the localization capabilities of LORA technology in the real world and the simulated setup. We thoroughly assessed the localization performance of different methods, both with and without the grouping of messages sent by the sensor.
In the simulations, we also used an additional number of base stations to examine their exact effect on the detection error using five target points and examine the effects on the noise location error and the use of the message grouping. The results show that the number of base stations greatly influences the detection error demonstrated by both the simulation experiments and the actual data. Through our simulations, we can conclude that as the number of base stations increases, all algorithms for locating the algorithms (mean error, maximum error, and minimum error) decrease significantly when we use message grouping, and the mean error can be reduced from 400 to 600 m when we use four base stations to 150–200 m when we have six or seven base stations. For example, while the average error with four base stations is 507 m with grouping for the PSO algorithm, when we use seven base stations, even though the noise added to the measurements is the same in order of magnitude, the average location error is 152 m and decreases as base stations increase. It also seems that the PSO algorithm performs better on all metrics than the Least Squares algorithm, especially if we have four base stations at our disposal. With real data from a sensor on a LoRa network when we have three base stations, the position estimate can be ambiguous in some cases. Also, the estimation is affected by the noise in the measurements, despite the grouping of messages. We can see that with three base stations, the minimum error was about 300 m and the maximum was about 1800 m, while the average detection error through these messages was 958 m. In the case of four base stations, the average detection error is 300–700 m, depending on the pseudo-ranging distance error and the geometry created by the target position and base stations. Increasing the number of base stations can drastically reduce detection errors by up to 50% when combined with message grouping. The average error in the total of the measurements for the cases with four base stations in 2837 messages was 395.75 m for the four different points that were examined.
The results of the real-world experiments are quite interesting. First, the results indicate that the localization error is greatly affected by the noise of the recorded timestamps of the base stations. The noise results in underestimating and overestimating the pseudo-ranging, which is something that greatly affects the performance of the algorithms. Also, the results point out that the grouping of the received messages is quite useful in minimizing the localization error. The main findings of the results and the research we conducted indicate that, through LoRa, the timestamps of the received messages contain noise, which can result in some cases in ±2 km in the pseudo-ranging distance calculations. Despite the high variance in the prearranged distances, the mean estimated distance is accurate, especially if we consider a large number of messages. The remedy to the noisy measurements was to use a group of ten messages to perform localization. Having a group of ten messages reduces drastically the error in pseudo-ranging distances, but still, there might be cases with ±800 m, but the error is reduced at least by 50%. The results indicate that the number of base stations highly affects the localization error, which is proven from both simulated and real data experiments. When dealing with three base stations, the location estimation might be ambiguous in some cases, and the estimation is also affected by the noise in measurements despite the grouping of messages. We can obtain that for three base stations, the minimum error was about 300 m and the maximum was about 1800 m, while the average localization error through these messages was 958 m. In cases of four base stations, the localization error ranges from 300 m to 700 m, depending on the error in pseudo-range distances and the geometry that the target position and the base stations are creating. It is obvious that increasing the number of base stations can drastically reduce the localization error by a factor up to 50% when it is combined with a grouping of messages. Through our simulations, we can conclude that as the number of base stations increases, all the localization metrics (median error, average error, max error, and min error) decrease significantly when we use a group of messages, and the average localization error can be reduced from 400 to 600 m when using four base stations to 150–200 m when we have six or seven base stations.
There are some points that future work will examine. First, a larger-scale evaluation could be performed to examine LoRa concerning diverse conditions like different urban densities as well as different levels of signal interferences. Another direction concerns the design of experiments to assess LoRa concerning other technologies like GPS and Wi-Fi-based methods in different environmental conditions and scenarios. Finally, future work could also examine the performance of hybrid approaches that combine TDoA with other techniques like AoA or RSSI, especially in challenging environments. These provide the main research directions that future work could focus on.

Author Contributions

Conceptualization, I.D., I.P. and V.K.; methodology, I.D.; software, I.D.; validation, I.D., I.P. and V.L.; formal analysis, I.D., I.P. and M.P.; resources, V.K. and M.P.; writing—original draft preparation, I.P., I.D. and V.K.; visualization, I.D. and I.P.; supervision, M.P. and V.K.; project administration, V.K. and M.P. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the European Regional Development Fund (ERDF) and the Greek State under the project “Wearable-based Search and Rescue system (WeSAR)/EPAnEK (Operational Programme, Competitiveness, Entrepreneurship, and Innovation)/NFRF (National Strategic Reference Framework)” (2014–2020).

Data Availability Statement

The data are contained in the article.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Bouras, C.; Gkamas, A.; Kokkinos, V.; Papachristos, N. Time Difference of Arrival Localization Study for SAR Systems over LoRaWAN. Procedia Comput. Sci. 2020, 175, 292–299. [Google Scholar] [CrossRef]
  2. Zafari, F.; Gkelias, A.; Leung, K.K. A survey of indoor localization systems and technologies. IEEE Commun. Surv. Tutor. 2019, 21, 2568–2599. [Google Scholar] [CrossRef]
  3. Marquez, L.E.; Calle, M. Understanding LoRa-based localization: Foundations and challenges. IEEE Internet Things J. 2023, 10, 11185–11198. [Google Scholar] [CrossRef]
  4. Marais, J.M.; Malekian, R.; Abu-Mahfouz, A.M. LoRa and LoRaWAN testbeds: A review. In Proceedings of the 2017 IEEE Africon, Cape Town, South Africa, 18–20 September 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1496–1501. [Google Scholar]
  5. Raza, U.; Kulkarni, P.; Sooriyabandara, M. Low Power Wide Area Networks: An Overview. IEEE Commun. Surv. Tutor. 2017, 19, 855–873. [Google Scholar] [CrossRef]
  6. Bouras, C.; Gkamas, A.; Kokkinos, V.; Papachristos, N. Real—Time Geolocation Approach through LoRa on Internet of Things. In Proceedings of the 35th International Conference on Information Networking (ICOIN 2021), Jeju Island, Republic of Korea, 13–16 January 2021. [Google Scholar]
  7. Ntseane, L.; Isong, B. Analysis of lora/lorawan challenges. In Proceedings of the 2019 International Multidisciplinary Information Technology and Engineering Conference (IMITEC), Vanderbijlpark, South Africa, 21–22 November 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1–7. [Google Scholar]
  8. Moradbeikie, A.; Keshavarz, A.; Rostami, H.; Paiva, S.; Lopes, S.I. A cost-effective LoRaWAN-based IoT localization method using fixed reference nodes and dual-slope path-loss modeling. Internet Things 2023, 24, 100990. [Google Scholar] [CrossRef]
  9. Daramouskas, I.; Mitroulias, D.; Perikos, I.; Paraskevas, M.; Kapoulas, V. Localization in LoRa Networks Based on Time Difference of Arrival. In Computer and Information Science 2021-Fall; Springer: Cham, Switzerland, 2022; Volume 21, p. 130. [Google Scholar]
  10. Gu, C.; Jiang, L.; Tan, R. Lora-based localization: Opportunities and challenges. arXiv 2018, arXiv:1812.11481. [Google Scholar]
  11. Islam, K.Z.; Murray, D.; Diepeveen, D.; Jones, M.G.; Sohel, F. LoRa-based outdoor localization and tracking using unsupervised symbolization. Internet Things 2024, 25, 101016. [Google Scholar] [CrossRef]
  12. Raychowdhury, A.; Pramanik, A. Survey on LoRa Technology: Solution for Internet of Things. In Intelligent Systems, Technologies and Applications; Springer: Berlin/Heidelberg, Germany, 2020; pp. 259–271. [Google Scholar]
  13. Bouras, C.; Gkamas, A.; Kokkinos, V.; Papachristos, N. IoT Geolocation Performance Using LoRaWAN. In Proceedings of the 34th International Conference on Advanced Information Networking and Applications (AINA 2020), Caserta, Italy, 15–17 April 2020. [Google Scholar]
  14. Pandangan, Z.A.; Talampas, M.C.R. Hybrid LoRaWAN Localization using Ensemble Learning. In Proceedings of the 2020 Global Internet of Things Summit (GIoTS), Dublin, Ireland, 3 June 2020; pp. 1–6. [Google Scholar]
  15. Anjum, M.; Khan, M.A.; Hassan, S.A.; Jung, H.; Dev, K. Analysis of time-weighted LoRa-based positioning using machine learning. Comput. Commun. 2022, 193, 266–278. [Google Scholar] [CrossRef]
  16. Pettorru, G.; Pilloni, V.; Martalò, M. Trustworthy Localization in IoT Networks: A Survey of Localization Techniques, Threats, and Mitigation. Sensors 2024, 24, 2214. [Google Scholar] [CrossRef] [PubMed]
  17. Daramouskas, I.; Kapoulas, V.; Pegiazis, T. A survey of methods for location estimation on Low Power Wide Area Networks. In Proceedings of the 10th International Conference on Information, Intelligence, Systems and Applications (IISA), Patras, Greece, 15–17 July 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1–4. [Google Scholar]
  18. Kulaib, A.R.; Shubair, R.M.; Al-Qutayri, M.A.; Ng, J.W. An overview of localization techniques for wireless sensor networks. In Proceedings of the 2011 International Conference on innovations in information technology, Abu Dhabi, United Arab Emirates, 25–27 April 2011; IEEE: Piscataway, NJ, USA, 2011; pp. 167–172. [Google Scholar]
  19. Lam, K.H.; Cheung, C.C.; Lee, W.C. Rssi-based lora localization systems for large-scale indoor and outdoor environments. IEEE Trans. Veh. Technol. 2019, 68, 11778–11791. [Google Scholar] [CrossRef]
  20. Yoshitome, E.H.; da Cruz JV, R.; Monteiro ME, P.; Rebelatto, J.L. LoRa-aided outdoor localization system: RSSI or TDoA? Internet Technol. Lett. 2022, 5, e319. [Google Scholar] [CrossRef]
  21. Aernouts, M.; BniLam, N.; Podevijn, N.; Plets, D.; Joseph, W.; Berkvens, R.; Weyn, M. Combining TDoA and AoA with a particle filter in an outdoor LoRaWAN network. In Proceedings of the 2020 IEEE/ION Position, Location and Navigation Symposium (PLANS), Portland, OR, USA, 20–23 April 2020; pp. 1060–1069. [Google Scholar]
  22. Podevijn, N.; Plets, D.; Trogh, J.; Martens, L.; Suanet, P.; Hendrikse, K.; Joseph, W. TDoA-based outdoor positioning with tracking algorithm in a public LoRa network. Wirel. Commun. Mob. Comput. 2018, 2018, 1864209. [Google Scholar] [CrossRef]
  23. Klukas, R.; Fattouche, M. Line-of-sight angle of arrival estimation in the outdoor multipath environment. IEEE Trans. Veh. Technol. 1998, 47, 342–351. [Google Scholar] [CrossRef]
  24. Azmi, N.A.; Samsul, S.; Yamada, Y.; Yakub MF, M.; Ismail MI, M.; Dziyauddin, R.A. A survey of localization using rssi and tdoa techniques in wireless sensor network: System architecture. In Proceedings of the 2018 2nd International Conference on Telematics and Future Generation Networks (TAFGEN), Kuching, Malaysia, 24–26 July 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 131–136. [Google Scholar]
  25. Bissett, D. Analysing TDoA Localisation in LoRa Networks. Master’s Thesis, Delft University of Technology, Delft, The Netherlands, 2018. [Google Scholar]
  26. Fargas, B.C.; Petersen, M.N. GPS-free geolocation using LoRa in low-power WANs. In Proceedings of the 2017 Global Internet of Things Summit (GIoTS), Geneva, Switzerland, 6–9 June 2017; pp. 1–6. [Google Scholar]
  27. Aernouts, M.; BniLam, N.; Berkvens, R.; Weyn, M. Simulating a combination of TDoA and AoA localization for LoRaWAN. In Proceedings of the International Conference on P2P, Parallel, Grid, Cloud and Internet Computing, Antwerp, Belgium, 7–9 November 2019; Springer: Cham, Switzerland, 2019; pp. 756–765. [Google Scholar]
  28. Goldoni, E.; Prando, L.; Vizziello, A.; Savazzi, P.; Gamba, P. Experimental data set analysis of RSSI-based indoor and outdoor localization in LoRa networks. Internet Technol. Lett. 2019, 2, e75. [Google Scholar] [CrossRef]
  29. Ghany, A.A.; Uguen, B.; Lemur, D. A Parametric TDoA Technique in the IoT Localization Context. In Proceedings of the 2019 16th Workshop on Positioning, Navigation and Communications (WPNC), Bremen, Germany, 23–24 October 2019; pp. 1–6. [Google Scholar]
  30. Bakkali, W.; Kieffer, M.; Lalam, M.; Lestable, T. Kalman filter-based localization for Internet of Things LoRaWANTM end points. In Proceedings of the 2017 IEEE 28th Annual International Symposium on Personal, Indoor, and Mobile Radio Communications (PIMRC), Montreal, QC, Canada, 8–13 October 2017; pp. 1–6. [Google Scholar]
  31. Saari, M.; bin Baharudin, A.M.; Sillberg, P.; Hyrynsalmi, S.; Yan, W. LoRa—A survey of recent research trends. In Proceedings of the 2018 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, Croatia, 21–25 May 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 0872–0877. [Google Scholar]
  32. Plets, D.; Podevijn, N.; Trogh, J.; Martens, L.; Joseph, W. Experimental Performance Evaluation of Outdoor TDoA and RSS Positioning in a Public LoRa Network. In Proceedings of the 2018 International Conference on Indoor Positioning and Indoor Navigation (IPIN), Nantes, France, 24–27 September 2018; pp. 1–8. [Google Scholar]
  33. Choi, W.; Chang, Y.S.; Jung, Y.; Song, J. Low-Power LoRa Signal-Based Outdoor Positioning Using Fingerprint Algorithm. ISPRS Int. J. Geo-Inf. 2018, 7, 440. [Google Scholar] [CrossRef]
  34. Kim, S.; Ko, J. Poster: Low-complexity Outdoor Localization for Long-range, Low-power Radios. In Proceedings of the 14th Annual International Conference on Mobile Systems, Applications, and Services Companion, Singapore, 25–30 June 2016; ACM: Singapore, 2016. [Google Scholar]
  35. Pospisil, J.; Fujdiak, R.; Mikhaylov, K. Investigation of the Performance of TDoA-Based Localization Over LoRaWAN in Theory and Practice. Sensors 2020, 20, 5464. [Google Scholar] [CrossRef] [PubMed]
  36. Rauniyar AEngelstad, P.; Moen, J. A New Distributed Localization Algorithm Using Social Learning based Particle Swarm Optimization for Internet of Things. In Proceedings of the IEEE 87th Vehicular Technology Conference (VTC Spring), Porto, Portugal, 3–6 June 2018. [Google Scholar]
  37. Ho, K.C.; Chan, Y.T. Solution and performance analysis of geolocation by TDOA. IEEE Trans. Aerosp. Electron. Syst. 1993, 29, 1311–1322. [Google Scholar] [CrossRef]
Figure 1. An illustration of the characteristics of the technologies in terms of power consumption and communication range.
Figure 1. An illustration of the characteristics of the technologies in terms of power consumption and communication range.
Smartcities 07 00098 g001
Figure 2. The area near the campus of the University of Patras. In black are the exact locations of the base stations of the LoRa network.
Figure 2. The area near the campus of the University of Patras. In black are the exact locations of the base stations of the LoRa network.
Smartcities 07 00098 g002
Figure 3. The infrastructure used in our study. In (a), we present the MultiTech Conduit LoRa gateways used to create the LoRa network, and in (b), we present the ELSYS ERS sensor used as target points.
Figure 3. The infrastructure used in our study. In (a), we present the MultiTech Conduit LoRa gateways used to create the LoRa network, and in (b), we present the ELSYS ERS sensor used as target points.
Smartcities 07 00098 g003
Figure 4. Ambiguity in specifying the location of the target when we use three base stations since the two hyperbolas created with the TDoA of the three base stations intersect in two points.
Figure 4. Ambiguity in specifying the location of the target when we use three base stations since the two hyperbolas created with the TDoA of the three base stations intersect in two points.
Smartcities 07 00098 g004
Figure 5. The estimated locations of the target, based on the intersection of the hyperbolas that are created with the TDoA of the three base stations. Base station A is selected as the reference base station, and the hyperbolas GW-AB, GW-AC, and GW-AD are created. In (a) are the intersection of the hyperbolas created if we have no noise, while in (b) there are the corresponding hyperbolas in the presence of noise.
Figure 5. The estimated locations of the target, based on the intersection of the hyperbolas that are created with the TDoA of the three base stations. Base station A is selected as the reference base station, and the hyperbolas GW-AB, GW-AC, and GW-AD are created. In (a) are the intersection of the hyperbolas created if we have no noise, while in (b) there are the corresponding hyperbolas in the presence of noise.
Smartcities 07 00098 g005
Figure 6. The area near the campus of the University of Patras. In black are the exact locations of the base stations of the LoRa network and in green are the locations of the targets.
Figure 6. The area near the campus of the University of Patras. In black are the exact locations of the base stations of the LoRa network and in green are the locations of the targets.
Smartcities 07 00098 g006
Figure 7. Iterations with the SL-PSO. In black are the base stations, and in green is the target. In (a), the initial produced particles are illustrated in red. In blue is the best particle. In (b), the generated particles after some iterations are in red. In (c), the generated particles after a set of iterations are in red, and finally, in (d), the final specified particle is in red.
Figure 7. Iterations with the SL-PSO. In black are the base stations, and in green is the target. In (a), the initial produced particles are illustrated in red. In blue is the best particle. In (b), the generated particles after some iterations are in red. In (c), the generated particles after a set of iterations are in red, and finally, in (d), the final specified particle is in red.
Smartcities 07 00098 g007
Figure 8. Iterations with our newly introduced, modified SL-PSO. In (a), the initial particles produced are illustrated in red. The best particle is colored blue. In (b), the generated particles after some iterations are in red. In (c), the generated particles after a set of iterations are in red, and finally, in (d), the final specified particle is in red.
Figure 8. Iterations with our newly introduced, modified SL-PSO. In (a), the initial particles produced are illustrated in red. The best particle is colored blue. In (b), the generated particles after some iterations are in red. In (c), the generated particles after a set of iterations are in red, and finally, in (d), the final specified particle is in red.
Smartcities 07 00098 g008
Figure 9. Localization results for our modified SL-PSO vs. the SL-PSO for 2 targets that are target 0 and target 1. In (a) is the localization error for target 0 of our modified SL-PSO, and in (b) is the localization error for target 0 of the SL-PSO. In (c) is the localization error for target 1 of our modified SL-PSO, and in (d) is the error of the SL-PSO for target 1.
Figure 9. Localization results for our modified SL-PSO vs. the SL-PSO for 2 targets that are target 0 and target 1. In (a) is the localization error for target 0 of our modified SL-PSO, and in (b) is the localization error for target 0 of the SL-PSO. In (c) is the localization error for target 1 of our modified SL-PSO, and in (d) is the error of the SL-PSO for target 1.
Smartcities 07 00098 g009aSmartcities 07 00098 g009b
Figure 10. In (a), there is a match in the solution, and the exact location of the target point can be specified. In (b), the presence of noise adds error in the localization.
Figure 10. In (a), there is a match in the solution, and the exact location of the target point can be specified. In (b), the presence of noise adds error in the localization.
Smartcities 07 00098 g010
Figure 11. In our LoRa network, the locations of the base stations appear in black, and the example targets appear in green.
Figure 11. In our LoRa network, the locations of the base stations appear in black, and the example targets appear in green.
Smartcities 07 00098 g011
Figure 12. An example of the real-world data collected and stored in the database.
Figure 12. An example of the real-world data collected and stored in the database.
Smartcities 07 00098 g012
Figure 13. Real-world data, illustrating the measured vs. predicted distances between three base stations from targets 0, 1, and 2. In (a) is the range difference between the actual messages for target 0 and the pair of base stations 0 and 1. In (b) is the range difference of the actual messages for target 0 and the pair stations 2 and 3. In (c) is the range difference for target 1 and pairs 1 and 0. In (d) is the range difference for target 1 and pairs 1 and 4. In (e) is the range difference for target 2 and pair stations 0 and 1, and in (f) is the range difference for pair stations 0 and 3.
Figure 13. Real-world data, illustrating the measured vs. predicted distances between three base stations from targets 0, 1, and 2. In (a) is the range difference between the actual messages for target 0 and the pair of base stations 0 and 1. In (b) is the range difference of the actual messages for target 0 and the pair stations 2 and 3. In (c) is the range difference for target 1 and pairs 1 and 0. In (d) is the range difference for target 1 and pairs 1 and 4. In (e) is the range difference for target 2 and pair stations 0 and 1, and in (f) is the range difference for pair stations 0 and 3.
Smartcities 07 00098 g013aSmartcities 07 00098 g013b
Figure 14. Cases with different numbers of base stations and the same targets to be located. In (a), we illustrate the locations of the three base stations used to locate the targets. In (b), we use four base stations for the same localization procedure. In (c), we use five base stations. In (d), we use six base stations, and in (e), we use seven base stations for the localization of the same targets.
Figure 14. Cases with different numbers of base stations and the same targets to be located. In (a), we illustrate the locations of the three base stations used to locate the targets. In (b), we use four base stations for the same localization procedure. In (c), we use five base stations. In (d), we use six base stations, and in (e), we use seven base stations for the localization of the same targets.
Smartcities 07 00098 g014
Figure 15. Curve metrics to assess the localization performance of Least Squares.
Figure 15. Curve metrics to assess the localization performance of Least Squares.
Smartcities 07 00098 g015
Figure 16. Curve metrics to assess the localization performance of SL-PSO.
Figure 16. Curve metrics to assess the localization performance of SL-PSO.
Smartcities 07 00098 g016
Figure 17. Real data for the Least Squares and our modified PSO under grouping of messages by 10. In (a), we can see the localization error for target 0 of the modified PSO. In (b), we can see the localization error for target 0 of Least Squares. In (c), we can see the localization error for target 1 of modified PSO, and in (d), we can see the localization error of Least Squares, respectively. In (e), we can see the localization error for target 2 of our modified PSO, and in (f), we can see the localization error of Least Squares, respectively.
Figure 17. Real data for the Least Squares and our modified PSO under grouping of messages by 10. In (a), we can see the localization error for target 0 of the modified PSO. In (b), we can see the localization error for target 0 of Least Squares. In (c), we can see the localization error for target 1 of modified PSO, and in (d), we can see the localization error of Least Squares, respectively. In (e), we can see the localization error for target 2 of our modified PSO, and in (f), we can see the localization error of Least Squares, respectively.
Smartcities 07 00098 g017
Figure 18. The new LoRa network. In black are the new locations of the four base stations.
Figure 18. The new LoRa network. In black are the new locations of the four base stations.
Smartcities 07 00098 g018
Figure 19. Results for network 2. In (a) is the localization error of the modified PSO with no grouping of messages. In (b) is the localization error of the modified PSO with grouping. In (c) is the error of the modified PSO for target 0 with no grouping, while in (d) is the error when grouping of messages is used. In (e) is the error of Least Squares for target 0 with grouping and in (f) for target 3, respectively.
Figure 19. Results for network 2. In (a) is the localization error of the modified PSO with no grouping of messages. In (b) is the localization error of the modified PSO with grouping. In (c) is the error of the modified PSO for target 0 with no grouping, while in (d) is the error when grouping of messages is used. In (e) is the error of Least Squares for target 0 with grouping and in (f) for target 3, respectively.
Smartcities 07 00098 g019
Table 1. The characteristics of the MultiTechConduit IP67 base station.
Table 1. The characteristics of the MultiTechConduit IP67 base station.
Mobile Network OperatorEuropean Network Operators
Cellular Performance4G-LTE Category 4
Cellular Fallback3G-HSPA+ and 2G-GPRS
Frequency Band (MHz)4G: B3 (1800), B7 (2600), B20 (800), B28A (700)
3G: B1 (2100), B3 (1800), B8 (900)
2G: B3 (1800), and B8 (900)
Packet Data (LTE FDD)Up to 150 Mbps peak downlink
Up to 50 Mbps peak uplink
GPS/GNSSGNSS for LoRa Packet Time Stamping Concurrent
GNSS connections: 3
GNSS Systems Supported: (default: concurrent GPS/QZSS/SBAS and GLONASS)
LoRa Frequency Band868 MHz
LoRa Channel PlanEU868 (EU863-870)
Channel Capacity16-channels (half duplex)
LoRa Maximum Output Power Maximum EIRP: 14 dBm–27 dBm
Table 2. Distances in meters between the base stations.
Table 2. Distances in meters between the base stations.
Distances between Base Stations
LatitudeLongitudeBase Station 0Base Station 1Base Station 2Base Station 3
Base Station 0 (ITY)38.2911721.79643-1018 m5984 m3078 m
Base Station 1 (CEID)38.2845921.788311018 m-7003 m2020 m
Base Station 2 (BOZAITIKA)38.2822421.763065984 m7003 m-8838 m
Base Station 3 (ARACHOVITIKA)38.3297321.844253078 m2020 m8838 m-
Table 3. Distances in meters between the target points and the base stations.
Table 3. Distances in meters between the target points and the base stations.
Distances between Targets and Base Stations
LatitudeLongitudeBase Station 0Base Station 1Base Station 2Base Station 3
Target 0 (MAGOULA)38.2775921.793551530 m920 m7294 m2712 m
Target 1 (ITY)38.2908221.7961246 m972 m6030 m3040 m
Target 2 (RIO)38.3101721.779632572 m2944 m6043 m3427 m
Table 4. Statistical analysis of the messages of the target locations.
Table 4. Statistical analysis of the messages of the target locations.
DataITY-CEIDITY-ARACITY-BOZCEID-BOZ
MeanStdMeanStdMeanStdMeanStd
target_location_18015116009534----
target_location_2520535----1942569
target_location_32484723408197----
Table 5. The experiments, parameters, and algorithms used in each experiment.
Table 5. The experiments, parameters, and algorithms used in each experiment.
Parameters Algorithms
Base StationsGroupingDataLeast SquaresSL-PSOChan
3y/nreal/simulatedyyy
4y/nreal/simulatedyyn
5y/nsimulatedyyn
6y/nsimulatedyyn
7y/nsimulatedyyn
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Daramouskas, I.; Perikos, I.; Paraskevas, M.; Lappas, V.; Kapoulas, V. Performance Analysis for Time Difference of Arrival Localization in Long-Range Networks. Smart Cities 2024, 7, 2514-2541. https://doi.org/10.3390/smartcities7050098

AMA Style

Daramouskas I, Perikos I, Paraskevas M, Lappas V, Kapoulas V. Performance Analysis for Time Difference of Arrival Localization in Long-Range Networks. Smart Cities. 2024; 7(5):2514-2541. https://doi.org/10.3390/smartcities7050098

Chicago/Turabian Style

Daramouskas, Ioannis, Isidoros Perikos, Michael Paraskevas, Vaios Lappas, and Vaggelis Kapoulas. 2024. "Performance Analysis for Time Difference of Arrival Localization in Long-Range Networks" Smart Cities 7, no. 5: 2514-2541. https://doi.org/10.3390/smartcities7050098

Article Metrics

Back to TopTop