Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
Digital Controls & Digital FiltersLectures 15 & 16
M.R. Azimi, Professor
Department of Electrical and Computer EngineeringColorado State University
Spring 2017
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
Sampled Signal Flow Graph
Sampled Signal Flow Graph (SSFG) together with the Mason’s Gain Formulaprovide:
a Systematic approach for finding closed loop transfer function,
b Reliable for multi-loop and multi-sampler systems.
Steps
Draw original SFG (OSFG) from block diagram.
Write equations for all non-input nodes in OSFG as a function of inputvariables and take starred transform.Note: Actual inputs and outputs of samplers are considered as InputNodes.
Form sampled SFG (SSFG) and apply Mason’s gain to obtain transferfunction.
If desired to find C(s) or C(z,m), combine OSFG and SSFG by connectingoutput of samplers from SSFG to OSFG using branches with unity gain(Composite SFG or CSFG). Then apply Mason’s gain to CSFG for C(s) asoutput.
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
Sampled Signal Flow Graph-Cont.
Example 1Consider
Draw OSFG from block diagram:
Input nodes: R,E∗
Output nodes: E,CC = GE∗ star =⇒ C∗ = G∗E∗
E = R−HGE∗ star =⇒ E∗ = R∗ −HG∗E∗
Draw SSFG from these Eqs. and apply Mason’sgain:
SSFG
C∗(s) = G∗R∗
1+GH∗ =⇒ C(z) = G(z)R(z)
1+GH(z)
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
Sampled Signal Flow Graph-Cont.
To find C(s) and C(z,m) form CSFG (C(s) as output node):
C(s) = R∗(s)G(s)
1+GH∗(s)
Thus,C(z,m) = G(z,m)R(z)
1+GH(z)
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
Sampled Signal Flow Graph-Cont.
Example 2: Use SSFG method to find expressions for C(z), C(s) and C(z,m).
Find C(z), C(s) and C(z,m) using SSFG method.
Input: R,E∗
Non input: E,CC = R+G2E
∗ =⇒ C∗ = R∗ +G∗2E
∗
E = RG1 −HG2E∗ −HR =⇒ E∗ = RG1
∗ −HG2∗E∗ −HR∗
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
Sampled Signal Flow Graph-Cont.
From SSFG:
C∗ =(RG1
∗−HR∗)G∗
2+R∗(1+G2H∗)
1+G2H∗ =
R∗ +(RG1
∗−HR∗)G∗
2
1+G2H∗
C(z) = R(z) + (RG1(z)−HR(z))G2(z)
1+G2H(z)
From CSFG:
C(s) = R(1+G2H∗)+(RG1
∗−HR∗)G2
1+G2H∗
=⇒ C(s) = R(s) + (RG1∗−HR
∗)G2(s)
1+G2H∗
C(z,m) = R(z,m) +(
RG1(z)−HR(z)
1+G2H(z)
)G2(z,m)
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
Sampled Signal Flow Graph-Cont.
Example 3: Use SSFG method to find expressions for C(z), C(s) and C(z,m).
Note: This block diagram can be slightly simplified by removing one of thesamplers since
as A = DE∗ =⇒ A∗ = D∗E∗
Using this property, OSFG can be put together very easily.
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
Sampled Signal Flow Graph-Cont.
Inputs: R, E∗
Outputs: C, Y, EE = R
1+G2− D∗G1G2E
∗
1+G2
Y = R1+G2
+ D∗G1E∗
1+G2
C = RG2
1+G2+ D∗G1G2E
∗
1+G2
E∗ =[
R1+G2
]∗−D∗E∗
[G1G2
1+G2
]∗Y ∗ =
[R
1+G2
]∗+D∗E∗
[G1
1+G2
]∗C∗ =
[RG2
1+G2
]∗+D∗E∗
[G1G2
1+G2
]∗
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
Sampled Signal Flow Graph-Cont.
From SSFG
C∗ =D∗[
G1G21+G2
]∗[R
1+G2
]∗1+D∗
[G1G21+G2
]∗ +
[RG21+G2
]∗(1+D∗
[G1G21+G2
]∗)
1+D∗[
G1G21+G2
]∗or
C(z) =D(z)Z
[G1G21+G2
]Z[
R1+G2
]1+D(z)Z
[G1G21+G2
] + Z[
RG2
1+G2
]
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
Sampled Signal Flow Graph-Cont.
From CSFG and noting that we have two non-touching loops with gains
L11 = −G2 and L12 = −D∗[G1G2
1+G2
]∗, the ∆ of the CSFG will contain their
products L11L12 = G2D∗[G1G2
1+G2
]∗i.e.
∆ = 1− L11 − L12 + L11L12 = G2 +D∗[G1G2
1+G2
]∗+G2D
∗[G1G2
1+G2
]∗Thus C(s) is,
C(s) =RG2
(1+D∗
[G1G21+G2
]∗)+[
R1+G2
]∗D∗G1G2
1+G2+D∗[
G1G21+G2
]∗+G2D∗
[G1G21+G2
]∗
=[
RG2
1+G2
]+
[G1G21+G2
]D∗[
R1+G2
]∗1+D∗
[G1G21+G2
]∗and
C(z,m) = Zm
[RG2
1+G2
]+
Zm
[G1G21+G2
]D(z)Z
[R
1+G2
]1+D(z)Z
[G1G21+G2
]
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
State-Space Representation-Closed-Loop Systems
So far, we utilized the SSFG method to find closed-loop transfer function. Nowsuppose that the discrete-time version of the plant state equations are given by:{
x1(n+ 1) = A1x1(n) +B1u(n)c(n) = C1x1(n)
where x1(n) is the plant state vector (discrete). We want to find the stateequations for the typical closed-loop system below.
From transfer function D(z) = M(z)E(z) , we obtain discrete state equation for
digital controller.{x2(n+ 1) = A2x2(n) +B2e(n)m(n) = u(n) = C2x2(n)
where x2(n) is the state vector of digital controller (discrete).
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
State-Space Representation-Closed-Loop Systems
Note: Since both plant and controller are represented by discrete-time stateequations, one may ignore hold device and assume digital input/outputs.
Now augment these equations such that the input is the reference signal r(n)(discrete version) and output is c(n).
e(n) = r(n)− c(n)x1(n+ 1) = A1x1(n) +B1C2x2(n)x2(n+ 1) = A2x2(n) +B2(r(n)− c(n)) = A2x2(n)−B2C1x1(n) +B2r(n)
State-space equations for closed-loop system are:[x1(n+ 1)x2(n+ 1)
]︸ ︷︷ ︸
x(n+1)
=
[A1 B1C2
−B2C1 A2
]︸ ︷︷ ︸
A
[x1(n)x2(n)
]︸ ︷︷ ︸
x(n)
+
[0B2
]︸ ︷︷ ︸
B
r(n)
c(n) =[C1 0
]︸ ︷︷ ︸C
[x1(n)x2(n)
]
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
State-Space Representation-Closed-Loop Systems
Example: Consider the system below where D(z) = 11−0.9z−1 and
Gp(s) = 6.4(s+1)(s+0.2) .
a Find state equations of the plant and its discrete version,b State equations of closed-loop system.
First convert Gp(s) to state-space. Since real and distinct poles, apply PFE
Gp(s) = C(z)U(z) = 6.4
(s+1)(s+0.2) = −8s+1 + 8
s+0.2
Thus,
v(t) =
[−1 00 −0.2
]︸ ︷︷ ︸
Ac
v(t) +
[11
]︸ ︷︷ ︸
Bc
u(t)
c(t) =[−8 8
]︸ ︷︷ ︸Cc
v(t)
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
State-Space Representation-Closed-Loop Systems
We then convert these to discrete-time state equations using
A1 = eAcT = φc(T ) =
[e−T 0
0 e−0.2T
]=
[e−0.25 0
0 e−0.05
]B1 = A−1
c (A1 − I)Bc =
[0.210.25
]C1 = Cc x(n+ 1) =
[0.79 0
0 0.95
]x(n) +
[0.210.25
]u(n)
c(n) =[−8 8
]x(n)
For digital controller D(z) = U(z)E(z) = 1
1−0.9z−1 , difference equation is
u(n) = 0.9u(n− 1) + e(n)
M.R. Azimi Digital Control & Digital Filters
Closed-Loop Systems-Signal Flow Graph Closed-Loop Systems-State-Space Representation
State-Space Representation-Closed-Loop Systems
Draw state diagram of discrete version of plant and combine with SFG of digitalcontroller to form overall SFG. Then assign states.
x1(n+ 1) = 0.79x1(n) + 0.21u(n)x2(n+ 1) = 0.95x2(n) + 0.25u(n)x3(n+ 1) = 0.9x3(n) + e(n) (digital controller state i.e. x3(n) = u(n− 1))u(n) = x3(n+ 1) = 0.9x3(n) + e(n)e(n) = r(n)− 0.03c(n)c(n) = −8x1(n) + 8x2(n)e(n) = r(n) + 0.24x1(n)− 0.24x2(n)
x1(n+ 1) = 0.84x1(n)− 0.05x2(n) + 0.19x3(n) + 0.21r(n)x2(n+ 1) = 0.06x1(n) + 0.89x2(n) + 0.225x3(n) + 0.25r(n)x3(n+ 1) = 0.24x1(n)− 0.24x2(n) + 0.9x3(n) + r(n)c(n) = −8x1(n) + 8x2(n)
M.R. Azimi Digital Control & Digital Filters