Next Article in Journal
Compensation for Lateral Misalignment in Litz Wire Based on Multilayer Coil Technology
Next Article in Special Issue
An Online Calibration Method Based on n-Tuple and Opportunistic Communication for Mine Mass Portable Gas Sensors
Previous Article in Journal
Prediction of Fruity Aroma Intensity and Defect Presence in Virgin Olive Oil Using an Electronic Nose
Previous Article in Special Issue
Influence of Flow Disturbances behind the 90° Bend on the Indications of the Ultrasonic Flow Meter with Clamp-On Sensors on Pipelines
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Distance Measurements in UWB-Radio Localization Systems Corrected with a Feedforward Neural Network Model

1
Laboratory of Robotics, Faculty of Electrical Engineering, University of Ljubljana, Tržaška cesta 25, 1000 Ljubljana, Slovenia
2
Radiation and Optics Laboratory, Faculty of Electrical Engineering, University of Ljubljana, Tržaška cesta 25, 1000 Ljubljana, Slovenia
*
Author to whom correspondence should be addressed.
Sensors 2021, 21(7), 2294; https://doi.org/10.3390/s21072294
Submission received: 17 February 2021 / Revised: 19 March 2021 / Accepted: 22 March 2021 / Published: 25 March 2021
(This article belongs to the Special Issue Multi-Sensor Measurement and Data Fusion)

Abstract

:
An ultra-wideband (UWB) localization system is an alternative in a GPS-denied environment. However, a distance measurement with UWB modules using a two-way communication protocol induces an orientation-dependent error. Previous research studied this error by looking at parameters such as the received power and the channel response signal. In this paper, the neural network (NN) method for correcting the orientation-induced distance error without the need to calculate the signal strength, obtain the channel response or know any parameters of the antenna and the UWB modules is presented. The NN method utilizes only the measured distance and the tag orientation, and implements an NN model obtained by machine learning, using measurements at different distances and orientations of the two UWB modules. The verification of the experimental setup with 12 anchors and a tag shows that with the proposed NN method, 5 cm better root mean square error values (RMSEs) are obtained for the measured distance between the anchors and the tag compared to the calibration method that did not include orientation information. With the least-square estimator, 14 cm RMSE in 3D is obtained with the NN model corrected distances, with a 9 cm improvement compared to when raw distances are used. The method produces better results without the need to obtain the UWB module’s diagnostics parameters that are required to calculate the received signal strength or channel response, and in this way maintain the minimum packet size for the ranging protocol.

1. Introduction

Indoor localization using ultra-wideband (UWB) radio is a popular research topic [1,2,3,4,5,6] and an off-the-shelf real-time localization system [7]. Its suitability for mobile applications and its great localization accuracy provide solutions for a wide spectrum of applications. In real-time localization systems (RTLSs), the tags (agents, mobile units) are localized by measuring the distances from the tag to the anchors (ground station, static units) with known positions. The distances between the anchors and the tags can be measured with the time-of-arrival (TOA) [8] or the time-difference-of-arrival (TDOA) [9] methods. The accuracy of the measured distances depends on the accuracy of the tag’s position [10]. An orientation-dependent error is present in UWB-radio distance measurements [11,12,13,14,15]. The speed of propagation in various materials around the antenna’s electrical center point cannot be empirically determined. The error is a superposition of multiple factors: antenna design and its radiation diagram; the electronic circuit build around the antenna and the radio module; the protective housing and its dielectric properties. A non-empirical model that would contain a large set of distance and orientation variations could be relevant for effective error mitigation.
In [16], the authors presented a time-difference-of-arrival (TDOA) localization system for monitoring elderly people utilizing UWB technology, presenting 1 m error for stationary measurements. In [17], UWB technology combined with motion capture is used for the localization of people and goods at an industrial site with 0.15 m root mean square error (RMSE) in 2D space. Another case of UWB real-time localization systems (RTLSs) used in an industrial environment is presented in [18], where authors achieved 2D positioning errors from 0.02 m to 0.38 m in six tag positions. Tieman et al. [19] presented a UWB time-of-flight-based localization system for parking an electric vehicle on a dedicated recharging parking lot. With only two anchors an error of less than 10 cm was obtained in the experiments.
Much work was carried out to improve distance measurements between radio modules with the use of machine learning. In [20], the authors used a neural network (NN) with a received-signal-strength indicator (RSSI) and an RGB image as the input to produce the estimated distance between two modules with greater accuracy in non-complex environments without buildings. Authors achieved 0.5 m ranging errors in open scenarios and under 0.9 m ranging errors in more complex scenarios with objects in proximity of modules. Chen et al. [21] presented a ranging model based on a backpropagation NN (BNN). The model showed better performance in simulations than shadowing models and the capability to adapt to a specific environment with an average ranging error of 0.34 m. Schmid et al. [22] investigated machine learning approaches in error mitigation using additional diagnostics data and without the tag’s orientation. Their goal was to reduce the error due to multipath effects. With an artificial NN and 10 input parameters obtained from the modules, they were able to reduce the mean absolute ranging error from 0.08 m to 0.035 m. With histograms of errors, they showed that the error could be reduced to a smaller extent with only two out of 10 input parameters, the measured distance and the maximum observed noise during the first path detection.
In previous work, an orientation-dependent distance error was observed when measuring the distance between two UWB modules. In [11], the authors proposed a method to correct the positioning error due to the antenna’s orientation in a time-difference-of-arrival (TDOA) localization system. In simulations with line-of-sight (LOS) conditions and 1.24 mm ranging noise, they achieved a sub-mm (0.1 mm) range RMSE with 10 base stations. A configuration with a smaller number of base stations did not converge to the mm-range RMSE. The authors in [12] observed the effect of a custom UWB antenna’s orientation when ranging between two modules in a TOA system. In experiments, they measured the antenna in five different orientations for two planes and observed different distance errors for different antenna orientations at 0.5- and 1-m distances between the receiver and transmitter antennas. The minimum error obtained was 0.001 m, and the maximum error was 0.045 m. In [13], the authors presented experiments in a vehicle with transmitting antenna in four different orientations. The effects of the antenna orientation and the multipath environment were analyzed through the channel impulse response (CIR). A linear piecewise model of the power-delay profile in logarithmic scale and a generalized extreme value model of a small-scale digital fading are presented. Bregar et al. [14] used two methods where the CIR is used with two convolutional neural networks (CNNs) for non-line-of-sight (NLOS) classification and ranging-error-regression modeling. They showed that ranging-error regression performs better than filtering the NLOS ranges and that combining the methods improves the performance compared to the least-squares (LS) and weighted LS methods. With 10 anchors and a weighted LS location estimator with ranging error mitigation, they achieved a mean localization error of 0.113 m.
The authors in [15] presented an orientation-dependent neural network model for error mitigation. They experimentally determined and analyzed the error through the channel response from two experiments: indoor and outdoor. The authors observed the optimal mode of operation for the selected UWB module where the orientation-induced error is the smallest. The neural network is trained with channel-response data. Using the trained model on the data that were not used in the training process, ranging errors of less than 1 cm were obtained for the optimal mode of operation.
A novel, simplified method to improve the distance measurement with a UWB radio used in real-time localization systems is proposed in this paper. The presented model is heavily simplified compared to previously used NN models for mitigating orientation-dependent ranging error [15] in NN architecture and input parameters’ complexity. Only two parameters are used for the distance corrections: the measured distance between the anchor and the tag, and the tag’s orientation. These parameters are fed to an NN, previously taught with a learning dataset consisting of distance measurements between two UWB modules at different distances and with different orientations. The trained model in this work is first evaluated with data from the training-measurement campaign that were not used in the training process and then in the experimental setup of 12 anchors and one tag in six different poses, presenting the model results in more realistic conditions. The results show that the used model improved the overall distance measurement in 3D space. Consequently, the localization of the tag is improved.
In the first part of the paper, the RTLS system design, training-data-measurements equipment and procedure, the NN model, the RTLS setup with 12 anchors and the reference measurements for the evaluation are described. Then, all the results from the training measurement and the RTLS experiment are presented in the results section.

