差分方程式とは

さぶんほうていしき

離散時間のシステムの出力を、現在と過去の入力、および過去の出力の重み付きの和で表した式。例えば y[n] = x[n] + 0.5y[n − 1] は、1つ前の出力の半分を現在の入力に足す。右辺に過去の出力を含まないものはFIRフィルタで、過去の出力を含むもの(帰還があるもの)は、ふつうインパルス応答が無限に続くIIRフィルタになる。初期値を与えれば順に計算でき、そのままプログラムやハードウェアで実装できる。両辺をz変換すると、伝達関数 H(z) が得られる。

「差分方程式」は、1分野の2問の練習問題に出てきます(デジタル信号処理の基礎など)。

この用語の分野: デジタル信号処理の基礎

差分方程式の練習問題に挑戦

差分方程式 y[n] = x[n] + 0.5y[n − 1] で表されるシステムに、n = 0 から単位ステップ(n ≥ 0 で x[n] = 1)を入力した。y[−1] = 0 のとき、y[2] として正しいものはどれか。

  1. A1.75
  2. B1.875
  3. C2
答えと解説を見る

正解:A. 1.75

順に計算すると、y[0] = 1 + 0.5 × 0 = 1、y[1] = 1 + 0.5 × 1 = 1.5、y[2] = 1 + 0.5 × 1.5 = 1.75 です。このまま続けると y[n] = 2 − 0.5ⁿ となり、最終値 1/(1 − 0.5) = 2 に近づいていきます。過去の出力を使う(帰還がある)ので、インパルス応答 0.5ⁿ が無限に続くIIRフィルタです。

差分方程式 y[n] = x[n] + 0.5x[n − 1] + 0.25y[n − 1] で表されるシステムの伝達関数 H(z) = Y(z)/X(z) として正しいものはどれか。

  1. A(1 + 0.5z⁻¹)/(1 + 0.25z⁻¹)
  2. B(1 − 0.25z⁻¹)/(1 + 0.5z⁻¹)
  3. C(1 + 0.5z⁻¹)/(1 − 0.25z⁻¹)
答えと解説を見る

正解:C. (1 + 0.5z⁻¹)/(1 − 0.25z⁻¹)

1サンプルの遅れは、z変換では z⁻¹ を掛けることに当たるので、両辺をz変換すると Y(z) = X(z) + 0.5z⁻¹X(z) + 0.25z⁻¹Y(z) です。Y(z) の項を左辺に集めると (1 − 0.25z⁻¹)Y(z) = (1 + 0.5z⁻¹)X(z) となり、H(z) = (1 + 0.5z⁻¹)/(1 − 0.25z⁻¹) です。分子は入力の側、分母は出力の帰還の側の係数を表し、分母を0にする z = 0.25 が極、分子を0にする z = −0.5 が零点です。

「差分方程式」が出てくる問題(2問)

  1. 差分方程式 y[n] = x[n] + 0.5y[n − 1] で表されるシステムに、n = 0 から単位ステップ(n ≥ 0 で x[n] = 1)を入力した。y[−1] = 0 のとき、y[2] として正しいものはどれか。
  2. 差分方程式 y[n] = x[n] + 0.5x[n − 1] + 0.25y[n − 1] で表されるシステムの伝達関数 H(z) = Y(z)/X(z) として正しいものはどれか。

デジタル信号処理の基礎の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

関連する用語

インパルス応答 IIRフィルタ z変換 移動平均フィルタ FIRフィルタ 群遅延 高速フーリエ変換(FFT) 周波数分解能 スペクトル漏れ 畳み込み

用語集の一覧へ