Literature

You might also like

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

Available online at www.sciencedirect.

com

ScienceDirect
IFAC PapersOnLine 53-1 (2020) 567–572
Development
Development of
of Auto-parking
Auto-parking and
and Collision
Collision
Development
Development of
of Auto-parking
Auto-parking and
and Collision
Collision
Avoidance
Avoidance Algorithms
Development of
Algorithms on Car
Auto-parking
on Car type Autonomous
and
type Collision
Autonomous
Avoidance Algorithms
Avoidance Algorithms on on Car
Car type
type Autonomous
Autonomous
Avoidance AlgorithmsMobile
Mobile Robots
on Car type Autonomous
Robots
Mobile
Mobile Robots
Robots
Mobile Robots ∗∗ Vrunda Joshi ∗∗∗
Rahee Walambe ∗∗ Narendra Patwardhan ∗∗
Rahee
Rahee Walambe ∗∗ Narendra Patwardhan ∗∗
∗∗∗ Vrunda Joshi
Rahee Walambe
Walambe Narendra
Narendra Patwardhan
Patwardhan ∗∗ Vrunda
Vrunda Joshi
∗∗∗
Joshi ∗∗∗
Rahee Walambe
∗∗ Symbiosis Institute
∗ Narendra
of Patwardhan
Technology, Symbiosis
∗∗ Vrunda Joshi ∗∗∗
International(Deemed
∗∗ Symbiosis
Symbiosis Institute of Technology, Symbiosis International(Deemed
Symbiosis Institute
Institute
University),
University), Pune, of
of Technology,
Pune, IndiaTechnology,
India (e-mail: Symbiosis
Symbiosis International(Deemed
International(Deemed
(e-mail: rahee.walambe@sitpune.edu.in).
rahee.walambe@sitpune.edu.in).
∗University),
Symbiosis Pune,
InstituteIndia
of (e-mail:
Technology,rahee.walambe@sitpune.edu.in).
Symbiosis International(Deemed
University),
∗∗ PVG’s
∗∗ PVG’sPune, India
College (e-mail:
of Engg rahee.walambe@sitpune.edu.in).
and Technology,
∗∗ PVG’s College of Engg and Technology, Pune,
College of Engg and Technology, Pune, India
India
University),
∗∗
∗∗∗PVG’s
∗∗∗ Pune,
PVG’s Indiaof
College
College (e-mail:
of Engg
Engg and Technology,
Technology, Pune,
Pune,
Pune, India
rahee.walambe@sitpune.edu.in).
and India
India
∗∗∗ PVG’s
PVG’s
∗∗ PVG’s College
College of
of Engg
Engg and
and Technology,
Technology, Pune,
Pune, India
India
∗∗∗ PVG’s College
College of
of Engg
Engg and
and Technology,
Technology, Pune,
Pune, India
India
∗∗∗ PVG’s College of Engg and Technology, Pune, India
Abstract:
Abstract:
Abstract:
Abstract:
This
This paper
This paper discusses
paper discusses the the development
development and and implementation
implementation of of aa motionmotion planning planning algorithm algorithm for for aa
paper discusses
Abstract:
This
Nonholonomic
Nonholonomic discusses
Car
Car type
type
the development
theWheeled
development
Wheeled Mobile
Mobile
and
and
Robot
Robot
implementation
implementation
(WMR)
(WMR) through
through
of
of aaa specified
motion
motion planning
specified planning
via
via point.
point.
algorithm
algorithm
This
This technique
technique
for
for aa
Nonholonomic
This paper useful
Nonholonomic Carspecifically;
discusses
Car type
type Wheeled
theWheeled
developmentMobile
Mobile Robot
and (WMR)
implementation through specified
of aobstacles
motion which via point.
planning point. This technique
algorithm techniqueforthea
will prove
will prove
will prove usefuluseful specifically; when
when the Robot
the WMR (WMR)
WMR needs
needs to tothrough
to avoid a specified
avoid obstacles
obstacles via
which are This
present
are present
present on
on the the
Nonholonomic
will prove
predefined usefulCarspecifically;
trajectory type
and Wheeled
specifically;
when when
when
the WMR the
Mobile
the WMR
Robot
WMR
is to be needs
(WMR)
needs
parked to avoid
through
avoid
autonomously a specified
obstacles in the which
via
which
parking are
point.
are ThisAtechnique
present
slot. on
on
via-point the
predefined
predefined trajectory and when the WMR is to be parked autonomously in the parking slot. A via-point
will prove trajectory
predefined useful and when
specifically; the
whenWMR is to
to be
thepassing
isWMR parked
needs to autonomously
avoid obstacles in the parking
thewhich are slot.
presentA
A via-point
on the
is
is specifiedtrajectory
is specified
specified
by
by the
by the user
the
andand
user
user
when
and
and a
the WMR
aa trajectory
trajectory
trajectory passing
passing
bethrough
parked
through
through
autonomously
this
this via-point
this via-point is
via-point isingenerated
is
parking
generated
generated
slot.
using
using
using
the
the
the
via-point
property
property
property
predefined
is
of specified trajectory
by the and
user when
and a the WMR
trajectory is to
passing be parked
through autonomously
this via-point in
is the parking
generated slot.
using A
the via-point
property
of differential
of differential flatness.
differential flatness. Local
flatness. Local optimization
Local optimization is
optimization is employed
is employed for
employed for optimal
for optimal trajectory
optimal trajectory planning.
trajectory planning. This
planning. This generated
This generated
generated
is
of specified
differential
trajectory is by the user
flatness.
always and with
Local
smooth a optimization
trajectory
feasible passing
is through
employed
minimum lengthforthis via-point
optimal
satisfying isnonholonomic
trajectory
the generated
planning. using This
and the property
generated
holonomic
trajectory
trajectory is
is always
always smooth
smooth with
with feasible
feasible minimum
minimum length
length satisfying
satisfying the
the nonholonomic
nonholonomic and
and holonomic
holonomic
of differential
trajectory
constraints ison flatness.
always
the car typeLocal
smooth optimization
with
vehicle feasible
and passes isthrough
employed
minimum length
the for optimal
satisfying
via-point trajectory
the
specified planning.
nonholonomic
by the user. TheThis
and generated
holonomic
contribution
constraints on
constraints on the
the car
car type
type vehicle and and passes through
through the
the via-point
via-point specified specified by by the user. user. TheThe contribution
contribution
trajectory
constraints
of
of the
the work
work
isonalways
thein
lies
lies incar type vehicle
smooth
reducing
reducing
with
vehicle and passes
feasible
complexity
complexity passes
of
of
minimum
the
thethrough
problem
problem
length
theby
by
satisfying
via-point
introducing
introducing
the
specified via-point
via-point by the
nonholonomic
theand user.
and The
local
local
and holonomic
contribution
optimization,
optimization,
of
of the
the
which work
constraints
work lies
on the
lies in
in reducing
car type
reducing complexity
vehicle and
complexity of
passes
of the
the problem
through
problem the by introducing
via-point
by introducing specified via-point
via-point by the and
user.
and local
The
local optimization,
contribution
optimization,
which results
which results into
results into easy
into easy implementation
easy implementation of
implementation of the
of the algorithm
the algorithm on
algorithm on the the hardware
hardware setup. setup. The The experimentation
experimentation
of
is the work
which
carriedresults
outlies
into
on in1:10
reducing
easyreduced complexity
implementation
model of
of the
theproblem
ofCheverolet
algorithm by on
Camero on the
introducing
the
model hardware
hardwaretovia-point
show setup.
setup. and
efficacy The
The localexperimentation
optimization,
experimentation
of the proposed
is
is carried
carried out
out on
on 1:10
1:10 reduced model of Cheverolet Camero model to show efficacy of thethe proposed
proposed
which
is carried
scheme. results
out into
on easyreduced
1:10 reduced model
implementation
model of
ofofCheverolet
Cheverolet Camero
the algorithm
Camero on the model
model hardwareto
to show
show efficacy
setup.
efficacy of
The experimentation
of the proposed
scheme.
scheme.
is carried out on 1:10 reduced model of Cheverolet Camero model to show efficacy of the proposed
scheme.
© 2020, IFAC (International Federation of Automatic Control) Hosting by Elsevier Ltd. All rights reserved.
scheme.
Keywords:
Keywords: nonholonomic,
nonholonomic, optimization,
optimization, constraints,
constraints, motion
motion planning,
planning, Wheeled Wheeled Mobile Mobile Robot(WMR),
Robot(WMR),
Keywords:
Keywords:
autonomous nonholonomic,
nonholonomic,
car optimization,
optimization, constraints,
constraints, motion
motion planning,
planning, Wheeled
Wheeled Mobile
Mobile Robot(WMR),
Robot(WMR),
autonomous
autonomous car
car
Keywords:
autonomousnonholonomic,
car optimization, constraints, motion planning, Wheeled Mobile Robot(WMR),
autonomous 1. car
INTRODUCTION local optimization for trajectory generation. In (Walambe R.A,
1. INTRODUCTION
1. local optimization for trajectory generation. In (Walambe R.A,
1. INTRODUCTION
INTRODUCTION local
local
2016),
2016),
optimization
optimization
spline
spline
for
for
interpolation
interpolation
trajectory
trajectory is
is
generation.
generation.
combined
combined with
with
In
In (Walambe
(Walambe
the
the optimization
optimization
R.A,
R.A,
1. INTRODUCTION 2016),
local
2016),
of the spline
optimization
spline
path for interpolation
for
interpolation
generating trajectory is
is
the combined
generation.
combined
trajectories. with
with InIn the
the
the optimization
(Walambe
optimization
spline R.A,
inter-
A number
A number
number of of auto-navigation
of auto-navigation
auto-navigation algorithms algorithms
algorithms for for mobiles
for mobiles robots
robots of
mobiles robots the path for generating the trajectories. In the spline inter-
A
A number of the
2016),
of the
polation, path
spline
path the for
for generating
interpolation
generating
robots polation, the point values and their first two derivatives (but
point values the
is
the
and trajectories.
combined
trajectories.
their first with
twoIn
In the
the
the spline
spline
derivatives inter-
optimization
inter-
have
have been of
been auto-navigation
developed
developed in last algorithms
in last decades
decades for forforvarious
mobilesapplica-
various applica- polation, the (but
have
A
have
tions
tions
been
number
been
in
in a
a
developed
of
developed
number
number of
of
in
auto-navigation
in
domains
domains
last
last decades
algorithms
decades
ranging
ranging
for
for
from
from
various
forvarious
passenger
passenger
applica-
mobilesapplica-
robots
car
car to
to
of the
polation,
not
not the
the
path theforpoint
third)
third) are
generating
point
are values
values the
continuous
continuous
and
andat
at
their
their
the
the
first
first two
trajectories.
given
given two
‘n
‘n
derivatives
In’points.
the
’points.
spline
derivatives
Here,
Here,
(but
inter-
(but
we
we
tions
have
tions
the in
been
in a
a
hazardous number
developed
number of
of domains
in last
domains
applications. For ranging
decades
ranging
smooth from
from passenger
for various
passenger
maneuver in a car
applica-
car to
to
given not
combinethe
polation,
not the third)
the
third)
the are
point
are continuous
values
continuous
optimization of and at
at
the the
their
the
path given
first
given
with ‘n
two
‘n
the ’points.
’points.
open loopHere,
derivatives
Here,
motion we
(but
we
the hazardous applications. For smooth maneuver in a given combine
combine the
the optimization
optimization of
of the
the path
path with
with the
the open
open loop
loop motion
motion
the
tions
the hazardous
in a
hazardous number
workspace,computation applications.
of domains
applications. of For
For
accurate smooth
ranging
smooth
path maneuver
from passenger
maneuver
planning in
in
and a
a given
car to
given
motion not
combine
plannerthe third)
tothe are continuous
optimization
generate of
trajectories at
the the
path
via given
awith ‘n
the
specified ’points.
open vialoopHere,
motion
points. we
To
workspace,computation of
workspace,computation of accurate
accurate path path planning
planning and motion planner
and motion planner
combine
to
tothe
generate
generate
optimization
trajectories
trajectories
of the
via
via
path
aa specified
specified
with the open
via
via points.
points.
loop motion
To
To
the hazardous
workspace,computation
planning algorithmsapplications.
are of For
accurate
essential. smooth
path
There maneuver
planning
are various in
and a given
motion
approaches planner
accommodate
accommodate to generate
the
the trajectories
additional
additional via
via viapoint
pointa specified
constraint,
constraint, via points.
trajectories
trajectories To
planning
planning algorithms
algorithms are essential.
are essential.
essential. There
There are
are various
various approaches
approaches accommodate the additional via point constraint, trajectories
workspace,computation
planning
to modellingalgorithms
the are of accurate
collision-free path
There
and planning
are various
admissible and motion planner
approaches
configuration accommodate
using to generate
forth order the trajectories
additional
polynomial via viapoint
interpolation a specified
constraint,
are via trajectories
designed.points.
Time- To
to modelling
to modelling the the collision-free
collision-free and and admissible configuration using
admissible configuration using
accommodate
forth
forth order
order polynomial interpolation
thepolynomial
additional interpolation
via point
are
are
constraint,
designed.
designed. Time-
Time-
trajectories
planning
to modelling
workspace algorithms
the
(Latombe, are1991).
essential.
collision-free There
and
Although are various
admissible
these approaches
configuration
methods are suit- using forth
reparameterization order polynomial
(Pedrosa interpolation
et al., 2003) is are designed.
employed forTime-
han-
workspace (Latombe,
workspace (Latombe, 1991). 1991). Although these these methods are are suit- reparameterization
reparameterization (Pedrosa
(Pedrosa et
et al.,
al., 2003)
2003) is
is employed
employed for
for han-
han-
to modelling
workspace
able
able for
for (Latombe,
holonomic
holonomic 1991). Although
the collision-free
platforms,
platforms, Although
they
they are these methods
andareadmissible methods
insufficient
insufficient to
to are suit-
configurationsuit- using
represent
represent dling
forth
reparameterization
dling the
the
order polynomial
singularities
singularities (Pedrosa
generated
generated etinterpolation
al.,
in
in 2003)
the
the isare
flatness
flatness
designed.
employed
based
based forTime-
han-
planning.
planning.
able
able for
workspace holonomic
(Latombe,
for holonomic platforms,
1991).
platforms, they
Although
they areare insufficient
these methods
insufficient to to represent
are suit- dling
dling
To find the
reparameterization
the singularities
singularities
optimum solution generated
(Pedrosa
generated
in
represent To find optimum solution in short period of time, for all cases et
short in
al.,
in the
2003)
the
period flatness
is
flatness
of time, based
employed
based
for allplanning.
for han-
planning.
cases of
the
the general
general motion
motion planning
planning with
with nonholonomic
nonholonomic constraints.
constraints. of
the
able
the
Even general
for
general
in the motion
holonomic
motion
absence planning
platforms,
planning
of with
they are
with
obstacles, nonholonomic
insufficient
nonholonomic
motion planningconstraints.
to represent
constraints.
of non- To
dling
To find
find
angular theoptimum
singularities
optimum
constraints, solution
solution the in
generated
in short
short
SIP(Semi-infinite inperiod
period of
the flatness
of time,
time,
Parameter for
based
for all
all cases
planning.
cases
Optimiza- of
of
Even in the absence of obstacles, motion planning of non- angular
angular constraints,
constraints, the
the SIP(Semi-infinite
SIP(Semi-infinite Parameter
Parameter Optimiza-
Optimiza-
Even
the
Even
holonomic in
general
in the
the absence
motion
absence
systems is of
planning
of
a obstacles,
obstacles,
challenging motion
with nonholonomic
motion
problem, planning
planning
primarily of
of non-
constraints.
non-
due to To
tion)find
angular optimum
constraints,
problem is solution
modified the in short
SIP(Semi-infinite
for local period of
optimization time,
Parameter for
with all cases
Optimiza-
minimum of
holonomic systems
holonomic systems is is aa challenging
challenging problem,problem, primarily
primarily due to tion)
due to tion)
angular
problem
problem
constraints,
is
is modified
modified the
for
for local
local
SIP(Semi-infinite
optimization
optimization Parameter
with
with minimum
minimum
Optimiza-
Even
holonomicin the absence
systems of obstacles,
is a challenging motion planning of non-
to tion)
length problem
being is modified
the objective forfunction
local optimization
for trajectory withgeneration.
minimum
non-integrable
non-integrable
non-integrable
velocity
velocity
velocity constraints. problem,
constraints.
constraints.
Various
Various
primarily due
Various approaches
approaches
approaches
such
such
such
length being
being the
lengthtrajectory the objective
objective function
function for
forthetrajectory
trajectory generation.
generation.
holonomic
non-integrable
as systems is a challenging
velocity
‘chain-form’transformations constraints.and problem,
Various
sinusoidal primarily
approaches
control due to tion)
such
inputs length
This
This
problem
being
trajectory
isismodified
the is objective
smooth,
smooth,
for local optimization
function
ensures
ensures that
thatfor trajectory
the
withgeneration.
nonholonomic
nonholonomic
minimum and
and
as ‘chain-form’transformations and sinusoidal control inputs
as
as ‘chain-form’transformations
non-integrable velocity
‘chain-form’transformations
(Murray et al., constraints.
1994),nilpotent and Various
and
systemssinusoidal
sinusoidal
(Tilbury control
approaches
control
et al., such This
inputs
inputs
1995) length
This
angular
angular
trajectory
being
trajectory
constraints
constraints
theis
is smooth,
objective
smooth,
are
are followed
followed
ensures
function
ensures at
at
that
that
all
all
for the
times
times
nonholonomic
trajectory
the nonholonomic
and
and
generation.
passes
passes through
through
and
and
(Murray
(Murray et
et al.,
al., 1994),nilpotent
1994),nilpotent systems
systems (Tilbury
(Tilbury et
et al.,
al., 1995)
1995) angular
This constraints
trajectory is are
smooth, followed ensures at all
that times
the and passes
nonholonomic throughand
as ‘chain-form’transformations
(Murray
Reed and et al.,
Shepp’s 1994),nilpotent
model and sinusoidal
systems
discussed in (Tilbury
(Reeds control
et
andal., inputs
1995)
Shepp, angular
the via constraints
point. Various are followed
approaches at all
(Reeds timesand and passes
Shepp, through
1990),(Lv
Reed and
Reed and Shepp’s
Shepp’s model model discussed
discussed in in (Reeds
(Reeds and Shepp, the
and Shepp, the via
via
angular
point.
point.
constraints
Various
Various are
approaches
approaches
followed at
(Reeds
(Reeds
all times
and
and and
Shepp,
Shepp,
passes
1990),(Lv
1990),(Lv
through
(Murray
Reed et al.,
and Shepp’s 1994),nilpotent
model systems (Tilbury et al., 1995) the via
et al., point.
al., 2012), Various
2012), (Gasparetto
(Gasparetto and approaches
and Zanotto, (Reeds
Zanotto, 2010) and
2010) for Shepp, 1990),(Lv
for auto-parking
auto-parking
1990)(Laumond
1990)(Laumond
1990)(Laumond
et
et al.,
et al.,
al., 1994)discussed
1994)
1994) (Dubins, in1961)
(Dubins,
(Dubins,
(Reeds
1961)
1961) and and
and
and
(Reeds
(Reeds
(Reeds
Shepp,
and
and et
and et al.,
theal.,
via 2012),
point. (Gasparetto
Various and
approaches Zanotto,
(Reeds 2010)
and Shepp, forparking,
auto-parking
1990),(Lv
Reed
Shepp, and
1990)(Laumond
1990) Shepp’s
are et model
al.,
proposed 1994) discussed
in (Dubins,
the in1961)
literature. (Reeds and
However, and
(Reeds Shepp,
the and
cur- et
have
have 2012),
been
been (Gasparetto
provided
provided in
in the
the and Zanotto,
literature.
literature. For
For 2010)
parallel
parallel for auto-parking
parking, stan-
stan-
Shepp, 1990) are proposed in the literature. However, the cur-
Shepp,
Shepp,
vature 1990)
1990)(Laumond
1990)
of these are
are etproposed
al.,
proposed
paths is 1994) in
in
constrainedthe
the literature.
(Dubins, 1961)However,
literature.
and may and
However,
not be (Reedsthe
the
continuous and have
cur-
cur- et al.,been
have
dard
dard
2012),
been
algorithms
algorithms
provided
(Gasparetto
provided are
are
in
in the
the
already
already
literature.
and Zanotto,
literature.
designed.
designed.
For
For parallel
2010)
parallel
Proposed
Proposed
forparking,
auto-parking
parking,
auto
auto
stan-
stan-
parking
parking
vature
vature of
of these
these paths
paths is
is constrained
constrained and
and may
may not
not be
be continuous
continuous dard
have algorithms
been provided are already
in the designed.
literature. For Proposed
parallel auto
parking, parking
stan-
Shepp,
vature
and they 1990)
of these
consider are proposed
pathscar is
as a in
constrained
point the literature.
like and may
object However,
not
(Balch,be 1996)the
continuous cur-
(Du- dard
algorithmalgorithmsconsiders are already
the optimized designed. path Proposed
and follows auto parking
nonholo-
and they
and they consider
consider car car asas aa point
point like
like object
object (Balch,
(Balch, 1996)
1996) (Du-(Du- algorithm
algorithm
dard algorithms
considers
considers are
the
the
already
optimized
optimized designed.
path
path and
and
Proposed
follows
follows auto
nonholo-
nonholo-
parking
vature
and of these paths is constrained and may not be continuous algorithm
nomic and considers
and holonomic the
holonomic constraints, optimized
constraints, generates path and follows
generates aa smooth nonholo-
smooth trajec-
trajec-
bins,they
bins,
bins,
1961)
1961)
1961)
consider
and
and (Reeds
and
car asand
(Reeds
(Reeds
a point
and
and
Shepp,
Shepp,
Shepp,
like1990).
object In
1990).
1990).
(Balch,
In
In
this
this
1996)
this work
work
work we(Du-
we
we
are
are nomic
are nomic
algorithm and holonomic
considers theconstraints,
optimized generates path and aa smooth
follows trajec-
nonholo-
and
bins,
usingthey
1961) consider
and
differential car asand
(Reeds
flatness a based
point
Shepp,like object In
1990).
algorithm (Balch,
to this 1996)
work
generate we (Du-
smoothare nomic
tory
tory that
that and parks
parksholonomic
the
the car
car constraints,
autonomously
autonomously generates
in
in the
the given
givensmooth
slot.
slot. trajec-
In
In the
the
using
using differential
differential flatness
flatness based
based algorithm
algorithm to
to generate
generate smooth
smooth tory that parks the car autonomously in the given slot. In the
bins,
using 1961) and
differential
trajectories using (Reeds
flatness and
constraints Shepp,
based 1990).etIn
algorithm
(Rouchon to this
generate
al., 2011), we are nomic
worksmooth
(Lami- tory
presence
presencethat and parks
of
of
holonomic
the
dynamic
dynamic car constraints,
autonomously
obstacles,
obstacles, the
the
generates
in
visual
visualthe a smooth
given
sensing
sensing slot. trajec-
In
plays
plays the
an
an
trajectories
trajectories using
using constraints
constraints (Rouchon
(Rouchon et
et al.,
al., 2011),
2011), (Lami-
(Lami- presence
tory that of
parks dynamic
the car obstacles,
autonomously the visual
in the sensing
given plays
slot. In an
the
using differential
trajectories
raux et al., using
1999), flatness
constraints
(Ramirez based algorithm
(Rouchon
and Agarwal, et to generate
al., 2011),
2004), (Minhsmooth
(Lami-
and presence
important
important of
role.
role. dynamic
Consider
Consider obstacles,
a
a case
case the
where
where visual
the
the sensing
car
car is
is at
at a
aplays
starting
startingan
raux
raux et
et al.,
al., 1999),
1999), (Ramirez
(Ramirez and
and Agarwal,
Agarwal, 2004),
2004), (Minh
(Minh and
and important
presence role.
of Consider
dynamic a
obstacles, case where
the the
visual car is
sensing at a starting
plays an
trajectories
raux
Pumwa, et al.,
2014).using
1999),We constraints
(Ramirez
employ (Rouchon
and
polynomial Agarwal, et
based al., 2011),
2004), (Minh
interpolation (Lami-
and important
pose
pose (x
(x 0 , y
yrole.
0 , θ
θ 0 ).
).Consider
It
It is
is a
required
required case to
towhere
be
be the
parked
parked car in
in isa
a at a
slot
slot starting
whose
whose
Pumwa, 2014).
Pumwa, 2014). We We employ
employ polynomial
polynomial based based interpolation
interpolation and and pose important (x , ,
0 , y0 , θ0 ). It is required to be parked in a slot whose
00 , yrole. 00 ).Consider a case where the car is at a starting
raux
Pumwa, et al.,
2014).1999),We (Ramirez
employ and
polynomial Agarwal,based 2004), (Minh
interpolation and pose (x
coordinates
coordinates θ
00 ,are
are (x (xIt
f , is
y f ,
f , yy ff ,, θθ
required). A to
via be
point parked
(x , y in
) is
ff ). A via point (xvv , yvv ) is specified by a slot whose
specified by
 This
This work is
is carried out
out under the
the project
project sponsored by
by Department of coordinates , y0 ,are (x θ
Pumwa,
 This
Science
2014).
work
work
and is We employ
carried
carried
Technology, out
Govt.
underpolynomial
under
of the
India project
under the
based interpolation
sponsored
sponsored
WOS-A by
Department
Department
Research
and
Fellowship
of
of pose
the user
user
(x0and
coordinates
the and are
the
the (xItff ,,passes
θ0 ).car
car
is
passes θ ff ).
y f ,required A
A via
).through
through via point
to thebe via
point
the via
(x
parked , y )) and
vv , yvvin
(xpoint
point
is
isaspecified
and
slot
parks
parks
whose
specified by
by
itself
itself
This work is carried out under the project sponsored by Department of the user and the car passes through the via point and parks itself
Science
Science
 and
and
Technology,
Technology,
Govt.
Govt.
of India
of India
under
under
the WOS-A
thesponsored
Research
WOS-A Research
Fellowship
Fellowship coordinates
the
in theuser slotand are
the
provided (x
carf , y f
passes
(Fig. , θ ). A via point
f through the via point
1). (x , y ) is specified
v v and parks itself by
(Sanction
This
Science and
(Sanction No
work : SR/WOS-A/ET-34/2013-14(G)).
is carried
NoTechnology, out under the project by Department
Govt. of India under the WOS-A Research Fellowship
: SR/WOS-A/ET-34/2013-14(G)). of in
in the
the slot
slot provided
provided (Fig.
(Fig. 1). 1).
(Sanction
Science
(Sanction No
and : SR/WOS-A/ET-34/2013-14(G)).
NoTechnology, Govt. of India under the WOS-A Research Fellowship
: SR/WOS-A/ET-34/2013-14(G)).
the
in theuser slotand the
provided car passes
(Fig. 1). through the via point and parks itself
(Sanction
2405-8963 No©: SR/WOS-A/ET-34/2013-14(G)). in the slot provided (Fig. 1).
2020, IFAC (International Federation of Automatic Control) Hosting by Elsevier Ltd. All rights reserved.
Peer review under responsibility of International Federation of Automatic Control.
10.1016/j.ifacol.2020.06.095
568 Rahee Walambe et al. / IFAC PapersOnLine 53-1 (2020) 567–572

with correct orientation without violating the constraints


on the steering angle. The via point ensures that the car
aligns itself in such a way as to ensure the smooth parking
in the provided slot.
• To ensure that the constraint on the steering angle, starting
and end velocities and acceleration are followed every
instant, local optimization is implemented. The local op-
timization provides faster results and from the hardware
implementation point of view, it reduces the processing
time. We run both the global and local optimization rou-
tines for various case studies and it can be seen from the
results that local optimization approach is faster than the
global optimization.
Fig. 1. Autoparking Scenario
Section 2 presents the overview of the open loop motion plan-
ning of the car type vehicle in the absence of obstacles be-
Other useful test case scenario for the proposed algorithm is tween 2 points. Section 3 discusses the problem formulation
in collision avoidance. Our approach is promising because if and subsequent mathematical discussion on how the 2 point
the positions of the obstacle(s) are known with respect to the motion planner is extended to the via point cases. Section 4
vehicle, the user can specify the point(s) to avoid the collision lists a number of case studies for the slot parking and obstacle
and the algorithm generates the corresponding control inputs avoidance problems. The extension to the obstacle avoidance in
which follow the constraints (both nonholonomic and holo- case of multiple obstacles is also discussed. A 1:10 scale down
nomic) on the vehicle. Multiple obstacle detection algorithms model is used as vehicle platform for hardware implementation
include (Barshan and Kuc, 1992; Daily et al., 1987; Boren- and is discussed in section 5 along with results.This is followed
stein and Koren, 1988),vision based techniques (Ancona, 1992; by future scope in section 6 and conclusion in section 6.
Enkelmann, 1991; Young et al., 1992; Nelson, 1988),(Larson
and Trivedi, 2011), (Wong, 2016) etc. It is assumed that the OD 2. MOTION PLANNING OF A CAR TYPE ROBOT IN THE
algorithm based on some type of visual ranging sensor provides ABSENCE OF OBSTACLES
the position of obstacles with respect to the vehicle. A suitable
via point on the grid/map can be determined analytically.Thus
The nonholonomic kinematic model of a car is derived using
in addition to start pose (x0 , y0 , θ0 ) and end pose (x f , y f , θ f ),
the assumption of pure rolling. This imposes non-integrable
a via-point (xv , yv ) is also required which avoids the obsta-
constraints on lateral velocities. Additionally, a holonomic con-
cles. The car follows the minimal distance path as discussed
straint is considered which takes into account the lower limit on
in (Walambe R.A, 2016) in the absence of via-point. When
the turning radius of the vehicle (Laumond et al., 1994). (refer
the via-point is specified, the car takes the path which follows
Fig. 2).
the constraints, passes through the via point and generates the
smooth trajectory from start to the goal position.
It is not necessary to specify the orientation angle θv of the car
corresponding to the specified via point.The trajectory gener-
ated through the motion planner takes care of the intermediate
θv by generating necessary steering angle (φv ). If the steering
angles φ (t) are accurately generated, then the orientation of the
car at the end is automatically achieved as θ (t) = f (φ (t)) as can
be seen from the kinematic model presented in the following
section.
In summary, this paper makes the contribution in 3 main areas.
• Wide literature is available for a three wheeled mobile
robot have been developed and reported (Ramirez and
Agarwal, 2004; Latombe, 1991; Jiménez et al., 1998), but
the work in the area of a four-wheeled class of WMR
is still an undeveloped area of research. Primary reason
being that the state model of the 3 wheeled robot is 3rd
order (x, y, θ ) as oppose to the four wheeled drive vehicle
which is 4th order (x, y, θ , φ )(Luca et al., 1998; Jiménez Fig. 2. Generalised co-ordinates of car-type robot
et al., 1998). This additional state describing the system
imparts further complexity to the modeling and planning The lateral velocities of the rear wheels are set to zero. Then the
of the car type vehicles. rigid body constraints of the car are applied for the state space
• Auto-parking algorithms discussed in the literature mainly model of the car as:
focus on the reactive reflex based behaviour generation. ẋ = u1 cos θ (1)
The auto-parking algorithm presented in this article con- ẏ = u1 sin θ (2)
siders the mathematical model and constraints on the me- u1
θ̇ = tan φ (3)
chanical assembly of the four-wheeled car and plans the l
motion using local optimization such that the car parks φ̇ = u2 (4)
Rahee Walambe et al. / IFAC PapersOnLine 53-1 (2020) 567–572 569

where control inputs are u1 and u2 . Mechanical limitation of undefined by separating the path description from the timing
steering mechanism of the car is considered by restricting the information (Pedrosa et al., 2003).
steering angle (and hence turning radius) to a limiting value and
is given by: 3. PATH PLANNING THROUGH AND SPECIFIED
|φ | ≤ φmax (5) VIA-POINT
where φmax is strictly positive.
The flat outputs x and y can be defined in terms of normalised
2.1 Motion Planning using DF approach parameter p as a polynomial of degree n, where the degree n
depends upon the number of necessary constraints required to
Differential flatness (Lévine, 2009) can be understood as an describe the motion. Therefore let,
n
nonlinear parallel of the concept of controllability in the linear
systems. The system is differentially flat only if the variables x(p) = ∑ ai pi (13)
i=0
(state, input and output) of the system can be expressed in n
terms of ‘flat’ variables (and their higher order derivatives). The y(p) = ∑ bi pi (14)
car-like robot model is flat with (x,y) as the flat outputs. The i=0
Differential Flatness based model of the Eq.(1- 4) is given as :

u1 = ± ẋ2 + ẏ2 (6) 3.1 Motion through a Via-point
θ = atan2 (ẏ, ẋ) (7)
Since the starting and ending configuration of robot must be
in [−π, π]. known or provided, following constraints are introduced.
x(0) = x0 , y(0) = y0 , θ (0) = θ0 ,
l θ̇ x(1) = x f , y(1) = y f , θ (1) = θ f
φ = tan−1 (8)
u1
in [(−π/2, π/2)]. Additionally the robot must pass through a via-point, whose
x and y co-ordinates are known but orientation at the point is
ẋÿ − ẏẍ unknown, which gives two constraints as
φ = tan−1 l 3 (9)
(ẋ + ẏ) 2 x(pv ) = xv , y(pv ) = yv
... ... Other than the geometric constraints given above the motion of
 (ẋ y − x ẏ)(ẋ2 + ẏ2 ) − 3(ẋÿ − ÿẋ)(ẋẍ + ẏÿ)
u2 = l ẋ2 + ẏ2 robot is further restricted by the physical constraint
(ẋ2 + ẏ2 )3 + l 2 (ẋÿ − ẍẏ)2
(10) φ ≤ φmax (15)
From equations (6) through (10), we can observe that both the that signifies the maximum angle of sweep that the wheels of
control inputs u1 and u2 and state variables θ and φ can be robot can perform, which is typically in the range of 25 to 35.
expressed in terms of the flat outputs and their higher order
Since the number of definite constraints is 8, the minimum
derivatives. Therefore with the knowledge of the desired path
degree of n to describe the motion given by equations 13 & 14 is
of the robot in terms of the Cartesian position of the rear
3, which would give us a single unique curve. However a curve
wheels (x(t), y(t)), we can compute the control inputs required
such generated may or may not satisfy the infinite constraint
to reproduce the desired output trajectory (Luca et al., 1998).
given by equation 15 and hence we shift to next available degree
Given the initial and finalconfigurations
 of the car, we can of 4, which for 8 constraints gives a family of feasible curves.
construct the trajectories x(t), y(t) in time, using the flat Thus for motion through single via-point, the equations 13 &
variables, x and y. Motion planner is based on the assumption 14 are reduced to
that the x(t) and y(t) are cubic polynomials (Walambe R.A, x(t) = a0 + a1 p + a2 p2 + a3 p3 + a4 p4 (16)
2016).
y(t) = b0 + b1 p + b2 p2 + b3 p3 + b4 p4 (17)
Since solving equations 16 & 17, requires 10 definite con-
x(t) = a0 + a1t + a2t 2 + a3t 3 (11) straints, we introduce additional constraints as φ (0) = 0, φ (1) =
and y(t) = b0 + b1t + b2t + b3t 2 3
(12) 0 for the sake of simplicity. In summary, the total constraints
which are considered for optimization are:
where a0 , a1 , a2 , a3 and b0 , b1 , b2 , b3 are constants. x(0) = x0 , y(0) = y0 , θ (0) = θ0 ,
However with this construction, the system is not first order x(1) = x f , y(1) = y f , θ (1) = θ f
controllable at the initial and final points (Lévine, 2009) due to
speed of the vehicle being 0 at these points;⇒ ẋ = 0 and ẏ = 0. x(pv ) = xv , y(pv ) = yv
From Equations (7), (9) and (10), we can observe that u2 , θ , and
φ are undefined at these points and we are unable to account φ ≤ φmax (18)
for the initial and final orientations of the car (θ0 and θ f ) and φ (0) = 0, φ (1) = 0 (19)
initial and final steering angles (φ0 and φ f ) while we construct
the trajectory. In fact, the control and state trajectories are not 3.2 Optimization of Path
defined when u1 (t˜) = 0 at any ˜
 instant 0 ≤ t ≤ t f , for any point
on the trajectory x(t˜), y(t˜) . Parameterized trajectory is used The path generated through any arbitrary initial and final
to avoid such cases where the control and state trajectories are configurations (x0 , y0 , θ0 , 0) & (x f , y f , θ f , 0) with via-point as
570 Rahee Walambe et al. / IFAC PapersOnLine 53-1 (2020) 567–572

(xv , yv ) may or may not satisfy the restriction on steering an-


gle given by 15, and if so the control inputs u1 and u2 so
generated would not lead to execution of a desired or feasible
path. Even if the constraint on steering angle is satisfied, the
path so generated may not be of least length. Both the cases
the constants a0 ...b4 need to be modified via an optimization
routine to generate a feasible trajectory of minimum length.
Fig. 3. Case I Results
The optimization routine can be carried out either locally or
globally. If chosen to optimize locally, the process needs initial the value of p at via-point v(xv , yv , zv ) denoted by pv is given
guesses which can be found out from the necessary constraints by:
along with constraints given by Equation 3.1. Global optimiza- N
tion does not require initial guesses, however, it needs time pv = (21)
D
consumptive by order of magnitudes than local optimization,
thereby reducing its use in real time control of a system such as where
ours.

Thus, the optimization problem can be stated as N= (xv − x0 )2 + (yv − y0 )2 + (zv − z0 )2
 1 
minimize ẋ2 (p) + ẏ2 (p) d p (20) and

0
subject to: D= (xv − x0 )2 + (yv − y0 )2 + (zv − z0 )2 +

• (x f − xv )2 + (y f − yv )2 + (z f − zv )2 (22)
x(0) = x0 , y(0) = y0 , θ (0) = θ0 ,
x(1) = x f , y(1) = y f , θ (1) = θ f , For the sake of simplicity we have restricted the Euclidean norm
x(pv ) = xv , y(pv ) = yv to two dimensions for testing purposes by ignoring elevations.
Therefore pv reduces to following equation:
• phimax ← φmax 
(xv − x0 )2 + (yv − y0 )2
The algorithm for the via point generation using local optimiza- pv =  
tion is shown: (xv − x0 )2 + (yv − y0 )2 + (x f − xv )2 + (y f − yv )2
(23)
Algorithm 1 Optimization of Trajectory
With the algorithm described in this section, a number of
1: x(p) := a0 + a1 p + a2 p2 + a3 p3 + a4 p4 case studies were considered. The results are presented in next
2: y(p) := b0 + b1 p + b2 p2 + b3 p3 + b4 p4 section.
3: length ← Length of the robot
4: phi(p) := Arctan(length ∗ ((ẋ(p)ÿ(p) −
4. CASE STUDIES
ẏ(p)ẍ(p))/(ẍ2 (p) + ÿ2 (p)) 1.5 ))
1 2 
5: objectivefunction := 0 ẋ (p) + ẏ2 (p) d p The two main application area of the via point motion planner
6: constraintlist ← are autonomous slot parking and collision avoidance. A number
x(0) = x0 , y(0) = y0 , θ (0) = θ0 , of case studies were carried out. This section presents the
x(1) = x f , y(1) = y f , θ (1) = θ f , simulation studies for three chosen cases (Case I and Case II
x(pv ) = xv , y(pv ) = yv for slot parking and Case III for collision avoidance). The x(t)
vs y(t) plot shows the trajectory planned from start pose to
7: phimax ← φmax end pose through the specified via point (marked). The plots
8: (a0 ...b4 ) = Solve(constraintlist) for φ (t) and θ (t) are also presented for individual cases. They
9: for p=0:0.001:1 do show how these variables change with time. The φ (t) always
10: if phi(p) ≥ phimax then remains within the constrain value of ≤ φ (max).
11: append(constraintlist, phi(p) <= phimax)
12: end if
13: end for 4.1 Case Study I : Slot Parking (refer Fig 3)
14: (a0 ...b4 ) = FindMinimum(ob jective f unction, constraintlist)
The specifications are: Start pose (0,0,85 deg), end pose(5,5,0
deg), via point (2,4).
3.3 Computation of the path parameter pv at the via point
4.2 Case Study II : Slot Parking (refer Fig 4)
For the calculation of constants a0 to b4 , the equations used
above rely on the value of normalised parameter p at the via-
The specifications are: Start pose (5,5,160 deg), end pose(3,3,85
point which is decided empirically. We propose to use ratio of
deg), via point (3,5)
euclidean distance between starting point and via-point to the
sum of euclidean distances between starting point to via-point
and between via-point to ending point. Doing so guarantees that 4.3 Case Study III: Single Obstacle Avoidance (refer Fig 5)
time taken to travel to via-point isn’t disproportionate to the
distance between the points and total traveling time. Hence for The specifications are: Start pose (1,1,45 deg), end pose(8,1,-45
travel between starting point x0 , y0 , z0 and end point x f , y f , z f deg), via point (4.5,4.5)
Rahee Walambe et al. / IFAC PapersOnLine 53-1 (2020) 567–572 571

Trajectory Generated
y(t)
14

12

10

Fig. 4. Case II Results


8
D

C
6

x(t)
2 4 6 8 10

Fig. 5. Case III Results


Fig. 7. Case V: Motion planning in the presence of multiple
obstacles

Fig. 6. Table1: Computational Time required for various opti-


mization routines
Fig. 8. Hardware Setup with S2D vehicle platform, RPi3 and
4.4 Time required for finding the path using Local Vs Global Arduino Uno
Optimization
5. HARDWARE IMPLEMENTATION
As discussed in previous sections the local optimization pro-
vides faster results. We ran the three cases through both local A 1:10 scaled down model of the Cheverelot Camero car
and global optimization routines. The time required for local (Swift2drift) developed by HPI racing is chosen as a vehicle
optimization is lower than the corresponding global optimiza- platform.
tion routine for the same case. The results are shown in Table1. Raspberry Pi 3B and Arduino is used as a master-slave con-
It can be seen that the local optimization is faster than the troller pair. The Radio Control of S2D is rplaced by the flatness
global optimization. From hardware implementation point of based motion planner running on RPi3. The motion planner
view, this is an important and promising approach. generates the driving velocity u1 and steering angle φ for every
instant T . The u1 and φ are represented as the PWM duty
cycles. The vehicle steers according to this trajectory and gen-
4.5 Multiple Obstacles Avoidance erates the paths in real world. The complete hardware setup is
shown in Fig. 8.
The procedure / algorithm described in previous section could
be implemented for multiple via-points. Let, a robot has to go 5.1 Case Studies
from point A to B as shown in Fig. 7 The robot has limited
awareness of its surrounding, restricted by range of its sensors. A number of cases were tested as discussed in section 4.
It detects an obstacle O1 , which would not allow it to follow
the simplest path possible. Hence it chooses a via-point C, • Case I : Auto-parking. Start pose: (0,0,85 deg); end pose:
based on where it has clear vision, and plans a path through (5,5,0 deg); via point: (2,4) with Pv = 0.585 computed as
A − C − B. The robot proceeds to C, however, prior to arriving discussed in Section 3(D). The vehicle travels along the
at C it detects another obstacle O2 , which was not visible (or marked trajectory (Fig. 9) which is very similar to the
detectable) priory. Since the result of first path planning is in software generated trajectory shown in Fig.3.
the memory,the orientation of robot at point C is known and • Case II : Auto-parking. Start pose: (5,5,160 deg); end
further path can be generated with C as a start point. The robot pose: (3,3,85 deg); via point: (3,5) with Pv = 0.5 computed
then selects another via-point D and uses the same algorithm to as discussed in Section 3(D). The vehicle travels along
plan the motion through C − D − B, abandoning the first path the marked trajectory (Fig. 10) similar to the software
upon arriving at C generated trajectory in Fig.4.
572 Rahee Walambe et al. / IFAC PapersOnLine 53-1 (2020) 567–572

Barshan, B. and Kuc, R. (1992). A bat-like sonar system for obstacle localiza-
tion. IEEE Transactions on systems, man, and cybernetics, 22(4), 636–646.
Borenstein, J. and Koren, Y. (1988). Obstacle avoidance with ultrasonic
sensors. IEEE Journal on Robotics and Automation, 4(2), 213–218.
Daily, M.J., Harris, J.G., and Reiser, K. (1987). Detecting obstacles in range
imagery. In Image Understanding Workshop, volume 62.
Dubins, L.E. (1961). On plane curves with curvature. Pacific Journal of
Mathematics, 11(2), 471 – 481.
Enkelmann, W. (1991). Obstacle detection by evaluation of optical flow fields
from image sequences. Image and Vision Computing, 9(3), 160–168.
Gasparetto, A. and Zanotto, V. (2010). Optimal trajectory planning for indus-
trial robots. Advances in Engineering Software, 41(4), 548–556.
Jiménez, P., Thomas, F., and Torras, C. (1998). Collision detection algorithms
for motion planning. In J.P. Laumond (ed.), Robot Motion Planning and
Control, 305 – 343. Springer.
Lamiraux, F., Sekhavat, S., , and Laumond, J.P. (1999). Motion planning and
control for hilare pulling a trailer. IEEE Transactions on Robotics and
Automation, 15(4), 640–652.
Larson, J. and Trivedi, M. (2011). Lidar based off-road negative obstacle
detection and analysis. In 2011 14th International IEEE Conference on
Intelligent Transportation Systems (ITSC), 192–197. IEEE.
Latombe, J.C. (1991). Robot Motion Planning. Kluwer Academic Publishers,
Boston.
Laumond, J.P., Jacobs, P.E., Taix, M., and Murray, R.M. (1994). A motion
planner for nonholonomic mobile robots. IEEE Transactions on Robotics
and Automation, 10(5), 577–592.
Lévine, J. (2009). Analysis and Control of Nonlinear Systems- A Flatness-
Fig. 9. Case I : trajectory through a specified via point for a based Approach. Springer.
auto-parking case Luca, A.D., Oriolo, G., and Samson, C. (1998). Feedback control of a
nonholonomic car-like robot. In J.P. Laumond (ed.), Robot Motion Planning
and Control, 171 –254. Springer.
Lv, Z., Zhao, L., and Liu, Z. (2012). The shortest and iterative path-planning
algorithm of car’s parallel automatic parking. In Proceedings of the 2012
Third International Conference on Mechanic Automation and Control Engi-
neering, 3153–3156. IEEE Computer Society.
Minh, V.T. and Pumwa, J. (2014). Feasible path planning for autonomous
vehicles. Mathematical Problems in Engineering, 2014.
Murray, R.M., Li, Z., and Sastry, S.S. (1994). A Mathematical Introduction to
Robotic Manipulation. CRC Press.
Nelson, R.C. (1988). Using flow field divergence for obstacle avoidance:
towards qualitative vision.
Pedrosa, D.P., Medeiros, A.A.D., and Aslina, P.J. (2003). Point-to-point
paths generation for wheeled mobile robots. In Robotics and Automation,
volume 3, 3752–3757. ICRA, IEEE.
Fig. 10. Case II : trajectory through a specified via point for a Ramirez, H.S. and Agarwal, S. (2004). Differentially Flat Systems. CRC Press.
auto-parking case Reeds, J.A. and Shepp, L.A. (1990). Optimal paths for a car that goes both
forwards and backwards. Pacific Journal of Mathematics, 145(2), 367 –
6. CONCLUSION AND FUTURE SCOPE 393.
Rouchon, P., Fliess, M., Levine, J., and Martin, P. (2011). Flatness and motion
The paper presented a novel approach based on the motion planning : the car with n trailers. Automatica.
planning through a via-point using differential flatness and lo- Tilbury, D., Murray, R., and Sastry, S.S. (1995). Trajectory generation for the n-
cal optimization. The algorithm and mathematical formulation trailor problem using goursat normal form. IEEE Transactions on Automatic
presented is useful mainly in auto-parking in a slot and col- Control, (5).
lision avoidance while auto-navigating. We have defined the Walambe R.A, Agarwal N., K.S.J.V. (2016). Optimal trajectory generation for
car-type mobile robot using spline interpolation. In Proceedings of ACODS,
auto-parking problem mathematically using via point which
Trichy, India.
reduces complexity. In addition to this, the local optimization Wong, U. (2016). Terrain obstacle detection and analysis using lidar. In Proc.
reduces the processing time. The simulation results presented of 18th Mediterranean Electrotechnical Conference, LIMASSOL, CYPRUS.
are verified on a prototype vehicle. The open loop trajectories Citeseer.
on hardware deviate from the simulation trajectories. This issue Young, G.S., Hong, T.H., Herman, M., and Yang, J.C. (1992). Obstacle
can be addressed using the feedback control. The presented detection for a vehicle using optical flow. In Proceedings of the Intelligent
algorithm can be extended to the multiple obstacles. In addition Vehicles92 Symposium, 185–190. IEEE.
to this, visual and proximity sensors can be used for better
hardware implementation.

REFERENCES
Ancona, N. (1992). A fast obstacle detection method based on optical flow. In
European Conference on Computer Vision, 267–271. Springer.
Balch, T. (1996). Grid-based navigation for mobile robots. The Robotics
Practitioner, 2.

You might also like