z変換
z変換(z-transform)は、離散時間信号(数列)を複素変数 $z$ の関数に変換する数学的手法です。連続時間のシステムにおけるラプラス変換の離散時間版に相当し、ディジタル信号処理や制御工学の分野で重要な役割を果たします。
両側z変換(Bilateral z-transform)は次のように定義されます。
$$X(z) = \mathcal{Z}\{x[n]\} = \sum_{n=-\infty}^{\infty} x[n] z^{-n}\tag{1}$$
-
- $x[n]$:離散時間信号($n$ は整数)
- $z$:複素変数($z = re^{j\omega}$)
- 収束領域:$X(z)$ が無限大に発散せず、値が収束するような $z$ の存在範囲。
実用(因果系システムなど)では、 $n < 0$ で $x[n] = 0$ となる片側z変換(Unilateral z-transform)がよく使われます。
$$X(z) = \sum_{n=0}^{\infty} x[n] z^{-n}\tag{2}$$
z変換の具体例
以下に簡単な例を示します。
単位インパルス信号
単位インパルス信号 \(\delta[n]\) を以下で定義します。
$$\delta[n]=\begin{cases}1 & (n=0),\\
0 & (n\neq 0)\end{cases}$$
z変換の定義に代入すると、
$$X(z)=\sum_{n=-\infty}^{\infty}\delta[n]z^{-n}$$
となります。\(n=0\) の項だけが残るため以下になります。
$$\mathcal{Z}\{\delta[n]\}=1$$
単位ステップ信号
単位ステップ信号 \(u[n]\) を以下で定義します。
$$u[n]=\begin{cases}1 & (n\geq 0),\\
0 & (n<0)\end{cases}$$
z変換の定義に代入すると、等比級数になるので、
$$X(z)=\sum_{n=0}^{\infty}z^{-n}=1+z^{-1}+z^{-2}+\cdots=\frac{z}{z-1}\tag{3}$$
この級数が収束する条件は $|z|>1$ になります。
差分方程式への応用
z変換の大きな利点は、差分方程式を代数方程式に変換できることです。例として、次の差分方程式を考えます。ここで、\(x[n]\) は入力信号、\(y[n]\) は出力信号、\(a\) は定数です。
$$y[n]-ay[n-1]=x[n]$$
初期静止を仮定して両辺をz変換すると、
$$Y(z)-az^{-1}Y(z)=X(z)$$$$Y(z)=\frac{1}{1-az^{-1}}X(z)$$
ここで、入力と出力の比を伝達関数 \(H(z)\) と定義すると以下になります。
$$H(z)=\frac{Y(z)}{X(z)}=\frac{1}{1-az^{-1}}=\frac{z}{z-a}\tag{4}$$
このように、時間領域での差分方程式を、z領域では伝達関数を用いて解析できます。
z変換の性質
z変換には、システム解析を容易にする数学的性質がいくつかあります。
- 線形性:$$\mathcal{Z}\{a x[n] + b y[n]\} = a X(z) + b Y(z)$$
- 時間シフト:
初期値がゼロの場合、時間を $k$ ステップ遅らせる操作は $z^{-1}$ を掛けることに対応します。$$x[n-k] \Longleftrightarrow z^{-k} X(z)\tag{5}$$ - 畳み込み(Convolution):
時間領域での畳み込み演算は、z領域での単純な積に変換されます。$$x[n] * y[n] \Longleftrightarrow X(z)Y(z)\tag{6}$$
(5)の導出
$k=1$ の場合を導出します。②について、1時刻遅れた信号 \(x[n-1]\) のz変換を考えます。
$$\mathcal{Z}\{x[n-1]\}=\sum_{n=0}^{\infty}x[n-1]z^{-n}$$
$k=n-1$ のように添字を置き換えると、
$$\mathcal{Z}\{x[n-1]\}=\sum_{k=-1}^{\infty}x[k]z^{-(k+1)}=z^{-1}\sum_{k=-1}^{\infty}x[k]z^{-k}$$$$=z^{-1}\Big(x[-1]z+\sum_{k=0}^{\infty}x[k]z^{-k}\Big)=x[-1]+z^{-1}X(z)$$
初期静止の場合、時刻 \(n<0\) において信号がゼロ $x[-1]=0$ となるため、時間シフトの式が得られます。
$$\mathcal{Z}\{x[n-1]\}=z^{-1}X(z)$$となるため、先ほどの式は、
ラプラス変換・フーリエ変換との関係
- ラプラス変換との関係:
連続時間のラプラス変換変数 $s$ とz変換の変数 $z$ は、$z = e^{sT}$($T$ はサンプリング周期)という関係で結ばれています。これは、連続時間から離散時間への写像(インパルス不変法など)の基礎となります。項目 ラプラス変換 z変換 対象 連続時間信号 \(x(t)\) 離散時間信号 \(x[n]\) 変換変数 \(s\) \(z\) 基本形 $$\int_{-\infty}^{\infty}x(t)e^{-st}\,dt$$ $$\sum_{n=-\infty}^{\infty}x[n]z^{-n}$$ 主な用途 微分方程式、連続制御 差分方程式、デジタル制御 - フーリエ変換との関係:
$z$ 平面上の単位円($z = e^{j\omega}$、$\vert{}z\vert{} = 1$)上のz変換は、離散時間フーリエ変換(DTFT)に一致します。
逆z変換
逆z変換(Inverse z-transform)は、複素変数 $z$ の関数 $X(z)$ から、元の離散時間信号(数列) $x[n]$ を復元する操作です。システム解析や制御工学において、伝達関数 $X(z)$ から実際の時間応答 $x[n]$(差分方程式の解など)を求めるために手法です。
逆z変換は、ブロムヴィッチ積分(Bromwich integral)または逆複素積分と呼ばれる周回積分によって定義されます。
$$x[n] = \mathcal{Z}^{-1}\{X(z)\} = \frac{1}{2\pi j} \oint_C X(z) z^{n-1} dz\tag{7}$$
-
- \(C\):収束領域内にある原点を囲む閉曲線
- \(X(z)\):z変換
- \(x[n]\):逆z変換によって得られる信号
逆z変換の計算方法
逆z変換の複素積分を直接解くのは繁雑であるため、いくつかの実用的な解法が使い分けられます。
べき級数展開法
$X(z)$ を $z^{-1}$ の多項式(べき級数)に展開する方法です。多項式の係数がそのまま数列 $x[n]$ の値になります。分母・分子を割り算(多項式の除法)することで、順次 $x[0], x[1], x[2], \dots$ を求めることができます。
$$X(z) = \sum_{n=0}^{\infty} x[n] z^{-n} = x[0] + x[1]z^{-1} + x[2]z^{-2} + \dots$$
例えば、(4) のz変換を考えます。
$$X(z)=\frac{1}{1-az^{-1}}=1+az^{-1}+a^2z^{-2}
+a^3z^{-3}+\cdots$$
一方、z変換の定義は以下であるため、
$$X(z)=\sum_{n=0}^{\infty}x[n]z^{-n}\tag{1}$$
両者の係数を比較すると、
$$\begin{aligned} x[0]&=1\\ x[1]&=a\\ x[2]&=a^2\\ x[3]&=a^3 \end{aligned}$$
したがって、単位ステップ信号 \(u[n]\) を使って以下のように表されます。
$$x[n]=a^n u[n]$$
部分分数分解法
制御工学や信号処理で頻繁に用いられる手法です。有理関数である $X(z)$(または $X(z)/z$)を簡単な分数の和に分解し、既知の変換公式(逆変換表)にあてはめて求めます。手順は以下になります。
- $X(z)/z$ または $X(z)$ を因数分解した形の和に変形する。
- 各項に対応する標準的な数列(例: $a^n u[n]$ など)の形に持ち込む。
例えば、次の関数を考えると、
$$X(z)=\frac{z}{(z-a)(z-b)}$$
これは以下のように部分分数分解することができます。
$$X(z)=\frac{A z}{z-a}+\frac{B z}{z-b}$$$$A=\frac{1}{a-b}\quad,\quad B=\frac{-1}{a-b}$$
ここで (3) の逆z変換(収束領域:$|z|>|a|$)は以下であるため、
$$\mathcal{Z}^{-1}\left\{X(z)\right\}=\mathcal{Z}^{-1}\left\{\frac{z}{z-a}\right\}=x[n]=a^n u[n]$$
これを利用すると、逆z変換は以下になります。
$$x[n]=\frac{a^n-b^n}{a-b}u[n]$$
留数定理
(7) の逆z変換の定義で複素積分の留数定理を利用します。ここで \(z_k\) は積分経路の内側にある極です。
$$x[n]=\sum_k\operatorname{Res}\left[X(z)z^{n-1},z_k\right]$$
極が単純極の場合、その留数は以下で計算できます。尚、積分経路の選択は収束領域(ROC)によって決まります。
$$\operatorname{Res}[F(z),z_k]=\lim_{z\to z_k}(z-z_k)F(z)$$
逆z変換の具体例
よく使われる基本的な変換対の例です($u[n]$ は単位ステップ関数)。
| z変換 \(X(z)\) | 逆z変換 \(x[n]\) |
| \(1\) | \(\delta[n]\) |
| \(\dfrac{z}{z-1}\) | \(u[n]\) |
| \(\dfrac{z}{z-a}\) | \(a^n u[n]\) |
| \(\dfrac{z}{(z-a)^2}\) | \(na^{n-1}u[n]\) |
| \(\dfrac{z}{z-a}-\dfrac{z}{z-b}\) | \((a^n-b^n)u[n]\) |


