Multi-Rate Path Following Control
Multi-Rate Path Following Control
D. Antunes
C. Silvestre
R. Cunha
B
, and
I
B
is the angular velocity
of {B} with respect to {I}. The helicopter dynamics can
then be described by using the conventional six degree of
freedom rigid body equations of motion
_
_
v =
1
m
[f (v, , u) +
B
I
R[0 0 g]
T
] w v
= I
1
n(v, , u) I
1
(w Iw)
I
p
B
=
I
B
Rv
= Q(
B
,
B
)
, (1)
where m is the vehicle mass, and I is the tensor of inertia
about the frame {B}. The actuation u = [
0
1s
1c
0t
]
comprises the main rotor collective input
0
, the main
rotor cyclic inputs,
1s
and
1c
, and the tail rotor col-
lective input
0t
. The force and moment vectors can be
decomposed as f = f
mr
+ f
tr
+ f
fus
+ f
tp
+ f
fn
and
n = n
mr
+ n
tr
+ n
fus
+ n
tp
+ n
fn
, respectively, where
the subscripts mr, tr, fus, tp and fn stand for main
rotor, tail rotor, fuselage, horizontal tail plane and vertical
tail, respectively. The simulation model includes the rigid
body, main rotor apping, and Bell-Hiller stabilizing bar
dynamics, which are not presented here for the sake of
brevity but can be found in ?.
3. PATH-FOLLOWING FORMULATION
The integrated guidance and control strategy proposed
in ? for the path-following problem consists in dening
a path-dependent transformation, which is applied to the
vehicles dynamic and kinematic model to express it in
a convenient error space. The problem of steering the
unmanned vehicle along a predened path with a given
velocity prole, is then reduced to that of regulating the
error variables to zero. In order to present this transforma-
tion, we rst introduce the frames {T} and {C}, depicted
in Fig. 1, and a collection of references associated to these
frames. These elements can be briey described as follows
(see ? for further details and derivations):
Frame {T}
There is an almost exact correspondence between {T}
and the standard Serret-Frenet frame. The x axis, x
T
,
is aligned with the tangent vector to the path, so that
the linear velocity reference in this frame is given by
v
r
= V
r
[1 0 0]
T
where V
r
is the desired linear speed. The angular ve-
locity reference, also expressed in {T}, can be written
as
r
= V
r
[ 0 ]
T
where is the torsion and the curvature, which
characterize each point on the path. The frame {T}
moves along the path attached to the point on the
path closest to the vehicle, meaning that the position
error can be dened as the two-dimensional vector d
t
=
[d
y
d
z
]
T
R
2
that satises
_
0
d
t
_
=
T
I
R(
I
p
B
I
p
T
),
where
I
p
T
is the position of {T} with respect to {I}.
It is also useful to consider the Z-Y-X Euler angles
T
= [
T
T
T
]
T
, which describe the orientation of
{T}, and the linear speed V
T
, which is related to the
vehicles velocity by
V
T
=
1
1 d
y
[1 0 0]
T
B
Rv.
Frame {C}
The need to dene {C} arises from the fact that
while following a path, the vehicle may take dierent
orientations or even rotate with respect to the path.
The reference of orientation for the vehicle is given
by the Z-Y-X Euler angles
C
= [
C
C
C
]
T
,
C
]/2, /2[ ,
C
,
C
R. The angular velocity of {C}
with respect to {T} expressed in {T} is denoted by
T
C
.
The origin of {C} coincides with that of {T}.
Given the denitions of {T} and {C}, the error state vector
x
e
R
11
can be dened as
x
e
=
_
_
v
e
e
d
t
e
_
_=
_
_
v
B
T
Rv
r
B
T
R(
r
+
T
C
)
yz
T
I
R(
I
p
B
I
p
T
)
C
_
_ ,
yz
=
_
0 1 0
0 0 1
_
.
(2)
It is easy to see that the vehicle follows the path with the
desired velocity prole and orientation if and only if x
e
= 0
(regulation problem).
If we restrict the set of possible paths to the set of
trimming paths, the error dynamics can be parameterized
by a set of variables that only depend on the trimming
path. A trimming path corresponds to a curve that the
vehicle can follow while satisfying the trimming conditions,
which is equivalent to having v = 0, = 0, and u = 0
{B}
{I}
{C}
{T}
v
d
t
x
T
y
T
z
T
v
r
I
p
T
I
p
B
Fig. 1. Coordinate frames: inertial {I}, body {B}, tangent
{T}, and desired body frame {C}
in (1). It is well known that for a vehicle with dynamics
described by (1), the set of trimming trajectories comprises
all z-aligned helices ( = 0, = 0,
T
= [0
T
T
]
T
, and
T
= sign()V
T
2
+
2
[ 0 0 1 ]
T
), followed at constant
speed (
V
T
= 0) and constant orientation with respect to
the path (
T
C
= 0) (?). Consider the following variables:
the linear speed reference V
r
, the ight path angle
T
,
the yaw orientation of the vehicle with respect to the
path
ct
=
c
t
and the yaw rate
r
= V
r
2
+
2
.
As discussed in ?, for the case of helicopters this set of
variables
= (V
r
,
r
,
T
,
ct
) (3)
adequately parameterizes the vehicles equilibrium points
corresponding to trimming paths. The error dynamics
dened with respect to these operating points can be
written as
P() :=
_
x
e
= f
e
(x
e
, u, )
y
e
= h
e
(x
e
, )
, (4)
and is such that f
e
(0, u
, ) = 0 and h
e
(0, ) = 0. The
output y
e
is chosen in such a way that at steady state the
condition y
e
= 0 implies x
e
= 0, therefore characterizing
an equilibrium point. It can be shown that the output
given by
y
e
=
_
_
v
e
+
B
T
R
_
0
d
t
_
e
_
_
R
4
(5)
veries this condition. By applying integral action to (5),
we can guarantee that y
e
(and consequently x
e
) goes to
zero at steady-state.
Recalling that is a constant parameter vector, the
linearization of P() about (x
e
= 0, u = u
) results in
a family of linear time-invariant systems of the form
P
l
() =
_
x
e
= A
e
()x
e
+B
e
()u
y
e
= C
e
()x
e
, (6)
where u
= u u
, A
e
() =
f
e
x
e
(0, u
, ), B
e
() =
f
e
u
(0, u
, ), and C
e
() =
h
e
x
e
(0, ).
4. NONLINEAR MULTI-RATE CONTROLLER
DESIGN
In this section we summarize the gain-scheduling method-
ology for nonlinear multi-rate systems presented in ?,
which will be applied to the multi-rate path-following
control problem.
4.1 Problem Setup
Consider the nonlinear system
G :=
_
x(t) = f(x(t), u(t), w(t))
y(t) = h(x(t), w(t))
(7)
where x(t) R
n
is the state, u(t) R
m
is the control
input, and the vector w(t) R
nw
contains references
r(t) and possibly other exogenous inputs. The vector
y(t) R
p
can be decomposed as y(t) = [y
m
(t)
T
y
r
(t)
T
]
T
=
[h
m
(x(t), w(t))
T
h
r
(x(t), w(t))
T
]
T
where y
m
(t) R
nym
is
a vector of measured outputs available for feedback and
y
r
(t) R
nyr
is a vector of tracking outputs, which we
assume to have the same dimensions as the control input,
n
yr
= m. This vector is required to track the reference r(t)
with zero steady state error, i.e. the error vector dened
as e(t) := y
r
(t)r(t) must satisfy e(t) = 0 at steady-state.
Some of the components of y
r
(t) may be included in y
m
(t)
as well.
Linearization family
We assume that there exists a unique family of equilibrium
points for G of the form
:={(x
0
, u
0
, w
0
): f(x
0
, u
0
, w
0
)=0, y
r0
=h
r
(x
0
, w
0
)=r
0
}
which can be parameterized by a vector
0
R
s
, such
that
= {(x
0
, u
0
, w
0
) = a(
0
),
0
} (8)
where a is a continuously dierentiable function. We fur-
ther assume that there exists a continuously dierentiable
function v such that
0
= v(y
0
, w
0
). Applying the function
v to the measured values of y and w, we obtain the variable
= v(y, w), (9)
which is usually referred to as the scheduling variable.
Linearizing the system G about the equilibrium manifold
parameterized by
0
yields the family of linear systems
G
l
(
0
) :=
_
x
(t)
y
(t)
_
=
_
A(
0
) B
1
(
0
) B
2
(
0
)
C
2
(
0
) D
21
(
0
) 0
_
_
x
(t)
w
(t)
u
(t)
_
(10)
where, e.g. A(
0
) =
f
x
(a(
0
)) and x
(t) = x(t) x
0
.
Multi-rate sensors and actuators
We consider that the sample and hold devices that inter-
face the discrete-time controller and the continuous-time
plant operate at dierent rates. The actuators updating
and sensor sampling times do not have to be equally
spaced but the periodicities of the updating and sampling
mechanisms are assumed to be rationally related. Let
t
s
denote the greatest common divisor of these periods
and consider a set of h-periodic matrices
k
=
k+h
,
k
=
k+h
taking the form:
k
= diag(g
1
(k), ..., g
p
(k)),
where g
i
(k) = 1 if output i is sampled at time t
k
= kt
s
and
g
i
(k) = 0 otherwise;
k
:= diag(r
1
(k), ..., r
m
(k)), where
r
j
(k) = 1 if input j is updated at time t
k
= kt
s
and
r
j
(k) = 0 otherwise. Then the multi-rate input and output
mechanisms, denoted by S
mr
and H
mr
, respectively, can
be modeled as
S
mr
:L(R
+
) l(Z
+
)
y
k
=
_
y
mk
y
rk
_
=
_
mk
0
0
rk
_ _
y
m
(t
k
)
y
r
(t
k
)
_
=
k
y(t
k
)
H
mr
:l(Z
+
) L(R
+
)
k+1
= (I
k
)
k
+
k
u
k
,
0
= 0
u
k
= (I
k
)
k
+
k
u
k
u(t) = u
k
t [t
k
, t
k+1
[
(11)
We also introduce the error variable e
k
=y
rk
r
k
, where
r
k
=
rk
r(t
k
).
4.2 Multi-rate controller design and implementation
Consider the linearized system (10) with multi-rate inter-
face (11) which can be written as the series connection
S
mr
G
l
H
mr
. Suppose that given a xed
0
we design a
linear controller for this multi-rate system that takes the
form depicted in Fig. 2. In the gure C
I
and C
D
cor-
respond to discrete time linear periodic integrators and
dierentiators, respectively, that can be written as
C
I
=
_
x
I
k+1
= x
I
k
+
k
u
I
k
y
I
k
= x
I
k
+
k
u
I
k
(12)
C
D
=
_
x
D
k+1
= (I
mk
)x
D
k
+
mk
u
D
k
y
D
k
=
mk
x
D
k
+
mk
u
D
k
(13)
These two systems are introduced is such a way that the
controller C
K
operates in a dierential manner, that is, it
takes in the plants output dierential values and provides
dierential values to be integrated into the actuation sig-
nals. The importance of this structure for gain-scheduling
control will be claried shortly.
Consider the system G
a
shown in Fig. 2, which is given
by the series connection of C
I
, S
mr
G
l
H
mr
and C
D
, i.e.
G
a
= C
D
S
mr
G
l
H
mr
C
I
. As proved in ?, this augmented
system G
a
preserves the detectability and stabilizability
properties of the original system G
l
, under mild assump-
tions. Hence, there exists a stabilizing controller C
K
, which
is in general periodically time-varying. Furthermore, due
to integral action and given that C
K
stabilizes the closed-
loop system, the structure achieves zero steady-sate error
for y
r
. Suppose the equations for C
K
are given by
C
K
(
0
) =
_
_
x
K
k+1
y
K
k
_
=
_
A
K
k
(
0
) B
K
1k
(
0
) B
K
2k
(
0
)
C
K
k
(
0
) D
K
1k
(
0
) D
K
2k
(
0
)
_
_
x
K
k
y
D
k
e
k
_
G
l
+
y
mk
y
rk
r
k e
k
u
k
S
mr
H
mr
C
I
C
D
C
K
G
a
S
mr
G
l
H
mr
Fig. 2. Regulator structure for non-square systems
and that we have designed a parameter-dependent family
of controllers of the form C
I
C
K
(
0
)C
D
.
Consider then the following implementation for the non-
linear gain-scheduled controller, taking the form of a linear
parameter varying (LPV) controller and obtained by re-
placing the time-frozen parameter
0
with the scheduling
variable
k
.
K =
_
_
_
x
K
k+1
y
K
k
_
=
_
A
K
k
(
k
) B
K
1k
(
k
) B
K
2k
(
k
)
C
K
k
(
k
) D
K
1k
(
k
) D
K
2k
(
k
)
_
_
x
K
k
y
D
k
e
k
_
_
x
D
k+1
y
D
k
_
=
_
I
mk
mk
mk
mk
_ _
x
D
k
y
mk
_
_
x
I
k+1
u
k
_
=
_
I
k
I
k
_ _
x
I
k
y
K
k
_
k
= v( y
k
, w
k
)
_
x
Y
k+1
y
k
_
=
_
I
k
k
I
k
k
_ _
x
Y
k
y
k
_
(14.A)
(14)
The scheduling variable
k
is computed on-line from
the plant outputs and exogenous variables. The system
described by (14.A) is used to perform a hold operation
on the output y
k
so that the scheduling variable
k
is
computed, at each iteration, according to the last sampled
value of the output. The exogenous vector is assumed to
be available at each sampling instant, so that w
k
= w(t
k
).
Since the proposed controller operates in a dierential
manner, we can show that it veries the following the
linearization property: At each equilibrium point parame-
terized by
0
, the gain-scheduled controller K linearizes
to the designed controller C
I
C
K
(
0
)C
D
. See ? for the
importance of such property and for examples of incorrect
implementations where this property is not veried. The
controller structure is inspired in the velocity implemen-
tation (?) - a technique devised to guarantee that the
referred linearization property holds for continuous gain-
scheduled controllers, which also operates in a dierential
manner.
5. MULTI-RATE CONTROLLER DESIGN AND
IMPLEMENTATION
We assume that the state variables of the vehicle (1) are
all available at a rate of 50 Hz except for the components
of the linear position, which are assumed to be updated at
the lower rate of 2.5 Hz. The actuation update rate is also
set to 50 Hz, therefore yielding h = 20 and t
s
= 0.02.
In accordance with Section 4.1 and assuming that the
nonlinear plant is given by (4), we consider the error
output y
r
= y
e
and dene the measured output y
m
= x
e
.
The set of matrices
k
and
k
are determined by
k
= I
4
,
mk
=
_
I
11
k = 0
diag([1
3
1
3
0
2
1
3
]) otherwise
,
rk
=
_
I
4
k = 0
diag([0
3
1]) otherwise
, k = 0, .., h 1. (15)
Making use of the controller structure presented in Sec-
tion 4, a family of linear controllers is designed for the
parameterized family of models described by (6) with the
multi-rate characteristics just described, using a standard
method of gain-scheduling theory. This method comprises
the following steps: i) obtain a nite set of parameter
values from the discretization of the continuous parameter
space, ii) synthesize a linear controller for each linear plant
(6), obtained from the linearization of the nonlinear plant
for each value of the scheduling parameter, iii) interpolate
the coecients of the linear controllers to obtain a con-
tinuously parameter-varying controller. We detail each of
these steps in the remainder of this section.
5.1 Discretization of the parameter space
The set of parameters that characterize a trimming path,
which corresponds to an equilibrium point for the vehicles
dynamic equation, is given by (3). In this paper, we
restrict the set of trimming trajectories considered for
terrain-following maneuvers to straight-lines (
r
= 0),
with constant linear speed V
r
and vehicles yaw angle
aligned with the path (
ct
= 0). The parameter space
is then reduced to
0
=
T
. Moreover if we assume that
B
= 0 and
B
= 0 at trimming and consider the variable
= arctan(
w
B
u
B
)
we can show that at equilibrium =
0
(?), and therefore
conforms with the general description of scheduling
variable given in Section 4.1.
The selected set of values for this parameter, {
0i
} is given
by
0
= [-50 -40 -30 -20 -10 0 10 20 30 40 50]
180
rad,
which means that the conditions under which the vehicle
is expected to operate include following straight lines in
trimmed ight, with a ight path angle ranging between
-50 and 50 degrees.
5.2 Linear controller synthesis
For linear controller synthesis, the standard LQG solution
for periodic systems presented in detail in ? was used to
synthesize a controller C
K
(
0i
) for each parameter value
0i
. The augmented system G
a
= C
D
G
l
C
I
seen by the
controller is obtained from (6) and (15). Notice that G
a
has n
ym
+ n
yr
= 11 + 4 = 15 outputs and n + m +
n
yr
= 11+4+11 = 26 state variables, which determine the
dimensions of C
K
. The weights dening the LQG problem
were adjusted to yield good transient error responses and
smooth actuation for the closed-loop system.
5.3 Interpolation
The resulting nite set of synthesized controller coe-
cients, for example {A
K
k
(
0i
)}, were interpolated using
least squares yielding a continuously parameter dependent
controller C
I
C
K
(
0
)C
D
, where the describing matrices are
quadratically parameter dependent, for example
A
K
k
(
0
) = A
K1
k
+
0
A
K2
k
+
2
0
A
K3
k
B
K
1k
(
0
) = B
K1
1k
+
0
B
K2
1k
+
2
0
B
K3
1k
.
The disadvantage of this technique is that there is no guar-
antee that, even for xed parameter values, the controller
obtained by interpolation stabilizes the closed loop system.
This analysis was made a posteriori, verifying that for a
Table 1. H
2
values vs position sampling rate
Linear position
sampling period
0.02 0.04 0.1 0.2 0.4
Closed loop H
2
norm 9.69 9.74 9.90 10.15 10.63
dense grid of xed values of
0
the closed loop system is
stable.
Having designed the continuously parameter varying con-
troller C
I
C
K
(
0
)C
D
, the nal gain-scheduled controller
K takes the form (14), which, as noted earlier, eliminates
the need to feedforward the trimming values for the state
variables and inputs. Another interesting feature of the
methodology is that the implementation of anti-windup
schemes is straightforward due to the fact that integral
action is provided at the plants input.
6. RESULTS
The simulation results presented in this section were ob-
tained using the non-linear dynamic model SimModHeli,
parameterized for the Vario X-Treme model-scale heli-
copter (?). The helicopter is required to perform a low alti-
tude terrain-following task, by describing the path shown
in Figure (3) with constant linear speed V
r
= 1.5 m/s.
The reference path may result from a terrain following
reconstruction algorithm (see ?) and is divided in the four
following segments: i) a level ight segment along the
x axis, ii) a climbing ramp with a ight path angle of
T
= 0.5236 rad, iii) a level ight segment along the x axis,
and nally iv) a descending ramp with a ight path angle
of
T
= 0.2618 rad. Figure (4) shows the time evolution
of the errors v
e
= [u
e
v
e
w
e
]
T
,
e
= [p
e
q
e
r
e
]
T
, d
t
, and
e
= [
e
e
]
T
, actuation, and multi-rate velocity and
position signals. From the gure, we can conclude that the
helicopter with the gain-scheduling multi-rate controller
eciently performs the desired task. Notice that after
each transition, the helicopter quickly converges to the
reference path corresponding to zero-steady state errors.
Furthermore the actuation is kept within the limits of
operation, exhibiting a smooth behavior.
0 5 10 15 20 25 30 35
-10
-5
0
x[m]
z
[
m
]
TERRAIN
Fig. 3. Helicopter performing a low altitude terrain-
following maneuver.
To nalize, for the linear controller synthesis characterized
by
0
= 0, Table 1 shows the loss of performance in terms
of the values of the closed-loop H
2
norms while changing
the rate of the linear position measurement and keeping
the sampling periods of the other outputs and of the input
at t
s
= 0.02 s.
0 5 10 15 20
1
0.5
0
0.5
1
m
s
1
u
e
v
e
w
e
0 5 10 15 20
0.5
0.25
0
0.25
0.5
r
a
d
s
1
p
e
q
e
r
e
0 5 10 15 20
0.2
0.1
0
0.1
0.2
m
d
y
d
z
0 5 10 15 20
0.1
0.05
0
0.05
0.1
time [s]
r
a
d
e
(a) Errors
0 5 10 15 20
0
0.04
0.08
0
[
r
a
d
]
0 5 10 15 20
0
0.01
0.02
1
s
[
r
a
d
]
0 5 10 15 20
0.025
0
0.025
1
c
[
r
a
d
]
0 5 10 15 20
0
0.05
0.1
0
t
[
r
a
d
]
time [s]
(b) Actuation
0 5 10 15 20
1
0
1
2
m
s
1
u
B
v
B
w
B
0 5 10 15 20
20
0
20
40
time [s]
m
x
B
y
B
z
B
(c) Velocity and Position measurements
Fig. 4. Time evolution of the vehicle variables.
7. CONCLUSIONS
In this paper, the path-following problem for unmanned
air vehicles was tackled using an integrated guidance and
control approach. The solution consists in reducing the
path-following problem to that of regulating an adequately
dened error vector to zero. To this end, a gain-scheduling
control methodology was presented that takes into account
the multi-rate characteristics of the measured outputs.
Simulation results showed good performance of the result-
ing multi-rate integrated guidance and control system in a
low altitude terrain following task, when the linear position
is available at a rate lower than that of the remaining
variables.
REFERENCES
P. Aguiar and J. Hespanha. Trajectory-tracking and path-
following of underactuated autonomous vehicles with
parametric modeling uncertainty. IEEE Transactions
on Automatic Control, 52(8):13621379, 2007.
D. Antunes, C. Silvestre, and R. Cunha. On the design
of multi-rate tracking controllers: An application to
rotorcraft guidance and control. In AIAA Guidance,
Navigation, and Control Conference, SC, 2007. AIAA.
P. Colaneri and G. Nicolao. Multirate lqg control of
continuous-time stochastic systems. Automatica, 31(4):
591596, April 1995.
R. Cunha. Modeling and control of an autonomous robotic
helicopter. Masters thesis, Instituto Superior Tecnico,
Lisbon, Portugal, 2002.
R. Cunha and C. Silvestre. Dynamic modeling and
stability analysis of model-scale helicopters with bell-
hiller stabilizing bar. In AIAA Guidance, Navigation,
and Control Conference, TX. AIAA.
R. Cunha and C. Silvestre. A 3D Path-Following Velocity-
Tracking Controller for Autonomous Vehicles. In 16th
IFAC World Congress, Praha, Czech Republic, 2005.
I. Kaminer, A. Pascoal, P. Khargonekar, and E. Coleman.
A velocity algorithm for the implementation of gain-
scheduled controllers. Automatica, 31(8):11851191,
1995.
S. Lall and G. Dullerud. An lmi solution to the robust
synthesis problem for multi-rate sampled-data systems.
Automatica, 37, 2001.
N. Paulino, C. Silvestre, and R. Cunha. Ane parameter-
dependent preview control for rotorcraft terrain follow-
ing ight. AIAA Journal of Guidance, Control, and
Dynamics, 29(6):13501359, 2006.
W. J. Rugh and J. S. Shamma. Research on gain schedul-
ing. Automatica, 36:14011425, October 2000.
C. Silvestre, A. Pascoal, and I. Kaminer. On the design
of gain-scheduled trajectory tracking controllers. Inter-
national Journal of Robust and Nonlinear Control, 12:
797839, 2002.
J. Vasconcelos, J. Calvario, P. Oliveira, and C. Silvestre.
GPS Aided IMU for Unmanned Air Vehicles. In Proceed-
ings of the 5th IFAC/EURON Symposium on Intelligent
Autonomous Vehicles, Lisbon, Portugal, July 2004. IST.