2. Materials and Methods

2.1. System Design

The real-time localization system consists of 1 tag and 12 anchors to ensure dense enough placement of anchors in the RTLS system in an experimental environment. Each module consists of a printed-circuit board with ultra-wideband (UWB) DWM1000 modules for ranging, an STM32L4 microprocessor and a USB port for power supply and data transfer to the computer for further processing (Figure 1). The modules are enclosed in a protective ABS plastic housing designed to be fixed to the wall with custom mounts (Figure 2).
For distance measurements, the double-sided two-way ranging version with four messages is implemented on the UWB modules [23]. Implemented ranging method reduces error due to the clock drift on both devices and does not require symmetrical reply delays. The scheme (Figure 3) represents one ranging cycle required for calculating the distance, where the tag initiates the ranging and all the timestamps are obtained on the tag’s side with the fourth packet.
The time of flight can be calculated with:
T ^ T O F = T r o u n d 1 × T r o u n d 2 T r e p l a y 1 × T r e p l a y 2 T r o u n d 1 + T r o u n d 2 + T r e p l a y 1 + T r e p l a y 2 ,
where
T r o u n d 1 = T r x 1 T T t x 1 T T r o u n d 2 = T r x 2 A T t x 1 A T r e p l y 1 = T t x 1 A T r x 1 A T r e p l y 2 = T t x 2 T T r x 1 T .
The distance between the tag and the anchor is then:
d = T ^ T O F × c ,
where c is the speed of light. The distance is calculated on the module and sent to a connected device over a USB serial port.
For sending distance, 8 bytes of a payload are required. Diagnostics data for power calculation take additional 128 bytes and CIR data another 4064 bytes, of which half is for real and a half for the imaginary part. Altogether payload would be 4200 bytes long, of which diagnostics and CIR data represent 99.8% for the selected hardware. Additional bytes in the payload drop the data rates 10-fold.

2.2. Neural Network Model and Training Data Measurements

For collecting the training dataset needed for the NN’s training, the gimbal was designed (Figure 4). The gimbal enables the rotation of the UWB module around the azimuth and in the elevation plane relative to the antenna center with the USB cable connected to the module for the power supply and data transfer. For axis positions, two absolute rotary encoder RLS Orbis were used. To minimize the volume of any material around the UWB antenna, an elevation motor was placed behind the module, as low as possible. The motor is then connected to the gimbal axis via a timing belt. Position control is implemented on a microcontroller and can be driven with a PC over a USB cable.
The training dataset was measured with two UWB modules that were not used in the RTLS setup. One module was stationary on a stand and connected to a power supply. The second was attached to the gimbal to rotate the UWB module around the azimuth and elevation angles around the antenna’s center (Figure 5). The reference distance between modules was measured with a laser distance meter with an accuracy of 1 mm.
Measured and reference distances, azimuth and elevation angles were then used for the training of a feedforward neural network. The Matlab Deep Learning Toolbox was used to design and train the model. A feedforward neural network with six neurons in the hidden layer was chosen, with hyperbolic tangent sigmoid transfer function in the hidden layer and linear transfer function in the output layer (Figure 6). The process of choosing the number of neurons in the hidden layer is described in the result section.

2.3. Reference Measurements for NN Model Evaluation

The trained NN model for the distance correction was evaluated experimentally with the RTLS in the laboratory. In this case, for the reference distances between the anchors and the tag, the reference system Optotrak Certus and geodetic measurements were used. With Optrotak Certus, the tag’s reference position and orientation were measured with three-point markers attached to the tag. The uncertainty of the position measurements after multiple Optotrack cameras were registered was less than 1 mm.
The 12 anchors’ ground-truth positions were measured with a LeicaTPS 1201+ certified electronic tachymeter, representing the standard in reference-position measurements. The wall-mounting plates for the anchors were designed in such a way that the reflective targets for the geodetic measurements could be fixed to them, with a known offset between the target center and the UWB antenna. The offsets between the coordinate of the reflective target’s center and the anchor’s antenna were applied to the reflective target’s coordinates to obtain the true reference coordinates. The reference coordinates of the reflective targets were computed with an uncertainty of less than 1 mm.
For aligning both reference systems, shared reference points were measured with both systems. After the alignment, all the measured reference points with the Optotrak were in the same coordinate system as the anchors’ reference positions [24].
As stationary measurements were acquired in the RTLS experiment, the tag’s orientations were obtained with reference measurements. The orientation was calculated with three-point markers.

