Sunteți pe pagina 1din 21

– Control Theory –

C3. Linearization of nonlinear systems


Jan Swevers
September 2020
Aim of this chapter :
• Learn to derive an approximate linear model of a non-linear system.
• Understand that this is an approximation that is only valid for a limited
input/output range.

0-0
Linearization of nonlinear systems 1/20

Contents of this chapter


• Illustrating example
• General approach: small-signal linearization
• Examples

Reference material:
• G.F. Franklin, J.D. Powell, A. Emami-Naeini, Feedback control of dynamic
systems, Prentice Hall, Inc., 2002, section 2.6.

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 2/20

Illustrating example: pendulum

• Equation of motion for this simple pendulum:

Tc − mgl sin θ = I θ̈
g Tc
θ̈ + sin θ =
l ml2
because I = ml2 .

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 3/20

Pendulum (2)
• Linearization about the equilibrium θ = 0: sin θ ≈ θ:
g Tc
θ̈ + θ =
l ml2
• This is a linear system description with a natural undamped frequency:
r
g
ωn =
l

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 4/20

Pendulum (3)
• Evaluation of the accuracy: consider free motion from the initial state
θ0 = ±6◦ , θ̇0 = 0.

4
angle [degrees]
2

−2

−4

−6
0 2 4 6 8 10
time [s]

Green line: response of linear system; Blue line: response of nonlinear


