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

Preprints of the 18th IFAC World Congress

Milano (Italy) August 28 - September 2, 2011

Continuous-Curvature Control of Mobile


Robots with Constrained Kinematics ⋆
Vicent Girbés, Leopoldo Armesto and Josep Tornero ∗

Research Institute of Design and Manufacturing at Universitat
Politècnica de València, Camı́ de Vera, 46022, València, Spain
(e-mail: {vigirjua,leoaran,jtornero}@upvnet.upv.es).

Abstract The main contribution of the paper is to provide a method to generate continuous-
curvature paths in order to perform the kinematic control of a wheeled mobile robot, based
on combinations of clothoids, line segments and circular arcs. Higher benefits on comfort and
safety can be obtained when generating continuous-curvature paths, which is very important
in transporting people or dangerous goods. Generated paths take also into account lower and
upper bounds of sharpness and curvature simultaneously, while it is not the case of many
kinematic controllers like pure-pursuit control. The proposed kinematic controller determines a
continuous-curvature path to reach a target configuration by recomputing the whole path every
step, applying next curvature planned in the curvature profile. The new method can be easily
combined with global planners and vision systems that give some way-points to be followed. For
that purpose, some simulations show that proposed method can solve problems with different
complexity such as line following problem, path tracking, lane changing and overtaking. Finally,
an analysis to evaluate the performance of the new method against pure-pursuit is done.

Keywords: Wheeled robots, Kinematic control, Trajectory planning, Path planning.

1. INTRODUCTION tions [Iijima et al. (1981); Scheuer and Fraichard (1996,


1997b)]. Clothoids are convenient because they provide
It is well known that comfort and safety increase when better comfort (by increase gradually the centrifugal),
generating continuous-curvature paths and trajectories. desirable arrangement for super-elevation and satisfactory
These aspects become crucial in transporting people or road appearance. The Standards usually stablish upper
dangerous goods. Wheeled mobile robots following a path bounds on clothoid sharpness based on these three criteria.
with continuous-curvature might also get benefit on wheels In addition to this, some authors, see Marchionna and
slippage reduction and low odometry errors, since transi- Perco (2007) and the references therein, have shown the
tions are softer with constant curvature rates. However, all inconvenience of using too large clothoid segments since
these aspects have shown little attention and most of well they can have a potentially negative effect on driver’s curve
known path planners or kinematic controllers do not take perception and safety. As a consequence, some authors
continuous-curvature path generation into account. suggest lower bound on the clothoid sharpness. Moreover,
mechanical constraints on orientable wheels must be also
In recent years lots of researchers have used clothoids taking into account when generating a path tracking real
because of their interesting geometric properties and their vehicle which implies a boundary on the maximum allowed
benefits in comfort and safety. In mobile robotics, clothoids curvature.
have been used to generate trajectories in navigation
problems such as: obstacle avoidance [Montés and Tornero In Scheuer and Fraichard (1996), elementary paths were
(2004)]; overtaking and lane changing [Papadimitriou and first introduced, a combination of two symmetrical clo-
Tomizuka (2003), Montés et al. (2007), Wilde (2009)]; thoids with the same homotetical factor. These ideas were
parking [Laumond et al. (1994), Jiang et al. (1999)]; etc. In extended in Scheuer and Fraichard (1997a), by introducing
addition to this, clothoids are commonly used in highway the concept of bi-elementary paths, combinations of two
design [del Corral Manuel de Villena (2001)] and coasters elementary paths. In bi-elementary paths the initial and
[Weiss (1998)]. Road identification and modelling based final configurations are not necessary symmetric, but the
on vision systems can be also carried out with clothoids loci of the intermediate configuration is restricted to a
[Corridori and Zanin (2004); Manz et al. (2010)]. See circle with specific orientations to ensure that each ele-
Annex A for a clothoid property summary. mentary path contain symmetrical clothoids. Obviously,
the solution space is significantly limited in those cases
In order to generate continuous-curvature paths, most re- and elementary and bi-elementary paths might not be
searchers have used clothoids as transitions curves between appropriate to solve generic problems.
line segments and circular segments and their combina-
⋆ This work was supported by VALi+d and PROMETEO Programs Dubin’s curves were the inspiration in Scheuer and
(Generalitat Valenciana), MAGV Project (Universitat Politècnica de
Fraichard (1997b) to create the SCC-paths (simple conti-
València) and DIVISAMOS Project (Spanish Government) nuous-curvature paths) and thus simplify the problem of

