8. 伝達関数と差分方程式
離散時間システムの伝達関数は、入力と出力の関係を\(Z\)領域で表現する関数である。これは、連続時間システムの伝達関数の概念と同様であるが、\(Z\)変換を用いて離散時間信号を扱う。離散時間システムの伝達関数は、入力と出力の\(z\)の多項式の比として定義される。伝達関数は、システムの周波数特性分析、システムの安定性解析などに用いられる。
差分方程式(Difference Equation)は、離散時間信号やデータをモデル化するために用いられる。連続時間の微分方程式に対応するもので、離散的な時間ステップでのシステムの挙動を表現する。差分方程式は、制御工学、信号処理、経済学、生態学などの様々な分野で利用される。
離散時間システムの伝達関数
LTIシステムのインパルス応答を\(h(n)\)として、入力\(x(n)\)を印可したときの応答\(y(n)\)は、畳み込み和により、$$y(n) = \sum_{k=-\infty}^{\infty} x(k) h(n-k)$$で表される。入力、出力、インパルス応答、それぞれの\(Z\)変換を\(X(z),\;\;Y(z),\;\;H(z)\)とすると、$$Y(z) = H(z) X(z)$$となる。この\(H(z)\)を離散時間システムの伝達関数という。伝達関数\(H(z)\)は、$$H(z) = \frac{Y(z)}{X(z)}$$なので、入力\(X(z)\)と出力\(Y(z)\)の比となっている。また、入力\(x(n)\)を単位インパルス\(\delta(n)\)とすると、\(\mathcal{Z}\{\delta(n)\} = 1\)なので、$$Y(z) = H(z)X(z) = H(z) \cdot 1 = H(z)$$となり、インパルス応答\(h(n)\)の\(Z\)変換が伝達関数と考えても良い。つまり、$$ h(n) \Leftrightarrow H(z) \\ H(z) = \sum_{n=0}^{\infty} h(n) z^{-n}$$である。
差分方程式と伝達関数
連続系の伝達関数は、システムを記述した微分方程式をラプラス変換して、入出力の比により求められた。一方、離散時間システムの伝達関数は、システムを記述した差分方程式を\(Z\)変換し、入出力の比をとることで求められる。一般に、離散時間システムの差分方程式は、$$y(n) = \sum_{k=0}^{M} a_k x(n-k) - \sum_{k=1}^{N} b_k y(n-k) \;\cdots\cdots(1)$$で表せる。この差分方程式は、現在の出力\(y(n)\)が、現在の入力\(x(n)\)と過去\(M\)個の入力と過去\(N\)個の出力の線形結合で得られることを意味している。初期条件が全てゼロ、つまり、\(y(n) = 0,\;\;n<0\)として、式(1)を\(Z\)変換すると、$$Y(z) = a_0 X(z) + a_1 X(z) z^{-1} + \cdots + a_M X(z) z^{-M} - ( b_1 Y(z) z^{-1} + b_2 Y(z) z^{-2} + \cdots b_N Y(z) z^{-N}) \\ (1 + b_1 z^{-1} + b_2 z^{-2} + \cdots b_N z^{-N} )Y(z) = (a_0 + a_1 z^{-1} + \cdots + a_M z^{-M}) X(z)$$となる。従って、伝達関数\(H(z)\)は、 入出力の比より、$$H(z) = \frac{Y(z)}{X(z)} = \frac{a_0 + a_1 z^{-1} + \cdots + a_M z^{-M}}{1 + b_1 z^{-1} + b_2 z^{-2} + \cdots b_N z^{-N} }\; \cdots\cdots(2)$$となる。
IIRとFIR
差分方程式を$$y(n) = x(n) + b y(n-1)$$とすると、その\(Z\)変換は、$$Y(z) = X(z) + b Y(z) z^{-1}$$となり、伝達関数は、$$H(z) = \frac{Y(z)}{X(z)} = \frac{1}{1 - b z^{-1}}$$となる。従って、そのインパルス応答は、\(H(z)\)の逆\(Z\)変換より、$$h(n) = b^n u(n) \; \cdots\cdots (3)$$となる。これより、\(|b| \ge 1 \)では、応答は発散するので、不安定なシステムとなる。\(|b| <1\)であれば、応答は収束するので安定なシステムとなる。
伝達関数\(H(z)\)の極と安定性の関係は、「離散時間システムの安定性」を参照して欲しい。
式(3)のシステムのインパルス応答では整数\(n\)には制限がないので、応答は無限に継続することになる。このようなシステムを無限インパルス応答(infinite impulse response:IIR)システムという。
これに対して、例えば、$$y(n) = a_0 x(n) + a_1 x(n -1) + a_2 x(n - 2)$$のシステムでは、伝達関数とインパルス応答は、$$H(z) = a_0 + a_1 z^{-1} + a_2 z^{-2} // h(n) = a_0 \delta(n) + a_1 \delta(n - 1) + a_2 \delta(n -2)$$となり、インパルス応答は、\(h(0) = a_0 ,\; h(1) = a_1 ,\; h(2) = a_2\)となる。つまり、インパルス応答は有限で、差分方程式の係数がインパルス応答となっている。このようなシステムを有限インパルス応答(finite impulse response:FIR)システムという。 また、式(1)で右辺の第2項が無いとき、つまり、すべての\(b_k\)がゼロのシステムを非再帰型(non recursive)、右辺第2項を1つでも含む場合を再帰型(recursive)という。