2.4. RTLS Setup for the NN Model Evaluation

The RTLS setup with 12 anchors presented in Figure 7 was designed to evaluate the trained NN model in real conditions. The distances to all 12 anchors and the reference pose were measured with the Optotrak system for each tag’s pose.
The anchors communicate with the tag only wirelessly, so just a power connection is provided to them with power banks (Figure 8). The tag is connected to a Raspberry Pi for the power and data transfer. The measured values are sent to the Raspberry Pi, where all the calculations are made. On the Raspberry Pi, a server is established so that the measured data can be transferred to a PC with Matlab Simulink. The Optotrak reference-position points are also acquired over a Simulink in the same scheme, so data synchronization is ensured at the data-acquisition level.
In the RTLS experiment, the UWB module with Optotrack IR diodes was placed at a selected position with a selected orientation. Then, the RTLS application was started, so the distances between the tag and the anchors were being measured and transmitted to the Raspberry Pi. Next, the Simulink scheme on the PC was started to acquire the measured distances between the anchors and the tag from the Raspberry Pi server. Simultaneously, the reference positions of three Optotrak IR diodes were gathered in the same scheme. After 250 samples were measured, the Simulink scheme was stopped and the procedure was repeated for the next tag’s pose.
For the orientation of the tag, the reference measurements from the Optotrak system were used. From three markers attached to the tag, the orientation in the reference coordinate system was calculated. The anchors’ orientations were known from the setup as marked in Figure 7 and are constant relative to the reference coordinate system. The azimuth estimation for the model input was computed from the tag and anchors’ orientations around the z-axis (Figure 9a). An elevation estimation was computed from the known anchors’ heights and the tag’s positions:
d h = h A h T E = a s i n ( d h d ) ,
where h A is the height of the anchor, h T the height of the tag and d the distance between the anchor and the tag (Figure 9b).

2.5. Method for Range Bias Distance Correction without the Tag’s Orientation Information

In cases where better accuracy is required in RTLS applications, additional corrections of the measured distance are recommended by UWB-radio manufacturers. In the presented work, a method that does not include the tag’s orientation information is used. It is called a range bias, which is the error induced due to the received signal power level. Tables are provided where the distance correction is mapped with the received signal power level and are translated to the measured distances [25]. The measured distance is directly used with the correction tables, from which the predicted error is selected for the measured distance.

3. Results

The following sections present the experimental results. First, the acquired data used in the NN model training are shown. Second, the results from choosing the number of hidden neurons in the NN model. Third, the results from the NN model with the reduced training data are presented to evaluate the impact of the amount of data on the results. Finally, the NN model results for the elevation/azimuth data that were not used in the NN model training and the data from the RTLS experimental setup are presented.

3.1. Training Dataset

The training dataset was measured at 15 different distances from 1 m to 8 m in 0.5-m increments, marked with the gray vertical lines (Figure 10), where the blue line represents the reference distance and the orange, the measured distance. For each distance, 29 elevations and 33 azimuth positions were measured, resulting in 957 angular values. For each angular value, 250 repetition samples were measured. Training dataset parameters are presented in Table 1. Each distance contains distance measurements where the elevation changes from −70 degrees to 70 degrees from left to right in 5-degree steps. The azimuth was changing from −80 degrees to 80 degrees in 5-degree steps from left to right inside each constant-elevation value (Figure 11), representing one azimuth sweep. When the elevation and azimuth values were 0 degrees, the UWB modules were oriented face to face. A similar trend is seen for each distance, where the distance is varying with elevation, with the lowest measured distances at central elevations. There are some exceptions with increased values at the edges of the elevation. Multiple sets of training data were measured. All the sets had similar measured distances for all the azimuth and elevation values and for all the selected distances.
The mean of 250 samples for each angular value showed a clearer image of how the measured distance is changing with the elevation and the azimuth, Figure 12 and Figure 13 for 4 and 4.5 m, respectively. A pattern is present in the graphs, continuously changing from the left-hand side (−70 degree elevation) to the right-hand side (70 degree elevation). An average of 5-cm distance changes are present in one azimuth sweep at central elevation values with increased values of 25 cm within one azimuth sweep in elevation at the edges.

3.2. Data from RTLS Experiment with 12 Anchors

In the RTLS experiment, 12 anchors were used with the stationary tag in 6 different poses (Figure 7). Six different tag poses were selected to test multiple conditions, representing possible situations for mobile robots servicing stations up and down from the central area. For each tag’s pose, 12 distances were measured to each anchor–tag pair, and 250 samples were sampled for each distance. Six different tags’ poses resulted in 72 azimuth–elevation combinations with an angle range of 328 and 62 degrees for the azimuth and elevation, respectively (Table 2). Distances between the tag and anchors varied from 3 m to 8 m. In the next sections, results using measurements from the RTLS experiments are presented.

3.3. Number of Hidden Neurons

