You are on page 1of 6

Block Diagram Models, Signal Flow Graphs and Simplication Methods

Dynamic Systems and Control Lavi Shpigelman

Block Diagram Manipulation Rules


X1
G1

X2

G2

X3 =

X1

G2 G1

X3

X1 X1 + X2 X3 =

+
G

X3

X2

Block Diagram Models


Visualize input output relations Useful in design and realization of (linear) components Helps understand ow of information between internal
variables. X1

Block Diagram Manipulation Rules


G

X2 = X2

X1
G

X2

X2 X1 X1
G

Are equivalent to a set of linear algebraic equations


(of rational functions ).

X2

X1 =

G G-1

X2

Mainly relevant where there is a cascade of information


ow

X1

Block Diagram Manipulation Rules


X1
G

Block Diagram Reduction


(with SISO components)
H2 ! G4 G2

X3 X2

X1 + =
G-1

X3
U(s) +

X2 + G H

G1

+ +

G3

G4 H1

Y(s)

X2 = X1
(I+GH)-1G

X2

H3

Block Diagram Reduction


(with SISO components)
H2 U(s) + G1

Block Diagram Reduction


(with SISO components)
H2 ! G4 G2

G2

+ +

G3

G4 H1

Y(s)

U(s) +

G1

+ +

G3 G4 H1

Y(s)

H3

H3

Block Diagram Reduction


(with SISO components)
H2 ! G4 G2 G3 G4 !!!!!! 1-G3 G4H1 Y(s)

Block Diagram Reduction


(with SISO components)

U(s) +

G1

U(s) +

G1

G2 G3 G4 !!!!!!!!!!!! 1-G3 G4H1+ G2 G3H2

Y(s)

H3

H3

Block Diagram Reduction


(with SISO components)
H2 ! G4 G2 G3 G4 !!!!!! 1-G3 G4H1 Y(s)

Block Diagram Reduction


(with SISO components)

U(s) +

G1

U(s) +

G1G2 G3 G4 !!!!!!!!!!!! 1-G3 G4H1+ G2 G3H2

Y(s)

H3

H3

Block Diagram Reduction


(with SISO components)
x1 +

Block Diagram Vs. SFG

G H

x2

x1

x1

G(s)

x2

x2

H(s)

U(s)

G1 G2 G3 G4 !!!!!!!!!!!!!!!!!!!!!!! 1-G3 G4H1+ G2 G3H2+ G1 G2 G3 G4H3

Y(s)

Blocks Edges + junctions

Edges (aka branches) Vertices (aka nodes)

(representing transfer functions) (representing variables)

Signal Flow Graphs


Alternative to block diagrams Do not require iterative reduction to nd Can be used to nd the transfer function Look familiar to computer scientists (?)

Algebraic Eq representation
x = Ax + r
x1 = a11x1+a12x2+r1 x2 = a21x1+a22x2+r2
G11(s) u1(s) G21(s) G12(s) u2(s) G22(s) y1(s)

transfer functions (using Masons gain rule) between any two variables (not just the input and output).

y(s) = G(s)u(s)

y2(s)

Another SFG Example


a32

Denitions
y5

y2 = a12y1 + a32y3 y3 = a23y2 + a43y4 y4 = a24y2 + a34y3+a44y4 y5 = a25y2 + a45y4

a12 y1 y2 a32 a12 y1 y2 a23 y3 y4 y5 y3 a43 y4

a32 a12 y1 y2 a23 y3

a43 a34 y4 a24

a44

y5

a32 a12 y1 y2 a23 y3

a43 a34 y4 a24 a25

a44 a45 y5

Input: (source) has only outgoing branches Output: (sink) has only incoming branches Path: (from node i to node j) has no loops. Forward-path: path connecting a source to a sink Loop: A simple graph cycle. Path Gain: Product of gains on path edges Loop Gain: Product of gains on loop Loops: Loops that have no vertex Non-touching in common (and, therefore, no edge.)

Input / Output
Input (source) has only
outgoing edges
a32 a12 y1 y2 a23 y3

Masons Gain Rule (1956)


Given an SFG, a source and a sink, N forward paths between them and K loops, the gain (transfer function) between the source-sink pair is !Pk!k Tij = !!!! ! Pk is the gain of path k, ! is the graph determinant: ! = 1- !(all loop gains) + !(products of non-touching-loop gain pairs) - !(products of non-touching-loop gain triplets) + ... !k = ! of the SFG after removal of the kth forward path

Output (sink) has only


incoming edges

any variable can be

y2 1 a12 y1 y2

a32 a23 y3 1 y3

made into an output by adding a sink with 1 edge

Masons Rule for Simple Feedback loop


P1 = G(s) L1 = -G(s)H(s) ! = 1 - (-G(s)H(s)) !1 = 1 P1 !1 G(s) G(s) T(s) = !!! = !! = !!!!! ! ! 1+G(s)H(s)
G7 G8 x(s) 1 G1 G2 G3 G4 -H4 -H2 -H3 G5 -H1 G6 y(s)

A Feedback Loop Reduces Sensitivity To Plant Variations


x2

x1

x1

G(s)

x2

y(s)/u(s)=G/(1+GH)

u(s)

G(s)

y(s)

-H(s)

G=10000 y(s)/u(s)=10000/(1+10000*0.01)=99.01 G=20000 y(s)/u(s)=20000/(1+20000*0.01)=99.50

-H(s)

= 0.01

Forward paths: Feedback loops:


L1 = -G2G3G4G5H2 L4 = -G7H2G2 L7 = -G1G2G7G6H3

P1 = G1G2G3G4G5G6 P2 = G1G2G7G6 P3 = G1G2G3G4G8 L2 = -G5G6H1 L3 = -G8H1 L5 = -G4H4 L6 = -G1G2G3G4G5G6H3 L8 = -G1G2G3G4G8H3

Loops {3,4},{4,5} and {5,7} dont touch ! = 1-(L1+L2+L3+L4+L5+L6+L7+L8)+(L3L4+L4L5+L5L7) !1 = !3 = 1 , !2 = 1-L5 = 1 - G4H4


y(s) P1+P2!2+P3 T(s) = !! = !!!!!` x(s) !

You might also like