Relative Ultra-Wideband Based Localization of Multi-Robot Systems With Kinematic Extended Kalman Filter

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

Relative ultra-wideband based localization of multi-robot systems with

kinematic extended Kalman filter


Salma Ichekhlef, Étienne Villemure, Shokoufeh Naderi, François Ferland and Maude Blondin

Abstract— Localization plays a critical role in the field of Relative localization has recently gained more attention
distributed swarm robotics. Previous work has highlighted the in high-speed, low-power wireless communications due to
potential of relative localization for position tracking in multi- the fine temporal resolution of ultra-wideband (UWB) radio
robot systems. Ultra-wideband (UWB) technology provides a
good estimation of the relative position between robots but technology, and it can provide good accuracy in relative
suffers from some limitations. This paper proposes improving location estimation, and tracking [6]. Moreover, UWB tech-
the relative localization functionality developed in our previous nology is based on operator-free sending and receiving of
work, which is based on UWB technology. Our new approach radio pulses using extremely-precise timing.
merges UWB telemetry and kinematic model into an extended There are several techniques for measuring telemetry
Kalman filter to properly track the relative position of robots.
We performed a simulation and validated the improvements in UWB, providing distances or relative angles between robots:
relative distance and angle accuracy for the proposed approach. • Time of Arrival (ToA);
An additional analysis was conducted to observe the increase • Time Difference of Arrival (TDoA);
in performance when the robots share their control inputs.
• Time of Flight (ToF);
• Angle of Arrival or Phase Difference of Arrival (PDoA);

I. INTRODUCTION • Received Signal Strength Indication (RSSI).

Swarm robotics orchestrated with swarm intelligence re- A review of these techniques shows they suffer from
quires high coordination, cooperation, and collaboration of problems such as reflections, multipath, and non-line-of-sight
multi-robot systems to perform specific tasks [1]. In this per- measurements (NLOS) [7]. For this reason, combining the
spective, robot localization represents a significant problem UWB technique with a state estimator is essential to achieve
to be solved, requiring first a powerful self-estimation of better performance.
the location of each robot and second, a knowledge of the In addition, an often used algorithm for sensor estima-
relative position of other robots [2]. tion are based on the Kalman filter, which provides real-
The concept of localization encompasses two main as- time updates of a linear system’s position. A more optimal
pects [3]: absolute and relative localization. Absolute local- solution for nonlinear systems is the extended Kalman filter
ization describes the position of robots in a global coordinate (EKF) [2], [6].
frame; in other words, it allows positioning based on a fixed In this paper, we propose improving the relative local-
point. Relative localization, on the other hand, is concerned ization accuracy of multi-robot systems. To do so, we first
with the localization of the relative configurations of mobile measure the relative distance and orientation angle between
robots in relation to other robots or landmarks and does mobile robots measured from the two UWB telemetry mea-
not have a fixed reference. The Global Positioning System surement techniques of ToF and PDoA, respectively. Then,
(GPS) represents a typical solution that can perform both we merge the different information obtained from these two
classes of localization (absolute and relative) [4]. However, techniques using EKF. The main contributions of this paper
this solution has several limitations, and it only works are :
in environments with GPS reception, such as indoor and 1) The EKF uses the kinematic model of robots as op-
submarine deployments [5]. posed to most of the other works that use the dynamic
Indeed, for multi-robot systems performing swarm model. As a result, it eliminates the need to provide the
robotics tasks, relative localization plays a crucial role in robots’ mass and moment of inertia to the estimator.
tracking a robot’s self, and other robots’ positions [3]. This 2) An analysis of the performance degradation of the
localization concept is a critical operation that must be well proposed EKF when it receives information from other
mastered in complex environments featuring inaccurate and robots at a lower frequency than the estimator’s fre-
contaminated data. Therefore, it is necessary to find an error- quency. This analyses the sensitivity of the system to
tolerant solution to improve the accuracy, precision, and communication degradation.
robustness of relative localization. The remainder of this paper is organized as follows: Sect.
All authors are with the Department of Electrical Engineering and II presents the related work. Sect. III focuses on the relative
Computer Engineering of the Université de Sherbrooke (2500 boule- position estimation approach, beginning with the problem
vard de l’Université, Sherbrooke, Québec (Canada), J1K-2R1). F. Fer- statement and the description of the system model. Then,
land and M. Blondin are IEEE members. Contacts for the authors:
{Etienne.Villemure, Salma.Ichekhlef, Shokoufeh.Naderi, Francois.Ferland, we detail the UWB-based relative localization method and
and Maude.Blondin2}@usherbrooke.ca. the kinematic model used in the EKF. The simulation results

