モデルの作成と取り扱い    

離散時間モデル

離散時間モデルの作成は、離散時間モデルに対するサンプリング周期またはサンプル時間を設定しなければならないことを除いて、連続時間モデルを作成することと類似しています。サンプル時間を設定しないままにするには、-1を使います。

tf, zpk, ss, frdを使って、離散時間LTIモデルを設定するには、入力引数に希望するサンプル時間値Tsを単に付け加えるだけです。

たとえば、

は、サンプル時間0.1秒の離散時間伝達関数を作成し、

は、サンプル時間0.5秒の離散時間状態空間モデル

を設定します。ベクトルは、n番目のサンプルの状態ベクトル、入力ベクトル、出力ベクトルを表します。

形式的に、連続系のサンプル時間はTs = 0です。Ts = -1の値を用いて離散系のサンプル時間を設定しないままの状態にします。たとえば、つぎのようになります。

MATLABは、つぎの出力を行います。

モデルを作成する場合にサンプル時間を設定することを忘れても、LTIプロパティTsを再度設定することで、正しいものにすることができます。このプロパティの設定に関する詳細については、"サンプル時間"を参照してください。

離散時間TFモデルとZPKモデル

上に示したようにtfzpkを使って、離散時間TFモデルとZPKモデルを設定することができます。また、つぎのようにして、これらのモデルを簡単に設定することもできます。

  1. 変数zを、適切なサンプル時間をもつ特別な離散時間TFモデルまたはZPKモデルと定義します。
  2. zでの有理数表現として、直接TFまたはZPKモデルを入力します。

このアプローチは、有理数表現を使って連続時間のTFモデルまたはZPKモデルを記述した方法に対応しています。この手順は、"SISO伝達関数モデル""SISO零点/極/ゲインモデル"に記述されています。

たとえば、

は、つぎのコマンドと等価です。

同様に、

は、単入力2出力のZPKモデルを出力します。

つぎの事柄に注意してください。

DSP形式の離散時間伝達関数

デジタル信号処理(DSP)では、離散時間伝達関数をの有理表現として書き、分子と分母の係数を昇べき順で並べることが一般に行われています。たとえば、

の分子と分母は、それぞれ行ベクトル[1 0.5]および[1 2 3]として設定されます。分子と分母が異なる次元をもっている場合、この表現はtfによって仮定される"の降べき順"表現と矛盾します( "伝達関数モデル"、または、tfを参照してください)。たとえば、

は、伝達関数

を作成しますが、これは因子のみがと異なります。

そのような表現上の矛盾を回避するために、Control System Toolboxは、伝達関数のDSPに似た設定専用の独立した関数filtを用意しています。その構文は、サンプル時間未設定の離散伝達関数に対しては

となり、さらにサンプル時間Tsを設定する場合は、

となります。この関数はtfのようにTFオブジェクトを作成しますが、numdenは、 昇べき順で分子と分母をリストします。たとえば、

MATLABは、つぎの出力を行います。

また、filtを使用して、でMIMO伝達関数を設定することができます。この場合、tfに関しては、入力引数numおよびden は、行ベクトルのセル配列です(詳細は、"伝達関数モデル"を参照)。各行ベクトルは、の昇べき順表現に適合しなければなりません。


 周波数応答データ(FRD)モデル データ抽出