如何快速理解模糊PID---(二)

本文介绍了模糊PID控制的基本原理,包括模糊化、模糊控制规则及解模糊化过程,并给出了基于误差和误差变化率的具体实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

模糊控制规则

上文只介绍了误差这一个输入量,我们可以用相同的方法对误差的变化率这

一输入量进行模糊化。

模糊控制规则主要有两种,Mamdini和T-S型模糊控制器

这里只介绍Mamdini型模糊控制器

Mamdini型模糊控制器就是一堆

“如果 x是U1 y是U2 那么 z是W1”

的语句组成

先上图

在这里插入图片描述

设误差为E,误差的变化率为EC,

而输出量我们也用上文的方法将他划分出六个区域,并规定出它的模糊论域(NB,NM,NS,Z0,PS,PM,PB)

例如我们规定输出也是介于 (- 90 , + 90) 之间的

那么同样我们可以规定出下面这样的模糊论域来

NBNMNSZ0PSPMPB
-90-60-300306090

图中横列是E的模糊论域,纵列是EC的模糊论域

例如根据图和规则 “如果 x是U1 y是U2 那么 z是W1” 我们可以看到

如果EC是NB E是NM 那么W(图中是▲KD)是NS

图中的对应规则是根据专家建议或者经验得出的,

例如在PID中一般的经验是

当偏差较大时,一般选用较大的KP和较小的KD加快响应,而KD为0来避免积分饱和

当偏差很小时,为了消除稳态误差,克服超调,KI的值要稍稍增大,而KD取正值

根据在PID控制中的经验来手动整定

便会得到关于KP,KI,KD三个参数的模糊规则

解模糊化

我们可以通过模糊化和模糊对应规则

对应出模糊量

但是对于PID控制器来说

需要精确量来对PID的参数进行整定

所以我们要通过解模糊化来确定模糊控制器的精确输出量

方法:

在实际中,我们的每个输入值介于两个论域之间

所以在会在对应规则表格出现一个四格子矩阵

以下面的表格为例子

NMNS
PSZ0Z0
PMNSPS

这是上图模糊规则中的一部分

假设EC介于PS和PM之间 E介于NM和NS之间

EC对于PS的隶属度为 a 对于PM的隶属度为 1 - a
E 对于NM的隶属度为 b 对于NS的隶属度为 1 - b

我们先用比较容易理解的解模糊化的方式来对输出量进行解模糊化

最大隶属度解模糊法

输出量 =
Z0 * a* b + Z0 * a* (1 - b) + NS* (1 - a)*b
+PS *(1 - a) *(1 - b)

解模糊化到这已经完成了

除了最大隶属度法

还有面积平分法,面积中心法,加权平均法等方法可以使用

至此,模糊化控制的全过程已经完成

在模糊PID中,我们一般用KP , KI , KD三个参数的增量作为模糊控制的输出值,

下面是根据经验对于三个参数的模糊规则

KP

在这里插入图片描述

KI

在这里插入图片描述

KD

在这里插入图片描述

下文将介绍如何在STM32上实现模糊PID

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值