基于BP神经网络的模糊PID控制器的设计
2014-04-29张文兴
张文兴
【摘要】工业过程控制中广泛采用PID控制,但传统PID控制因其控制参数的固定,在线整定难等问题。为此本文研究了一种新的自适应模糊PID控制方法,为了解决模糊推理没有学习能力的问题,本文又提出了一种基于BP神经网络的自适应模糊控制方法。此方法是模糊控制、神经网络和PID控制的有效结合。仿真实验表明,这种基于BP神经网络的模糊PID控制算法具有良好的控制效果。
【关键词】PID控制;BP神经网络;模糊PID控制
Abstruct:PID control are widely used in industrial process control,but the traditional PID control because of its control parameters are fixed,and it is difficult to adjust its parameters online.So this paper studies a new adaptive fuzzy PID control method,to solve problem without the ability to learn,and put forward a kind of adaptive fuzzy control method based on BP neural network in this paper.It is the effective combination of fuzzy control,neural network and PID control.Simulation results show that this fuzzy PID control method based on BP neural network has good control effect.
Keywords:PID control;BP neural network;Fuzzy PID control
1.引言
常规PID在控制领域被广泛应用,利用数学算法来整定参数。而且随着控制系统的复杂,被控对象很难建立数学模型,人们开始探索新的控制方式。模糊控制不要求掌握被控对象的精确的数学模型,根据人工控制规则组织控制决策表,然后由该表决定控制量的大小。在一般的模糊系统设计中,规则是由经验丰富的专业人员以语言的方式表达出来的。但对于某些问题即使是很有经验的专业人员也很难将他们的经验总结、归纳为一些比较明确而简化的规则。在这种情况下,就可以应用神经网络的方法,依靠BP神经网络的自学习功能,实现模糊控制的神经、模糊融合技术,并借助其并行分布的结构来估计输入到输出的映射关系,直接从原始的工作数据中归纳出若干控制规则。从而为模糊系统建立起行之有效的决策规则。
2.PID控制器原理
2.1 PID控制的微分方程
PID控制器是一种线性控制器,它将给定值r(t)与实际输出值c(t)的偏差的比例(p)、积分(I)、微分(D)通过线性组合构成控制量,对控制对象进行控制。
式中:
2.2 PID控制器各环节的作用
(1)比例环节:及时成比例地反应控制系统的偏差信号e(t),偏差一旦产生,控制器立即产生控制作用以减小偏差。
(2)积分环节:积分作用会使系统稳定性下降,Kd大会使系统不稳定,但能消除静态误差。
(3)微分環节:能反应偏差信号的变化趋势,并能在偏差信号值变得太大之前,在系统中引入一个早期修正信号,从而加快系统的动作速度,减小调节时间。Kd偏大时,超调较大,调节时间短;Kd偏小时,超调量也较大,调节时间长;只有Kd合适时才能超调小,时间短。
3.BP神经网络与模糊控制
模糊控制是运用语言归纳操作人员的控制策略,运用变量和模糊集合理论形成控制算法的一种控制。如何让机器像人一样识别、理解模糊规则并进行模糊逻辑推理,最终得出新的结论并实现自动控制是模糊控制研究的主要内容。模糊控制器的基本结构如图1所示。
图1 模糊控制结构
人工神经网络是由大量人工神经元经广泛互连二组成的,它可用来模拟脑神经系统的结构和功能。人工神经网络可以看成是以人工神经元为节点,用有向加权弧连接起来的有向图。BP网络是一种利用误差反向传播训练算法的神经网络,是一种有隐含层的多层前馈网络,系统地解决了多层网络中隐含单元连接权的学习问题。BP学习算法的基本原理是梯度最速下降法,它的中心思想是调整权值使网络总误差最小。也就是采用梯度搜索技术,以期使网络的实际输出值与期望输出值的误差均方值为最小。网络学习过程是一种误差边向后传播边修正权系数的过程。其结构如图2所示。
图2中隐含层第一层神经元为7个,分别对应7个模糊子集:NB、NM、NS、ZO、PS、PM、PB。第二层49个神经元代表49条规则。第三层7个神经元代表输出的7个模糊子集。模糊控制不依靠对象的数学模型,但模糊规则的建立需要人工经验。采用BP算法对工程经验和专家经验的模糊规则进行训练,其实就是把模糊规则用神经网络来表示,即经过神经网络的学习,将模糊规则以加权系数的形式表现出来,规则的生成就转化为加权系数的确定和修改。
神经网络是大规模并行运算,但由于网络结构复杂,训练和学习需要大量的时间,所以目前还无法实现实时控制。在具体应用中,我们是先离线将神经网络的各层权值和阈值训练出来,将其参数固定下来,然后将有系统检测、计算得到的误差变化直接代入非线性映射关系中,由计算机算出控制量,再用作被控对象。在matlab下以、、为输出的BP网络仿真训练如图3、图4、图5所示。
4.模糊PID控制器的原理与仿真
对于某一BP神经网络控制系统,其中内部变化及被控对象的数学模型为:
利用模糊控制对PID参数实现在线调节,原理如图6。
图6 模糊PID控制原理图
采用Z-N法和试凑法相结合,借助MATLAB的SIMULINK平台,对被控对象进行常规PID仿真。参数值:kp=15,ki=6,kd=0.05。如图7。作为比较,建立模糊PID控制器的仿真模型如图8。
图9、图10分别为被控对象G(s)在阶跃输入下常规PID和模糊PID仿真结果的比较。
经过仿真发现,常规PID控制缺点是超调量大,调节时间长,动态性能差。优点是控制精度高,稳定性能好。模糊控制动态性能很好,上升速度快,基本无超调。但由于模糊化所造成的稳态误差,在没有积分环节的情况下很难消除,故稳态性能差。模糊PID继承了二者的优点,摒弃二者缺点,具有更全面优良的控制性能。
5.结论
针对大滞后、慢时变、非线性的复杂系统,提出了一种基于BP神经网络的模糊PID控制算法,该算法不依赖被控对象的精确数学模型,可实现在线自调整模糊规则,从而增强了模糊控制器的自学习能力。通过算法的仿真研究,验证了算法的可行性。
参考文献
[1]李华.计算机控制系统[M].北京:机械工业出版社,2007.
[2]高隽.人工神经网络原理及仿真实例[M].北京:机械工业出版社,2007.
[3]蔡自兴.智能控制[M].北京:电子工业出版社,2003.
[4]李国勇.智能控制及其MATLAB实现[M].北京:电子工业出版社,2005.
[5]张德丰.MATLAB神经网络应用设计[M].北京:机械工业出版社,2009.
[6]刘金琨.先进PID控制及其MATLAB仿真[M].北京:电子工业出版社,2003.
[7]刘玲.三容水箱的单神经元自适应PID控制研究[J].信息技术,2005,3(8):32-137.
[8]张咏军,王航宇.基于神经网络的温度模糊PID控制器设计[J].现代电子技术,2008(7):133-135.
[9]侯涛.神经PID控制在双容水箱液位控制的实验研究[J].兰州州交通大学学报,2009,28(3):42-43.