The optimal number of hidden neurons was determined experimentally. Ten different NN model configurations with the number of hidden neurons from 2 to 20 in increments of 2 were trained 10 times. For each NN model out of 100 and each tag pose, the RMSE was calculated using measured distances from the RTLS experiment. The NN model with the minimal average RMSE was selected for each number of hidden neurons from 10 trained NN models, obtaining the best NN model for each configuration (Figure 14). Then, from previously selected best-NN models for each configuration, the average RMSE for all the tag poses was computed for selecting the best NN model configuration (Figure 15 and Table 3 top row). In Figure 14, the RMSE is presented for each tag pose. In Figure 15, each number of hidden neurons is presenting an average of all six tag-pose RMSE values.
The RMSE with RTLS data increases with the number of hidden neurons, with the big step of 1 cm from 6 to 8 hidden neurons. The smallest errors are for the NN models with 2, 4 and 6 hidden neurons, where there is almost no difference among them. The average training times for each NN model configuration are presented in Table 4. The training times increase with more hidden neurons.
The same process was repeated with a subset of data from the training experiment that was not used in the learning process (Figure 16 and Table 3 bottom row). The error with the subset of training data is decreasing with the increasing number of hidden neurons. The smallest errors are for NN models with 14, 16, 18 and 20 hidden neurons. Please note that the smallest RMSE values here are in the range of 0.033 m, while the smallest values in the RTLS experiment are 0.073 m.

3.4. Reduced Learning Dataset

For example, in Figure 12 and Figure 13 can be seen increased distance values for low and high elevation angles, which is the most left and right in the figures. These values can represent the actual situation of the UWB module or are caused by outside parameters present during the training experiment. To test this, the elevation range was first reduced to −50 degrees to 50 degrees span and further to −40 degrees to 40 degrees span. Overall, the NN model with a full range learning dataset obtained the smallest RMSE (Figure 17), where the mean values over all the tag’s poses are 0.074, 0.078 and 0.081 m for the full dataset, −50 degree to 50 degree span data set and −40 degree to 40 degree span dataset, respectively (Table 5). The NN model with the full training data is, in all tag poses, better or equal to the reduced model, except in the fifth tag pose, where the least-reduced model has a smaller error.

3.5. Model Results

Finally, the output of the trained NN model with six hidden neurons (Model) was compared with a compensation method (Range Bias) that is not incorporating the tag’s orientational information and the raw distance measurements (Raw).
First, methods are used on the subset data from training measurements that were not used in the NN model’s training process. Mean errors were 0.041 m, 0.315 m and 0.132 m for the NN model, Range Bias and Raw measurements, respectively. With the subset data, the error is improved by 9 cm with the presented model. The non-orientational range-bias method increased the error by 18 cm.
All three methods are used on data from the RTLS measurements in the laboratory (Figure 18), presenting the realistic conditions with obstacles and multipath situations. The NN model improved the mean error over all six tags’ poses by 2 cm. The RMSE was improved for all six poses, finally having a maximum error of 0.1 m (Table 6). The non-orientational method did not improve the accuracy of the measured distances, having a 3-cm larger mean error than the raw measurements.

4. Discussion

Previous work presented an antenna-orientation-induced error in ranging with UWB radios as well as a model for ranging-error prediction. Generally, all the models used a channel impulse response or received the signal power as inputs, enabling a good error-prediction model. This approach makes the model more complex and requires additional data from the modules. This paper presents a simple ranging-error model with only distance, azimuth and elevation as the input, which improves the measured distance in real-time localization systems in a realistic situation, in 3D space.
For training NN models, the training data were first acquired at different distances and orientations between two UWB modules. Patterns can be observed in the measured values, for the elevation and azimuth observations (Figure 12 and Figure 13). One azimuth sweep is made for one constant elevation value. Peak values of the measured distances are present at the edges of and in the middle of the azimuth sweep. Although the shapes are not the same for all the elevation values, the neighboring azimuth sweeps have a similar shape. This pattern is changing when changing the angle of elevation. The most significant changes are present in the boundary-elevation values with the greatest distance deviations within one azimuth sweep. When observing the elevation changes, the hyperbolic shape is seen in the measured values with the largest measured distances at the boundary angles when the UWB module faced the floor and at the ceiling. Multiple, very similar training datasets were measured with little difference between them, showing repeatability of the distance measurement with a designed gimbal and measuring procedure. This result is confirmed by evaluating the NN model with a data subset from training, where an RMSE error of 4 cm was achieved. Larger distance deviations at the elevation-boundary values are further discussed later on with additional NN models.
Based on the results presented in Figure 15 and Figure 16, the NN model with six hidden neurons was selected for further evaluations. The error is increasing with a larger number of hidden neurons in the NN model when using the RTLS experimental data (Figure 15). RMSE has a similar value for the NN models with 2–6 hidden neurons with a sudden increase for 1 cm with an increase of the hidden neurons to 8. This suggests that more neurons do not add to the model’s capability to describe an orientation-dependent ranging error in real conditions. The opposite is happening with an error when the training data subset is used (Figure 16). The error is slowly decreasing with an increasing number of hidden neurons. This is an expected result, as a more complex NN model can model the error better when similar data are used for the evaluation. In this case, more complex NN models perform better. Although the NN model with a larger number of hidden neurons had the smallest error with the training-data subset, they did not perform better in real-scenario measurements. The best NN-model candidates for the real environment were the NN models with 2, 4 and 6 hidden neurons, as they had a similar error in the RTLS experiments. This was achieved for shorter training times (Table 4). The NN model with six neurons was selected due to a slightly smaller error with the training data subset.
Training data have occurrences of longer measured distances at the boundary-elevation values for all the repeated sets. This means that the propagation times were the longest at these angles. Additional NN models with reduced training measurements were made to test whether longer distances at the edges of the elevation values are caused by the UWB module or by the gimbal and the testing environment. The training data were reduced to the elevation ranges −50 degrees to degrees 50 and −40 degrees to 40 degrees. When new NN models were used on the RTLS data, the same or larger errors were computed when observing the mean error over all six tags’ poses (Figure 17). If the errors would be smaller than the error from the full range NN model, the training data would be influenced by factors not solely caused by the UWB module. The results confirm the validity of the training data and the process of measuring the training data.
The performance of the new NN model, Range Bias and the Raw data is 0.041 m, 0.315 m and 0.132 m, respectively, where the distance measurements’ subsets from the full training experiments are used, which were not utilized in the NN training process. The error of 4 cm was achieved with a 69% improvement compared to the situation without the NN model. Compared to the results from previous research (Table 7) similar results were achieved. Schmid et al. [22] achieved slightly better results but with constant orientation between a pair of modules and additional diagnostics data. Tiemann et al. [15] had better results than the presented model and Schmid, where an approximately 1-cm error was achieved with the channel impulse response as the input. The presented model achieved a larger error compared to [15,22], but the model’s implementation is much simpler, with only distance as an input, in addition to the orientation, which is a common input for the presented model and [15].
Finally, the NN model of the orientation-dependent ranging error was evaluated in the RTLS experiment in realistic indoor conditions in 3D space. Overall, the NN model improved the measured distance in the RTLS system by 2 cm (Table 6). The non-orientation method that was used for comparison did not improve the measured distance. This is expected as the non-orientation method does not take a tag’s orientation into account. Correcting the distance only based on the measured distance can result in the wrong corrections and larger errors. The NN model was proved to improve the measured distance, even if not all possible orientations from the RLTS experiment were captured in the training data. This means that there is a possibility to improve further the overall measured distances with the proposed orientation-dependent ranging-error model.
Following the presentation of results in this paper, it could be claimed that the NN model is a simple ranging model suitable for RTLS applications with easy implementations and without additional parameters.

