基于BP神经网络的PID控制器的设计资料

上传人:桔**** 文档编号:498339993 上传时间:2023-07-09 格式:DOC 页数:19 大小:473KB
返回 下载 相关 举报
基于BP神经网络的PID控制器的设计资料_第1页
第1页 / 共19页
基于BP神经网络的PID控制器的设计资料_第2页
第2页 / 共19页
基于BP神经网络的PID控制器的设计资料_第3页
第3页 / 共19页
基于BP神经网络的PID控制器的设计资料_第4页
第4页 / 共19页
基于BP神经网络的PID控制器的设计资料_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《基于BP神经网络的PID控制器的设计资料》由会员分享,可在线阅读,更多相关《基于BP神经网络的PID控制器的设计资料(19页珍藏版)》请在金锄头文库上搜索。

1、基于BP神经网络的PID控制器的研究与实现课程名称:人工神经网络目录前言2一、BP神经网络3二、模拟PID控制系统5三、基于BP神经网络的PID控制器6四、仿真程序10五、运行结果17六、总结18参考文献19前言人工神经网络是以一种简单神经元为节点,采用某种网络拓扑结构构成的活性网络,可以用来描述几乎任意的非线性系统。不仅如此,人工神经网络还具有学习能力、记忆能力、计算能力以及各种智能处理能力,在不同程度和层次上模仿人脑神经系统的信息处理、存储和检索的功能。不同领域的科学家,对人工神经网络有着不同的理解、不同的研究内容,并且采用不同的研究方法。对于控制领域的研究工作者来说,人工神经网络的魅力在

2、于:能够充分逼近任意复杂的非线性关系,从而形成非线性动力学系统,以表示某种被控对象的模型或控制器模型;能够学习和适应不确定性系统的动态特性;所有定量或定性的信息都分布储存于网络内的各神经单元,从而具有很强的容错性和鲁棒性;采用信息的分布式并行处理,可以进行快速大量运算。对于长期困扰控制界的非线性系统和不确定性系统来说,人工神经网络无疑是一种解决问题的有效途径。正因为如此,把人工神经网络引入传统的 PID 控制,将这两者结合,则可以在一定程度上解决传统 PID 调节器不易在线实时整定参数、难于对一些复杂过程和参数慢时变系统进行有效控制的不足。一、BP神经网络BP神经网络是一种有隐含层的多层前馈网

3、络,其结构如图1-1所示。如果把具有M个输入节点和L个输出节点的BP神经网络看成是从M维欧氏空间到L维欧氏空间的非线性映射,则对于具有一定非线性因数的工业过程被控对象,采用BP网络来描述,不失为一种好的选择。在BP神经网络中的神经元多采用S型函数作为活化函数,利用其连续可导性,便于引入最小二乘学习算法,即在网络学习过程中,使网络的输出与期望输出的误差边向后传播边修正加权系数,以期使误差均方值最小。BP神经网络的学习过程可分为前向网络计算和反向误差传播连接加权系数修正两个部分,这两个部分是相继连续反复进行的,直至误差满足要求。不论学习过程是否已经结束,只要在网络的输入节点加入输入信号,则这些信号

4、将一层一层向前传播;通过每一层时要根据当时的连接加权系数和节点的活化函数与阈值进行相应计算,所得的输出再继续向下一层传输。这个前向网络计算过程,既是网络学习过程的一部分,也是将来网络的工作模式。在学习过程结束之前,如果前向网络计算的输出和期望输出之间存在误差,则转入反向传播,将误差沿着原来的连接通路回送,作为修改加权系数的依据,目标是使误差减小。图1-1二、模拟PID控制系统PID控制是最早发展起来的控制策略之一,它以算法简单、鲁捧性好、可靠性高等优点而梭广泛应用于工业过程控制中。PID控制系统结构如图1-2所示:图1-2它主要由PID控制器和被控对象所组成。而PID控制器则由比例、积分、微分

5、三个环节组成。它的数学描述为:式中,为比例系数;为积分时间常数:为微分时间常数。简单说来,PID控制器各校正环节的主要控制作用如下:1比例环节即时成比例地反映控制系统的偏差信号,偏差一旦产生,控制器立即产生控制作用,以减少偏差。2积分环节主要用于消除静差,提高系统的无差度。积分作用的强弱取决于积分时间常数,越大,积分作用越弱,反之则越强。3微分环节能反映偏差信号的变化速率,并能在偏差信号值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节时间。PID控制器有如下特点:原理简单,实现方便,是一种能够满足大多数实际需要的基本控制器;控制器能适用于多种截然不同的对象,

6、算法在结构上具有较强的鲁棒性,在很多情况下,其控制品质对被控对象的结构和参数摄动不敏感。 三、基于BP神经网络的PID控制器PID控制要取得好的控制效果,就必须对比例、积分和微分三种控制作用进行调整以形成相互配合又相互制约的关系,这种关系是从变化无穷的非线性组合中找出最佳的关系。神经网络具有任意的非线性表示能力,可以通过对系统性能的学习实现具有最佳组合的PID控制器。 图1-3BP神经网络由于其具有逼近任意非线性函数的能力,而且结构和学习算法简单明确,因此在神经网络控制中常采用BP网络结构来建立控制器。通过BP神经网络自身的学习,从而可以找到某一最优控制律下的参数。基于BP神经网络的PID控制

