単純なPIDアプリケーション、または効率的なアルゴリズムを必要とする高速制御アプリケーション用のPIDアルゴリズムを使用してPIDコントローラを実装します。このPIDアルゴリズムは、積分器アンチワインドアップ付きの制御出力レンジ制限機能と、PIDゲイン変更時のバンプレス制御出力機能を備えています。単一の制御ループを実装するには、このVIのDBLインスタンスを使用します。並列マルチループ制御を実装するには、DBL配列インスタンスを使用します。


icon

入力/出力

  • cdbl.png 目標値

    目標値は、制御されているプロセス変数の目標値を指定します。

  • cdbl.png プロセス変数

    プロセス変数には、制御されているプロセス変数の測定値を指定します。この値は、フィードバック制御ループのフィードバック値と同じです。

  • cnclst.png PIDパラメータ

    PIDパラメータは、各コントローラの更新されたPIDゲインパラメータが含まれているクラスタです。更新された値は、他のPID VIで使用できます。

  • cdbl.png Kp

    PIDコントローラを定義する式で、 KCは比例ゲインを表します。

  • cdbl.png Ti

    積分時間 (Ti, min) は、積分時間を分単位で指定します。デフォルトは 0.01 です。

  • cdbl.png Td

  • cdbl.png 手動制御

    手動制御には、自動?がFALSEのときの制御出力の値を指定します。

  • ccclst.png オプション

    オプションには、PID制御の設定を指定します。

  • cdbl.png 最小SP

    最小SPには、目標値の範囲の下限をパーセント値または工学単位で指定します。

  • cdbl.png 最大SP

    最高SPには、目標値の範囲の上限をパーセント値または工学単位で指定します。

  • cdbl.png 最小出力

    最小出力には、出力範囲の下限をパーセント値または工学単位で指定します。

  • cdbl.png 最大出力

    最高出力には、出力範囲の上限をパーセント値または工学単位で指定します。

  • cbool.png ホールド (F)

    保持には、コントローラがプロセス変数の変更を無視して、積分演算を停止するかどうかを指定します。保持をTRUEに設定すると、出力は前回の値を保持します。デフォルトはFALSEです。

  • cbool.png 自動 (T)

    TRUEはコントローラを自動制御、FALSEは手動制御します。 自動から手動への移行にはバンプレス切り替えが使用されます。

  • cbool.png 比例バンド (F)

    比例バンドは、PIDパラメータ入力の比例値が比例ゲイン(Kc)と比例バンド(PB)のどちらであるかを示します。デフォルトはFALSEで、比例値が比例ゲインであることを意味します。変換レートはKc = 100/PBです。

  • cbool.png 逆動作 (T)

    逆動作には、制御を逆動作と順動作のどちらにするかを指定します。デフォルトはTRUEで、入力が目標値より大きい場合に出力が減少することを意味します。

  • cdbl.png ベータ

    ベータには、目標値トラッキングの妨害拒否への相対強調を指定します。ほとんどのアプリケーションでデフォルト値の1が適切です。プロセス負荷の変更などの変動抑制を強調する場合には、より小さい値 (0~1の値) を使用します。

    VIは、この値を2つの自由度アルゴリズムで使用します。

  • cdbl.png 線形性

    線形性には、エラー応答の線形性を指定します。線形性の有効範囲は、0~1です。1の場合は通常の線形応答、0.1の場合はほぼ放物線状の応答になります。

    VIはこの値を非線形の誤差と非線形ゲイン係数の計算に使用します。

  • cdbl.png dt (s)

    dt (s) には、このVIが呼び出されるループサイクル時間または間隔を秒数で指定します。dt (s) がゼロ以下の場合、このVIは、分解能1 msの内蔵タイマーを使用して、前回呼び出し以降の時間を計算します。dt (s) が1 ms未満である必要がある場合は、値を明示的に指定してください。デフォルトは -1 です。

  • ci32.png 反復

    反復は、ループの現在の反復です。

    このパラメータをWhileループの反復端子に配線します。

  • idbl.png 出力

    出力は、制御するプロセスに適用するPIDアルゴリズムの制御出力を返します。このVIが無効な入力を受け取った場合、出力NaNを返します。

  • この多態性VIのDBL配列インスタンスは、マルチループPID制御アプリケーションで使用できます。この場合、プロセス変数入力により、出力配列の長さが決まります。他の入力配列は、プロセス変数入力と同じである必要はありません。このVIは、以下のように他の入力配列をプロセス変数入力と同じ長さに変更します。

    • 入力配列がプロセス変数入力よりも長い場合、入力配列はプロセス変数入力の長さで切り捨てられます。配列内の追加値は使用されません。
    • 入力配列がプロセス変数入力よりも短い場合は、サイズがプロセス変数入力のサイズに一致するまで、入力配列の最後の値が繰り返されます。

    こうすることで、各出力計算に使用する必要がある入力を、このVIに渡す配列で繰り返し指定する必要がなくなります。その代わりに、各出力計算に使用する単一値を配列に含めることができます。

    サンプルプログラム

    LabVIEWに含まれている以下のサンプルファイルを参照してください。

    • labview\examples\control\PID\General PID Simulator.vi