Introduction
In this part we’ll define controllers in the Laplace domain.
Let’s firstly cover feedback again.
N N N th-Order systems
In controls, we’ll often study system which can be described with differential equations. A N N N th-order system means we can describe said system with a N N N th-order differential equation.
We also say that the transfer function has degree N N N .
Feedback system
Let’s find the general transfer function for a feedback system, from r ( t ) r(t) r ( t ) to y ( t ) y(t) y ( t ) .
G ( s ) G(s) G ( s ) - System/Process
F ( s ) F(s) F ( s ) - Controller
R ( s ) R(s) R ( s ) - Reference value
U ( s ) U(s) U ( s ) - Input signal
Y ( s ) Y(s) Y ( s ) - Output signal
E ( s ) E(s) E ( s ) - Control error = R ( s ) − Y ( s ) = R(s) - Y(s) = R ( s ) − Y ( s )
Let G r y ( s ) = Y ( s ) R ( s ) G_{ry}(s) = \dfrac{Y(s)}{R(s)} G r y ( s ) = R ( s ) Y ( s )
Y ( s ) = G ( s ) U ( s ) . Y(s) = G(s) U(s). Y ( s ) = G ( s ) U ( s ) .
We know that:
U ( s ) = F ( s ) E ( s ) , E ( s ) = R ( s ) − Y ( s ) . U(s) = F(s) E(s), \quad E(s) = R(s) - Y(s). U ( s ) = F ( s ) E ( s ) , E ( s ) = R ( s ) − Y ( s ) .
Therefore:
U ( s ) = F ( s ) ( R ( s ) − Y ( s ) ) = F ( s ) R ( s ) − F ( s ) Y ( s ) . \begin{align*}
U(s) & = F(s)(R(s) - Y(s)) \newline
& = F(s)R(s) - F(s)Y(s).
\end{align*} U ( s ) = F ( s ) ( R ( s ) − Y ( s )) = F ( s ) R ( s ) − F ( s ) Y ( s ) .
Therefore:
Y ( s ) = G ( s ) ( F ( s ) R ( s ) − F ( s ) Y ( s ) ) = G ( s ) F ( s ) R ( s ) − G ( s ) F ( s ) Y ( s ) Y ( s ) + G ( s ) F ( s ) Y ( s ) = G ( s ) F ( s ) R ( s ) Y ( s ) ( 1 + G ( s ) F ( s ) ) = G ( s ) F ( s ) R ( s ) . \begin{align*}
Y(s) & = G(s)(F(s)R(s) - F(s)Y(s)) \newline
& = G(s)F(s)R(s) - G(s)F(s)Y(s) \newline
Y(s) + G(s)F(s)Y(s) & = G(s)F(s)R(s) \newline
Y(s)(1 + G(s)F(s)) & = G(s)F(s)R(s).
\end{align*} Y ( s ) Y ( s ) + G ( s ) F ( s ) Y ( s ) Y ( s ) ( 1 + G ( s ) F ( s )) = G ( s ) ( F ( s ) R ( s ) − F ( s ) Y ( s )) = G ( s ) F ( s ) R ( s ) − G ( s ) F ( s ) Y ( s ) = G ( s ) F ( s ) R ( s ) = G ( s ) F ( s ) R ( s ) .
Therefore:
G r y ( s ) = G ( s ) F ( s ) 1 + G ( s ) F ( s ) . G_{ry}(s) = \dfrac{G(s)F(s)}{1 + G(s)F(s)}. G r y ( s ) = 1 + G ( s ) F ( s ) G ( s ) F ( s ) .
Let’s denote G ( s ) F ( s ) G(s)F(s) G ( s ) F ( s ) as L ( s ) L(s) L ( s ) .
G r y ( s ) = L ( s ) 1 + L ( s ) . G_{ry}(s) = \dfrac{L(s)}{1 + L(s)}. G r y ( s ) = 1 + L ( s ) L ( s ) .
This describes the relation between r ( t ) r(t) r ( t ) and y ( t ) y(t) y ( t ) and their stability.
Feedback system
Pros:
y ( t ) y(t) y ( t ) can be equal to r ( t ) r(t) r ( t ) (with the right controller).
Can compensate for interference
Cons:
Definition 1 (Zeros and poles) G r y ( s ) G_{ry}(s) G r y ( s ) can be written as:
G r y ( s ) = B ( s ) A ( s ) . G_{ry}(s) = \dfrac{B(s)}{A(s)}. G r y ( s ) = A ( s ) B ( s ) . The zeros are given by the equation B ( s ) = 0 B(s) = 0 B ( s ) = 0 .
The poles are given by the equation A ( s ) = 0 A(s) = 0 A ( s ) = 0 .
We’ll see later on how zeros and the poles affect the stability of a system.
Controllers in Laplace
P-controller - u ( t ) = K p e ( t ) u(t) = K_p e(t) u ( t ) = K p e ( t )
I-controller - u ( t ) = K i ∫ 0 t e ( τ ) d τ u(t) = K_i \int_0^t e(\tau) \, d\tau u ( t ) = K i ∫ 0 t e ( τ ) d τ
PI-controller - u ( t ) = K p e ( t ) + K i ∫ 0 t e ( τ ) d τ u(t) = K_p e(t) + K_i \int_0^t e(\tau) \, d\tau u ( t ) = K p e ( t ) + K i ∫ 0 t e ( τ ) d τ
In Laplace:
P-controller - U ( s ) = K p E ( s ) U(s) = K_p E(s) U ( s ) = K p E ( s )
I-controller - U ( s ) = K i 1 s E ( s ) U(s) = K_i \dfrac{1}{s} E(s) U ( s ) = K i s 1 E ( s )
PI-controller - U ( s ) = K p E ( s ) + K i s E ( s ) U(s) = K_p E(s) + \dfrac{K_i}{s} E(s) U ( s ) = K p E ( s ) + s K i E ( s )
Let’s rewrite the PI controller a bit:
U ( s ) = K p E ( s ) + K i s E ( s ) = E ( s ) ( K p + K i s ) = E ( s ) ( K p ( 1 + K i K p ⋅ 1 s ) ) = E ( s ) ( K p ( 1 + 1 T i ⋅ s ) ) = E ( s ) ( K p ⋅ 1 + T i ⋅ s T i ⋅ s ) . \begin{align*}
U(s) & = K_p E(s) + \dfrac{K_i}{s} E(s) \newline
& = E(s) \left(K_p + \dfrac{K_i}{s}\right) \newline
& = E(s) \left(K_p\left(1 + \dfrac{K_i}{K_p} \cdot \dfrac{1}{s}\right)\right) \newline
& = E(s) \left(K_p\left(1 + \dfrac{1}{T_i \cdot s}\right)\right) \newline
& = E(s) \left(K_p \cdot \dfrac{1 + T_i \cdot s}{T_i \cdot s} \right).
\end{align*} U ( s ) = K p E ( s ) + s K i E ( s ) = E ( s ) ( K p + s K i ) = E ( s ) ( K p ( 1 + K p K i ⋅ s 1 ) ) = E ( s ) ( K p ( 1 + T i ⋅ s 1 ) ) = E ( s ) ( K p ⋅ T i ⋅ s 1 + T i ⋅ s ) .
Where T i = K p K i T_i = \dfrac{K_p}{K_i} T i = K i K p
Example 1 (Car with engine dynamics) Let’s add some engine dynamics:
F d ( s ) = K u 1 + T u ⋅ s ⋅ U ( s ) . F_d(s) = \dfrac{K_u}{1 + T_u \cdot s} \cdot U(s). F d ( s ) = 1 + T u ⋅ s K u ⋅ U ( s ) . Car dynamic:
G c a r ( s ) = K 1 + s T = 1 m s + b . G_{car}(s) = \dfrac{K}{1 + sT} = \dfrac{1}{ms + b}. G c a r ( s ) = 1 + s T K = m s + b 1 . From the differential equation (just like last time) we get:
Y ( s ) ( m s + b ) = K u 1 + T u ⋅ s ⋅ U ( s ) . Y(s)(ms + b) = \dfrac{K_u}{1 + T_u \cdot s} \cdot U(s). Y ( s ) ( m s + b ) = 1 + T u ⋅ s K u ⋅ U ( s ) . Let’s find transfer function from U ( s ) → Y ( s ) U(s) \to Y(s) U ( s ) → Y ( s ) .
G u y ( s ) = Y ( s ) U ( s ) = K u ( m s + b ) ( 1 + T u s ) . G_{uy}(s) = \dfrac{Y(s)}{U(s)} = \dfrac{K_u}{(ms + b)(1 + T_u s)}. G u y ( s ) = U ( s ) Y ( s ) = ( m s + b ) ( 1 + T u s ) K u . Given some values:
m = 10 3 k g m = 10^3\,\mathrm{kg} m = 1 0 3 kg
b = 200 N s / m b = 200\,\mathrm{Ns/m} b = 200 Ns/m
K u = 10 k N / r a d K_u = 10\,\mathrm{kN/rad} K u = 10 kN/rad
T u = 1 s T_u = 1\,\mathrm{s} T u = 1 s
G u y ( s ) = 10 4 ( 10 3 s + 200 ) ( 1 + s ) = … = 50 ( 1 + 5 s ) ( 1 + s ) . G_{uy}(s) = \dfrac{10^4}{(10^3s + 200)(1 + s)} = \ldots = \boxed{\dfrac{50}{(1 + 5s)(1 + s)}}. G u y ( s ) = ( 1 0 3 s + 200 ) ( 1 + s ) 1 0 4 = … = ( 1 + 5 s ) ( 1 + s ) 50 .
P-controller
Say that our controller was a P-controller.
Let’s find G r y ( s ) G_{ry}(s) G r y ( s ) .
L ( s ) = K p ⋅ G u y ( s ) L(s) = K_p \cdot G_{uy}(s) L ( s ) = K p ⋅ G u y ( s )
L ( s ) = 50 K p ( 1 + 5 s ) ( 1 + s ) . L(s) = \dfrac{50K_p}{(1 + 5s)(1 + s)}. L ( s ) = ( 1 + 5 s ) ( 1 + s ) 50 K p .
G r y ( s ) = 50 K p ( 1 + 5 s ) ( 1 + s ) 1 + 50 K p ( 1 + 5 s ) ( 1 + s ) = 50 K p ( 1 + 5 s ) ( 1 + s ) + 50 K p = 10 K p s 2 + 6 5 s + 1 5 + 10 K p . \begin{align*}
G_{ry}(s) & = \dfrac{\dfrac{50K_p}{(1 + 5s)(1 + s)}}{1 + \dfrac{50K_p}{(1 + 5s)(1 + s)}} \newline
& = \dfrac{50K_p}{(1 + 5s)(1 + s) + 50K_p} \newline
& = \dfrac{10K_p}{s^2 + \dfrac{6}{5}s + \dfrac{1}{5} + 10K_p}.
\end{align*} G r y ( s ) = 1 + ( 1 + 5 s ) ( 1 + s ) 50 K p ( 1 + 5 s ) ( 1 + s ) 50 K p = ( 1 + 5 s ) ( 1 + s ) + 50 K p 50 K p = s 2 + 5 6 s + 5 1 + 10 K p 10 K p .
Gradually increasing reference value
Say that we have r ( t ) = r 0 ⋅ σ ( t ) r(t) = r_0 \cdot \sigma(t) r ( t ) = r 0 ⋅ σ ( t )
This means:
R ( s ) = r 0 s . R(s) = \dfrac{r_0}{s}. R ( s ) = s r 0 .
Let’s study y ( ∞ ) y(\infty) y ( ∞ ) .
lim t → ∞ y ( t ) = lim s → 0 s Y ( s ) = lim s → 0 s ⋅ G r y ( s ) ⋅ R ( s ) = lim s → 0 s ⋅ 10 K p s 2 + 6 5 s + 1 5 + 10 K p ⋅ r 0 s = 10 K p 1 5 + 10 K p ⋅ r 0 . \begin{align*}
\lim_{t \to \infty} y(t) & = \lim_{s \to 0} sY(s) \newline
& = \lim_{s \to 0} s \cdot G_{ry}(s) \cdot R(s) \newline
& = \lim_{s \to 0} s \cdot \dfrac{10K_p}{s^2 + \dfrac{6}{5}s + \dfrac{1}{5} + 10K_p} \cdot \dfrac{r_0}{s} \newline
& = \dfrac{10K_p}{\dfrac{1}{5} + 10K_p} \cdot r_0.
\end{align*} t → ∞ lim y ( t ) = s → 0 lim s Y ( s ) = s → 0 lim s ⋅ G r y ( s ) ⋅ R ( s ) = s → 0 lim s ⋅ s 2 + 5 6 s + 5 1 + 10 K p 10 K p ⋅ s r 0 = 5 1 + 10 K p 10 K p ⋅ r 0 .
Thus
lim t → ∞ y ( t ) = 10 K p 1 5 + 10 K p ⋅ r 0 < r 0 . \lim_{t \to \infty} y(t) = \dfrac{10K_p}{\dfrac{1}{5} + 10K_p} \cdot r_0 < r_0. t → ∞ lim y ( t ) = 5 1 + 10 K p 10 K p ⋅ r 0 < r 0 .
This means that, a P-controller will never be enough for a system to get an output that is exactly the same as the reference value.
Let’s see how a PI-controller behaves.
Example 2 (PI-controller) If we use the same system.
G r y ( s ) G_{ry}(s) G r y ( s ) is a 2nd order transfer function. (The denominator is a polynomial of degree 2).
The general formula for 2nd order transfer functions can be written as:
G r y ( s ) = K ω n 2 s 2 + 2 ζ ω n s + ω n 2 . G_{ry}(s) = \dfrac{K \omega^2_n}{s^2 + 2 \zeta \omega_n s + \omega^2_n}. G r y ( s ) = s 2 + 2 ζ ω n s + ω n 2 K ω n 2 . Where:
ω n \omega_n ω n - Natural frequency
K K K - Gain
ζ \zeta ζ - Damping ratio
So, in the case G r y ( s ) = 10 K p s 2 + 6 5 s + 1 5 + 10 K p G_{ry}(s) = \dfrac{10K_p}{s^2 + \dfrac{6}{5}s + \dfrac{1}{5} + 10 K_p} G r y ( s ) = s 2 + 5 6 s + 5 1 + 10 K p 10 K p
We can rewrite it with:
ω n = 0.2 + 10 K p , K = 10 K p 0.2 + 10 K p , ζ = 1.2 2 0.2 + 10 K p . \omega_n = \sqrt{0.2 + 10 K_p}, \quad K = \dfrac{10K_p}{0.2 + 10 K_p}, \quad \zeta = \dfrac{1.2}{2 \sqrt{0.2 + 10 K_p}}. ω n = 0.2 + 10 K p , K = 0.2 + 10 K p 10 K p , ζ = 2 0.2 + 10 K p 1.2 . Back to the PI-controller example.
G r y ( s ) = L ( s ) 1 + L ( s ) . G_{ry}(s) = \dfrac{L(s)}{1 + L(s)}. G r y ( s ) = 1 + L ( s ) L ( s ) . We know that:
L ( s ) = F ( s ) G ( s ) . L(s) = F(s) G(s). L ( s ) = F ( s ) G ( s ) . We know:
F ( s ) = K p ( 1 + T i s T i s ) , G ( s ) = 50 ( 1 + 5 s ) ( 1 + s ) . F(s) = K_p \left(\dfrac{1 + T_i s}{T_i s} \right), \quad G(s) = \dfrac{50}{(1 + 5s)(1 + s)}. F ( s ) = K p ( T i s 1 + T i s ) , G ( s ) = ( 1 + 5 s ) ( 1 + s ) 50 . From G ( s ) G(s) G ( s ) we can see that we have two poles. One pole is “fast”, T = 1 s T = 1\,\mathrm{s} T = 1 s ( 1 + s ) (1 + s) ( 1 + s ) . The other “slow”, T = 5 s T = 5\,\mathrm{s} T = 5 s ( 1 + 5 s ) (1 + 5s) ( 1 + 5 s ) .
If we choose T i = 5 s T_i = 5\,\mathrm{s} T i = 5 s , then:
F ( s ) = K p ( 1 + 5 s 5 s ) . F(s) = K_p \left(\dfrac{1 + 5s}{5s} \right). F ( s ) = K p ( 5 s 1 + 5 s ) . Which means:
L ( s ) = K p ( 1 + 5 s 5 s ) 50 ( 1 + 5 s ) ( 1 + s ) = 50 K p ( 5 s ) ( 1 + s ) . \begin{align*}
L(s) & = K_p \left(\dfrac{1 + 5s}{5s} \right) \dfrac{50}{(1 + 5s)(1 + s)} \newline
& = \dfrac{50 K_p}{(5s)(1 + s)}.
\end{align*} L ( s ) = K p ( 5 s 1 + 5 s ) ( 1 + 5 s ) ( 1 + s ) 50 = ( 5 s ) ( 1 + s ) 50 K p . Which means:
G r y ( s ) = L ( s ) 1 + L ( s ) = 50 K p ( 5 s ) ( 1 + s ) 1 + 50 K p ( 5 s ) ( 1 + s ) = 50 K p ( 5 s ) ( 1 + s ) + 50 K p = 10 K p s 2 + s + 10 K p . \begin{align*}
G_{ry}(s) & = \dfrac{L(s)}{1 + L(s)} \newline
& = \dfrac{\dfrac{50 K_p}{(5s)(1 + s)}}{1 + \dfrac{50 K_p}{(5s)(1 + s)}} \newline
& = \dfrac{50 K_p}{(5s)(1 + s) + 50 K_p} \newline
& = \dfrac{10 K_p}{s^2 + s + 10 K_p}.
\end{align*} G r y ( s ) = 1 + L ( s ) L ( s ) = 1 + ( 5 s ) ( 1 + s ) 50 K p ( 5 s ) ( 1 + s ) 50 K p = ( 5 s ) ( 1 + s ) + 50 K p 50 K p = s 2 + s + 10 K p 10 K p . If we now study:
lim t → ∞ y ( t ) = lim s → 0 s ⋅ Y ( s ) = lim s → 0 s ⋅ G r y ( s ) R ( s ) = lim s → 0 s ⋅ 10 K p s 2 + s + 10 K p ⋅ r 0 s = lim s → 0 10 K p s 2 + s + 10 K p ⋅ r 0 = 10 K p 10 K p ⋅ r 0 = r 0 . \begin{align*}
\lim_{t \to \infty} y(t) & = \lim_{s \to 0} s \cdot Y(s) \newline
& = \lim_{s \to 0} s \cdot G_{ry}(s) R(s) \newline
& = \lim_{s \to 0} s \cdot \dfrac{10 K_p}{s^2 + s + 10 K_p} \cdot \dfrac{r_0}{s} \newline
& = \lim_{s \to 0} \dfrac{10 K_p}{s^2 + s + 10 K_p} \cdot r_0 \newline
& = \dfrac{10 K_p}{10 K_p} \cdot r_0 \newline
& = \boxed{r_0}.
\end{align*} t → ∞ lim y ( t ) = s → 0 lim s ⋅ Y ( s ) = s → 0 lim s ⋅ G r y ( s ) R ( s ) = s → 0 lim s ⋅ s 2 + s + 10 K p 10 K p ⋅ s r 0 = s → 0 lim s 2 + s + 10 K p 10 K p ⋅ r 0 = 10 K p 10 K p ⋅ r 0 = r 0 . So, we see that a PI-controller gets us exactly the reference value.