模糊PID控制

前言:
传统PID的参数在控制过程中不变,能解决部分问题,但是在非线性系统中,一套固定的控制参数的效果不佳,性能无法满足需求。所以需要一种参数自适应的控制算法,而模糊控制则是其中之一。

1 阶跃响应
黑色为期望值,红色为实际值:
模糊PID控制
先考虑纯Kp控制:
这样的阶跃响应,若是传统PID,由于有超调,则会减小Kp。那这是最好的方式吗?能够达到快、稳、准的要求吗?显然不会,采用定值的Kp往往不能最优化。

那如何处理呢?
2 分类处理(分而治之)
图中的A/B/C/D四点,应该对应不同的Kp参数,采用此点的偏差值以及偏差值的微分来描述:
E,dE。
模糊PID控制
分以上4种情况来讨论:
A:
E为正,dE为负,说明误差与误差的变化趋势相反,误差越来越小。
B:
E为负,dE为负,说明误差与误差的变化趋势相同,误差越来越大。
C:
E为负,dE为正,说明误差与误差的变化趋势相反,误差越来越小。
D:
E为正,dE为正,说明误差与误差的变化趋势相同,误差越来越大。

所以对于B/D两种情况,说明施加的控制量还不够,以至于无法抑制误差的变化,所以需要加大控制量,也就是将Kp加大。而传统PID则无法动态调整Kp。

那谁来监控这些点的E、dE的变化、以动态的修改PID参数呢?
答案模糊控制器,模糊控制器处于PID的前级,输入量为E、dE,输出量为Kp、Ki、Kd。

3 模糊控制器
模糊控制器由三部分组成:
1 根据隶属度函数,对输入量、输出量进行模糊化(分段)
2 根据模糊规则进行模糊推理,得到输出量的隶属度
3 根据输出量的隶属度,进行反模糊化,得到准确的输出量

模糊控制的思想和原理比较简单,难点在于:
1 隶属度函数的确定(三角形、梯形、非线性等)
2 模糊规则表的确定
以上两点的工程实现,具有较大的难度,需要根据实际的控制系统来确定。也在根本上决定了控制的性能。