ドライバのPID設定


ドライバのPID設定


Please Wait

PIDの基礎

PID回路は制御ループフィードバックコントローラとしてよく用いられており、さまざまなサーボ回路として広く使われています。 PIDとは、それぞれ比例(Proportional)、積分(Integral)、微分(Derivative)の頭文字で、PID回路の3つの制御設定を表しています。 サーボ回路の役割は、システムを長時間所定値(目標値)に保持することです。 PID回路は、出力を目標値に保持するため、主に目標値と出力値の差をエラー信号として発生させることにより、システムをアクティブ制御しています。 3つの制御は、時間依存型エラー信号に関連しています; 端的に言うと、次のように考えることができます。 比例は出力値のエラー、積分は過去の累積エラー、微分はエラーの予測によっています。 各制御の結果は、その後回路の電流を調整する加重和にフィードされます(u(t))。 この出力は制御デバイスへ送られ、その値は回路へとフィードバックされ、回路の出力を目標値に到達させ保持するようアクティブ安定化の処理が行われます。 以下のブロック図は、PID回路の動作を簡略化したものです。 システム要求や要件によって、サーボ回路に1つもしくは複数の制御を使用することができます(例: P、I、PI、PD、PID)。

PID Diagram

PID回路の適正な制御設定によって、最小限のオーバーシュート(目標値超過)とリンギング(目標値振動)で、素早い応答速度を実現できます。 ここで半導体レーザの温度安定化に用いられる温度サーボを例にとってみましょう。 PID回路は、最終的には熱電冷却素子(TEC)への電流を自動制御します(多くの場合FET回路上のゲート電圧の制御を通して行われます)。 この例では、電流は操作変数(MV)とします。 サーミスタは半導体レーザの温度モニタとして用いられ、サーミスタにかかる電圧を処理変数(PV)とします。 目標値(SP)の電圧は指定の温度に対応して設定します。 エラー信号e(t)は、SPとPVの差分を表します。 PIDコントローラはエラー信号を発生し、目標値に到達するようMVを変更させます。 例えばもし、e(t)の状態が半導体レーザの過熱を示せば、回路はTECを通してさらに電流を流すよう促します(比例制御) 。 比例制御はe(t)に比例するので、半導体レーザを十分な速度で冷却できないかもしれません。 その場合、累積エラーから判断し、目標値へ到達させようと出力を調整し、回路はTECを介してさらに電流量を増加させます(積分制御)。 SPに到達すると[e(t)が0に近づくと]、回路はSPに達するのを見越してTECを通して電流を減少させます(微分制御)。

PID回路は適切な制御を保証するものではないことにご注意ください。 不適切なPID制御の設定は、回路を著しく振動させたり、制御の不安定を引き起こす可能性があります。 正しい動作は、PIDの適正な調整によって得られます。

PID理論

PID制御回路u(t)の出力を得る方程式は以下となります;

Equation 1

Kp= 比例利得
Ki = 積分利得
Kd =微分利得
e(t)=SP-PV(t)

ここから制御ユニットは数学的定義によって定義づけることができ、個々の制御についてもう少し詳しく考察することができます。 比例制御は、エラー信号に比例します。これは、回路が発生させたエラー信号に対する直接的な応答です:

Equation 2

より大きな比例利得は、より大きな変化をエラーへの応答にもたらし、コントローラがシステムの変化に応答できる速度に影響を与えます。 比例利得の値が高いと回路の応答を素早く行えますが、あまりに高い場合は、SP値に対して振動を引き起こしてしまいます。 値が低すぎる場合は、回路はシステム変更への応答性が悪くなります。

積分制御は、比例利得よりさらに1段階ステップが進み、エラー信号の大きさだけでなく、エラーの期間にも比例しています。

Equation 3

積分制御は、比例制御のみによる定常誤差を除去するとともに、回路の応答速度向上に非常に高い効果をもたらします。 積分制御は、未修正の過去のエラーを合計し、エラーにKiを乗算することで、積分応答を出します。 従ってわずかな継続エラーに対しても、大規模な集積積分応答を実現することが可能です。 しかしながら、積分制御の高速応答に起因して、高い利得値による目標値の著しい超過が生じ、振動と不安定性を引き起こします。 低すぎる場合、回路のシステム変更への応答速度が著しく低下します。

微分制御は、比例制御および積分制御から予測される目標値超過とリンギングを低減させます。 回路が時間の経過とともにどう変化しているか(エラー信号の微分から判断)素早く決定し、Kdを乗算することで微分応答を出します。

Equation 4

比例や積分制御と異なり、微分制御は回路の応答を減速させます。 そのため、積分制御や比例制御によって引き起こされた振動を抑制したり、超過を部分的に補うことができます。 高い利得値は回路の応答性にかなりの減速を生じさせ、ノイズや高周波振動が発生しやすくなります(回路が迅速に応答するには低速すぎるため)。 低すぎると、回路はSP値を超過する傾向にあります。しかしながら、SP値を著しく超過するケースは避けなければならず、そのためより高い微分利得(より低い比例利得とともに)が用いられます。 下記の図は、個々のパラメータの利得の増加による影響を示しています。

Parameter IncreasedRise TimeOvershootSettling TimeSteady-State ErrorStability
KpDecreaseIncreaseSmall ChangeDecreaseDegrade
KiDecreaseIncreaseIncreaseDecrease SignificantlyDegrade
KdMinor DecreaseMinor DecreaseMinor DecreaseNo EffectImprove (for small Kd)

チューニング

通常、適切なサーボ制御を得るために、P、I、Dの利得値は個々で調整する必要があります。 どのシステムに対してもどの値にするべき、といった決まった一連のルールがあるわけではありませんが、基本手順に沿ったチューニングは各々のシステムや環境に合わせるのに役立ちます。 概して、PID回路はSP値の超過をわずかに起こし、その後SP値に到達させるため素早く減衰するようにします。

手動による利得設定のチューニングは、PID制御設定において最もシンプルな方法です。 しかしながらこの手順はアクティブで行われ(PIDコントローラがオンとなり、システムに正しく接続されている)、完全に設定するには多少の経験を要します。 PIDコントローラを手動で調整するには、まず始めに積分および微分利得を0に設定します。 出力に振動が現れるまで、比例利得を上げてください。 比例利得はこの値の約半分の値に設定します。 比例ゲイン利得設定後は、任意のオフセットがシステムに合わせた適切なタイムスケールに修正されるまで積分利得を上げてください。 上げすぎた場合は、SP値の著しい超過と回路の不安定性が引き起こされます。 積分利得が設定されたら、次に微分利得を上げてください。 微分利得はオーバーシュートを軽減し、システムを迅速にSP値へ収束させます。 微分利得を上げすぎると、大幅な超過が生じます(回路の応答が低速すぎるため)。利得設定を試行することにより、システムが変化へ素早く応答し、SP値の振動を効率よく減衰させるといった、PID回路の性能を最大限にすることができます。

Control TypeKpKiKd
P0.50 Ku--
PI0.45 Ku1.2 Kp/Pu-
PID0.60 Ku2 Kp/PuKpPu/8

手動によるチューニングは非常に効果的なPID回路の設定方法ですが、ある程度の経験とPID回路および応答についての理解を必要とします。 PIDチューニングのためのZiegler-Nicholsメソッドは、もう少し体系的な手引きとなっています。 再び、積分利得と微分利得をゼロ値にセットしてください。 比例利得を回路が振動するまで上げます。 この利得をレベルKuと呼びます。 振動はPuの期間です。 個々の制御回路の各利得は右の表に示しています。


Posted Comments:
No Comments Posted