Copyright by the 3503


International Federation of Automatic Control (IFAC)
Preprints of the 18th IFAC World Congress
Milano (Italy) August 28 - September 2, 2011

finding optimal path. Each path is defined as the combina-


tion of a maximum of 7 parts between clothoids, circular
arcs and line segments. In Scheuer and Xie (1999) a non-
holonomic robot without curvature constraints was used to
design a generic planner by combining clothoids and anti-
clothoids segments. In Reeds and Shepp (1990) RS-paths
were introduced, and in Fraichard and Scheuer (2004) were
used to create the CC-paths that ensure continuity, by
replacing circular arcs to the called CC-turns. In Fraichard
and Ahuactzin (2001) a global planner with continuous-
curvature path generation for vehicles is described, which
combines existing systems based on collision avoidance
introducing clothoids, lines and circles.
Pure-pursuit methods, as Ollero (2001), have been stu-
died intensively in the past and applied on different ap-
proaches, covering a wide spectrum of applications such Figure 1. SCC-path definition and its curvature profile.
as path tracking, vision-based line following, overtaking
manoeuvres, lateral tracking, parking, etc. The goal is Definition Let R a non-holonomic wheeled robot moving
to determine vehicle’s curvature and velocity that can on a 2D plane with bounded curvature κ ∈ [−κmax , κmax ]
guarantee convergence to a specific path or trajectory. It and sharpness σ ∈ [σmin , σmax ]. The curvature bounds
is quite common in such methods to compute goal points are due to mechanical constraints of orientable wheels,
based on current vehicles pose relative to the path, so while sharpness bounds are introduced to increase safety
they can be applied continuously by recomputing vehicle’s by satisfying the following criteria: comfort, desirable
curvature and velocities based on relative pose. However, arrangement for super-elevation and road appearance as
to the authors knowledge, none technique can guaranty discussed on Section 1.
continuity on the curvature in order to solve path tracking The goal is to generate a continuous-curvature path P
problems. connecting the actual robot pose qR = (xR , yR , θR , κR )T
The main contribution of the paper is to provide a method to a target configuration qT = (xT , yT , θT , κT )T . A target
to generate continuous-curvature trajectories in order to configuration might be determined as usual in motion
converge to a path, based on combinations of clothoids planning methods such as way-points of a global path or
with line segments and circular arcs. Different kinds of as in pure-pursuit methods by selecting a point at a given
continuous-curvature paths have been defined in order to distance on the path to track.
solve problems with different complexity. The simplest
one provides continuous-curvature profiles that cannot 2.2 Continuous-Curvature Path Generation
change from positive to negative or vice versa but are used Definition A Single Continuous-Curvature path (SCC)
to perform more complex solutions providing a general is composed by a line segment, a first clothoid, a circle
curvature profile that can cope with changes on curvature segment (arc) and a second clothoid, with a curvature
sign. In addition to this, lower and upper bounds on profile like the one shown in Figure 1. These paths are
sharpness and curvature are simultaneously taken into similar to the ones defined in Scheuer and Fraichard
account, so every trajectory satisfies those constraints (1997b), but clothoids are not necessarily symmetric. As
and the solutions that we provide get the benefits of particular cases the length of line segment and arc can
higher comfort and safety. It is interesting to remark be zero and so only two clothoids are necessary, known
that the method can be applied as a kinematic controller as elementary path Scheuer and Fraichard (1996), which
with continuous re-computation of proposed trajectories requires that clothoids to be symmetric (with the same
based on the vehicle’s current position, like in pure-pursuit sharpness and curvature).
framework.
Definition Double Continuous-Curvature paths (DCC)
2. CONTINUOUS-CURVATURE PATH GENERATION use two Single Continuous-Curvature paths (SCC) plus
an additional final line segment to provide a set of general
2.1 Problem Statement solutions. The first SCC-path is noted with sub-index
A and starts at point qA = (xA , yA , θA , κA )T , with
Definition Let R a non-holonomic wheeled robot moving κA = 0; while the second SCC-path is noted with sub-
on a 2D plane with extended state space q = (x, y, θ, κ)T ∈ index B finishing at point qB = (xB , yB , θB , κB )T , with
ℜ2 × S × ℜ containing the robot Cartesian positions x κB = 0. The configuration joining both SCC-paths is
and y, the robot orientation θ and the curvature κ. The qC = (xC , yC , θC , κC )T , with κC = 0. Figure 2 shows
kinematic model for R is: an example of a DCC-path together with the curvature
   
