Digital Control Systems
Figure 13: Digital Control System
When using a digital system to control a CT system, the inputs
must be held constant for a particular amount of time. This is equivalent to using a zero-order hold for sampling period
. At an multiple of the sampling period
x(kT)=eAkTx(0)+0kTeA(kTτ)Bu(τ)dτ.\mathbf{x}(kT) = e^{AkT}\mathbf{x}(0) + \int_{0}^{kT}e^{A(kT-\tau)}B\mathbf{u}(\tau)d\tau.
If we look only at the output at times which are multiples of
(i.e what our CPU would see if we sampled the output), then we can find a relationship between the current sample and the next sample.
eAtx(kT)+x((k+1)T)=eA(k+1)τx(0)0kTeA((k+1)Tτ)Bu(τ)dτ+eA(k+1)τx(0)+0(k+1)TeA((k+1)Tτ)Bu(τ)dτ=kT(k+1)TeA((k+1)Tτ)Bu(τ)dτ=eA(k+1)TBu(kT)kT(k+1)TeAτdτ=Bu(kT)0TeAλdλ(λ=(k+1)Tτ)x((k+1)T)=eAtx(kT)+u(kT)0TBeAλdλ.\begin{aligned} -e^{At}\mathbf{x}(kT) + \mathbf{x}((k+1)T) &= -e^{A(k+1)\tau}\mathbf{x}(0) - \int_{0}^{kT} e^{A((k+1)T-\tau)}B\mathbf{u}(\tau) d\tau \\ &+ e^{A(k+1)\tau}\mathbf{x}(0) + \int_{0}^{(k+1)T} e^{A((k+1)T-\tau)}B\mathbf{u}(\tau) d\tau\\ &= \int_{kT}^{(k+1)T} e^{A((k+1)T-\tau)}B\mathbf{u}(\tau)d\tau = e^{A(k+1)T}B\mathbf{u}(kT)\int_{kT}^{(k+1)T}e^{-A\tau}d\tau\\ &= B\mathbf{u}(kT)\int_0^{T}e^{A\lambda}d\lambda \qquad (\lambda = (k+1)T-\tau)\\ \therefore \mathbf{x}((k+1)T) &= e^{At}\mathbf{x}(kT) + \mathbf{u}(kT)\int_{0}^{T}Be^{A\lambda}d\lambda.\end{aligned}
Looking only at the samples, the discrete system is
x[k+1]=Gx[k]+Hu[k]G=eATH=0TeAλBdλ.(17)\mathbf{x}[k+1] = G\mathbf{x}[k]+H\mathbf{u}[k] \qquad G = e^{AT} \quad H = \int_0^Te^{A\lambda}Bd\lambda. \qquad (17)
If we solve this recursive equation for a particular
, then we get
x[n]=Gnx[0]+i=0n1GiHu[i].(18)\mathbf{x}[n] = G^n\mathbf{x}[0] + \sum_{i=0}^{n-1}G^iH\mathbf{u}[i]. \qquad (18)
Notice that the stability of this system depends on the eigenvales of
and that
in order for it to be stable. If we want to find a transfer function of the system, then we can use the unilateral Z-transform.
zX(z)zx[0]=GX(z)+HU(z)X(Z)=(zIG)1(HU(z)+x[0]z)(19)\begin{aligned} zX(z) - zx[0] = GX(z) + HU(z)\\ X(Z) = (zI-G)^{-1}(HU(z)+x[0]z) \qquad (19)\end{aligned}
Notice that the poles of the system are still the eigenvalues of the
matrix. Thus any techniques for placing the poles of the
matrix are still valid, except we need to make sure the poles stay within the unit circle for stability instead of the left half plane. If we want to figure out how a system will respond to an input, we can use the final value theorem like we do in CT.

Theorem 15

For a transfer function
which has all poles in the unit circle, the final value of
is given by
limn=g[n]=limz1(z1)G(z).\lim_{n=\to\infty}g[n] = \lim_{z\to1}(z-1)G(z).
The other primary difference from CT is that in DT, a pole which is closer to the origin means a faster transient response.
Copy link