Professional Documents
Culture Documents
Mobile Robot Control On A Reference Path: Gregor Klan Car, Drago Matko, Sa So Bla Zi C
Mobile Robot Control On A Reference Path: Gregor Klan Car, Drago Matko, Sa So Bla Zi C
I. I NTRODUCTION
Z X
The control of a mobile robot with nonholonomic con-
straints on a reference path is an important task in mobile Fig. 1. Robot architecture and symbols
robotics [3], [4], [6], [9]. Nonholonomic systems have
motion limitations emerging from their kinematics model.
Therefore some directions of motion are not possible. This nonholonomic constraints so its path cannot be arbitrary.
paper deals with a mobile robot with differential drive The robot usually moves in the environment with obstacles,
which cannot move in the direction lateral to the wheels. limitations and other demands which all somehow defines
The control of this robot is solved by considering its first desired robot path. All these facts give advantage to control
order kinematics model. The obtained motion can later be on a reference path which should follow all kinematic con-
upgraded to include the dynamics properties also (inertia straints. Nonholonomic systems usually have feedforward
an mass) where the robot control problem is transferred control ([2], [9], [6], [8]) where system inputs are calculated
to a control of a second order kinematics model ([9], from the known trajectory and all kinematics constraints
[6]). The control of mobile robots considering only first are implicitly considered by trajectory design. However,
order kinematics is very common in literature ([2], [4], the use of the open-loop control only (just feedforward)
[8], [1]) as well as in practice. This is mainly because the is practically useless because it is not robust to errors in
control problem is easier to solve, the system dynamics can initial system states and other disturbances during operation.
usually be neglected (fast and strong motors), especially at Closed loop is therefore added for practical use. The above
moderate speeds and because the robot design sometimes mentioned combination (feedforward control) is intuitive
does not allow torque or acceleration to be forced at and suitable for most nonholonomic mechanical systems.
robot input (only reference speed). The basic control of a The paper is organised as follows. First the mobile robot
mobile robot in obstacle-free environment can be solved motion modelling is revealed, followed by the control law
by point-to-point control with classic control where the derivation, the stability analysis and an example of the
intermediate course of the states between start and end used control. Then an idea of time-optimal motion planning
state is not important. The other possibility is to control algorithm considering acceleration constraints is presented.
the robot to follow the reference path from the start to The paper ends with conclusions.
the end position. When controlling nonholonomic systems,
II. M OBILE ROBOT M ODELLING
it is usually more appropriate to control the system (by
feedback) to follow the reference path ([6], [9]). When In the sequel the direct and the inverse kinematics for
controlling the robot to the end point (classic control), the mobile robot with differential drive are determined. The
the control law usually has to be discontinuous and time robot’s architecture together with its symbols is shown in
variable ([2], [3], [6]). Further on the robot has to consider Fig. 1 where it is supposed that its point of geometric centre
T and the centre of gravity coincide.
G. Klančar is with Faculty of Electrical Engineering, The motion equations are as follows
University of Ljubljana Tržaška 25, SI-1000 Ljubljana, Slovenia ⎡ ⎤ ⎡ ⎤
gregor.klancar@fe.uni-lj.si ẋc cos θ 0
D. Matko is with Faculty of Electrical Engineering, ⎣ ẏc ⎦ = ⎣ sin θ 0 ⎦ · v (1)
University of Ljubljana Tržaška 25, SI-1000 Ljubljana, Slovenia ω
drago.matko@fe.uni-lj.si θ̇c 0 1
S. Blažič is with Faculty of Electrical Engineering,
University of Ljubljana Tržaška 25, SI-1000 Ljubljana, Slovenia where v and ω are tangential and angular velocities of the
saso.blazic@fe.uni-lj.si platform in Fig. 1. Right and left velocities of the robot
0-7803-8936-0/05/$20.00 ©2005 IEEE 1343
wheels are then expressed as vR = v+ ωL 2 and vL = v− 2 .
ωL reference robot
For a given reference trajectory (xr (t), yr (t)) defined in (xr, yr)
a time interval t ∈[0,T ] the feedforward control law can qr
be derived. From the obtained inverse kinematics the robot
inputs are calculated which drive the robot on a desired e2
path only if there are no disturbances and no initial state e1
errors. The needed robot inputs, tangential velocity vr and y
angular velocity ω r are calculated from the reference path.
(x, y) x
The tangential velocity reads q
Y
vr (t) = ± ẋ2r (t) + ẏr2 (t) (2) real robot
ωn2 − u2r2
k2 = (16)
reference path
qr transformation e
controller v u q |ur1 |
in robot mobile robot
K
- coordinates
The obtained system poles are constant
s1 = −2ζωn
Fig. 3. Mobile robot control schematic s2 = −ζωn + ωn (ζ 2 − 1) (17)
s3 = −ζωn − ωn (ζ 2 − 1)
and ω n should be larger than the maximum allowed robot
angular velocity, ω n ≥ ur2M AX . When ur1 is close to
v =K·e (10) zero, k2 goes to infinity and therefore a gain scheduling
[6] should be chosen for k2 as k2 = g · |ur1 (t)|. System
where gain matrix K has dimensions 2×3. The schematic
characteristic frequency becomes
of the obtained control is explained in Fig. 3.
The controller structure can be derived from observing ωn (t) = u2r2 (t) + gu2r1 (t) (18)
Fig. 2. To reduce error in the driving direction e1 the
tangential robot velocity should be changed correspond- and the controller gains are
ingly. Similarly, the orientation error e3 can be efficiently k1 = k3 = 2ζωn (t)
manipulated by robot angular speed. Finally, the error or- (19)
k2 = g · |ur1 (t)|
thogonal to the driving direction could be reduced changing
the angular velocity. At the same time also the robot drive The parameter g >0 gives an additional freedom in con-
direction (forward or backward) should be considered. From troller design [7]. The controller gains approaches zero
the above conclusions the control law is when the robot stops at which time the robot is not
⎡ ⎤ controllable. If the controller gains are chosen from Eqs.
e1
v1 −k1 0 0 (15) and (16) a nonlinear, time varying controller is obtained
= · ⎣ e2 ⎦ (11)
v2 0 −sign(ur1 )k2 −k3 which gives stable and constant poles of the closed-loop
e3
system. Although the poles are stable and constant, the local
The next question is how to determine the suitable asymptotic stability is not guaranteed as system is still time
controller gains. This can always be done by trying or varying ([7] [8]). System stability is therefore checked by
by optimization of some cost function. In this paper the Lyapunov stability analysis discussed bellow.
controller gains are determined by comparing the real and
IV. S TABILITY A NALYSIS
the desired characteristic polynoms. The polynomial takes
the following form For the presented controller (7) and (11), the system
stability in the sense of Lyapunov is shown next. Lya-
(s + 2ζωn )(s2 + 2ζωn s + ωn2 ) (12) punov energy function V (q) should be positive definite
and continuous with continuous derivatives on all states q.
Similarly as for the second order systems the desired In the equilibrium point q=0 the energy function must be
dumping coefficient ζ∈(0,1) and the characteristic fre- V (q) = 0.
quency ω n >0, are selected. An extra pole at s = −2ζω n The origin point q=0 is stable equilibrium point if there
increases the rising time and decreases the system overshot. exists such a energy function V (q) that V̇ (q) is negative
A characteristic polynomial of a closed loop with a state semidefinite over all the trajectory. If V̇ (q) is negative
space controller (11) is definite, then the equilibrium point is asymptotically stable.
det(sI − A + BK) = s3 + (k1 + k3 )s2 + If the controller from (11) is rewritten considering (19),
(13)
+(k1 k3 + k2 ur1 + u2r2 )s + k1 k2 eur1 + k3 u2r2 discontinuous part k2 sign(ur1 )e2 is replaced by k̄2 ur1 e2
where k̄2 is a positive constant (k̄2 > 0). The controller
Comparing coefficients at the same power of s in Eqs. becomes
(12) and (13) result
v1 = −k1 e1
(20)
k1 + k3 = 4ζωn v2 = −k̄2 ur1 e2 − k3 e3
k1 k3 + k2 ur1 + u2r2 = 4ζ 2 ωn2 + ωn2 (14)
Defining Lyapunov function as
k1 k2 ur1 + k3 u2r2 = 2ζωn3
1 2
Further on let us find the solution of equation (14) in the V (e) = e1 + e22 + e23 (21)
2
form suggested in [7]
and its derivative as
k1 = k3 = 2ζωn (15) V̇ (e) = e1 ė1 + e2 ė2 + e3 ė3 (22)
1345
Considering model (9) and controller (20) the following A. Simulated Robot
relation is obtained Fig. 4 shows simulated results of closed-loop control
V̇ (e) = −e21 k1 + e2 e3 ur1 − e2 e3 ur1 k̄2 − e23 k3 (23) where robot has initial states error (it does not start with the
correct orientation and position) and the robot inputs and
from where the stability (negative semidefiniteness) cannot outputs are contaminated by noise at inputs and at outputs.
be concluded. A more appropriate energy function reads
1.3
k̄2 2
e23
e + e22 +
1.2
V (e) = (24)
2 1 2 1.1
Y [m]
0.8
which is negative semidefinite function (note that it is not
negative definite with respect to e2 ) and the origin e = 0 is 0.7
t
0.2 0.4 0.6 0.8 1 1.2
X [m]
o
t t (26) 1.2
⎛ ⎞
Y [m]
t t 0.8
−2
V. C ONTROL E XAMPLE 0 5 10
T [s]
15 20 25
Fig. 5. The inputs to the robot are linear (u1 ) and angular
1.1
0.9
0.8
0.5
a = a2tang + a2rad (29)
0
v (m/s)
κ(t) (Eq. (4)). 1.2
EP
1
tcrit = · ds (30) Fig. 7. Highest allowable velocity profile including start and end point
v(s)
SP
1348