ẋ(t) v(t) cos(θ(t)) profile. It can be appreciated that in that case, we need
ẏ(t) =  v(t) sin(θ(t)) 
q̇(t) =  (1)
to generate four clothoids named as A1, A2, B1 and B2,
θ̇(t)   v(t)κ(t)  two circular segments ΩA and ΩB and two line segments
κ̇(t) v(t)σ(t) with length lA , lB and lC to properly guarantee the
appropriate changes on the curvature. Particular solutions
being v(t), σ(t) the velocity and sharpness to describe a can be derived using only four clothoids, obtaining similar
path respectively. solutions to bi-elementary paths proposed in Scheuer and

3504
Preprints of the 18th IFAC World Congress
Milano (Italy) August 28 - September 2, 2011

Figure 3. Curvature curve selection for different values of


sigma.
q 2
κ
with γA1 = πσA1 A1
. Eqs. (10) and (11) indicate that any
clothoidal combination is possible (on each quadrant) and
its sign depends on the conditions that we need posi-
Figure 2. DCC-path definition and its curvature profile. tive/negative curvature and positive/negative curvature
rate. The configurations for the second qA2 , third qB1
Fraichard (1997a). However, it is interesting to remark the
and fourth qB2 clothoids can be similarly defined as well
generalization of the formulation provided in this section
as the center of second circle segment, whose arc angle
will allow us to generate a wide spectrum of possible
θΩB = θB − θC − θB1 − θB2 with radius rΩB = κ−1 B1 .
paths with clothoids with different sharpness that can be
indistinctly combined. The intermediate configuration qC depends on the selected
values αA1 and αA2 for each clothoid as well as selected
Let’s assume that the sharpness of the four clothoids is
values for lA and θC , while the remainder of variables will
given by:
be computed upon those values:
σA1 = αA1 (σmax − σmin )+σmin (2)
σA2 = αA2 (σmax − σmin )+σmin (3)       
σB1 = αB1 (σmax − σmin )+σmin (4) xA lA cos θA x
R(θA ) A1
 yA   lA sin θA   yA1 
σB2 = αB2 (σmax − σmin )+σmin (5) qC =   +
θA 0  +
 +

−θA1
being αA1 ∈ [0, 1], αA2 ∈ [0, 1], αB1 ∈ [0, 1] and αB2 ∈ κA 0 −κA1
[0, 1] design parameters to be determined. | {z } | {z } | {z }
origin (qA ) 1st segment (lA )
1st clothoid (A1)
The maximum curvature p of each clothoid
p is:       (13)
sin θΩ xA2
κA1 = κA2 = min{ σA1 δA , σA2 δA , κmax } (6) rΩA R(θA −θA1 ) cos θΩ A−1  R(θC ) yA2 
p p + A + 
κB1 = κB2 = min{ σB1 δB , σB2 δB , κmax } (7)  −θΩA   −θA2 
being δA = |θA − θC | and δB = |θB − θC | the deflection 0 κA2
angles between configurations ∠(qA , qC ) and ∠(qC , qB ). | {z } | {z }
arc (ΩA ) 2nd clothoid (A2)
Thus, depending on the selected clothoid parameter and
deflection angle, we obtain a family of curvature curves as On the other hand, the final configuration qB depends on
shown in Figure 3. the selected values αB1 and αB2 for each clothoid and lC ,
It can be√shown that, θC and lB , while the remainder of variables can be easily
√ the arc of the first circle has zero
length if σA1 δ = σA2 δA < κmax , otherwise, the center determined:
of the circle with radius rΩA = κ−1A1 whose frame is located     h i h i
at the origin of the first clothoid is: xC lC cos θC x
R(θC ) B1 R(θB )
xB2
y l sin θC   yB1 −yB2
xΩA = xA1 − rΩA sin θA1 (8) qB=  C  + C
θC 0
+
θB1
+
θB2
+
yΩA = yA1 + rΩA cos θA1 (9) κC 0 κB1 −κB2
| {z } | {z }| {z }| {z }
with radius rΩA = κ−1 −1
A1 , rΩB = κB1 and arc angle θΩA = mid conf. (qC )2nd segment (lC ) 3rd clothoid (B1) 4th clothoid (B2)
 h i  
