Control Systems/Block Diagrams

From Wikibooks, open books for an open world
Jump to: navigation, search

When designing or analyzing a system, often it is useful to model the system graphically. Block Diagrams are a useful and simple method for analyzing a system graphically. A "block" looks on paper exactly how it sounds:

Systems in Series[edit]

When two or more systems are in series, they can be combined into a single representative system, with a transfer function that is the product of the individual systems.

Time Series Block.svg

If we have two systems, f(t) and g(t), we can put them in series with one another so that the output of system f(t) is the input to system g(t). Now, we can analyze them depending on whether we are using our classical or modern methods.

If we define the output of the first system as h(t), we can define h(t) as:

h(t) = x(t) * f(t)

Now, we can define the system output y(t) in terms of h(t) as:

y(t) = h(t) * g(t)

We can expand h(t):

y(t) = [x(t) * f(t)] * g(t)

But, since convolution is associative, we can re-write this as:

y(t) = x(t) * [f(t) * g(t)]

Our system can be simplified therefore as such:

Time Convolution Block.svg

Series Transfer Functions[edit]

If two or more systems are in series with one another, the total transfer function of the series is the product of all the individual system transfer functions.

S-Domain Series Block.svg

In the time domain we know that:

y(t) = x(t) * [f(t) * g(t)]

But, in the frequency domain we know that convolution becomes multiplication, so we can re-write this as:

Y(s) = X(s)[F(s)G(s)]

We can represent our system in the frequency domain as:

S-Domain Multiplication Block.svg

Series State Space[edit]

If we have two systems in series (say system F and system G), where the output of F is the input to system G, we can write out the state-space equations for each individual system.

System 1:

x_F' = A_Fx_F + B_Fu
y_F = C_Fx_F + D_Fu

System 2:

x_G' = A_Gx_G + B_Gy_F
y_G = C_Gx_G + D_Gy_F

And we can write substitute these equations together form the complete response of system H, that has input u, and output yG:


[Series state equation]

\begin{bmatrix}x_G' \\ x_F'\end{bmatrix} 
     = \begin{bmatrix}A_G & B_GC_F \\ 0 & A_F\end{bmatrix} 
       \begin{bmatrix}x_G \\ x_F\end{bmatrix} +
       \begin{bmatrix}B_GD_F \\ B_F\end{bmatrix}u


[Series output equation]

\begin{bmatrix}y_G \\ y_F\end{bmatrix} 
     = \begin{bmatrix}C_G & D_GC_F \\ 0 & C_F\end{bmatrix} 
       \begin{bmatrix}x_G \\ x_F\end{bmatrix} +
       \begin{bmatrix}D_GD_F \\ D_F\end{bmatrix}u

Systems in Parallel[edit]

S-Domain Parallel Block.svg

Blocks may not be placed in parallel without the use of an adder. Blocks connected by an adder as shown above have a total transfer function of:

Y(s) = X(s) [F(s) + G(s)]

Since the Laplace transform is linear, we can easily transfer this to the time domain by converting the multiplication to convolution:

y(t) = x(t) * [f(t) + g(t)]
S-Domain Addition Block.svg

State Space Model[edit]

The state-space equations, with non-zero A, B, C, and D matrices conceptually model the following system:

Typical State Space Model (General).svg

In this image, the strange-looking block in the center is either an integrator or an ideal delay, and can be represented in the transfer domain as:

\frac{1}{s} or \frac{1}{z}

Depending on the time characteristics of the system. If we only consider continuous-time systems, we can replace the funny block in the center with an integrator:

Typical State Space Model (CT).svg

In the Laplace Domain[edit]

The state space model of the above system, if A, B, C, and D are transfer functions A(s), B(s), C(s) and D(s) of the individual subsystems, and if U(s) and Y(s) represent a single input and output, can be written as follows:

\frac{Y(s)}{U(s)} = B(s)\left(\frac{1}{s - A(s)}\right)C(s) + D(s)

We will explain how we got this result, and how we deal with feedforward and feedback loop structures in the next chapter.

Adders and Multipliers[edit]

Some systems may have dedicated summation or multiplication devices, that automatically add or multiply the transfer functions of multiple systems together

Simplifying Block Diagrams[edit]

Block diagrams can be systematically simplified. Note that this table is from Schaum's Outline: Feedback and Controls Systems by DiStefano et al

Transformation Equation Block Diagram Equivalent Block Diagram
1 Cascaded Blocks Y=\left(P_1 P_2 \right) X Cascaded Blocks.svg Cascaded Blocks Equivalent.svg
2 Combining Blocks in Parallel Y=P_1 X \pm P_2 X Parallel Blocks.svg Parallel Blocks Equivalent 1.svg
3 Removing a Block from a Forward Loop Y=P_1 X \pm P_2 X Parallel Blocks Equivalent 2.svg
4 Eliminating a Feedback Loop Y=P_1 \left( X \mp P_2 Y \right) Feedback Loop.svg Feedback Loop Equivalent 1.svg
5 Removing a Block from a Feedback Loop Y=P_1 \left( X \mp P_2 Y \right) Feedback Loop Equivalent 2.svg
6 Rearranging Summing Junctions Z=W \pm X \pm Y Rearranging Summing Junctions 1.svg Rearranging Summing Junctions 2.svg
Rearranging Summing Junctions 3.svg
7 Moving a Summing Juction in front of a Block Z = P X \pm Y Moving Summing Junction in front of Block 1.svg Moving Summing Junction in front of Block 2.svg
8 Moving a Summing Juction beyond a Block Z = P \left( X \pm Y \right) Moving Summing Junction beyond Block 1.svg Moving Summing Junction beyond Block 2.svg
9 Moving a Takeoff Point in front of a Block Y= PX\, Moving Takeoff Point in front of Block 1.svg Moving Takeoff Point in front of Block 2.svg
10 Moving a Takeoff Point beyond a Block Y=PX\, Moving Takeoff Point beyond Block 1.svg Moving Takeoff Point beyond Block 2.svg
11 Moving a Takeoff Point in front of a Summing Junction Z=W \pm X Moving Takeoff Point ahead of a Summing Junction 1.svg Moving Takeoff Point ahead of a Summing Junction 2.svg
12 Moving a Takeoff Point beyond a Summing Junction Z=X \pm Y Moving Takeoff Point beyond a Summing Junction 1.svg Moving Takeoff Point beyond a Summing Junction 2.svg

External Sites[edit]

SISO Block Diagram with transfer functions on ControlTheoryPro.com

← Gain

Control Systems

Feedback Loops →