1、已知某一炉温控制系统,要求温度保持在600 度恒定。针对该控制系统有以下控制经验: (1) 若炉温低于600 度,则升压;低的越多升压越高。 (2) 若炉温高于600 度,则降压;高的越多降压越低。 (3) 若炉温等于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。假定被控对象的传递函数分别为: 255.01)1()(sesGs )456.864.1)(5.0(228.4)(22ssssG 解: 在 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 中调用模糊控制器,观察输出结果...