θC − θA − θA1 − θA2 , being qA1 = (xA1 , yA1 , θA1 , κA1 )T the rΩB R(θC +θB1 )
sin θΩB lB cos θB
final point of the first clothoid given by Fresnel integrals +
1−cos θΩB + lB sin θB 
θΩ B 0
(see Appendix A):
r Z γA1 0 0
π π | {z }| {z }
xA1 = ± cos ξ 2 dξ (10) arc (ΩB ) 3rd segment (lB )
σA1 0 2 (14)
r Z γA1
π π
yA1 = ± sin ξ 2 dξ (11) Equations (13) and (14) have been formulated for the case
σA1 0 2
of curvature profiles like those shown in Figure 2. They can
κ2 be generalized to cases where the curvature’s sign does not
θA1 = ± A1 (12)
2σA1 change even with four clothoids.

3505
Preprints of the 18th IFAC World Congress
Milano (Italy) August 28 - September 2, 2011

We must determine appropriate values for lA , lB , lC and


θC , to reach the target configuration qB . With these
parameters, we can reach a specific position xB and yB ,
while the appropriate orientation θB will be compensated
with circular arcs and clothoids. This implies to solve the
following equations:
X(θC ) = lA cos θA + lB cos θB + lC cos θC (15)
Y (θC ) = lA sin θA + lB sin θB + lC sin θC (16)
where the terms X(θC ) and Y (θC ) represent all the terms
of equations (13) and (14) without the three line segments,
which have been explicitly stated apart here:
 
X(θC )
= qB −qA −A1−ΩA −A2−B1−ΩB −B2 (17) Figure 4. Control loop scheme based on DCC-paths.
Y (θC )
where qR and qT are respectively the current vehicle pose
An heuristic criteria to determine lA , lB , lC and θC is to
and the target configuration, while θA = θR − sA · θA1,R
minimize the length of the overall path while satisfying
and θB = θT + sB · θB2,T , being sA and sB the sharpness
equations (13) and (14), thus optimal intermediate orien-
sign of first and fourth clothoid of the DCC-path.
tation is:
In that case, when κA1,R 6= 0 the length of first line

