说到这里,那我们就得要思考几个问题:什么是PID?为什么需要使用PID?什么情况下可以使用PID呢?
那我们先举个例子:比如恒温热水壶大家应该都熟悉吧,我想让热水壶里面的水可以保持在一个恒定的温度,那么就需要先将热水壶里面的水先加热到目标温度的位置附近。到达这个水温之后就一直保持在这个温度,当水温低了可以自动调节它升高到目标温度,当水温高了又能降低到目标温度。这个过程的实现就需要依靠一种调节算法来实现,而pid算法就能实现这样的操作。
1、什么是PID呢?
上图中,被控变量是我们希望通过这个控制系统进行控制的对象,而给定值是我们设定给系统的输入参数,希望通过整个控制系统的作用,在给定值的情况下被控对象达到我们预期的目标。这是我们理想中要得到的效果。
上图中将调节器的部分改动一下,改为PID控制器,就变成如下的框图:
框图中e(t)和u(t)的关系式如下:
将上面的传递函数展开,如下:
然后:
由此可得:
因此,上面的公式中:
从上面也可以看的出来,PID算法其实就是三个算法的组合,从数学的角度来看也就是三部分算法作用之后的的代数和!
总结:PID调节器是一种线性调节器,它将给定值r(t)与实际输出值c(t)的偏差的比例(P)、积分(I)、微分(D)通过线性组合构成控制量,对控制对象进行控制。
2、PID算法的P、I、D部分的作用和解释
(1)P-比例的作用
这是什么意思呢?是不是不好理解?
简单点说:比例部分其实就是对系统设定值和输出值的偏差的放大倍数。
举个例子:
由此也可以看的出来,P越大,电机转速回归到输入值的速度就越快,反应就越迅速,即调节的灵敏度就越高。
但是,P也不是越大越好,虽然P大的时候调节的灵敏度会变高,但是也容易导致调节之后的目标值在预设值的附近振荡,使系统稳定性下降,会造成系统不稳定。
(2)I-积分的左右
针对上面提到的振荡的问题,引入积分是可以解决的。
但是,积分作用也不是越强越好,积分的作用过强的话,会导致系统的调节效果出现滞后。
总的来说,积分环节的作用就是反应系统的累计偏差,使系统消除稳态误差,提高无差度,只要有误差的存在,积分调节就会进行,直至无误差;
(3)D-微分的作用
还是接着上面的电机的转速来说明,微分的存在其实就是反映电机转速的变化率,能够通过之前误差的变化预测电机转速的误差变化的趋势,具有超前调节的作用,并且D越大,超前预测的作用越明显。
简单来说,微分的存在是为了预测偏差的变化趋势,产生超前的控制作用,在偏差没有形成之前,就通过微分的调节左右消除偏差,改善系统的动态性能。
关于PID的知识就先简单讲这么一点点,后期再继续学习补充。
下面是我在网上找到的一个关于PID的调节的一个演示,很生动的说明了PID调节过程中P、I、D三个控制参数作用到系统的调节效果,方便大家理解PID,如下:
从上面的动图可以看出:
长沙市望城经济技术开发区航空路6号手机智能终端产业园2号厂房3层(0731-88081133)