This work has been submitted to the IEEE for possible publication. Copyright may be transferred without notice, after which this version may no longer
be accessible.
to validate the proposed approach are conducted in Sect. IV.
Finally, the conclusion and future work are given in Sect. V.
II. RELATED WORK
Multi-robot localization is often based on maps and/or
landmarks to generate a global coordinate system [8]. Ku-
razume et al. [9] proposed a ”cooperative positioning with
multiple robots” method that divides robots into two groups,
one of which remains stationary to serve as a temporary Fig. 1. Three Beeboards assembly with antennas separated by 2.7 cm
landmark for the other group and vice versa until reaching
the target. However, this method does not allow all robots to
move simultaneously. Without preventing the simultaneous
movement of robots, Howard et al. [10] developed an ap-
proach that allows each robot to estimate the relative position
of all nearby robots and broadcast these positions to all
other robots. Robots generate an egocentric estimate of other
robots’ positions using Bayesian formalism and a particle
filter. However, using a particle filter generally requires more
computational power compared to the Kalman filter.
The use of the Kalman filter appears in [2], [11], which
allows merging the position measurements of continuously
moving robots with relative localization information from
other robots to locate them more accurately. However, the
first approach uses lidar and wheel odometry and the second
approach uses wheel odometry only. Those are different
position measurement technologies compared to UWB-based
telemetry that provides good accuracy in relative position
estimation and tracking [6].
The use of UWB telemetry is presented in [5], [12] in Fig. 2. PDOA measured angles as the function of the real relative angle
combination with a particle filter. An approach very similar for the three antenna pairs
to ours is developed in [13] with additional sensors like
an altimeter and a camera. However, our method differs
by removing those mentioned sensors and with a reduced of Beeboard that can be formed with three UWB nodes.
number of UWB nodes, thus saving costs. Sequentially, one phase difference is measured, an angle
of arrival per pair of antennas is then computed, and an
III. RELATIVE LOCALIZATION estimated relative angle is produced for each pair before
To formulate the relative localization problem, we use the fusing them into a single angle measurement.
SwarmUS platform [14] that suffers from inaccuracies issues An example of the angles computed from each phase for
that could be improved with the proposed approach. each pair in the function of the real angle can be found
at (Fig. 2). In this plot, 100 samples have been measured
A. System description every 3.66◦ of the real angle from a Beeboard assembly on a
The SwarmUS platform [14] is an embedded system that rotating testbench while measuring a still Beeboard assembly
can be installed on robots to allow them to coordinate and two meters away without any obstructions. It can be observed
communicate between themselves. In addition to the main that the dispersion of the samples around -90◦ and 90◦ are
electronic board, called the Hiveboard, an assembly of three larger and some wrapping between those two extremities can
smaller boards (Fig. 1), called the Beeboards, can be added occur, like shown around 125◦ and 260◦ in (Fig. 2). Those
to a Hiveboard. Those Beeboards are UWB nodes that use dispersions and wrapping create ambiguities in those areas
the Decawave DW-1000 integrated circuit and have their and are a significant cause of inaccuracies in the system. It
own UWB antennas. They allow Hiveboards equipped with emphasizes furthermore the need for an additional modality
those assemblies to measure the relative distance and angle to estimate the real angle.
between each other. Our proposed approach relies on the same TWR and PDoA
The SwarmUS platform computes the relative distance techniques, but with an EKF as an additional state estimator.
using a two-way ranging (TWR) technique where three EKF allows the fusion of the information provided by the
timestamped messages are exchanged between two robots. three UWB nodes and the kinematics of the system in order
The distance is then computed from the time of flight to provide a relative position closer to reality. We reduce
measured from the timestamped messages. The relative angle the problem to a system with two moving robots (Fig. 3).
is computed using PDoA from the three different pairs For convenience, the estimator is running on robot A and is
tracking robot B. Each robot is equipped with three UWB follows:  A   N 
nodes to provide telemetry measurements from the other xB,k xB,k
A  A N 
robot, an inertial measurement unit (IMU) to describe its  yB,k = TN,k ×  yB,k , (2)
angular velocity, and wheel encoders to measure its linear 1 1
velocity.  
cos φA sin φA −xA cos φA − yA sin φA
As shown in Fig. 3, Rrel is the relative distance between
the two robots. θA and θB are the orientation angles of robot TNA = − sin φA cos φA xA sin φA − yA cos φA  ,
0 0 1
A with respect to robot B and robot B with respect to robot A,
(3)
respectively. Thus, φA and φB represent the rotation angles
where TNA represents the transformation matrix from the RN
of the reference frame RA connected to robot A and the
frame to the RA frame.
reference frame RB connected to robot B with respect to
From Fig. 2, (1), and (2), the relative position is estimated
the absolute reference frame RN , respectively.
at each time k as follows:
In this paper, we perform relative localization (estimation q
of Rrel and θA ) in 2 dimensions (2D) and assume that the Rrel,k = (xN N 2 N N
A,k − xB,k ) + (yA,k − yB,k ) ,
2 (4)
three Beeboards antennas are placed in the center of each
robot and that the angular and linear velocities are perfect A
θA,k = arctan 2 (yB,k A
, yB,k ) (5)
and synchronized.
The kinematic model developed from equations (1) to (5)
will be used to derive the estimator’s equations but will also
B. Problem formulation serve as the ground truth during the validation process to
To improve the accuracy of the relative localization, we compare the different algorithms.
introduce an EKF that fuses the telemetry measurements Since states of another robot relative to robot A appear in
received from the three UWB nodes by integrating the equations (4) and (5), those states must be shared with the
kinematic described by the IMU and the robot’s odometry. robot running the estimator. They can be communicated by
radio like the one used on the SwarmUS platform.
A kinematic model is used instead of a dynamic one to
However, an increasing number of robots would lead
remove the need to provide the robots’ mass and moment of
to a bigger portion of the bandwidth being allocated to
inertia to the estimator’s model. Using a kinematic model
localization estimation. This emphasizes the observation in
simplifies the configuration of the system on physically-
our previous work [14] where increasing the number of
different robots.
robots reduces the available bandwidth of each robot for its
For each robot i ∈ {A, B}, we express its motion by the coordination and information sharing. Thus, the information
following equation: communicated by robot B might be transmitted at a lower
    frequency if the number of robots increases, the bandwidth