7、系统结构如图1-3所示,控制器由两部分缀成:经典的控制器:直接对被控对象进行闭环控制,并且三个参数为在线整定;神经网络NN:根据系统的运行状态对应于控制器的三个可调参数,。通过神经网络的自学习、调整权系数,从而使其稳定状态对应于某种最优控制律下的PID控制器参数。PID的控制算式为: 式中,分别为比例、积分、微分系数。将看为依赖于系统运行状态的可调系数时,可将(3.12)式描述为:式中是与等有关的非线性函数,可以用 BP神经网络NN通过训练和学习来找出一个最佳控制规律。假设BP神经网络NN是一个三层BP网络,其结构如图3.4所示,有M个输入节点、Q个隐层节点、三个输出节点。输出节点分别对应控制

8、器的三个可调参数。其激发函数为非负的Sigmoid函数。而隐含层的激发函数可取正负对称的Sigmoid函数。神经网络的前向算法如下:设PID神经网络有M个输入,3个输出(), 上标(1)(2)(3)分别代表输入层、隐含层和输出层,该PID神经网络在任意采样时刻k的前向计算公式如下所述:网络输入层的输入:=,(,;网络隐含层的输入、输出算法如式(322)所示: ,式(322)中表示隐含层第个神经元到第个神经元的加权系数,隐含层神经元活化函数取正负对称的Sigmoid函数: 网络输出层的输入、输出算法如式(334)所示: 式中为隐含层到输出层加权系数,输出层神经元活化函数取非负Sigmoid函数:

9、 (=) 性能指标函数: 根据最速下降法修正网络的加权系数,并附加一使搜索快速收敛全局极小的惯性项,则有: 式中为学习速率;为惯性系数。 = 由于式(8)中的未知,所以可以近似用符号函数取代。由数字PID控制律式(2)可以求得: 再令:=,可得BP神经网络输出层的加权系数计算公式为同理可得隐含层加权系数的计算公式为其中 =,基于BP神经网络PID控制算法可以归纳为:选定BPNN的结构,即选定输入层节点数M和隐含层节点数Q,并给出各层加权系数的初值,选定学习速率和惯性系数;采样得到和,计算;对进行归一化处理,作为BPNN的输入;计算BPNN的各层神经元的输入和输出,输出层的输出即为PID控制器的

10、3个参数;计算PID控制器的输出,参与控制和计算;计算修正输出层的加权系数;计算修正隐含层的加权系数:置返回。四、仿真程序 %BP based PID Controlclear all;close all; xite=0.25;alfa=0.05; S=1; %Signal type IN=4;H=5;Out=3; %NN Structureif S=1 %Step Signalwi=-0.6394 -0.2696 -0.3756 -0.7023; -0.8603 -0.2013 -0.5024 -0.2596; -1.0749 0.5543 -1.6820 -0.5437; -0.3625

11、-0.0724 -0.6463 -0.2859; 0.1425 0.0279 -0.5406 -0.7660;%wi=0.50*rands(H,IN);wi_1=wi;wi_2=wi;wi_3=wi;wo=0.7576 0.2616 0.5820 -0.1416 -0.1325; -0.1146 0.2949 0.8352 0.2205 0.4508; 0.7201 0.4566 0.7672 0.4962 0.3632;%wo=0.50*rands(Out,H);wo_1=wo;wo_2=wo;wo_3=wo;end if S=2 %Sine Signalwi=-0.2846 0.2193

12、-0.5097 -1.0668; -0.7484 -0.1210 -0.4708 0.0988; -0.7176 0.8297 -1.6000 0.2049; -0.0858 0.1925 -0.6346 0.0347; 0.4358 0.2369 -0.4564 -0.1324;%wi=0.50*rands(H,IN);wi_1=wi;wi_2=wi;wi_3=wi;wo=1.0438 0.5478 0.8682 0.1446 0.1537; 0.1716 0.5811 1.1214 0.5067 0.7370; 1.0063 0.7428 1.0534 0.7824 0.6494;%wo=

13、0.50*rands(Out,H);wo_1=wo;wo_2=wo;wo_3=wo;end x=0,0,0;u_1=0;u_2=0;u_3=0;u_4=0;u_5=0;y_1=0;y_2=0;y_3=0; Oh=zeros(H,1); %Output from NN middle layerI=Oh; %Input to NN middle layererror_2=0;error_1=0; ts=0.001;for k=1:1:6000time(k)=k*ts; if S=1 rin(k)=1.0;elseif S=2 rin(k)=sin(1*2*pi*k*ts);end%Unlinear modela(k)=1.2*(1-0.8*exp(-0.1*k);yout(k)=a(k)*y_1/(1+y_12)+u_1; error(k)=rin(k)-yout(k); xi=rin(k),yout(k),error(k),1; x(1)=error(k)-error_1;x(2)=error(k);x(3)=error(k)-2*error_1+error_2; epid=x(1);x(2);x(3);I=xi*wi;for j=1:1:H Oh(j)=(exp(I(j)-exp(-I(j)/(exp(I(j)+exp(-I(j); %Middle Lay

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号