離散伝達関数

回路図エディタの離散伝達関数コンポーネントの説明。これは、各可能な入力に対するシステム出力を理論的に表す数学関数を表します。

コンポーネントアイコン

1離散伝達関数アイコン

説明

システムの離散伝達関数は、サンプリング時間Tsに従って離散化されたs領域における連続システムの離散表現である。

離散伝達関数の出力H(z)は次の式で計算されます。

ここで、m+1 と n+1 は分子と分母の係数の数です。伝達関数の状態の初期値はゼロに設定されます。

例えば、分子が[1]で分母が[1, -1]の場合、伝達関数は次のようになります。

すべてのシミュレーションは離散時間でシミュレートされ、Z領域がデフォルトです。 ドメイン係数は連続的に、あるいはS領域でも指定できます。係数がS領域で定義されている場合、以下のいずれかの式を用いてZ領域係数に変換されます。 離散化法:
  • 双線形、
  • オイラー、
  • 後方差分、および
  • ゼロ次ホールド。

離散化法

双線形
  • 連続系を離散系に変換するこの方法は、双線形変換、あるいはタスティン変換と呼ばれます。これは、s領域における左辺複素平面をz領域における単位円に写像します。つまり、連続系におけるすべての安定点に対して、双線形変換は離散系における安定点を返します。

    この方法では、次の近似を使用して、s 領域伝達関数を z 領域伝達関数に関連付けます。

オイラー
  • オイラー離散化法、または順方向離散化法では、現在の信号、時間ステップ、および信号の導関数の知識を使用して、現在の信号と次の信号間の傾きを近似します。

    これはシステムを離散化するための最も単純で、おそらく最も正確でない方法であり、安定した連続時間システムが不安定な離散時間システムにマッピングされる可能性があります。

    この方法では、次の近似を使用して、s 領域伝達関数を z 領域伝達関数に関連付けます。

後方差分
  • 後退オイラー法は、次の点を導関数の計算点として使用する点を除いて、前進オイラー法と似ています。

    この方法では、次の近似を使用して、s 領域伝達関数を z 領域伝達関数に関連付けます。

ゼロ次ホールド
  • ゼロ次ホールド法は、連続システムの離散化遅延を考慮します。この離散化法は、s領域システムとz領域システムを以下の近似で関連付けます。

ポート

  • 入力(入力)
    • 元の入力信号。
      • サポートされる型: uint、int、real。
      • ベクターサポート: はい。
  • 出力(アウト)
    • フィルタリングされた信号。
      • サポートされている型: uint、int、real、inherit。
        • o 出力タイプは、コンポーネントのパラメータ「信号出力タイプ」から設定されるか、信号処理回路から継承されます。
      • ベクターサポート: はい
        • ベクトルの長さは入力信号から継承されます。

プロパティ

  • 係数領域
    • 伝達関数を宣言する領域を選択します。このプロパティは、分子分母のプロパティで宣言された係数がS領域で定義されるか、Z領域で定義されるかを定義します。このプロパティで使用できる値は、Z領域またはS領域です。
  • 分子
    • 伝達関数の分子の係数を入力してください。これは、's' または 'z' の降順の Python リストとして宣言されています。
  • 分母
    • 伝達関数の分母の係数を入力してください。これは 's' または 'z' の降順の Python リストとして宣言され、分子よりも高い次数である必要があります。
  • 信号出力タイプ
    • コンポーネントの出力信号の型を選択します。このプロパティは、「real」、「int」、「uint」、「inherit」のいずれかに設定できます。
  • 離散化法
    • 離散化手法を選択します。このプロパティは、係数の領域プロパティが「s領域」に設定されている場合にのみ表示され、コンポーネントの分子と分母によって定義される連続時間伝達関数の離散化手法を定義します。

      使用可能な方法は、ゼロ次ホールド、前進オイラー法、後退オイラー法、および双線形法 (または Tustin) です。

  • 実行率
    • 希望する信号処理実行速度を入力してください。この値は、同じ回路内の他の信号処理コンポーネントと互換性がある必要があります。つまり、回路内で最も速い実行速度の倍数である必要があります。実行速度は最大4つまで指定できます。実行速度の指定には、小数(例:0.001)または指数値(例:1e-3)(秒単位)を使用できます。または、「inherit」と入力すると、入力を受け取るコンポーネントの実行速度に基づいて、コンポーネントに実行速度が割り当てられます。