模糊PID(自适应模糊PID、fuzzy PID)的基本原理及应用举例 by 研三笔记

2023-05-16

目录

  • 1 控制框图
  • 2 概述
  • 3 基本原理
    • 3.1 一些基本的概念、定义
    • 3.2 模糊化
    • 3.3 模糊推理
    • 3.4 清晰化(解模糊、反模糊化)
    • 3.5 模糊PID
    • 3.6 使用.fis文件
  • 4 利用matlab模糊控制工具箱设计模糊控制器

1 控制框图

在这里插入图片描述

2 概述

模糊控制PID又叫模糊自适应PID,因为三个PID参数能够实时调整。
模糊PID控制,即利用模糊逻辑并根据一定的模糊规则对PID的参数进行实时的优化,以克服传统PID参数无法实时调整PID参数的缺点。
模糊PID控制包括:

  • 模糊化
  • 确定模糊规则(模糊推力)
  • 解模糊(清晰化)

例如小车通过传感器采集赛道信息,确定当前距赛道中线的偏差E以及当前偏差和上次偏差的变化ec,根据给定的模糊规则进行模糊推理,最后对模糊参数进行解模糊,输出PID控制参数。

3 基本原理

模糊控制器主要由三个模块组成:模糊化,模糊推理,清晰化。
在这里插入图片描述

3.1 一些基本的概念、定义

  • 模糊量: 如 E、EC。
  • 论域(上下限):-240~240。
  • 划分区间:-240 ~ -180;-180 ~ -120 ;-120 ~ -60;-60 ~ 0;0 ~ 60;60 ~ 120;120 ~ 180;
    180 ~ 240。
  • 录属度:录属于某个模糊子集的录属度,程度。
  • 模糊子集:
    负大NB(Negative Big)
    负中NM(NegativeMedium)
    负小NS(NegativeSmall)
    零ZE或ZO(Zero)
    正小PS(PositiveSmall)
    正中PM(PositiveMedium)
    正大PB(Positive Big)
  • 录属度函数:用于求解录属度,有线性的、非线性的。

3.2 模糊化

实质:根据录属度函数求取录属度

  1. 把-180,-120,-60,0,60,120,180分别用NB,NM,NS,ZO,PS,PM,PB表示。
  2. 例如,当E = 170时,此时的E属于PM和PB之间,而此时的E也会对应2(或1)个隶属度。E隶属于PM(120)的百分比为(180 - 170) / (180 - 120) = 1 / 6 ,而同理隶属于PB(180)的百分比为(170 - 120) / (180 - 120) = 5 / 6 。意思就是120到180进行线性分割了,E离PM和PB哪个更近,则隶属于哪个就更大(当输出值E大于180(PB)时,则隶属度为1,隶属度值为PB,即E完全隶属于PB,同理当E小于 - 180 (NB)时也一样)。同理也可以对EC进行模糊化。
  3. 那么E分别隶属于模糊子集NB,NM,NS,ZO,PS,PM,PB的各个录属度都可以求出。

3.3 模糊推理

实质:根据模糊规则表求取输出值U的隶属度。即根据模糊控制规则进行模糊推理,并决策出模糊输出量
首先要确定模糊规则,即专家经验。对于我们这个二维控制结构以及相应的输入模糊集,我们可以制定49条模糊控制规则(一般来说,这些规则都是现成的,很多教科书上都有)

我们假设为E的两个隶属度值为PM、PB。
假设E属于PM的隶属度为a,则属于PB的隶属度为(1 - a)。
再假设EC的两个隶属度值为NB、NM。
假设EC属于NM的隶属度为b,则属于NB的隶属度为(1 - b)。
根据模糊规则表,当E隶属于PM且EC隶属于NB时,可知输出值U隶属于ZO,
此时输出值U隶属于ZO的录属度为 a *( 1 - b ),其他同理。
在这里插入图片描述
根据以上求解规则,那么可以求得输出值U隶属于各个模糊子集的录属度为:
录属于ZO的隶属度为: a * b + a * ( 1 - b ) + ( 1 - a ) * ( 1 - b )
录属于NS的隶属度为 : ( 1 - a ) * b
在这里插入图片描述

3.4 清晰化(解模糊、反模糊化)

对于输出值,我们同样采用给予隶属度的办法。例如,我们把输出值假设为[1000,1400](即舵机的摆角值范围)的区间同样划分为八个部分,即7个模糊子集NB_U,NM_U,NS_U,ZO_U,PS_U,PM_U,PB_U。根据上一步所得出的结论,我们就可以用隶属度乘以相应的隶属值算出输出值的解,即 (a * b + a * ( 1 - b ) + ( 1 - a ) * ( 1 - b ) ) * ZO_U + ( 1 - a ) * b * NS_U。到此为止,整个模糊过程就结束了。
对输出模糊量的解模糊:模糊控制器的输出量是一个模糊集合,通过反模糊化方法判决出一个确切的精确量,反模糊化方法很多,我们这里选取重心法。
在这里插入图片描述