ẋi,k cos φi,k 0  
 ẏi,k  =  sin φi,k vi,k usage is high or the radio signals are degraded. From this
0 ×
 , (1)
φ̇i,k perspective, our method will treat two cases:
φ̇i,k 0 1
• Case 1: the EKF in robot A has access to information
from robot B using the communication channel of
where [xi,k yi,k φi,k ] represents the absolute position of
SwarmUS. Validation of the estimator with different
robot i at time k, and vi,k represents the linear velocity of
update frequencies from robot B will be analyzed.
robot i at time k.
• Case 2: only the information of the robot A running the
To find the equations of Rrel and θA , we express the
estimator is known. This will showcase if the estimator
coordinates [xA A
B,k yB,k ] of robot B in the RA frame as could afford to discard the communication bandwidth
altogether and obtain better performance than the orig-
inal algorithm.
C. Mathematical model of relative localization
We determine the expression for the time derivative of the
relative position of robot A with respect to robot B (Ṙrel
and θ̇A ). For simplicity, we model robot A and robot B by
points A and B, respectively (Fig. 4).
We begin by expressing the time derivative in the RN
−−→
frame of center O and base (→ −
ox , →

oy , →

oz ) of the vector AB
by its coordinates in the RA frame of center A and base
(−
a→ −
→ → −
x , ay , az ) (Fig. 3). According to Bour’s formula, we obtain
the following equation:
−−→ −−→
dAB dAB →
− −−→
Fig. 3. Presentation of the two-robot system = + Ω RA /RN ∩ AB , (6)
dt RN dt RA
From Fig. 3, we can see that:
θ B = θ A + φA − φB + π . (14)
From (13) and (14) we derive a simplified expression for
the time variation of the relative position:
(
θ̇A = −φ̇A + vB sin θBR+v A sin θA
rel . (15)
Ṙrel = −(vB cos θB + vA cos θA )
D. Description of the EKF formulation
Formulation of EKF: The state vector of our EKF
Fig. 4. Illustration of the relative location device describes the relative position of the two-robot system at
each time k and is denoted by Xk :
 T
with Xk = θA,k Rrel,k . (16)
(−−→
AB = Rrel cos θA − a→ −

x + Rrel sin θA ay At each time k, the three active Beeboard antennas of robot

− (7)
Ω RA /RN = φ̇A →

az , A allow us to calculate the ToF and the three PDoA [15]

− with respect to robot B. This information will constitute the
where Ω RA /RN represents the angular velocity of the RA measured outputs Yk of our EKF, such that:
frame relative to the RN frame.  T
Yk = θ1m ,k θ2m ,k θ3m ,k Rrelm ,k , (17)
−−→ −
a→ Ṙrel cos θA − Rrel θ̇A sin θA − Rrel φ̇A sin θA
dAB x where Rrelm ,k and θ1m ,k (i ∈ {1, 2, 3}) represent the relative
= a→

x Ṙrel sin θA + Rrel θ̇A cos θA + Rrel φ̇A cos θA distance between the two robots and the PDoA of the antenna
dtRN −
a→
x 0 pair i measured at time k, respectively.
(8) In addition, the information obtained from the IMU sen-
We also have: sors, the wheel’s odometry, and the relative orientation angle
−−→ −−→ −→
dAB dOB dOA estimated by the other robot θB are considered inputs to our
= − . (9) EKF. We denote it by a control vector Uk .
dt RN dt RA dt RA

−→ −
−→ The state transition and observation models (F (Xk , Uk )
We express the two time derivatives dOB dt RA and
dOA
dt RA and H(Xk ), respectively) of our system are nonlinear func-
at the base (−
a→ ,
x y

→, →
a −
a z ) by the following equations: tions of the state:
  

 −−→ vA cos φA Xk = F (Xk−1 , Uk ) + Wk , (18)
dOA A

 dt RA = RN ×  vA sin φA 

  


 0 Yk = H(Xk ) + Vk , (19)
  , (10)
 v A cos φ A

 − −→ where Wk and Vk are the process and observation noises.
dOB A
= RN ×  vA sin φA 

  
dt RA We assume that these noises are Gaussian with zero means



0

and covariances Q and Rk , respectively. Since each pair

cos φA − sin φA
 of antennas in the setup has a dispersion that depends on
A
RN = , (11) θA , the Rk matrix will change at each step in function of
sin φA cos φA
the estimated θA . The variance changes based on a lookup
A
where RN represents the rotation matrix from frame RN to table for each antenna pair containing standard deviations
frame RA . Thus, vA and vB are the linear velocities of robot computed from experimental data as in Fig. 2.
A and robot B, respectively. Prediction: In this step, the EKF estimates the expected
From
−−→
(9), (10), and (11), we obtain a second expression relative position X̂k|k−1 and error covariance Pk|k−1 :
of dAB
dt RN :
X̂k|k−1 = F (X̂k−1|k−1 , Uk ) , (20)
−−→ −
a→x vB cos φB − φA − vA
dAB
=−a→x vB sin φB − φA . (12)
dt RN −
a→ 0 Pk|k−1 = Fk Pk−1|k−1 FkT + Q , (21)
x

Then, we equalize the (8) and (12). After doing the where X̂k|k−1 and Pk|k−1 are the updates of the estimation
calculation, we obtain (13), which models the temporal of the state and error covariance at time k − 1, respectively.
variation of the relative position of robot A with respect to Thus, Fk is the transition Jacobian matrix.
robot B: Update: At this step, the EKF updates the relative position
estimate X̂k|k and the error covariance Pk|k :
(
θ̇A = −φ̇A − vB sin θA +φAR−φ B −vA sin θA
rel . (13)
Ṙrel = vB cos θA + φA − φB − vA cos θA X̂k|k = X̂k|k−1 + Kk (Yk − H X̂k|k−1 ) , (22)
and
Pk|k = (I − Hk Kk )Pk|k−1 ,
" #
(23) cos Xk−1 [1] − Uk [1]
Uk [1] sin Xk−1 [1]
Xk−1 [2] (X [2])2
Fk = I2 + ∆T k−1 .
Uk [1] sin Xk−1 [1] 0
−1 (32)
Kk = Pk|k−1 HkT (Hk Pk|k−1 HkT + Rk ) , (24)
For both cases, it must be noted that, since θA is a bearing
where Kk is the Kalman gain vector and Hk is the observa- angle, it wraps between 0◦ and 360◦ . Thus, the output of the
tion Jacobian matrix. prediction steps for the angle is reduced by modulo 360 to
As mentioned in the problem statement section, our properly take into account the wrap.
method will deal with two cases.
IV. SIMULATION AND RESULTS
Case 1: In this case, the control vector contains the
following entries: To validate the proposed approach, a Simulink model was
created to run the original system in parallel with the EKF
Uk = [vA,k φ̇A,k vB,k θB,k ]T , (25) model presented. They all estimate the relative distance and
angle of a moving robot B from a moving robot A. In this
where vA,k and vB,k are the velocities of robot A and robot B
section, we first describe the simulator, the performed tests,
at time k, respectively. φ̇A,k represents the rotational velocity
and their results.
of robot A at time k, and θB,k is the relative orientation angle
estimated at time k by robot B. A. Description of the simulator
From (15), (16), (18) and (25): The Simulink models simulate the kinematics of the
robots, the noisy measurements of the UWB nodes, the
F (Xk−1 , Uk ) = Xk−1 + (26)
" # process of the SwarmUS system to generate angles from
−Uk [2] + Uk [1] sin Xk−1 [1]+Uk [3] sin Uk [4]
Xk−1 [2] phases, and all the compared estimators. An overview of
∆T ,
−Uk [1] cos Xk−1 [1] − Uk [3] cos Uk [3] this simulator architecture is given in Fig. 5.
1) Robot physics systems: The blue blocks in Fig. 5
and simulate the physics of the robot based on the integration
Fk = I2 + (27) of (1) and compute the real relative distance and angle
" # between the two robots with (4) and (5). The inputs of those
Uk [1] Uk [1] sin Xk−1 [1]+Uk [3] sin Uk [4]
cos X [1] −
∆T X k−1 [2] k−1 (X k−1 [2])2
, blocks are predefined time series vectors of Uk . Those inputs
Uk [1] sin Xk−1 [1] 0 and the initial positions of the robots change the simulated
trajectories of the robot. They are defined in a Matlab script
where ∆T represents the duration between two successive based on scenarios that need to be tested.
states. 2) Measurement simulation of the UWB nodes: The yel-
From (16), (17), and (19), we have: low blocks in Fig. 5 simulates how the angles of arrival are
perceived by the UWB nodes. The main goal of this segment
 
A1,k Xk [1] + B1,k
A2,k Xk [1] + B2,k  is to add realistic noise to the measurements. For the distance,
H(Xk ) = A3,k Xk [1] + B3,k  ,
 (28) we inject a noise with a standard deviation of 3.43 cm, which
Xk [2] corresponds to our previous observations [14].
For the relative angle, we simulate what each UWB
where Ai,k and Bi,k (i ∈ {1, 2, 3}) represent the coefficients pair will measure as their angle of arrival by generating a
describing the calibration [15] curves between the actual random value from the normal distribution that characterized
rotation angle and PDoA of each antenna pair i. each pair at that real relative angle. Those distributions are
We also have: stored in a lookup table for each pair that contains non-zero
mean distributions from 0◦ to 360◦ . Those distributions were
 
A1,k 0
A2,k 0 computed from a dataset similar to the one shown in Fig. 2
H(k) =  A3,k 0 ,
 (29) with 100 samples every 3.66◦ with a Beeboard assembly on
0 1 a rotating test bench. The normality of the distribution was
validated with a Shapiro-Wilk normality test [15].
(28) and (29) are valid for both cases. 3) Emulation of the SwarmUS localization: The orange
Case 2: In this case, the control vector contains the blocks in Fig. 5 emulates the embedded code that runs inside
following entries: the SwarmUS hardware. This process contains the original
algorithm that we use for comparison to the EKFs. A detailed
Uk = [vA,k φ̇A,k ]T , (30)
description can be found in our documentation [15].
From (15), (16), (18) and (30), we have: The algorithm goes through four main steps after receiving
" # the angle of arrivals. First, for each pair a certainty value is
−Uk [2] + Uk [1]Xsin Xk−1 [1]
k−1 [2]
computed for each measured PDoA and we determine six
F (Xk−1 , Uk ) = Xk−1 + ∆T ,
−Uk [1] cos Xk−1 [1] possible relative angles generated from the two calibration
(31) slopes linked to each pair. The second step is to use the
Look-up table
[𝑣𝐴 , 𝜑𝐴 ] Robot A [𝑥𝐴 , 𝑦𝐴 , 𝜑𝐴 ] Angle noise 𝜃𝐴_𝑛𝑜𝑖𝑠𝑦
kinematic 𝜃𝐴_𝑟𝑒𝑎𝑙 calculator Antenna s α and
Kinematic 𝜃𝐴_𝑚𝑒𝑠 Φ certitude
measured θ
calculator calculation
Robot B 𝑅𝑟𝑒𝑙 _𝑟𝑒𝑎𝑙 Distance noise computation
[𝑣𝐵 , 𝜑𝐵 ] kinematic generator Certainty for
[𝑥𝐵 , 𝑦𝐵 , 𝜑𝐵 ]
each θ pair
Random Gaussian
noise Angle computation
based on slopes
Slope selection
Slope certainty
(best certainty)
𝜽𝑨_𝒆𝒔𝒕𝒊𝒎𝒂𝒕𝒆𝒅_𝒄𝒂𝒔𝒆𝟏 calculation
EKF
case 1

