Overview

Part 15 - Summary

Dynamic systems

u(t)u(t) - Input signal

y(t)y(t) - Output signal

We usually represent our systems with ODEs of the form:

y˙+ay=bu.\dot{y} + ay = bu.

Feedback systems

Using (positive or negative) feedback, meaning our input depends on the output as well!

r(t)r(t) - Reference value/Setpoint

e(t)=r(t)−y(t)e(t) = r(t) - y(t) - Control error

Laplace Domain

F(s)F(s) - Controller

Guy(s)=Y(s)U(s)G_{uy}(s) = \dfrac{Y(s)}{U(s)} - Transfer function

L(s)=Guy(s)F(s)L(s) = G_{uy}(s) F(s) - Loop transfer function

Gry(s)=Y(s)R(s)=L(s)1+L(s)G_{ry}(s) = \dfrac{Y(s)}{R(s)} = \dfrac{L(s)}{1 + L(s)} - Closed-loop transfer function

Poles & Zeroes

Poles are given by 1+L(s)=01 + L(s) = 0 - the denominator in Gry(s)G_{ry}(s) to determine the stability of a system.

Zeroes are given by L(s)=0L(s) = 0 - the numerator in Gry(s)G_{ry}(s) to determine the system’s response

Controllers

P-controller

u(t)=Kp⋅e(t),U(s)=Kp⋅E(s).u(t) = K_p \cdot e(t), \quad U(s) = K_p \cdot E(s).

PI-controller

u(t)=Kp⋅e(t)+Ki∫0te(τ) dτ,U(s)=Kp⋅E(s)+Kis⋅E(s).\begin{align*} u(t) & = K_p \cdot e(t) + K_i \int_0^t e(\tau) \, d\tau, \newline U(s) & = K_p \cdot E(s) + \frac{K_i}{s} \cdot E(s). \end{align*}

PD-controller

u(t)=Kp⋅e(t)+Kd⋅d(e(t))dt,U(s)=Kp⋅E(s)+sKd⋅E(s).\begin{align*} u(t) & = K_p \cdot e(t) + K_d \cdot \dfrac{d(e(t))}{dt}, \newline U(s) & = K_p \cdot E(s) + sK_d \cdot E(s). \end{align*}

PID-controller

u(t)=Kp⋅e(t)+Ki∫0te(τ) dτ+Kd⋅d(e(t))dt,U(s)=Kp⋅E(s)+Kis⋅E(s)+sKd⋅E(s).\begin{align*} u(t) & = K_p \cdot e(t) + K_i \int_0^t e(\tau) \, d\tau + K_d \cdot \dfrac{d(e(t))}{dt}, \newline U(s) & = K_p \cdot E(s) + \frac{K_i}{s} \cdot E(s) + sK_d \cdot E(s). \end{align*}

Feedback systems with noise/disturbance

Remaining control error, e(∞)e(\infty) when:

r(t)=r0⋅σ(t),R(s)=r0s,set v(t)=0.r(t) = r_0 \cdot \sigma(t), \quad R(s) = \dfrac{r_0}{s}, \quad \text{set } v(t) = 0. lim⁡t→∞e(t)=lim⁡s→0s⋅E(s)=lim⁡s→0s⋅(R(s)−L(s)1+L(s)R(s))=lim⁡s→0s⋅(R(s)⋅(1−L(s)1+L(s)))=lim⁡s→0s⋅(R(s)⋅(1+L(s)−L(s)1+L(s)))=lim⁡s→0s⋅(R(s)⋅(11+L(s)))=lim⁡s→0s⋅(r0s⋅11+L(s))=r01+L(0)=r01+F(0)G(0).\begin{align*} \lim_{t \to \infty} e(t) & = \lim_{s \to 0} s \cdot E(s) \newline & = \lim_{s \to 0} s \cdot \left(R(s) - \dfrac{L(s)}{1 + L(s)} R(s)\right) \newline & = \lim_{s \to 0} s \cdot \left(R(s) \cdot \left(1 - \dfrac{L(s)}{1 + L(s)}\right)\right) \newline & = \lim_{s \to 0} s \cdot \left(R(s) \cdot \left(\dfrac{1 + L(s) - L(s)}{1 + L(s)}\right)\right) \newline & = \lim_{s \to 0} s \cdot \left(R(s) \cdot \left(\dfrac{1}{1 + L(s)}\right)\right) \newline & = \lim_{s \to 0} s \cdot \left(\dfrac{r_0}{s} \cdot \dfrac{1}{1 + L(s)}\right) \newline & = \dfrac{r_0}{1 + L(0)} \newline & = \boxed{\dfrac{r_0}{1 + F(0)G(0)}}. \end{align*}

