PID 控制 |(搬运)教程与 python 代码
因为完全没有自动化和控制基础,所以找了很多博客都没看懂;
干货|通俗易懂讲解PID,这是看的最懂的一篇()
PID 控制的 python 代码:(搬运 别人的博客)
class PID_Controller:
# 给pid的三个参数赋初值
def __init__(self, kp, ki, kd):
self.kp = kp
self.ki = ki
self.kd = kd
self.last_error = 0.0
self.integral = 0.0
def change_para(self, kp, ki, kd):
self.kp = kp
self.ki = ki
self.kd = kd
def control_action(self, error, dt):
"""
Args:
error: 当前误差
dt: 步长
Returns: pid的输出
"""
p = self.kp * error
self.integral += error
i = self.ki * self.integral
derivative = (error - self.last_error) / dt
d = self.kd * derivative
self.last_error = error
return p + i + d
可以直接调用的 python 包:https://github.com/m-lundberg/simple-pid