3.5 模糊PID

我们已经知道了整个模糊的过程,但上述的输出值只有一个输出,并没有实现PID。因此我们可以先对E和EC进行模糊化,然后分别根据不同的逻辑模糊子集、录属度函数、模糊规则表求得输出值kp、ki和kd的录属度,然后反模糊化求得kp、ki和kd。再将kp、ki和kd套入PID公式。
即将u分别为Ki、Kd、Kp求取各自的录属度,然后清晰化。

3.6 使用.fis文件

simulink中使用fis文件,首先加入fuzzy模块,然后写入模糊文件,注意应用格式加单引号: ‘fuzzpid.fis’
或者,现在命令空间中运行:
fis = readfis(‘fuzzpid.fis’)
然后 block中田fis 。
在这里插入图片描述

4 利用matlab模糊控制工具箱设计模糊控制器

matlab版本:matlab2010b

  1. 在matlab命令窗口中输入 fuzzy ,打开模糊控制工具箱。
  2. 确定输入、输出量。
    Edit -> Add Variable -> Input
    在这里插入图片描述
    查看规则编辑器和曲面观测器(view/rules view/surface)
    在这里插入图片描述
    在这里插入图片描述

可参考博客

https://blog.csdn.net/qingfengxd1/article/details/88023414

https://blog.csdn.net/qq_43907537/article/details/105258484

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

模糊PID(自适应模糊PID、fuzzy PID)的基本原理及应用举例 by 研三笔记 的相关文章

  • Go 中 Gzip 与 json 搭配使用压缩数据,减少数据传输量

    Go 中 Gzip 与 json 搭配使用压缩数据 前言 在日常工作中 xff0c 如果遇到数据量大的情况 xff0c 在 db 中是不能直接存储某些字段的 xff0c 一般会用 json 进行marshal 为 byte 再存入 但是如果
  • 形参的种类及其能否改变实参

    形参的种类及其能否改变实参 函数的形参主要可分为地址和非地址 xff0c 每种可再分为有无取地址符 amp 取地址符 amp 的作用是让函数运行时不开辟新的空间 xff0c 不产生新的形参 xff0c 而是根据地址直接到函数外找到传入的实参
  • Ubuntu18.04.4 安装XRDP远程桌面终极、最简方案

    Ubuntu18 04 4 安装XRDP远程桌面终极 最简方案 本机系统 xff1a WIN10 远程主机OS xff1a ubuntu 18 04 4 desktop amd64 最近因为工作需要 xff0c 想通过WIN 10的远程桌面
  • Neo4j 构建简单农业知识图谱(Agriculture KnowledgeGraph)

    quad 我们来看一个基于开源语料的简单农业知识图谱 xff0c 由于过程比较繁杂 xff0c 数据和知识图谱数据预处理过程这里不详细叙述 我们重点看基于 Neo4j 来创建知识图谱的过程 项目地址见 xff1a https github
  • 图数据库neo4j导入csv数据

    1 安装环境 quad 执行以下命令安装需要的库 xff1a pip install py2neo pip install neo4j 2 准备数据 quad 在关系抽取中 xff0c 我们会形成SPO三元组即 xff1a 实体
  • win10环境下python3安装pdfminer

    一 安装 1 首先下载源文件包 http pypi python org pypi pdfminer xff0c 解压 xff0c 然后命令行安装 xff1a python setup py install 2 下载pdfminer six
  • 杨辉三角形—省赛java

    十二届蓝桥杯省赛真题H题 杨辉三角形 题比较简单 xff0c 野路子直接干他 span class token keyword import span span class token namespace java span class t
  • C# 界面开发-登陆窗体(包括欢迎界面)

    我们在开发一个需要身份验证系统软件的时候 xff0c 一个必不可少的界面便是登陆界面 xff0c 只有我们在登陆界面中输入正确的用户名和密码 xff0c 才能登陆到主界面 xff0c 有时候可能还会加载系统资源 xff0c 所以还会增加一个
  • ROS系统中编写多个C++文件时,主文件调用其它文件函数或类时出现:对“xxxxxx“未定义的引用问题记录

    问题描述 主文件对其它文件内容调用时 xff0c 明明已经正确引用相关头文件 xff0c 并确保类和函数已被定义 xff0c 仍然出现下面问题 CMakeFiles span class token operator span robot
  • 使用sklearn学习决策树(Decision Tree)

    决策树模型 决策树 xff08 decision tree xff09 是一种基本的分类与回归方法 分类决策树模型是一种描述对实例进行分类的树形结构 决策树由结点 xff08 node xff09 和有向边 xff08 directed e
  • CTeX安装及使用

    1 关于 LaTeX和CTeX quad LaTeX是一种基于 的排版系统 xff0c 由美国计算机学家莱斯利 兰伯特 xff08 Leslie Lamport xff09 在20世纪80年代初期开发 xff0c 利用这种格式 xff0c
  • 深度强化学习(7)深度确定性策略梯度(DDPG)

    深度确定性策略梯度 xff08 DDPG xff09 1 从随机策略到确定性策略 首先 xff0c 我们先了解一下随机策略和确定性策略 随机策略的公式为 xff1a a
  • 强化学习(1)马尔科夫决策过程(MDP)

    强化学习 开始强化学习之前先来了解强化学习 深度学习 深度强化学习 监督学习 无监督学习 机器学习和人工智能之间的关系 如下图 xff1a 强化学习是机器学习的一个重要分支 xff0c 它试图解决决策优化的问题 所谓决策优化 xff0c 是
  • 深度强化学习(3)Prioritized Replay DQN

    Prioritized Replay DQN 在深度强化学习 xff08 2 xff09 Double DQN 中 xff0c 我们讲到了DDQN使用两个Q网络 xff0c 用当前Q网络计算最大Q值对应的动作 xff0c 用目标Q网络计算这
  • 封装使用axios进行接口请求

    一 安装axios npm install axios在main js引入 import axios from 34 axios 34 Vue use axios vue3使用createApp App config globalPrope
  • VMware+Ubuntu20.04安装指南

    1 首先下载VMware Workstation Player 16 xff0c 下载链接为 https customerconnect vmware com en downloads all products 2 下载完成后 xff0c
  • Java8流式操作——中间操作

    文章目录 什么是中间操作 xff1f 方法实践说明一 前提条件Person类Data类 二 操作filter 过滤distinct 去重 xff08 去除集合中重复的元素 xff09 sorted 排序 sorted 无参构造 sorted
  • 数据挖掘(Data Mining)扫盲笔记

    知识框架来源 xff1a 人工智能之数据挖掘 其他补充来源 xff1a 拿下Offer 数据分析师求职面试指南 数据分析实战45讲 Data Mining 概述篇基础认知挖掘对象常见任务 xff1a 模型分类问题与挑战十大经典算法 C4 5
  • 信息论笔记(需要编辑格式)

    主要来源 xff1a 吴军 信息论40讲 信息论介绍 世界上任何一个探索者都需要清楚三件事 我们现在的位置 我们的目标 以及通向目标的道路 哲学是一门生活的艺术 它帮助我们认清自己 它回答了第一个问题 至于每一个人的目标 我相信大家比我更清
  • 阿里云短信服务使用

    说明 这是用go语言实现的 xff0c 但说实话 xff0c 其实没啥影响 xff0c 不管什么语言都是这个套路 xff0c 所以无论你是学什么语言或者是用什么语言的都好 xff0c 看看总不亏 22年7 14下午14 xff1a 38 x