5. Conclusions

This paper presents a simple neural-network orientation-dependent ranging-error model in 3D space. The selected feedforward NN model required the measured distance and the calculated orientation, elevation and azimuth, as an input. The experimental data and the results when choosing the NN model configuration are presented and discussed. When testing a different number of neurons in the hidden layer on training data, NN model error decreases with a higher number of neurons. The opposite is with testing the NN model on RTLS experimental data, where error increases with an increasing number of neurons. Six neurons in the hidden layer were selected for the final NN model configuration. The training data are also validated with additional NN-model variations, where the boundary-elevation angles were checked with a reduced training dataset. NN model trained with the full range training dataset obtained the best results. The NN model’s performance is validated with a data subset from the training measurements that was not used in the training process, achieving a 4 cm error. Compared to the literature, the errors are not improved to the same extent, but the model’s complexity and additional requirements for acquiring the necessary input parameters are smaller in this case. Finally, the first demonstration of the orientational ranging-error model in the RTLS experiment with real conditions is presented, where the NN model showed improvements in 3D measured distances by 2 cm with a mean error of 7.4 cm. It should be underlined that the distances are estimated in 3D. In future work, extended training datasets will be tested and, consequently, the complexity of the training data vs. the distance improvement compared. New measurements are planned for testing the model in dynamic conditions. Further research should focus on investigating the use of additional NN model input parameters, e.g., speed of the user.

Author Contributions

Conceptualization, P.K. and M.M.; methodology, P.K. and M.M.; software, P.K.; validation, P.K., M.M. and M.V.; formal analysis, P.K., M.M. and M.V.; investigation, P.K.; resources, M.V. and M.M.; data curation, P.K.; writing—original draft preparation, P.K.; writing—review and editing, M.M.; visualization, P.K.; supervision, M.M.; project administration, M.M.; funding acquisition, M.M. All authors have read and agreed to the published version of the manuscript.

Funding

The authors acknowledge the financial support from the Slovenian Research Agency (research core founding No. P2-0228).

Data Availability Statement

All data are integral part of the correspondent author’s PhD thesis.

Acknowledgments

The authors would like to thank G. Štebe M.S. from the Faculty of Civil and Geodetic Engineering for the reference-point measurements.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
BNNBackpropagation neural network
CIRChannel impulse response
CNNConvolutional neural network
GPSGlobal positioning system
LOSLine-of-sight
LSLeast squares
NLOSNon-line-of-sight
NNNeural network
RMSERoot mean square error
RSSIReceived signal strength indicator
RTLSReal-time localization system
TDOATime-difference-of-arrival
TOATime-of-arrival
TOFTime-of-flight
UWBUltra-wideband

