In this work, a novel scheme for velocity and position estimation in a UWB range-based localization system is proposed. The suggested estimation strategy allows to overcome two main problems typically encountered in the localization systems. The first one is that it can be suitable for use in environments where the GPS signal is not present or where it might fail. The second one is that no accelerometer measurements are needed for the localization task. Moreover, to deal with the velocity estimation problem, a suitable Kalman-Bucy filter is designed and it is compared, experimentally, with a particle filter by showing the features of the two algorithms in order to be used in a localization context. Additionally, further experimental tests are carried out on a suitable developed test setup in order to confirm the goodness of the proposed approach.
In this work, a novel scheme for velocity and position estimation in a UWB range-based localization system is proposed. The suggested estimation strategy allows to overcome two main problems typically encountered in the localization systems. The first one is that it can be suitable for use in environments where the GPS signal is not present or where it might fail. The second one is that no accelerometer measurements are needed for the localization task. Moreover, to deal with the velocity estimation problem, a suitable Kalman-Bucy filter is designed and it is compared, experimentally, with a particle filter by showing the features of the two algorithms in order to be used in a localization context. Additionally, further experimental tests are carried out on a suitable developed test setup in order to confirm the goodness of the proposed approach.
Real-time localization of mobile objects and people has gained increasing interest and popularity because of the growing demand of location-based services such as in smart industries, warehouse management, healthcare industry, transportation and logistics, defense, mobile robot guidance, and autonomous drive and flight. For these reasons, the localization estimation problem is a challenge in the academic communities and industrial sectors, especially for those involved in autonomous flight applications design [1,2,3] where the controller, in order to implement real-time state-feedback control laws, has to know the position, linear and angular speed of the object, and its attitude. Since the position and velocity vectors, estimated by means of integrations of the accelerations measured by IMU, suffer uncertainties and disturbances introduced by the sensor itself, the aim of this paper is the estimation of the position of a moving point P and that of the velocity without acceleration measurements. In outdoor environments, where geostationary satellites are in LOS (line-of-sight) condition, the GPS signal is used to obtain information about position and velocity of a mobile object (see, for example, [4,5,6,7,8,9]), together with a data fusion system [10] which is able to handle the different nature and frequency of IMU measures and GPS signals. In other contexts, where the GPS signal becomes unreliable, for example, in indoor environments [11,12] or outdoor scenarios such as forests or urban canyons [13], it is necessary to use alternative sensor devices and methods to face the localization problem [14,15,16,17]. A common way to approach this kind of problem is to perform the navigation task in a structured environment where it is possible to take information about the distance between the moving object and some fixed reference points. This can be achieved, for example, by installing some UWB radio transceivers both on the mobile device and in correspondence of the fixed reference points, which are called anchors. The localization method is based on the measurement of the distances between the onboard module and the anchors, and makes use of a suitable algorithm to extract the position of the center of gravity of the moving object [18,19,20]. Starting from distance measurements and applying a trilateration algorithm [21,22,23,24], it is possible to obtain an estimation of the position vector. With regards to the implementation of the trilateration algorithm, in order to calculate the best approximation of the mobile object position, some recursive procedures have been explored and proposed in the literature, generally based on linear and nonlinear least-square technique [25,26], or the use of Cayley–Menger determinant [27,28]. Other approaches based on Kalman filtering have also been investigated. For example, in [29], a Kalman filter based on data fusion algorithm was designed to improve the localization performance in an indoor scenario. In [30], a multi-sensor fusion algorithm for underwater vehicle localization was presented, making use of neural network and obtaining better navigation and localization results with respect to the classic implementation based on the error-state Kalman filter. In [31], a deep learning framework with multiple long short-term memory modules combined with an extended Kalman filter was proposed to predict the increment of the vehicle position in a localization task during GPS outages.This paper represents an extension of the work presented in [32], where a localization scheme derived from the parallel robot context and based on the estimation of the direct kinematics is illustrated. In particular, assuming the gravity center of the mobile object as the end effector of a parallel robot and its distances from n anchors as the prismatic links, the estimation of the position vector is obtained by means of inversion of the known inverse kinematics. The distances from the anchors are measured at low frequency using the UWB radio transceivers DWM1000 integrated circuit (IC) from Decawave manufacturer [33]. The estimator consists of a closed-loop control scheme based on a PI action driven by the error between the measured distance vector and the estimated one, and affected by the distance vector derivative acting as a disturbance. Since this disturbance is calculated by means of IMU integration and a projection through the online-computed inverse kinematics, it is affected by errors due to drift caused by IMU biases. In order to cope with this effect, high values of the estimator gains have to be employed, as suggested in [34].Since this solution appears to be unsatisfactory, in this paper, the estimator presented in [32] is modified, replacing the derivative of the distance vector with an estimation of this derivative carried out by means of an exact first-order Levant’s differentiator [35]. In this work, it is shown that it is possible to eliminate the accelerometer and all problems connected to it, such as systematic errors given by imprecise scaling factors, axes misalignments, non-uniform cross-axis sensitivities, non-zero biases, and temperature dependence. Moreover, from the theoretical point of view, it is possible to ensure the convergence to zero of the position estimation error in the case with three anchors, while if more than three anchors are employed, the convergence can be proved only locally. Finally, with the aim of also estimating the velocity of the mobile object, a Kalman–Bucy filter, driven by the estimated position, is introduced. It is important to highlight that the Kalman–Bucy filter input variables are computed by the proposed localization algorithm and, consequently, that they do not present drift problems caused by the double integration of the accelerometer measurement.Experimental results show the effectiveness of the proposed localization scheme. In particular, it is shown that it is possible to approximate the first derivatives of the distances by using a suitable developed differentiator. This leads to a slightly noisier estimate, but allows to eliminate the accelerometer. Moreover, the Kalman–Bucy filter is compared with the particle filter, and it is shown that the best results are obtained using the differentiator and the Kalman–Bucy filter for velocity estimation, both in term of amplitude and variance of the estimation error.The structure of the paper is as follows. In Section 2, the localization scheme for the position estimation without accelerometer measurements is illustrated by differentiating the case with three anchors (Section 2.3) and with more than three anchors (Section 2.4). The experimental results for this scheme are given in Section 2.5. In Section 3, we discuss three different schemes to estimate the velocity, also showing the experimental results and giving a comparison among them in Section 3.3. Finally, conclusions are given in Section 4. Additionally, the experimental setup implemented to prove the effectiveness of the proposed architectures is described in Appendix A.
2. Localization without Accelerometers
A trilateration algorithm, in both indoor and outdoor environments, allows to extract the information about the coordinates of a point P in a chosen reference frame by measuring the distances of P from some fixed devices whose coordinates are a priori known. Since the aim of this paper is to propose a method for the localization of a point of a mobile moving object in indoor environments, where the GPS signals do not arrive, the electronic devices chosen to perform range-based measurements are ultra-wideband radio transceivers (see Section 1). The proposed method is based on the kinematics inversion algorithm highlighted in the parallel robotics field. In this context, differently from the one for serial robots, the structure of the inverse kinematics in a closed form is known, so it is necessary to determine the direct kinematics. Due to the nonlinear nature of the problem, this computation does not exist in a closed form. As already stated, the principal objective is that of performing the localization algorithm without any knowledge of accelerometer signals.The inverse kinematics structure describing the relationship between the range measures and the coordinates is given by the following equation:
where the generic component of , , is given by:
where , , and denote, respectively, the components of the position of the ith anchor referred to the reference frame; , , and denote the coordinates of the mobile point P; are the distance between P and the ith anchor; and denotes the discrete set of integer numbers representing the anchors. In the case under study, . In (1), the components of and represent, respectively, the prismatic link lengths and the coordinates of the reference point P of the parallel robot end-effector. If these coordinates (, , and ) are known, it is possible to obtain by means of (2). However, the aim of this paper is to estimate the components of P by measuring the distances between P itself and the anchors, and then the relationship to be used is the following one:
where is not known and has to be determined.In [22], it is shown that by using three anchors located on the ground plane, it is possible to obtain a closed-form solution of the direct kinematics problem with an uncertainty on the sign of the component along the z-axis. This uncertainty can be eliminated if the motion of the mobile object is restricted to one side of the plane on which the three anchors lie.
2.1. Determination of the Direct Kinematics for Anchors
When more than three anchors are used, Equation (1) consists of n equations and three unknown quantities that are the coordinates of P. In this case, the problem is solved by means of the left pseudo-inverse algorithm. More precisely, deriving with respect to the time Equation (1), the following can be obtained:
where is the Jacobian matrix of the vectorial function , given by:In order to obtain from (4), for it is sufficient to apply the relationship because the Jacobian matrix is invertible, whereas for , it is common practice to minimize the 2-norm of the difference of the first and the second term of (4). This leads to an optimal solution , given by:
where is the left pseudo-inverse matrix of , given by:
which exists because the Jacobian matrix is full-rank column.
2.2. A New Closed-Loop Localization Algorithm
Equation (6) suggests to determine the position vector by means of the following iterative algorithm:
where . The corresponding closed-loop block scheme of the localization method is given in Figure 1.
Figure 1
Block scheme of the localization method.
This algorithm differs from that shown in [32] for the presence of the derivative of the computed feedback distance vector, , instead of the derivative of the true distances, . While the computed feedback distance vector is a continuous function, and consequently numerically derivable, the measured distance vector is a vector whose elements are piecewise constant functions, and consequently cannot be numerically derivable. For this reason, the computation of requires the use of accelerometers, as discussed in [32]. In order to compute a numeric derivative of it is possible to use the robust first-order Levant’s differentiator [35], given by:
where sgn denotes the signum function.
2.3. Using Three Anchors
When the localization is performed using three anchors, it is easy to prove the following theorem.Given a mobile object, let the point P be the center of gravity. Assume that three anchors are employed for the localization of the mobile object, i.e.,Proof. Since (cf. (4)), (8) becomes:
since is a square full-rank matrix, (11) implies that:It follows that converges asymptotically to zero when t diverges to infinity, provided that . This implies that converges to and, consequently, converges to .
2.4. Using Anchors
When anchors are employed for the localization task, the left pseudo-inverse is a matrix having rank three. In this case (8) does not imply the convergence of to zero; in fact, since the n columns of are linearly dependent, Equation (8) can be also satisfied for , different from zero. However, since the elements of the the Jacobian matrix are bounded, the elements of are bounded as well, and, consequently, is bounded. This implies that is bounded and, since is a continuous function in , is bounded.
2.5. Experimental Results Using Four Anchors
For the localization experimental tests, the setup described in the Appendix A was used. In this case, where only position estimation was addressed (no speed estimation), the results were compared with the previous results obtained with the algorithm proposed in [32]. In order to highlight the differences between the two estimators, the tests were named as shown in Table 1.
Table 1
Experimental tests for the localization without speed estimation.
Test Name
Estimation Algorithm
Test 1
The one already proposed in [32].
Test 2
Localization without accelerometers as in Equation (8).
In particular, the reference motion of the point P, corresponding to the onboard mobile anchor, is that depicted in Figure 2. This motion occurs in a scenario in which four fixed anchors are placed in positions , , , and , referred to a conventional Cartesian reference frame. The distances are measured at a frequency rate of 12 Hz from the onboard mobile anchor and these four fixed anchors .
Figure 2
Placement of the anchors in the reference frame.
These measured distances represent the components of the distances vector applied as input to the closed loop localization scheme of Figure 1. In this localization scheme, the measured distances are staircase waveforms, whereas the feedback distances are continuous, and then differentiable waveforms, which track, on average, the input distance vector components.The parameters of the localization scheme are and . The components of the closed-loop localization scheme output vector, i.e., the coordinates of the point P, are given in Figure 3 together with the components of the reference trajectory of P during the motion. In the same figure, the corresponding tracking errors for both Test 1 and Test 2 are given together with a zoom relative to the initial transient. For both Test 1 and Test 2, the measured distances are reported in Figure 4 in black color. Examination of these figures shows that the new closed loop localization scheme is able to estimate the components of the point P with an error that, after a transient, presents a maximum value of 15 cm. The estimated position error for the new algorithm Test 2, obtained without the use of acceleration measurement, appears to be a little bit noisier than the one obtained with the previous localization algorithm Test 1. The estimated distances for both tests are given in Figure 4. Note that, from Figure 4, it is evident that the two algorithms produce almost the same output and for this reason there is an overlap between the two waveforms (Test 1 and Test 2).
Figure 3
References, estimated coordinates of P, and corresponding norm-2 error in Test 1 and Test 2.
Figure 4
Measured and estimated distances in Test 1 and Test 2.
In Table 2, the mean value and the variance of the norm of the position estimation error for both Test 1 and Test 2 are reported. Data in Table 1 highlight that mean and variance of the errors relative to Test 2 are greater than those in Test 1. This confirms that using the differentiator instead of the acceleration measurements leads to a small loss of performance which, in turn, is insignificant with respect to the advantage connected to the elimination of the accelerometer itself.
Table 2
Mean value and variance of the position estimation error in Test 1 and Test 2.
Mean Value [m]
Variance [m2]
Test 1
0.045
0.00910
Test 2
0.053
0.01187
Note that when the accelerometer is removed from the observer scheme, the algorithm workload is a little bit higher because of the additional computational power needed to implement the differentiator. However, the removal of the accelerometer gives some advantages. In fact, even if accelerometers are very common and not expensive, they are generally affected by systematic errors given by imprecise scaling factors, axes misalignments, non-uniform cross-axis sensitivities, non-zero biases, and temperature dependence that decrease accuracy in the measurements. For these reasons, a system that makes use of accelerometers needs to be initialized with a calibration procedure before use.
3. Velocity Estimation
In order to obtain information about the velocity of P, a Kalman–Bucy filter is designed with the aim of obtaining the state estimation of the model, i.e., the position and velocity of P.The strap-down model is given by:
where is the acceleration vector, and are the position and velocity vectors, and is the output vector. The state space model corresponding to (13)–(15) is given by:
where is the state vector, and the matrices appearing in (16)–(17) are given by:
where and are the null and identity matrices. It easy to verify that model (16)–(17) is observable and, consequently, it is possible to employ an observer to obtain the state variables. Due to the linearity of the model (16)–(17) and taking into account that the acceleration, measured by the accelerometers, is affected by a large amount of noise, it is convenient to design a continuous-time Kalman–Bucy filter (KBF) estimator. Moreover, a particle filter is considered for comparison reasons.With regard to the velocity estimation, three different implementation schemes were considered, as reported in Table 3. In all the three schemes, it is assumed that the position estimation is that given by the localization scheme of Figure 1. In particular, in Figure 5, a Kalman–Bucy filter is added to the localization scheme of Figure 1 with the aim of obtaining the velocity estimation. In Figure 6, the estimated velocity is used for estimating without the use of the differentiator. In Figure 7, a particle filter is used instead of the Kalman–Bucy filter together with the differentiator.
Table 3
Experimental tests for the localization with speed estimation.
Test Name
Estimation Algorithm
Test 3
Differentiator and Kalman–Bucy filter (cf. Figure 5).
Test 4
Estimation of q^˙ by Kalman–Bucy filter (cf. Figure 6).
Test 5
Differentiator and particle filter (cf. Figure 7).
Figure 5
Test 3 estimator scheme with Kalman filter and differentiator.
Figure 6
Test 4 estimator scheme with Kalman filter and velocity feedback.
Figure 7
Test 5 estimator scheme with particle filter and differentiator.
3.1. Kalman–Bucy Filter
In order to design the KBF corresponding to the acceleration model, it is necessary to associate with the deterministic model (16)–(17) a stochastic model which takes into account the noise generated by the accelerometer together with the true acceleration and the measurement noise at the output of the localization scheme . Then, the stochastic model of the accelerometer is given by:
where and are uncorrelated Gaussian white noises, is the true acceleration, and is the output, having, respectively, covariance matrices and . The optimal KBF estimator is therefore given by:
where and is the covariance matrix of the estimation error given by , which is the solution of the following Riccati equation:
corresponding to .To better clarify how the Kalman–Bucy filter is implemented for the velocity estimation, in Figure 8, the corresponding block diagram is reported.
Figure 8
Kalman–Bucy filter block scheme.
In this way, the localization is performed without using the accelerometers, whereas the velocity estimation requires to employ the signals generated by the accelerometers and a Kalman–Bucy filter. Now, it is interesting to evaluate the use of the estimated velocity for determining the feedback variable , with the aim of eliminating the differentiator.Observing (4), it is possible to obtain an estimation of starting from the estimation of given by the Kalman–Bucy filter. Obviously, this approach should imply the use of the accelerometer signals also for the localization of the point P. It is assumed to again use the position estimated by means of the localization system for obtaining the feedback distance vector .
3.2. Particle Filter as Alternative to the Kalman–Bucy Filter
In this subsection, the opportunity of using a particle filter instead of a Kalman–Bucy filter is evaluated for velocity estimation of the point P. The particle filter is tuned according to the discrete-time model associated with the strap-down model given by (13) and (14). This model is obtained by integrating Equation (14) and, successively, Equation (13) from to t, starting from the initial conditions and , and assuming , and for . Then, the discrete-time model is obtained, placing and where . The model in question is represented as follows [24]:
where , with the true acceleration and the superimposed accelerometer noise, andPlacing , the covariance matrix is given by:
where and , , and are standard deviations of the accelerometer noise along the axes (x, y, and z).The particle filter considered here is shown in [36] (the one available in the MATLAB environment). It requires the deterministic discrete-time plant model (22)–(23) without noises and , and with instead of , and the construction of two functions, the state transition and the likelihood function.The state transition function computes a matrix where is the particles number, and the jth column is the state value corresponding to the jth particle. The likelihood function computes the likelihood of each particle, starting from the output error given by the difference of the measured output and the output computed with the state associated to the particle itself. The output is then computed starting from the state of the particle having the maximum likelihood.
3.3. Experimental Results for the Velocity Estimation Schemes
To properly design the KBF it is necessary to obtain the covariance matrices and . To determine , the following procedure is performed. The three components of the acceleration vector, referred to in the conventional frame of Figure 2 and acquired during the experiment described in the previous section, are passed offline through three anticausal filters in order to split each acceleration component into the true acceleration and the noise signal superimposed to them. The anticausal filters are based on a continuous-time third-order Butterworth filter, having different bandwidths so that the mean value of the three noise signals is almost the same and is as low as possible. Then, the three matrix elements of , chosen diagonal, are computed as the covariances of the above noise signals. The covariance matrix, computed assuming the three elements of equal to the maximum value of the covariance along the three axes, is given by . The covariance matrix is chosen equal to .To design the particle filter, the distribution function is assumed Gaussian with a null mean and covariance , and the particle number is assumed to be . The first three components of the covariance vector represent the covariances of the position component of P, whereas the remaining three components represent the covariances of the three acceleration components. The sample time is that corresponding to the frequency of 100 Hz, as in the previous experimental results.In Figure 9, the estimated position, relative to Test 3, 4 and 5, is reported while the experimental results relative to the velocity estimation are given in Figure 10. Examination of this figure shows that the KBF is able to give an acceptable estimation of the velocity of point P in both cases of presence of the differentiator (cf. Figure 5), and direct feedback of the estimated velocity (cf. Figure 6). Instead, the particle filter is not able to estimate the velocity of P or considerably increase the number of particles. Examination of this figure shows that the effects of the velocity feedback on the localization are those of introducing noise in the estimated position of P together with a variation of the mean value of the estimation error and its variance, as is confirmed by Table 4. On the other end, even if the particle filter is able to reproduce the position with an acceptable mean error (greater than the one obtained using the KBF), the variance is four times higher.
Figure 9
References, estimated coordinates of P, and corresponding norm-2 error in Test 3, 4 and Test 5.
Figure 10
References, estimated velocities , and corresponding norm-2 error in Test 3, 4 and Test 5.
Table 4
Mean value and variance of the position estimation error in Test 3, Test 4, and Test 5.
Error Mean Value [m]
Error Variance [m2]
Test 3
0.045
0.00911
Test 4
0.053
0.01187
Test 5
0.064
0.04008
Finally, in Figure 11, the norm of the distance estimation error is shown for Test 3 and 4. It appears that results from Test 4 present a better performance in terms of mean value and variance with respect to the one in Test 3.
Figure 11
Norm of the distance estimation error for Test 3 and Test 4.
In conclusion, from the experimental tests, it is possible to affirm that the best results are obtained using the differentiator and the Kalman–Bucy filter for velocity estimation, as shown in Figure 5, Test 3. In fact, this structure allows to obtain, especially in the position estimation task, a lower mean and variance for the position estimation error (see Table 4) while it behaves in a similar way to Test 4 and Test 5 for the velocity estimation (see Table 5). Alternatively, it is possible to use the Kalman–Bucy filter alone, and feed back the velocity estimated by the filter, avoiding the use of the differentiator, accepting an increasing of the mean value and the variance of the position estimation error. The scheme with the particle filter, Test 5, is instead to be excluded because in both cases (position and speed estimation) it behaves worse than the other two solutions proposed in Test 3 and Test 4.
Table 5
Mean value and variance of the speed estimation error in Test 3, Test 4, and Test 5.
Error Mean Value [m]
Error Variance [m2]
Test 3
0.125
0.04860
Test 4
0.125
0.04877
Test 5
0.198
0.20147
4. Conclusions
In this work, a novel observer for a range-based localization system is proposed for applications in environments where the GPS fails. Two aspects were developed. Firstly, a closed-loop localization scheme, which uses the measured distances as input variable, was designed. Secondly, a Kalman–Bucy filter was used to estimate the velocity components of P, and it was compared with the particle filter. Experimental results show the effectiveness of the proposed localization scheme. In particular, it was shown that it is possible to approximate the first derivatives of the distances by using a suitable developed differentiator. This leads to a slightly noisier estimate, but allows to eliminate the accelerometer and all problems connected to it. Moreover, the Kalman–Bucy filter results as the best-performing filter for estimating the velocity of point P, compared with the particle filter. Finally, it was shown that the velocity estimated by the Kalman–Bucy filter can be fed back to estimate the derivative of the distance vector, avoiding the use of a differentiator to implement the proposed localization algorithm.
Authors: Nabil Shaukat; Ahmed Ali; Muhammad Javed Iqbal; Muhammad Moinuddin; Pablo Otero Journal: Sensors (Basel) Date: 2021-02-06 Impact factor: 3.576