logo资料库

水箱液位模糊控制系统.pdf

第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
资料共7页,全文预览结束
水箱液位模糊控制系统 摘 要:介绍了自动水位控制系统的硬件结构、软件流程及相应的控制策略。选用 AT89S52 作为 CPU 对水阀流量进行自动控制,基于模糊控制理论实现模糊检测与控制 系统设计。给出了控制量的结构图好控制规则表,以水位的模糊控制为例,对模糊控 制器软、硬件进行设计。 关键词:模糊控制;单片机;水液位 不管是采用经典控制理论还是采用现代控制理论来设计自动控制系统,都必须事 先知道被控对象的精确数学模型。然而,随着现代工业技术的发展,被控对象和生产 过程日益复杂,系统的非线性、时滞性和环境的不稳定性导致难以建立精确的数学模 型。模糊控制不需要被控对象的数学模型,便可达到较好的控制效果。单片机以其优 良的性能价格比,使其成为常用的控制器件,把二者有机结合起来,较为详细地对模 糊控制系统的软、硬件进行了设计。 1 模糊控制器的实现 以水箱内的水位高低作为控制实例。该水箱采用模糊控制算法结合单片机技术, 通过变频调速,达到一个我们随时可调的水位态,这样可以有效地节省水资源,经济 且节能。因为水管中的水压式有波动的,通常在 0.8~1.2Mpa 范围内变化,从而导致 水管流出的水流量不相同。下面我们确定模糊控制系统图(如图 1),通过设定期望的 液位 hd,h 为水箱中的实际液位高度。当水箱中的液位不断变化时,压力传感器信号 耶不断改变,由此测量值和期望液位设定值相比较,得出其液位偏差 E(e=h-hd),偏差 变化率 EC(△e/△t),经采样和 A/D 转换,再模糊化处理为对应的模糊量 X,Y。再经过 知识库进行模糊推理,得到模糊控制量 Z,最后经过反模糊化得到精确控制变量 U,通 过 U 对被控对象电机进行控制,再由电机决定水法阀门角度的大小,从而调节水箱液 位高度。 1
液位设定值 hd 知识库 模糊 推理 e=h-hd △e/△t 模 糊 化 电 机 去 模 糊 水 法 阀 门 水箱实际液位 压力传感器 图 1 水箱液位模糊控制器系统结构图 2 基于单片机的水阀流量模糊控制系统 2.1 硬件电路设计 水阀流量自动调节器以 AT89S52 单片机为核心,4*4 键盘电路用于期望液位设定值 的输入;阳极数码管用于显示水的实际液位、键盘输入时的设定值以及压力;扩散硅压 力传感器经过 ADC0809 转换为数字量,当中断到来时,将数字量输入 AT89S52,经过 AT89S52 模糊推理得到输出量,并用输出量控制电机;步进电机由 L297 驱动,通过步进 电机对水阀流量进行控制,从而实现对水箱液位的控制。而电机若加上流量传感器可实 现变压、恒流闭环调节。具体结构如图 2 所示。 数码管 74LS595 步 进 电机 L297 AT89S52 键 盘 信号调整 ADC0809 RS485 接口电路 RS485-RS232 压力传感器 PC 上位机 图 2 水法流量自动调节器总体控制图 2
2.2 控制器软件实现 主程序流程图如图 3 所示,上电复位后,单片机芯片初始化,利用键盘对控制器进 行液位值的设定。当压力实际值是更新值时,把实际值进行模糊化处理,通过模糊推理 计算出对水阀开口度直接执行的步进电机的驱动值,从而决定水阀打开的角度,我们可 以通过实际显示值观察水箱液位的高低。 本系统采用 RS485 进行通信,利用其可以进行远程通信的优点,实现控制器的远程 操作。串口通信程序如图 4。本系统程序采用模块化结构设计,便于程序调试,并增强 了可读性。 开 始 初 始 化 键盘输入 设定液位期望值 N 液位值变化 模糊控制程序 确定水阀开度 N 更新显示实际测量值 图 3 主程序图 3.模糊控制器的设计 3.1 算法设计 因为实际水压值在 0.8~1.2Mpa 之间发生变化,造成液位变化,我们将液位的初值 设在水压值为 1.0*106Pa 处,并假设液位初值 X0=0,实际液位值设为 X1,则误差 X=X1-X0 那么相对应的液位差值的模糊论域范围为[-6,6];并假定液位变化率 Y 论域范围为[-5, 5];阀门角度模糊论域为[-50,50]。将 X 和 Y 作为模糊控制器的输入变量,阀门角度 Z 3
作为模糊控制器的输出变量,经模糊化后转化为用模糊控制语言描述的模糊集合,建立 输入与输出之间的模糊控制规则,然后根据模糊控制规则得出模糊控制规制表。 3.2 确定各模糊变量的隶属函数 描述 X、Y 的语言变量都选取 7 个模糊状态{ NB , NM, NS, ZE, PS, PM, PB},描述 Z 语言变量选取 9 个模糊状态{ NL2,NL1, NB, NM, NS, ZE, PS, PM, PB, PL1,PL2};由于隶 属度函数曲线形状 J 较尖的模糊子集其分辨率较高,控制灵敏度较高;相反,隶属度函 数曲线形状较缓,系统稳定性好。因此,在该模糊控制系统设计过程中,模糊变量隶属 函数采用三角形函数。 现将液位变化 X 分为:X={ -6,-4.5,-3,-1.5,0,1.5,3,4.5,6}9 个液位变化等 级, Y 分为:Y={ -5, -4,-3,-2,0,1,2,3,4,5}11 个等级; 而控制量 Z 分为: Z={-45,-40,-35,-30,-25,-20,-15,-10,-5,0,5,10,15,20,25,30,35, 40,45};根据这些等级写出下面的模糊划分表: 表 1 液位变化的模糊划分表 隶属度 -6 1 0 0 0 0 0 0 NB NM NS ZE PS PM PB 模 糊 集 液位变化 X -4.5 0.25 0.75 0 0 0 0 0 -3 0 0.5 0.5 0 0 0 0 -1.5 0 0 0.75 0.25 0 0 0 0 0 0 0 1 0 0 0 1.5 0 0 0 0.25 0.75 0 0 3 0 0 0 0 0.5 0.5 0 4.5 0 0 0 0 0 0.75 0.25 6 0 0 0 0 0 0 1 隶属度 表 2 液位变化率的模糊划分表 液位变化率 Y -5 1 0 0 0 0 0 0 NB NM NS ZE PS PM PB -4 0.5 1/3 0 0 0 0 0 -3 0 1 0 0 0 0 0 -2 0 1/3 2/3 0 0 0 0 -1 0 0 2/3 1/3 0 0 0 0 0 0 0 1 0 0 0 4 模 糊 集 1 0 0 0 1/3 2/3 0 0 2 0 0 0 0 2/3 1/3 0 3 0 0 0 0 0 1 0 4 0 0 0 0 0 1/3 0.5 5 0 0 0 0 0 0 1
隶属度 表 3 水阀开度划分模糊表 水阀开度 Z -45 -40 -35 -30 -25 -20 -15 -10 -5 0 5 10 15 20 25 30 35 40 45 0.5 1 0.5 0 0.5 1 0.5 0 模 糊 集 NL2 0.5 0 0 0 NL1 0.5 1 0.5 0 0 0 0 0 NB NM NS ZE PS PM PB 0 0 0 0 0 0 0 PL1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 1 0.5 0 0 0.5 1 0.5 0 0 0.5 1 0.5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 1 0.5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 1 0.5 0 0 0 0 0 0.5 1 0 0 0.5 0.5 PL2 0 0 从这些表中可以求出每个变量的隶属度函数;以便于后面的运算。 0 0 0 0 0 0 0 0 0 0 3.3 建立模糊控制规则 模糊控制器的控制规制,一般式基于专家的专业知识和操作者的经验总结出来的。 我们用以下的控制规制去表征模糊系统的模糊关系: IF X=A AND Y=B ,THEN Z=C 式中,A,B,C 分为为液位变化,液位变化率,控制量阀门角度模糊量中的模糊集合 。相应的控制规制表如表 4。 表 4 NM NB X NS ZE PS PM PB Y NB NM NS ZE PS PM PB NL2 NL2 NL1 NB NM NS ZE NL2 NL1 NB NM NS ZE PS NL1 NB NM NS ZE PS PM NB NM NS ZE PS PM PB NM NS ZE PS PM PB PL1 NS ZE PS PM PB PL1 PL2 ZE PS PM PB PL1 PL2 PL2 3.4 确定模糊推理法 对于模糊推理决策目前最为常用的便是 Mamdani 算法,该算法是 Mamdani 于 1974 年提出的一种非常有效地推理算法,该算法是一种基于 max-min 关系的推理算法。该算 法对于不同的模糊推理模型有不同的算法描述:即包含有单输入单输出模糊推理模型算 法;多规制、单输入单输出模糊推理算法。本设计采用基于专家经验知识的模糊推理模 型,为多规则、二输入单输出模型。 5
设 Ai 论域 X 上的模糊集,Bi 是论域 Y 上的模糊集,Ci 是论域 Z 上的模糊集 (i=1,2,…,n)。多规则、二输入单输出模糊推理模型为: IF X=Ai AND Y=Bi THEN Z=Ci 运用极大极小推理算法可以得到推理结果 : 其中 , 为前提条件值, 为结论值, 表示 min。 上面的最终结论由综合推理结果 , , ……… 得到的,即: ; 若实际液位为 ,那么阀门模糊开度为 ,其中 为阀门角度的模糊值; 3.5 解模糊 解模糊化方法有最大隶属度法,中位数法,加权平均法,重心法,求和法或估值法 等等,针对系统要求或运行情况的不同而选取想适应的方法。最大隶属度法的算法简单, 使用方便,但对输出信息量利用不多;加权平均法可以通过调整权系数的大小来改善系 统的响应特性,方法的灵活性较大,但由于其权系数的选取需要根据实际操作经验来反 复进行调整才能取得较好的控制效果。重心法包涵了模糊集合的所有信息,并根据隶属 度的不同而有所侧重, 而且具有更平滑的输出推理控制。即对应于输入信号的微小变 化,其推理的最终输出一般也会发生一定得变化,且这种变化明显比最大隶属度函数法 要平滑。因此,我们采用重心法进行解模糊,重心法的公式如下: ; 将上述模糊推理求得的阀门角度模糊值往这个公式里面带,最终就求得实际实际所 要求的阀门角度,通过单片机控制电机,电机再控制水阀阀门,就可以对液位进行实时 控制。 6 iC)()()()(000zuyuxuzuiiiiCBAC0x0y0z1C2C3CnCiiiniCBAZYXR)(),,(1DRDuumkkvmkkvkvuvuvu11)()(
4 仿真及其结果 我们可以任意假定实际水压(在 0.8~1.2Mpa 之间),再根据相关公式将水压转化为 液位变化 X,再代入上述公式可以得到理论上应该要求的水阀角度;通过 matlab 编程并 仿真得到模糊系统输入、输出曲面图。并且可以进一步求出输出误差曲线图,观察是否 与理论上相差很大。从而进一步验证该模糊控制器良好的控制性能。 5 总结 本文重点介绍了模糊控制的实现方案,在此基础上给出以单片机 AT89S52 为核心部 件的控制器的硬、软件设计。着重围绕模糊控制规制,以模糊推理算法作为控制系统核 心,开发出具有实际应用价值的模糊控制器,该模糊控制系统具有控制方法简单,控制 性能好等特点。 参考文献: [1] 张 玉 , 晋 小 莉 , 马 保 吉 。 基 于 单 片 机 的 模 糊 控 制 系 统 [J] 。微 计 算 机 信 息 , 2008,24(3);137-139. [2] 张吉礼,欧进萍,孙德兴。基于作用模糊子集推理的单片机模糊控制器的研制与开 发[J].电子测量与仪器学报,2000,14(3):54-59. [3] 雷建龙。基于单片机的模糊控制器的设计[J].微计算机信息,2006,22(6):49-51. [4] 韦巍 智能控制技术,机械工业出版社,2001.1 7
分享到:
收藏