References

  1. Rykała, Ł.; Typiak, A.; Typiak, R. Research on Developing an Outdoor Location System Based on the Ultra-Wideband Technology. Sensors 2020, 20, 6171. [Google Scholar] [CrossRef] [PubMed]
  2. Wang, Y.; Zhang, W.; Li, F.; Shi, Y.; Nie, F.; Huang, Q. UAPF: A UWB Aided Particle Filter Localization For Scenarios with Few Features. Sensors 2020, 20, 6814. [Google Scholar] [CrossRef] [PubMed]
  3. Cimdins, M.; Schmidt, S.O.; Hellbrück, H. MAMPI-UWB—Multipath-Assisted Device-Free Localization with Magnitude and Phase Information with UWB Transceivers. Sensors 2020, 20, 7090. [Google Scholar] [CrossRef]
  4. Bonnin-Pascual, F.; Ortiz, A. UWB-Based Self-Localization Strategies: A Novel ICP-Based Method and a Comparative Assessment for Noisy-Ranges-Prone Environments. Sensors 2020, 20, 5613. [Google Scholar] [CrossRef]
  5. Guo, K.; Qiu, Z.; Miao, C.; Zaini, A.H.; Chen, C.L.; Meng, W.; Xie, L. Ultra-wideband-based localization for quadcopter navigation. Unmanned Syst. 2016, 4, 23–34. [Google Scholar] [CrossRef]
  6. He, C.; Tang, C.; Yu, C. A federated derivative cubature Kalman filter for IMU-UWB indoor positioning. Sensors 2020, 20, 3514. [Google Scholar] [CrossRef] [PubMed]
  7. Jiménez Ruiz, A.R.; Seco Granja, F. Comparing Ubisense, BeSpoon, and DecaWave UWB Location Systems: Indoor Performance Analysis. IEEE Trans. Instrum. Meas. 2017, 66, 2106–2117. [Google Scholar] [CrossRef]
  8. Guvenc, I.; Chong, C.C. A survey on TOA based wireless localization and NLOS mitigation techniques. IEEE Commun. Surv. Tutorials 2009, 11, 107–124. [Google Scholar] [CrossRef]
  9. Sidorenko, J.; Schatz, V.; Bulatov, D.; Scherer-Negenborn, N.; Arens, M.; Hugentobler, U. Self-Calibration for the Time Difference of Arrival Positioning. Sensors 2020, 20, 2079. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  10. Chen, S.; Shu, R.; Zhang, S.; Zheng, X. Evaluate distance measurement how to influence localization in wireless sensor networks. In Proceedings of the 2012 2nd International Conference on Consumer Electronics, Communications and Networks (CECNet), Yichang, China, 21–23 April 2012; pp. 323–325. [Google Scholar] [CrossRef]
  11. Merkl, B.; Fathy, A.; Mahfouz, M. Base station orientation calibration in 3-D indoor UWB positioning. In Proceedings of the 2008 IEEE International Conference on Ultra-Wideband, Hannover, Germany, 10–12 September 2008; Volume 1, pp. 93–96. [Google Scholar] [CrossRef]
  12. Sharma, M.; Parini, C.G.; Alomainy, A. Influence of antenna alignment and line-of-sight obstruction on the accuracy of range estimates between a pair of miniature UWB antennas. In Proceedings of the 2015 9th European Conference on Antennas and Propagation (EuCAP), Lisbon, Portugal, 12–17 April 2015; pp. 1–5. [Google Scholar]
  13. Blumenstein, J.; Prokes, A.; Chandra, A.; Mikulasek, T.; Marsalek, R.; Zemen, T.; Mecklenbräuker, C. In-Vehicle Channel Measurement, Characterization, and Spatial Consistency Comparison of 30–11 GHz and 55–65 GHz Frequency Bands. IEEE Trans. Veh. Technol. 2017, 66, 3526–3537. [Google Scholar] [CrossRef]
  14. Bregar, K.; Mohorčič, M. Improving Indoor Localization Using Convolutional Neural Networks on Computationally Restricted Devices. IEEE Access 2018, 6, 17429–17441. [Google Scholar] [CrossRef]
  15. Tiemann, J.; Pillmann, J.; Wietfeld, C. Ultra-Wideband Antenna-Induced Error Prediction Using Deep Learning on Channel Response Data. In Proceedings of the 2017 IEEE 85th Vehicular Technology Conference (VTC Spring), Sydney, Australia, 4–7 June 2017; pp. 1–5. [Google Scholar] [CrossRef]
  16. Kolakowski, J.; Djaja-Josko, V.; Kolakowski, M.; Broczek, K. UWB/BLE Tracking System for Elderly People Monitoring. Sensors 2020, 20, 1574. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  17. Delamare, M.; Duval, F.; Boutteau, R. A New Dataset of People Flow in an Industrial Site with UWB and Motion Capture Systems. Sensors 2020, 20, 4511. [Google Scholar] [CrossRef] [PubMed]
  18. Martinelli, A.; Jayousi, S.; Caputo, S.; Mucchi, L. UWB Positioning for Industrial Applications: The Galvanic Plating Case Study. In Proceedings of the 2019 International Conference on Indoor Positioning and Indoor Navigation (IPIN), Pisa, Italy, 30 September–3 October 2019; pp. 1–7. [Google Scholar]
  19. Tiemann, J.; Pillmann, J.; Bocker, S.; Wietfeld, C. Ultra-wideband aided precision parking for wireless power transfer to electric vehicles in real life scenarios. In Proceedings of the 2016 IEEE 84th Vehicular Technology Conference (VTC-Fall), Montreal, QC, Canada, 18–21 September 2016; pp. 1–5. [Google Scholar]
  20. Wu, H.; Wang, W.; Wang, J.; Mohapatra, P. RangingNet: A convolutional deep neural network based ranging model for wireless sensor networks (WSN). Comput. Commun. 2019, 140–141, 61–68. [Google Scholar] [CrossRef]
  21. Chen, X.; Zhang, M.; Ruan, K.; Gong, C.; Zhang, Y.; Yang, S.X. A ranging model based on BP neural network. Intell. Autom. Soft Comput. 2016, 22, 325–329. [Google Scholar] [CrossRef]
  22. Schmid, L.; Salido-Monzú, D.; Wieser, A. Accuracy Assessment and Learned Error Mitigation of UWB ToF Ranging. In Proceedings of the 2019 International Conference on Indoor Positioning and Indoor Navigation (IPIN), Pisa, Italy, 30 September–3 October 2019; pp. 1–8. [Google Scholar] [CrossRef]
  23. Neirynck, D.; Luk, E.; McLaughlin, M. An alternative double-sided two-way ranging method. In Proceedings of the 2016 13th Workshop Positioning, Navigation and Communications (WPNC), Bremen, Germany, 19–20 October 2016; pp. 1–4. [Google Scholar]
  24. Horn, B.K.; Hilden, H.M.; Negahdaripour, S. Closed-form solution of absolute orientation using orthonormal matrices. JOSA A 1988, 5, 1127–1135. [Google Scholar] [CrossRef] [Green Version]
  25. DecaWave. Sources of Error in DW1000 Based Two-Way Ranging (TWR) Schemes; Technical Report APS011; DecaWave: Burlingame, CA, USA, 2018. [Google Scholar]