Are two Yes


Weighted sum of Robot physics system
pairs closed Measurement simulation
the closest pairs
EKF enough? 𝜽𝑨_𝒆𝒔𝒕𝒊𝒎𝒂𝒕𝒆𝒅_𝑺𝒘𝒂𝒓𝒎𝑼𝑺 of the UWB nodes
𝜽𝑨_𝒆𝒔𝒕𝒊𝒎𝒂𝒕𝒆𝒅_𝒄𝒂𝒔𝒆𝟐 case 2 No Weighted sum Emulation of localization
codes of SwarmUS
of all pairs Proposed solution

Fig. 5. Block diagram of the simulation

values of the three measured PDoAs with their certainty the maximum rate at which two robots in turn localize each
to calculate the certainty of each calibration slope (rising other using SwarmUS [14]. All the incoming inputs are then
and failling) for each antenna pair. In the third step, based fed at this same rate since the robots could also provide speed
on the different calculated certainties of each slope, we measurements at this frequency. Zero-hold blocks are used
reduce the six possible relative angles to three relative angles to simulate this behavior in Matlab.
by selecting angles related to the slopes with the highest Since the rate of the incoming information from the robot
certainty. The last step consists of combining the two closest in UK might change for Case 1, a down-sampled zero-hold
angles together if they are close enough or otherwise the block is used to simulate a lower data rate.
three estimated angles into one final angle. After estimating
the relative angle, we use an exponential moving average B. Performed tests
filter to eliminate the less significant fluctuations. This last The original solution and the proposed estimator were
angle is the output of the original algorithm. tested in different motion scenarios to cover a broad range
4) EKFs (proposed solutions): All the EKFs’ formu- of values for the θA and Rrel . For this purpose, 14 differ-
lations presented in section III-D are integrated into two ent motion scenarios combining different linear velocities,
Simulink’s EKF blocs shown in green in Fig. 5. Since angular velocities, acceleration, and initial positions have
Case 1’s EKF has a complete model of the system, it can been implemented creating motion from robots standing still
trust more its model compared to the incomplete model of to both spiraling around each other. For each scenario, 10
Case 2’s EKF. Thus, their Q matrix linked to their process simulations were run varying a parameter of its underlying
noise are two diagonal matrices with 10−6 and 10−3 terms, motion. To analyze the influence of the varying data rate
respectively. from robot B for Case 1, all those 140 simulations were run
Since the dispersion of the angles of arrival for each pair at different incoming frequencies of vB and θB . We set this
is known at a specified angle using the lookup table ,the R data rate to be the 28 Hz frequency used by the EKF divided
matrices of the EKF are adapted at each time iteration with by an integer going from 1 to 10. Thus the performance of
an estimated variance for all its measurements. The estimated the EKF will be analyzed when information from the robot
θA is used to consult the lookup table. comes at the full data rate of 28 Hz down to 2.8 Hz.
As shown in equation (28), the measurement process of The root-mean-square error (RMSE) is used as a perfor-
both EKFs needs the coefficients of the selected slopes to mance metric for all the estimated states against their ground
compute their outputs. Therefore, the selected slopes of the truth value for the relative distance and angle.
SwarmUS code are fed into the estimators.
TABLE I
Since we are interested in the steady state operation of the M EDIAN OF THE RMSE OF THE 140 SIMULATIONS ’ RESULTS
EKFs and not in the convergence phase of the filter, we set
the initial states of the EKFs to their real states. Estimation source Original Case 1 (fb Case 1 (fb Case 2
5) Timing and signal rate: The simulation lasts 20 s = 28Hz) = 2.8 Hz)
with a fixed time step of 1 ms which is approximately the Distance (m) 0.0324 0.0207 0.0399 0.0265
rate at which SwarmUS can process a UWB measurement. Angle (deg) 16.0422 1.8267 4.3997 15.8068
However, the EKFs are executing at a rate of 28 Hz which is
C. Simulation results
Boxplots of the RMSE of the distance and the angle for
the original system, the EKF of Case 1 with a data rate of the
robot at 28 Hz and 2.8 Hz, and the EKF of Case 2 are found
at Fig. 6 and Fig. 7, respectively. For clarity, the median of
those boxplots is presented in Table I.
A Wilcoxon signed-rank test was performed to verify if the
proposed approach differs significantly in performance with
the orignal system. The null hypothesis is that the median
of both distributions are similar. The p-values of those tests
performed between the original system and the EKFs for all
robot B’s data rates can be found in Table II. We use an
α = 0.05 to reject the null hypothesis.
A few observations can be made from Fig. 6, Fig. 7, Table
I and Table I. First, for all data rates of robot B, the statistical Fig. 6. Boxplots of the RMSE of the distance of the 140 simulations
tests for both systems related to the angle reject the null
hypothesis. Also, the medians of the EKF from Case 1 in
the best and worst data rate situation and the EKF from
Case 2 are lower than the median of the original system.
Thus, the proposed approach improves the performance of
θA even when the data rate of information from robot B is
degraded. Also, since both quantiles of the EKF with the
complete model are almost both below the first quantile of
the original system, results suggests that this improvement
is very significant. Furthermore, the median is lowered to
1.8267◦ compared to the original 16.042◦ .
On the other hand, the statistical test shows that Case 1’s
EKF gives statistically different results until robot B’s data
rate is 7 Hz for the Rrel . Below that frequency, the median
of the distance RMSE from this estimator could not be
distinguished from the original system. So, with a sufficient
data rate, the median of the distance could be improved,
Fig. 7. Boxplots of the RMSE of the angle of the 140 simulations
but the proposed approach seems to give worse result with
a larger dispersion at lower data rates. However, Case 2’s
EKF rejects the null hypothesis of the statistical test and
has a lower median, thus showing an improvement in the lower expected data rate.
distance measurements. Since this estimator has a Q matrix
with higher values, it was expected that it will have results V. CONCLUSION AND FUTURE WORK
closer to the original system than Case 1 could.
However, even if we conclude that the estimators give In this paper, we presented an UWB-based relative local-
improved estimations of the states most of the time, it also ization approach with improved distance and angle accuracy.
gives worst extreme values as it can be seen in Fig. 6, Fig. First, an estimation of the relative position between mobile
7. These outliers appear mainly when the robots arrive at robots is performed based on UWB telemetry measurement
short relative distances, as was noticed at less than 30 cm. techniques. Then, an EKF state estimator is used to correct
Since Case 1’s EKF is affected the most, it suggests that the these UWB telemetry measurements based on a kinematic
model is more sensitive in those scenarios and robustness to model by using IMU and wheel odometry sensors. Two
this phenomenon should be investigated in future work. cases are proposed based on data sharing availability between
As final observations, it is important to notice that in- robots. To validate the performance of our method, we
creasing the data rate of robot B’s information improves performed a simulation that produced promising results in
the performance of the EKF by decreasing the median of reducing the median error of the relative position estimate.
the error data, narrowing its disperions and producing lesser Moreover, significatively better results were measured when
outliers compared to not using any information from other enabling and increasing the data rate of information between
robots. It also indicate that the use of a zero-hold mechanism the robots. Future work will be put towards increasing
to manage the low data rate problem was robust enough for the robustness of the solution in specific motion scenarios
the studied case. However, other options such as adjusting and degraded communication channels, and validating the
the Q matrices in real time could lessen the disturbance of approach on a real physical system.
TABLE II
p−VALUES OF W ILCOXON RANKED TEST BETWEEN THE ORIGINAL SOLUTION AND THE PROPOSED APPROACH

