智能控制作业.docVIP

  • 15
  • 0
  • 约1.71千字
  • 约 23页
  • 2019-04-29 发布于安徽
  • 举报
. . 1、已知某一炉温控制系统,要求温度保持在600度恒定。针对该控制系统有以下控制经验: 若炉温低于600度,则升压;低的越多升压越高。 若炉温高于600度,则降压;高的越多降压越低。 若炉温等于600度,则保持电压不变。 设模糊控制器为一维控制器,输入语言变量为误差,输出为控制电压。输入、输出变量的量化等级为7级,取5个模糊集。试设计隶属度函数误差变化划分表、控制电压变化划分表和模糊控制规则表。 解:1)确定变量 定义理想温度为600℃,实际温度为T,则温度误差为E=600-T。 将温度误差E作为输入变量 2)输入量和输出量的模糊化 将偏差E分为5个模糊集:NB、NS、ZO、PS、PB,分别为负小、负大、零、正小、正大。将偏差E的变化分为7个等级:-3 -2 -1 0 1 2 3,从而得到温度模糊表如表1所示。 表1 温度变化E划分表 隶属度 变化等级 -3 -2 -1 0 1 2 3 模糊集 PB 0 0 0 0 0 0.5 1 PS 0 0 0 0 1 0.5 0 ZO 0 0 0.5 1 0.5 0 0 NS 0 0.5 1 0 0 0 0 NB 1 0.5 0 0 0 0 0 控制电压u也分为5个模糊集:NB、NS、ZO、PS、PB,分别为负小、负大、零、正小、正大。将电压u的变化分为7个等级:-3 -2 -1 0 1 2 3,从而得到电压变化模糊表如表2所示。 表2 电压变化u划分表 隶属度 变化等级 -3 -2 -1 0 1 2 3 模糊集 PB 0 0 0 0 0 0.5 1 PS 0 0 0 0 1 0.5 0 ZO 0 0 0.5 1 0.5 0 0 NS 0 0.5 1 0 0 0 0 NB 1 0.5 0 0 0 0 0 表3 模糊控制规则表 E PB PS ZO NS NB u PB PS ZO NS NB 2、利用MATLAB,为下列两个系统设计模糊控制器使其稳态误差为零,超调量不大于1%,输出上升时间≤0.3s。假定被控对象的传递函数分别为: 解: 在matlab窗口命令中键入fuzzy,得到如下键面: 设e的论域范围为[-1 1],de的论域范围为[-0.1 0.1],u的论域范围为[0 2]。 将e分为8个模糊集,分别为NB ,NM, NS, NZ, PZ, PS, PM, PB; de分为7个模糊集,分别为NB ,NM ,NS, Z ,PS ,PM ,PB; u分为7个模糊集,分别为NB ,NM ,NS, Z ,PS ,PM ,PB; MATLAB中的设置界面如下: 模糊规则的确定: 模糊控制器的输出量 在simulink中调用模糊控制器,观察输出结果 运行结果为 Scope Scope1 Scope2 3、利用去模糊化策略,分别求出模糊集A的值。模糊集A的定义为: 解:(1)面积重心法 (2)面积等分法 (3) 最大隶属度平均法 (4) 最大隶属度取最小法 (5) 最大隶属度取最大法 4、设论域x={a1,a2,a3},y={b1,b2,b3},z={c1,c2}已知 , 试确定“If A AND B then C”所决定的模糊关系R,以及输入为 时的输出C1。 解: ∴ 5 利用两层BP神经网络完成对[-π,π]区间上正弦函数逼近,隐层函数取S型传输函数,输出层的激活函数取线性传输函数。(采用神经网络工具箱提供的函数完成) 解:根据条件在MATLAB环境下,采用神经网络工具箱提供的函数完成正弦函数逼近如下: 程序代码如下: 仿真结果如下: 图1为原函数与网络训练前后仿真结果的比较(图中红色曲线代表训练前的网络,绿色代表训练后的网络,蓝色代表原函数) 图1 原函数与网络训练前后的仿真结果 图2为误差曲线 图2 误差曲线

文档评论(0)

1亿VIP精品文档

相关文档