Figure 1. Top and bottom sides of the designed board with the ultra-wideband (UWB) radio module.
Figure 1. Top and bottom sides of the designed board with the ultra-wideband (UWB) radio module.
Sensors 21 02294 g001
Figure 2. UWB module in a plastic housing as it is mounted on the wall with the mount. Under the module is a target for the geodetic reference measurements of the anchors’ positions. The relationship between the antenna center and a geodetic target is known.
Figure 2. UWB module in a plastic housing as it is mounted on the wall with the mount. Under the module is a target for the geodetic reference measurements of the anchors’ positions. The relationship between the antenna center and a geodetic target is known.
Sensors 21 02294 g002
Figure 3. Double-sided two-way ranging with four messages. In this way, all the timestamps for the time-of-flight calculations are collected on the tag side.
Figure 3. Double-sided two-way ranging with four messages. In this way, all the timestamps for the time-of-flight calculations are collected on the tag side.
Sensors 21 02294 g003
Figure 4. Gimbal mechanism for rotation of the UWB module around the azimuth and elevation axis centered in the antenna phase center with stepper motors and RLS Orbis absolute rotary encoders.
Figure 4. Gimbal mechanism for rotation of the UWB module around the azimuth and elevation axis centered in the antenna phase center with stepper motors and RLS Orbis absolute rotary encoders.
Sensors 21 02294 g004
Figure 5. Setup for training-data measurements with module M2 on a stand and module M1 on a stand with the gimbal. For M1, the range of motion for the elevation was from −70 to 70 degrees and for azimuth, from −80 to 80 degrees.
Figure 5. Setup for training-data measurements with module M2 on a stand and module M1 on a stand with the gimbal. For M1, the range of motion for the elevation was from −70 to 70 degrees and for azimuth, from −80 to 80 degrees.
Sensors 21 02294 g005
Figure 6. Feedforward neural network with six neurons in the hidden layer. The neural network (NN) has three input parameters—measured distance, azimuth and elevation angles, and one output parameter—corrected distance.
Figure 6. Feedforward neural network with six neurons in the hidden layer. The neural network (NN) has three input parameters—measured distance, azimuth and elevation angles, and one output parameter—corrected distance.
Sensors 21 02294 g006
Figure 7. Real-time localization system (RTLS) setup in the laboratory with 12 anchors and 6 tag poses. The position for each pose is represented by a circle and the orientation with a short line. The short line represents the UWB zero-degree orientation. The same is valid for the anchors. The additional elements in the figure are other objects in the laboratory. AM heights in the legend describe the height of the anchor from the floor.
Figure 7. Real-time localization system (RTLS) setup in the laboratory with 12 anchors and 6 tag poses. The position for each pose is represented by a circle and the orientation with a short line. The short line represents the UWB zero-degree orientation. The same is valid for the anchors. The additional elements in the figure are other objects in the laboratory. AM heights in the legend describe the height of the anchor from the floor.
Sensors 21 02294 g007
Figure 8. Experimental setup of 12 anchors and 1 tag for the model evaluation with the reference system Optotrak.
Figure 8. Experimental setup of 12 anchors and 1 tag for the model evaluation with the reference system Optotrak.
Sensors 21 02294 g008
Figure 9. Tag’s azimuth and elevation relative to the individual anchor–tag pair. (a) The azimuth is computed from the anchor’s known orientation and the measured tag’s orientation around the z-axis in the reference coordinate system. (b) The elevation is obtained from the known heights of the anchor and tag and the distance between them.
Figure 9. Tag’s azimuth and elevation relative to the individual anchor–tag pair. (a) The azimuth is computed from the anchor’s known orientation and the measured tag’s orientation around the z-axis in the reference coordinate system. (b) The elevation is obtained from the known heights of the anchor and tag and the distance between them.
Sensors 21 02294 g009
Figure 10. Training dataset with 15 different distances. For each distance, 33 azimuth and 29 elevation points were measured, and for each point, 250 samples were measured. The blue line represents the reference distance. Each distance between the UWB modules is separated with gray vertical lines. The black rectangle shows zoomed distances presented in separate figures.
Figure 10. Training dataset with 15 different distances. For each distance, 33 azimuth and 29 elevation points were measured, and for each point, 250 samples were measured. The blue line represents the reference distance. Each distance between the UWB modules is separated with gray vertical lines. The black rectangle shows zoomed distances presented in separate figures.
Sensors 21 02294 g010
Figure 11. Presentation of the measured training data inside one distance between the UWB modules. The elevation was changing from −70 degrees to 70 degrees with a step size of 5 degrees, with the central position at 0 degrees. The azimuth was changing from −80 degrees to 80 degrees with a step size of 5 degrees, with the central position at 0 degrees inside each constant elevation.
Figure 11. Presentation of the measured training data inside one distance between the UWB modules. The elevation was changing from −70 degrees to 70 degrees with a step size of 5 degrees, with the central position at 0 degrees. The azimuth was changing from −80 degrees to 80 degrees with a step size of 5 degrees, with the central position at 0 degrees inside each constant elevation.
Sensors 21 02294 g011
Figure 12. Zoomed training data acquired at 4-m distance, where a mean of 250 samples is presented for each azimuth and elevation point. Each gray compartment represents one azimuth sweep at a constant elevation, meaning the elevation is changing from −70 degrees on the left to the 70 degrees on the graph’s right-hand side. In each compartment, the azimuth goes from −80 degrees on the left-hand side to the 80 degrees on the right-hand side. The blue line represents the reference distance.
Figure 12. Zoomed training data acquired at 4-m distance, where a mean of 250 samples is presented for each azimuth and elevation point. Each gray compartment represents one azimuth sweep at a constant elevation, meaning the elevation is changing from −70 degrees on the left to the 70 degrees on the graph’s right-hand side. In each compartment, the azimuth goes from −80 degrees on the left-hand side to the 80 degrees on the right-hand side. The blue line represents the reference distance.
Sensors 21 02294 g012
Figure 13. Exemplary set of zoomed training data for measurements at 4.5 m, where a mean of 250 samples is presented for each azimuth and elevation point. Each gray compartment represents one azimuth sweep at a constant elevation, meaning the elevation is changing from −70 degrees on the left to the 70 degrees on the graph’s right-hand side. In each compartment, the azimuth goes from −80 degrees on the left-hand side to 80 degrees on the right-hand side. The blue line represents the reference distance.
Figure 13. Exemplary set of zoomed training data for measurements at 4.5 m, where a mean of 250 samples is presented for each azimuth and elevation point. Each gray compartment represents one azimuth sweep at a constant elevation, meaning the elevation is changing from −70 degrees on the left to the 70 degrees on the graph’s right-hand side. In each compartment, the azimuth goes from −80 degrees on the left-hand side to 80 degrees on the right-hand side. The blue line represents the reference distance.
Sensors 21 02294 g013
Figure 14. Results from neural networks with a different number of neurons in the hidden layer, all trained with the same training data. The RMSE is displayed for each tag’s pose. The numbers in the legend represent the number of used neurons in the hidden layers.
Figure 14. Results from neural networks with a different number of neurons in the hidden layer, all trained with the same training data. The RMSE is displayed for each tag’s pose. The numbers in the legend represent the number of used neurons in the hidden layers.
Sensors 21 02294 g014
Figure 15. Mean error over all six tags’ poses for the NN models with the number of neurons from 2 to 20, with increments of 2 using the data from the RTLS experiment.
Figure 15. Mean error over all six tags’ poses for the NN models with the number of neurons from 2 to 20, with increments of 2 using the data from the RTLS experiment.
Sensors 21 02294 g015
Figure 16. Mean error over all six tags’ poses for the NN models with the number of neurons from 2 to 20 with increments of two using data from the training experiment, that were not used in the NN’s training process.
Figure 16. Mean error over all six tags’ poses for the NN models with the number of neurons from 2 to 20 with increments of two using data from the training experiment, that were not used in the NN’s training process.
Sensors 21 02294 g016
Figure 17. RMSE for all six tags’ poses with reduced training data for the neural network. From original −80 to 80-degree elevation span, two smaller data sets were made: from −50 to 50 and from −40 to 40-degree elevation span.
Figure 17. RMSE for all six tags’ poses with reduced training data for the neural network. From original −80 to 80-degree elevation span, two smaller data sets were made: from −50 to 50 and from −40 to 40-degree elevation span.
Sensors 21 02294 g017
Figure 18. RMSE error for distances to all 12 anchors in the RTLS realistic setup in a laboratory for all six tags’ poses for the presented model (Model), a method that does not include orientational information (Range Bias) and raw measurements (Raw).
Figure 18. RMSE error for distances to all 12 anchors in the RTLS realistic setup in a laboratory for all six tags’ poses for the presented model (Model), a method that does not include orientational information (Range Bias) and raw measurements (Raw).
Sensors 21 02294 g018
Table 1. Training dataset parameters.
Table 1. Training dataset parameters.
MinMaxStep
distance range/m180.5
azimuth range/ −80805
elevation range/ −70705
Table 2. Min and max azimuth and elevation values for six tags’ poses in the RTLS experiment.
Table 2. Min and max azimuth and elevation values for six tags’ poses in the RTLS experiment.
MinMax
azimuth/ −157171
elevation/ −90−28
Table 3. Mean error over all six tags’ poses for a different number of hidden neurons in the NN model. The first row, RTLS, presents model errors when measured distances from the RTLS experiment were used. The second row, SUBSET-TRAIN, presents model errors when a subset of data from the training campaign was used that was not included in the NN model’s training process.
Table 3. Mean error over all six tags’ poses for a different number of hidden neurons in the NN model. The first row, RTLS, presents model errors when measured distances from the RTLS experiment were used. The second row, SUBSET-TRAIN, presents model errors when a subset of data from the training campaign was used that was not included in the NN model’s training process.
Hidden Neurons2468101214161820
RTLS error/m0.0730.0730.0740.0840.0870.0900.0960.0960.0960.091
SUBSET-TRAIN error/m0.0430.0420.0410.0410.0370.0380.0330.0330.0320.034
Table 4. Average training time for NN models with a different number of hidden neurons.
Table 4. Average training time for NN models with a different number of hidden neurons.
Hidden Neurons2468101214161820
train time/s2804877951643217325462489344537743919
Table 5. NN models’ mean error with an elevation range of −80:80, −50:50 and −40:40 when RTLS experiment measurements were used.
Table 5. NN models’ mean error with an elevation range of −80:80, −50:50 and −40:40 when RTLS experiment measurements were used.
Elevation Range/ −80:80−50:50−40:40
mean error/m0.0740.0780.081
Table 6. Mean, max and min error for all six tags’ poses for the presented model, non-orientational method and raw measured distances.
Table 6. Mean, max and min error for all six tags’ poses for the presented model, non-orientational method and raw measured distances.
NN ModelRange BiasRaw
mean error/m0.0740.1200.092
max error/m0.1000.1610.107
min error/m0.0580.0940.074
Table 7. Results from previous research with the use of NN in ranging. Error column represents ranging errors obtained with similar data as was used in NN training. The RTLS error column is presenting ranging errors obtained with NN models with RTLS measurements in realistic conditions.
Table 7. Results from previous research with the use of NN in ranging. Error column represents ranging errors obtained with similar data as was used in NN training. The RTLS error column is presenting ranging errors obtained with NN models with RTLS measurements in realistic conditions.
NotesError/mRTLS Error/m
Wu et al. [20]CNN-RSSI + Image *0.5–0.9/
Chen et al. [21]BNN-ranging-simulations *0.34/
Schmid et al. [22]NN-ranging + diagnostics data *0.035/
Tiemann et al. [15]NN-ranging + diagnostics data0.01/
Presented modelNN-ranging; simple model, smaller payload0.0410.074
* No orientational data were used.
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Krapež, P.; Vidmar, M.; Munih, M. Distance Measurements in UWB-Radio Localization Systems Corrected with a Feedforward Neural Network Model. Sensors 2021, 21, 2294. https://doi.org/10.3390/s21072294

AMA Style

Krapež P, Vidmar M, Munih M. Distance Measurements in UWB-Radio Localization Systems Corrected with a Feedforward Neural Network Model. Sensors. 2021; 21(7):2294. https://doi.org/10.3390/s21072294

Chicago/Turabian Style

Krapež, Peter, Matjaž Vidmar, and Marko Munih. 2021. "Distance Measurements in UWB-Radio Localization Systems Corrected with a Feedforward Neural Network Model" Sensors 21, no. 7: 2294. https://doi.org/10.3390/s21072294

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop