# Control Systems/Block Diagrams

| The Wikibook of: Control Systems and Control Engineering | Table of Contents | All Versions | PDF Version |
| The Wikibook of: Control Systems and Control Engineering | ← Gain | Feedback Loops → | Glossary |
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 what it means:

## Systems in Series

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.
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:

### Series Transfer Functions

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.
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:

### Series State Space

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_{F}x_{F}+B_{F}u$
    $y_{F}=C_{F}x_{F}+D_{F}u$
System 2:
    $x_{G}'=A_{G}x_{G}+B_{G}y_{F}$
    $y_{G}=C_{G}x_{G}+D_{G}y_{F}$
And we can write substitute these equations together form the complete response of system H, that has input u, and output y$_G$:
[Series state equation]
    ${\begin{bmatrix}x_{G}'\\x_{F}'\end{bmatrix}}={\begin{bmatrix}A_{G}&B_{G}C_{F}\\0&A_{F}\end{bmatrix}}{\begin{bmatrix}x_{G}\\x_{F}\end{bmatrix}}+{\begin{bmatrix}B_{G}D_{F}\\B_{F}\end{bmatrix}}u$
[Series output equation]
    ${\begin{bmatrix}y_{G}\\y_{F}\end{bmatrix}}={\begin{bmatrix}C_{G}&D_{G}C_{F}\\0&C_{F}\end{bmatrix}}{\begin{bmatrix}x_{G}\\x_{F}\end{bmatrix}}+{\begin{bmatrix}D_{G}D_{F}\\D_{F}\end{bmatrix}}u$

## Systems in Parallel

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)]$

## State Space Model

The state-space equations, with non-zero A, B, C, and D matrices conceptually model the following system:
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:

### In the Laplace Domain

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

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

## Simplifying Block Diagrams

Block diagrams can be systematically simplified. Note that this table is from Schaum's Outline: Feedback and Controls Systems by DiStefano et al
| Transformation | Transformation | Equation |
| 1 | Cascaded Blocks | $Y=\left(P_{1}P_{2}\right)X$ |
| 2 | Combining Blocks in Parallel | $Y=P_{1}X\pm P_{2}X$ |
| 3 | Removing a Block from a Forward Loop | $Y=P_{1}X\pm P_{2}X$ |
| 4 | Eliminating a Feedback Loop | $Y=P_{1}\left(X\mp P_{2}Y\right)$ |
| 5 | Removing a Block from a Feedback Loop | $Y=P_{1}\left(X\mp P_{2}Y\right)$ |
| 6 | Rearranging Summing Junctions | $Z=W\pm X\pm Y$ |
| 7 | Moving a Summing Junction in front of a Block | $Z=PX\pm Y$ |
| 8 | Moving a Summing Junction beyond a Block | $Z=P\left(X\pm Y\right)$ |
| 9 | Moving a Takeoff Point in front of a Block | $Y=PX\,$ |
| 10 | Moving a Takeoff Point beyond a Block | $Y=PX\,$ |
| 11 | Moving a Takeoff Point in front of a Summing Junction | $Z=W\pm X$ |
| 12 | Moving a Takeoff Point beyond a Summing Junction | $Z=X\pm Y$ |

## External links

* SISO Block Diagram with transfer functions on ControlTheoryPro.com
| ← Gain | Control Systems | Feedback Loops → |