system.
[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 5/20

Pendulum (4)
• Evaluation of the accuracy: consider free motion from the initial state
θ0 = ±60◦ , θ̇0 = 0.

60

40
angle [degrees]
20

−20

−40

−60
0 2 4 6 8 10
time [s]

Green line: response of linear system; Blue line: response of nonlinear


system.
[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 6/20

Pendulum (5)
In Matlab
function dx = slinger(t,x)

l = 0.5; g = 9.81;

theta = x(1);
dtheta = x(2);
ddtheta = - g*sin(theta)/l;
dx = [dtheta ; ddtheta];

%/////////////////////////////
x0 = [ 0.1 0 ]’;
tspan = [0 10]’;
[tijd,y]=ode45(’slinger’,tspan,x0);

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 7/20

Small-signal linearization
• A nonlinear differential equation is one where the derivatives of the state
have a nonlinear relationship to the state itself and/or the input:

ẋ = f (x, u)

and cannot be written in the form:

ẋ = Fx + Gu

• For small-signal linearization we first determine equilibrium values for u0 ,


x0 , that is, values where:

ẋ0 = 0 = f (x0 , u0 )

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 8/20

• We then expand the nonlinear equation in terms of perturbations from


these equilibrium values, that is:

x = x0 + δx
u = u0 + δu
ẋ0 + δ ẋ ≈ f (x0 , u0 ) + Fδx + Gδu

with
∂f
F = |(x0 ,u0 )
∂x
∂f
G = |(x0 ,u0 )
∂u
• Subtracting out the equilibrium solution ẋ0 = f (x0 , u0 ) = 0 yields:

δ ẋ = Fδx + Gδu

which is a linear differential equation approximating the dynamics of the


system about the equilibrium point.
[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 9/20

Examples:
• Water tank
• Magnetic ball levitator
• Motion system with aerodynamic disturbances

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 10/20

Water tank

• The flow out of the tank as a function of the pressure difference:


1 1/2
wout = (p1 − pa )
R
with p1 = ρgh + pa (hydrostatic pressure), and pa the atmospheric pressure.

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 11/20

Water tank (2)


• Differential equation describing the height of the water in the tank:
1
ḣ = (win − wout )

with A the area of the tank, ρ the density of the water, and h the height of
the fluid in the tank.
• Combining both equations yields:
 
1  1 p 
ḣ =  win − ρgh
Aρ  R
| {z }

wout

• Linearization involves selecting the operation point: p0 = ρgh0 , and


substituting p1 = p0 + ∆p, h = h0 + ∆h, win = win0 + ∆win . Time
derivatives of p0 , h0 and win0 are zero.

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 12/20

Water tank (3)


• We expand the nonlinear term according to the relation:
β
(1 + ε) ≈ 1 + βε
where ε  1.
s
1√ ∆p
wout = p0 1 +
R p0
√  
p0 1 ∆p
≈ 1+
R 2 p0
• Combining both equations yields:
 √  
1 p 0 1 ∆p
h˙0 +∆ḣ = win0 + ∆win − 1+
|{z} Aρ R 2 p0
=0

Since ∆p = ρg∆h, this equation reduces to:



g (win0 + ∆win ) p0
∆ḣ = − √ ∆h + −
2AR p0 Aρ ρAR
[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 13/20

Water tank (4)


• In order to keep the water level at hight h0 = p0 /ρg, we must select win0
such that: √
win0 p0
= ,
Aρ ρAR
and hence these terms disappear from the previous equation, resulting in:
g ∆win
∆ḣ = − √ ∆h +
2AR p0 Aρ

• Remark that this operation point is not a stable equilibrium point, it is


requiring some constant control input win0 to maintain it.

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 14/20

Example : Linearization of motion in a ball levitator

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 15/20

Example : Linearization of motion in a ball levitator (2)


• The equation of motion:

mẍ = fm (x, i) − mg

• Theoretically, the force from an electromagnet falls off with the square
relationship to the distance from the magnet.
• Practically, this function fm (x, i) is much more complex, and can be
measured. For a ball with a diameter of 1cm and a mass of 8.4e−3 kg

• Equilibrium point for a current of i2 = 600mA corresponds to a distance x1 .


[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 16/20

Example : Linearization of motion in a ball levitator (3)


• Linearization about (i2 , x1 ):
fm (x1 + δx, i2 + δi) ≈ fm (x1 , i2 ) + Kx δx + Ki δi
– Kx : slope of the curve for i = i2 in the point x1 : 14N/m.
– Ki : change of the force with current for the fixed value of x1 : 0.4N/A.
– In the equilibrium point, the force is fm = 82e−3 N .
This yields:
fm ≈ 82e−3 + 14δx + 0.4δi
• Combining these equations and numerical values yields:
(8.4e−3 )ẍ = |82e −3
{z } +14δx + 0.4δi −82e −3
| {z }
fm (x1 ,i2 ) −mg

Since x = x1 + δx, and ẍ1 = 0, we get that ẍ = δ ẍ :


(8.4e−3 )δ ẍ = 14δx + 0.4δi
δ ẍ = 1667δx + 47.6δi
[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 17/20

Motion system with aerodynamic disturbances


cw wind velocity v

k1 k2
m x (input)
c2
c1 y (output)

• Equation of motion:

mÿ = −k1 y − k2 (y − x) − c2 (ẏ − ẋ) − c1 ẏ − cw (v + ẏ)2

or
mÿ + (k1 + k2 )y − k2 x + (c1 + c2 )ẏ − c2 ẋ + cw (v + ẏ)2 = 0
[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 18/20

• Deviation w.r.t. equilibrium point (y0 , x0 , v0 ):

y = y0 + δy
ẏ = δ ẏ
ÿ = δ ÿ
x = x0 + δx
ẋ = δ ẋ
ẍ = δ ẍ
v = v0 + δv

• The nonlinear element in the motion equation is approximated as follows:

cw (v + ẏ)2 ≈ cw (v0 + ẏ0 )2 + 2cw (v0 + ẏ0 )(δ ẏ + δv)


|{z} |{z}
=0 =0

• Rewrite the equation of motion:

mδ ÿ+(c1 +c2 )δ ẏ+(k1 +k2 )(y0 +δy)−k2 (x0 +δx)−c2 δ ẋ+cw v02 +2cw v0 (δ ẏ+δv) = 0
[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 19/20

• In the equilibrium point we have:

(k1 + k2 )y0 − k2 x0 + cw v02 = 0

yielding

mδ ÿ + (c1 + c2 )δ ẏ + (k1 + k2 )δy − k2 δx − c2 δ ẋ + 2cw v0 δ ẏ + 2cw v0 δv = 0

• In the Laplace domain:


2

ms + (c1 + c2 + 2cw v0 )s + (k1 + k2 ) δY (s) = (c1 s + k1 ) δX(s)−2cw v0 δV (s)

or
c1 s + k1
δY (s) = 2
δX(s)
ms + (c1 + c2 + 2cw v0 )s + (k1 + k2 )
2cw v0
− 2
δV (s)
ms + (c1 + c2 + 2cw v0 )s + (k1 + k2 )

[H00S3A-H00S4A-H04X3A-H04X3B]
Linearization of nonlinear systems 20/20

Aim of this chapter :


• Learn to derive an approximate linear model of a non-linear system.
• Understand that this is an approximation that is only valid for a limited
input/output range.

Advice : always check the physical units of the parameters of the resulting
linear models

[H00S3A-H00S4A-H04X3A-H04X3B]

S-ar putea să vă placă și