Position Estimation and Error Correction of Mobile
Position Estimation and Error Correction of Mobile
Journal of Sensors
Volume 2022, Article ID 7071466, 18 pages
https://doi.org/10.1155/2022/7071466
Research Article
Position Estimation and Error Correction of Mobile Robots Based
on UWB and Multisensors
1
School of Mechanical Engineering, Southeast University, Nanjing, Jiangsu 211189, China
2
School of Engineering, The University of Manchester, Manchester M13 9PL, UK
Received 27 October 2021; Revised 20 January 2022; Accepted 23 February 2022; Published 11 March 2022
Copyright © 2022 Jie Li et al. This is an open access article distributed under the Creative Commons Attribution License, which
permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Since there are many interferences in the indoor environment, it is difficult to achieve the precise positioning of the mobile robot
using a single sensor. This paper presents a position estimation and positioning error correction method of mobile robots based on
multisensor data. The robot’s positioning sensor includes ultra-wideband (UWB) components, inertial measurement unit (IMU),
and encoders. UWB multipath interference causes more ranging errors, which can be reduced by the correction equation after
data fitting. The real-time coordinates of the UWB robot tag can be calculated based on multiple UWB anchor data and the
least squares method. The coordinate data ðxc , yc Þ are acquired by UWB positioning subsystem, and the velocity data ðx_ c , y_ c Þ
are collected by IMU together with encoders. The multisensor data continuously update Kalman filter and estimate robot
position. In the positioning process, the positioning data of different sensors can be mutually corrected and supplemented. The
results of UWB ranging correction experiments indicate that data fitting can improve the UWB positioning accuracy. In the
multisensor positioning experiments, compared with a single sensor, the positioning method based on data fusion of UWB,
IMU, and encoders has higher accuracy and adaptability. When UWB signals are interfered or invalid, other sensors can still
work normally and complete the robot positioning process. The multisensor positioning method not only improves the robot
positioning accuracy but also has stronger environmental adaptability.
UWB
Robot tag
Mobile robot
Wireless UWB
module It is difficult for a single sensor to achieve high accuracy
Robot tag
Central due to sensor error or instability. The combined applications
controller of multiple sensors are beneficial to improve positioning
accuracy and stability. A method to accurately locate persons
IMU indoors by fusing INS with active RFID was presented in
Battery [19]. A method to integrate LiDAR and IMU was proposed
to overcome the problem of the low accuracy and large accu-
mulated errors of indoor mobile navigation and positioning
Motor [20]. In order to improve the accuracy of the data fusion fil-
Encoder
ter, a tightly coupled UWB/INS-integrated scheme for
Mecanum indoor human navigation was investigated [21]. UWB has
wheel also been combined with other sensors for data fusion to
achieve more precise positioning [22, 23].
Due to the interference of obstacles in the indoor envi-
ronment, data fusion and filtering of UWB and multisensors
Figure 2: Mecanum wheeled mobile robot and positioning sensors.
are developed to improve the positioning accuracy of mobile
robots. This paper proposed a position estimation and error
correction method based on multisensor data. The robot
time. UWB positioning technology utilizes distributed sen- positioning system can simultaneously acquire and integrate
sor devices for distance estimation. The distances between the data from UWB, IMU, and encoders. The double-sided
multiple UWB anchors and the UWB robot tag are mea- two way ranging (DS-TWR) and data fitting method is used
sured simultaneously to estimate the robot position. The to improve the UWB ranging accuracy and correct errors
positioning methods include the Angle of Arrival (AOA) caused by multipath signals. Meanwhile, the robot position
algorithm [12], the received signal strength (RSS) algorithm coordinates were estimated by UWB anchors and the robot
[13], the Time of Arrival (TOA) algorithm [14], the Time UWB robot tag. In the process of multisensor robot posi-
Difference of Arrival (TDOA) algorithm [15], and other tioning, the heading angle error of IMU can be corrected
hybrid algorithms [16–18]. The stability and accuracy of by UWB positioning data. The velocity data calculated by
measured data are critical to the robot positioning. However, IMU together with encoders and the UWB positioning data
in the indoor environment, obstacle interference may reduce continuously update Kalman filter to estimate the robot
UWB positioning accuracy and even cause UWB position- position. The multisensor positioning method is conducive
ing failure. Usually, increasing the number of UWB anchors to improve the robot positioning accuracy. Even if UWB sig-
can expand its positioning range, but it will also bring more nals are interfered or shielded, the robot positioning can still
errors and cause instability. Therefore, the error correction be executed by other sensor data, which improves the prac-
of UWB positioning data is necessary to improve its posi- ticability and anti-interference ability of the robot position-
tioning accuracy. ing system.
Journal of Sensors 3
Robot coordinate
display Parameter setting
and robot control
UWB anchor
coordinate correction
Command display
2. Positioning System Design encoders, and IMU. Each sensor inevitably has some errors
during the positioning process, which may contain one or
2.1. Positioning System Architecture. In a complex and multi- more of the following:
interference environment, multisensor cooperation has the
ability of improving positioning accuracy. As shown in (1) During the running process, if the robot wheel slips,
Figure 1, the robot positioning system consists of a UWB their rotational speeds measured by the encoders will
positioning subsystem, a remote control computer, and a have some errors. The heading angle and mileage of
mobile robot. The UWB positioning subsystem includes a the robot integrated by velocities also have cumula-
UWB robot tag and some UWB anchors, which are fixedly tive errors, which will increase over time
installed in the surrounding environment. Based on the
measured distance between the UWB robot tag and UWB (2) The robot’s heading angle calculated by the IMU has
anchors, the remote control computer executes positioning less error in a short operating time. However, if the
algorithms to calculate the position and coordinate of the correction is not carried out for a long time, larger
robot. cumulative angle errors will occur
The remote control computer communicates with the (3) UWB positioning is a direct positioning method; the
robot through the wireless module. It is used to process posi- positioning error will not accumulate over time.
tioning data, calculate robot’s coordinate, and control the However, the accuracy and stability of UWB posi-
mobile robot. The main functions include interactive com- tioning are not as good as expected. Besides, UWB
munication, robot control, position estimation, data fusion positioning may be invalid due to the interference
and processing, and robot position display. of obstacles in the environment
A mecanum wheeled mobile robot is considered in this
work. As shown in Figure 2, the mobile robot consists of a As discussed above, different positioning sensors have
central controller, four DC motors, four drivers, four their own errors and shortcomings; we proposed a multisen-
encoders, and four mecanum wheels. The encoders are used sor data fusion algorithm. By fusing the data of UWB, IMU,
to measure the rotational speed of each wheel and calculate and encoders, the algorithm can effectively improve posi-
the robot’s velocity in self coordinate system based on the tioning accuracy, reduce cumulative errors, and eliminate
kinematic equations. An IMU sensor, composed of a three- obstacle interference. The positioning data obtained by the
axis accelerometer, a three-axis gyroscope, and a three-axis sensors are mutually corrected and supplemented. On the
magnetometer, is installed on the robot. This sensor is used one hand, encoders and IMU have higher accuracy and free-
to estimate the heading angle of the robot during driving. dom from obstacles in a short time but have larger cumula-
In terms of sensors that we used in the robot positioning tive errors. The cumulative angle errors can be reduced by
system, the positioning data (i.e., the robot’s position and using UWB positioning data, which will correct the heading
velocity) are obtained by three different sensors: UWB, angle calculated by the IMU. On the other hand, due to
4 Journal of Sensors
Tround1 Treply2
UWB T
Poll Response Final
Robot tag Tx Rx Tx
Tp Tp Tp
UWB Tx Rx
Final
Rx
Poll Response
Anchor i
Treply1 Tround2
Figure 4: UWB signal flight time diagram based on the DS-TWR method.
Program
Begin
initialization
Working mode?
Waiting for
Broadcast message
message
N N
Y Y
Received time
Send time data
data
Calculate distance
upload data Continue Y
ranging?
Y
Continue N
ranging?
End
N End
environmental interference, the positioning error of UWB the main functions include coordinate display of UWB
may become larger. The UWB’s positioning error can be anchors, real-time coordinate and trajectory display of the
corrected through the IMU and encoder data as well, which robot, robot control, and data processing.
will improve the robot positioning accuracy.
50
45
40
35
25
20
15
10
0
0 10 20 30 40 50 60 70 80 90 100
er+ ea (PPM)
measuring the distances between the UWB tag and multi- where er and ea are the clock skews of the UWB tag module
ple UWB anchors. Time of Fly (TOF) method is used to and UWB anchor module, respectively.
measure the UWB signal flight distance; the formula is As a result, the ranging error by the DS-TWR method is
Δd = Cu ⋅ Δt, ð1Þ er + ea + er ea ̂ e +e
T e = T̂ p − T p = T ≈ r a T̂ p : ð4Þ
2ð1 + er Þð1 + ea Þ p 2
where C u is the UWB signal transmission speed, which
approximately equals to the speed of light, and Δt is the
time difference of signal flight. Figure 6 shows the DS-TWR ranging error curve
However, due to the inability to accurately synchronize between the UWB robot tag and the UWB anchors at differ-
the clock between the UWB robot tag and UWB anchors, ent distances and different clock skews. The results indicate
the clock error will cause a large measurement error. For that the ranging errors caused by clock skews are much
example, 1 ns clock deviation can cause a 30 cm ranging smaller than the UWB measurement accuracy (about
error. The DS-TWR method [24] was proposed to reduce 100 mm). When the measuring distance is 300 m and the
the ranging error caused by clock unsynchronization and clock skew is 20 PPM, the ranging error is about 6 mm. Dur-
clock skews. As shown in Figure 4, the DS-TWR method ing the robot actual positioning process, the UWB module
can achieve more accurate UWB ranging by measuring the with 5 PPM clock was adopted to improve the measurement
three round-trip times between the UWB robot tag and the accuracy.
UWB anchors. Figure 5 shows the working flowchart of 3.2. Multipath Error Correction. As shown in Figure 7(a),
the UWB robot tag and UWB anchors. in a line-of-sight (LOS) environment [25], UWB signals
The UWB signal flight time T p between the UWB tag can transmit in a straight line without any obstruction.
and the UWB anchor is However, multipath interference may exist due to the
reflection of walls and objects. Signals often transmit
T round1 × T round2 − T reply1 × T reply2 through multiple paths and cause some ranging errors.
Tp = : ð2Þ
T round1 + T round2 + T reply1 + T reply2 As shown in Figure 7(b), paths A and B are direct paths,
and paths C and D are multipath interference; their
Because the signal flight time T p is much shorter than length relationship is D ≈ C > B ≈ A. Although UWB has
a strong ability to resist multipath interference, it is diffi-
the processing data time T reply1 and T reply2 , the flight time
cult to guarantee its ranging accuracy due to its ultrawide
of the signal after adding the clock errors approximately bandwidth and interference of complex indoor reflection
equals to environment.
The ranging error caused by multipath is related to the
2 ⋅ ð1 + e r Þ ð 1 + e a Þ
T̂ p ≈ T , ð3Þ real environment. The method of data fitting is proposed
ð1 + e r Þ + ð1 + e a Þ p to correct the error and improve the positioning accuracy.
6 Journal of Sensors
Wall/Obstacles
C
A
B
D
Wall/Obstacles
UWB Obstacle Obstacle UWB
Robot tag Anchor
UWB UWB
Robot tag Anchor
(a) (b)
Figure 7: Broadcast environment analysis of UWB signals: (a) LOS environment without obstructions; (b) UWB multipath interference.
–70
–72
–74
–76
UWB power (dBm)
–78
–82
–84
–86
–88
–90
0 5 10 15 20 25 30 35 40 45 50 55
Time (s)
Assume that the relationship equation between the real dis- Solving the matrix equation by the principle of least
tance and the UWB measurement distance is squares, we have
A1 A1
2𝜀
B
C G
A3 c h b
T
i 𝜀 𝛼12 m
D F
d T g
𝛼23
E
j 𝛼13
2𝜀 l
e f
k
2𝜀
A2 A3
A2
(a) (b)
Figure 9: Geometrical relationship of UWB anchor layout: (a) measured distance error analysis; (b) layout analysis of UWB anchors.
UWB ranging data, which can be calculated as (3) The horizontal dilution of precision (HDOP) of
UWB positioning should be small enough and
UWB anchors should avoid being clustered in a
F12 + F22 + F32
P F = 10 × log10 − P0 ðdBmÞ, ð10Þ small area
N 02
If the real distance between UWB anchors and the UWB
where F 1 , F 2 , F 3 , and N 0 are internal register variables of ðrÞ
robot tag is d i , ði = 1, 2, 3 ⋯ Þ and the UWB ranging error
the UWB module and P0 is a constant. is εðε ≥ 0Þ, the measured distance can be expressed as
The first path power can reflect the signal propagation
state between the UWB robot tag and UWB anchors. When h i
the UWB signal is blocked, the first path power will decrease di
ðmÞ ðr Þ ðr Þ
∈ di − ε, d i + ε ði = 1, 2, 3 ⋯ Þ: ð11Þ
significantly. Figure 8 shows the first path power of the
UWB signal under occlusion. In a noninterference environ-
ment, the first path power of the UWB signal is usually
As shown in Figure 9(a), assuming that three UWB
maintained between -76 dBm and -72 dBm. When the signal
anchors are located at points A1,A2, andA3, their measured
is blocked by obstacles, the first path power will drop dra- ðmÞ ðmÞ ðmÞ
matically to -82 dBm or lower. distances are d1 , d 2 , and d3 . The three circles, with
ðmÞ ðmÞ
By analyzing the first path power strength of UWB sig- points A1, A2, and A3 as the centers and d 1 , d2 , and
nals, the data availability of UWB anchors can be confirmed. ðmÞ
d 3 as the radii, intersect to form Zone BCDEFG, which is
For accurate positioning, the ranging data with power below the possible coordinate range of the robot. Its area SBCDEFG
a certain value will be discarded. It is considered that there represents the robot positioning error.
are obstacles between the UWB robot tag and the UWB Because ε is small, Zone BCDEFG is approximately
anchor; thus, this UWB anchor is invalid. If the number of hexagon bcdef g in Figure 9(b), which is the circumscribed
available UWB anchors cannot satisfy the requirement of hexagon of circle T. The relative angles of three UWB
the robot positioning, UWB positioning will fail and the anchors are α12 , α23 , and α13 , respectively. According to its
robot coordinate cannot be calculated. symmetry,
3.4. UWB Anchor Layout Analysis. In the UWB positioning
subsystem, multiple UWB anchor data are used simulta- 8
>
> S ≈S
neously to calculate the robot position. The layout of UWB < Tmbh T jek
anchors has a significant impact on the robot positioning STid j ≈ STlgm : ð12Þ
>
>
accuracy. For high-precision robot positioning, the layout :S ≈S
and installation positions of the UWB anchors should meet Tkf l Thci
(1) The operating area of the robot should be covered by The area of triangle Tid is
at least 3 UWB anchor signals
ε2 α
(2) The signal coverage of UWB anchors should be fully STid = tan 23 : ð13Þ
utilized 2 2
8 Journal of Sensors
Anchor n Anchor 3 Anchor 4 When three UWB anchors are used for robot positioning,
(xn, yn) (x3, y3) (x4, y4) the equilateral triangle layout is conducive to reducing posi-
tioning errors. Similarly, when the number of UWB anchors
is four, the square layout is more favorable for the positioning.
Similarly, 0 1
x1 2 − xn 2 + y1 2 − yn 2 + d n 2 − d 1 2
α α B C
STmbh = ε2 tan 12
, STkf l = ε2 tan 13
: ð15Þ B x2 2 − xn 2 + y2 2 − yn 2 + d n 2 − d 2 2 C " #
B C
2 2 B C x
Du = B
B x3 2 − xn 2 + y3 2 − yn 2 + d n 2 − d 3 2 C,Xu = c :
C
The area of hexagon bcdef g is B C yc
B ⋮ C
@ A
α α α
Sbcdef g = 2ε2 tan 13
+ tan 12
+ tan 23
, ðα13 + α12 + α23 = πÞ: xn−1 2 − xn 2 + yn−1 2 − yn 2 + d n 2 − dn−1 2
2 2 2
ð16Þ ð20Þ
Positioning xc
UWB
algorithm yc
error
correcting H(u) R(u)
xk
𝜃c yk
Kalman filter
IMU
Madgwick 𝛼c x· k
algorithm y· k
𝜑c
x· c
H(i) R(i)
y·c
vx
Four Robot vy Motion
encoders kinematics model
𝜔c
UWB Tag
UWB Anchor
UWB Tag
UWB Anchor
(a) (b)
Figure 13: UWB ranging correction experiments: (a) indoor correction experiment; (b) outdoor correction experiment.
When N = Du − Au Xu is the smallest, the measurement at least three UWB anchors are required. Generally, more
error will be the smallest. Supposef ðxÞ = Du − Au Xu , the UWB anchors can improve the robot positioning accuracy
least square estimate of X is and stability. However, too many UWB anchor data may
cause more calculations and other possible errors.
−1
Xu = Au T Au Au T Du : ð22Þ 4.2. Robot Velocity Calculation. In the robot positioning pro-
cess, the robot’s absolute coordinate ðxc , yc Þ can be calcu-
Therefore, ðxc , yc Þ is the estimated coordinate value of lated by the UWB positioning subsystem. Meanwhile, the
the robot. When positioning the mobile robot in the plane, rotation speeds of the wheels are recorded by four encoders.
2 3 2_ 3
2 3 1 1 1 1 θ1
vx 6 7 6
6 θ_ 7
7
6 7 R 6 tan β −tan β tan β −tan β 7
6 vy 7 = ⋅ 6 7⋅6 7
6 2
ð23Þ
4 5 4 6 7 6_ 7 ,
4 1 1 1 1 5 4 θ3 75
ωc − −
W + cot β ⋅ L W + cot β ⋅ L W + cot β ⋅ L W + cot β ⋅ L θ_ 4
Table 1: Measured distance results of UWB indoors and outdoors. multisensor data are fused and combined for more accu-
rate position coordinate estimation. Robot positioning data
Actual Measured distance Measured distance are acquired by multiple sensors, including UWB position-
Num
distance (m) indoor (m) outdoor (m) ing subsystem, IMU, and encoders.
1 1.00 0.62 0.83 As the accuracy of the UWB positioning data ðxc , yc Þ is
2 2.00 1.68 1.87 not high enough and ðx_ c , y_ c Þ has cumulative errors over
3 3.00 2.71 2.87 time, Kalman filter is used to fuse multisensor data. Both ð
4 4.00 3.71 3.89 xc , yc Þ and ðx_ c , y_ c Þ are fed into the Kalman filter to estimate
5 5.00 4.75 4.90 the robot coordinates and velocities ðxk , yk , x_ k , y_ k Þ. The
6 6.00 5.83 5.90 robot position estimation and prediction include two steps:
first, combine the robot motion model and predict the robot
7 7.00 6.75 6.90
state ðxk , yk , x_ k , y_ k Þ at time k based on the optimal estimation
8 8.00 7.83 7.92
ðxk−1 , yk−1 , x_ k−1 , y_ k−1 Þ at time k − 1; second, use the measured
9 9.00 8.85 8.94 data (UWB positioning subsystem, IMU, and encoders) to
10 10.00 9.77 9.95 correct the predicted state and its parameters.
11 11.00 10.8 10.97 During the positioning process, the robot receives coor-
12 12.00 11.85 11.97 dinate data ðxc , yc Þ and velocity data ðx_ c , y_ c Þat frequencies
13 13.00 12.91 13.00 of 50 Hz and 100 Hz, respectively. In each time period,
14 14.00 13.89 13.98 assuming that the robot performs uniform motion, the state
equation of the robot is
15 15.00 14.88 15.00
Xk = Φ ⋅ Xk‐1 + Γwk−1 ,(24)
16 16.00 15.96 16.01
where Xk = ½ xk x_ k yk y_ k T is the state vector of the
17 17.00 16.94 17.01
robot and Φ is the state transition matrix of the uniform
18 18.00 17.94 18.03 motion model.
19 19.00 18.92 19.02
2 3
20 20.00 19.94 20.04 1 dt ðuiÞ 0 0
6 7
60 1 0 0 7
Φ=6
6
7,
7 ð25Þ
60 0 1 ðuiÞ 7
dt 5
respectively, represents the roll angle, heading angle, and tilt 4
angle. Since these angles have cumulative errors over time, 0 0 0 1
robot’s absolute coordinates ðxc , yc Þ acquired by the UWB
positioning subsystem are used to correct them. During the
where dt ðuiÞ is the sampling period of positioning data. Due
positioning process, the UWB positioning subsystem
records the robot’s moving trajectory in real time at a fre- to the different update frequencies of multisensor data, dt ðuiÞ
quency of 50 Hz. Within a certain period of time, the robot’s includes two cases: dt ðuÞ is the sampling period of UWB
coordinates fðxi , yi Þ, i = 1, 2,⋯,Ng are used to evaluate line- positioning dataðxc , yc Þ, and dt ðiÞ is the sampling period of
arity of the moving trajectory. When the linearity is greater velocity data ðx_ c , y_ c Þ.
than 0.9, the slope of the moving trajectory is used to correct Suppose the noise of the robot motion system is Γw k :
the IMU heading angle. Otherwise, the robot moving trajec-
2 3
tory is regarded as nonlinear, and the IMU heading angle dt ðuiÞ 0
will be not corrected. 6 7
6 1 0 7
Γ=6 7,
Some errors may be caused by the sliding of robot’s
6 7
mecanum wheels, and the heading angle integrated by 6 0 dt ðuiÞ 7
robot’s rotation velocity ωc may be inaccurate. As shown 4 5
ð26Þ
in Figure 11, the IMU heading angle αc and the robot’s run- 0 1
ning velocities ðvx , vy Þ are combined to calculate robot veloc- " #
ux
ities ðx_ c , y_ c Þ in the absolute coordinate system xOy: wk = ,
uy
(
x_ c = vx ⋅ cos αc − vy ⋅ sin αc ,
ð24Þ where ux and uy are white Gaussian noise.
y_ c = vx ⋅ sin αc + vy ⋅ cos αc : The measurement equation of the robot positioning sys-
tem is
4.3. Multisensor Position Estimation. As we mentioned
above, environmental interference can cause UWB posi- Zk = HðuiÞ ⋅ Xk + vk , ð27Þ
tioning errors. Therefore, a multisensor position estima-
tion method is proposed to improve the positioning where Zk = ½ xm ym T is the measurement vector, including
accuracy of the robot. As shown in Figure 12, the robot UWB positioning data ðxc , yc Þ and velocity data ðx_ c , y_ c Þ. vk is
Journal of Sensors 11
0.4
0.3
0.2
–0.1
–0.2
–0.3
–0.4
0 2 4 6 8 10 12 14 16 18 20
Distance (m)
0.15
0.1
Ranging error (m)
0.05
–0.05
–0.1
–0.15
–0.2
0 2 4 6 8 10 12 14 16 18 20
Distance(m)
Figure 14: UWB ranging errors: (a) original ranging errors; (b) correctional ranging errors.
the measurement noise. HðuiÞ represents the transfer rela- equation can be constructed as follows:
tionship matrix from the state vector Xk to the measurement
vector Zk . The observation matrices HðuiÞ corresponding to
Xðk∣k−1Þ = Φ ⋅ Xðk−1∣k−1Þ + w ðkÞ , ð29Þ
ðxc , yc Þ and ðx_ c , y_ c Þ are
–70 18
–75 16
–80 14
I II I II III
–90 III 10
–95 8
–100 6
–105
4
–110
2
–115
0 5 10 15 20 25 30 35 40 45 50 0
0 5 10 15 20 25 30 35 40 45 50
Time (s)
Time (s)
Anchor 0 Anchor 1
Anchor 0 Anchor 1
Anchor 2 Anchor 3
Anchor 2 Anchor 3
(a) (b)
Figure 15: UWB ranging power and availability analysis: (a) the first path power of UWB anchors; (b) measured distances of UWB anchors.
Laser tracker
UWB Anchor 1
UWB Anchor 2
UWB Anchor 3
at time k − 1 and Q is the covariance of system noise: where ZðkÞ is the measured value, including two types of
data: ðxc , yc Þ andðx_ c , y_ c Þ. The HðuiÞ corresponding to different
Q = G ⋅ GT ⋅ K e , measurement data is HðuÞ and HðiÞ . Kalman filter gain KgðkÞ
2 2 3
et 0 is
6 2 7
6 0 7 ð31Þ
6 e 7 −1
G=66
t 7
et 2 7: KgðkÞ = Pðk∣k−1Þ HðuiÞ
T T
HðuiÞ Pðk∣k−1Þ HðuiÞ + RðuiÞ , ð33Þ
6 0 7
4 2 5
0 et
where RðuiÞ is the covariance matrix of the observed noise.
In the robot positioning process, K e = 0:25 and et = 0:02. The value of RðuiÞ represents the fluctuation of the observed
The optimal estimation vector of the robot system at data. Its value is larger, while the credibility of the data is
time k is lower, and its influence on the final estimation result is
smaller; conversely, the smaller value of RðuiÞ has a greater
Xðk∣kÞ = Xðk∣k‐1Þ + KgðkÞ ZðkÞ − HðuiÞ XðkÞ , ð32Þ effect on the estimation result. The matrix RðuiÞ correspond-
ing to UWB positioning data ðxc , yc Þ and velocity
Journal of Sensors 13
Mobile robot
z E Zone C
Zone B
y
x
S
M
Running path Zone A
7
Anchor 3 (1.0,6.0)
4
Coordinate Y (m)
3
Anchor 2
(2.0,3.0)
2
1 Y
Point S(1.0,1.0)
0 O X
Anchor 1 (0,0)
–1
–8 –7 –6 –5 –4 –3 –2 –1 0 1 2 3
Coordinate X (m)
IMU
IMU+UWB
UWB
Figure 18: Coordinate system XOY and robot running trajectories by three positioning methods.
dataðx_ c , y_ c Þ is updated to
" #
0:09 0 Pðk∣kÞ = I − KgðkÞ HðuiÞ Pðk∣k−1Þ : ð35Þ
RðuÞ = ,
0 0:09
" # ð34Þ
0:01 0 The optimal estimation ðxk , x_ k , yk , y_ k Þ of the robot posi-
ðiÞ
R = : tion at time k can be calculated from Equation (32). Based
0 0:01 on the optimal estimate and the covariance matrix at time
k, combined with the measured data at time k + 1, the opti-
mal estimate ðxk+1 , x_ k+1 , yk+1 , y_ k+1 Þ at time k + 1 can be pre-
Covariance matrix Pðk∣kÞ of the robot system at time k is dicted successively.
14 Journal of Sensors
0.1 0.4
0.05 0.2
0 0
–0.05 –0.2
–0.1 –0.4
0 2 4 6 8 10 12 14 16 18 20 0 5 10 15 20 25 30 35 40
IMU IMU
X coordinate error (m)
(a) (b)
Figure 19: Robot coordinate errors by three positioning methods: (a) X coordinate errors; (b) Y coordinate errors.
In the process of multisensor data fusion and robot posi- ranging are
tioning, no matter which set of positioning data (ðxc , yc Þ or
ðx_ c , y_ c Þ) is acquired, it will be fed to the Kalman filter to esti-
mate the robot’s position and velocities. At the same time, dt in = 0:9846 × d m + 0:3327,
ð36Þ
the covariance matrix of the Kalman filter is updated. If dt = 0:9898 × dm + 0:1564,
out
the UWB positioning signal is temporarily lost or interfered,
the robot can still estimate its position using the data from
IMU and encoders. Certainly, the robot can also complete where d m is the original UWB measured value, d t in and
the positioning operation only with UWB positioning data. d t out are correctional value in indoor and outdoor environ-
Based on the method of data fusion and position estimation, ments, respectively. The correction equation is used to
multiple positioning data are mutually corrected and supple- reduce the ranging error and improve the measurement
mented to improve robot positioning accuracy. accuracy.
Figure 14 shows the curves of the original UWB ranging
5. Experiments and Results error and the correctional UWB ranging error. The correc-
tional ranging error is significantly smaller than the original
5.1. UWB Ranging Correction Experiments. In the UWB ranging error. In the indoor environment (Figure 14(a)), the
ranging correction experiments, the UWB measured dis- root mean square error (RMSE) of the original UWB rang-
tance and the actual distance were collected and data fitting ing data is 0.19 m, and the RMSE of correctional UWB data
was performed to correct the ranging error. In the LOS envi- is 0.04 m. In the outdoor environment (Figure 14(b)), the
ronment, the distance between a UWB tag and a UWB RMSE of the original and correctional UWB ranging data
anchor was measured by the DS-TWR method. In order to is 0.08 m and 0.01 m, respectively.
verify the reliability of the method, the experiment was Compared with the outdoor environment, the indoor
implemented in two different environments: indoor correc- environment has lower ranging accuracy due to UWB mul-
tion experiment (Figure 13(a)) and outdoor correction tipath interference. The experimental results indicate that
experiment (Figure 13(b)). It is worth to note that there the correction method of data fitting can effectively reduce
was no obstruction between the UWB tag and the UWB the UWB ranging error, especially in the case of severe
anchor. UWB multipath interference. The maximum indoor ranging
Table 1 shows the comparison of multiple UWB mea- error is reduced to 0.1 m from original 0.4 m. Similarly, the
surement distances and actual distances. After data fitting, maximum error of outdoor UWB ranging is corrected from
the correction equations for UWB indoor and outdoor 0.17 m to 0.04 m.
Journal of Sensors 15
100 185
95
180
90
175
85
80 170
0 2 4 6 8 10 12 14 16 18 20 0 5 10 15 20 25 30 35 40
IMU IMU
100 185
Robot angle (°)
80 170
0 2 4 6 8 10 12 14 16 18 20 0 5 10 15 20 25 30 35 40
UWB UWB
100 185
95
180
90
175
85
80 170
0 2 4 6 8 10 12 14 16 18 20 0 5 10 15 20 25 30 35 40
Time (s) Time (s)
(a) (b)
Figure 20: Changing curves of the robot’s heading angle: (a) SM stage; (b) ME stage.
5.2. UWB Availability Experiment. In the indoor environ- anchor. When the total number of available UWB anchors
ment, the UWB robot tag may exceed the visible range is less than three, the UWB positioning status of the robot
of UWB anchors due to the occlusion of walls or obsta- will be considered invalid at this time.
cles, which will cause inaccurate UWB data at this case.
As a result, during UWB positioning progress, the first 5.3. Multisensor Positioning Experiments. Multisensor posi-
path power of the UWB anchor signal will be captured tioning experiments were carried out to verify effects of the
to confirm the availability of UWB data. If the communi- data fusion and robot positioning by UWB, IMU, and
cation power of a UWB anchor is too low, the ranging encoders. Figure 16 shows the experimental equipment and
data of this UWB anchor is unreliable; then, it will be environment, the UWB robot tag was installed on the
discarded. mobile robot, and three UWB anchors (Anchor 1, Anchor
Figure 15 shows the first path power and ranging results 2, and Anchor 3) were distributed around. Meanwhile, the
of four UWB anchors as the robot’s position changed. When robot’s velocities were calculated based on the IMU sensor
the robot was in Position I, Anchor 0 was blocked and inter- (MPU9250) and encoders. The laser tracker was used to
fered; its signal power was very low. At this stage, the rang- record the running trajectory and position coordinates of
ing data of Anchor 0 was unstable, so it was discarded. the robot in real time. Within the coverage of UWB signals,
When the robot moved to Position II, Anchor 0 was in the multisensor data based on UWB, IMU, and encoders were
visible range of the robot, and its signal power gradually simultaneously captured and used; outside the coverage of
increased. All UWB anchors had stable signals, and their UWB signals, the robot could only use IMU and encoders
positioning data were available. When the robot left Position for positioning.
II and entered Position III, Anchor 3 left the visible area of The given running path of the mobile robot is shown in
the robot. The signal power of Anchor 3 gradually decreased, Figure 17. The robot started from point S, passed through
and its ranging data was discarded due to inaccuracy. point M, and finally reached point E. In the experimental
In the process of robot positioning, if the first path environment, zone A was completely covered by UWB sig-
power of a UWB anchor is lower than -95 dBm, the robot nals. UWB signals in ZoneBwere slightly disturbed by walls,
positioning system will discard the ranging data of this and those in Zone C were invalid due to severe interference.
16 Journal of Sensors
Three positioning methods were tested and compared in are 0.1972 m, 0.0902 m, and 0.0821 m, respectively. The
the experiments: experimental results indicate that the multisensor fusion
positioning method based on UWB, IMU, and encoders
(1) Positioning only by IMU and encoders (IMU has higher positioning accuracy and stability. The multisen-
positioning); sor positioning method uses different sensor data to correct
and supplement each other, thus having stronger anti-
(2) Positioning only by the UWB subsystem (UWB
interference ability. Even if one sensor fails, the robot posi-
positioning);
tioning can still operate normally based on other sensors.
(3) Positioning by IMU, encoders, and UWB subsystem Figure 20 shows changing curves of the robot’s heading
(IMU+UWB positioning). angle in the experiments. In the SM stage (Figure 20(a)),
the desired heading angle of the robot is 90°. In a short time,
In the multisensor positioning experiments, the robot the heading angle of IMU positioning is more stable, but the
positioning system adopted these three different positioning angle error cannot be corrected automatically. The heading
methods to estimate the coordinates and angle of the mobile angle of UWB Positioning is calculated by coordinates with
robot. The robot coordinate system XOY was established, some large fluctuations. This is because UWB data is used
with Anchor 1 as the coordinate origin. Figure 18 shows to correct IMU errors, the heading angle of IMU+UWB
the coordinate system and the running trajectories of the positioning also has some slight fluctuations. In the ME
robot by three positioning methods. The coordinates of stage (Figure 20(b)), the desired heading angle of the robot
three UWB anchors were (0, 0), (2.0, 3.0), and (1.0, 6.0). In is 180°. The cumulative angle error of the IMU positioning
the first stage, the robot started from point S (1.0,1.0) and gradually increases, which will cause greater positioning
reached point M (1.0, 5.6) along the direction of the Y coor- error. As UWB signals are interfered, UWB positioning
dinate axis. In the second stage, the robot rotated 90° and has more angle errors, and it fails in Zone C, whereas the
then moved along the direction of the X coordinate axis to heading angle of IMU+UWB positioning is more stable. It
the point E (-8.0, 5.6). can still operate normally in Zone C.
As shown in Figure 18, the red lines represent the run- The experimental results indicate that the positioning
ning trajectory of the robot using IMU positioning. In the accuracy of the multisensor positioning method has been
whole process, the robot coordinates can be estimated and greatly improved. The UWB data can correct the cumulative
used, but as time accumulates, the positioning error gradu- angle error of IMU, and the heading angle is more stable.
ally increases. The blue lines are the running trajectory of When UWB signals are interfered or invalid, the robot can
the robot using UWB positioning. In the Zone C, the robot still use IMU and encoder data for positioning, which has
positioning fails because the UWB signals are invalid. The stronger environmental adaptability.
green lines represent the running trajectory of the robot
using IMU+UWB positioning. In Zone A and Zone B, the
robot uses data fusion of UWB, IMU, and encoders for posi- 6. Discussion of the Experiments
tioning, and the robot can still complete positioning using
IMU and encoder data in Zone C. Compared with the single-sensor positioning method, the
Figure 19 shows the coordinate error of the robot using positioning system based on UWB and multisensors can
three positioning methods. Figure 19(a) shows the X coordi- improve the positioning accuracy and adaptability of the
nate errors when the robot moved from point S to point M robot. Through data fitting, the robot positioning system
(SM stage). In the initial stage, the error of IMU positioning can effectively reduce the UWB ranging error caused by
is very small, but it keeps increasing over time. The error of multipath interference. The indoor and outdoor maximum
UWB positioning is the largest. Since the UWB data has ranging errors are increased to 0.1 m and 0.04 m, respec-
been used to correct the heading angle of IMU, the error tively. According to the first path power of the UWB anchor
of IMU+UWB positioning has some fluctuations while its signals, the robot positioning system can judge the availabil-
high accuracy is guaranteed. The maximum X coordinate ity of UWB positioning data and prevent the error position-
error of IMU+UWB positioning is less than 0.05 m. ing data from being used. Meanwhile, the positioning system
Figure 19(b) shows the Y coordinate error when the can select stable UWB anchors to collect positioning data.
robot moved from point M to point e (ME stage). The error In general, the developed robot positioning system based
of IMU positioning keeps increasing, and the maximum on data fusion and error correction has the following
error is close to 0.4 m. As UWB signals in Zone B are dis- advantages:
turbed, the error of UWB positioning continues to increase.
In Zone C, the method of UWB positioning fails and cannot (1) The mutual correction of multisensor data improves
estimate the robot coordinates. In the whole process, the the stability and accuracy of positioning data. During
error of IMU+UWB positioning is relatively small. Even if the movement of the robot, IMU heading angle can
the UWB signals are invalid in Zone C, the robot can still be corrected by UWB data, which reduces the cumu-
complete the positioning with high accuracy. The Y coordi- lative angle error
nate error is kept within 0.16 m. (2) Based on multisensor data fusion, the robot posi-
Based on mathematical statistics, the RMSEs of IMU tioning system can achieve higher-precision posi-
positioning, UWB positioning and IMU+UWB Positioning tioning. When multisensor data are available
Journal of Sensors 17
simultaneously, the positioning error of the robot is and the Science and Technology Project of Quality and
less than 0.05 m Technical Supervision Bureau of Jiangsu Province, China,
under Grant KJ175933.
(3) The robot positioning system has better anti-
interference ability and environmental adaptability.
Even if UWB positioning data is disturbed, the robot References
can still use IMU and encoder data for positioning,
and the maximum positioning error is within 0.16 m [1] S. S. Saab and Z. S. Nakad, “A standalone RFID indoor posi-
tioning system using passive tags,” IEEE Transactions on
7. Conclusion Industrial Electronics, vol. 58, no. 5, pp. 1961–1970, 2011.
[2] M. Z. A. Bhuiyan, G. Wang, and A. V. Vasilakos, “Local area
This paper presents a position estimation and positioning prediction-based mobile target tracking in wireless sensor net-
error correction method of mobile robot based on UWB, works,” IEEE Transactions on Computers, vol. 64, no. 7,
IMU, and encoders. The robot positioning system includes pp. 1968–1982, 2015.
a mecanum wheeled mobile robot, a remote control com- [3] A. Oka and L. Lampe, “Distributed target tracking using signal
puter, and UWB positioning subsystem. UWB ranging error strength measurements by a wireless sensor network,” IEEE
is corrected by the DS-TWR method and data fitting. The Journal on Selected Areas in Communications, vol. 28, no. 7,
UWB positioning system is composed of UWB anchors, pp. 1006–1015, 2010.
and a UWB robot tag can calculate robot position coordi- [4] A. Alarifi, A. Al-Salman, M. Alsaleh et al., “Ultra wideband
nates. The multisensor positioning method can improve indoor positioning technologies: analysis and recent
the robot positioning accuracy. The robot coordinates ðxc , advances,” Sensors (Switzerland)., vol. 16, no. 5, p. 707, 2016.
yc Þ are captured by the UWB subsystem, and the robot [5] S. Park and S. Hashimoto, “Autonomous mobile robot naviga-
velocities ðx_ c , y_ c Þ are calculated by the IMU and encoders. tion using passive RFID in indoor environment,” IEEE Trans-
Multisensor data are continuously fed to the Kalman filter actions on Industrial Electronics, vol. 56, no. 7, pp. 2366–2373,
to estimate the robot position. In the positioning process, 2009.
UWB data are also used to reduce the cumulative angle error [6] L. Zhang, Z. Chen, W. Cui et al., “WiFi-based indoor robot
generated by the IMU. In the UWB ranging correction positioning using deep fuzzy forests,” IEEE Internet of Things
experiments, the correction equation after data fitting can Journal, vol. 7, no. 11, pp. 10773–10781, 2020.
effectively improve the UWB ranging accuracy. The first [7] S. J. Kim and B. K. Kim, “Accurate hybrid global self-
path power of the UWB anchor signal is captured to confirm localization algorithm for indoor mobile robots with two-
dimensional isotropic ultrasonic receivers,” IEEE Transactions
the availability of UWB data. In the multisensor positioning
on Instrumentation and Measurement, vol. 60, no. 10,
experiments, the multisensor positioning method (IMU pp. 3391–3404, 2011.
+ WB positioning) has higher accuracy and stability than a
[8] Q. Fan, B. Sun, Y. Sun, Y. Wu, and X. Zhuang, “Data fusion for
single-sensor positioning method (IMU positioning and indoor mobile robot positioning based on tightly coupled INS/
UWB positioning). The experimental results indicate that UWB,” Journal of Navigation, vol. 70, no. 5, pp. 1079–1097,
the multisensor positioning method based on UWB, IMU, 2017.
and encoders can effectively improve the positioning accu- [9] J. González, J. L. Blanco, C. Galindo et al., “Mobile robot local-
racy of the mobile robot, and this method has stronger ization based on ultra-wide-band ranging: a particle filter
anti-interference ability. approach,” Robotics and Autonomous Systems, vol. 57, no. 5,
In the future, we will optimize the robot positioning sys- pp. 496–507, 2009.
tem to improve the positioning accuracy. For instance, more [10] Y. Xu, Y. S. Shmaliy, C. K. Ahn, G. Tian, and X. Chen, “Robust
different types of sensors can be combined in the process of and accurate UWB-based indoor robot localisation using inte-
robot positioning and error correction. Besides, more multi- grated EKF/EFIR filtering,” IET Radar, Sonar and Navigation,
sensor positioning tests will be carried out to expand its vol. 12, no. 7, pp. 750–756, 2018.
application scope. [11] K. C. Cheok, M. Radovnikovich, P. K. Vempaty, G. R. Hudas,
J. L. Overholt, and P. Fleck, “UWB tracking of mobile robots,”
Data Availability in IEEE Int. Symp. Pers. Indoor Mob. Radio Commun,
pp. 2615–2620, PIMRC, 2010.
All data included in this study are available upon request by [12] C. I. Transceivers, B. G. Yu, G. Lee et al., “A time-based angle-
contact with the corresponding author. of-arrival sensor using CMOS IR-UWB transceivers,” IEEE
Sensors Journal, vol. 16, no. 14, pp. 5563–5571, 2016.
Conflicts of Interest [13] T. Gigl, G. J. M. Janssen, V. Dizdarević, K. Witrisal, and
Z. Irahhauten, “Analysis of a UWB indoor positioning system
The authors declare no conflict of interest. based on received signal strength,” in 4th Work. Positioning,
Navig. Commun. 2007, pp. 97–101, WPNC’07- Work. Proc.
Acknowledgments 2007, 2007.
[14] J. Y. Lee and S. Yoo, “Large error performance of UWB rang-
This work was supported by the National Prevention Key ing in multipath and multiuser environments,” IEEE Transac-
Technology Project for Serious and Major Accidents in tions on Microwave Theory and Techniques, vol. 54, no. 4,
Work Safety of China, under Grant jiangsu-0002-2017AQ, pp. 1887–1895, 2006.
18 Journal of Sensors