偏差の変化の速さ(微分)に応じて制御量を出し、振動を抑える制御方式
D制御(微分制御)とは、偏差の変化の速さ(変化率)に比例した制御量を出す方式です。「D」は微分を意味する Derivative の頭文字。式は u = Kd × d偏差/dt です。d偏差/dt は「偏差が今どれくらいの速さで変化しているか(グラフの傾き)」を表します。
身近な例で言うと、車を停止線でぴたりと止める運転に似ています。停止線にゆっくり近づいているうちは軽くブレーキ、勢いよく突っ込んでいると感じたら強くブレーキを踏む。「あとどれだけずれているか」ではなく「どれくらいの勢いで近づいているか」を見て先回りで加減するのがD制御です。
上のツールで Kd のスライダーを動かすと、灰色の点線(D無し)が激しく振動するのに対し、赤い曲線(Dあり)では振動が抑えられて滑らかに収まる様子が確認できます。
D制御は偏差そのものの大きさではなく、偏差がどれくらいの速さで変化しているかを見ます。これがP制御・I制御と本質的に違う点です。「微分」とは数学的には「変化の速さ(傾き)を求めること」で、ここでは1サンプル前との偏差の差として計算します。
計算例(Kd=0.5、サンプリング間隔 Δt=0.1 のとき):
・前回偏差0.8 → 今回偏差0.5(急減):変化率=(0.5−0.8)/0.1=−3 → u=0.5×(−3)=−1.5(強いブレーキ)
・前回偏差0.55 → 今回偏差0.5(緩減):変化率=(0.5−0.55)/0.1=−0.5 → u=0.5×(−0.5)=−0.25(弱いブレーキ)
このように、目標値に勢いよく近づいているときほど強くブレーキがかかります。これが「先回りして行き過ぎを防ぐ」働きの正体です。Kd(微分ゲイン)はこのブレーキの強さの重みで、大きいほど制動が強く効きます。
D制御の最大の効果は振動(オーバーシュートと揺り戻し)を抑えることです。応答が速いシステムは目標値に勢いよく到達して行き過ぎ、戻り、また行き過ぎ…と振動しがちです。D制御はこの近づく勢いにブレーキをかけることで、揺れをすばやく減衰させます。
ただしD制御には大きな注意点があります。
・D単独では制御できない:偏差が一定(変化がない)なら変化率はゼロになり制御量も出ない。そのため必ずPやIと組み合わせて使う(PD制御・PID制御)
・ノイズに弱い:微分は急な変化に敏感なので、測定値の小さなノイズを拾って暴れやすい
・Kdが大きすぎると:反応が鈍くなり、かえって応答が遅くなる
ここまでをまとめると、「振動・オーバーシュートを抑えるのはD制御の働き」「D単独では使えずP・Iと組み合わせる」がポイントです。3つを整理すると、P=速さ・I=定常偏差除去・D=振動抑制。上のツールでKdを上げると、灰色の振動が赤い滑らかな曲線に変わる様子を確かめてください。