segment is set to lA = 0 and when κB2,T 6= 0 then we set
θC = arg min L = lA +lA1 +lΩA +lA2 +lC +lB1 +lΩB +lB2 +lB (18) lB = 0, because these segments do not affect the generated
θC
DCC-path. However, the middle segment length lC and its
subject to (17), where length of clothoids are obtained orientation can be numerically determined using the fixed-
form properties stated in Annex A: point method from equations (15), (16), (17) and (18):
−1 −1
lA1 = κA1 (θC )σA1 , lA2 = κA2 (θC )σA2 (19) Y (θC )
−1 −1 θC = arctan (24)
lB1 = κB1 (θC )σB1 , lB2 = κB2 (θC )σB2 (20) X(θC )
lΩA = ΩA (θC )κ−1
A1 (θC ), lΩB = ΩB (θC )κ−1
B1 (θC ) (21)
2.3 Kinematic Control With Continuous-Curvature Paths
In order to solve this problem, we can force any of the
line segments to be zero and then solve the minimization Once the DCC-path has been computed for the actual
problem. In general, we will be interested in lB = 0 if vehicle’s position and for a given target point, we apply
θC 6= θA . Otherwise we have a singular solution that can curvature and sharpness profiles during a certain amount
be avoided by forcing lC = 0 if θA 6= θB . If θA = θB = θC , of time T , being T the kinematic control period. Therefore,
then we can not provide a valid solution for such value of only the first T seconds of the computed trajectory will
θC and therefore path length is set to L = ∞ to discard be taken into account until next control period and the
these solutions during the minimization step. remainder of the trajectory is not used for immediate
To extend the scope of the problem it is necessary to control. However, we need to compute the whole trajectory
consider the case when the actual vehicle’s curvature is since the solution is highly coupled and small changes on
κR 6= 0. In that case, qR 6= qA and we assume that the solutions will affect the overall shape of the DCC-path.
vehicle is indeed located on a given point of the first In pure-pursuit methods a target configuration is selected
clothoid A1 of the DCC-path, whose origin qA has to be by finding a point that is at least separated a given Look-
determined. Also, the target’s curvature might be κT 6= 0, Ahead distance LA from the actual robot pose, satisfying
therefore qT 6= qB and the origin (or terminal point) of specific application conditions (in order to discard multiple
that clothoid qB must be also determined. Since clothoid solutions). In that sense, the kinematic controller can
segments are known a priori, we can obtain the first and also be used in combination with either path planning
fourth clothoid’s origin by computing the robot configura- methods that provide a set of way-points or vision systems
tion qA1,R = (xA1,R , yA1,R , θA1,R , κA1,R )T and the target that identifies the path to be followed. It is necessary
configuration qB2,T = (xB2,T , yB2,T , θB2,T , κB2,T )T along to remark that it is out of the scope of the paper to
the first and forth clothoid of the DCC-path respectively, determine such way-points and also detecting conditions
being κR = κA1,R and κT = κB2,T . when it is more appropriate to perform a lane change or
an overtake, duration of the manoeuvre, vehicle speed,
   etc. However, we are interested in performing low level
xA1,R kinematic control to reach all given way-points, like shows
−R(θA ) sA · yA1,R  Figure 4. For that purpose, as target configuration path we
qA =qR +  (22)
 −sA · θA1,R  define line segments between way-points and follow them
−sA · κA1,R using pure-pursuit methods. By doing this, way-points are
   approximated by smooth paths satisfying curvature and
xB2,T sharpness constraints. Figure 5(a) describes an example
R(θB ) −sB · yB2,T 
qB =qT + 


 (23) of the path computed based on just 5 way-points, while
sB · θB2,T Figure 5(b) shows a simplistic example of a conventional
−sB · κB2,T
vehicle overtaking another vehicle.

3506
Preprints of the 18th IFAC World Congress
Milano (Italy) August 28 - September 2, 2011

1
PATH

Y (m)
0 v=0.5(m/s)
v=1.0(m/s)
v=2.0(m/s)
−1

−2

−3

−4 −3 −2 −1 0 1 2 3 4
X (m)

(a) DCC

(a) Path planning (b) Overtaking 3

2
Figure 5. Examples of path planning and overtaking.
1
On the other hand, in Figure 6 there is an example of PATH

Y (m)
v=0.5(m/s)
line following path based on pure-pursuit methods, with a 0
v=1.0(m/s)
Look-Ahead distance LA = 10m and initial configuration v=2.0(m/s)
−1
qR0 = (0, 0, −135, 0)T . The results show the flexibility
of our path generation method and its line convergence −2
properties. In addition, sharpness, curvature and steering
angle are also depicted in Figure 6(b) to provide a better −3
insight about the kind of actions applied, where it can −4 −3 −2 −1 0 1 2 3 4
be appreciated continuous-curvature profiles as claimed. X (m)

The sharpness is indeed the curvature derivative and it is (b) PP


not necessary to be continuous. It is interesting to remark
that paths with different sharpness have been considered, Figure 7. Example of square path following.
although there are no significant differences between of the
resulting vehicle’s trace, can be seen that the higher the Now, we are going to analyse a square-path following
sharpness is the faster the robot turns. problem in order to compare the proposed method against
a well known kinematic control law for mobile robotics, the
pure-pursuit method (PP). The experiments have been
6
done for different values of robot velocity v and Look-
4
Ahead distance LA, which are the main control parameters
X (m)

