结构图

模糊pid控制利用Python实现 模糊pid规则表_取值


PID调节器的控制规律为:

模糊pid控制利用Python实现 模糊pid规则表_取值_02


其中kp为比例系数,Ki为积分系数,kd为微分系数。e(K)为误差, ec(K)为误差变化,我们习惯将它写成[e(k)-e(k-1)];

调节规则:

根据实际经验,在不同的e和ec下自调整要满足如下调整原则:

模糊pid控制利用Python实现 模糊pid规则表_上升时间_03

当e中等大小的时候,为减小系统的超调量,保证一定的响应速度,kp应适当减小;
在这种情况下,kd的取值对系统的影响较大,应取得较小些,ki的取值大小要适中;

模糊pid控制利用Python实现 模糊pid规则表_上升时间_04


根据上面的经验,我们可以得到相应的规则

Kp的模糊控制规则表

模糊pid控制利用Python实现 模糊pid规则表_上升时间_05

增大kp能减少稳态误差,而且可以加快上升时间,峰值时间——动态性能。但是kp过大会产生较大的超调量。甚至导致系统不稳定——>等幅振荡——>发散振荡。

Ki的模糊控制规则表

模糊pid控制利用Python实现 模糊pid规则表_上升时间_06

积分调节规律主要用于消除静差,但是如果积分作用过大,引起积分饱和(一丢丢的误差会被放大),导致超调量增加,所以要选择好合适积分系数,得到合适的超调量和消除误差。 当然积分系数不大,会产生误差。

Kd的模糊控制规则表

模糊pid控制利用Python实现 模糊pid规则表_模糊pid控制利用Python实现_07

微分调节主要是针对大惯性过程引入的,就是T=RC——二阶系统的二次系数。
kd大——可以压制超调量,但是会增加调节时间——>就是因为kd过大,误差调节的跨度会放大,需要多次调节。
kd放在最后调节吧

也就是说模糊控制器是二输入三输出。
而且模糊控制的规则一共有 3X49个;我们按照上面的设计模糊控制器。

Kp的隶属函数曲线

模糊pid控制利用Python实现 模糊pid规则表_取值_08

Ki的隶属函数曲线

模糊pid控制利用Python实现 模糊pid规则表_稳态误差_09


这里的模糊子集的论域是[-0.006 0.006]。

Kd的隶属函数曲线

模糊pid控制利用Python实现 模糊pid规则表_取值_10

回路结构图

模糊pid控制利用Python实现 模糊pid规则表_稳态误差_11


在常规pid控制器中,Kp ki kd 的参数大小按照经验法进行调整,而且将常规PID控制器的参数的值,设置为模糊pid控制器的初始值。

为什么呢,因为是模糊控制器得到的三个值,是关于比例系数,积分系数,微分系数的变化值。

常规PID控制器调节有多种经验方法,无论是上面的常规pid,还是模糊pid都需要依靠这种经验进行调整。

模糊pid控制利用Python实现 模糊pid规则表_模糊pid控制利用Python实现_12