模糊控制在MATLAB中的实现.ppt

上传人:tian****1990 文档编号:8468615 上传时间:2020-03-29 格式:PPT 页数:40 大小:856.50KB
返回 下载 相关 举报
模糊控制在MATLAB中的实现.ppt_第1页
第1页 / 共40页
模糊控制在MATLAB中的实现.ppt_第2页
第2页 / 共40页
模糊控制在MATLAB中的实现.ppt_第3页
第3页 / 共40页
点击查看更多>>
资源描述
模糊控制在MATLAB中的实现 1 采用MATLAB语言根据具体的控制算法编程 2 利用MATLAB提供的模糊逻辑工具箱函数 3 利用模糊逻辑工具箱的图形界面与Simulink动态仿真环境 仿真方法 简单 直观 复杂但灵活 MATLAB工具箱提供的图形化工具 模糊系统 例 小费问题 小费与服务及食物质量有关 输入 服务及食物质量 2个输入 输出 小费 1个输出 语言值 食物 差 好 0 10 服务 差 好 很好 0 10 小费 少 中等 高 0 30 模糊规则 1 如果服务差或食物差 则小费少 2 如果服务中等 则小费中等 3 如果服务好或食物非常可口 则小费高 在matlab工作窗口输入 fuzzy 回车或fuzzy 文件名 fis 进入图形界面编辑 增加输入变量 输入mfedit或选择编辑隶属度函数菜单 输入服务的隶属度函数 输入mfedit或选择编辑隶属度函数菜单 输入食物的隶属度函数 输入mfedit 或选择编辑隶属度函数菜单 输出小费的隶属度函数 将修改保存到工作空间 输入ruleedit 或选择编辑模糊规则菜单 模糊规则 1 如果服务差 食物差 则小费少 2 如果服务好 则小费中等 3 如果服务好和食物非常可口 则小费高 浏览模糊规则 模糊推理输入输出曲面视图 完成模糊推理系统的构建 模糊推理系统的存储 1 选择File Export菜单将创建的模糊推理系统存成 fis文件 2 选择File SavetoWorkspaceas 保存到matlab工作空间 输入变量名 英文命名 例 自适应模糊PID控制器 设计一模糊控制器步骤1 确定e de和u的论域2 e de和u语言变量的选取3 规则的制定4 推理方法的确定 假定被控对象的传递函数为 利用Simulink动态仿真 1 根据系统实际情况 选择e de和U Kp Ki Kd 的论域erange 11 derange 0 10 1 urange 02 2 e de和u语言变量的选取e8个 NB NM NS NZ PZ PS PM PBde7个 NB NM NS Z PS PM PBU7个 NB NM NS Z PS PM PB 利用MATLAB的Toolbox工具 偏差的隶属度函数 输入的隶属度函数 偏差变化的隶属度函数 输出的隶属度函数 Kp Ki Kd 根据以上规律得 Kp Ki Kd的模糊规则表 根据设计经验 得出改变PID参数 Kp Ki Kd的规律 当偏差较大时 Kp 较大 使系统响应加快 Kd 零或较小Ki 0 避免过大的超调 当偏差中等时 Kp 较小 使系统响应具有较小的超调 Kd 适当 对系统影响较大 Ki 适当 当偏差较小时 Kp 较大 使系统具有良好的稳态性能 Kd 适当 避免在平衡点附近振荡 Ki 较大 使系统具有良好的稳态性能 3 模糊规则确定 p65 4 推理方法的制定 推理方法 采用 mamdani 方法去模糊方法 加权平均法选择隶属函数的形式 三角型 MATLAB 利用模糊逻辑工具箱的图形界面与Simulink动态仿真环境 模糊规则 模糊规则 0 1 1 0 1 1 0 2 用surfview菜单命令看模糊控制器的输出量 整定出的 Kp Ki Kd代入PID算法的离散差分公式 1 双击fuzzycontrller 给模糊控制器命名 OK2 在matlab窗口中输入命令 命名 readfis 变量名 fis 将 fis文件导入Simulink模型中的步骤 Scope2 Scope1 Scope3 利用MATLAB提供的模糊逻辑工具箱函数 创建一个新的模糊推理系统 模糊控制器 输入输出的量化等级都为7级e ec u 3 2 1 0 1 2 3 各取7个语言值 可取 模糊子集 负大 负中 负小 零 正小 正中 正大e ec的论域 3 3 u的论域 4 5 4 5 隶属度函数任意确定 模糊控制器设计a newfis fuzzf 创建新的模糊推理系统f1 1 a addvar a input e 3 f1 3 f1 添加e的模糊语言变量a addmf a input 1 NB zmf 3 f1 1 f1 添加e的模糊语言变量的隶属度函数 z型 a addmf a input 1 NM trimf 3 f1 2 f1 0 隶属度函数为三角形a addmf a input 1 NS trimf 3 f1 1 f1 1 f1 a addmf a input 1 Z trimf 2 f1 0 2 f1 a addmf a input 1 PS trimf 1 f1 1 f1 3 f1 a addmf a input 1 PM trimf 0 2 f1 3 f1 a addmf a input 1 PB smf 1 f1 3 f1 f2 1 a addvar a input ec 3 f2 3 f2 添加ec的模糊语言变量a addmf a input 2 NB zmf 3 f2 1 f2 a addmf a input 2 NM trimf 3 f2 2 f2 0 a addmf a input 2 NS trimf 3 f2 1 f2 1 f2 a addmf a input 2 Z trimf 2 f2 0 2 f2 a addmf a input 2 PS trimf 1 f2 1 f2 3 f2 a addmf a input 2 PM trimf 0 2 f2 3 f2 a addmf a input 2 PB smf 1 f2 3 f2 f3 1 5 a addvar a output u 3 f3 3 f3 添加u的模糊语言变量a addmf a output 1 NB zmf 3 f3 1 f3 a addmf a output 1 NM trimf 3 f3 2 f3 0 a addmf a output 1 NS trimf 3 f3 1 f3 1 f3 a addmf a output 1 Z trimf 2 f3 0 2 f3 a addmf a output 1 PS trimf 1 f3 1 f3 3 f3 a addmf a output 1 PM trimf 0 2 f3 3 f3 a addmf a output 1 PB smf 1 f3 3 f3 rulelist 11111 编辑模糊规则12111 13111 14211 15211 16311 17411 21111 22211 23211 24211 25311 26411 27511 e ec u 权系数0 1 与 1 或 0 a addrule a rulelist 添加模糊规则函数showrule a 显示模糊规则函数a1 setfis a DefuzzMethod centroid 设置模糊系统特性writefis a1 fuzzf 保存模糊系统a2 readfis fuzzf 从磁盘读出保存的模糊系统disp fuzzyControllertable e 3 3 ec 3 3 显示矩阵和数组内容Ulist zeros 7 7 全零矩阵 fori 1 7forj 1 7e i 4 i ec j 4 j Ulist i j evalfis e i ec j a2 完成模糊推理计算endendUlist ceil Ulist 朝正无穷方向取整 figure 1 plotfis a2 figure 2 plotmf a input 1 figure 3 plotmf a input 2 figure 4 plotmf a output 1
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!