资源描述:
《神经网络pid实验平台在wincc中实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、-神经网络PID实验平台在WinCC中的实现摘要:分析了带死区的积分分离PID控制算法,在此基础上,将应用最广泛的PID控制器与具有自学习功能的神经网络相结合,提出了基于BP神经网络的PID控制算法。并利用WinCC的全局脚本编辑器,将用户自行开发的神经网络控制算法嵌入WinCC中,开发了神经网络实验平台,然后通过WinCC与PLC之间的通讯,实现对被控实验对象的神经网络控制。关键词:带死区的积分分离PID;WinCC;实验平台;神经网络的PID中图分类号:TP31文献标识码:文章编号:Abstract:Analyzingofthedead-sectiona
2、ndintegralsplittingPIDalgorithm,andmeltingthewide-usedPIDcontrollerandtheautomaticlearningnervenetwork,thepapergotaPIDcontrolalgorithmbasedontheBPnetwork.ThenetworkalgorithmisembeddedinWinCCandaneuralnetworklabtableisexploredbytheglobescenarioseditorinWinCC.Thelabtargetiscontrolled
3、bynervenetworkthroughthecommunicationbetweentheWinCCandPLC.Keywords:dead-sectionandintegralsplittingPID;WinCC;labtable;neuralnetworkPID1前言为了适应自动化及相关专业教学需要,加深学生对控制理论及控制工程的认识和理解,实验教学控制系统除采用常规PID及改进算法外,也可采用了自适应、预测模型、模糊专家系统、神经网络等智能控制算法。为了方便学生了解人工神经网络原理及特点,对神经网络模型、控制算法及应用技术有一个基本的认识,在以有的
4、控制系统实验软件中嵌入了神经网络控制算法,开发神经网络实验平台,用以调节PID控制器的三个可调参数Kp、KI、KD。2带死区的积分分离PID控制算法带死区积分分离PID控制实验原理框图如图1所示。变送器检测得到被控对象的输出4~20mA的电流反馈信号输入PLC,由AI模块经A/D转换成数字信号yf(t)后。再与从上位机键盘输入的给定值yr.---(t)(从键盘输入)比较,得到偏差信号e(t)。PLC根据偏差信号e(t),执行带死区积分分离PID控制算法程序,计算出控制量,由AO模块经D/A转换成4~20mA的电流控制信号u(t),控制广义对象的输出y(t),
5、使其跟踪给定值yr(t)。图1带死区积分分离PID控制实验原理在普通的PID数字控制器中引入积分环节的目的,主要是为了消除静差、提高精度。但在过程的启动、结束或大幅度增减设定值时,会造成PID运算的积分积累,致使算得的控制量超过执行机构可能最大的动作范围所对应的极限控制量,最终引起系统较大的超调,甚至引起系统的振荡,这是大多数工业生产过程所不允许的。为了避免上述情况发生,采用积分分离PID控制算法,既保持了积分作用,又可以减小超调量,使得控制性能有了较大的改善。其具体实现如下:(1)根据实际情况,设定一阈值ε>0。(2)当│e(k)│>ε时,也即偏差值│e(
6、k)│比较大时,采用PD控制,可避免过大的超调,又使系统有较快的响应。(3)当│e(k)│≤ε时,也即偏差值│e(k)│比较小时,采用PID控制,可保证系统的控制精度。对于算法实现,可在积分项乘一个系数β,β按下式取值:将增量式PID算式写成积分分离形式即为.---当│e(k)│>ε时,即β=0,进行PD控制,PD控制算法为:当│e(k)│≤ε时,即β=1,进行PID控制,PID控制算法为:另外,实际系统要求机械装置运动到位后,控制作用不要频繁变动,以免机械磨损(或电子调节阀过热烧坏)。为了避免控制动作的过于频繁,消除频繁动作引起的振荡,只在累积偏差超出一定
7、的范围后才作调整,可采用带死区的PID控制。相应的控制算式如下:式中,死区εo(εo>0)是一个可调的参数,其具体数字可根据实际控制对象确定。若εo值太小,使动作过于频繁,达不到稳定被控对象的目的;若εo值太大,则系统将产生较大的稳态误差,降低控制精度。此控制系统实际上是一个非线性系统,即当│e(k)│≤εo时,PID调节器控制量输出为零;当│e(k)│>εo,PID调节器由控制量输出。3基于BP神经网络的PID控制算法对于经验不足的工程人员来说,要达到好的PID控制效果并不是很容易。这是因为常规PID控制的关键问题就是PID参数整定,且一旦整定计算好后,在
8、整个控制过程中都是固定不变的,而实际过程中,由于系统