Data rate B (Hz) 28 14 9.33 7 5.6 4.66 4 3.5 3.11 2.8

Case 1 9.09e-7 0.001 0.009 0.028 0.131 0.219 0.374 0.410 0.556 0.807
Distance
Case 2 8.32e-6 8.32e-6 8.32e-6 8.32e-6 8.32e-6 8.32e-6 8.32e-6 8.32e-6 8.32e-6 8.32e-6

Case 1 1.28e-20 6.51e-17 5.62e-16 6.09e-15 9.61e-14 1.32e-12 9.77e-12 2.46e-11 2.83e-11 2.62e-10
Angle
Case 2 0.043 0.043 0.043 0.043 0.043 0.043 0.043 0.043 0.043 0.043

R EFERENCES Conference on Robotics and Automation. Symposia Proceedings (Cat.


No.00CH37065), 1:476–81 vol.1, 2000.
[1] Mohan, Y., and S. G. Ponnambalam. ” An extensive review of research [9] Kurazume, R., and al. “Cooperative Positioning with Multiple Robots.”
in swarm robotics ”. 2009 World Congress on Nature & Biologically Proceedings of the 1994 IEEE International Conference on Robotics
Inspired Computing (NaBIC), 140-45, 2009. and Automation, 1250–57 vol.2, 1994.
[2] Schneider, F. E., and D. Wildermuth. ”Using an extended Kalman filter [10] Howard, A., and al. “Putting the ‘I’ in ‘Team’: An Ego-Centric
for relative localisation in a moving robot formation.” Proceedings of Approach to Cooperative Localization.” 2003 IEEE International Con-
the Fourth International Workshop on Robot Motion and Control (Cat. ference on Robotics and Automation (Cat. No.03CH37422), 1:868–74
No.04EX891). 85-90, 2004. vol.1, 2003.
[3] Pugh, J., and A. Martinoli. ”Relative localization and communication [11] Roumeliotis, S. I., and G. A. Bekey. “Distributed Multirobot Local-
module for small-scale multi-robot systems.” Proceedings 2006 IEEE ization.” IEEE Transactions on Robotics and Automation 18, no. 5
International Conference on Robotics and Automation. ICRA 2006. (2002): 781–95.
188-93, 2006. [12] Cao, Z., and al. ”Relative localization of mobile robots with multiple
[4] Chen, Siyuan, Dong Yin, and Y. Niu. ” A Survey of Robot Swarms’ ultra-wideband ranging measurements.” 2021 IEEE/RSJ International
Relative Localization Method ”. Sensors 22, no. 12 (2022). Conference on Intelligent Robots and Systems (IROS), 5857–63, 2021.
[5] Li, M., and al. ”Relative localization in multi-robot systems based [13] Nguyen, T., and al. ”Robust target-relative localization with ultra-
on dead reckoning and uwb ranging.” 2020 IEEE 23rd International wideband ranging and communication.” 2018 IEEE international con-
Conference on Information Fusion (FUSION). 1-7, 2020. ference on robotics and automation (ICRA). IEEE, 2018.
[6] Wann, C., and C. Hsueh. ”NLOS mitigation with biased Kalman filters [14] Villemure, É., and al. ”SwarmUS: An open hardware and software
for range estimation in UWB systems.” TENCON 2007-2007 IEEE on-board platform for swarm robotics development.” arXiv preprint
Region 10 Conference. 1-4, 2007. arXiv:2203.02643 (2022).
[7] Sayed, A. H., and al. ”Network-based wireless location: challenges [15] Arsenault, P., et al., The SwarmUS Project, (2022), GitHub repository,
faced in developing techniques for accurate wireless location infor- https://swarmus.github.io/SwarmUS-doc/.
mation.” IEEE signal processing magazine 22.4 (2005): 24-40. [16] Shapiro, S. S., and M. B. Wilk. “An Analysis of Variance Test for Nor-
[8] Burgard, W., and al. “Collaborative Multi-Robot Exploration.” Pro- mality (Complete Samples).” Biometrika 52, no. 3–4 (1965):591-611.
ceedings 2000 ICRA. Millennium Conference. IEEE International

You might also like