PID公式
以上是离散PID计算公式,PID的连续和离散,以及离散中的位置和增量,原理上都是完全一样的。一般控制都是离散PID,而且离散的表达形式更加直观,这里只给出离散的形式。
PID控制的理解
非线性的可不可以
有了PID控制,系统的输入和输出间的具体关系就不重要了。PID最好还是线性,非线性需要根据情况改变pid系数,比如某个既不是线性也不是单调的系统,输出与输入间的关系为——二次函数:
y = ( u − 1 ) 2 y=(u-1)^2 y=(u−1)2
- 想让这个函数达到一个稳定的值y=4,初始状态为u=0,y=1。
假设不知道内部的关系是什么,只知道参考值4比初值1要大,可以先随便设个系数。
用matlab模拟该系统:
clc,clear;
ref = 4;
err = 0;
err_last = 0;
integral = 0;
y(1) = 1;
u(1) = 0;
for i=1:60
err = ref-y(i);
integral = integral+err;
u(i+1) = 0.05*err+0.05*(err-err_last