随机推荐

  • 数据分析思维扫盲

    知识来源 xff1a 接地气学堂1 前言 行文之初衷 xff0c 建立知识树 xff0c 因而不易速读 xff0c 请君悉知 宜为工具书 xff0c 按索引取之 独学而无友 xff0c 必孤陋寡闻 xff0c 请君赐教 xff0c 不吝感激
  • 高阶用户运营体系搭建

    这里写目录标题 第1章 理解用户运营本质1 什么是 用户运营 xff1f 2 一个 用户运营 重点关注什么 xff1f 3 怎么做好用户运营 xff1f 4 高阶用户运营体系搭建5 大规模用户运营体系的3大子系统6 用户留存的归因 活跃差模
  • 商品管理-运营指挥室 看板

    商品管理可视化项目 项目目标 梳理商品管理的整体业务流程 xff0c 调研数据的使用情况 xff0c 建立影响业务的 xff1a 销量 留存 sku数 断码等维度指标 xff0c 建立智能数据监控体系 工作范围 销量看板留存看板在售SKC看
  • Excel 的进阶学习

    文章目录 Excel 的进阶学习1 常用的 Excel 函数及用途1 关联匹配类2 清洗处理类3 逻辑运算类4 计算统计类5 时间序列类 2 基础1 快捷键2 数据组错误信息基本认识计算操作符 3 数据图展示 3 实战分析注意 Excel
  • SQL

    数据库 基本概念 1 xff0e 数据 定义 xff1a 描述事物的符号序列 xff0c 数据 xff08 Data xff09 是数据库中存储的基本对象 数据的种类 xff1a 数字 文字 图形 图像声音及其他特殊符号 数据举例 xff1
  • MatLab-simulink组件(模块)中文名大全

    MATLAB 矩阵实验室 7 0 1 Simulink 仿真 6 1 Aerospace Blockset 太空模块 1 6 1 Bioinformatics Toolbox 生物信息工具箱 1 1 1 CDMA Reference Blo
  • 控制理论总结

    经典控制理论 xff1b 现代控制理论线性控制理论 xff1b 非线性控制理论最优控制 xff1b 预测控制 xff1b 鲁棒控制数字控制系统 xff1b 连续控制系统随动系统 xff1b 自动控制系统的分类 一 按给定信号的形式不同 xf
  • H无穷控制

    H无穷优化控制问题可归纳为 xff1a 求出一个使系统内部稳定的控制器K s xff0c 使闭环传函Tzw的无穷范数极小 LQG的弱点 xff1a 对控制的一个主要挑战使多变量控制系统设计 xff0c 因为MIMO系统的传函是一个矩阵 LQ
  • 增益调度控制

    增益调度方法在良性 Well Behaved 非线性系统中应用的比较普遍 xff0c 所谓良性非线性系统是指系统的行为特性能由一系列选定的局部线性化模型充分描述 增益调度控制方法的一个显著优点就是它能够充分利用现有的成熟的线性控制理论为非线
  • UORB讲解

    Pixhawk 飞控系统是基于ARM的四轴以上飞行器的飞行控制器 xff0c 它的前身是PX4 IMU xff0c Pixhawk 把之前的IMU进行了完整的重构 xff0c 最新版本是2 4 3 而对应的Pixhawk 1 x版本与2 x
  • gorm的Raw与scan

    gorm的Raw与scan Raw 中文 xff1a 原生的 作用 xff1a 在写gorm语句时候用来写Raw sql语句 xff08 原生sql语句 xff09 gorm官方介绍Scan https gorm io zh CN docs
  • MavLink

    2 1 MAVLink xff08 Micro Air Vehicle Link xff09 是一种用于小型无人载具的通信协议 xff0c 于2009年首次发布 该协议广泛应用于地面站 xff08 Ground Control Statio
  • 飞控接收到的每一条MAVLink消息包都会上传到uORB消息池中吗?

    1 飞控接收到的每一条MAVLink消息包都会上传到uORB消息池中吗 xff1f 2 如何自定义 xff08 选择 配置 xff09 发送给QGC的MAVLink消息 xff1f
  • 滤波、传感器融合、IMU合GPS可以测量哪些物理量

    目录 结论IMU加速度计陀螺仪GPS 原理加速度计陀螺仪GPS 传感器融合滤波算法线性互补滤波卡尔曼滤波KF扩展卡尔曼滤波EKF 小结 结论 IMU paxhawk pixhack自带的IMU xff08 惯性测量模块 xff09 包含以下
  • 学习过程中提出的疑问

    目录 如何在simulink中编译两个应用并烧录到飞控中 xff1f 如何自定义地面站QGC接收到的MAVLink消息 xff1f xff08 MAVLink inspector xff09 航点 航路生成器 xff1f 如何在simuli
  • PX4学习笔记

    目录 网址PX4 io网页指导Pixhawk PX4 APM ArduPilot关系硬件照片 示意图逻辑图 集多旋翼控制框架软件框架 辅助工具 软件 使用方法source insight新建工程 导入PX4源码source insight
  • H无穷控制理论与应用案例分析

    0 知识背景 概念 定义 内稳定 xff1a BIBO稳定 xff1a 镇定 xff1a 对于一个控制系统来说 xff0c 如果通过某种反馈可以使系统实现渐近稳定 xff0c 即闭环系统极点具有负实部 xff0c 则称该系统是能镇定的 信号
  • ADRC从入门到放弃0

    ADRC xff1a 自抗扰控制器 其中 xff0c 在对自抗扰理论的 研究中 xff0c 引入了带宽概念这一个崭新的思路 xff0c 极大的简化了自抗扰技术使用时参数整定 的问题 xff0c 同时时域分析的方法可以发现利用带宽的概念还有利
  • 直升机建模

    目录 引子tips模型的组成 引子 duck不必陷入细节 xff0c 比如坐标转换 xff0c 忽而略微小项目 tips x 表示两个向量的叉乘 模型的组成 刚体运动学 xff1a 描述平移运动与转动运动 xff0c 即位移 xff08 线
  • 模糊PID(自适应模糊PID、fuzzy PID)的基本原理及应用举例 by 研三笔记

    目录 1 控制框图2 概述3 基本原理3 1 一些基本的概念 定义3 2 模糊化3 3 模糊推理3 4 清晰化 xff08 解模糊 反模糊化 xff09 3 5 模糊PID3 6 使用 fis文件 4 利用matlab模糊控制工具箱设计模糊