基于智能控制算法液位控制系统的实现

2024-01-27 02:59虎恩典兰永平王大鹏
自动化与仪表 2024年1期
关键词:论域控制算法模糊控制

王 振,虎恩典,兰永平,王大鹏

(北方民族大学 电气信息工程学院,银川 750021)

在工业过程控制中,液位控制模型经常被用到,但由于管路复杂,建立其精确数学模型的过程非常困难,甚至不可实现。在实验室中,对于液位控制大多数采用的都是经典的PID 算法,而PID 控制则需要调节3 个控制参数,要想将3 个参数调节成最优组合,实现最优化控制比较困难[1-3]。智能控制算法越来越多样化,有些智能算法已经比较成熟,并且不需要知道被控过程的精确数学模型,比如模糊控制算法。在PLC 中都有模块化的PID 控制算法,使用方便,但并没有模糊控制算法模块,用PLC 实现模糊控制算法并改良是一项很有价值的研究。

1 双容水箱模型简介

如图1 所示,双容水箱液位控制系统有C1和C22 个水箱,上水箱C1的液位高度为H1,下水箱C2的液位高度为H2,其中H2为被控制量。

图1 中,R1、R2和R3分别为3 个手动阀 门,改变它们的开度可以看作是对控制系统的一个外部的扰动。进水量Q 由电动调节阀的开度来决定,电动调节阀为控制系统中的执行机构,其开度为系统的控制量[4-5]。

2 控制系统设计

压力变送器输出为4~20 mA 的电流信号,其对应的液位值为0~50 cm。电动调节阀的输入为4~20 mA 电流信号,其对应了0%~100%的阀门开度。如图2 所示,压力变送器将液位实际高度检测变送为4~20 mA 的电流信号,送入模拟量输入模组中,模拟量输入模组将连续的电流信号离散化为数字量送入S7-1500CPU。

图2 系统整体设计Fig.2 Overall system design

经过对这个数字量的标准化和放缩,转化为实际的液位高度,并送入触摸屏中显示。利用控制算法的计算得到一个控制量,这个控制量是数字量,需要将这个数字量信号送入模拟量输出模组中,模拟量输出模组将数字量转化为模拟量即4~20 mA 的电流信号,然后送入执行机构电动调节阀中。在MCGS触摸屏中插入一个实时曲线,将曲线链接到水箱液位高度变量上,就可以实现对水箱液位的实时监控。

3 模糊控制算法

3.1 控制系统原理

如图3 所示,用设定值R 减去下水箱液位的实际值C 得到误差值e,再经过微分运算得到了误差变化量ec。设计一个二维的模糊控制器,将e 和ec作为这个模糊控制器的输入变量,经过模糊控制算法的运算得到了控制量。由D/A 转换将这个数字信号转化为模拟信号,最后送入到执行机构电动调节阀来控制阀门的开度,最终实现下水箱液位的恒值控制。

图3 模糊控制原理框图Fig.3 Block diagram of fuzzy control principle

3.2 模糊控制器的设计

双容水箱液位控制系统,采用二维模糊控制器,即模糊控制器有2 个输入1 个输出。首先需要确定控制器的输入,其输入为误差信号e 和误差的变化量ec,输出为控制量u。对于误差e 和误差变化ec以及控制量u,为了控制器设计和后期修改的方便,将物理论域进行量化。物理论域e 和ec 量化后的论域表示为E 和EC,并且都量化到[-4,4]这个连续区间上。然后对输入进行模糊化,模糊化其实就是将一个真实的确定量变成一个模糊向量。对于输入量E 和EC,令它们的模糊集合均为{NB,NM,NS,ZO,PS,PM,PB},定义E 和EC 各模糊子集的隶属度函数,如图4 所示。

图4 隶属度函数Fig.4 Membership function

如果确定了E 和EC,则通过计算就可以知道其对于各模糊子集的隶属度,从而将精确量E 和EC变成了模糊向量,完成了对于输入E 和EC 的模糊化。在进行模糊推理之前要先建立模糊控制规则,模糊控制规则是由多组规则组成的,每个规则都是形如“IF E is A and EC is B then U is C”的条件语句,其中A、B、C 都是模糊子集。A 和B 表示输入变量的模糊值,C 表示输出变量的模糊值。通过模糊规则,可以将输入变量的模糊值映射到输出变量的模糊值,从而实现控制。由于输入E 和EC 均有7 种模糊值,所以全部组合起来有49 条模糊规则,为了更直观简洁,这些规则可用模糊规则来描述,如表1所示。

表1 模糊规则Tab.1 Fuzzy rule

有了模糊规则之后,就能进行模糊推理,模糊推理是设计模糊控制器的核心,推理的方法比较多,比如CRI 查表法和Mamdani 直接推理法等。CRI 查表法操作简单并且实时性较好,但是无法对控制规则进行在线调整;Mamdani 直接推理法是利用被激活的几条模糊规则进行在线的模糊推理,可以对控制规则在线调整,从而得到结果。模糊推理将模糊的输入信息转化为模糊的输出信息,也就是说将模糊输入映射到模糊输出上。将模糊控制器输出的物理论域u 量化后的论域表示为U,为了后面方便编程实现解模糊,将其量化到{-4,-3,-2,-1,0,1,2,3,4}这个离散区间上,有9 个输出量化级数。它的模糊集合也定义为{NB,NM,NS,ZO,PS,PM,PB},定义U 各模糊子集的隶属度,如表2 所示。

