Content uploaded by Torsten Lilge
Author content
All content in this area was uploaded by Torsten Lilge on Nov 06, 2017
Content may be subject to copyright.
COSY Workshop on “Control of Nonlinear and Uncertain Systems”. Zurich, January 17–19, 1997.
Discretetime observers for nonlinear systems
Dipl.Ing. T. Lilge, Institut f¨ur Regelungstechnik, Universit¨at Hannover
Appelstr. 11, D30167 Hannover, Germany.
Email: lilge@irt.unihannover.de
Parts of this paper are based on a manuscript submitted for publication in the European Journal of Control.
This paper focuses on the design of nonlinear observers for discretetime systems by means of a so called extended
nonlinear observer canonical form which is computed via a nonlinear observability canonical form. In contrast
to other approaches using a twosteptransformation, past measurements of the system output are used. This
allows to extend the class of systems for which an observer can be designed and leads to several observers with
diﬀerent characteristics. An application to a pendulum on a cart shows the eﬃciency of the design method.
Keywords: Nonlinear discretetime system; nonlinear observer canonical form; nonlinear observability canon
ical form; observer error dynamics
1 Introduction
Brodmann in [Bro94] and Lin, Byrnes in [LB95] presented the design of discretetime nonlinear ob
servers via a transformation to nonlinear observer canonical form (NOCF). Instead of directly calcu
lating the system representation in NOCF, the system is ﬁrst transformed to nonlinear observability
canonical form (NOBCF). This approach does not require an invertible system function as the ones in
[LN90, LN91, CG90]. Furthermore, in order to ﬁnd the transformation into NOCF, it is not necessary
to solve a system of partial diﬀerential equations as in [LN90, LN91, CG90, Ing93a, Ing93b]. However,
the system representation in NOBCF must match a very restrictive condition in order to be able to
compute the transformation into NOCF.
In this paper, a nonlinear observer design via a so called extended nonlinear observer canonical form
(ENOCF), which is also calculated by means of the NOCF, is established for single output systems.
It extends the class of systems for which an observer can be designed by using output measurements
y(k−i) (i= 1,2, .., n −1) in the observer equations. Since it is no problem to store past measurements
on a computer, it is always possible to implement such an observer.
2 Observer design for single output systems via ENOCF
In this paper, the observer design is derived for discretetime single output and multi input systems
of the form
x(k+ 1) = f(x(k), u(k)), y(k) = h(x(k), u(k)), x(0) = x0,(1)
where x∈IRn, y ∈IR, u ∈IRpand f: IRn×IRp→IRn, h : IRn×IRp→IR are smooth functions;
without loss of generality we can assume that f(0,0) = 0 and h(0,0) = 0. In the following, the
notation ¯u[i,j](k) resp. ¯y[i,j](k) characterizes in a short way the input sequence [u(k+i), ..., u(k+j)]
resp. the output sequence [y(k+i), ..., y(k+j)] where i, j are integers with i<j.
The transformation of system (1) into NOBCF is derived by an extension of the transformation of an
2 OBSERVER DESIGN FOR SINGLE OUTPUT SYSTEMS VIA ENOCF 2
autonomous system to NOBCF as presented in [Bro94] or [LB95]:
s(k) = ψ(x(k),¯u[0,n−1](k)) =
hˆ
f0(x(k), u(k)), u(k)
hˆ
f1(x(k), u(k)), u(k+1)
.
.
.
hˆ
fn−1(x(k),¯u[0,n−2](k)), u(k+n−1)
,(2)
where
ˆ
f0(x(k), u(k)) = x(k),
ˆ
fi(x(k),¯u[0,i−1](k)) = ff...f(f(x(k), u(k)), u(k+ 1)), ..., u(k+i−1)for i≥1.(3)
This leads to a system representation in NOBCF of the form:
s(k+ 1) =
s2(k)
.
.
.
sn(k)
fs(s(k),¯u[0,n](k))
, y(k) = s1(k), s(0) = s0.(4)
According to [Bro94, LB95], the following so called nonlinear characteristic equation must hold for
autonomous systems in order to be able to transform the system into NOCF:
h−1
z(fs(s(k))) =
n−1
X
i=0
fz,i(si+1(k)),(5)
where fz,i : IR →IR are arbitrary analytical functions showing up in NOCF and hz: IR →IR is an
invertible output function of the system in NOCF∗. This condition is very restrictive and it can be
dropped by using the ENOCF with past output measurements:
z(k+ 1) =
0· · · 0 0
1· · · 0 0
.
.
.....
.
..
.
.
0· · · 1 0
z(k) +
fz,0(y(k),¯u[0,n](k))
fz,1(¯y[−1,0](k),¯u[−1,n−1](k))
.
.
.
fz,n−1(¯y[−n+1,0](k),¯u[1−n,1](k))
,
y(k) = hz(zn(k),¯u[−n+1,0](k)), z(0) = z0, y(−i) = yi(i= 1, ..., n −1)
(6)
In ENOCF, designing a nonlinear observer for k≥n−1 with linear error dynamics is possible:
ˆz(k+ 1) =
0· · · 0 0
1· · · 0 0
.
.
.....
.
..
.
.
0· · · 1 0
ˆz(k) +
fz,0(y(k),¯u[0,n](k))
fz,1(¯y[−1,0](k),¯u[−1,n−1](k))
.
.
.
fz,n−1(¯y[1−n,0](k),¯u[1−n,1](k))
+
q0
q1
.
.
.
qn−1
(h−1
z(y(k),¯u[1−n,0](k)) −ˆzn(k)),
ˆy(k) = hz(ˆzn(k),¯u[1−n,0](k)),ˆz(n−1) = ˆz0, k ≥n−1,
(7)
∗In [LB95] the output function in NOCF is linear
2 OBSERVER DESIGN FOR SINGLE OUTPUT SYSTEMS VIA ENOCF 3
where qi(i= 0,1, ..., n −1) are the coeﬃcients of the characteristic polynomial of the observer error
dynamics, which are linear in ENOCF. A discretetime system (1) can be transformed to a system in
ENOCF (6) if:
1. the system is observable and the inverse map x(k) = ψ−1(s(k),¯u[0,n−1](k)) of the transformation
s(k) = ψ(x(k),¯u[0,n−1](k))) into NOBCF can be given in explicit form and
2. the last component fs(s(k),¯u[0,n](k)) of the system function in NOBCF satisﬁes
h−1
z(fs(s(k),¯u[0,n](k)),¯u[1,n](k)) = n−1
P
µ=0
fz,µ(s1(k), ..., sµ+1(k),¯u[0,n](k)) (8)
with hz,fz,i (i= 0,1, ..., n −1) given in equ. (6).
The second condition replaces equ. (5). Note that this condition is always fulﬁlled; however, an
appropriate choice of hzand the functions fz,i according to equ. (8) can be helpful in some cases.
Some aspects are discussed at the end of this section.
Finding the transformation from NOBCF into ENOCF is possible by considering the structure of the
ENOCF and taking into account that s(k)=[y(k), ..., y(k+n−1)]T, which is obvious from equ. (2):
zn(k) = h−1
z(s1(k),¯u[−n+1,0](k))
zn−1(k) = h
−1
z(s2(k),¯u[−n+2,1](k)) −fz ,n−1(¯y[−n+1,−1](k), s1(k),¯u[−n+1,1] (k))
.
.
.
z1(k) = h−1
z(sn(k),¯u[0,n−1](k)) −Pn−1
µ=1 fz,µ(y(k−1), s1(k), ..., sµ(k),¯u[−1,n−1](k)).
(9)
Since hzis invertible, the inverse transformation exists and can easily be calculated:
s1(k) = hz(zn(k),¯u[−n+1,0](k))
s2(k) = hz(zn−1(k) + fz,n−1(¯y[−n+1,−1](k), s1(k),¯u[−n+1,1](k)),¯u[−n+2,1] (k))
.
.
.
sn(k) = hz(z1(k) +
n−1
X
µ=1
fz,µ(y(k−1), s1(k), ..., sµ(k),¯u[−1,n−1](k)),¯u[0,n−1] (k)).
(10)
From equation (10) and y(k+i−1) = si(k) for i= 1,2, ..., n (see above) follows
sn(k+1) = hz(z1(k+1) +
n−1
X
µ=1
fz,µ(y(k), s1(k+1), ..., sµ(k+1),¯u[0,n](k)),¯u[1,n](k))
=hz(
n−1
X
µ=0
fz,µ(s1(k), s2(k), ..., sµ+1(k),¯u[0,n](k)),¯u[1,n](k)).
(11)
Replacing sn(k+1) by the last component of the systemfunction in NOBCF (4) leads to equ. (8),
the new nonlinear characteristic equation. Since the transformation from NOBCF into ENOCF (9) is
invertible and the inverse transformation can be calculated, it is always possible to ﬁnd a representation
in NOBCF for a system given in ENOCF. In the case that the representation of a system in ENOCF
exists, one can always ﬁnd it via transformation into NOBCF as already derived by Brodmann (see
[Bro94]).
2 OBSERVER DESIGN FOR SINGLE OUTPUT SYSTEMS VIA ENOCF 4
The system representation and the observer equation in ENOCF depend on future values of the inputs.
Therefore, they are noncausal systems. The numbers of necessary future resp. past input values and
past output values depend on the selection process of the functions hzand fz,i, i = 0,1, ..., n −1.
However, it can be shown that the resulting observer in xcoordinates does not depend on the choice
of the functions fz,i if hz(zn(k),¯u[−n+1,0] (k)) = zn(k) (for details, see [Lil98]). As a consequence, one
can choose the functions fz,i in order to minimize the computational eﬀort for the observer design. A
selection which leads to a straightforward transformation from NOBCF into ENOCF is given by:
fs(s(k),¯u[0,n](k)) = fz,n−1(s1(k), ..., sn(k),¯u[0,n](k))
hz(zn(k),¯u[−n+1,0](k)) = zn(k).(12)
Another object of the selection process of the functions fz,i might be the minimization of the number
of necessary past measurements: If the observer is calculated in ENOCF and the estimated state ˆx(k)
is then calculated by means of the inverse transformation (or a state feedback is also transformed to
zcoordinates), the choice of the functions fz,i according to the restrictive equ. (5) as far as possible
minimizes the number of necessary past output values. If the number of past input values can also
be reduced, the calculation of the observer can be initiated at k0< n −1 which leads to a shorter
transient time.
2.1 Diﬀerent observers via ENOCF
2.1.1 Observer equations
Note that setting hz(zn(k),¯u[−n+1,0](k)) = zn(k) and fz ,i = 0 for i= 0,1, ..., n −2 is a very special
case. From equation (6), it follows that
z1(k) = z2(k) = ... =zn−1(k) = 0 for k≥n−1,(13)
zn(k+ 1) = fz,n−1(¯y[−n+1,0](k),¯u[−n+1,1](k)) = y(k+ 1) for k≥n−1.(14)
Beside the observer (7) (in the following called observer type 1), three other observers in ENOCF are
possible. The observer type 2 is derived by replacing fz,n−1(¯y[−n+1,0] (k),¯u[−n+1,1](k)) by y(k+ 1) in
equ. (7). Taking equ. (13) into consideration, the resulting observer type 3 is
ˆz(k+ 1) =
0
.
.
.
0
fz,n−1(¯y[−n+1,0](k),¯u[−n+1,1](k))
+
λ1ˆz1(k)
.
.
.
λn−1ˆzn−1(k)
λn(ˆzn(k)−y(k))
,
ˆy(k) = ˆzn(k),ˆz(n−1) = ˆz0, k ≥n−1,
(15)
where λiare the eigenvalues of the observer error dynamics in ENOCF. Replacing
fz,n−1(¯y[−n+1,0](k),¯u[−n+1,1](k)) by y(k+ 1) in equ. (15) leads to the observer type 4, which is similar
to the observer in canonical form presented by Ciccarella et al. in [CDMG95]. Using types 3 and 4, the
resulting observer error dynamics are described by nuncoupled diﬀerence equations. The convergence
rate for the ith component of the observer error can be assigned by λi.
To compare these diﬀerent observers, it is only necessary to consider the observer equations and error
dynamics in ENOCF. The observer types 2, 3 and 4 are based on the same system equations in ENOCF
3 EXAMPLE: PENDULUM ON A CART 5
because the transformation from x to zcoordinates is always the same (the degrees of freedom in the
transformation from NOBCF into ENOCF are chosen following equ. (12)). Since the observer type 1
in xcoordinates does not depend on the choice of the functions fz,i for hz(zn(k),¯u[−n+1,0](k)) = zn(k),
it is also possible to choose the transformation from NOBCF into ENOCF like given in equ. (12).
Then, the transformation between x and zcoordinates is the same for all four observer types and
therefore, diﬀerences can only show up in the observer equations and error dynamics in ENOCF.
2.1.2 Main characteristics of the observers
Table 1: Characteristics of the observers in ENOCF.
Characteristic Observer type
1234
Filtering of noise at output mearsurements + – + –
Robustness to parameter and model uncertainties – + – +
Robustness to noise at input measurements – + – +
Transient behaviour (obs. errors less than initial ones?) – – + +
Observer for step k+ 1 can be computed at step k k + 1 k k + 1
Table 1 shows the main characterisitcs of the observers. Note that these characteristics are found in
observer equations and error dynamics in ENOCF. General results for the observers in xcoordinates
are very diﬃcult to derive. For example, noise at the system input, parameter or model uncertainties
can also be a problem for the observer types 2 and 4 because the system model and the input mea
surements show up in the (perhaps highly nonlinear) transformation. Assuming a well deﬁned and
continuous transformation rule, it seems to be probable that the characteristics of the observers in
ENOCF are also found again in xcoordinates.
3 Example: Pendulum on a cart
The observer design described in the previous sections is applied to a stiﬀ, in one plane free rotating
pendulum ﬁxed on a cart as shown in ﬁgure 1.
u u
j j
uB
B
B
B
B
B
B
B