2
of path following problems. It can be appreciated from
0
Figure 7 that DCC control is overdamped or has less
−2

0 5 10 15 20 25 30 35
overshoot than pure-pursuit, that implies less convergence
Y (m)
distance in the path. Also can be said that setting time
(a) XY robot trace is lower, due to the fact that both methods have got the
same velocity but the vehicle with DCC control travels less
1 distance due to overdamping.
σ (m−2)

0
Figure 8 shows other experiment in which the LA variation
−1
0 5 10 15 20 25 30 35
effect is evaluated. It is interesting to remark the difference
0.5
Time (s)
between both methods since DCC control reduces its over-
0 damping when LA is bigger, while pure-pursuit increases
κ (m−1)

−0.5
its overshoot. Also can be seen that vehicle with DCC con-
−1
0 5 10 15
Time (s)
20 25 30 35 trol converges to the square side earlier than pure-pursuit
4
and without overshoot. For instance, although it seems
that pure-pursuit method has converged with LA = 1.5m
τ (rad)

0
and a square edge of 6m, that is false. The reason is that
0 5 10 15 20 25 30 35
Time (s) the wheeled robot converges further than 4.5m, but the
reference changes before the vehicle has converged to the
(b) Kinematic signals line because LA = 1.5m.
Figure 6. (a) Example of line following with θR0 = −135o 3. CONCLUSIONS
as a initial configuration. Plot colors with increasing
sharpness: red, green and blue. (b) Signal profile, This paper describes a method for generating continuous-
where sub-plots are sharpness (σ [m−2 ]), curvature curvature paths subject to constraints on curve sharpness
(κ [m−1 ]) and tangent angle (τ [rd]). and maximum curvature. The paper first describes Sin-

3507
Preprints of the 18th IFAC World Congress
Milano (Italy) August 28 - September 2, 2011

Fraichard, T. and Ahuactzin, J.M. (2001). Smooth path planning for


6
cars. In IEEE Int. Conf. on Robotics and Automation, 3722–3727
vol.4.
5
Fraichard, T. and Scheuer, A. (2004). From reeds and shepp’s to
continuous-curvature paths. In IEEE Trans. on Robotics and Au-
4 tomation, 6, 1025–1035 vol. 20.
PATH
Iijima, J., Kanayama, Y., and Yuta, S.i. (1981). A locomotion control
Y (m)

LA=0.7(m)
3 system for mobile robots. In Int. Conf. on Artificial Intelligence,
LA=1.0(m)
779–784 vol. 2.
LA=1.5(m)
2 Jiang, K., Zhang, D., and Seneviratne, L. (1999). A parallel parking sys-
tem for a car-like robot with sensor guidance. Journal of Mechanical
1 Engineering Science, 213(6), 591–600.
Laumond, J.P., Jacobs, P., Taix, M., and Murray, R. (1994). A motion
0 planner for nonholonomic mobile robots. IEEE Trans. on Robotics
and Automation, 10(5), 577–593.
−1 0 1 2 3 4 5 6 7 Manz, M., von Hundelshausen, F., and Wuensche, H.J. (2010). A hybrid
X (m)
estimation approach for autonomous dirt road following using multiple
clothoid segments. In IEEE Int. Conf. on Robotics and Automation,
(a) DCC
2410–2415.
Marchionna, A. and Perco, P. (2007). A proposal to update the clothoid
6 parameter limiting criteria of the italian standard. In Int. Società
Italiana Infrastrutture Viarie Congress.
5 Montés, N., Mora, M., and Tornero, J. (2007). Trajectory generation
based on rational bezier curves as clothoids. In IEEE Intelligent
4 Vehicles Symposium, 505–510.
PATH Montés, N. and Tornero, J. (2004). Lane changing using s-series
Y (m)

LA=0.7(m) clothoidal approximation and dual-rate based on bezier points to


