1. Introduction
Positional assurance is an imperative and heavily researched area within unmanned robotic systems and technology [
1]. The ability to precisely estimate a robot position, or for the robot to be capable of localising itself within the environment, is a vital topic to consider prior to the integration of such autonomous systems into modern day operations [
2]. The ability to assess the effectiveness of such a system is a direct requirement for Beyond Visual Line Of Sight (BVLOS) operation [
3]. BVLOS is usually considered at ranges greater at 500 m. However, BVLOS operation may also be considered within short range, enclosed cluttered environments involving buildings or obstructions and/or where transitions between indoor and outdoor environments may occur [
4]. A traditional and well-documented technique commonly deployed for this purpose is Global Navigation Satellite Systems (GNSS) [
5,
6,
7]. However, GNSS experiences shortcomings in certain environments such as mountainous terrains and urban areas, where an agglomeration of tall structures can cause loss of signal or multi-path effects. Many other techniques have been implemented with the aim to estimate the state of a mobile robot, notable implementations include the deployment of vision-based techniques such as monocular and stereo visual odometry systems, where the former is usually accompanied with an additional sensor to scale the output [
8]. Other implementations also include odometry estimation through acoustic, dead reckoning and laser odometry, where scan matching algorithms are used to estimate the motion of the robot through 2D feature tracking [
2]. Different categories of sensors all function using differing variable measurements and measurement methods, therefore the performance of each category of sensor is also dissimilar depending upon external factors, such as environments and operating conditions [
2].
State estimation systems such as the Kalman Filter (KF) and its many variants represent a common implementation of recursive state estimation systems [
2,
9]. These systems estimate an updated state based upon a kinematic model of the system, measurement inputs and measurement variance. The main aspect to consider within sensor performance in robotics is the issue of variance. Variance is a critical element of robotics and is generally affected by factors such as unpredictable environments, accumulated variance and inaccurate mathematical system modelling [
9]. Therefore, it is common practice to integrate multiple sources of information in an attempt to compliment the errors and uncertainties of each source of information [
2,
10]. This area of robotics is known as sensor fusion, where data acquired from multiple sensors is fused within state estimation algorithms such as the Kalman Filter and its many variants for both linear and nonlinear system models. The Kalman Filter takes into account the variance metric in the form of a covariance matrix for all sources of information that is channelled into the filter. For this work, the variance metric for an Ultra-Wide-Band (UWB) localisation system is assessed. A challenge in the formulation of state estimation systems is the calculation or experimental determination of sensor variance.
As demonstrated in previous work, the use of a Robotic Total Station allows for a significantly more accurate means of empirical modelling of the sensor measurement variance of localisation systems [
11]. From this, an effective EKF system was designed and shown to function well in its intended environment in comparison to the raw UWB positioning algorithm [
11]. However, under circumstances where the UWB antenna placement is non-ideal, the variance of the measurements will suffer, therefore decreasing the effectiveness of the conventional EKF. Modelling the variance of a sensor as a transient variable rather than constant enables a more representative variance to be obtained, by taking into account the changing nature of the sensor measurement variance. This variable may be a function of environmental factors, a component of the agents state or range to the UWB anchor node. In conventional terms, the sensor measurement variance is defined as a constant either as a whole or for discrete dimensions [
9]. This may be termed a generalised variance as it is invariant to changes in the environment and represents the general variance of the sensor. The work conducted in this paper presents the development of a model-based variance that is represented as a function of UWB rover-anchor node range. As the rover position varies, the variance of the UWB sensor network will shift in response to a change in UWB range [
12]. This methodology is empirically verified against the previously formulated EKF in a simulated scenario, and a more challenging environment than previously used.
1.1. Ultra Wide-Band Positioning
The method of operation of the UWB system has been described variously in previous works [
11,
13,
14]. For the purposes of the study presented in this paper, a UWB localisation system known as Pozyx is deployed. The Pozyx is a low cost UWB sensor network which deploys the Time of Flight (TOF) range measurement technique, where a mobile tag receives range measurements from anchors with known locations scattered in an environment [
15]. Localisation from the Pozyx is accomplished through a lateration (three anchors) or multi-lateration (>3 anchors) process which is solved using a linear least squares (LLS) implementation [
9].
As described in the previous work, the variance of the UWB range measurement may be characterised using an adequate Cartesian ground truth from which the actual anchor-rover node range may be calculated. However, the variance is not static, but in fact varies as a function of several environmental variables, such as background Radio Frequency (RF) variance and the materials and structures present [
16]. Most importantly, the measurement variance may alter as a function of the range between the anchor and rover nodes as well as their relative pose. These factors have been observed independently in works investigating the implementation of UWB systems [
14,
16,
17]. Other sources of error present in the UWB range measurements may be a result of manufacturing imperfections in the antenna, board, or due to poor power supply methods. This second set of conditions are node specific, therefore a degree of node specificity is implied when characterising the variance of UWB range measurements. One may therefore define the variance of a UWB localisation network in several ways. A “Generalised” implementation is that which was previously used, whereby the variance is characterised as a constant value specific to the environment and equipment, to be used in the sensor measurement variance. Another implementation is a “Specified” definition, where each anchor-rover node pair has its own associated variance, this method requires rigorous variance characterisation of every possible combination anchor-rover node pair. One alternative implementation is to identify a specific variable which is to have a dominant effect in the variance of the range measurements actively. This may be termed a “model based” variance, where a model is constructed, which may be used to predict the variance of the range measurements based upon a measurable variable. It was previously demonstrated that the relative orientation condition of the rover-anchor node pair has a definite effect upon the range error produced by the UWB system [
13].
1.2. Robotic Total Station (RTS)
The RTS has been previously demonstrated as both an effective ground truth for the assessment of accuracy of state estimation systems, and also as a means of characterising the sensor variance variance [
11]. These characterisation methods were used to generate a feasible sensor measurement variance for use in a EKF. In this work, the RTS is again used as a means of charactering the sensors used in an EKF; however, the RTS linked UWB measurements are used to generate a more in-depth description of the UWB variance.
1.3. Recursive State Estimation
Probabilistic robotic state estimation is defined as a process which computes belief distributions using a system motion model over possible states provided by measurements from on-board sensors, where this process is recursively operated. The family of Kalman Filters is an example of recursive state estimation processes. In mobile robotics applications, the KF uses a motion model of a system to allow for the time prediction of the system states when no sensor measurements are available, only linear or close to linear systems may be modelled using the KF. This also applies to the measurement model, therefore, even when applied to a linear motion model, a KF may be ineffective if the measurement model displays nonlinear behaviour. The nonlinearities of a system may be accounted for through the deployment of an EKF. The EKF implementation for a differential drive Unmanned Ground Vehicle (UGV) is described and demonstrated in our previous work. The system is again formulated as a range-based localisation problem. An overview of the algorithm may be seen below in pseudo code form. For the purposes of this study to allow for more robust comparison, a modified version of the demonstrated EKF used in a past study is implemented.
1.4. Sensor Measurement Variance
There are two main sensor measurement variance approaches currently in use. Firstly, in the case of conventional state estimation systems, using the extended Kalman filter form, a static variance value is used to define the measurement variance of a sensor [
2]. The measurement variance may be different depending upon the dimension of the measurement for multi-dimensional sensing equipment such as accelerometer; however, the value will remain fixed.
Secondly, in many cases, the sensor measurement variance may vary during operation [
6,
18], which the system may not be capable of compensating for. In these circumstances, a proposed system defined as an “Adaptive” Kalman Filter (AKF) may be employed [
19]. While there exist several other methods for actively varying the sensor measurement variance value such as the “Cuberature Kalman Filter”, the Adaptive is the most commonly employed in this formulation [
18]. This state estimation system formulation records the sensor measurements and calculates the variance; this is then used as the sensor measurement variance [
19]. Examples of this technique are the “ecl” EKF employed by the “Pixhawk 2.1” Multirotor flight controller [
20]. This flight controller employs GNSS for positional stabilisation and navigation of multirotor airborne systems [
20]. In this case, the sensor measurement variance of GNSS is a function of several variables including but not limited to the local RF environment, planetary, and solar weather [
21]. These variables are difficult to monitor and predict with any accuracy, and can potentially lead to a high variation in the efficacy of the GNSS data [
22]. By actively monitoring the variance of the GNSS, the expected variance can be reasonably assessed [
19].
While the AKF sensor measurement Noise (SMN) will allow the tracking of variations in variance, it lacks the ground truth to show the global measurement variance mean. The SMN calculated by the AKF assumes a zero mean and is therefore highly dependent upon the number of samples collected.
1.5. Model-Based Sensor Measurement Variance
In conventional state estimation systems, a generalised, static sensor measurement variance may be used to approximate the expected sensor variance. However, for sensors sensitive to factors expected to vary during operation, such as range or environments like the Pozyx UWB system, this method may be unreliable. In this particular case, the variance has been shown to measurably vary over ranges of 40 m. For applications such as airborne platforms or ground rovers whose operation range is often on the same order of magnitude, a mitigation strategy is required.
Model based temperature compensation for the bias in Inertial Measurement Units (IMUs) has been implemented in systems such as those used by the Pixhawk flight controller; however, empirical studies of the sensor measurement variance are lacking for cases of deployed sensors. Previous investigations have shown that the generalised variance of the system exhibits a correlation between the range of the anchor node and the ranging node; this is corroborated by work completed by [
9].
As previously described, although UWB positioning systems allow for improved localisation, the measurement accuracy varies widely depending upon a number of factors including range, environment and relative pose. One main factor in the variance of a UWB system is the relative pose between the anchor node and the rover node.This manifests itself in both less accurate readings and more frequent failed range measurements also known as dropouts. As the sensor measurement variance is now a function of the range and pose of the rover and reference anchor, it is now also dependent upon the state vector. As the SMN is related in a nonlinear way to the state vector, the SMN must be taken as non-additive rather than additive as before.
2. System Formulation
The process shown in Algorithm 1 outlines the operating flow of a generic EKF previously demonstrated to be sufficient in tracking a rover under ideal conditions. The initial stage defined as the Prediction shows how the future state is predicted ahead based on the motion model, the previous state and the most recent control input. It also shows the calculation of the state and control input Jacobians which are a result of the first order Taylor expansion process the EKF employs in order to approximate the linearization of the nonlinear motion model. The correction stage of the estimator seeks then to calculate a posterior state conditioned on a set of external sensor observations. This is achieved by mapping the state through a measurement model in order to calculate a measurement residual, which is then used as a weighting factor in the final calculation of the posterior state estimation.
An important aspect of this paper is to understand how the generalised range based EKF localisation algorithm in Algorithm 1 differs to that shown in Algorithm 2. Algorithm 2 contains the customised range based EKF which is the method implemented for state estimation in this paper. The underlying difference between Algorithm 1 and 2 is how the external sensor measurement variance R is incorporated. The traditional approach includes setting R to be a constant value throughout the cycle of the algorithm, as shown in Algorithm 1. However, the model based variant designed for this paper re-calculates R for each iteration of the EKF using a model that describes the variance of the external UWB range measurement. This can be seen at Step 9 in Algorithm 2. The main aim of this work is the formulation of the variance function V, and its incorporation into the filter system. In the following formulation sections, values denoted with ‘^’ and ‘’ represent estimated parameters and priori estimates, respectively. A priori estimate is defined as a predicted value prior to the integration of the measurement update.
Algorithm 1: Conventional range EKF |
1: Prediction: 2: 3: 4: 5: 6: Correction: 7: 8: 9: 10: 11: 12: if measurement_is_available then 13: do Correction else 14: do Prediction |
Algorithm 2: Model based range EKF |
1: Prediction: 2: 3: 4: 5: 6: Correction: 7: 8: 9: 10: 11: 12: 13: if measurement_is_available then 14: do Correction else 15: do Prediction |
2.1. Motion Model
For the motion model of this system, the previously implemented EKF is sufficient as the testing platform is different and the kinematics are the same, a fixed axle, and a differential drive rover [
11]. The state vector containing the estimated states is represented as
, representing the UGV position and heading. The state transition function may be seen below. Where the previous state
is passed with
representing the control inputs from the on board IMU
and wheel encoders
,
2.2. Measurement Model
The observed sensor measurements collected from UWB devices are range measurements representing the Euclidean distances between the static reference anchors
and the tag that is mounted to the rover. For each measurement update, the six anchors provide a range estimate,
, which is then represented in the measurement function
h below. Under many operating conditions, signal dropouts caused by longer ranges or non-clear line of sight (NCLOS) scenarios would necessitate that fewer anchors be used to perform the calculation. In the course of our investigation, due to the experimental environment, this was very rare. Variance within the measurements is represented by the variance
R.
and
represent the Cartesian coordinated for anchor
n, while
and
represent the priori estimate of the UGV x and y position.
and the Jacobian of the measurement model is obtained as:
The EKF uses the first-order Taylor expansion to linearly approximate the nonlinear state transition and measurement models. The Jacobian matrices and their inverse (used within the state transition and the measurement models) were generated symbolically using the MATLAB Symbolic toolbox (R2018a, Mathworks, Natick, MA, USA) prior to implementation. The three Jacobian matrices were then solved numerically upon each iteration of the filter. The filter was then run offline.
The content produced in
Section 2 presented the aspects of process that both Algorithm 1 and Algorithm 2 had in common. This included the formulation of the motion and measurement models and all Jacobian matrices. However, the following section now presents the methodological approach that was carried out in order to acquire the model based variance function used to re-calculate the measurement variance value
R through a set of characterisation procedures.
The system assumes the rover and UWB anchor nodes to be on the same plane, with the UGV operating with 3 Degrees Of Freedom (DOF) in a 2D plane. The cosine error incurred by this assumption was found to be nominally 3 cm. From our previous investigation, we know that the expected UWB ranging error may be an order of magnitude greater, therefore the assumption made was considered appropriate.