# 數位控制
## Z-Transform
設 $x(k)$ 是 $x(t)$ 的離散時間,則 $x(k)$ 的單邊 Z-Transform 為
\begin{align*} x(z)=Z\{x(k)\}=\sum_{k=0}^\infty x(k)z^{-k},\tag{1} \end{align*}
1. Z-Transform 是**離散時間的函數做 Laplace transform 後,再做變數變換 $Z=e^{sT}$ 得到的**
2. $Z^{-k}$ 屬於時間延遲 ($Z=e^{sT}$ 中的 T 是取樣週期)
---
### 特性
- 離散時間函數乘上 $a^k$ ( k 想像成是 t )
假如 $Z\{x(k)\}=x(z)$ ,則
\begin{align*} Z\{a^kx(k)\}=x(a^{-1}z),\tag{2} \end{align*}
- 平移定理 (Shifting theorem)
\begin{align*} Z\{x(k-n)\}=z^{-n}x(z),\tag{3} \end{align*}
\begin{align*} Z\{x(k+n)\}=z^n[x(z)-\sum_{k=0}^{n-1}x(k)],\tag{4} \end{align*}
- 初值定理
\begin{align*} x(0)=\lim_{z\rightarrow\infty}x(z),\tag{5} \end{align*}
- 終值定理
\begin{align*} \lim_{k\rightarrow\infty}x(k) &= \lim_{z\rightarrow 1}(1-z^{-1})x(z),\tag{6} \\
&= \lim_{z\rightarrow 1}(z-1)x(z),\end{align*}
---
## Inverse Z-Transform
有三種方法
### **冪級數法 (Power series)**
以**降冪**形式做長除法,得到的級數可以對應到 $\sum_{k=0}^\infty x(k)z^{-k}$ ,級數的係數即為 $x(0),x(1),x(2)...$
### **部分分式展開法**
先將分式做部分分式展開,再對每個簡單的分式 inverse z-transform 。**展開前記得要先將分式除以 $z$ ,之後再乘回去**
eg.
$E(z)=\frac{0.1z(z+1)}{(z-1)^2(z-0.6)}$ ,求 $E(z)$ 之 inverse z-transform
\begin{align*}
\frac{E(z)}{z} &= \frac{1}{z-0.6}-\frac{1}{z-1}+\frac{0.5}{(z-1)^2}\\
E(z) &= \frac{-1}{z-1}+\frac{1}{z-2}\\
\text{so}\quad e(k) &= Z^{-1}\{E(z)\} = -1^{k-1}+2^{k-1}
\end{align*}
:::info
注意
若欲 inverse z-transform 的分式具有**共軛複數**之極點在 $z=P,P^*$ ,則將該分式無條件展開成 $\frac{K}{z-P}+\frac{K^*}{z-P^*}$ or $\frac{Kz}{z-P}+\frac{K^*z}{z-P^*}$ 的型式 (分子有沒有 $z$ 取決於對象分式的分子有無 $z$ )
Ex:
Given $E(z)=\frac{-3.894z}{z^2+0.6065}$ , find $e(k)$ .
$$\begin{aligned}
E(z)
&= \frac{-3.894z}{(z-j0.7788)(z+j0.7788)}\\
&=\frac{Kz}{(z-j0.7788)}+\frac{K^*z}{(z+j0.7788)}\\
\text{then}\quad K
&= \frac{z-j0.7788}{z} E(z) |_{z=j0.7788} = 2.5j=2.5\varepsilon^{j\frac{\pi}{2}}\\
P
&= j0.7788 = 0.7788\varepsilon^{j\frac{\pi}{2}}\\
\text{so}\quad E(z)
&= 2.5(\frac{z\varepsilon^{j\frac{\pi}{2}}}{z-0.78\varepsilon^{j\frac{\pi}{2}}}+\frac{z\varepsilon^{-j\frac{\pi}{2}}}{z-0.78\varepsilon^{-j\frac{\pi}{2}}})\\
e(k)
&= Z^{-1}\{E(z)\} = 2.5[\varepsilon^{j\frac{\pi}{2}}(0.78\varepsilon^{j\frac{\pi}{2}})^k+\varepsilon^{-j\frac{\pi}{2}}(0.78\varepsilon^{j\frac{\pi}{2}})^k]\\
&= 5(0.78)^k(\frac{\varepsilon^{j(\frac{\pi}{2}+\frac{k\pi}{2})}+\varepsilon^{-j(\frac{\pi}{2}+\frac{k\pi}{2})}}{2})\\
&= 5(0.78)^k\cos{(\frac{\pi}{2}+\frac{k\pi}{2})}\\
&= 5(0.78)^k\sin{(\frac{k\pi}{2})}
\end{aligned}$$
:::
### **Inversion-formula method (利用餘數定理)**
>不要用,在 $s=0$ 會錯
$eg. E(z) = \frac{z}{(z-1)^2}, e(k) = ?$
> for multiple poles at $z=a$
$(residue)_{z=a}= \frac{1}{(m-1)!} \frac{\mathrm{d}^{m-1}}{\mathrm{d}z^{m-1}}[(z-a)^mE(z)z^{k-1}]|_{z=a}$
$\begin{aligned}
&E(z)z^{k-1}=\frac{z^k}{(z-1)^2} \\
&e(k) = (residue)_{z=1} \\
&= \frac{1}{(2-1)!} \frac{\mathrm{d}^{2-1}}{\mathrm{d}z^{2-1}}[(z-1)^2\frac{z^k}{(z-1)^2}]|_{z=1} \\
&= \frac{\mathrm{d}}{\mathrm{dz}}z^k|_{z=1} \\
&= k
\end{aligned}$
## 狀態方程式 State equation 的 Z-Transform
### 求 Transfer function
給一 State equation 如下:
$\begin{aligned}
x(k+1)=Ax(k)+Bu(k)\ \ \ \ \ &(1)\\
y(k)=Cx(k)+Du(k) \ \ \ \ \ &(2)\\
\end{aligned}$
* 對 (1) 做 z-transform ,假設$x(0)=0$
$\begin{aligned}
zx(z)-zx(0)&=Ax(z)+Bu(z)\\
(zI-A)x(z)&=Bu(z)\\
\Rightarrow x(z)&=(zI-A)^{-1}Bu(z)
\end{aligned}$
* 對 (2) 做 z-transform
$\begin{aligned}
y(z)&=Cx(z)+Du(z)\\
\end{aligned}$
* $G(z) = \frac{Y(z)}{U(z)} = C[zI-A]^{-1}B+D$
### State equation 的解
$\begin{aligned}
x(k+1)=Ax(k)+Bu(k)\ \ \ \ \ &(1)\\
y(k)=Cx(k)+Du(k) \ \ \ \ \ &(2)\\
\end{aligned}$
* 遞迴解法
$x(1) = Ax(0)+Bu(0) \\
x(2) = Ax(1)+Bu(1) = A^2x(0)+ABu(0)+Bu(1)\\
x(3) = A^3x(0)+A^2Bu(0)+ABu(1)+Bu(2)$
* z-transform 解法
>define the fundamental matrix
$\begin{aligned}
\Phi = A^k
&\Rightarrow x(k)=\Phi(k)x(0)+\sum_{j=0}^{k-1}\Phi(k-1-j)Bu(j)\\
&\Rightarrow y(k)=C\Phi(k)x(0)+C\sum_{j=0}^{k-1}\Phi(k-1-j)Bu(j)+Du(k)
\end{aligned}$
$eg.
A=\begin{bmatrix}
0 & 1\\
-2 & 3\\
\end{bmatrix},\Phi(k)=?$
$zI-A=\begin{bmatrix}
z & -1\\
2 & z+3\\
\end{bmatrix},det(zI-A)=(z+2)(z+1)\\
z(zI-A)^{-1}=\begin{bmatrix}
\frac{2z}{z+1}+\frac{-z}{z+2} & \frac{z}{z+1}+\frac{-3}{z+2}\\
\frac{2z}{z+1}+\frac{2z}{z+2} & \frac{-z}{z+1}+\frac{2z}{z+2}\\
\end{bmatrix}=z{\Phi(k)}\\
\Rightarrow \Phi(k)=z^{-1}z(zI-A)^{-1}=
\begin{bmatrix}
2(-1)^k-(-2)^k & (-1)^k-(-2)^k\\
-2(-1)^k+(-2)^k & -((-1)^k+2(-2)^k)\\
\end{bmatrix}$