S(t)
Φ(t)
Computer
S
Φ
U
Ampliﬁer
DCMotor
e e
Pendulum
Cart
Guide pulley
Driving belt
?
g
9

Figure 1: Pendulum on a cart
3 EXAMPLE: PENDULUM ON A CART 6
The cart is moved by a driving belt which is on its part driven by a DCmotor. The acceleration of
the motor (resp. of the cart) is the input U(t) of the system generated by a computer. The system
dynamics with the state vector [Φ(t),˙
Φ(t), S(t),˙
S(t)]Tare described by
˙
Φ(t)
¨
Φ(t)
˙
S(t)
¨
S(t)
=
˙
Φ(t)
a g sin(Φ(t)) + acos(Φ(t)) U(t)
˙
S(t)
U(t)
,
y(t) = y1(t)
y2(t)=Φ(t)
S(t),Φ(0) = Φ0,˙
Φ(0) = ˙
Φ0, S(0) = S0,˙
S(0) = ˙
S0,
(16)
with the parameters a= 2.36 and g= 9.81, which are given without units for reasons of sim
plicity. This system model is rather simple: It does not contain dynamics of the ampliﬁer or
friction of the pendulum. The system can be divided into a nonlinear subsystem for the pendu
lum and a linear subsystem for the cart. Both systems are driven by the same input. Setting
x1(t)=[x1,1(t), x1,2(t)]T= [Φ(t),˙
Φ(t)]Tand x2(t)=[x2,1(t), x2,2(t)]T= [S(t),˙
S(t)]T, the system dy
namics can be written in the form:
˙x1(t) = f1(x1(t), U (t)),˙x2(t) = A x2(t) + b U (t),(17)
where Aand bare matrices of appropriate dimensions. For this system, there already exists a structure
variant controller, designed for the continuoustime model [KT90]. First, the pendulum is brought
from the stable equlibrium (Φ = π) into a region near the unstable equilibrium by a bangbangcontrol
based on a steepestdescent approach. Near the unstable equilibrium, a linear state feedback stabilizes
the pendulum. Besides the task of stabilizing the pendulum, the cart has to be positioned in the middle
of the rail (S= 0). The eﬀect of sampling is not taken into consideration (the usual sampling rate
is 8 ms) and to obtain the full state vector needed for control, the time derivatives are calculated by
numerical diﬀerentiation which is very sensitive to noise and less precise if the sampling time increases.
Therefore, it seems to be useful applying a discretetime observer. Therefore, the system has to be
discretized. For the linear subsystem, exact discretization is no problem. The nonlinear subsystem is
discretized by a Taylorseries where all terms with order higher than two are neglected:
x1(t+T)≈x1(t) + T˙x1(t) + T2
2¨x1(t) = x1(t) + T f1(x1(t), U (t)) + T2
2
∂f1(x1(t), U (t))
∂x1(t)f1(x1(t), U (t)),
(18)
with x1(t) = x1(kT ), x1(t+T) = x1((k+ 1)T) and Tthe sampling time. The discretetime system
representation is
x1(k+ 1) =
x1,1(k) + T x1,2(k) + T2(1.18 U(k) cos(x1,1(k)) + 11.5758 sin(x1,1(k)))
x1,2(k) + T(2.36 U(k) cos(x1,1(k)) + 23.1516 sin(x1,1(k)))
+T2x1,2(k)(11.5758 cos(x1,1(k)) −1.18 U(k) sin(x1,1(k)))
x2(k+ 1) = "x2,1(k) + T x2,2(k) + T2
2U(k)
x2,2(k) + T U(k)#
y(k) = y1(k)
y2(k)=x1,1(k)
x2,1(k), x1(0) = x1,0, x2(0) = x2,0.
(19)
An observer design for the second subsystem is well known and not considered any further. For the
ﬁrst subsystem, the observer types 1, 3 and 4 were applied to the real process. First, the observers
were tested with inactive controller.
3 EXAMPLE: PENDULUM ON A CART 7
8
6
4
2
0
2
4
6
8
10
0 0.5 1 1.5 2 2.5 3 3.5 4
ˆ
Φ in [rad]
Φ in [rad]
ˆ
˙
Φ in [rad/s]
˙
Φ in [rad/s]
∆Φ/T in [rad/s]
tin [s]
Figure 2: Pendulum with observer type 1.
8
6
4
2
0
2
4
6
8
10
0 0.5 1 1.5 2 2.5 3 3.5 4
ˆ
Φ in [rad]
Φ in [rad]
ˆ
˙
Φ in [rad/s]
˙
Φ in [rad/s]
∆Φ/T in [rad/s]
tin [s]
Figure 3: Pendulum with observer type 3.
The initial condition of the pendulum system was Φ(0) = π, ˙
Φ(0) = 0. The input U(k) of the system
was switched between 3 and 3 depending on the measured position of the cart. The initial condition
of the observer was ˆ
Φ(0) = 0,ˆ
˙
Φ(0) = 0, the sampling time T= 0.1sand the observer error dynamics in
ENOCF λ1= 0.45 and λ2= 0.6. All necessary past measurements were already known at k= 0. The
behaviour of the pendulum and the nonlinear observers for this subsystem are shown in ﬁgures 2 and 3
where ∆Φ
T=Φ(k)−Φ(k−1)
Tis the time derivative of the angle approximated by numerical diﬀerentiation.
The trajectory of ˙
Φ(t) was calculated by the same approximation but with a sampling time of 5 ms
which is assumed to be very near the real (not known) trajectory.
It can be seen that the transient behaviour of the observer type 1 diﬀer from the types 3 and 4.
Comparing ˆ
˙
Φ with ∆Φ
T, the observer types 1 and 3 are more precise than the numerical diﬀerentiation
4 CONCLUSION 8
6
4
2
0
2
4
6
8
10
0 0.5 1 1.5 2 2.5 3 3.5 4
ˆ
Φ in [rad]
Φ in [rad]
ˆ
˙
Φ in [rad/s]
˙
Φ in [rad/s]
∆Φ/T in [rad/s]
tin [s]
Figure 4: Pendulum with observer type 4.
except for the relative extrema of ˙
Φ(t) (ﬁgures 2 and 3). Here, the higher order time derivatives of
˙
Φ(t), which were neglected by discretizing the system, probably are coming up to considerable values.
This model uncertainty does not show up using the observer type 4, which is always more precise than
numerical diﬀerentiation (ﬁgure 4).
Finally, the control designed for the timecontinuous system model was based on the state of the
observer type 3. Increasing the sampling rate up to T= 0.1swas possible. Since the control does not
take the sampling into account, the performance of the controller was worse than with a sample time
of T= 8ms. However, the control based on the real state and using numerical diﬀerentiation for the
time derivatives failed at T= 0.1s.
4 conclusion
In this paper the observer design via NOBCF and ENOCF (extended nonlinear observer canonical
form) is presented. In contrast to other design methods using the NOCF, the class of systems for
which a nonlinear observer can be designed is extended by using past values of the inputs and the
output. The design procedure was described for multi input single output systems and four diﬀerent
observer designs via ENOCF were considered. An application to a real process shows the eﬃciency of
the presented observer design.
References
[Aey81] D. Aeyels. On the number of samples necessary to achieve observability. Systems &
Control Letters, 1(2):92–94, 1981.
[Bro94] M. Brodmann. Beobachterentwurf f¨ur nichtlineare zeitdiskrete Systeme. Number 416 der
Reihe 8 in VDIFortschrittberichte. VDIVerlag, D¨usseldorf, 1994. Dissertation, Univer
REFERENCES 9
sit¨at Hannover.
[CDMG93] G. Ciccarella, M. Dalla Mora, and A. Germani. Observers for discretetime nonlinear
systems. Systems & Control Letters, 20:373–382, 1993.
[CDMG95] G. Ciccarella, M. Dalla Mora, and A. Germani. A robust observer for discrete time
nonlinear systems. Systems & Control Letters, 24:291–300, 1995.
[CG90] S.T. Chung and J. W. Grizzle. Sampleddata observer error linearization. Automatica,
26(6):997–1007, 1990.
[GM90a] J. W. Grizzle and P. E. Moraal. Newton, observers and nonlinear discretetime control.
In IEEE, editor, Proc. of the 29th IEEE Conf. on Decision and Control, pages 760–767,
Honolulu, Hawaii, Dez. 1990.
[GM90b] J. W. Grizzle and P. E. Moraal. On observers for smooth nonlinear digital systems. In
M. Thoma and A. Wyner, editors, Proc. of the 9th Int. Conf. on Analysis and Optimization
of Systems 1990, number 144 in Lecture Notes in Control and Information Sciences, pages
401–410. SpringerVerlag, Berlin, Juni 1990.
[Ing93a] R. Ingenbleek. Beobachtbarkeit und Beobachterentwurf f”ur zeitdiskrete nichtlineare Sys
teme. Number 03/93 in Forschungsberichte. Universit”at Duisburg, Duisburg, 1993.
[Ing93b] R. Ingenbleek. Transformation of nonlinear discretetime systems into observer canoni
cal form. In G.C. Goodwin and R.J. Evans, editors, Proc. of the 12th Triennial World
Congress of the Int. Federation of Automatic Control, pages 35–38, Sydney, Australia,
1993.
[KT90] M. Kluge and M. Thoma. Aufschwingen eines Pendels mit strukturvariablem Regler.
Automatisierungstechnik, 38(3):114–117, 1990.
[LB95] W. Lin and C. I. Byrnes. Remarks on linearization of discretetime autonomous systems
and nonlinear observer design. Systems & Control Letters, 25:31–40, 1995.
[Lil98] T. Lilge. On observer design for nonlinear discretetime systems. European Journal of
Control, 4(4):306–319, 1998.
[LN90] W. Lee and K. Nam. Observer design for nonlinear discretetime systems. In IEEE, editor,
Proc. of the 29th IEEE Conf. on Decision and Control, pages 768–769, Honolulu, Hawaii,
Dez. 1990.
[LN91] W. Lee and K. Nam. Observer design for autonomous discretetime nonlinear systems.
Systems & Control Letters, 17:49–58, 1991.
[MG92] P.E. Moraal and J.W. Grizzle. Nonlinear discretetime observers using Newton’s and
Broyden’s method. In AACC, editor, Proc. of the 1992 American Control Conf. Chicago,
pages 3087–3090, Chicago, Illinois, Juni 1992.
[MG95] P. E. Moraal and J. W. Grizzle. Observer design for nonlinear systems with discretetime
measurements. IEEE Trans. on Automatic Control, 40(3):395–404, M”arz 1995.
[Nij82] H. Nijmeijer. Observability of autonomous discrete time nonlinear systems: A geometric
approach. Int. Journal of Control, 36(5):867–74, Nov. 1982.