このDUTは以下の命令で使用することができます:
制御モード
PID演算の種類、オートチューニング設定(X = 8)を選択します。
16#X000PI-D制御 (微分先行型) 逆動作
16#X001PI-D制御 (微分先行型) 正動作
16#X002I-PD制御 (比例微分先行型) 逆動作
16#X003I-PD制御 (比例微分先行型) 正動作
I-PD制御は、PI-D制御に比べ、出力の変動は小さくなりますが、収束が遅くなります。
逆動作
プロセス値PVが下がると、出力値MVを上げる場合(例: 加熱)
正動作
プロセス値PVが上がると、出力値MVを上げる場合(例: 冷却)
オートチューニング
オートチューニングを実行する前に、適切な値を設定する必要があります。例:LowerLimitやUpperLimitを許容範囲内に設定します。
変数Controlの最上位ビット(MSB)に1がセットされると、オートチューニングが有効になります。PIDパラメータKp、Ti、Tdの値は、プロセスの応答を計測することによって最適値を算出し、Kp、Ti、Tdに格納します。その後、オートチューニングを終了します。(変数ControlのMSBには、0がセットされます。)
プロセスによってはオートチューニングが実行できない場合があります。パラメータControlの最上位ビットMSBは、オートチューニング中に0にリセットされ、オートチューニングを停止します。この場合、元のパラメータに従って動作します。
オートチューニングが有効な間は、出力値MVは上限値から下限値へ、そして最後に再び上限値へと、可能な限り少ない回数で切り替えられます。複数回オートチューニングを行っても、オートチューニングの進行度が0から1~5に変化しない場合は、制御間隔Tsを短くしてオートチューニングを再試行します。
オートチューニングの進行状況は、パラメータAT_Progressで0~5の範囲で示されます。
設定値(範囲0~10000)
ここでプロセスの制御量の目標値を設定します。この値は、測定範囲内の値を設定しなければいけません。アナログ入力を使用する場合、0から10000の範囲で使用できます。
測定値(範囲0~10000)
ここで測定されたプロセスの制御量の現在値を入力します。この値は、A/D変換ユニットなどを介して入力します。この値は、設定値およびプロセス値の範囲内で指定してください。
出力値(範囲0~10000)
PID演算の結果(出力値)を格納します。
出力下限値(範囲0~9999)
出力値の下限を0から9999の範囲内で指定します。値は上限値よりも小さい値を指定する必要があります。
出力上限値(範囲1~10000)
出力値の上限を1から10000の範囲内で指定します。値は下限値よりも大きい値を指定する必要があります。
比例ゲイン (範囲1~9999、0.1単位)
パラメータKpを指定してください。設定値×0.1が実際のKp の値になります。設定値の範囲は、1~9999(0.1~999.9秒で0.1秒単位で指定)です。オートチューニング完了後に、自動的にセットされます。
積分時間(範囲1~30000、0.1秒単位)
パラメータTiを指定してください。設定値×0.1が実際のTi の値になります。設定値の範囲は、1~30000 (0.1~3000秒で0.1秒単位で指定)です。オートチューニング完了後に、自動的にセットされます。
微分時間(範囲:0~10000、0.1秒単位)
PID演算に使用するパラメータ、微分時間Tdを指定してください。設定値×0.1が実際のTdの値になります。設定値の範囲は、0~10000 (0.1~1000秒で0.1秒単位で指定)です。オートチューニング完了後に、自動的にセットされます。
サンプリング時間(範囲1~6000、0.1秒単位)
PID演算を実行する周期を指定します。設定値×0.01が実際の制御周期 Ts になります。設定値の範囲は、1~6000(0.01~60.0秒で0.1秒単位で指定)です。
オートチューニング進行状況(範囲0~5)
制御モード指定Controlで、オートチューニングを指定している場合に、進行状況に応じて1~5の値が格納されます。
PIDコントローラが内部的に使用するワークエリア