问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

模糊PID控制器详解

创作时间:
作者:
@小白创作中心

模糊PID控制器详解

引用
CSDN
1.
https://blog.csdn.net/m0_55919967/article/details/140921975

模糊PID控制器是一种结合了模糊逻辑和PID控制的先进控制策略,广泛应用于各种复杂系统的控制中。本文将详细介绍模糊PID控制器的核心组成部分,包括模糊化、知识库、模糊逻辑推理和解模糊等关键环节。

一、模糊控制器

模糊控制器主要由模糊化、知识库、模糊逻辑推理和解模糊组成。其基本原理如下图所示:

1. 模糊化

模糊化的主要作用是将输入变量的精确值转换为其对应论域上的模糊集合,以便进行模糊推理。具体过程包括:

  1. 对输入量进行预处理,使其符合模糊控制器的要求
  2. 将处理后的输入量进行尺度变换,使其进入相应的论域范围
  3. 将变换后的输入量进行模糊处理,将其转换为模糊量,并用模糊集合表示

1.1 定义输入和输出模糊集

对于误差e、误差变化ec及控制量u,其模糊集及其论域定义如下:

  • 模糊集:{NB,NM,NS,ZO,PS,PM,PB}
  • e和ec的论域:{-3,-2,-1,0,1,2,3}
  • u的论域:{-4.5,-3,-1.5,0,1,3,4.5}

2. 知识库

知识库包含了具体应用领域中的知识和控制目标,主要由数据库和模糊控制规则库组成。

2.1 数据库

数据库主要包括语言变量的隶属函数、尺度变换因子及模糊空间的分级数。

2.1.1 隶属函数

在模糊控制中常用的隶属函数有:

  • 高斯型隶属函数
  • 广义钟形隶属函数
  • S状隶属函数
  • 梯形隶属函数
  • 三角形隶属函数
  • Z形隶属函数

隶属函数的确定方法主要包括模糊统计法、主观经验法和神经网络法。确定隶属函数时需要遵循以下原则:

  1. 必须是凸模糊集
  2. 对称和平衡
  3. 在论域上合理分布
2.1.2 尺度变换因子

尺度变换因子包括量化因子和比例因子:

  • 量化因子:将输入变量的论域转换为模糊子集论域的比例系数
  • 比例因子:将输出变量从模糊子集论域转换回实际论域的比例系数

例如,假设e、ec、u的实际变化范围分别为[-30,30],[-24,24],[-36,36],则:

  • 量化因子:k1=6/30,k2=6/24
  • 比例因子:k3 =36/6
2.1.3 模糊空间的分级数

模糊空间的分级数是指对模糊集合系进行划分的级别数量。在有限论域中,模糊集合的表示方法有Zadeh表示法、序偶表示法和向量表示法;在无限论域中,模糊集合可以写成连续的隶属度函数形式。

2.2 规则库

规则库包含了用模糊语言变量表示的一系列控制规则,反映了控制专家的经验和知识。例如:

  • 当误差e较大时,应取较大的Kp和较小的Kd,同时限制积分作用
  • 当误差e中等时,Kp应适当减小,Kd的取值要小,Ki的取值要适中
  • 当误差e较小时,Kp与Ki应取得大些,Kd的取值根据ec的大小调整

3. 模糊逻辑推理

模糊逻辑推理以知识库为基础,模拟人的基于模糊概念的推理能力,是模糊控制器的核心。例如:

  • 当在A点时(e为正,ec为负),误差越来越小,对应的模糊规则为:if e=PS,ec=NM,then Kp=PS,Ki=NS,Kd=ZO
  • 当在B点时(e为负,ec为负),误差越来越大,对应的模糊规则为:if e=NS,ec=NM,then Kp=PM,Ki=NM,Kd=NS
  • 当在C点时(e为负,ec为正),误差越来越小,对应的模糊规则为:if e=NS,ec=PM,then Kp=NS,Ki=PS,Kd=NS
  • 当在D点时(e为正,ec为正),误差越来越大,对应的模糊规则为:if e=PS,ec=PS,then Kp=NS,Ki=PS,Kd=ZO

4. 解模糊

解模糊是将模糊推理得到的模糊控制量转化为精确控制量的过程,主要包括两部分:

  1. 将模糊控制量转换为论域范围内的清晰量
  2. 将清晰量转换为实际控制量

常用的解模糊方法有:

  • 最大隶属度法:选取推理结果模糊集合中隶属度最大的元素作为输出值
  • 重心法:取隶属度函数曲线与横坐标围成面积的重心作为输出值
  • 加权平均法:输出值由加权平均决定,系数ki的选择影响系统响应特性

MATLAB提供了五种解模糊化方法:

  1. centriod:面积重心法
  2. bisector:面积等分法
  3. mom:最大隶属度平均法
  4. som:最大隶属度取最小法
  5. lom:最大隶属度取最大法

通过setfis()设置解模糊化方法,通过defuzz()执行反模糊化运算。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号