刘铭
摘 要:模糊控制(Fuzzy Control)是基于模糊语言变量、模糊逻辑理论等理论以及实践经验逐步发展而形成的,使得现代控制技术、计算机技术能够有效融合,是一种现代智能控制技术。该控制方法的优点为,对建模精度要求相对较低;基于工作人员的经验可实现对系统的有效控制。也正是因为这些优势,在大时滞、非稳定等情况下,模糊控制的抗扰动能力较为突出。因此,该文主要就模糊算法在PLC程序的实现进行了简要的阐述。
关键词:模糊算法 模糊控制 PLC程序
中图分类号:TP273 文献标识码:A 文章编号:1672-3791(2019)12(a)-0014-02
1 模糊控制系统简介
模糊控制系统的主要部分如图1所示,其主要构成包括执行器、传感器等。对比分析模糊控制系统与PID控制器能够发现,两种方法在很多方面存在差异,包括各自的算法原理、输入维数等都有所差异。
2 模糊控制器的设计
图2为模糊控制器的原理框架图。
模糊控制器的设计流程如下。
(1)明确模糊控制器的构成。
输入维数的大小在很大程度上会对控制结果产生影响,因此,为了使得控制结果尽可能精确,要求选择尽量多的输入维数,而输入维数过多必然会导致规则库所需的数据量过多,这就加大了指定难度。笔者参考操作人员的实践经验,最终在模糊控制器的设计中确定了双输入单输出的控制结构,采取这种结构更为合理,得到的结果也比较理想。
(2)确定模糊语言值。
该系统中e、ec为输入值,E与EC即为对前者进行了模糊处理之后获得的,最终的输出值为U。模糊语言值的选择为{负大(NB)、负中(NM)、负小(NS)、零(ZO)、正小(PS)、正中(PM)、正大(PB)},相应的量化等级为{-3,-2,-1,0,1,2,3}。
(3)選择隶属函数。
在选择隶属度函数时通常会以专家以及工作人员的经验为依据,在设计本系统时,考虑到项目实际情况与工作人员的经验,最终确定三角形隶属度函数为控制函数。
(4)输入值的模糊化。
将得到的e与ec与各自相对应的量化因子Ke和Kec相乘,即可计算得出E与EC,这一操作过程就是输入的模糊化。例如e的变化范围为[a,b],则相应论域E的取值范围要求为[-n,n],如下所示为对应的变化方程式:
(1)
(2)
(5)建立模糊规则库。
模糊规则库是依据操作人员的工作经验,以及现场的实际情况,综合三角形隶属度函数以及模糊的运算法则而得到的,具体如图1所示。
(6)模糊推理。
结合表1,运用Mamdani推理方法,由if、and、or、then等模糊语句及其运算关系可得下式所示的模糊关系R。
R=E×EC×U (3)
可得模糊推理为:
R1:if e is NB and ec is NB then U is PB
R2:if e is NB and ec is NM then U is PB
R3:if e is NB and ec is NS then U is PM
R4:if e is NB and ec is ZO then U is PM
R5:if e is NB and ec is PS then U is ZO
R6:if e is NB and ec is PM then U is ZB
R7:if e is NB and ec is PB then U is NB
(7)调节量的清晰化。
完成上述程序操作之后可得模糊控制量U,将其与量化因子Ku相乘即可获得实际控制量u,即实现了调节量的清晰化。
3 模糊算法在PLC程序的实现
前述对模糊控制器的设计流程进行了简要阐述与分析,在此基础上能够得到模糊算法的程序图(见图3)。
(1)偏差e与偏差变化率ec的求取程序。
利用SUB_R指令能够完成对系统偏差e值的有效编程,ec为基于两次采样数据获得的插值,为了有效提升系统精度,保证采样时间的恒定性,还可调用循环中断组织块0B35,计算并ec。
(2)偏差e与偏差变化率ec的模糊化程序。
该系统中溶解氧的变化范围为0~10,e的变化范围设定为[0,12]。考虑到能耗问题,为了最大程度地降低能耗,使系统控制精度得以提升,该文共采用了49个实验数据,论域E对应的变化范围为[-3,3],按照前述公式可将偏差e线性转换得到论域E:
(4)
可得对应的比例因子为0.5。文章篇幅限制,该文并未对e、ec的模糊化程序进行详细阐述。
(3)模糊规则库的存储数据程序。
该系统的实验数据共计49个,考虑到数据存储以及寻址等问题,笔者将所有数据保存在DB数据块中。
(4)模糊寻址求取调节量程序。
该程序需要完成的首要工作就是实现对模糊论域元素{-3,-2,-1,0,1,2,3}的转换,经过转换后得到{0,1,2,3,4,5,6},随后通过固定地址加指针动态寻址将U写入至固定的DB块中。
(5)调节量去模糊化求取准确值程序。
通过前述操作程序,调节量的值已被传送至固定地址,随后需要进行的就是使其与比例因子相乘实现清晰化,整个程序完成。
参考文献
[1] 吴顺丽,王孟平,李昊楠,等.污水处理中溶解氧的单神经元PID控制算法设计与实现[J].河南科学,2018,36(10):1516-1520.
[2] 王雨萌.基于智能控制策略的污水处理控制系统[D].浙江大学,2018.
[3] 王德望,赵敏.污水处理系统溶解氧的BP-PID控制算法[J].软件导刊,2018,17(2):68-70,73.