Remaining control error, e(∞)e(\infty) when:

v(t)=v0⋅σ(t),V(s)=v0s,set r(t)=0.v(t) = v_0 \cdot \sigma(t), \quad V(s) = \dfrac{v_0}{s}, \quad \text{set } r(t) = 0. E(s)=R(s)−Y(s)E(s)=−Y(s)E(s)=−(G(s)⋅(V(s)+F(s)E(s)))E(s)=−G(s)V(s)−L(s)E(s)E(s)+L(s)E(s)=−G(s)V(s)E(s)(1+L(s))=−G(s)V(s)E(s)=−G(s)V(s)1+L(s)E(s)=−G(s)1+L(s)⋅V(s).\begin{align*} E(s) & = R(s) - Y(s) \newline E(s) & = -Y(s) \newline E(s) & = -\left(G(s) \cdot \left(V(s) + F(s) E(s)\right)\right) \newline E(s) & = -G(s) V(s) - L(s) E(s) \newline E(s) + L(s) E(s) & = -G(s) V(s) \newline E(s) \left(1 + L(s)\right) & = -G(s) V(s) \newline E(s) & = -\dfrac{G(s) V(s)}{1 + L(s)} \newline E(s) & = -\dfrac{G(s)}{1 + L(s)} \cdot V(s). \end{align*} lim⁡t→∞e(t)=lim⁡s→0s⋅E(s)=lim⁡s→0s⋅(−G(s)1+L(s))⋅V(s)=lim⁡s→0s⋅(−G(s)1+L(s))⋅v0s=lim⁡s→0−G(s)⋅v01+L(s)=−G(0)⋅v01+L(0).\begin{align*} \lim_{t \to \infty} e(t) & = \lim_{s \to 0} s \cdot E(s) \newline & = \lim_{s \to 0} s \cdot \left(-\dfrac{G(s)}{1 + L(s)}\right) \cdot V(s) \newline & = \lim_{s \to 0} s \cdot \left(-\dfrac{G(s)}{1 + L(s)}\right) \cdot \dfrac{v_0}{s} \newline & = \lim_{s \to 0} -\dfrac{G(s) \cdot v_0}{1 + L(s)} \newline & = \boxed{-\dfrac{G(0) \cdot v_0}{1 + L(0)}}. \end{align*}

To eliminate the remaining control error all together, meaning that e(∞)=0e(\infty) = 0 it means that F(0)=∞F(0) = \infty. In other words, we need a 1s\frac{1}{s} component (an integral in the time domain) in our controller.

Physical models

Physical models are often modelled with ODEs, for example:

my¨(t)=F(t)−ky(t)−by˙(t)my¨(t)+by˙(t)+ky(t)=F(t).\begin{align*} m\ddot{y}(t) & = F(t) - ky(t) - b\dot{y}(t) \newline m\ddot{y}(t) + b\dot{y}(t) + ky(t) & = F(t). \end{align*}

Taking the Laplace transform

ms2Y(s)+bsY(s)+kY(s)=LF(s)Y(s)(ms2+bs+k)=F(s),\begin{align*} ms^2 Y(s) + bs Y(s) + kY(s) & \stackrel{\mathcal{L}}{=} F(s) \newline Y(s) \left(ms^2 + bs + k\right) & = F(s), \end{align*} G(s)=Y(s)F(s)=1ms2+bs+k.\boxed{G(s) = \dfrac{Y(s)}{F(s)} = \dfrac{1}{ms^2 + bs + k}}.

We can also do this with state-space representation.

Rewriting our original ODE:

y¨(t)=−bmy˙(t)−kmy(t)+1mF(t).\ddot{y}(t) = -\frac{b}{m} \dot{y}(t) - \frac{k}{m} y(t) + \frac{1}{m} F(t).

Let x1=yx_1 = y and x2=y˙x_2 = \dot{y}.

This means that:

