基于BP神经网络的温度模糊PID控制器设计
基于BP神经网络的温度模糊PID控制器设计

    BP神经网络的网络结构是一个前向的多层网络,该网络中不仅含有输入层节点和输出层节点,而且还含有一层或多层的隐层节点。在BP神经网络中,同层的各神经元之间互不连接,相邻层的神经元则通过权值连接。当有信息输入BP神经网络时,信息首先由输入层节点传递到{dy}层的隐层节点,经过特征函数(人工神经元)作用之后,再传至下一隐层,这样一层一层传递下去,直到最终传至输出层进行输出。其间各层的激发函数要求是可微的,一般是选用S型函数。最基本的BP神经网络是包括输入层,隐层,输出层这三层节点的前馈网络,其结构如图1

模糊控制作为智能控制的一个重要分支,主要是模仿人的控制经验而不依赖被控对象的数学模型,因此若将模糊控制与PID控制结合起来组成模糊PID自适应控制器,使PID参数不依赖于被控对象的数学模型,并且能够动态调整PID参数以实现其优化,解决BP神经网络温度控制所面临的问题。

2模糊PID控制器的设计

对于某一BP神经网络温度控制系统,测温、内部变化及执行机构可以等效为以下传递函数,利用模糊控制根据系统的反馈时刻选择适当的PID参数,实现参数动态调节,原理见图2。

2.1 模糊控制器参数的论域及隶属度函数

由图2可知PID控制器的比例增益Kp、积分增益Ki和微分增益Kd作为模糊控制器的输出,系统误差e和误差变化率△e作为模糊控制器的输入,故系统中的模糊控制器有2个输入3个输出。

2.1.1 输入变量的论域及隶属度函数

根据实际情况,误差e和误差变化率△e的论域都选为{负大,负中,负小,零,正小,正中,正大),用符号表示为{NB,NM,NS,ZO,PS,PM,PB},采用如图3所示的隶属函数。

2.1.2 输出量的论域及隶属度函数

模糊控制器的输出分别为比例增益Kp、积分增益Ki和微分增益Kd,为了方便,可将其归一化为0~1之间的参数K′p和K′d,Ki可以表示为Ki=K2p/(αKd),故模糊控制器的直接输出变量为α,K′p和K′d。

α的论域为{S,MS,M,B),其隶属函数为一单点隶属函数,如图4所示。

K′p和K′d的隶属函数如图5所示。需要说明的是设计模糊控制器时隶属度函数并非随意确定的,如何选择隶属度函数,文献[3]中作了明确的阐述。

2.2模糊规则

根据实际经验,对本文中工业对象的控制可以总结为一系列推理语言规则,例如:

将上述规则用表的形式表示出来,即模糊控制规则表,如表1~表3所示。

3模糊控制器的实现及仿真

对上述模糊控制器采用直接在Simulink图形化工具平台建模并仿真。主要步骤如下:

(1)建立相应的模糊推理系统

首先在命令窗口输入fuzzy,回车便打开FIS的编辑器界面。添加输入输出变量并分别命名为e,ec,K′p,K′d,α采用Mamdani推理方法。其次对输入输出变量的隶属度函数进行编辑,之后进入规则编辑器将表1~表3中的规则添加其中,{zh1}将所建立的模糊推理系统存盘并命名为fisl,值得注意之处是存盘后还须选择'save to workspace'项,以便在建模时能调用这个文件。

(2)在Simulink中建模并仿真

本控制系统中由于被控对象的非线性和复杂性,PID控制器的参数是变化的,如式(1),(2)所示:

其中KU=4,TU=2.9;选择一组PID参数:Kp=2.19,Kd=0.258,Ki=1.03,其对应的PID控制器传递函数为D(s)=KP(1+1/Kis+Kds),即可得到常规PID控制器的xxxx。作为比较,建立模糊控制器的xxxx如图6所示,其中Matlab function根据式(3),(4),(5)将归一化的参数转化为实际的PID参数

需要说明的是出于方便考虑,此处将传统PID控制器与模糊PID控制器集合在一个控制模型中,利用Simulink库中的Switeh模块进行两者之间的切换。

4结 语

对上述模型进行仿真并将PID仿真结果与模糊PID控制仿真结果进行比较,如图7所示。可以发现对系统进行模糊PID控制,响应过程平稳,超调减小,响应时间也较快,性能良好。



郑重声明:资讯 【基于BP神经网络的温度模糊PID控制器设计】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——