Robot’s Velocity and Tilt Estimation
Through Computationally Efficient Fusion
of Proprioceptive Sensors Readouts
Pawel Wawrzy´ nski, Member, IEEE
Institute of Control and Computation Engineering
Warsaw University of Technology
00-665 Warsaw, Poland,
p.wawrzynski@elka.pw.edu.pl
Abstract— In this paper a method is introduced that combines
Inertial Measurement Unit (IMU) readouts with low accuracy
and temporarily unavailable velocity measurements (e.g., based
on kinematics or GPS) to produce high accuracy estimates of
velocity and orientation with respect to gravity. The method is
computationally cheap enough to be readily implementable in
sensors. The main area of application of the introduced method
is mobile robotics.
Keywords—velocity estimation, Kalman filter, mobile robotics.
I. I NTRODUCTION
Knowledge of velocity of a robot or its specific part is
usually crucial for their efficient control. Orientation of the
robot with respect to gravity vector is important especially in
legged robots, where it enables balancing of their body.
Velocity estimation is possible with a system based on
vision [1] or Global Positioning System (GPS) [2], [3], [4].
However, in many applications where autonomy of the robot
is required, exteroceptive sensors are unwanted. It is known
that velocity and orientation may be estimated by proper
integration of Inertial Measurement Unit (IMU) readouts.
However, IMU can not be used alone, as it is prone to the
so-called ’drift’ effect which makes the estimates practically
useless [5].
In [6] we proposed a method that combines IMU readouts
with velocity measurements that come from robot kinematics
to produce velocity and orientation estimates of a legged
robot. The estimates are generally of high accuracy even
if measurements are of low accuracy and are temporarily
unavailable. In this paper we present a version of this method
that is so computationally inexpensive that it may be in
principle implemented on electronics within a sensor (e.g.,
IMU).
The structure of this paper is as follows: Sec. II presents the
formal problem definition, and the notation used throughout
the paper. In Sec. III basic tools for the velocity estimation are
presented along with Extended Kalman Filter sensor fusion.
Sec. IV introduces the contribution of this paper, which is
a computationally inexpensive filter for velocity estimation.
Experimental data analysis and discussions are given in Sec. V.
Finally, in Sec. VI a brief summary of the results is given.
II. PROBLEM FORMULATION
A point in the robot body is given with Inertial Measurement
Unit (IMU) attached to it. IMU measures acceleration and
angular velocity. An auxiliary sensor measures velocity of
IMU in a drift-less manner. This auxiliary measurement may
result from leg’s kinematics, angular velocity of wheels, or
GPS. It may be temporarily unavailable because of no leg
touching the ground, inaccessibility of GPS satellites, and so
on.
At each moment we wish accurate measurement of velocity
and tilt of IMU in the frame in which this sensor takes
measurements. This frame, hereafter called IMU frame is
immobile with respect to the ground and at each moment it
is parallel to IMU. Tilt is expressed as gravity vector in IMU
frame. It is understood that having velocity and tilt in IMU
frame, we are able to express velocity and orientation of IMU
in any coordinate system. We are not able to express global
yaw, but without external reference point we are not able to
estimate it with high accuracy anyway.
We require that velocity and tilt estimates are recursive, and
their update on the basis of coming data are based on limited
computational effort. In essence, we require that the whole
computational burden may be handled by a microprocessor
within IMU.
Notation
Whenever it matters, we assume right-hand coordinate sys-
tem and right-wise rotations for positive angle. We also apply
the following notation conventions.
a ∈ R
3
is an acceleration vector measured by IMU, i.e.,
a sum of linear acceleration and acceleration due to
gravity, in IMU frame.
ω ∈ R
3
is the angular velocity of IMU in IMU frame.
g ∈ R
3
is the gravity vector in IMU frame.
v ∈ R
3
is the velocity vector of IMU in IMU frame.
δ is the constant time elapsing between consecutive
IMU measurements.
738 978-1-4799-8701-6/15/$31.00 ©2015 IEEE.