表2 输出U 上的各模糊子集的隶属度Tab.2 Membership of each fuzzy subset on output U

对于一个实际的输入(x*,y*),经过量化后得到(j,k),j 对于论域E 上的各模糊子集Ei是有隶属度μEi(j)的,k 对于论域EC 上的各模糊子集ECi也同样有隶属度μECi(k)。假设j 对于E1和E2的隶属度不为0,k 对于EC1和EC2的隶属度不为0,则在模糊控制规则中,最多有如下规则被激活:

所以,只需要对这4 条规则进行处理即可。首先对规则的条件部分的隶属度做与运算,即:

然后,再各自与规则中结论部分的模糊集合Un(n=1,2,3,4)做与运算,即:

其中:αn(n=1,2,3,4)是4 个模糊集合,最后再把这4 个模糊集合做并运算,得:

由模糊推理得到的U*仍然是一个模糊集合。

模糊控制器的最后一步是解模糊。模糊推理将模糊的输入信息转化为模糊的输出信息,但是这个模糊的输出信息不能直接用于控制,这就需要将模糊的输出信息还原为确定性的结果。解模糊就是将经过模糊化处理的信息重新还原为确定量的过程。解模糊的方法也有多种,如最大隶属度法、加权平均法、重心法等,不同的方法会产生不同的结果。最大隶属度法计算简单,但会丢失很多信息,而重心法有更平滑的输出推理控制,因此使用重心法,对于有9 个输出量化级数的离散域情况有:

式中:vi表示第i 个输出量化级数;μU*(vi)表示在模糊集合U*中vi的隶属度;uFC表示经重心法计算得到的精确量。

4 模糊积分控制算法

积分控制是控制系统中一种基础的控制方法,它可以用来消除系统的稳态误差并提高系统的稳定性。在积分控制中,控制器将系统的误差积分并将积分结果与积分系数相乘作为控制信号输出,从而实现对系统的控制。在原来的模糊控制系统的基础上,加入积分控制器,如图5 所示,此时的控制量变为模糊控制器的输出和积分控制器的输出之和,即:

图5 模糊积分控制系统框图Fig.5 Block diagram of fuzzy integral control system

式中:u 为总的控制量;uFC为模糊控制器输出的控制量;uS为积分控制器输出的控制量。

但在实际的计算机控制中,积分控制算法往往要加以改进,这是因为随着积分值的不断增大或减小,有可能会使得u>umax或者u

5 编程实现

在数据块中,有些参数需要设定初始值,如给定值和积分系数等。在主程序中只有显示程序,即对上水箱液位高度的显示、下水箱液位高度显示和阀门开度百分比显示。建立一个循环中断组织块,设置中断时间为2 s,即每2 s 执行一次中断子程序。在循环中断子程序中,需要进行误差和误差变化率的计算,对其进行量化,然后进行模糊控制计算、积分控制计算,最后输出控制量。积分控制的有无取决于积分系数,当积分系数设置为0 时相当于不加入积分,即系统为模糊控制;当积分系数不为0时,积分控制器开始起作用。

在MCGS 中绘制监控画面和实时曲线,然后对变量进行连接,进行通信设置。运行时的画面如图6所示。

图6 MCGS 运行画面Fig.6 MCGS operation screen

首先将积分系数设置为0.0,设定高度为20.0 cm,采样周期为2.0 s,这时的控制算法为纯模糊控制,测得曲线如图7 所示。

图7 模糊控制响应曲线Fig.7 Fuzzy control response curve

设置积分系数为5.0,设定高度为20.0 cm,采样周期为2.0 s,这时控制系统变为模糊积分控制,测的曲线如图8 所示。

图8 模糊积分控制响应曲线Fig.8 Response curve of fuzzy integral control

经过2 次实验,测量得到2 种控制系统阶跃响应的性能指标,如表3 所示。

表3 两次实验的性能指标Tab.3 Performance indicators of two experiments

6 结语

本系统采用西门子S7-1500系列PLC 作为主控制器,以MCGS 触摸屏为上位机,利用模糊控制和模糊积分控制算法实现了对双容水箱的液位控制。根据实验结果可以看出对于双容水箱液位控制系统来说,模糊控制算法和模糊积分控制算法都可以实现系统的稳定。模糊控制算法有12%的超调量,存在4 cm 的稳态误差,而模糊积分控制算法可以消除稳态误差,存在15%的超调量,达到峰值的时间比模糊控制要快。模糊控制和模糊积分控制都不需要知道系统的精确数学模型,对于该系统,模糊积分控制算法比模糊控制算法性能更优,且相对于传统的PID 控制算法来说,模糊积分控制算法只有积分系数一个参数,更容易调节。

猜你喜欢
论域控制算法模糊控制
基于变论域模糊控制的Taylor逼近型内模PID算法
变论域自适应模糊PID控制系统仿真与应用
基于ARM+FPGA的模块化同步控制算法研究
T-S模糊控制综述与展望
双论域粗糙集在故障诊断中的应用
基于模糊控制的PLC在温度控制中的应用
基于模糊控制的恒压供水系统的研究
微生物燃料电池的变论域自适应模糊控制研究
用于光伏MPPT中的模糊控制占空比扰动法
一种优化的基于ARM Cortex-M3电池组均衡控制算法应用