神经网络PID控制器的设计与仿真.doc_第1页
神经网络PID控制器的设计与仿真.doc_第2页
神经网络PID控制器的设计与仿真.doc_第3页
神经网络PID控制器的设计与仿真.doc_第4页
神经网络PID控制器的设计与仿真.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

*大学毕 业 设 计(论文)题 目 神经网络PID控制器的设计与仿真院 系专业班级学生姓名指导教师二八年六月神经网络PID控制器的设计与仿真摘要PID控制技术是一种应用很普遍的控制技术,目前在很多方面都有广泛的应用. 在工业控制中,PID控制是工业控制中最常用的方法。这是因为PID控制器结构简单、实现简单,控制效果良好,已得到广泛应用。据统计,在目前的控制系统中,PID控制占了绝大多数。但是,他具有一定的局限性:当控制对象不同时,控制器的参数难以自动调整以适应外界环境的变化。为了使控制器具有较好的自适应性,实现控制器参数的自动调整,可以采用神经网络控制的方法。利用人工神经网络的自学习这一特性,并结合传统的PID控制理论,构造神经网络PID控制器,实现控制器参数的自动调整。本论文讨论了基于神经网络的PID控制,利用神经网络的自学习能力进行在线参数整定,并利用Matlab软件进行仿真。通过仿真实现可以看出它具有自学习、自适应性等特点,网络的收敛速度快,能够对非线性对象有很好的控制,系统的跟踪性能很好其参数设定无需知道被控对象的具体参数及其数学模型,对不同的对象具有适应性关键词:PID控制神经网络Matlab 仿真The design and simulation of the neural network PID controllerABSTRACT PID control technology is a very common control technology in many aspects of a wide range of applications. In industrial control, PID control is the most commonly used in industrial control methods. This is because the PID controller simple structure, to achieve a simple, effective control, has been widely used. According to statistics, PID control is the vast majority in the present control system. However, he has certain limitations: When the control object is not at the same time, the controller parameters to automatically adjust to the changes in the external environment. In order to make the controller has good adaptability, and Controller Parameters of automatic adjustments can be used neural network control method. Using artificial neural network learning oneself, combined with the traditional PID control theory Structure of neural networks PID controller, and implementate the automatic adjustment of controller parameters. The thesis discussed according to the neural network PID controller,and control,make use of the neural network from the study ability to proceed its function to on-line parameter amend,and make use ofthe Matlab software proceeds to imitatereallyBy the simulation can see that it is to achieve self-learning, adaptability, and other characteristics ,network convergence speed, can have a good control on non-linear object ,and tracking of system performance very good. Its parameters need to know the object of the specific parameters and its mathematical model,and adapt different objects.KEY WORDS:PID control Neural network Matlab SimulationII目 录摘要IABSTRACTII1 绪论11.1 前言11.2 神经元网络PID的发展历程11.3 神经网络的特点21.4 神经网络的主要研究方向21.5 神经网络PID的发展现状和前景展望31.6 课题研究方法和内容32 神经网络控制理论42.1 神经网络的简介42.2 神经网络的基本概念42.3 神经网络控制的基本原理42.4 神经网络结构的分类52.5 神经网络的学习62.5.1 学习方式62.5.2 网络模型及其学习算法62.6 神经网络的训练73 应用MATLAB设计神经网络PID控制系统83.1 MATLAB、SIMULINK、神经网络工具箱简介83.2 神经网络工具箱与人工神经元网络设计93.3 PID控制器103.3.1 PID控制器简介103.3.2 PID控制的局限123.4 神经网络 PID 控制器的设计124 神经网络PID控制器的设计144.1 单神经元自适应PID控制器及其学习算法144.1.1 采用有监督Hebb学习算法的单神经元自适应PID控制器144.1.2 单神经元自适应PID控制器学习算法可调参数的选取规律164.1.3 单神经元自适应PID仿真164.2 基于BP神经网络PID控制器的设计194.3 小结225 结束语23参考文献24致谢251 绪论1.1 前言计算机技术的迅速发展,为计算机控制的发展和应用奠定了坚实的基础,过程计算机控制以自动控制理论和计算机技术为基础,实现了现代化生产过程的综合自动化,可使生产过程保持最佳运行状态,从而提高安全性、经济性和运行水平。随着人类科技的不断发展,受控对象越来越复杂,传统的PID控制已经不能满足人们的要求。主要表现在以下几个方面:不适应不确定性系统的控制;不适应非线形系统的控制;不适应时变系统的控制;不适应多变量系统的控制。由于这些局限性,传统控制方法和传统的神经元网络均不能单独胜任复杂系统的控制任务,因此需要研究新的更有效的控制方法。近年来,随着神经元网络的研究和应用,人们开始采用神经元网络和PID控制相结合,以便改进传统PID控制的性能。为此本论文设计了一种神经网络PID控制器,并给出了仿真结果和结论。1.2 神经元网络PID的发展历程一般认为,最早用数学模型对神经系统中的神经元进行理论建模的是美国心理学家麦卡洛克(W.McCulloch)和数学家皮茨(W.Pitts)。他们于1943年建立了MP神经元模型。MP神经元模型首次简单的数学模型模仿出生物神经元活动功能,并揭示了通过神经元的相互连接和简单的数学计算,可以进行相当复杂的逻辑运算这一令人兴奋的事实。1957年,美国计算机学家罗森布拉特(F.Rosenblatt)提出了著名的感知器(Perceptron)模型。它是一个具有连续可调权值矢量的MP神经网络模型,经过训练可达到对一定输入矢量模式进行识别的目的。1959年,当时的另外两位美国工程师威德罗(B.Widrow)和霍夫(M.Hoff)提出了自适应线性元件(Adaptive linear element,简称Adaline)。它是感知器的变化形式,尤其在权失量的算法上进行了改进,提高了训练收敛速度和精度。他们从工程实际出发,不仅在计算机上模拟了这种神经网络,而且还做成了硬件,并将训练后的人工神经网络成功地用于的小通讯中的回波和噪声,成为第一个用于解决实际问题的人工神经网络。1969年,人工智能的创始人之一明斯基(M.Minsky)和帕伯特(S.Papert)在合著的感知器一书中对以单层感知器为代表的简单人工神经网络的功能及局限性进行了深入分析。他们指出,单层感知器只能进行线性分类,对线性不可分的输入模式无能为力,而其解决的办法是设计出具有隐含层的多层神经网络,但是要找到一个有效修正权矢量的学习算法并不容易。这一结论使得当时许多神经网络研究者感到前途渺茫,客观上对神经网络理论的发展起了一定的消极作用。美国学者霍普菲尔德(J.Hopfield)对人工神经网络研究的复苏起到了关键性的作用。1982年,他提出了霍普菲尔的网络模型,将能量函数引入到对称反馈网络中,是网络稳定性有了明显的判据,并利用提出的网络的神经计算能力来解决条件优化问题。另外,霍普菲尔德网络模型可以用电子模拟线路来实现,从而由此还兴起了对新一代电子神经计算机的研究。另一个突破性的研究成果是儒默哈特(D.E.Rumelhart)等人在1986年提出的解决多层神经网络权值修正的算法误差反向传播法,简称BP算法,找到了解决明斯基和帕伯特提出的问题的办法,从而给人工神经网络增添了活力。1.3 神经网络的特点人工神经网络的以下几个突出的优点使它近年来引起人们的极大关注: (1)能逼近任意L2上的非线性函数;(2)信息的并行分布式处理与存储;(3)可以多输入、多输出;(4)便于用超大规模集成电路或光学集成电路系统实现,或用现有的计算机技术实现;(5)能进行学习,以适应环境的变化;人工神经网络的特点和优越性,主要表现在三个方面:第一,具有自学习功能。例如实现图像识别时,只在先把许多不同的图像样板和对应的应识别的结果输入人工神经网络,网络就 会通过自学习功能,慢慢学会识别类似的图像。自学习功能对于预测有特别重要的意义。预期未来的人工神经网络计算机将为人类提 供经济预测、市场预测、效益预测,其应用前途是很远大的。 第二,具有联想存储功能。用人工神经网络的反馈网络就可以实现这种联想。 第三,具有高速寻找优化解的能力。寻找一个复杂问题的优化解,往往需要很大的计算量,利用一个针对某问题而设计的反馈型 人工神经网络,发挥计算机的高速运算能力,可能很快找到优化解。 1.4 神经网络的主要研究方向 神经网络的研究可以分为理论研究和应用研究两大方面。理论研究可分为以下两类:利用神经生理与认知科学研究人类思维以及智能机理。利用神经基础理论的研究成果,用数理方法探索功能更加完善、性能更加优越的神经网络模型,深入研究网络算法和性能, 如:稳定性、收敛性、容错性、鲁棒性等;开发新的网络数理理论,如:神经网络动力学、非线性神经场等。 应用研究可分为以下两类:神经网络的软件模拟和硬件实现的研究。神经网络在各个领域中应用的研究。这些领域主要包括:模式识别、信号处理、知识工程、专家系统、优化组合、机器人控制等。 随着神经网络理论本身以及相关理论、相关技术的不断 发展,神经网络的应用定将更加深入。1.5 神经网络PID的发展现状和前景展望PID控制要取得较好的控制效果,就必须通过调整好比例、积分和微分三种控制作用在形成控制量中相互配合又相互制约的关系。这种关系不一定是简单的“线性组合”,从变化无穷的非线性组合中可以找出最佳的关系。神经网络所具有的任意非线性表达能力,可以通过对系统性能的学习来实现具有最佳组合的PID控制。采用BP网络,利用其具有逼近任意非线性函数的能力,结构和学习算法简单明确的优点,建立参数Kp,Ki,Kd自学习的PID控制器。基于BP网络的PID控制系统结构如图1-1所示,控制器有两部分组成:经典的PID控制器:直接对被控对象过程闭环控制,且三个参数Kp,Ki,Kd为在线调整方式;神经网络NN:根据系统的运行状态,调节PID控制器的参数,以期达到某种性能指标的最优化。图1-1 基于BP神经网络的PID控制系统结构1.6 课题研究方法和内容本课题主要研究的问题是神经网络作为控制器和传统PID控制器在控制思想,设计方法,适用对象上有什么不同,并设计一种神经网络PID控制器,选择不同的对象用MATLAB进行仿真,比较其与一般PID控制器在控制效果上有什么改进。2 神经网络控制理论2.1 神经网络的简介自80年代中后期以来,全世界特别是一些工业发达国家,掀起了一股竞相研究开发神经网络的热潮。在神经网络这个涉及多种学科的新的高科技领域中,吸引了众多的神经生理学家、心理学家、数理科学家、计算机与信息科学家,以及工程师和企业家等。大量的有关神经网络机理、模型、算法、特性分析,以及在各方面应用的学术论文,象雨后春笋般涌现在报刊杂志上和许多学术会议中。一时神经网络以及建立在神经网络原理基础上的神经计算机(Neurocomputer),成为当代高科技领域中方兴未艾的竞争热点。人工神经网络应用于化工领域主要是:谱图分析、结构与性能预测、信号处理、过程控制、故障诊断和化学反应产物估计等。关于过程控制和事故诊断是化工界非常重要的应用领域。用神经网络及时报告生产工况并进行控制信息反馈。国外已有人将神经网络用在蒸馏塔中,预测稳态下的可能故障。2.2 神经网络的基本概念神经网络系统是指利用工程技术手段,模拟人脑神经网络的结构和功能的一种技术系统,它是一种大规模并行的非线性动力学系统。由于它是由人工方式构造的网络系统,因此也称为人工神经网络系统。基于人工神经网络的控制简称为神经网络控制。神经网络控制是一种基本上不依赖于模型的控制方法,它适用于具有不确定性、事变的对象与环境,并具有较强的自适应能力、学习能力、非线性影射能力、鲁棒性和容错能力。 2-1神经网络基本模型2.3 神经网络控制的基本原理我们已经知道,神经网络由于其固有的自学习、自适应、自组织和大规模并行处理等能力,已经在模式识别、信号处理、系统辨识、控制,以及优化等领域得到了广泛的应用。近年来,神经网络在智能控制系统中显示了极大的应用潜力,人们已经利用神经网络来处理控制系统的非线性、不确定性和如何逼近系统的辨识函数等问题,并取得了大量的研究成果。根据控制系统的结构,可把神经控制的应用研究分为诸如监督式控制、逆控制、神经自适应控制和预测控制的方向。控制理论领域与神经网络之间的关系如图所示,其中的空白框表示没有明显的对应关系。图2-2 控制与神经网络的关系2.4 神经网络结构的分类 通常所说的神经网络的结构,主要是指其联接方式。连接方式的不同,其结构大致分为层次和网状两大类。层状结构的神经网络是由若干层组成,每层中包括一定数量的神经元,任意两个神经元之间都可能双向联接。下面介绍几种神经网络的拓扑结构。1)前馈网络前馈网络具有分层的结构,通常包括输入层、隐层(也称中间层,可有若干层)输出层。每一层的神经元只接收上一层神经元的输入,并且该层神经元的输出分别有一个输出送给下一层的各神经元。输入信息经过各层的顺次传递后,直到输出层输出。神经网络按照他扑结构属于以神经元为节点,以节点间有向连接为边的一种图。在前向网络中有计算功能的节点称为计算单元,而输入节点没有计算功能。2)反馈网络从输入曾到输出曾有反馈的网络称为反馈网络。在反馈网络中,任意一个节点既可接收来自前一层个节点的输入,同时也可接收来自后面任意节点的反馈输入。另外,由输出节点引回到其本身的输入而构成的自环反馈也属反馈输入。反馈网络的每一节点都是一个计算单元。3)混合型网络将同一层的神经元之间都有可能相互双向连接的网络结构,成为混合型网络。通过同层神经元之间的互联,可以限制每层内能同时动作的神经元数,并实现同一层神经元之间横向抑制或兴奋机制。4)相互结合型网络这种网络中任意两个神经元之间都有可能相互双向连接,所有神经原既作输入同时也作输出。在前向网络中,信号一旦通过某个神经元,信息处理过程就结束了。而在相互结合型网络中,信号要在各神经元之间来回反复传递,当网络从某种初始状态经过反复变化达到另一种新的平衡状态时,信息处理过程才能结束。2.5 神经网络的学习2.5.1 学习方式通过向环境学习获取知识并改进自身性能是神经网络的一个重要特点,在一般情况下,性能的改善是按某种预定的度量调节自身参数(如权值)并随时间逐步达到的,学习方式(按环境所共信息的多少分)有以下三种。1)有监督学习有监督学习方式需要外界存在一个“教师”,它对一组给定输入提供应有的输出结果(正确答案),这组已知的输入/输出数据成为训练样本集。学习系统可根据已知输出与实际输出之间的差值(误差信号)来调节系统参数。2)无监督学习无监督学习是不存在外部教师,学习系统完全按照环境所提供数据的某些统计规律来调节自身参数或结构(这是一种自组织过程),以表示外部输入的某种固有特性(如聚类,或某种统计上的分布特征)。3)强化学习强化学习介于上述两种情况之间,外部环境对系统输出结果只给出评价(奖或罚)而不是给出正确答案,学习系统通过强化那些受奖励的动作来改善自身性能。强化学习与有监督学习类似,只是他不想有监督的学习那样为每一个输入提供相应的目标输出,而是仅仅给出一个级别。这个级别是对网络在某些输入序列上的性能测度。当前,这种类型的学习要比有监督的学习少见。它最适合控制系统应用领域。2.5.2 网络模型及其学习算法神经网络NN的原理是通过学习出一组单神经元PID控制器的学习速率来提高单神经元的学习速度,从而改善神经元的智能性和自学习的能力,并且增强了控制器的收敛性,使神经网络控制器有较强的快速性和自适应性。如图2-3所示为三层BP神经网络。图2-3 三层BP神经网络结构其中神经网络的输入层用三个节点,隐层为四个节点,输出层为三个节点,分别为单神经元PID控制器的三个学习速率; ;输入层有3个节点,分别为:Xl=e,X2 =ec,X3 =dec取单神经元PID控制系统的输出误差平方为性能指标函数,有使连接系数的修正沿着J减小的方向进行,即按J 对连接系数的负梯度方向搜索调整。2.6 神经网络的训练BP网络的训练就是通过应用误差反传原理不断调整网络权值使网络模型输出值与已知的训练样本输出值之间的误差平方和达到最小或小于某一期望值。虽然理论上早已经证明:具有1个隐层(采用Sigmoid转换函数)的BP网络可实现对任意函数的任意逼近。但遗憾的是,迄今为止还没有构造性结论,即在给定有限个(训练)样本的情况下,如何设计一个合理的BP网络模型并通过向所给的有限个样本的学习(训练)来满意地逼近样本所蕴含的规律(函数关系,不仅仅是使训练样本的误差达到很小)的问题,目前在很大程度上还需要依靠经验知识和设计者的经验。因此,通过训练样本的学习(训练)建立合理的BP神经网络模型的过程,在国外被称为“艺术创造的过程”,是一个复杂而又十分烦琐和困难的过程。 由于BP网络采用误差反传算法,其实质是一个无约束的非线性最优化计算过程,在网络结构较大时不仅计算时间长,而且很容易限入局部极小点而得不到最优结果。目前虽已有改进BP法、遗传算法(GA)和模拟退火算法等多种优化方法用于BP网络的训练(这些方法从原理上讲可通过调整某些参数求得全局极小点),但在应用中,这些参数的调整往往因问题不同而异,较难求得全局极小点。这些方法中应用最广的是增加了冲量(动量)项的改进BP算法。 学习率影响系统学习过程的稳定性。大的学习率可能使网络权值每一次的修正量过大,甚至会导致权值在修正过程中超出某个误差的极小值呈不规则跳跃而不收敛;但过小的学习率导致学习时间过长,不过能保证收敛于某个极小值。所以,一般倾向选取较小的学习率以保证学习过程的收敛性(稳定性),通常在0.010.8之间。增加冲量项的目的是为了避免网络训练陷于较浅的局部极小点。理论上其值大小应与权值修正量的大小有关,但实际应用中一般取常量。通常在01之间,而且一般比学习率要大。 3 应用MATLAB设计神经网络PID控制系统3.1 MATLAB、SIMULINK、神经网络工具箱简介控制系统计算机仿真是应用现代科学手段对控制系统进行科学研究的十分重要的手段之一。目前,近乎所有的高品质的控制都离不开系统仿真研究。利用仿真工具对控制系统进行设计与仿真,可以有效地对比各种控制模型与方案,选取并优化相关控制参数,从而对整个控制系统的性能进行优化与提高,尤其是对于一些新型控制理论与算法的研究,进行系统仿真更是必不可少的。MATLAB软件于1984年由美国的MathWorks公司推出,该软件提供了丰富的数值分析、矩阵运算、图形绘制、数据处理、图像处理等功能,此外,针对不同的应用学科,MATLAB还推出了三十多个应用工具箱,如控制系统工具箱、模糊控制工具箱、神经网络工具箱等。目前,它已经成为国际控制界最广泛流行的语言之一。本文在MATLAB6.5的基础上,介绍了SIMULINK工具箱及神经网络工具箱的功能,并介绍如何利用SIMULINK工具箱和神经网络工具箱相结合的方法来设计和研究神经网络PID控制器。SIMULINK工具箱是MATLAB软件的扩展, SIMULINK子库是一个建模、分析各种物理和数学系统的软件,主要用于动态系统的仿真。SIMULINK模块库中提供了建立系统模型所需的大部分模块,进入MATLAB环境后,只需键入SIMULINK命令就可打开该模块库, 此时出现一个SIMULINK窗口,包含七个模型库和一个DEMOS,分别是:信号源库、输出库、离散系统库、线性系统库、非线性系统库及扩展系统库.在这些库中你可以找到你所需的每个环节,必要时,你还可以建立自己的环节库.用户可以根据自己的系统选择所需的模块,将其用鼠标拖到自己的系统模型中,然后用鼠标划线连起来,就构成了系统的SIMULINK描述。系统的模型建好后,用户可以根据系统的不同需要,设置或更改模块的参数,然后打开仿真菜单(Simulation),设置仿真参数,起动仿真过程。仿真结束后,用户可以通过输出示波器(Scope)或(plot)绘图函数观察系统的仿真输出。随着MATLAB软件版本的提高,其对应的神经网络工具箱的版本也在相应地提高。与MATLAB6.5对应的神经网络工具箱为NN Toolbox4.0.2版(以后建成神经网络工具箱),其内容非常丰富,包括了很多现有的神经网络的新成果,涉及的网络模型有:l 感知器模型l 线形滤波器l BP网络l 控制系统网络模型l 径向基网络l 自组织网络l 反馈网络l 自适应滤波和自适应训练神经网络工具箱提供了很多经典的学习算法,使用它能够快速地实现对实际问题的建模求解。由于其编程简单,这样就给使用者节省了大量的编程时间,使其能够把更多的精力投入到网络设计而不是具体程序实现上。Matlab是一套功能十分强大的工程计算和数据分析软件,它主要由五个部分组成:Matlab 语言、Matlab 工作环境、Matlab 图形系统、Mat2lab 数学函数库以及Matlab 应用程序界面(API) . 它将科学计算、数据可视化、交互式程序设计、以及非线性动态系统的建模和仿真等诸多强大的功能集成在一个易于使用的视窗环境之中,为科学研究、工程设计以及必须进行有效数值计算的众多学科领域提供了一种简捷高效的编程与开发环境,借助于这种环境,任何复杂计算问题及其解的描述都非常符合人们的逻辑思维方式和数学表达习惯,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran 等) 的编程模式,为自然科学和工程设计诸多领域全面解决复杂数值计算问题以及CAD 研究等提供了综合解决方案. 在设计研究单位和工业部门,Matlab 被认作进行高效研究、开发的首选软件工具;在国际学术界,Matlab 已经被确认为准确、可靠的科学计算标准软件. 在诸多国际一流学术刊物上(尤其是信息科学刊物) ,都可以看到Matlab 的应用.3.2 神经网络工具箱与人工神经元网络设计由于Matlab 数值计算函数库内容的基础性和通用性,使得Matlab 软件具有很强的开放性和适应性. 在保持内核不变的条件下,Mablab 针对不同的应用学科推出相应的工具箱(toolbox) ,神经网络工具箱就是Matlab 环境下所开发出来的许多工具箱之一. 它是以人工神经网络理论为基础,用Matlab 语言构造出典型神经元网络的激活函数(传递函数) ,如:S 型、线型、竞争层、饱和线形等激活函数,使设计者对所选定网络输出的计算,变成对激活函数的调用;另外,根据各种典型的修正网络权值的规则,加上网络的训练过程,用Matlab 编写出各种网络权值训练的子程序. 网络的设计者则可以根据自己的需要去调用工具箱中有关神经元网络的设计与训练的子程序,使自己能够从繁琐的编程中解脱出来,集中精力去思考问题和解决问题,从而提高效率和解题质量。首先,Matlab 神经网络工具箱包含了许多进行了人工神经元网络设计和分析的函数,有关这些函数的使用可以通过help 命令得到,即在Matlab 的命令窗(Command Window) 输入命令help nnet ,就可以获得神经网络工具箱的全部函数及其相应的功能说明.其次,Matlab 神经网络工具箱几乎完整地概括了现有的神经网络的新成果,所涉及的网络模模型有:感知器、自适应线性网络、反向传播网络、径向基函数网络、自组织网络以及反馈网络等,对于各种网络模型,神经网络工具箱集成了多种学习算法,为用户提供了极大的方便.最后,交互式的模型输入与仿真环境Simulink 工具箱是Matlab 软件的扩展,主要用于动态系统的仿真. 它是Windows 中提供了建立系统模型所需的大部分类型模块,用户只需要用鼠标选择所需模块在模型窗口上“画出”模型(双击任何模块,即可打开该功能块来完成参数的设定) ,然后利用鼠标将它们连接起来,就可以构成一个系统的框图描述,亦即得到该系统的Simulink 描述. 建立起系统模型后,用户可通过选择仿真菜单( simulation menu) ,设置仿真控制参数,启动仿真过程,然后通过输出Scope (示波器) 观察系统的仿真结果. 可以使用两种方法获得人工神经网络Simulink 描述,第一种方法是利用基于Matlab的神经网络工具箱提供的一组Simulink 模块直接建立人工神经元网络系统的系统模型;另一种方法是利用函数gensim 将在Matlab 环境下创立的人工神经元网络系统转化成相应的Simulink 模型.3.3 PID控制器3.3.1 PID控制器简介PID 控制是迄今为止最通用的控制方法,各种 DCS、智能调节器等均采用该方法或其较小的变形来控制(至今在全世界过程控制中84仍是纯 PID 调节器,若改进型包含在内则超过 90),尽管自 1940 年以来,许多先进控制方法不断推出,但 PID 控制以其结构简单,对模型误差具有鲁棒性及易于操作等优点,故仍广泛应用于各种工业过程控制中。数字 PID 控制算法分位置式和增量式两种,工程上常用的增量式 PID 控制算法,其控制算式为: (31) 式中,为比例系数,=为积分系数,为微分系数,T 为采样周期,为积分时间,为微分时间, 为时刻的误差。 上述 PID 控制算法易于用微机软件实现,PID 控制系统框图如图 31。图31 PID控制系统框图PID 控制器长期以来应用十分普遍,为广大工程技术人员和操作人员所接受和熟悉。究其原因:可以证明对于特性为和的控制对象,PID 控制是一种最优的控制算法;PID 控制参数相互独立,参数整定比较方便;PID 算法比较简单,计算工作量比较小,容易实现多回路控制。下面首先对 PID 参数分别进行简要说明,以了解 PID 参数对控制性能的影响。 增益(Kp) 比例调节依据偏差的大小来动作,其输出与输入偏差的大小成正比。比例调节及时、有力,但有余差。可以用增益Kp来衡量其作用的强弱,Kp愈大,调节作用愈强。所谓增益是指调节器的输出相对变化量与相应输入的相对变化量之比。如控制器的增益为5,意味着控制器输入变化 10(相对于测量范围而言),将会导致控制器的输出变化 50(相对于全范围而言)。比例控制加大增益,使系统动作灵敏,速度加快,但增益偏大,振荡次数增加,调节时间加长。过大的增益会引起振荡,过小的增益会使调节过程变的太慢。有时也用比例度( )表示比例作用的强弱,比例度等于增益的倒数乘以 100( =100% /Kp)。 积分(积分时间TI)积分调节依据偏差是否存在来动作,它的输出与偏差对时间的积分成比例,只有当余差消失时,积分作用才会停止(抗积分饱和时除外)。积分的作用是消除余差,但积分作用使最大动偏差增大(因为纯积分控制器作用的相位滞后为 90),延长了调节时间。积分作用用积分时间TI来表示其作用的强弱。积分时间可以理解为:在阶跃偏差输入作用下,调节器的输出达到比例输出两倍时所经历的时间,即为“重定”时间。 积分时间越小表明积分作用越强。积分作用太强时也会引起振荡,积分时间的选择是与控制过程的时间常数密切相关的。一般而言,控制过程的时间常数越短,选择的积分时间越小。积分控制通常与比例控制或微分控制联合作用,构成 PI 或PID 控制。积分控制能消除系统的稳态误差提高控制系统的控制精度。但积分控制通常使系统的稳定性下降。TI太小系统将不稳定;TI偏小,振荡次数较多;TI太大,对系统性能的影响减少;当TI合适时,过渡过程特性比较理想。微分(微分时间TD)微分调节依据偏差变化速度来动作。它的输出与输入偏差变化的速度成比例,其作用是阻止被调参数的一切变化,有超前调节的作用,对滞后大的对象有很好的效果。它可以克服调节对象的惯性滞后(时间常数 T)、容量滞后c ,但不能克服调节对象的纯滞后0 ,因为在0时间内,被调参数的变化速度为零。 某些控制过程的时间常数较大,操纵变量的改变要经过较长的时间后才能反映到被控变量上。经过换热器的空气温度的控制就是一个典型的例子。在适当引入微分作用后可以明显改变控制品质。当被控变量偏离设定点时,随着偏离速度的增加,控制器的增益也随之增加,这样可以促使被控变量尽快回到设定点,又不至于引起过大的振荡(相对于单纯的增加控制增益而言)。微分作用使调节过程偏差减小,时间缩短,余差也减少(但不能消除)。它用微分时间TD来表示其作用的强弱,TD越大表明微分作用越强,但DT太大会引起振荡。微分控制通常与比例控制或积分控制联合作用,构成 PD 或 PID 校制。微分控制可以改善动态特性,如超调量p 减少,调节时间ts 缩短,允许加大比例控制,使稳态误差减少,提高控制精度。对于时间常数较小,而负荷又变化较快的调节对象,不易引入微分作用,因为如果引入微分作用容易引起振荡。3.3.2 PID控制的局限PID 控制器在实际应用中的局限主要有: 1.由于实现控制系统的元器件物理特性的限制,使得 PID 控制器获得的原始信息偏离实际值,而其产生的控制作用偏离理论值。例如,各种传感器不可避免地存在着测量误差;误差微分信号的提取是由误差信号差分或由超前网络近似实现的,这种方式对信号噪声的放大作用很大,使微分信号失真。2.由于常规的 PID 控制器采用偏差的比例、积分和微分的线性组合构成控制量,不能同时很好的满足稳态精度和动态稳定性、平稳性和快速性的要求。为此在系统的设计与整定过程中,只好采取折中的方案来兼顾动态和稳态性能的要求,因此难以大幅度提高控制系统的性能指标。3.尽管常规 PID 控制器具有一定的鲁棒性和适应性,但是对于强非线性、快速时变不确定性、强干扰等特性的对象,控制效果较差。例如,在某一时刻、某种条件下整定好的控制器参数,由于被控对象的结构或参数时变,在另一时刻、另一条件下控制效果往往欠佳,甚至可能使控制系统失稳。3.4 神经网络 PID 控制器的设计 PID 控制要取得良好的控制效果,就必须对比例、积分和微分三种控制作用进行调整以形成相互配合又相互制约的关系,这种关系不能是简单的“线性组合”,可从变化无穷的非线性组合中找出最佳的关系。神经网络所具有的任意非线性表示能力,可以通过对系统性能的学习来实现具有最佳组合的 PID 控制。 基于 BP 神经网络 KP, KI,KD,参数自学习 PID 控制器BP 神经网络具有任意逼近非线性函数的能力,而且结构和学习算法简单明确,所以在研究的此课题中,本人采用了工程中最为常用的 BP 网络来构建神经网络 PID控制器。通过神经网络自身的学习,可以找到某一最优控制下的 P、I、D 参数。基于 BP 神经网络的 PID 控制系统结构如图3-2 所示,控制器由两个部分组成:经典的 PID 控制器:直接对被控对象进行闭环控制,并且KP, KI,KD三个参数为在线P,I,D整定;神经网络 NN:根据系统的运行状态,调节 PID 控制器的参数,以期达到某种性能指标的最优化。即使神经网络的输出层神经元的输出状态对应于 PID 控制器的三个可调参数KP, KI,KD ,通过神经网络的自学习、调整权系数,从而使其稳定P,I,D状态对应于某种最优控制规律下的 PID 控制器参数。学 习 算 法 神 经 网 络 PID控制器被控对象r + euy图3-2 基于BP神经网络的PID控制系统结构经典增量式数字 PID 的控制算式如式(3-2),若将视为依赖于系统运行状态的可调系数时,可将式(3-2)描述为: (32)式中,是与,等有关的非线性函数,可以用 BP 神经网络NN 通过训练和学习来找到这样的一个最佳的控制规律。 在这里设计的 BP 网络采用结构简单的三层 BP 神经网络,其结构如图3-3 所示,有 M 个输入节点、Q 个隐含层节点、3 个输出节点。输入节点对应所选的系统运行状态量,如系统不同时刻的输入量和输出量等,必要时要进行归一化处理(关于归一化处理在这里就不多加赘述)。输出节点分别对应 PID 控制器的三个可调参数。 由于不能为负值,所以输出层神经元的激发函数取非负的 Sigmoid 函数,而隐含层神经元的激发函数可取正负对称的 Sigmoid 函数。 图3-3 NN-BP网络结构由以上得出结论:1.神经网络 PID 控制器可以达到控制要求,该算法有良好的控制效果;2.PID 控制器的三个参数根据设定值以及扰动的不同会进行在线的整定。4 神经网络PID控制器的设计如前所述,单神经元作为构成神经网络的基本单元,具有自学习和自适应能力,而且结构简单而易于计算。而传统的PID调节器也具有结构简单、调整方便和参数整定与工程指标联系密切等特点。若将这两者结合,则可以在一定程度上解决传统PID调节器不易在线实时整定参数、难于对一些复杂过程和参数慢时变系统进行有效控制的不足。4.1 单神经元自适应PID控制器及其学习算法 转换器K过程z +u(k)y(k)图41 单神经元自适应PID控制器结构图 结构框图如图41所示。图中转换器的输入为设定值r(k)和输出y(k);转换器的输出为神经元学习控制所需要的状态量,。这里 (41),为性能指标或递进信号。图中K为神经元的比例系数,K0。神经元通过关联搜索来产生控制信号,即 (42)式中,为对应于的加权系数。单神经元自适应PID控制器正是通过对加权系数的调整来实现自适应、自学习功能的。加权系数的调整可以采用不同的学习规则,从而构成不同的控制算法。下面只介绍有监督的Hebb学习算法。4.1.1 采用有监督Hebb学习算法的单神经元自适应PID控制器 考虑到加权系数应和单神经元的输入、输出和输出偏差三者的相关函数有关,因此在采用有监督Hebb学习算法时有 (43) (44)式中 递进信号,随过程进行逐渐衰减 输出误差信号; 学习速率,0; c常数,0。 将式44代入式43中有 (45)如果存在函数,对求偏微分有 则式45可写为 (46) 上式说明,加权系数的修正是按函数对应于的负梯度方向进行搜索的。应用随机逼近理论可以证明,当常数c充分小时,可以收敛到某一稳定值,而且与期望值的偏差在允许范围内。 为保证这种单神经元自适应PID控制学习算法式42和式45的收敛性和鲁棒性,将上述学习算法进行规范化处理后可得(47)式中 、比例、积分、微分的学习速率。 这里对比例(P)、积分(I)、微分(D)分别采用了不同的学习速率、,以便于根据需要对各自对应的加权系数分别进行调整,其取值可先有现场实验或仿真来确定,且取c=0。4.1.2 单神经元自适应PID控制器学习算法可调参数的选取规律 上述单神经元自适应PID控制器学习算法的运行效果与可调参数、等的选取有很大关系。通过大量实例仿真和实控结果,总结出以下参数调整规律。(1)初始加权系数、可以任意选取(2)K值的选择:一般K值偏大将引起系统响应超调过大,而K值偏小则使过渡过程加长。因此,可先确定一个增益K,再根据仿真和实控结果调整。(3)学习速率、的选择:由于采用了规范化学习算法,学习速率可取得较大。选取K使过程的超调不太大,若此时过程从超调趋向平稳的时间太长,可增加、;若超调迅速下降而低于给定值,此后又缓慢上升到稳态的时间太长,则可减少,增强积分项的作用。对于大时延系统,为了减少超调,、应选的大一些。4.1.3 单神经元自适应PID仿真 1)设被控对象为,输入指令为一方波信号:,采样时间为1ms, 比例、积分、微分的学习速率、分别取0.80、0.50、0.80。神经元的比例系数K取0.09 。下面采用有监督的Hebb学习规则进行仿真,跟踪结果如下图图42所示。24 图42 基于有监督的Hebb学习规则的位置跟踪2)设离散非线性被控对象为,式中系数是慢时变的,。学习速率=0.25 和惯性系数,采样时间取1ms,加权系数初始值取区间-0.5,0.5上的随机数,信号取。初始权值取随机值,运行稳定后用稳定权值代替随机值。经过matlab仿真,其跟踪结果如下图图43和图44所示:图49 阶跃跟踪输出曲线 图410 图49中0到0.1S放大图43 阶跃跟踪输出曲线图44 图43中0到0.1S放大后的阶跃跟踪输出曲线 通过上面两例的仿真可知,单神经元PID控制器的跟踪效果很好,具有很强的自学习性、自适应性,超调量很小、调节速度非常快,达到了预期目的。4.2 基于BP神经网络PID控制器的设计BP神经网络具有逼近任意非线性函数的能力,而且结构和学习算法简单明确。通过神经网络自身的学习,可以找到某一最优控制律下的P、I、D参数。基于BP神经网络的PID控制系统结构如图45所示。控制器由两个部分组成:(1)经典的PID控制器:直接对被控对象过程闭环控制,并且三个参数、为在线整定式;(2)神经网络NN:根据系统的运行状态,调节PID控制器的参数,以期达到某种性能指标的最优化。即使输出层神经元的输出状态对应于PID控制器的三个可调参数、,通过神经网络的自身学习、加权系数调整,从而使其稳定状态对应于某种最优控制律下的PID控制器参数。学习算法NNPID控制器被控对象R + euy图45 基于BP神经网络的PID控制系统结构 经典增量式数字PID的控制算法式为 (48)式中 、比例、积分、微分系数。 将、视为依赖于系统运行状态的可调系数时,可将式48描述为 (49)式中 是与、等有关的非线性函数,可以用BP神经网络NN通过训练和学习来找到这样一个最佳规律。设BP神经网络NN是一个三层BP网络,其结构如图46所示,有M个输入节点、Q个隐层节点、3个输出节点。输入节点对应所选的系统运行状态量,如系统不同时刻的输入量和输出量等,必要时要进行归一化处理。输出节点分别对应PID控制器的三个可调参数、。由于、不能为负值,所以输出层神经元的活化函数取非负对称的Sigmoid函数,而隐含层神经元的活化函数可取正负对称的Sigmoid函数。隐含层j+1M+1Q图46 NNBP网络结构由图可见,BP神经网络NN的输入为(410)式中,输入变量的个数M取决于被控系统的复杂程度。网络的隐含层输入输出为(411)式中 隐含层加权系数; 阈值,=; 活化函数,=tanh(x);上角标(1)、(2)、(3)输入层、隐含层、输出层。最后,网络的输出层的输入输出为(l=0,1,2)(412)式中 输出层加权系数; 阈值,=; 活化函数,。 取性能指标函数为 (413) 依最速下降法修正网络的加权系数,即按J对加权系数的负梯度方向搜索调整,并附加一使搜索快速收敛全局极小的惯性项,则有 (414)式中 学习速率; 惯性系数。 (415) 由于未知,所以近似用符号函数取代,由此带来的计算不精确的影响可以通过调整学习速率来补偿。 由式48可以求得(416)因此可得BP神经网络NN输出层的加权系数计算公式为(417)依据上述推算办法,可得隐含层加权系数的计算公式为(418)式中 ; 基于BP神经网络的PID控制算法可归纳如下:(1)事先选定BP神经网络(NN)的结构,即选定输入层节点数M和隐含层节点数Q,并给出各层加权系数的初值、;选定学习速率和惯性系数;k=1;(2)采样得到和,计算;(3)对、进行归一化处理,作为NN的输入;(4)根据式410式412前向计算NN的各层神经元的输入和输出,NN输出层的输出即为PID控制器的三个可调参数、;(5)根据式48,计算PID控制器的控制输出,参与控制和计算;(6)由式417,计算修正输出层的加权系数;(7)由式418,计算修正隐含层的加权系数;(8)置,返回到(2)。4.3 小结 本章分析传统PID控制器优缺点的同时对单神经元自适应PID控制和BP神经网络PID控制进行学习,针对单神经元自适应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论