Professional Documents
Culture Documents
Sensors 16 01658 PDF
Sensors 16 01658 PDF
Sensors 16 01658 PDF
Article
Design, Implementation and Validation of the
Three-Wheel Holonomic Motion System of the
Assistant Personal Robot (APR)
Javier Moreno 1 , Eduard Clotet 1 , Ruben Lupiañez 1 , Marcel Tresanchez 1 , Dani Martínez 1 ,
Tomàs Pallejà 2 , Jordi Casanovas 1 and Jordi Palacín 1, *
1 Department of Computer Science and Industrial Engineering, University of Lleida, 25001 Lleida, Spain;
jmoreno@diei.udl.cat (J.M.); eclotet@diei.udl.cat (E.C.); robotica@udl.cat (R.L.);
mtresanchez@diei.udl.cat (M.T.); dmartinez@diei.udl.cat (D.M.); jcasanovas@quimica.udl.cat (J.C.)
2 Barton Laboratory, Cornell University, Geneva, NY 14456, USA; tpc63@cornell.edu
* Correspondence: palacin@diei.udl.cat; Tel.: +34-973-702-724
Abstract: This paper presents the design, implementation and validation of the three-wheel
holonomic motion system of a mobile robot designed to operate in homes. The holonomic motion
system is described in terms of mechanical design and electronic control. The paper analyzes
the kinematics of the motion system and validates the estimation of the trajectory comparing the
displacement estimated with the internal odometry of the motors and the displacement estimated
with a SLAM procedure based on LIDAR information. Results obtained in different experiments
have shown a difference on less than 30 mm between the position estimated with the SLAM and
odometry, and a difference in the angular orientation of the mobile robot lower than 5◦ in absolute
displacements up to 1000 mm.
Keywords: holonomic motion; assistant robot; mobile robot motion; omnidirectional wheel
1. Introduction
The uses of mobile robots are continuously increasing in non-industrial applications such as
military and security settings [1], inspection of power lines in smart grids [2], crop-inspection in
smart agriculture [3], disaster recovery [4], interaction with customers [5] and also helping people
with mobility impairments [6]. Reports from diverse institutions such as the United Nations [7] and
World Health Organizations [8] postulate that the proportion of people aged 60 or more will rise from
12% to 21% during the next 35 years as a result of a clear increase of human life expectancy and the
development of assistant robots can be a technological tool that will contribute to increase the quality
of life of elderly people and people with mobility impairments. In this direction, the combination of
assistant mobile robots [9] and fixed domotic systems [10] can be used at home in an unstructured
domestic environment and also contribute to supervise or develop some domestic tasks.
In this direction, the Assistant Personal Robot (APR) [9] proposed the conception of a new
robotic assistant designed to operate in tight indoor spaces thanks to its holonomic motion system.
The new contribution of this paper is the complete description of the optimized mechanical design,
kinematics, and basic control of the three-wheel holonomic motion system implemented in the APR
mobile robot. This complete description is proposed in order to foster replication and verification of
the results. The paper ends with an empirical validation of the trajectory estimated by the internal
control system which will be used in the future to improve the implementation of additional trajectory
control procedures.
Sensors
Sensors2016,
2016,16,
16,1658
1658 2 2ofof2121
2. Background
Sensors 2016, 16,
Sensors 1658
2016, 16, 1658 2 of 212 of 21
Sensors 2016,
Sensors 16,16,
2016, 1658
1658 2 of 21 2 of 21
2.2.Background
Background
Mobile robots can be classified accordingly to the motion system or by the type of mobility
2. Background
2. Background
(Table 2.
1). Background
2.MobileThe
Background motion
Mobilerobotsrobotscan system
can can be based
bebeclassified
classified on wheels,
accordingly
accordingly totothe tracks,
the motion ball-shaped
motion systemororwheels
system bybythetheor
typelegs.
type The type of
ofofmobility
mobility
Mobile robots
Mobile can be
robots canclassified accordingly
be classified accordinglyto thetomotion
the motion system or byorthe
system bytype of mobility
the type of mobility
mobility
(Table
(Table1). can
1).Thebemotion
The
Mobile classified
motion
robots as be
system
system
can omnidirectional
can
can bebebased
classifiedbased onon(or holonomic)
wheels,
wheels,
accordingly tracks,
to to
thetracks, or
motion non-omnidirectional.
ball-shaped
ball-shaped
system orwheels
wheels
by the ororlegs.
type legs.The
The
The holonomic
type
typeofof
(Table 1).Mobile
(Table The Therobots
1).motion motion can
system be
can
system classified
becanbased accordingly
on wheels,
be based the
tracks,
on wheels, motion
ball-shaped
tracks, system
ball-shaped or
wheels by theorof
or legs.
wheels
mobility
type
The of
legs. type
Themobility
of of
type
mobility
mobile
mobility can
robots
(Tablecan be
1).beclassified
have
Theclassified
motion as
asomnidirectional
the advantage
system canthat
omnidirectional theyon
be based (or
canholonomic)
(or change
holonomic)
wheels, tracks, or
the or non-omnidirectional.
direction of motion
non-omnidirectional.
ball-shaped wheels or legs. The
Theholonomic
without
The having
holonomic
type of to
(Table
mobility 1).
can be
mobility The
can motion
classified system can
as omnidirectional
bebeclassified be based
as omnidirectional
omnidirectional on wheels,
(or holonomic) tracks, ball-shaped
or non-omnidirectional. wheels or legs. The
The holonomic type of
mobile
mobile
perform mobility
robotscan
robots
intermediatehave
have classified
the
the as
advantage
advantage
rotation steps that
thatthey
and they (or(or
can
can
are
holonomic)
holonomic)
change
change
able to theor
the
move
or non-omnidirectional.
non-omnidirectional.
direction
direction
in all ofofmotion
motionfrom
directions The
without
without
a
The holonomic
holonomic
having
givenhaving toto
starting
mobilemobility
robots
mobile
mobile
canhave
robots behave
robots
classified
the
have advantage
the as omnidirectional
advantage
the rotating
advantagethatthat
they cancan
thatthey
they (or
can holonomic)
change change
change thethe the ordirection
direction non-omnidirectional.
direction of
of motion without
of motion
motion without
The
having
without
having
holonomic
to to to
having
perform
perform
point while intermediate
intermediate
simultaneously rotation
rotation steps
stepsandandthey
[11]. theyareareable
abletotomovemove ininallalldirections
directions from
froma agiven
given starting
starting
mobile
performperform
performrobots
intermediate have
intermediate the
rotation advantage
steps
rotation
intermediate rotation and
steps
steps that
they they
are
they can
able
are change
to
able moveto the
in
move direction
all directions
in all of motion
from
directions a without
given
and they are able to move in all directions from a given startingstarting
and from a having
starting
given to
point
pointwhile
whilesimultaneously
simultaneously rotating
rotating [11].
[11].
pointperform
while
point intermediate
simultaneously
while simultaneouslyrotation
rotating steps
[11].
rotating
point while simultaneously rotating [11]. and
[11].they are able to move in all directions from a given starting
Table 1. Classification of mobile robots based on the motion system and type of mobility.
point while simultaneously rotating [11].
Table
Table1.1.Classification
Classificationofofmobile
mobilerobots
robotsbased
basedononthe
themotion
motionsystem
systemandandtype
typeofofmobility.
mobility.
1.Table
TableTable 1.1.Classification
Classification
Classification of
ofmobile
of mobile robots
robots
mobile based
based
robots onon
basedthethe
on motion
motion
the system
system
motion and type
and
system andof
type ofmobility.
mobility.
type of mobility.
Motion System Based on
Table 1. Classification of mobileMotion
Motion
MotionSystem
robots based
System
System Based
on the
Based
Based onmotion
on system and type of mobility.
Wheels Motion System
Motion Based
System onon on
Based Ball Legs
Wheels
Wheels
Wheels
Universal Wheels Wheels Omnidirectional
Motion System Based on Ball
Ball
Ball Legs
Legs Legs
Universal
Universal
Universal Omnidirectional
Omnidirectional
Omnidirectional Ball Ball Legs Legs
Universal Wheels
Universal Omnidirectional
Omnidirectional
Ball Legs
Universal Omnidirectional
Table 1d shows a robot with ball-shaped wheels, such as the design proposed by West and
Asada [17] that can run in any direction [18–20] but not over rough grounds or steps. Table 1 shows
that omnidirectional mobile robots based in wheels can have universal or omnidirectional wheels.
Alternatively, Table 1e shows also a legged robot because these can move in any direction and can
move on any type of surface, however, the mechanism of legged robots are very complex and have
velocity limitations [21].
In general, the principles of operation of omnidirectional mobile robots are based on kinematic
models. One of the most popular references is the technical report by Muir and Neuman [12] which
formulates the equations of motion of wheel-based mobile robots, incorporating also conventional
omnidirectional and ball wheels. Currently there are a lot authors working in research about the
locomotion of this mobile robots [5,13].
There are many holonomic mobile robot designs available in the literature. The first omnidirectional
mobile robot was proposed in 1987 by Muir and Neuman [22] and was named Uranus. This proposal
was based on introducing a methodology for the kinematic modeling of an omnidirectional wheeled
mobile robot equipped with four omnidirectional wheels which was based in passive rollers arranged
in an overlapping way. These wheels were positioned in pairs on the same axle but with opposite
orientation. Alternatively, in 1996 Wada and Mori [15] proposed a new type of holonomic mobile
robot which was equipped with steerable and coordinated driving wheels using conventional tires to
provide an omnidirectional capability by actuating a wheels axis and a steering axis independently.
There are a several types of omnidirectional wheels but in all of them the principle of function
is based in providing traction in the direction normal to the motor axis, and the use of inner passive
rollers that can slide in the direction of the motor axis. These inner passive wheels, balls or rollers are
placed along the periphery or the main wheels [14,23]. These omnidirectional wheels can be grouped
in four types according to their traces.
Figure 1a shows a wheel design which consists of multiple passive rollers (or inner passive wheels)
whose axes are positioned tangent to the main wheel circumference. This construction cannot avoid
the discontinuous traces and originate an irregular contact with surfaces because of gaps between
successive rollers or wheels, which produce vibrations in the robot. To cancel these effects in these
types of wheels there are some solutions which reduce the size gap between the passive rollers [24].
Mecanum [25] (Figure 1b), was invented in 1973 by Ilon, an engineer working for the Swedish Company
Macanum AB and is other design type of wheel based on rollers arranged in an overlapping way
in such a way that contact between the wheel and the ground is continuous. These wheels are thus
usually positioned in pairs on the same axle but with opposite orientations to form a four-wheel
structure. The drawback of these wheels is the generation of horizontal vibrations because of the
parasite torques which are generated by the fact the contact point moves along a line parallel to the
wheel shaft. The double wheel concept, presented in Figure 1c, is a solution based on two overlapping
parallel wheels. The contact between the assembly wheel and the ground is continuous. This design
generates an important horizontal vibration originated by the gaps between the rotating inner wheels.
Finally, in the design of the Figure 1d, the contact points are in line, which avoids the horizontal
vibrations and the alternated use of passive rollers of different sizes and shapes minimizes the gap
between them thus causing little vertical vibration.
of the parasite torques which are generated by the fact the contact point moves along a line parallel
to the wheel shaft. The double wheel concept, presented in Figure 1c, is a solution based on two
overlapping parallel wheels. The contact between the assembly wheel and the ground is continuous.
This design generates an important horizontal vibration originated by the gaps between the rotating
inner wheels. Finally, in the design of the Figure 1d, the contact points are in line, which avoids the
Sensors horizontal vibrations and the alternated use of passive rollers of different sizes and shapes minimizes4 of 21
2016, 16, 1658
the gap between them thus causing little vertical vibration.
Figure 1. Types of omnidirectional wheels and their traces: (a) multiple passive rollers (or inner
Figure 1. Types of omnidirectional wheels and their traces: (a) multiple passive rollers (or inner
passive wheels) whose axes are positioned tangent to the main wheel circumference; (b) with the
passive wheels) whose axes are positioned tangent to the main wheel circumference; (b) with the
rollers arranged in an overlapping way where the contact between the wheels and the ground is
rollerscontinuous;
arranged in an overlapping way where the contact between the wheels and the ground is
(c) based on two overlapping parallel wheels; (d) based on using alternated passive
continuous; (c) based on two
rollers with different size overlapping
and shape. parallel wheels; (d) based on using alternated passive rollers
with different size and shape.
Sensors 2016, 16, 1658 4 of 21
3. The Assistant Personal Robot
3. The Assistant Personal Robot
The concept and design of the Assistant Personal Robot (APR, Figure 2) was presented in [9] with
The concept and design of the Assistant Personal Robot (APR, Figure 2) was presented in [9]
the aim to provide personal assistance services in households or institutions without interfering with
with the aim to provide personal assistance services in households or institutions without interfering
the inhabitants. The APR was designed to be very maneuverable and capable of navigating in tight
with the inhabitants. The APR was designed to be very maneuverable and capable of navigating in
spaces.
tightThe physical
spaces. design of
The physical the APR
design was
of the APRinspired and includes
was inspired several
and includes resemblances
several with
resemblances humans
with
in order
humansto operate,
in order maneuver and moveand
to operate, maneuver themove
headthe
and theand
head arms
theinarms
a similar way. way.
in a similar
(a) (b)
Figure 2. Assistant Personal Robot (APR): (a) CAD design; (b) prototype implementation.
Figure 2. Assistant Personal Robot (APR): (a) CAD design; (b) prototype implementation.
The APR (Figure 2) is a holonomic mobile robot, based on a mechanical structure where all
The APR
elements of (Figure
the APR 2)
areissupported
a holonomicmademobile robot, based
with a combination on a mechanical
of stainless structure parts
steel and aluminum where all
to guarantee
elements the durability,
of the APR resistance
are supported made andwith
control the weight. The
a combination structure steel
of stainless of theand
APRaluminum
is divided parts
into a circular
to guarantee the section base containing
durability, resistancetheandmotion system
control based on The
the weight. threestructure
omnidirectional
of thewheels,
APR isanddivided
into aa thin body,section
circular which has two
base rotating arms
containing theand a multi-touch
motion panoramic
system based screenomnidirectional
on three for interacting with
wheels,
humans. This agile, compact and reliable design avoids the presence of sharp edges or projecting
and a thin body, which has two rotating arms and a multi-touch panoramic screen for interacting with
parts, and facilitates its application in a domestic environment. Moreover, the mechanical structure
formed by the body simplifies the application and development of supplementary mechanical
devices.
The APR has a weight of 35 kg with the heavy elements placed on the base and close to the
ground in order to provide a lower center of mass and stable displacement. The APR has a triangular
contact area with the ground because of the three wheeled motion system. The base contains the
Sensors 2016, 16, 1658 5 of 21
humans. This agile, compact and reliable design avoids the presence of sharp edges or projecting parts,
and facilitates its application in a domestic environment. Moreover, the mechanical structure formed
by the body simplifies the application and development of supplementary mechanical devices.
The APR has a weight of 35 kg with the heavy elements placed on the base and close to the ground
in order to provide a lower center of mass and stable displacement. The APR has a triangular contact
area with the ground because of the three wheeled motion system. The base contains the motion
system based on three omnidirectional wheels, the batteries, the LIDAR, and the main electronic
boards. The external design of the base is completed with a bent plastic ABS case, which provides
a flexible protection that will absorb part of the impact in case of collision.
The interactive zone contains a multi-touch panoramic screen and two shoulders with one degree
of freedom in order to move the arms forwards and backwards. The chest and shoulders of the APR are
located at approximately
Sensors 2016, 16, 1658 1.3 m height which is slightly lower than the shoulders of an average 5 of human.
21
This position was chosen in order to give elderly people direct access to hold the arms of the robot.
average human.
The shoulders of theThis
APRposition
containwas twochosen
heavyinMicromotor
order to give
DC elderly
motorspeople
whichdirect
are access to hold
connected to the
two soft
arms of the robot. The shoulders of the APR contain two heavy Micromotor DC motors which are
arms with a 35 cm separation between them. The arms are 55 cm long just for esthetical reasons and
connected to two soft arms with a 35 cm separation between them. The arms are 55 cm long just for
can be used as a support by elder people when walking or used for basic gesture interactions. The arms
esthetical reasons and can be used as a support by elder people when walking or used for basic
are periodically moved The
gesture interactions. during
armsaare forward displacement
periodically in order
moved during to mimic
a forward the natural
displacement movements
in order to
performed by humans while walking.
mimic the natural movements performed by humans while walking.
The The
APRAPR hashasa height
a heightof of
164164cmcmand
andaa width
width ofof48
48cm
cmininorder
order
to to simplify
simplify the the remote
remote tele-control
tele-control
of theofmobile robot
the mobile when
robot when passing
passingthrough
throughdoorways, smallcorridors
doorways, small corridors or or complicated
complicated paths.
paths. The most
The most
characteristic parts of the APR is the holonomic motion system and this paper
characteristic parts of the APR is the holonomic motion system and this paper describes the mechanical describes the
mechanical implementation and the
implementation and the control of the motion system.control of the motion system.
3.1. Mechanical
3.1. Mechanical Implementation
Implementation of ofthe
theMotion
MotionSystem
System of
of the
theAPR
APR
The omnidirectional robots can maneuver in small spaces and perform complex trajectory paths.
The omnidirectional robots can maneuver in small spaces and perform complex trajectory paths.
The inclusion of a circular design also minimizes the probability of it getting accidentally caught on
The inclusion of a circular design also minimizes the probability of it getting accidentally caught on
furniture objects such as mats, curtains or clothing. Figure 3 shows the motion system of the APR,
furniture
whichobjects
is basedsuch as use
in the mats,of curtains or clothing. wheels,
three omnidirectional Figure shifted
3 shows theand
120° motion system
composed of the APR,
of passive
which is based ◦
rollers. Thisinthree-wheeled
the use of three omnidirectional
robot wheels, shifted
has three independent 120motors
geared DC and composed
attached toofthe
passive
wheels rollers.
This three-wheeled robot3-DOF.
and they can achieve has three
Eachindependent geared
wheel has the DC motors
same distance, attached
R, from to the
its center to wheels and
the center of they
the can
achieve 3-DOF.
mobile Each wheel has the same distance, R, from its center to the center of the mobile robot.
robot.
Figure
Figure 3. CADmodel
3. CAD model of
of the
themotion
motionsystem based
system on theon
based usethe
of three omnidirectional
use of wheels shifted
three omnidirectional wheels
120°. ◦
shifted 120 .
In the future, this motion system will include additional suspension in order to minimize the
vertical vibrations caused by the gap between the omnidirectional wheels. The inclusion of a
suspension system based on springs allows the adaptation of the preload to different floor conditions.
The design of the APR is based on the operating principle of a pendulum. This design allows
individual damping and pillar oscillation. The pivoting point is placed over the center of mass,
mainly formed by the batteries, so the forces that appear during the oscillations tend to put the body
to rest, reaching the natural damping equilibrium of the device.
Sensors 2016, 16, 1658 6 of 21
In the future, this motion system will include additional suspension in order to minimize
the vertical vibrations caused by the gap between the omnidirectional wheels. The inclusion of
a suspension system based on springs allows the adaptation of the preload to different floor conditions.
The design of the APR is based on the operating principle of a pendulum. This design allows
individual damping and pillar oscillation. The pivoting point is placed over the center of mass, mainly
formed by the batteries, so the forces that appear during the oscillations tend to put the body to rest,
reaching the natural damping equilibrium of the device.
vibration.
Sensors This16,implementation
2016, 1658 allows wheel spin and perpendicular displacements from 6the of 21wheel
vibration. This implementation allows wheel spin and perpendicular displacements from the wheel
forwarding direction and thus the direct displacement in any direction.
forwarding direction and thus the direct displacement in any direction.
vibration. This implementation allows wheel spin and perpendicular displacements from the wheel
forwarding direction and thus the direct displacement in any direction.
(a) (b)
Figure 5. Design of the omnidirectional wheel: (a) CAD model (b) prototype implementation.
Figure 5. Design of the omnidirectional wheel: (a) CAD model (b) prototype implementation.
Sensors 2016, 16, 1658 (a) (b) 7 of 21
Figure 5. Design of the omnidirectional wheel: (a) CAD model (b) prototype implementation.
The shape of bracket rollers allows that the small roller can be partially housed in the big roller,
allowing dismiss the gap between the rollers. The circumference of the wheels has an external
diameter of 300 mm and a width of 46 mm. The weight of each omnidirectional wheel implemented
in aluminum is 2.6 kg. The main parts of the omnidirectional wheel (Figure 7) are the roller brackets
Figure 6. CAD section showing the alternate use of the two passive roller types.
(FiguresFigure
8 and 9)
6. and
CADthe passive
section rollers. the
showing Thealternate
shape of the use bracket
of the tworollers allows
passive the overlapping
roller types. of
the rollers in order to reduce the size of the gap (2.5 mm in this implementation) and to minimize the
vertical vibrations in the transitions. Figure 7 shows an exploded view of the basic components of the
Thewheel.
shapeSensors
of bracket rollers allows that the small roller can be partially housed
2016, 16, 1658
in the big roller,
7 of 21
allowing dismiss the gap between the rollers. The circumference of the wheels has an external diameter
The shape of bracket rollers allows that the small roller can be partially housed in the big roller,
of 300 mm and aallowing
widthdismiss
of 46 mm. The weight of each omnidirectional wheel implemented in aluminum
the gap between the rollers. The circumference of the wheels has an external
is 2.6 kg. The main
diameter parts
of 300 of
mmtheand aomnidirectional wheel
width of 46 mm. The weight (Figure
of each 7) are the
omnidirectional wheelroller brackets (Figures 8
implemented
and 9) and the in aluminum is 2.6 kg. The main parts of the omnidirectional wheel (Figure 7) are the roller brackets
passive rollers. The shape of the bracket rollers allows the overlapping of the rollers
(Figures 8 and 9) and the passive rollers. The shape of the bracket rollers allows the overlapping of
in order to reduce the in
the rollers size oftothe
order gap
reduce (2.5ofmm
the size in(2.5
the gap this
mmimplementation) and
in this implementation) and to minimize
to minimize the the vertical
vertical
vibrations in the vibrations inFigure
transitions. the transitions.
7 shows Figure
an7 shows an exploded
exploded view view
ofofthe
the basic
basiccomponents of the of the wheel.
components
wheel.
In the first prototype some parts like rollers and rollers brackets were made in ABS plastic using
the technique of rapid prototyping by fusion deposition modeling (FDM). The main advantage of a
rapid prototyping manufacturing is the simple implementation of any type of complex piece.
Nevertheless, several plastic rollers
Figure brackets
7. Exploded viewend up
of the breaking
basic in of
components areas of accumulation of tension due
the wheel.
to fatigue stresses.Figure 7. Exploded view of the basic components of the wheel.
In the first prototype some parts like rollers and rollers brackets were made in ABS plastic using
the technique of rapid prototyping by fusion deposition modeling (FDM). The main advantage of a
rapid prototyping manufacturing is the simple implementation of any type of complex piece.
Nevertheless, several plastic rollers brackets end up breaking in areas of accumulation of tension due
to fatigue stresses.
Figure 8. Drawing front and side elevation of roller bracket (units in mm).
FigureFigure 8. Drawing front and side elevation of roller bracket (units in mm).
8. Drawing front and side elevation of roller bracket (units in mm).
Sensors 2016, 16, 1658 8 of 21
Figure 8 shows the simplified symmetric aluminum implementation of the roller brackets in
order to improve the durability, reduce the cost and simplify the construction of the wheels. The
rollers brackets are simple part which is based on an aluminum plate (8 mm height), cut with a laser
Sensors 2016, 16, 1658 8 of 21
by numeric control and combined with holes also implemented with a computer numeric control to
allow the correct orientation of edges to passive rollers (see Figure 9).
Figure 8 shows the simplified symmetric aluminum implementation of the roller brackets in
order to improve the durability, reduce the cost and simplify the construction of the wheels. The
rollers brackets are simple part which is based on an aluminum plate (8 mm height), cut with a laser
by numeric control and combined with holes also implemented with a computer numeric control to
allow the correct orientation of edges to passive rollers (see Figure 9).
(a) (b)
Figure 9. Rollers brackets with axis of big passive roller (green axis) and small passive roller (blue
Figure 9. Rollers
axis). brackets
(a) Examplewith
madeaxis of plastic
of ABS big passive roller
with a rapid (green axis)
prototyping and (b)
3D printer; small
madepassive roller (blue axis).
of aluminum
(a) Example made of ABS plastic with a rapid prototyping 3D printer; (b) made of aluminum with laser
with laser cut and numeric control.
Figure 10. Drawing front and side elevation of big passive roller (units in mm).
Figure 10. Drawing front and side elevation of big passive roller (units in mm).
Sensors 2016, 16, 1658 9 of 21
Sensors 2016, 16, 1658 9 of 21
Sensors 2016, 16, 1658 9 of 21
Sensors 2016, 16, 1658 9 of 21
(a) (b)
(a) (b)
Figure 11. Big
(a) passive roller implemented in (a) plastic ABS and (b)
(b) aluminum.
Figure 11. Big passive roller implemented in (a) plastic ABS and (b)(b)
Figure 11. Big passive roller implemented in (a) plastic ABS and aluminum.
aluminum.
Figure 11. Big passive roller implemented in (a) plastic ABS and (b) aluminum.
Figure 12. Drawing front and side elevation of small passive roller (units in mm).
Figure 12. Drawing front and side elevation of small passive roller (units in mm).
Figure 12. Drawing front and side elevation of small passive roller (units in mm).
Figure 12. Drawing front and side elevation of small passive roller (units in mm).
(a) (b)
(a) (b)
Figure 13. Small
(a) passive roller implemented in (a) plastic ABS and(b)
(b) aluminum.
Figure 13. Small passive roller implemented in (a) plastic ABS and (b) aluminum.
Figure 13. Small passive roller implemented in (a) plastic ABS and (b) aluminum.
Figure 13. Small passive roller implemented in (a) plastic ABS and (b) aluminum.
Sensors 2016, 16, 1658 10 of 21
Figure
Figure 14.14. Kinematic
Kinematic diagram
diagram of of
thethe translation
translation of of
thethe mobile
mobile robot:
robot: v andand
α definedefine the velocity
the velocity vector
vector of the mobile robot in polar form and , , and are the velocity in each
of the mobile robot in polar form and vta , vtb , and vtc are the velocity in each of the wheelsof the wheels
caused
bycaused by translation.
translation.
Figure 15 shows the projection on the normal direction, , , and due to the rotation ω.
TheFigure 15 shows
rotational the projection
movement on the normal
provides equivalent speeddirection, vra , vrb , and vrc due to the rotation ω.
at each wheel.
The rotational movement
The equations providesthe
that describe equivalent speed
velocity of each at each wheel.
wheel, , in terms of rotation and translation
The equations that describe
are Equations (1) and (2): the velocity of each wheel, νw , in terms of rotation and translation are
Equations (1) and (2):
, , , , , , , (1)
νw (νa , νb , νc ) = vtraslation (νta , cos
νtb , ν30
tc ) + vrotation ( νra , νrb , νrc ), (1)
, , ∙ cos 150 ∙ , (2)
cos
cos (27030 − α)
c) =
ν (νa , νb , νof v · cos (150 − αmodule
) +ω · R, (2)
where , , are thew velocity the wheels, is the of the mobile robot velocity,
is the angular orientation expressed in degrees, cosis(270 the − α)
rotation of the mobile robot and is the
Sensors 2016, 16, 1658 11 of 21
where νw (νa , νb , νc ) are the velocity of the wheels, v is the module of the mobile robot velocity, α is the
Sensors 2016, 16, 1658 11 of 21
angular orientation expressed in degrees, ω is the rotation of the mobile robot and R is the distance
between
distancethe wheelsthe
between and the center
wheels and theofcenter
mobileof robot
mobile(220 mm).
robot Equations
(220 mm). (1) and
Equations (2) can
(1) and be used
(2) can be
to used
estimate the velocity of the wheels required to move the mobile robot at a desired velocity
to estimate the velocity of the wheels required to move the mobile robot at a desired velocity and
angular rotation.
and angular rotation.
Figure 15. Kinematic diagram of the rotation of the mobile robot: is the rotation and , , and
Figure 15. Kinematic diagram of the rotation of the mobile robot: ω is the rotation and vra , vrb , and vrc
are the velocity in each of the wheels caused by rotation motion. is the distance between the
are the velocity in each of the wheels caused by rotation motion. R is the distance between the wheels
wheels and the center of mobile robot.
and the center of mobile robot.
3.4. Kinematic Model
3.4. Kinematic Model
The kinematic model of the mobile robot is based on the analysis of the rotation of the wheels in
order tokinematic
The estimate υmodel of the
(in m/s), mobile
α (in rad) androbot is based
ω (in rad/s) on the mobile
of the analysis of the
robot. Therotation of the wheels
APR estimates the
in velocity
order toof estimate
the wheels by using the encoders in the motors of the wheels. The computationestimates
υ (in m/s), α (in rad) and ω (in rad/s) of the mobile robot. The APR of the
thekinematic
velocity model of the wheels by using
from Equation (2) the encoders
is not in the motors
trivial because of the wheels.
it is a non-linear system.The computation
In this paper, the of
thekinematic
kinematic modelmodel from
of the Equation
mobile robot(2) hasisbeen
not trivial
obtained because it is abecause
graphically non-linearonlysystem. In this
the velocities ofpaper,
the
thewheels
kinematic model ofFigure
are available. the mobile
16 showsrobotthehas been obtained
kinematic diagramgraphically
of the motion because only the
of the mobile velocities
robot, where of
, , are
the wheels arethe velocityFigure
available. of the wheels,
16 shows represented on thediagram
the kinematic projectionsof of
thethe directions
motion of mobile
of the the wheels;
robot,
where , νa ,, νb , ν, c are
, the
, are the projections
velocity of the wheels,of therepresented
possible velocity on thevector of motion;
projections and directions
of the , , arethe
of
the points cuts. The interpretation of Figure 16 is as follows: the dashed lines show
wheels; wa , wb , wc , r a , rb , rc are the projections of the possible velocity vector of motion; and P1 , P2 , P3 the normal
aredirection
the points to the motor
cuts. Theaxis of each wheel
interpretation of and the 16
Figure arrow
is asindicates
follows:the thepositive
dasheddirection
lines showof rotation of
the normal
the wheel
direction to theandmotor
on which
axis we project
of each wheelthe and
speedtheofarrow
each wheel,
indicateswhich it is a sum
the positive of the speed
direction of
of rotation
translation and rotation. In the case of no rotation in the displacement
of the wheel and on which we project the speed of each wheel, which it is a sum of the speed of of the mobile robot (Figure 14),
the velocity vector of translation are at some point at the normal line established at the end of the
translation and rotation. In the case of no rotation in the displacement of the mobile robot (Figure 14),
vector speed of each wheel, and then the solution is the cutoff point. In the case of rotation in the
the velocity vector of translation are at some point at the normal line established at the end of the
displacement of the mobile robot (Figure 15), the velocity vector is equidistance to the normal lines
vector speed of each wheel, and then the solution is the cutoff point. In the case of rotation in the
because the rotational movement provides equivalent speeds at each wheel.
displacement of the mobile robot (Figure 15), the velocity vector is equidistance to the normal lines
because the rotational movement provides equivalent speeds at each wheel.
Sensors 2016, 16, 1658 12 of 21
Sensors 2016, 16, 1658 12 of 21
Figure 16. Graphic diagram to solve the kinematic of mobile robot based on use the projections of the
Figure 16. Graphic diagram to solve the kinematic of mobile robot based on use the projections of the
velocity vectors of each wheel.
velocity vectors of each wheel.
The equations to calculate the projection line of velocity of each wheel , , are:
The equations to calculate the projection line of velocity of each wheel r a , rb rc , are:
√3 √3 √3 1
: tan 30 ∙ ∙ cos 30 ∙ tan 30 ∙ sin 30 ∙ ∙
√ 2 3
√
22 3√
2 2
!
3 3 3 1 (3)
r a : y = −tan30 · x + (v a · cos30 + v a · tan30 √3· sin30 2 )√3= − 3 · x + v a + ·
: ∙ 2 3 2
√ 3 3√ (3)
2
3 223
: tan 30r a∙ : y = − 3∙ cos · x30
+
3
v a ∙ tan 30 ∙ sin 30
√3 √3 √3 1 √ √ √
∙ ∙ !
3 2 3 2 23 2
3 2
3 1 (4)
rb : y = tan30 · x + ((−vb ) · cos30 + (−vb ) · tan30 · sin30) = · x − vb + ·
√3 2 √3 3 2 3 2
: √ ∙ √ (4)
2 3
3 232 3
rb : y = ·x− v
3: 3 b (5)
This equidistant point can be obtained x=
rc : as the−centroid
vc of the triangle formed, which can be (5)
obtained using the cutoffs of , , :
This equidistant point can be obtained as the centroid of the triangle formed, which can be
obtained using the cutoffs of r a , rb , rc : √3
⟺ : , 2 (6)
√ 3 !
2
3
rc ⇔ rb : P1 = −vc , − (vc + 2vb ) (6)
√33
⟺ : , 2 (7)
√ 3 !
2
3
rc ⇔ r a : P2 = −vc , (vc + 2v a ) (7)
3 √3
⟺ : ,
√ 3 !
2
3
r a ⇔ rb : P3 = v a + vb , (v a − vb ) (8)
3 2 √3
, , (8)
3 3 3 √ 3 !
P1x + P2x + P3x P1y + P2y + P3y v a + vb − 2vc 2 3 (v a − vb )
G= , = ,
3 3 3 3
Sensors 2016, 16, 1658 13 of 21
Sensors 2016, 16, 1658 13 of 21
Andthen,
And then,the
theequations
equationsfor
forcalculating
calculatingthe
thevelocity
velocityvector
vector of
ofthe
themobile robot,→
mobilerobot, v ,,which
whichcan
canbe
be
represented in polar form as (υ, α) and ω are:
represented in polar form as (υ, α) and ω are:
2
s
v a + vb − 2vc 2 (v a − vb )2 (9)
q
2
( Gx )2 + Gy
2 2
v= = 3 + 3 (9)
3 3
√ √3
α 90 tan (10)
!
2
3 (v a − v2b )
α = 90 − tan−1 (10)
v a + vb − 2vc
2
ω∙ v a + vb − 2vc
ω · R = Gx − r c = 3 − (−vc ) (11)
3 (11)
v a + vb + vc
ωω= 3
3R
being v the
being thevelocity
velocityofof the
the mobile
mobile robot,
robot, α the
α the angular
angular orientation
orientation andand ω angular
ω the the angular rotation
rotation of
of the
the mobile
mobile robot.robot.
4. Control of
4. Control of the
the Motion System
The
The motion system
system of of the
theAPR
APRisiscontrolled
controlled with
with an an
ARM ARM Cortex-M4
Cortex-M4 microcontroller
microcontroller [9].
[9]. The
The control
control of motion
of the the motion is based
is based oninformation
on the the information provided
provided by thebyencoders
the encoders
of theofDCthemotors
DC motors
of the
of the mobile
mobile robot. robot. The magnetic
The magnetic encoders encoders
available available
in the lowin the
costlow
DC cost
motorsDCgenerate
motors generate three
three impulses
impulses
per turn and the motor velocity is estimated by counting the time between the pulses with a 16with
per turn and the motor velocity is estimated by counting the time between the pulses bits
atimer
16 bitscounter
timer counter so are
so there theretree
are velocity
tree velocity estimates
estimates perper motor
motor turn.
turn. TheThewheel
wheelvelocity
velocity is directly
directly
estimated
estimated by by dividing
dividing the
the motor
motor velocity
velocity byby the
the fixed
fixed mechanical
mechanical gear
gear ratio
ratio of
of the
the DC
DC motors
motors (43:1).
(43:1).
The
The microcontroller generates three Pulse Width Modulation (PWM) signals which are expressedin
microcontroller generates three Pulse Width Modulation (PWM) signals which are expressed in
percentage
percentage(%) (%)and
andapplied
appliedtotothreethreeH-bridges
H-bridges in in
order
orderto convert
to convertthethe
12 V 12(13.8 V atVfull
V (13.8 charge)
at full of the
charge) of
battery into into
the battery an average DC voltage
an average DC voltagein theinmotors. Figure
the motors. 17 shows
Figure the wheel
17 shows labeling
the wheel used:used:
labeling wheel 1 is
wheel
the
1 isfront-left, wheel
the front-left, 2 is the
wheel 2 isfront-right, and wheel
the front-right, 3 is the
and wheel 3 isback wheel.
the back wheel.
Figure17.
Figure 17.Detail
Detailof
ofthe
thelabeling
labelingand
andpositive
positiveangular
angularvelocity
velocityof
ofthe
thewheels.
wheels. The
Thegreen
greenarrow
arrowdepicts
depicts
the front of the mobile robot.
the front of the mobile robot.
The DC motors are powerful enough to displace the 35 kg of the mobile robot with a forward
The DC motors are powerful enough to displace the 35 kg of the mobile robot with a forward
velocity comparable with that of a walking human. Figure 18 shows the profile of the velocity of the
velocity comparable with that of a walking human. Figure 18 shows the profile of the velocity of the
wheels of the APR in case of applying a fixed PWM of 62%, 40%, 25% during 4 s to the motors of the
wheels of the APR in case of applying a fixed PWM of 62%, 40%, 25% during 4 s to the motors of the
APR in an open loop operation without any feedback control. The average velocities of the wheels
APR in an open loop operation without any feedback control. The average velocities of the wheels
were approximately 45, 30 and 15 rpm respectively. Figure 19 shows an image of the initial and
were approximately 45, 30 and 15 rpm respectively. Figure 19 shows an image of the initial and ending
ending mobile robot position obtained after this experiment. Figure 18 shows that, in this case, the
mobile robot position obtained after this experiment. Figure 18 shows that, in this case, the wheels
wheels reach the 80% of the maximum speed in only 0.1 s which means that the mobile robot reaction
is very fast but then the mechanical stress suffered by the onboard mechanical and electronic elements
Sensors 2016, 16, 1658 14 of 21
reach the 80% of the maximum speed in only 0.1 s which means that the mobile robot reaction is
Sensors
very fast but2016, 16, 1658
then the mechanical stress suffered by the onboard mechanical and electronic14elements of 21
is also very high. Figure 18 also shows that there are an unwanted peak prior velocity stabilization.
is also very high. Figure 18 also shows that there are an unwanted peak prior velocity stabilization.
Despite thesethese
Despite citedcited
effects, thethe
effects, trajectory ofof
trajectory thetheAPR
APRininthe
thecase
case of
of using anopen
using an openloop
loopininthe
the motors is
motors
very stable
is very stable and visually predictable. The only drawback is a violent acceleration and deceleration due
and visually predictable. The only drawback is a violent acceleration and deceleration
to thedue
power
to theofpower
the motors used inused
of the motors the in
motion system.
the motion system.
50
45
40
35
Velocity (rpm)
30
25
20
15
10 Wheel 1
Wheel 2
5
Wheel 3
0
0 1 2 3 4 5
Time (s)
The control of the velocity of the wheels of the mobile robot has been performed by applying a
The control of
conventional the velocity
Proportional, of theand
Integral, wheels of the(PID)
Derivative mobile robot to
controller has thebeen performed
velocity of the DCby applying
motors
a conventional
in a closedProportional,
loop control. In Integral,
general,and Derivative
the PID controller (PID) controller
is designed to the velocity
to provide of thetoDC
fast reaction motors
target
changes.
in a closed However,
loop control.anInadequate
general,designthe PIDof the PID alsoisallows
controller designeda smoothed
to providesupervised evolution
fast reaction toof target
the power applied to the device controlled. In this paper, the tuning
changes. However, an adequate design of the PID also allows a smoothed supervised evolution of of the PID controller constants
has been
the power performed
applied to thebydevice
a trial controlled.
and error procedure with the
In this paper, theaim of obtaining
tuning of the PIDa smooth, stableconstants
controller and
visually predictable mobile robot motion. At the end of this subjective manual tuning procedure the
has been performed by a trial and error procedure with the aim of obtaining a smooth, stable and
PID controller has been simplified as a Proportional and Integral (PI) controller with KP and KI values
visually predictable mobile robot motion. At the end of this subjective manual tuning procedure
of 0.01 and 1.50 respectively (Figure 20). As a summary, the control procedure applied is as follows:
the PID
(1) acontroller has been
target velocity simplified
(in rpm) is definedasfor a aProportional
wheel; (2) oneand Integral
internal timer(PI) controller
is used to countwith KP and KI
the encoder
valuespulses and to estimate the velocity of the DC motor velocity (in rpm); (3) the motor velocity is then is as
of 0.01 and 1.50 respectively (Figure 20). As a summary, the control procedure applied
follows: (1) a target
converted to wheelvelocity
velocity(in(inrpm)
rpm)isbydefined
applying forthea gear
wheel; (2)(4)
ratio; one theinternal
target andtimer is usedwheel
measured to count
the encoder
velocity pulses
are thenand to estimate
compared; and the velocity
(5) the of the
difference is DC motor by
multiplied velocity
KD and (inKIrpm); (3) the motor
and integrated
(cumulated).
velocity In this paper,
is then converted the cumulative
to wheel velocity (indifference
rpm) by expressed
applying in therpmgearis ratio;
converted
(4) the in target
PWM and
percentage by applying a conversion factor of approximately 1.42%/rpm.
measured wheel velocity are then compared; and (5) the difference is multiplied by KD and KI and
integratedFigure 21 showsInthe
(cumulated). profile
this paper, of the
the velocity
cumulative of thedifference
wheels of expressed
the APR inin case
rpm of activating
is converted the inDCPWM
motors during 4 s and controlling the velocity with the proposed closed loop. Figure 21 shows that,
percentage by applying a conversion factor of approximately 1.42%/rpm.
in this case, the wheels reach the 80% of the maximum speed in more than 1 s. The drawback of this
Figure 21 shows the profile of the velocity of the wheels of the APR in case of activating the DC
closed loop control is that the integral controller does not stop the mobile robot instantaneously
motors during
because the4deceleration
s and controlling
profile is the velocity
similar with
to the the proposed
acceleration profile.closed loop. Figure
In the practice, 21 shows
the selection of a that,
in this case,wheel
target the wheels
velocityreach
up tothe the80%95%ofofthe themaximum
maximum speed velocityinofmore than 1 creates
the motors s. The adrawback
smooth of
this closed loop control
acceleration is that the
and deceleration integral
profile controller
that not saturatedoes not stop
the motors, the mobile
reduce vibrationsrobot
and instantaneously
improve the
because the deceleration
external predictability of profile is similar
the trajectory to mobile
of the the acceleration
robot. In anyprofile.
case, theIn theorder
high practice,
controlthe selection
system
of the wheel
of a target APR can force an
velocity up instantaneous
to the 95% ofstop the of the mobile
maximum robot by
velocity of disconnecting
the motors creates the integral
a smooth
controller
acceleration andand short-cuttingprofile
deceleration the H-bridges
that notinsaturate
order to block the motors
the motors, (applying
reduce an electrical
vibrations brake). the
and improve
external predictability of the trajectory of the mobile robot. In any case, the high order control system
of the APR can force an instantaneous stop of the mobile robot by disconnecting the integral controller
and short-cutting the H-bridges in order to block the motors (applying an electrical brake).
Sensors 2016, 16, 1658 15 of 21
Figure 19. Composite image created to show the relative displacement of the mobile robot originated
Figure 19.
Figure
Figure Composite
19.
19. Compositeimage
image created
created to show
to18.
show therelative
the relativedisplacement
relative displacement ofof the
the mobile
mobile robot
robot originated
originated
byComposite image
wheel velocity profilecreated to
of Figure show the
The APR maintainsdisplacement of the
the absolute angular mobile robot
orientation. originated
bybywheel
by wheelvelocity
wheel velocityprofile
velocity profileof
profile ofFigure
of 18. The
Figure 18.
Figure TheAPR
APRmaintains
APR maintainsthe
maintains theabsolute
the absolute
absolute angular
angular
angular orientation.
orientation.
orientation.
Target velocity KP
Error RPM PWM MOTOR
Target
Targetvelocity
velocity KP
KP
Error
Error KI
RPM
RPM PWM
PWM MOTOR
MOTOR
KI
KI
RPM PULSE
50
Figure
Figure20.
Figure 20.Detail
20. Detailof
Detail ofthe
thePI
PIcontroller
controllerimplementation.
controller implementation.
implementation.
45
50 40
50
45 35
45
Velocity (rpm)
40 30
40
25
35
35 20
(rpm)
30
(rpm)
30 15
25
Velocity
10 Wheel 1
25
Velocity
20 5 Wheel 2
20 Wheel 3
15 0
0 1 2 3 4 5
15 Time (s)
10 Wheel 1
10 Figure 21. Wheel velocity profile during a closed loop operation.
Wheel
Wheel2 1
5
Wheel
Wheel3 2
5
0 Wheel 3
0 1 2 3 4 5
0 Time (s)
0 1 2 3 4 5
Time (s)
Figure 21. Wheel velocity profile during a closed loop operation.
Figure
Figure21.
21.Wheel
Wheelvelocity
velocity profile duringaaclosed
profile during closedloop
loopoperation.
operation.
Sensors 2016, 16, 1658 16 of 21
30 60
(rpm)
(%)
30 60
(%)(%)
(rpm)
Velocity
30 60
PWM
Velocity
PWM
20 40
Velocity
PWM
20 40
20 40
10 20
10 20
10 20
0 0
00 1 2 3 4 5 60
0 1 2 3 (s)
Time 4 5 6
0 Time (s) 0
0 1 2 3 4 5 6
Figure 22. Wheel 1. Evolution of wheel velocity Time
and (s)
applied motor PWM
for a target velocity of 44 rpm.
Figure Wheel
22.22.
Figure 1. 1.Evolution
Wheel Evolutionof
ofwheel
wheel velocity andapplied
velocity and appliedmotor
motorPWM
PWMforfor a target
a target velocity
velocity ofrpm.
of 44 44 rpm.
Figure 22. Wheel 1. Evolution of wheel velocity and applied motor PWM for a target velocity of 44 rpm.
50 100
50 Velocity 100
Velocity
Setpoint
50 100
Setpoint
Velocity
PWM (%)
40 PWM (%)
Setpoint 80
40 80
PWM (%)
40 80
(rpm)
30 60
(rpm)
(%)
30 60
(%)(%)
(rpm)
Velocity
30 60
PWM
Velocity
PWM
20 40
Velocity
PWM
20 40
20 40
10 20
10 20
10 20
0 0
00 1 2 3 4 5 60
0 1 2 3 (s)
Time 4 5 6
0 Time 0
0 1 2 3 (s) 4 5 6
Figure 23. Wheel 2. Evolution of wheel velocity Time
and (s)
applied motor
PWM for a target velocity of 29 rpm.
Figure 23. Wheel 2. Evolution of wheel velocity and applied motor PWM for a target velocity of 29 rpm.
Figure Wheel
23.23.
Figure 2. 2.Evolution
Wheel Evolutionof
ofwheel
wheel velocity andapplied
velocity and appliedmotor
motorPWM
PWMforfor a target
a target velocity
velocity ofrpm.
of 29 29 rpm.
50 100
50 Velocity 100
Velocity
Setpoint
50 100
Setpoint
Velocity
PWM (%)
40 PWM (%)
Setpoint 80
40 80
PWM (%)
40 80
(rpm)
30 60
(rpm)
(%)
30 60
(%)(%)
(rpm)
Velocity
30 60
PWM
Velocity
PWM
20 40
Velocity
PWM
20 40
20 40
10 20
10 20
10 20
0 0
00 1 2 3 4 5 60
0 1 2 3 (s)
Time 4 5 6
0 Time 0
0 1 2 3 (s) 4 5 6
Figure 24. Wheel 3. Evolution of wheel velocity Time applied
and (s) motor
PWM for a target velocity of 15 rpm.
Figure 24. Wheel 3. Evolution of wheel velocity and applied motor PWM for a target velocity of 15 rpm.
Figure 24. Wheel 3. Evolution of wheel velocity and applied motor PWM for a target velocity of 15 rpm.
Figure 24. Wheel 3. Evolution of wheel velocity and applied motor PWM for a target velocity of 15 rpm.
Sensors 2016,
Sensors 2016, 16,
16, 1658
1658 17 of
17 of 21
21
5. Validation
5. Validation
The validation of the three-wheels holonomic motion system consisted of the comparison of
the trajectory of the of
The validation mobile robot obtained
the three-wheels by usingmotion
holonomic two alternative methods:of
system consisted (1)the
by comparison
using a SLAM of
procedure
the trajectory (used in [26])
of the mobile forrobot
precise absolute
obtained bypositioning based on the
using two alternative information
methods: (1) byprovided
using a SLAMby the
onboard LIDAR;
procedure (used inand [26])(2)forby usingabsolute
precise the information
positioning ofbased
the encoders and the kinematic
on the information provided by modelthe
presented
onboard in this
LIDAR; and paper.
(2) by The
usingmain objective of
the information of the encoders
validation andprocedure
the kinematic is tomodel
compare
presentedboth
measurements.
in this paper. The main objective of the validation procedure is to compare both measurements.
summarizes eight trajectories of the mobile robot obtained in a first
Figure 25 summarizes first validation
validation
experiments. In this case, the mobile robot has to maintain maintain its orientation
orientation while moving moving aa straight
straight
fixed distance in a predefined angular direction, α α (see
(seeFigure
Figure 19 19 for
foraareference).
reference). This
This capability
capability of of
moving without
moving withoutchanging
changingthe theorientation
orientation is is a characteristic
a characteristic feature
feature of aofholonomic
a holonomic motionmotion
system system
that
that
is is validated
validated in experiment.
in this this experiment. The angular
The angular direction
direction tested tested
in theindisplacements
the displacements werewere(0◦ , 45 ◦ , 90
(0°, ◦,
45°,
90°,◦ ,135°,
135 180◦ ,180°,
225◦225°,
, 270◦270°,
, 315◦315°)
) and and the angular
the angular velocity
velocity was wasalways 0◦ . 0°.
always
The procedure
The procedureofofeach eachmeasurement
measurement is is
asas follows:
follows: (1)(1) a specific
a specific mobile
mobile robot
robot velocity,
velocity, distance
distance and
and angular
angular direction
direction of theofdisplacement
the displacement is fixed;
is fixed; (2) the(2) the mobile
mobile robot robot
computescomputes the angular
the angular velocityvelocity
of the
of the wheels
wheels according according
the inversethe kinematic
inverse kinematic
model, this model, thiswill
velocity velocity
remain will remainduring
constant constanttheduring
validation the
validation experiment;
experiment; (3) the mobile (3) robot
the mobile
estimates robot theestimates
ideal-timethe ideal-time
required for therequired for the according
displacement displacement the
according model;
kinematic the kinematic model; time
(4) the internal (4) the internal time
measurement is measurement is reset;velocities
reset; (5) the angular (5) the angular velocities
of the wheels are
of the wheels
stablished are stablished
as setpoints of theasthree
setpoints of the three
PI controllers PI controllers
of the mobile robot of the
andmobile robotisand
the motion the motion
automatically
is automatically
started; (6) whenstarted;
reaching(6)the when reaching
ideal-time the experiment,
of the ideal-time ofthe thesetpoints
experiment,of thethe setpoints
angular of the
velocities
angular velocities of the wheels are set to zero and the PI controllers
of the wheels are set to zero and the PI controllers deaccelerate the mobile robot until completely deaccelerate the mobile robot
until completely
stopping the device.stopping
Figure the device. Figure
25 summarizes the 25 summarizes
mobile the mobile
robot trajectories robot with
obtained trajectories obtained
the information
with
of thethe information
encoders and theofkinematic
the encodersmodel andand the kinematic
with the SLAM model and with
procedure: thethe SLAM
circle procedure:
depicts the position the
circle depicts
according the the
SLAM position according
procedure and thethecross
SLAM procedure
according theand the cross of
information according the information
the encoders; in both cases of
athe encoders;
small in depicts
line also both cases theafinal
small line also depicts
orientation the final
of the mobile orientation
robot which isofapproximately
the mobile robot the which
same in is
approximately
all trajectories. the same in all trajectories.
1200
1000
800
600
400
Y position (mm)
200
0
-200
-400
-600
-800
-1000
-1000 -500 0 500 1000
X position (mm)
Figure 25.
Figure 25. Trajectories followed by
Trajectories followed by the
the mobile
mobile robot
robot in
in eight
eight displacements.
displacements. The
The circle
circle depicts
depicts the
the final
final
position and orientation of the mobile robot obtained with the SLAM procedure. The cross
position and orientation of the mobile robot obtained with the SLAM procedure. The cross depicts the depicts
the final
final position
position and and orientation
orientation of mobile
of the the mobile robot
robot according
according the information
the information of encoders
of the the encoders
and and
the
the kinematic
kinematic model.model.
The results shown in Figure 25 show small differences in the mobile robot trajectory estimated
The results shown in Figure 25 show small differences in the mobile robot trajectory estimated
with the SLAM procedure and with the encoders and kinematic model of the motion system.
with the SLAM procedure and with the encoders and kinematic model of the motion system. Figure 26
Figure 26 details the absolute error in the position estimated with the LIDAR and the kinematic
details the absolute error in the position estimated with the LIDAR and the kinematic model compared
model compared with the planned displacement. The maximum difference between the desired
with the planned displacement. The maximum difference between the desired theoretical and estimated
theoretical and estimated distance was always lower than 60 mm in all measurements
distance was always lower than 60 mm in all measurements corresponding to a planned straight
corresponding to a planned straight trajectory displacement of 1000 mm with the mobile robot.
Sensors 2016, 16, 1658 18 of 21
Sensors 2016,
Sensors 2016, 16,
16, 1658
1658 18 of
18 of 21
21
Moreover,displacement
trajectory
Moreover, the difference
the difference of
ofof themm
1000
the position estimated
with the
position with
mobile with
estimated the
robot.the SLAM procedure
Moreover,
SLAM procedure and of
the difference
and the
the kinematic
the position
kinematic
model
estimatedwerewithalways
the lower
SLAM than 30
procedure mm,andwhich
the may be
kinematicconsidered
model a
were very
model were always lower than 30 mm, which may be considered a very low difference. Finally, low
always difference.
lower than Finally,
30 mm,
Figure
which 27
Figure may shows the differences
be considered
27 shows between
a verybetween
the differences the
low difference.planned angular
Finally,
the planned Figure
angular orientation
27 shows of
orientation of the
thethe mobile
differences robot
mobile robot and
between
and
the values
the values estimated
planned estimated according the
angular according
orientation the SLAM
of SLAM procedure
the mobile and the
robot and
procedure and according
values the
according the information
estimated of the
according
information of thethe
encoders
SLAM
encoders
and the
procedure kinematic
and model
according which
the are
informationalways
of lower
the than
encoders 5°
and in all
the trajectories
kinematic measured
model
and the kinematic model which are always lower than 5° in all trajectories measured in this first which in
arethis first
always
validation
lower ◦
experiment.
thanexperiment. The displacement
5 in all trajectories estimated
measuredestimated with
in this first the information of the encoders has been
validation The displacement withvalidation experiment.
the information The displacement
of the encoders has been
also compared
estimated with with
the manual
information measurements
of the encoders and
has with
been measurements
also compared
also compared with manual measurements and with measurements obtained with an external obtained
with manual with an external
measurements
LIDAR
and
LIDAR with[27]
[27] obtaining
measurements similar
obtaining similar results
obtained than
with
results the
an the
than displacement
external LIDAR [27]
displacement estimated
obtaining
estimated with the
withsimilar SLAM
the SLAM procedure.
results than the
procedure.
However, the
displacement
However, theestimated
use of
use of the
thewith
SLAM
SLAM onboard
the SLAM
onboard procedure
procedure.
procedure has the
However,
has the the
advantage
use of the
advantage ofSLAM
of an easy
an easy synchronization
onboard procedure
synchronization
between
has the trajectories
trajectories
the advantage
between the estimated
of an easy with both
synchronization
estimated with both between
methods.the trajectories estimated with both methods.
methods.
10
10
SLAM estimate
SLAM estimate
Encoders estimate
Encoders estimate
00
-10
-10
(mm)
Error(mm)
-20
-20
Error
-30
-30
-40
-40
-50
-50
11 22 33 44 55 66 77 88
Experiment
Experiment
Figure 26.
Figure 26. Absolute
Absolute displacement
displacement error
displacement error obtained
obtained when
when comparing
comparing the
the planned
planned displacement
displacement and
and the
the
final displacement estimated with the SLAM procedure and with the encoders and the kinematic model.
final displacement estimated with the SLAM procedure and with the encoders and the kinematic model.
66
55
44
(Degrees)
error(Degrees)
33
22
11
Relativeerror
00
Relative
-1
-1
-2
-2
-3 SLAM estimate
SLAM estimate
-3 Encoders estimate
Encoders estimate
-4
-4
11 22 33 44 55 6
6 7
7 88
Experiment
Experiment
Figure 27.
Figure 27. Absolute
Absolute final
final angular
angular orientation
orientation error
error obtained
obtained when
when comparing
comparing the
the planned
planned angular
angular
Figure 27. Absolute final angular orientation error obtained when comparing the planned angular
orientation and the final orientation estimated with the SLAM procedure and with the encoders and
orientation and the final orientation estimated with the SLAM procedure and with the encoders and
the kinematic model.
the kinematic model.
Finally, Figure
Finally, Figure 28 summarizes
summarizes the mobile
mobile robot trajectories
trajectories obtained
obtained with
with thethe information
information of of the
the
Finally, Figure 28
28 summarizesthe the mobilerobot
robot trajectories obtained with the information of
encoders and
encoders and the
the kinematic
kinematic models
models andand with
with thethe SLAM
SLAM procedure.
procedure. In In this
this second
second validation
validation
the encoders and the kinematic models and with the SLAM procedure. In this second validation
experiment, the
experiment, the mobile robot
robot has to
to maintain its
its orientation while
while moving aa fixed
fixed distance following
following a
experiment, the mobile
mobile robot has
has tomaintain
maintain itsorientation
orientation whilemoving
moving a fixeddistance
distance followinga
curved path.
path. The
The angular
angular direction
direction tested
tested in
in the
the displacements
displacements were
were (0°,
(0°, 45°,
45°, 90°, 135°, 180°,
180°, 225°, 270°,
acurved
curved path. The angular direction tested in the displacements were (0 90°,
◦ , 45 ◦ , 135°,
90◦ , 135 225°,
◦ , 180 270°,
◦ , 225 ◦,
315°)
315°)
◦
and
and◦
the
the angular
angular velocity
velocity was
was always
always 5%
5% of
of the
the maximum
maximum velocity.
velocity. In
In these
these measurements,
measurements, the
the
270 , 315 ) and the angular velocity was always 5% of the maximum velocity. In these measurements,
difference between
difference between the
the position
position estimated
estimated with
with the
the SLAM
SLAM procedure
procedure and
and with
with the the encoders
encoders andand thethe
Sensors 2016, 16, 1658 19 of 21
1200
1000
800
600
400
Y position (mm)
200
0
-200
-400
-600
-800
-1000
-1000 -500 0 500 1000
X position (mm)
Figure
Figure 28.28. Trajectories
Trajectories followedby
followed bythe
themobile
mobilerobot
robot in
in eight
eight displacements.
displacements.The
Thecircle
circledepicts
depictsthethe
final
final
position and orientation of the mobile robot obtained with the SLAM procedure. The cross depicts
position and orientation of the mobile robot obtained with the SLAM procedure. The cross depicts the
the final position and orientation of the mobile robot according the information of the encoders and
final position and orientation of the mobile robot according the information of the encoders and the
the kinematic model.
kinematic model.
The comparative empirical results obtained validate the design of the three-wheel holonomic
motioncomparative
The empirical
system for mobile results obtained
robot displacement and validate
the utilitythe design
of the of the
proposed three-wheel
inverse kinematicholonomic
model
motion
in order to estimate the relative displacement of the mobile robot according the information ofmodel
system for mobile robot displacement and the utility of the proposed inverse kinematic the
in order
encodersto estimate the relative displacement of the mobile robot according the information of the
of the wheels.
encoders of the wheels.
6. Conclusions
6. Conclusions
This paper presents the design and implementation of the mechanical design of the three-wheel
This paper
holonomic presents
motion the design
system and implementation
implemented in the Assistant of the mechanical
Personal Robot design
(APR),ofa the three-wheel
mobile robot
designedmotion
holonomic to operate at home.
system The paper
implemented analyzes
in the Assistantthe Personal
inverse and direct
Robot kinematics
(APR), a mobileofrobot
the motion,
designed
describesatthe
to operate control
home. Thesystem
paperand shows the result
analyzes inverse of and
different
directexperiments
kinematicsproposed to validate
of the motion, the
describes
complete motion system. The trajectory of the mobile robot has been estimated
the control system and shows the result of different experiments proposed to validate the complete by using the
information
motion system.ofThethe trajectory
encoders ofofthe
thewheels
mobile and the proposed
robot has been kinematic
estimatedmodel.
by usingThis trajectory
the has been
information of the
compared with the trajectory obtained with a SLAM procedure based on the
encoders of the wheels and the proposed kinematic model. This trajectory has been compared with information obtained
theby an onboard
trajectory LIDAR.
obtained Results
with have procedure
a SLAM shown a discrepancy
based on the in both estimatesobtained
information of less than 30 mm
by an in
onboard
distance, and less than 5° in angular orientation for absolute displacements of up to 1000 mm. These
LIDAR. Results have shown a discrepancy in both estimates of less than 30 mm in distance, and less
results confirm the utility of the three-wheel holonomic motion system proposed for the
than 5◦ in angular orientation for absolute displacements of up to 1000 mm. These results confirm the
implementation of an Assistant Personal Robot.
utility of the three-wheel holonomic motion system proposed for the implementation of an Assistant
Personal Robot.
Acknowledgments: This work was partially funded by Indra, the University of Lleida, the RecerCaixa 2013
grant, and by the Government of Catalonia (Comissionat per a Universitats i Recerca, Departament d’Innovació,
Acknowledgments: This work was partially funded by Indra, the University of Lleida, the RecerCaixa 2013
Universitats i Empresa) and the European Social Fund (ECO/1794/2015).
grant, and by the Government of Catalonia (Comissionat per a Universitats i Recerca, Departament d’Innovació,
Universitats i Empresa) and
Author Contributions: the Moreno,
Javier European Social Clotet,
Eduard Fund (ECO/1794/2015).
Ruben Lupiañez, Marcel Tresanchez and Dani Martínez
designed the holonomic motion system and
Author Contributions: Javier Moreno, Eduard Clotet,also designed
Ruben and performed
Lupiañez, theTresanchez
Marcel experiments;
andTomàs
Dani Pallejà,
Martínez
Jordi Casanovas and Jordi Palacín supervised the experiments; Eduard Clotet and Jordi Palacín
designed the holonomic motion system and also designed and performed the experiments; Tomàs Pallejà, analyzed the
data;
Jordi Javier Moreno
Casanovas andPalacín
and Jordi Jordi Palacín wrote the
supervised the experiments;
paper. Eduard Clotet and Jordi Palacín analyzed the data;
Javier Moreno and Jordi Palacín wrote the paper.
Conflicts of Interest: The authors declare no conflict of interest.
Conflicts of Interest: The authors declare no conflict of interest.
Sensors 2016, 16, 1658 20 of 21
References
1. Fish, S. UGVs in future combat systems. In Proceedings of the SPIE 5422 Unmanned Ground Vehicle
Technology VI, Orlando, FL, USA, 13–15 April 2004; pp. 288–291.
2. Byambasuren, B.E.; Kim, D.; Oyun-Erdene, M.; Bold, C.; Yura, J. Inspection Robot Based Mobile Sensing and
Power Line Tracking for Smart Grid. Sensors 2016, 16, 250. [CrossRef] [PubMed]
3. Bengochea-Guevara, J.M.; Conesa-Muñoz, J.; Andújar, D.; Ribeiro, A. Merge Fuzzy Visual Servoing and
GPS-Based Planning to Obtain a Proper Navigation Behavior for a Small Crop-Inspection Robot. Sensors
2016, 16, 276. [CrossRef] [PubMed]
4. Blitch, J.G. Artificial intelligence technologies for robot assisted urban search and rescue. Expert Syst. Appl.
1996, 11, 109–124. [CrossRef]
5. Lafaye, J.; Gouaillier, D.; Wieber, P.B. Linear model predictive control of the locomotion of Pepper, a humanoid
robot with omnidirectional wheels. In Proceedings of the IEEE-RAS International Conference on Humanoid
Robots, Madrid, Spain, 18–20 November 2014; pp. 336–341.
6. Wada, M.; Asada, H.H. Design and control of a variable footprint mechanism for holonomic omnidirectional
vehicles and its application to wheelchairs. IEEE Trans. Robot. Autom. 1999, 15, 978–989. [CrossRef]
7. United Nations. World Population Ageing 2013. Available online: http://www.un.org/en/development/desa/
population/publications/pdf/ageing/WorldPopulationAgeing2013.pdf (accessed on 15 December 2015).
8. World Health Organization. World Report on Ageing and Health, 2015. Available online: http://apps.who.
int/iris/bitstream/10665/186463/1/9789240694811_eng.pdf (accessed on 18 February 2016).
9. Clotet, E.; Martínez, D.; Moreno, J.; Tresanchez, M.; Palacín, J. Assistant Personal Robot (APR): Conception
and Application of a Tele-Operated Assisted Living Robot. Sensors 2016, 16, 610. [CrossRef] [PubMed]
10. Morón, C.; Payán, A.; García, A.; Bosquet, F. Domotics Project Housing Block. Sensors 2016, 16, 741.
[CrossRef] [PubMed]
11. Mariappan, M.; Sing, J.C.; Wee, C.C.; Khoo, B.; Wong, W.K. Simultaneous rotation and translation movement
for four omnidirectional wheels holonomic mobile robot. In Proceedings of the IEEE International
Symposium of Robotics and Manufacturing Automation, Kuala Lumpur, Malaysia, 15–16 December 2014;
pp. 69–73.
12. Muir, P.F.; Neuman, C.P. Kinematic Modeling of Wheeled Mobile Robots; Technical Report, CMU-RETR-8612;
Carnegie Mellon University: Pittsburgh, PA, USA, 1986.
13. Alakshendra, V.; Chiddarwar, S.S.; Jha, A. Trajectory Tracking Control of Three-Wheeled Omnidirectional
Mobile Robot: Adaptive Sliding Mode Approach. In CAD/CAM, Robotics and Factories of the Future; Springer:
New Delhi, India, 2016; pp. 275–286.
14. Byun, K.S.; Song, J.B. Design and construction of continuous alternate wheels for an omnidirectional mobile
robot. J. Robot. Syst. 2003, 20, 569–579. [CrossRef]
15. Wada, M.; Mori, S. Holonomic and Omnidirectional Vehicle with Conventional Tires. In Proceedings of
the IEEE International Conference on Robotics and Automation, Minneapolis, MN, USA, 22–28 April 1996;
pp. 3671–3676.
16. Song, J.B.; Byun, K.S. Steering control algorithm for efficient drive of a mobile robot with steerable
omni-directional wheels. J. Mech. Sci. Technol. 2009, 23, 2747–2756. [CrossRef]
17. West, M.; Asada, H. Design of Ball Wheel Mechanisms for Omnidirectional Vehicles with Full Mobility and
Invariant Kinematics. J. Mech. Des. 1997, 119, 153–161. [CrossRef]
18. Endo, T.; Nakamura, Y. An omnidirectional vehicle on a basketball. In Proceedings of the 12th International
Conference on Advanced Robotics, Seattle, WA, USA, 18–20 July 2005; pp. 573–578.
19. Lauwers, T.B.; Kantor, G.A.; Hollis, R.L. A dynamically stable single-wheeled mobile robot with inverse
mouse-ball drive. In Proceedings of the 2006 IEEE International Conference on Robotics and Automation,
Orlando, FL, USA, 15–19 May 2006; pp. 2884–2889.
20. Kumagai, M.; Ochiai, T. Development of a robot balancing on a ball. In Proceedings of the International
Conference on Control, Automation and Systems, Seoul, Korea, 14–17 October 2008; pp. 433–438.
21. Endo, G.; Hirose, S. Study on roller-walker (system integration and basic experiments). In Proceedings of
the 1999 IEEE International Conference on Robotics and Automation, Detroit, MI, USA, 10–15 May 1999.
22. Muir, P.F.; Neuman, C.P. Kinematic Modeling for Feedback Control of an Omnidirectional Wheeled Mobile
Robot. Auton. Robot Veh. 1987, 1, 25–31.
Sensors 2016, 16, 1658 21 of 21
23. Ferriere, L.; Raucent, B.; Campion, G. Design of omnimobile robot wheels. In Proceedings of the
IEEE International Conference on Robotics and Automation, Minneapolis, MN, USA, 22–28 April 1996;
pp. 3664–3670.
24. Blumrich, J. Omnidirectional Wheel. U.S. Patent 3,789,947, 5 February 1974.
25. Ilon, B.E. Wheels for a Course Stable Selfpropelling Vehicle Movable in Any Desired Direction on the Ground
or Some Other Base. U.S. Patent 3,876,255, 8 April 1975.
26. Martinez, D.; Teixidó, M.; Font, D.; Moreno, J.; Tresanchez, M.; Marco, S.; Palacín, J. Ambient Intelligence
Application Based on Environmental Measurements Performed with an Assistant Mobile Robot. Sensors
2014, 14, 6045–6055. [CrossRef] [PubMed]
27. Teixidó, M.; Pallejà, T.; Font, D.; Tresanchez, M.; Moreno, J.; Palacín, J. Two-dimensional radial laser scanning
for circular marker detection and external mobile robot tracking. Sensors 2012, 12, 16482–16497. [CrossRef]
[PubMed]
© 2016 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access
article distributed under the terms and conditions of the Creative Commons Attribution
(CC-BY) license (http://creativecommons.org/licenses/by/4.0/).