1. Introduction
The location of devices or people is becoming increasingly important. While global navigation satellite systems (GNSS) have become quite successful in outdoor environments (with unrestricted view to the satellite constellations), there is not yet an equivalent system operative indoors. Devices designed for this purpose receive several names in the literature: Local Positioning Systems (LPS), Indoor Positioning Systems (IPS), Real Time Location Systems (RTLS), etc. [
1]. Among the several technologies employed for indoor localization (ultrasound, inertial, RF-fingerprinting, light, …) [
2,
3], ultrawideband (UWB) [
4] radio has shown great promise given their capability to measure delays between RF emission and reception with better than nanosecond accuracy, translating into expected positioning accuracy of a few centimeters [
5]. At the laboratory level, a few UWB characterization papers analyze the performance of UWB radio ranging and positioning. In [
6], a performance comparison among ten impulse-radio UWB localization systems is referenced. However, in real operating environments, this accuracy is affected by the presence of obstacles in the environment, such as walls, furniture, or even people. Robust positioning or navigation in spite of these circumstances is a challenging research topic [
7].
Positioning systems based on range multilateration, such as UWB, only perform optimally in open environments where obstacles are absent or there are no significant RF reflections. In this line-of-sight (LOS) conditions, the measured signal arrival times correspond to the physical distance between RF emitters and receivers. The only significant problem in LOS conditions is the destructive interference with ground reflected signal causing fading [
8], but is relevant at large distances (mainly outdoors). Non line-of-sight (NLOS) conditions, such as obstacles and reflectors, introduce range outliers which may change the estimated position by a few meters or even prevent from achieving a solution at all. Unfortunately, NLOS conditions prevail in indoor environments, so all location-based applications that make use of UWB technology indoors must cope with outliers and propagation models.
Additionally, other NLOS conditions appear when the human body attenuates the UWB signal transmitted from tag to anchor, causing errors larger than 1 m as reported in [
9]. They propose an original method that requires a human-body RF shadowing model and the estimation of the relative heading of the moving person, assuming a given attachment of a tag on the person to locate.
Robust outlier detection algorithms have been developed and used especially in the related fields of ultrasonic positioning and global navigation satellite systems (such as the GPS), where they are often studied as integrity monitoring techniques [
10]. Counting with enough measurement redundancy, these methods permit estimating position with only the physically meaningful ranges. For navigation or tracking of mobile targets, filtering methods such as Bayesian filters are commonly used. For maximum flexibility, these methods can be adapted with robust range error statistics which include both true ranges and outliers [
11]. In theory, use of proper statistics for the range error permits obtaining maximum likelihood (ML) position estimates [
12].
When non redundancy is available, due to working only with the minimum number of ranges for trilateration, then temporal filtering, such as median filters or moving averaging are employed, as in this [
13] UWB localization implementation. This kind of temporal in-range median-based solutions can circumvent the presence of sporadic outliers but fail when those errors are systematic. Other approaches that try to cancel outliers on the individual ranges, before the trilateration, are based on machine learning (ML) methods, such as k-nearest neighbors, Gaussian Processes, or Neural Networks [
14,
15,
16]. However, methods based on learning are in many occasions invalid when changing the location site or if the conditions in the space change with time.
Other approaches search for the improvement of UWB position estimates by fusing with other complementary sensors, such as inertial measurements units (IMU) or GNSS [
17]. Of course, these approaches are desirable and effective, but are out of the scope of this work, where we focus on the analysis of multi-ranging redundancy for independent (UWB-only) position estimation using a specific commercial device and their limitations to gain access to multiple ranges.
Apart from sensor fusion, the filtering of individual ranges by median or sophisticated ML, as reviewed above, can definitively help to improve position estimation. However, to be able achieve a true robust positioning solution, independent from particular learnt models, it is necessary to have redundant distance measurements. This is the most effective way to rule out those ranges that are significantly erroneous (outliers), and to give more weight to the subset of ranges that operate in line of sight with a normal error distribution. Redundancy in measurements is key to providing robust estimates to outliers even in non-modeled environments [
6,
18,
19,
20].
The use of redundant estimation methods is sometimes limited by the use of commercial UWB equipment. Currently, there is a very successful commercial equipment, distributed by the company Decawave, which has many operational advantages for the deployment and use of a network of
anchor (devices to be fixed in the environment with known positions) and a set of tags (mobile devices that we want to locate). This system seems to have found widespread use within the scientific community, as a large number of published works use it in their experimental tests. However, this architecture presents a major disadvantage from our point of view: each tag to be located can only measure ranges with a maximum of four anchors. The same Decawave system that is going to be explored in this paper (MDEK1001) was recently studied by Delamare [
21] and found that using only four ranges was limiting, and they concluded that a larger number of anchors should be used for better accuracy.
In case of using a positioning system with a limitation in the number of ranges to anchors, such as MDEK1001, in general there would be no redundancy at all. This causes the impossibility of trilaterating without ambiguity whenever one of the four ranges is lost. We are assuming that four ranges are needed to locate in 3D, or at least that there is one single range in redundancy if the space of interest is physically restricted. For example, if the beacons are placed on the ceiling of a room, only the solution below them is a feasible location. This four range condition is in our opinion quite limiting for a good positioning in challenging scenarios like indoors. This ranging limitation is embedded in the Decawave’s measurement protocol itself (PANS), and therefore it can not be easily bypassed without having to redesign much of the protocol in the firmware of all Decawave devices, in a variety of different working modes (tag, anchor, listener, or gateway) [
22]. The redesign of a protocol requires strong knowledge in the UWB technology which includes critical factors such as synchronization, two-way-ranging (TWR) [
23], clock drift correction, or power self-calibrations [
24].
In this paper, we analyze the strategies that we have been able to identify in order to provide this Decawave UWB equipment with multiple range measurements, and thus enable each tag to be positioned with more than four distances, in a redundant and robust way. We will also analyze how and where to obtain all the ranging information, needed for robust trilateration, from a Decawave network. Knowing if ranging information is distributed between nodes, or centralized, is a relevant aspect to consider when implementing the robust location solution.
We will explain in this paper the advantages and disadvantages of each of the different alternatives we discovered to gain access to multiple ranges in this Decawave UWB equipment. Finally, we will present the solution that we implemented in an inexpensive way to be able to measure up to eight ranges for each tag. This solution is implemented and tested, using several communication protocols available through the API (Application Program Interface) in each node firmware: (1) UART protocol wired by USB, (2) wireless BLE protocol. In this paper, the positioning results using Decawave’s 4-range mode, and our robustified 8-range mode, are compared in two different scenarios: (1) an indoor office environment with common obstacles such as furniture or desktop computers, and (2) in a residence apartment with common household, a much more challenging scenario. We will analyze the gain in accuracy obtained with the proposed multi-range (8-range) solution, and demonstrate how the same approach (same sensors, EKF parameters, and NLOS models) can be applied in totally different scenarios with the same rate of performance improvement, which is one of the contributions of the paper, apart from the proposal of a way to make possible the use of multiple ranges in one of the most used and successful pieces of UWB equipment in research labs and corporate solutions. The need of learning or adaptation in the algorithms for different scenarios (common in many research papers [
14,
15,
16]) is something that we were able to avoid, which is very convenient and practical in real life applications.
The paper is structured in the following sections:
Section 2 presents the measurement and communication protocol used natively by the Decawave DWM1001 equipment. In
Section 3, the alternatives we have found to measure multiple ranges are shown. In
Section 4, we analyze the UWB radiation pattern in pairing tags. In
Section 5, we show a multi-range system deployment in a laboratory test site, the implemented EKF-based solution, and the positioning results with both approaches (the original four ranges and the proposed one using eight ranges). An additional experimentation in an apartment is presented in
Section 6 in order to verify that conclusions apply for different set-ups and anchor deployments even with the same sensors, models, and algorithm parameters.
4. Pairing Procedure and Ranging Experimentation
To effectively pair two tags, we put them physically near. Ideally, we would put them as close as possible so they form a compact and wearable unit. However, doing so in theory could alter the radiation pattern of UWB signals, due to the mutual influence between the antennae of each tag.
The radiation pattern of Decawave’s DWM1001 antenna is omnidirectional in the horizontal plane (
x-
y), if both tag and anchor are oriented vertically [
26]. However, the radiation pattern in the
y-
z plane has notches due to their design and to the on board electronic circuits (see
Figure 6). According to the manufacturer [
22], any metallic component closer than 10 mm to the antenna’s profile can affect the radiation pattern. Thus, when pairing the tags, we observed that separation rule.
In order to see how pairing between two tags could be done, we have tested two different pairing configurations, which we have called “Close pairing” (antennae separated by one inch), and “Far pairing” (antennae separated by four inches).
Figure 7 illustrates these pairing choices.
The more compact “Close pairing” arrangement is very convenient and satisfies the minimum separation rule mentioned above. This is explained because the antennae in Decawave’s boxes are not placed centered between the lateral sides of the tag, but rather at the top-left area when looking at the tag from the front (just behind the letter “D” in the engraved “Decawave” name, as shown in
Figure 1). Orienting the tags opposite from each other, as shown in
Figure 7 (left), the antennae do not overlap, although a small sector (approximately 20 degrees wide) of the emitting pattern is shadowed by the other antenna of the pair.
The other “Far pairing” approach in
Figure 7 (right) should not suffer from disturbances, since the tags are separated from each other by four inches.
In order to check these hypotheses, we performed several tests measuring the range from the pair of tags to a fixed anchor node at three different distances (1, 2, and 3 m), under LOS conditions. The two pairings were simultaneously tested on a turn table that rotated two turns (720 degrees) at each distance, while we registered the measured ranges to the fixed anchor. For comparison, we also measured ranges using a single tag on the turn table.
The z vertical rotation on the turn table is aligned along the antenna of one of the tags in each pair. The other tag in the pair is operative and measuring, but its data are not used for the evaluation of the propagation effects. Tags are aligned with an accuracy of a few millimeters, so any oscillation seen in the tests along the rotation are not due to misalignments in the rotation process, but just to the propagation effect of the neighboring tag in a pair.
The ranging results shown in
Figure 8 suggest that the “Far-pairing” configuration performs in practice as well as a No-pairing solution (one tag alone). We found a range measurement standard deviation of 0.2 m with some bias (blue and red histograms, respectively). However, the “close-pairing” case shows occasionally in-excess range measurements of up-to 0.5 m. It can be observed in the histogram for ranging errors the tail to the right for about 15% of measurements. This range error occurs at specific rotation angles (see the regular pattern of red spikes in the range measurement plot). This confirms that the “Close-pairing” solution is good in 85% of cases, but in the remaining cases doubles the errors because of the occlusion from the neighboring pairing tag.
Although a range disturbance in 15% of the cases is relevant, we still think that “Close-pairing” is a valid configuration for location since the measurement errors do not look too disturbing when compared with the real-life obstacles that UWB signals suffer (reflection, diffraction, etc.) in indoor natural conditions. Thus, we will use both pairing methods for the localization tests presented in the next sections.
5. Laboratory Experimentation, Implementation of the EKF-Based Localization and Performance Evaluation
We next describe the proposed laboratory location tests designed to validate the hypothesis; then, using only four ranges is a limiting factor in indoor environments, and a redundant 8-range solution is a more powerful method to reject typical outliers in indoor environments.
5.1. Test Site, Equipment, and Data Capture
The selected test environment is our research laboratory (
Figure 9), which has dimensions of 11.5 × 6.5 m (74 square meters), with diverse office furniture, and a separate room with a metallic table and cabinet. Due to these common obstacles (furniture and partitioning walls), a fraction of the round-trip range measurements between some tag positions and some anchors become NLOS (Non-Line-of-Sight). Thus, even for a relatively simple space like our lab, it includes some conditions that can cause reflection, diffraction, and attenuation on signals, generating range outliers that do not follow a Gaussian error distribution.
We have used a personal computer (PC) with Windows 10 as operating system for data capture and analysis. This computer includes a USB BLE 4.0 adapter (iAmotus BCM20702 Broadcom Inc, San Jose, CA, USA), and Matlab release 2019b from Mathworks®, which is the first release that includes BLE libraries to discover and open data subscriptions to BLE devices, such as our MDEK1001 tags. Although we were able to communicate with the tags through both UART and BLE, finally all the data capture tests have been done by BLE, since it has turned out to be a more practical and even more reliable solution than the wired communication with the UART API in Shell mode (where the data frame sent is larger, and the serial port buffer was frequently overflowed working at the maximum frequency of 10 Hz with several tags connected to a USB concentrator).
5.2. Experiments and Ground-Truth Creation
For the localization experiments, we have deployed eight anchors around the lab environment (see a photo at
Figure 9 for a general idea of the kind of environment, and especially look to the detailed anchor deployment in
Figure 10). Anchors are stuck to the walls of the lab at a height of 2.1 m. As can be seen from the map-floor (
Figure 10), four of the anchors in red (anchors A0, A1, A2, A3) are associated with the Network1, and the other four anchors in blue (anchors A4, A5, A6, A7) to the Network2. The position of each anchor has been measured using a Trimble S6 total station. This system allows us to determine the UWB antenna position in 3D with an error of one millimeter.
For a first group of tests, we installed, at fixed positions, two pairs of tags in “close-pairing” mode (being each pair able to measure up-to eight anchors). Note that each one of the tags in a pair belongs to a different network. In pair T1–T2, tag1 belongs to Network1, and tag2 to Network2. The same for pair T3–T4. The tags in a pair are stuck together (“close-pairing mode”), so, when attached to a moving person, they move as a single device.
For a second round of dynamic tests, the T1–T2 pair of tags has been placed on a mast, which also includes a 360° retroreflector (
Figure 11 right-bottom). This setup allows us to perform free motion dynamic experiments, where the experimentation ground-truth is generated by the total station operating in
tracking mode. This Trimble S6 tracking mode of operation performs real-time tracking by automatically commanding tilt and yaw rotations on the S6 head in order to keep tracking the retroreflector (and therefore tracking the tags on the same mast). The accuracy is 1 mm and the 3D position registration is continuous on a logfile at a 1 Hz rate. This method, which is similar to the one employed in [
17], allow us to record a ground truth (GT) that is used later to make the performance location assessment. The only movement restrictions are that, during the experiment, an LOS condition should be guaranteed so the S6 head does not miss the retro and get lost; also the mast must be kept vertical to guarantee that the
x-
y position of the retroreflector is the same than for tags.
5.3. Results in Ranging Measurements
Before presenting the positioning results, in this subsection, we analyze the quality of the individually measured ranges between the different anchors and tags. We want to check the error distribution, the systematic error (bias), the standard deviation of normally distributed range errors, and the presence of outliers.
The range error has been estimated for some static tags under LOS condition and with no occlusions by human bodies. For this static condition, the error distribution was quite ideal and close to Gaussian distribution. Of more interest were the dynamic tests that provide a much broader diversity of ranging conditions, including the interaction with obstacles such as signal transmission through some brick walls or metallic cabinets.
The range estimations between different anchors to tags, for the dynamic case of a moving pair of tags within our test environment, are represented in
Figure 12. We can see that, among the set of eight ranges (four anchors × 2 tags), outliers are more likely to appear when the physical range between them is larger than 6 m.
The range error distributions, for the same dynamic case of moving one pair of tags (as in
Figure 12), can be seen in
Figure 13.
The upper graph in
Figure 13 shows the correlation between the real tag-to-anchor distance and the measured results using UWB ranging, with the red line with unit slope being the ideal relationship. We can see that UWB follows with quite good accuracy but with some additive noise.
Figure 13 bottom shows the error distribution for the same data. The average error (bias) is −2.3 cm, i.e., the measured range is slightly below than the actual distance, and the standard deviation is about 20 cm. Some infrequent outliers appear skewed to the right in an almost imperceptible tail. Depending on the application, it might be profitable to model the tail of this distribution, or it might be better to disregard these excess ranges [
11].
The detected outliers appear always in the form of in-excess ranges, as expected. These outliers have an extra range value of about 1 m, and rarely reach 4 m (worst case). Outliers are caused by NLOS conditions. Some could be caused by the presence of objects in the environment (furniture, walls, and metal cabinet), reflections, as well as by the body obstruction of the person who carries the mast. The lab conditions in our tests could be said not to be particularly adverse, as in an industrial environment, but are quite realistic with the everyday conditions in a typical office or indoor space.
5.4. Results in Positioning
This subsection presents the positioning assessment of the different approaches. We want to compare the positioning solution provided by the manufacturer (Decawave) using only four ranges, with our solution that makes use of up-to eight ranges by pairing two tags together. The manufacturer positioning in done locally on the tag, but the solution presented here performs a tight integration with the eight ranges by means of an Extended Kalman filter (EKF) [
27].
We use a 6-state EKF, with three terms for 3D position, and three for velocity:
where the
motion model is a constant velocity function
f relating the evolution of states, plus an additive noise
that takes into account the acceleration changes of the moving object:
The full motion model in discrete time (
being the sampling interval) is:
where the state transition matrix used in the EKF is
and the process noise is
.
Therefore, the process noise covariance matrix to use in the EKF is:
where
is the noise in acceleration that accounts for the random changes in acceleration when the moving object changes directions and speeds. In our implementation
.
For the
measurement model in the EKF, we use the UWB ranges that we record from our BLE communication with each of the tags in a pair (eight ranges in total, four for each of the two tags). The trilateration is computed implicitly in the Kalman filter by accordingly defining measurement matrix
H, which is of size
, with
being the number of anchors connected to the tag at current time (
). Row
i of matrix
H has the form:
where
is the range between anchor
and the last estimated tag’s position, i.e.,:
. We use for the diagonal measurement covariance
R matrix the experimental standard deviation detected in the last subsection (
m) squared (
). The trilateration process can be performed incrementally (one time for every new measurement from an anchor is received), or wait until ranges are collected for all detected anchors at a given time interval.
In order to remove most of the range outliers, and making use of the redundancy provided by the up-to eight ranges, we robustified the Kalman filter using the innovation [
28]. When computing the innovation, a measurement is taken into account whenever the innovation is lower than three times the standard deviation. Thus, innovations larger than 0.6 m are not integrated, assuming that they represent outlier measurements.
The positioning results for the different positioning methods studied in this paper are shown in
Figure 14. The position estimation obtained with the above described EKF is called in that figure: “Kalman Tag1-2 8anchors”. On the other hand, the on-tag locally computed Decawave’s positions using only four ranges is called: “Tag1-Red1 four anchors”, and “Tag2-Red2 four anchors” for each of the subnetworks. In
Figure 14, we also represent the estimates made by the Trimble S6 total station, which is considered our ground-truth (GT).
Note in
Figure 14 that the estimation in magenta color (“Kalman Tag1-2 8 anchors”) is smoother than any of the four anchors’ solutions. In addition, it is important to mention that a simple averaging of both independent 4-anchor solutions does not provide as good results as our EKF tight trilateration. See, for example, the trajectory section close to anchor A4 (coordinates
x-
y from 4.2-0 to 2.5-0 ), where the average of the red and green trajectories does not produce the same results than the magenta one. It is clear in this example that the outlier rejection mechanism (robustification of EKF) has been able to remove the measurements with non-Gaussian errors.
The detailed positioning errors are shown in
Figure 15 by means of a cumulative distribution function (CDF). We can appreciate how the method proposed by the authors that integrates eight ranges is better than any of the estimations made locally at each tag with only four ranges (Decawave’s own algorithm). The 3D errors at the 75th percentile level are 16 cm and 34 cm, for the method with eight ranges and four ranges, respectively. The corresponding errors in the
x-
y horizontal plane are 12 cm and 20 cm, respectively. The improvement using the redundant robust estimation is about 50%, which is by far better than other approaches found in the literature that makes use of median or moving averages as in [
13] that account for improvements in the range from 10 to 20%. Our positioning errors are also better than other UWB solutions using a limited number of UWB anchors but complemented with INS+GNSS, as in [
17], where authors declare a horizontal error of 35 cm. Our results are closer to the performance reach using sophisticated machine learning (ML) algorithms like in [
14], with errors of 0.1 m, but these results are only valid after a learning phase which depends on the particular scenario, and could not be consistent with a different or changing scenario.
It is fair to mention that the error reduction presented in this work is due not only to the increase in the number available anchor range measurements (redundancy and robustification) but also to the more favorable geometric arrangement between the location of the tag and the set of anchors (i.e., lower dilution of precision or DOP [
29]).
At this point, we could conclude that a location solution using more than the four ranges allowed by PANS protocol is preferable for indoor scenarios. However, this experimentation was done in a relatively ideal scenario and for a limited number of trajectories. In order to obtain more solid conclusions, we could perform more trajectories in the same laboratory or close-by spaces, or we could even change the position of anchors. However, we consider it much more interesting to create a new deployment in a totally different sites, with a much higher content of obstacles causing NLOS effects and many range outliers. The next section describes this experimentation.
6. Apartment Experimentation
In order to check if the performance obtained in the laboratory test site is valid in other more challenging scenarios, we have made additional tests at a totally different site: a residential apartment. The next subsections review the scenario details, the ranging, and the localization results, and provides a comparison with the previous laboratory tests.
6.1. Apartment Test Methodology and Sensor Deployment
This new environment is an 80-square meter apartment, fully furnished and with common household objects, where one of the co-authors lives. We made an initial eight anchors deployment, placing anchors at 2.14 m height (mainly on top of the door frames), but, due to the diverse number of brick walls, wardrobes, electric appliances, and ornaments, the UWB coverage was not complete. We added four new anchors, for a total of 12, and we reached the minimum desired coverage for both the 4-range commercial solution and the extended up-to-eight ranges with EKF localization.
Figure 16 shows the apartment’s floormap with the 12 deployed anchors. Six of the anchors are annotated with a square marker (anchors A0, A1, A2, A3, A4, and A6) because they belong to one of the duplicated networks (Network1), and the other six anchors marked with a diamond (anchors A10, A11, A12, A13, A14, and A15) belong to Network2.
The ground-truth (GT) in this occasion was not done with a Total-Station (impractical due to the lack of line-of-sight to the mobile tag from a base station). Thus, a less accurate GT was obtained with a pair of foot-mounted inertial motion units (IMU), one on each shoe, and use of the Pedestrian Dead Reckoning (PDR) technique [
30]. This provides relatively accurate trajectories, with low drift for the lengths considered in the experiments. The position of each anchor, as well as the map calibration, has been done with a laser-range finder (Bosch GLM-80 Professional), both on the
x-
y plane and in vertical over the floor (wherever possible anchors are at a 2.14 m height).
The magenta line shown in
Figure 16 represents the IMU-based GT used for one of several tests in this scenario. This reference is created by averaging the trajectories of each independent foot. As IMU-based estimation is relative (dead-reckoning), a post-processing is done in order to rotate and translate the origin of the trajectory to the starting point. In all trials, the starting and ending point was the same (Room2, near anchors A10 and A1).
The IMUs used for GT registration were model MIMU22BL from Inertial Elements, India [
31]. They consist of an array of four IMUs (ICM-20948 TDK Invensense), whose sensor readings are internally processed by a 32-bit microcontroller (Atmel AT32UC3C0512C), resulting in a step-wise dead-reckoning (SWDR) data, which is given as output of the IMU. The SWDR data consists of the incremental changes in the
-coordinates per step detected, as well as yaw changes, at a step-like rate of approximately 1 Hz.
The MIMU22BL has two communication interfaces: Bluetooth v4.1 (BLE) and USB 2.0. The protocol used for data recording during experimentation is BLE, both for the IMUs and the UWB tags. Data are acquired by a laptop computer with Matlab R2019b (or the GetSensorData android App [
32]), where corresponding objects are instantiated from MIMU22BL and MDEK1001 classes. After a sequential BLE connection, the “start” method for all objects is executed, and data logging is achieved with a common time-stamping which permits synchronization.
We can see the IMU placement on the shoes of the actor, and other details of UWB tag/anchors installation at the apartment in
Figure 17.
The IMU-based GT trajectories are accurately synchronized with UWB readings, but are by-far not as accurate as those obtained with a Total Station in the laboratory setup. We have observed typical positioning errors of about 0.2 m, with a few excursions up-to 0.5 m in some zones. However, taking into account that the measured UWB ranges in the apartment are less precise, as will be seen next, the IMU-based GT is a good enough reference to assess the performance of the localization solution.
6.2. Apartment Tests’ Data Analysis
We performed tests with both the far-pairing and close-pairing of tags. In both cases, we used the 12 deployed anchors to cover the complete area, but, as explained before, only eight are detectable at a given time. Thus, the maximum amount of ranges was eight (four from tag1 and another four from tags 2). The typical coverage in the apartment is illustrated in
Figure 18. The top-left plot represents the number of anchors under view during a complete session (more than UWB 4000 samples at 10 Hz). Blue and green lines represent the contribution from each of the tags. We can see that the full 8-anchor coverage is almost never fulfilled. However, as we can see in the pie chart (top-right), in 14.4% of the cases, eight ranges are read. In fact, we can read more than four ranges in more than 75% of the cases, thanks to pairing.
The temporal windows between samples 1000–1500 and 2500–3500 (
Figure 18 top-left) correspond to visits to rooms with a bad quality in ranging. These rooms are Room3, Room1, and Kitchen. In these areas, there is a significant drop in coverage, or anchor visibility, but it is not due to a lower density of deployed anchors, which is quite even for the whole apartment; it is just an empirical circumstance.
On the other hand, we also see in
Figure 18 (bottom-left and right) that the number of position fixes provided by the commercial Decawave algorithm is not complete along the experimentation. In 29.1% of the cases, no trilateration-based position is generated by using a maximum of four ranges per tag. Position fixes fail when two or less ranges are available but also when three or four ranges are present, but the quality of the solution is low (Decawave provides a fix quality indicator). However, the EKF method always provides 100% position fixes, since, by design of the filter, a position estimate can be produced even in the absence of range information, based on previous data.
When we look at the ranging errors, we expect to have larger errors than in the laboratory tests, and also a lower maximum read range, due to the abundance of walls and obstacles that make UWB signal propagation difficult. This is exactly what we can see in
Figure 19, where very few measurements are registered beyond 7 m. If we look back at the same plot in
Figure 13, we see that in a site of approximately the same size (74 square meters) ranging was effective up-to 12 m. Thus, the apartment site looks more challenging.
Plotting the error distribution will show an asymmetrical peak near zero, followed by a long skewed tail, as seen in
Figure 20. This situation is typical of mixed LOS / NLOS situations such as those found in the apartment site. The resulting error probability distribution function (PDF)
for positioning error
x is modeled as a sum of two contributions [
33]:
where the first term corresponds to LOS situations, with an assumed Gaussian distribution, and the second to NLOS situations, usually modeled by a Gamma distribution. The last, constant term (
) represents the additional uncertainty and spurious measurements.
We performed a least-squares fit for the free parameters of Equation (
7) using the experimental data. For the LOS contribution, we obtained
m (standard deviation of range error) and
m (bias of the range); for the NLOS part, we obtained
= 2.5 1/m (
rate or inverse
scale of a Gamma PDF) and
k = 2 (the
shape parameter). The last term,
cte, was assigned a value of 1.5% of the model’s peak. The result of the fit for the combined distribution is shown overlaid on the histogram data in
Figure 20.
Note that the error plot and distribution shown in
Figure 19 and
Figure 20 are in part caused by the location drift errors of the IMU-determined ground-truth, and not by UWB ranging only. However, the effect is not expected to be too relevant since we are observing ranging errors larger than the typical 0.2 m position drift error for the GT.
We have also studied the dependence of range error with respect to the true range. From physical reasons, we expect both error bias and variance to increase with range in the apartment, as LOS propagation becomes more likely. This effect is shown in
Figure 21, where the ranges are grouped in four bins (0–2 m, 2–4 m, 4–6 m, and 6-infinite). We clearly see that, for ranges bigger than 2 m, the mean error and variability of ranges grow significantly, as the UWB signals have to penetrate one or more walls.
The progressive lower quality of range estimates with increasing range is a problem for an 8-ranging system (as the one proposed), which works with close-by anchors but also with anchors further away. From that noise-centric point of view, it could be better to work only with the closest ranges; however, we believe that despite the fact that useful information still remains in the more degraded long-range measurements. The exploitation of that degraded information should be conveniently integrated and filtered into a position fix. The localization results that come next will give us an answer to this important fact.
6.3. Apartment Localization Results
The Decawave’s integrated localization algorithm is performed inside the tags when a number of three or four ranges are available. In our tests with the Decawave’s trilateration algorithm, no position fix is detected in 29.1% of the cases, using the interleaved double network deployment. Under this circumstance, four ranges must be selected from a total of six anchors available in a network. The failed position-fix rate is improved to 16.2% when all 12 anchors are associated with the same network, so the tags can select four anchors from 12 anchors available. This improvement was expected, but it is surprising that still many position fixes can not be achieved when three or more ranges are available in 98% of the cases. On the contrary, our EKF solution working with up-to-eight ranges achieves a 100% coverage even when, in 2% of the cases, there were two or less ranges visible.
The EKF solution uses the same motion and measurement models that were presented in
Section 5 for the laboratory tests. The standard deviation for measurements (used for the
R covariance matrix) is 0.2 m, which is the typical UWB error distribution in LOS conditions. However, this time we have used a robustified innovation filter which removes ranges that deviate more than three times sigma (or 0.6 m) from the predicted range. This step seeks to remove those ranges in the long tail represented by the NLOS exponential measurement model (see
Figure 20), and keep ranges likely to be LOS or at least not too affected by obstacles.
The positioning accuracy that we found from our experiments is represented in
Figure 22. The location solutions presented are for the near-pairing tag mounting, but similar results are obtained in the far-pairing configuration. We do not repeat them for sake of simplicity, since the conclusions are the same.
In
Figure 22, the GT is represented with a blue line, with some dots representing the steps during the IMU-based GT creation. In this plot, the red and green lines are the position fixes generated internally by Decawave’s algorithm at the two tags within a pair. The broken lines that occur in 29.1% of the cases are measurements with some ranges but with invalid position fix (not generated by Decawave’s tags).
The magenta line in
Figure 22 is the output from the EKF that uses all raw ranges available at both tags (up to eight ranges). Thanks to the prediction phase of the filter, we always count with 100% coverage, even when ranges to anchors are below 3 or even no range at all is present. That is not a merit of the proposed pairing process and interleaved anchor networks, but a feature of the EKF filter, as well as the smoothing effect on the trajectory provided by the filter. The important thing to see is if the use of more ranges helps in reducing positioning errors, even knowing that they can arrive from distant anchors. To analyze this, we present in
Figure 23 the Cumulative Distribution Function (CDF) of positioning errors.
We can see in the CDF of
Figure 23 that the 3D-positioning error for the third quartile (75% of measurements) is 0.6 m for the 8-range EKF solution (red curve), clearly better than the 4-range solution shown in blue. In this last case, the CDF does not even reach the third quartile since, as stated previously; for 29.1% of the cases, there is no position fix returned by Decawave’s algorithm. If for this setup, we only take into account the errors from the set of generated position fixes, then the third quartile error is 1.05 m. Consequently, we can observe a clear improvement in positioning from 1.05 m error to 0.6 m, obtained by adding extra ranges to the position estimate. Thus, the method proposed not only permits to use more ranges if available, but also exploits isolated ranges at locations with less measured ranges than the three required for trilateration, and where Decawave’s system does not provide a solution at all. The result is a better and more continuous localization.
One of the reasons for this improvement in our proposal is the use of redundancy. Although we all deal with ranges that have significant noise, some of them are outliers that include errors larger than 1 m, as can be seen in
Figure 20. Outliers spoil the solution or make it inconsistent. The redundancy is a very important achievement that makes a better rejection of bad ranges possible. Those ranges can be included in an NLOS model and weighted accordingly (e.g., with a particle filter [
25] or static/dynamic models [
34]), but also can simply be deleted from our trilateration (the current approach in the robustified EKF described previously). In our experiments, about 11% of the ranges are eliminated from the Kalman filter update process (1634 rejections from a total of 15,201 range measurements). This is the key for improving the solution, and it was made possible thanks to the redundancy provided by our multiple-ranging approach.
7. Conclusions and Future Work
In this article, we have presented a study of some limitations of Decawave’s MDEK1001 commercial positioning system, specially originated from the PANS protocol. We have seen that PANS protocol is not prepared to work with more than four ranges for each tag to be located, which is a serious hindrance for operation of the system in real indoor scenarios. To overcome this limitation, we have proposed different ways to be able to use more ranges (eight ranges in particular). Finally, we have implemented a solution that consists of doubling the number of operating networks and the number of tags. We proposed and evaluated several configurations to pair tags. We presented the implementation of a robustified Kalman filter (EKF) to integrate multiple and redundant range measurements, based on NLOS models and an innovation-based range rejection process. Experimental tests have been carried out on UWB ranging and location performance. Two different scenarios were used, one in our laboratory, which is more favorable for UWB positioning (where conditions are mostly LOS), and another test site in an apartment, which has severe NLOS effects. The calibration of the deployments and GT trajectories were done with a Trimble S6 total station and a foot-mounted IMU on each shoe of an actor (at laboratory and apartment sites, respectively). From these new configurations (tag pairing, double anchor network, NLOS-rejection EKF) and the detailed experiments, we have been able to show that a redundant multi-range UWB solution makes the use of redundancy to create robust estimators possible and consequently improves localization performance.
This work makes fundamental and practical advances over the state of the art by offering a way to make possible the use of multiple ranges in one of the most used and successful pieces of UWB equipment in research labs and corporate solutions. An important contribution of the paper is that it demonstrates with two very different deployments how the same approach (same sensors, EKF parameters, and NLOS models) can be applied in totally different scenarios with the same rate of performance improvement. The need of learning or adaptation in the algorithms for different scenarios (common in many research papers [
15,
16]), is something that we were able to avoid, which is very convenient and practical in real life applications.
In the future, we will continue to explore the performance of UWB-based localization, using other robust filtering implementations, the integration with inertial measurements, and the extension to other strategies for both indoor and outdoor environments. One particular application area is in the remote supervision of the activity of people in their homes, analyzing their mobility and gait cycle (useful in heath applications such as frailty detection in the elderly). Another particular area we want to work in is the navigation of autonomous vehicles, especially in outdoor areas with poor GNSS coverage. Thanks to the good accuracy, low latency, and high measurement frequency of UWB solutions (up to 10 Hz in Decawave’s case), we envision that UWB technology could achieve similar performance to high cost GNSS/RTK (real time kinematics) systems used for accurate outdoor navigation of autonomous vehicles.