3
LA=1.0(m) controlling vehicle. In WSEAS Int. Conf. on Systems Theory and
LA=1.5(m) Scientific Computation, 1–6 vol. 17.
2
Ollero, A. (2001). Robótica. Manipuladores y robots móviles. Mar-
combo, S.A., Barcelona, 1 edition.
1
Papadimitriou, I. and Tomizuka, M. (2003). Fast lane changing compu-
tations using polynomials. In American Control Conf., 48–53 vol.1.
0 Reeds, J. and Shepp, L. (1990). Optimal paths for a car that goes both
−1 0 1 2 3 4 5 6 7
forwards and backwards. Pacific Journal of Mathematics, 145, 367–
X (m) 393.
Scheuer, A. and Fraichard, T. (1997a). Collision-free and continuous-
(b) PP curvature path planning for car-like robots. In IEEE Int. Conf. on
Robotics and Automation, 867–873 vol.1.
Scheuer, A. and Fraichard, T. (1996). Planning continuous-curvature
Figure 8. Example of square path following. paths for car-like robots. In IEEE Int. Conf. on Intelligent Robots
and Systems, 1304–1311 vol.3.
gle Continuous-Curvature paths (SCC), which consist of Scheuer, A. and Fraichard, T. (1997b). Continuous-curvature path
a line segment, a circular arc segment and two transi- planning for car-like vehicles. In IEEE Int. Conf. on Intelligent
tion curves based on clothoids in order to guarantee a Robots and Systems, 997–1003 vol.2.
continuous-curvature profile. SCC-paths are extended to Scheuer, A. and Xie, M. (1999). Continuous-curvature trajectory plan-
ning for manoeuvrable non-holonomic robots. In IEEE Int. Conf. on
Double Continuous-Curvature paths (DCC), which pro- Intelligent Robots and Systems, 1675–1680 vol.3.
vide a complete solution to include curvature profiles with Weiss, D.L. (1998). Dynamic Simulation and Analysis of Roller
positive and negative curvatures. Coasters. Ph.D. thesis, University of California, Davis.
Wilde, D.K. (2009). Computing clothoid segments for trajectory gene-
A control scheme is proposed by considering different ration. In IEEE Int. Conf. on Intelligent Robots and Systems, 2440
control levels, focusing in the low level control. It has –2445.
been shown that DCC-paths can be applied to solve Appendix A. SUMMARY OF CLOTHOIDS
path tracking problem, which can cope with any general
configuration and can be easily adapted to path tracking Definition Cornu’s Spiral or Clothoid is defined by the Fresnel integrals
based on pure-pursuit methods or combined with standard in ℜ2 as follows:  
Z γ
path planning methods. cos ξ dξ
π 2
h i  2 
Cx (γ)
We have shown through several simulations that the pro- C(γ) =
Cy (γ)
= K  Z0 γ  (A.1)
 π 2 
posed kinematic controller can be used in line following sin
2
ξ dξ
problems, general path tracking based on way-points and 0
where K is the Homotetical factor, i.e.: the scale of the spiral, and γ
also in particular cases such as lane changing or over-
comprises the integration interval. Unfortunately, there is no closed-form
taking. The paper also provides an analysis to evaluate solution to compute Fresnel integrals, however some interesting geometric
the performance of the new method with respect to pure- properties of clothoids can be analytically computed.
pursuit kinematic control. It is shown that in a square- Properties Let C(γ) be a clothoid curve, the so called clothoid parame-
path following problem the proposed method has better √
ter A and its homotetical factor are related by K = πA. The tangent
performance with respect to setting time and overshoot. angle τ with respect to the abscissa axis X + of C(γ) is τ = π 2
2 γ . The
curvature κ and length L of the clothoid C(γ) increase proportionally
γ
with γ for a given Homotetical factor, being the expression κ = π K
REFERENCES
for curvature and L = Kγ for the length. It is straight forward to see
Corridori, C. and Zanin, M. (2004). High curvature two-clothoid road that both, curvature and length are related by the clothoid parameter
model estimation. In IEEE Int. Conf. on Intelligent Transportation as κ = L2 , which implies that constant changes on the curvature are
A
Systems, 630–635. proportional to changes on the length of the curve. The sharpness is
del Corral Manuel de Villena, I. (2001). Topografı́a de obras. Edicions defined as σ ≡ A−2 and therefore the higher the clothoid parameter the
UPC, S.L., 1 edition. lower the sharpness and vice versa.

3508

You might also like