{x˙1=x2x˙2=−bmx2−kmx1+1mF.\begin{cases} \dot{x}_1 & = x_2 \newline \dot{x}_2 & = -\dfrac{b}{m} x_2 - \dfrac{k}{m} x_1 + \dfrac{1}{m} F. \end{cases}

Using Matrix notation:

x˙=[x˙1x˙2]=[01−km−bm][x1x2]+[01m]F,\dot{x} = \begin{bmatrix} \dot{x}_1 \newline \dot{x}_2 \end{bmatrix} = \begin{bmatrix} 0 & 1 \newline -\frac{k}{m} & -\frac{b}{m} \end{bmatrix} \begin{bmatrix} x_1 \newline x_2 \end{bmatrix} + \begin{bmatrix} 0 \newline \frac{1}{m} \end{bmatrix} F, y=[10][x1x2]+[0]F.y = \begin{bmatrix} 1 & 0 \end{bmatrix} \begin{bmatrix} x_1 \newline x_2 \end{bmatrix} + \begin{bmatrix} 0 \end{bmatrix} F.

Generalization

x˙=Ax+Buy=Cx+Du.\begin{align*} \dot{x} & = Ax + Bu \newline y & = Cx + Du. \end{align*} Guy(s)=Y(s)U(s)=C(sI−A)−1B+D.G_{uy}(s) = \dfrac{Y(s)}{U(s)} = C(sI - A)^{-1} B + D.

Characteristics equation

To find the poles of the system in matrix notation we use the fact that the denominator of the transfer function is:

det⁡(sI−A).\det(sI - A).

So, to find the poles we simply:

det⁡(sI−A)=0.\det(sI - A) = 0.

Reminder that:

A=[abcd],A = \begin{bmatrix} a & b \newline c & d \end{bmatrix}, det⁡(A)=ad−bc,\det(A) = ad - bc, A−1=1ad−bc[d−b−ca].A^{-1} = \dfrac{1}{ad - bc} \begin{bmatrix} d & -b \newline -c & a \end{bmatrix}.

NB: This rule only applies for 2x2 matrices.

State feedback

State feedback with reference gain K_r and feedback gain L.
Figure 1: State feedback with reference gain KrK_r and feedback gain LL.
u=Kr⋅r−Lx,y=Cx.u = K_r \cdot r - Lx, \quad y = Cx. x˙=Ax+Bu=Ax+B(Krr−Lx)sX(s)=AX(s)+B(KrR(s)−LX(s))sX(s)=AX(s)+BKrR(s)−BLX(s)sX(s)−AX(s)+BLX(s)=BKrR(s)(sI−A+BL)X(s)=BKrR(s)X(s)=(sI−A+BL)−1BKrR(s).\begin{align*} \dot{x} & = Ax + Bu = Ax + B(K_r r - Lx) \newline sX(s) & = AX(s) + B(K_r R(s) - LX(s)) \newline sX(s) & = AX(s) + BK_r R(s) - BLX(s) \newline sX(s) - AX(s) + BLX(s) & = BK_r R(s) \newline (sI - A + BL) X(s) & = BK_r R(s) \newline X(s) & = (sI - A + BL)^{-1} BK_r R(s). \end{align*} Y(s)=CX(s)Y(s)=C(sI−A+BL)−1BKrR(s)Gry(s)=Y(s)R(s)=C(sI−A+BL)−1BKr.\begin{align*} Y(s) & = CX(s) \newline Y(s) & = C (sI - A + BL)^{-1} B K_r R(s) \newline G_{ry}(s) & = \dfrac{Y(s)}{R(s)} = C (sI - A + BL)^{-1} B K_r. \end{align*}

We can determine KrK_r for a system with the knowledge that G(0)=1G(0) = 1

So:

Kr=1C(−A+BL)−1B.K_r = \dfrac{1}{C(-A + BL)^{-1} B}.

Poles are given by:

det⁡(sI−A+BL)=0.\det(sI - A + BL) = 0.

Stability

A system is stable if and only if its characteristic equation has roots in the LHP, meaning that ℜ(s)<0\Re(s) < 0.

For systems of order 2, this means that all the coefficients are >0> 0

For systems of order 3 or higher we use Routh–Hurwitz method.

Nyquist’s simplified criterion

To use Nyquist’s simplified criterion, L(s)L(s) can not have a pole in the RHP. If this criterion is met, plot L(jω)L(j\omega) for 0≤ω≤∞0 \leq \omega \leq \infty.

If L(jω)L(j\omega) passes through the negative real axis with (−1,0)(-1, 0) to its left, then the system is stable.

Nyquist’s criterion

If L(s)L(s) has a pole in the RHP, we can still use Nyquist’s criterion.

Z=P+N=Number of zeroes 1+L(s) has in RHP,P=Number of poles L(s) has in RHP,N=Number of turns L(jω) has around (−1,0) clockwise.\begin{align*} Z & = P + N = \text{Number of zeroes } 1 + L(s) \text{ has in RHP}, \newline P & = \text{Number of poles } L(s) \text{ has in RHP}, \newline N & = \text{Number of turns } L(j\omega) \text{ has around } (-1, 0) \text{ clockwise}. \end{align*}

Search

Essays, lecture notes, and research

Type to search the site.