Nonlinear Control Systems 1. - Introduction To Nonlinear Systems
Nonlinear Control Systems 1. - Introduction To Nonlinear Systems
Nonlinear Control Systems 1. - Introduction To Nonlinear Systems
EE60580-01
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear SystemsEE60580-01 1 / 54
Course Overview
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear SystemsEE60580-01 2 / 54
Course Overview
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear SystemsEE60580-01 3 / 54
Dynamical Systems
φ(0, x, u) = x (identity)
φ(s + t, x) = φ(t, φ(s, x, u[0,s] ), u[s,s+t] )
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear SystemsEE60580-01 4 / 54
Dynamical Systems
If there is no input (i.e. u ≡ 0), then this is an unforced system
(X , G , φ) and with the given assumptions we know that the orbits do
not intersect and partition the phase space into equivalence classes.
This justifies the notion of ”state”.
Principle of Superposition
φ(t; x, αu1 + βu2 ) = αφ(t; x, u1 ) + βφ(t; x, u2 )
means the system is linear. You studied this in linear systems theory
(EE550) when G with either Z (discrete-time) or R
(continuous-time).
We focus on systems that do not satisfy the principle of
superposition. These systems exhibit a wide range of interesting
behaviors that do not appear in linear systems.
The objective of the first couple lectures is to present examples
introducing these interesting behaviors. These behaviors will provide
the motivation for our subsequent study of nonlinear control systems.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear SystemsEE60580-01 5 / 54
Discrete-time System based on Logistic Map
with a being a positive real constant. This is called the logistic map.
Orbits are generated by the recursive equation
xk+1 = axk (1 − xk ), x0
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear SystemsEE60580-01 6 / 54
Logistic Map
cobweb plot population state trajectory
1 1
0.9 0.9
0.8
a=2 0.8
0.7 0.7
0.6 0.6
population
f(x(k))
0.5 0.5
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 2 4 6 8 10 12 14 16 18 20
x(k) generation (k)
Figure: Cobweb Graph and State Trajectory for Logistic System with a = 2 and
x0 = 0.2
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear SystemsEE60580-01 7 / 54
Logistic Map
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear SystemsEE60580-01 8 / 54
Logistic Map
√
Limit Cycling Population: (3 < a ≤ 1 + 6 = 3.449) - In this case
the population goes through a “boom and bust” cycle or what will be
later referred to as a limit cycle. Fig. 2 shows the cobweb plot and
state trajectory for the case when a = 3.4. In this figure the
population bounces between two different sizes on each generation.
cobweb plot population state trajectory
1 1
0.9 0.9
0.8
h=3.4 0.8
0.7 0.7
0.6 0.6
population
f(x(k))
0.5 0.5
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 2 4 6 8 10 12 14 16 18 20
x(k) generation (k)
Figure: Cobweb Graph and State Trajectory for Logistic System with h = 3.4
and x0 = 0.2
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear SystemsEE60580-01 9 / 54
Logistic Map
Road to Chaos:√ (3.449 < a ≤ 3.570) - For a just greater than
3.449 = 1 + 6, the period 2 limit cycle begins doubling until
a > 3.570 at which point the population’s state trajectory becomes
chaotic as shown in Fig. 3. The term ”chaos” formally means that
the future states vary in a discontinuous manner with the initial
condition x0 .
cobweb plot population state trajectory
1 1
0.9 0.9
0.8
h=3.9 0.8
0.7 0.7
0.6 0.6
population
f(x(k))
0.5 0.5
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 100 200 300 400 500 600 700 800 900 1000
x(k) generation (k)
Figure: Cobweb Graph and State Trajectory for Logistic System with h = 3.9
and x0 = 0.2
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 10 / 54
Nonlinear Continuous-time Oscillator
ẍ + γ ẋ − ω 2 x + x 3 = Γ cos(Ωt) (2)
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 11 / 54
Duffing Oscillator
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 12 / 54
Duffing Oscillator
0.4
0.4 1.5
0.3 0.3
1
0.2 0.2
0.5
0.1 0.1
0 0 0
-0.1 -0.1
-0.5
-0.2 -0.2
-1
-0.3 -0.3
-0.4 -1.5
-0.4
-0.5 -2
80 100 120 140 160 180 1.8 1.9 2 2.1 2.2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2
Figure: State trajectory (left), phase plane trajectory (middle), and Poincaré
section (right) for forced Duffing oscillator (2) with γ = 0.1, = 0.25, ω = 1,
Γ = 0.5, and Ω = 2.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 13 / 54
Poincare Section
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 14 / 54
Duffing Oscillator Chaos
When we change Γ = 1.5 in the Duffing oscillator, the Poincaré section
shows a much more complex structure. This structure is sometimes called
a chaotic or strange attractor for the system.
time series phase space Poincaré section (GAM=1.5)
3 3
2.5
2 2 2
1.5
1 1
1
0.5
0 0
0
-1 -0.5
-1
-1
-2 -1.5
-2
-2
-3
80 100 120 140 160 180 -3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2
Figure: State trajectory (left), phase plane trajectory (middle), and Poincaré
section (right) for forced Duffing oscillator (2) with γ = 0.1, = 0.25, ω = 1,
Γ = 1.5, and Ω = 2.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 15 / 54
Nonlinear Regulation Problems
ẋ(t) = f (x, u)
y = h(x, u)
u = k(x)
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 16 / 54
Regulation through Local Linearization
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 17 / 54
Regulation through Local Linearization
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 18 / 54
Nonholonomic Control of Two-wheeled Robot
Let us see how well this ”linearized” control works for a two-wheeled
robotic vehicle
The “plant” is a two-wheeled robotic vehicle. Let F denote the force
applied along the body’s x-axis and T be the torque about the
vehicle’s center of mass.
The control vector is u(t) = [F (t), T (t)]T . The state variables are
the plant’s center of mass, x and y , the body angle, θ, the velocity,
vx , and the angular rate, ω.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 19 / 54
Regulation through Local Linearization
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 20 / 54
Regulation through Local Linearization
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 21 / 54
Regulation through Local Linearization
We can then use a number of methods that design stabilizing
controllers for this system. In particular, we’ll compute the linear
quadratic regulator (LQR) that find the state gains, K , such that the
controller u = Kz minimizes the cost functional
Z ∞
J[u] = (z T z + u T u)dτ
0
This controller was simulated in the following MATLAB script with
the desired trajectory
2πt
ẋd (t) = 50 sin , xd (0) = 0
50
4πt
ẏd (t) = 50 cos , yd (0) = 0
50
The LQR control was recomputed at each time instant using the
desired reference trajectory states. We indeed obtain tracking of the
desired reference trajectory, though the vehicle’s initial transient
shows some significant oscillation while it is picking up speed.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 22 / 54
Regulation through Local Linearization
250
desired traj
vehicle traj
200
initial position
final position
150
direction of time
100 vehicle tracking
50 direction of time
y
-50
-100
-150
-200
-250
-100 0 100 200 300 400 500 600 700 800
x
Figure: (left) MATLAB script - (right) trajectories for linearized control with
(x0 , y0 ) = (50, 0)
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 23 / 54
Regulation through Local Linearization
neighborhood of the 50
direction of
time
y
suggests that if we were to -50
vehicle is lost
start the vehicle further away -100
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 24 / 54
Regulation through Global Linearization
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 25 / 54
Regulation through Global Linearization
In the feedback linearization approach we will find it convenient to
introduce a change of control variables in which
Z t
u1 (t) = F (t) = v1 (s)ds
0
u2 (t) = T (t) = v2 (t)
The original control, u1 = F , is then treated as another system state,
thereby extending the state vector of the original system.
With this change of control variable we obtain the following state
equations for our cart,
x vx cos θ 0 0
y vx sin θ 0 0
d θ =
ω 0 0 v1
+
vx F
dt 0 0 v2
ω 0 0 1
F 0 1 0
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 26 / 54
Regulation through Global Linearization
We now introduce a state transformation which is obtained by taking
the derivatives of the tracking error.
z1 = x − xd z2 = ẋ − ẋd , z3 = ẍ − ẍd
z4 = y − yd , z5 = ẏ − ẏd , z6 = ÿ − ÿd
The differential equations for these components are then readily
computed as
ż1 = vx cos θ − ẋd = z2
ż2 = F cos θ − vx ω sin θ − ẍd = z3
...
ż3 = v1 cos θ − vx v2 sin θ − (2F ω sin θ + vx ω 2 cos θ) − x d
ż4 = vx sin θ − ẏd = z5
ż5 = F sin θ + vx ω cos θ − ÿd = z6
...
ż6 = v1 sin θ + vx v2 cos θ + (2F ω cos θ − vx ω 2 sin θ) − y d
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 27 / 54
Regulation through Global Linearization
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 28 / 54
Regulation Through Global Linearization
Note that if we select the control v to have the form
...
−1 xd
v =ρ −α + ... y + Kz (4)
d
300
desired traj
x0=(50,0)
250
x0=(250,250)
direction of
initial position
200
time final position
50
y
direction of
0
time
-50
-100
-150
-200
0 100 200 300 400 500 600 700 800
x
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 30 / 54
Bursting in Adaptive Systems
Adaptive control systems are systems that adapt the controller’s gains
in response to how well the controlled system is actually behaving.
Even when this approach is used to adapt a linear dynamical system,
the overall system will be highly nonlinear since the control signal is a
product of the gain and the system state; both of which in turn are
time-varying.
This nonlinearity makes can make it difficult to ensure the adaption
rule is well behaved (i.e. stable) and it sometimes leads to unexpected
behaviors such as bursting; a phenomenon that occurs when an
adaptive system suddenly exhibits a burst of oscillatory behavior
before returning back to normal.
Bursting is a qualitative behavior found in biological systems and
turbulent fluid flow. The objective of this section is to illustrate
bursting in a simple adaptive control problem and show how the
nonlinearities in that system give rise to the bursting phenomena.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 31 / 54
Bursting in adaptive linear systems
As a simple example, let us consider a linear plant whose state
x : R → R satisfies
ẋ = ax + bu (6)
in which a and b are unknown system constants but in which we
assume we can measure the system state x(t).
The objective is to select a control signal u : R → R so that x tracks
a reference model whose state xm : R → R satisfies
ẋm = −am xm + bm r (7)
where am > 0, bm > 0, r (t), and xm (t) are all known.
The control input, u, is generated by the following equation
u(t) = k1 x(t) + k2 r (t) (8)
where k1 and k2 are “control gains”.
The objective is to select these gains so that the model tracking error,
e = x − xm , asymptotically goes to zero as time goes to infinity.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 32 / 54
Bursting in adaptive linear systems
Let us first note that the tracking error satisfies the differential
equation
ė = ẋ − ẋm
= ax + b(k1 x + k2 r ) + am x − bm r
ė = ax + b(k1∗ x + k2∗ r ) + am x − bm r
a + am bm
= ax + b − x+ r + am x − b m r (9)
b b
= −am (x − xm ) = −am e
Since am > 0, this would imply that for k1 = k1∗ and k2 = k2∗ that
e(t) asymptotically goes to 0 as t → ∞.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 33 / 54
Bursting in adaptive linear systems
This particular choice for the control gains, however, requires that one
know what a and b are ahead of time. Since these system parameters
are unknown, our actual control law uses a k1 and k2 that are not
equal to the ”optimal” values.
For this non-optimal choice, the modeling error, e, satisfies
ė = ax + b(k1 x + k2 r ) + am x − bm r
= ax + b((k1 − k1∗ )x + (k2 − k2∗ )r ) + bk1∗ x + bk2∗ r + am − bm r
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 34 / 54
Bursting in Adaptive Linear Systems
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 35 / 54
Bursting in Adaptive Linear Systems
To see what a plausible form for these adaptation functions should
be, let us consider a cost function
1 b b
V (e, k1 , k2 ) = e 2 + (k1 − k1∗ )2 + (k2 − k2∗ )2
2 2γ 2γ
where γ > 0 is a constant.
Note that V ≥ 0 and let us consider the time derivative of this cost,
V̇ , as e, k1 , and k2 follow the error dynamics in equation (10) under
the adaptation rule (11).
In particular, if one can show that V̇ ≤ 0, then since V is bounded
below by zero, then V (t) must be a monotone decreasing function of
time that converges to a limit point.
So let us compute V̇
∂V ∂V ∂V
V̇ = ė + k̇1 + k̇2
∂e ∂k1 ∂k2
b b
= e ė + (k1 − k1∗ )k̇1 + (k2 − k2∗ )k̇2 (12)
γ γ
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 36 / 54
Bursting in Adaptive Linear Systems
1 1
V̇ = −am e 2 + b(k1 − k1∗ )(xe + k̇1 ) + b(k2 − k2∗ )(xr + k̇2 )
γ γ
Note that if we select
then we can ensure V̇ < 0 for all e 6= 0 and this would suggest V (t)
is a decreasing function of time.
The adaptation rule in equation (13) is sometimes called the MIT rule
and it represents one of the earliest adaptive control laws proposed for
aerodynamic systems in the 1960’s.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 37 / 54
Bursting in Adaptive Linear Systems
Various forms of the MIT rule have been used, but one well known
variation takes the form
x
k̇1 = −γ θ+x 2e
(14)
k̇2 = −γxr
This is sometimes called the normalized MIT rule since the size of the
k1 update is normalized by the size of the current system state.
Let us now look at simulations of the normalized MIT rule and see
what happens. In this simulation, we let the plant and reference
model be
ẋ = 1.8x + 2u
ẋm = −3x + 3r
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 38 / 54
Bursting in Adaptive Linear Systems
Let us first simulate this with γ = 1 and θ = 0.1 using the normalized MIT
rule from equation (14). The top plot shows e(t) → 0 as time goes to
infinity. The lower plot shows k1 and k2 and the optimal gains (k1∗ and k2∗ )
for this example.
3
x, plant
2 xm, model
-1
-2
-3
0 50 100 150 200 250 300 350 400 450 500
time
3
k1
2 k2
k1star
k2star
1
-1
-2
-3
0 50 100 150 200 250 300 350 400 450 500
time
Figure: Simulation of Normalized MIT rule for ẋ = 1.8x + 2u and ẋm = −3x + 3r
with no noise in the measured plant state.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 39 / 54
Bursting in Adaptive Linear System
An important thing to note about the simulation is that there is no
modeling error in the linear plant and there is no measurement noise.
To see how our proposed adaptive control works under these
conditions, let us assume that the plant state, x, satisfies the ODE,
ẋ = 1.8x + 0.1x 2 + 2u
y = x + 0.1ν
where ν is a zero mean white noise process with unit variance.
We now use the measured output y , rather than the true state in our
feedback controller and adaptation rules,
ê = y − xm
u = k1 y + k2 r
y
k̇1 = −γ ê
0.1 + y 2
k̇2 = −γ êr
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 40 / 54
Bursting in Adaptive Linear Systems
The simulation results show t there is a burst in which the system
becomes highly oscillatory and then recovers tracking again.
8
x, plant
6 xm, model
bursting
4
phenomenon
2
-2
-4
0 50 100 150 200 250 300 350 400 450 500
time
4
k1
2 k2
k1star
k2star
0
-2
-4
-6
-8
0 50 100 150 200 250 300 350 400 450 500
time
The lower plot shows that k1 and k2 have a linear drift and bursting occurs
when these gains change sign.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 41 / 54
Bursting in Nonlinear Systems
There are numerous other systems where the bursting phenomenon
plays an important functional role.
This occurs in the dynamics of cell membranes where the ”burst”
corresponds to an impulse representing the transmission of
information down a nerve cell’s axon.
A simplified version of the Fitzhugh-Nagumo model for nerve
conduction.
v3
v̇ = v− − w + (y + I )
3
ẇ = φ(v + a − bw )
The variable v represents the cell membrane’s potential, w represents
a ”gating” variable, and I represents the stimulating current
(assumed to be constant).
For a suitable constant I , the membrane potential exhibits a sustained
oscillation as shown in the top plot of Fig. 9.
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 42 / 54
Bursting in Nonlinear Systems
Bursting occurs when a small modulation in the driving currrent I + y is
introduced. The burst is triggered when the current perturbation, y ,
exceeds a given threshold.
Voltage Potential with Constant Current, I
3
-1
-2
-3
-4
0 50 100 150 200 250 300 350 400 450 500
-1
-2
-3
-4
0 50 100 150 200 250 300 350 400 450 500
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 45 / 54
Reachability in Nonlinear Control Systems
Let us consider the rigid body dynamics for a satellite controlled by
two gas jets.
It will be convenient to define an inertially fixed reference frame
defined a dextral set of 3 vectors, {e1 , e2 , e3 }, and a reference frame
attached to the satellite’s body defined by another dextral set of
vectors {r1 , r2 , r3 }.
We define the direction cosine matrix of the vehicle as a 3 by 3 matrix
R such that Rei = ri for i = 1, 2, 3. This matrix may be obtained
through the sequence of rotations {θ1 , θ2 , θ3 } about the body frame
{r1 , r2 , r3 } assuming that the body was originally aligned with the
inertial frame {e1 , e2 , e3 }. These angles are called Euler angles.
For i = 1, 2, 3 let ci denote cos(θi ) and si denote sin(θi ) then we
obtain the following explicit expression for the direction cosine matrix,
c2 c3 −c2 s3 s2
R = s1 s2 c3 + s3 c1 −s1 s2 s3 + c3 c1 −s1 c2
−c1 s2 c3 + s3 s1 c1 s2 s3 + c3 s1 c1 c2
Note that the orderNonlinear
of theControl
Dept. of Electrical Engineering (ND) rotations
Systems 1. can be changed.
- Introduction to Nonlinear Systems
EE60580-01 46 / 54
Reachability in Nonlinear Control Systems
The body’s velocity vector, ω is defined about the 3 body axes,
{r1 , r2 , r3 }.
The direction cosines and the angular velocities satisfy the following
set of ordinary differential equations
m
X
J ω̇ = S(ω)Jω + bi ui (17)
i=1
Ṙ = S(ω)R
where J is the inertia matrix, {bi }m i=1 , are vectors characterizing how
the gas jets, ui , for i = 1, 2, 3 impact the body’s angular acceleration,
ω̇, and
0 ω3 −ω2
S(ω) = −ω3 0 ω1
ω2 −ω1 0
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 47 / 54
Reachability in Nonlinear Control Systems
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 48 / 54
Reachability in Nonlinear Control Systems
We are more interested in how the three Euler angles change over
time since these are tied to the inertial frames. So rather than
characterizing the attitude’s time rate of change through its direction
cosine matrix (i.e., Ṙ = S(ω)R), we determine the time derivatives
for the Euler angles θi , for i = 1, 2, 3.
For the 1 − 2 − 3 sequence of body rotations it can be shown that (?,
?)
c2 0 s2
θ̇ = s2 s1 /c1 1 −c2 s1 /c1 ω (18)
−s2 /c1 0 c2 /c1
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 49 / 54
Reachability in Nonlinear Control Systems
For this example, we will see whether or not the origin is reachable
from an initial state where θ1 = −0.3, θ2 = θ3 = 0, and
ω1 = ω2 = ω3 = 0 using only two gas jets aligned with the vehicle’s
pitch and yaw axes. We’ll assume that the inertia matrix is
J = diag(0.1, 1.0, 1.0).
So the vehicle is starting out at rest aligned with the reference frame
but with a roll angle of set of −0.3 radians. Since the two gas jets are
aligned to the pitch and yaw axis then in equation (17) we know
m = 2, b1 = [0, 1, 0]T and b2 = [0, 0, 1]T .
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 50 / 54
Reachability in Nonlinear Control Systems
Let us first look at the linearization of this system about the set point
ω = 0 and θ = 0. We let the linearized system’s state vector be
z1 = ω1 , z2 = ω2 , z3 = ω3 , z4 = θ1 , z5 = θ2 , and z6 = θ3 .
It can be readily shown that for this fixed point the linearized
system’s state equations are
ż1 0 0 0 0 0 0 z1 0 0
ż2
0 0 0 0 0 0
z2
1 0
ż3
= 0 0 0 0 0 0 z3
+ 0 1 u1
u2 = Az + Bu
ż4
1 0 0 0 0 0
z4
0 0
ż5 0 1 0 0 0 0 z5 0 0
ż6 0 0 1 0 0 0 z6 0 0
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 51 / 54
Reachability in Nonlinear Control Systems
rank A AB A2 · · · A5 B = 4 < 6
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 52 / 54
Reachability of Nonlinear Control Systems
Let us consider the following control sequence
p t−0.1 − p t−1.8 − p t−3.1 t−5.25
0.4 0.4 0.4 +p 0.4
u=
p t−0.1 t−1.8 t−6.1 t−7.725
0.4 − p 0.4 − p 0.4 + p 0.4
where p(t) = 1 for 0 < t < 1 and is zero elsewhere.
1
u1
0.5 Pitch Control Jet
0
-0.5
-1
0 5 10 15
-0.5
-1
0 5 10 15
Figure: Gas jet commands used to null the roll angle with only pitch and yaw
control
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 53 / 54
Reachability in Nonlinear Control Systems
When both the pitch and yaw rates accerate at the same time, there is an
induced roll rate which we will null out the initial roll angle. We can then
use the pitch and yaw jets to then return the other angles to zero. So even
though the origin is not reachable from the initial attitude using the
linearized system, it is reachable using the original nonlinear dynamics.
50
roll axis
-50
0 5 10 15
50
pitch axis
-50
0 5 10 15
50
yaw axis
-50
0 5 10 15
Dept. of Electrical Engineering (ND) Nonlinear Control Systems 1. - Introduction to Nonlinear Systems
EE60580-01 54 / 54