PID控制器 介紹
PID控制器 介紹
資料來源:https://zh.wikipedia.org/wiki/PID%E6%8E%A7%E5%88%B6%E5%99%A8
PID控制器(比例 積分 微分控制器),由比例單元P、積分單元I和微分單元D組成。透過Kp,Ki和Kd三個參數的設定。PID控制器主要適用於基本上線性,且動態特性不隨時間變化的系統。
PID控制器的比例單元P、積分單元I和微分單元D分別對應目前誤差、過去累計誤差及未來誤差。若是不知道受控系統的特性,一般認為PID控制器是最適用的控制器。藉由調整PID控制器的三個參數,可以調整控制系統,設法滿足設計需求。控制器的響應可以用控制器對誤差的反應快慢、控制器過衝的程度及系統震盪的程度來表示。不過使用PID控制器不一定保證可達到系統的最佳控制,也不保證系統穩定性。
調整PID參數對系統的影響如下
調整方式(on) 上升時間 超調量 安定時間 穩態誤差 穩定性
↑ Kp 減少↓ 增加↑ 小幅增加 ↗ 減少 ↓ 變差 ↓
↑ Ki 小幅減少↘ 增加↑ 增加↑ 大幅減少↓↓ 變差↓
↑ Kd 小幅減少↘ 減少↓ 減少↓ 變動不大→ 變好 ↑
有名的調整方法:[齊格勒-尼科爾斯方法]
以下是一段實現PID演算法的偽代碼(撰寫連續時間的PID控制器)
previous_error = 0
integral = 0
start:
error = setpoint ‐ measured_value
integral = integral + error*dt
derivative = (error ‐ previous_error)/dt
output = Kp*error + Ki*integral + Kd*derivative
previous_error = error
wait(dt)
goto start