200smart的PID指令已经过于繁杂了,而打开博途库PID_Compact V2的说明就更加臃肿复杂,Compact不仅是增加了更多的接口,甚至连核心的PID算法都改造了,增加了所谓PD权重,拉普拉斯运算符;核心算法的改造导致了接口增多,模式切换的沿信号让用户无法适从……
1,PID算法原理
上面这段是对经典PID算法的分解,得到简化计算后的“三项式”
M n = MP n + MI n +
MD n
输出 = 比例项 + 积分项 + 微分项
下面分别对单项式展开:
比例项的展开,没问题,已经足够简化。(比例项与后面的积分项是存在关联的)
积分项的展开,仍然是可以化简计算的
MI n = K C * T S /
T I * (SP n - PV n ) +
MX
MI n = K C * (SP n - PV n )*T S /
T I +
MX
MI n = MPn*T S / T I + MX
这一步看懂它,程序就可以写的很简单!
实际上,大多数的PID调节都只需要PI,D项为0,即PID算法
输出 = 比例项 + 积分项