77范文网 - 专业文章范例文档资料分享平台

预测控制

来源:网络收集 时间:2018-11-23 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

1.1 引言

预测控制是一种基于模型的先进控制技术,它不是某一种统一理论的产物,而是源于工业实践,最大限度地结合了工业实际地要求,并且在实际中取得了许多成功应用的一类新型的计算机控制算法。由于它采用的是多步测试、滚动优化和反馈校正等控制策略,因而控制效果好,适用于控制不易建立精确数字模型且比较复杂的工业生产过程,所以它一出现就受到国内外工程界的重视,并已在石油、化工、电力、冶金、机械等工业部门的控制系统得到了成功的应用。工业生产的过程是复杂的,我们建立起来的模型也是不完善的。就是理论非常复杂的现代控制理论,其控制的效果也往往不尽人意,甚至在某些方面还不及传统的PID控制。70年代,人们除了加强对生产过程的建模、系统辨识、自适应控制等方面的研究外,开始打破传统的控制思想的观念,试图面向工业开发出一种对各种模型要求低、在线计算方便、控制综合效果好的新型算法。这样的背景下,预测控制的一种,也就是模型算法控制(MAC -Model Algorithmic Control)首先在法国的工业控制中得到应用。同时,计算机技术的发展也为算法的实现提供了物质基础。现在比较流行的算法包括有:模型算法控制(MAC)、动态矩阵控制(DMC )、广义预测控制(GPC)、广义预测极点(GPP)控制、内模控制(IMC)、推理控制(IC)等等。 随着现代计算机技术的不断发展,人们希望有一个方便使用的软件包来代替复杂的理论分析和数学运算,而Matlab、C、C++等语言很好的满足了我们的要求。 1.2 预测控制的存在问题及发展前景

70年代以来,人们从工业过程的特点出发,寻找对模型精度要求不高,而同样能实现高质量控制性能的方法,以克服理论与应用之间的不协调。预测控制就是在这种背景下发展起来的一种新型控制算法。它最初由Richalet和Cutler等人提出了建立在脉冲响应基础上的模型预测启发控制 (Model Predictive Heuristic Control,简称“MPHC” ),或称模型算法控制(Model Algorithmic Control,简称“MAC” );Cutler等人提出了建立在阶跃响应基础上的动态矩阵控制 (Dynamic Matrix Control,简称 “DMC”),是以被控系统的输出时域响应(单位阶跃响应或单位冲激响应)为模型,控制律基于系统输出预测,控制系统性能有较强的鲁棒性,并且方法原理直观简单、易于计算机实现。它的产生并不是理论发展的需要,而是在工业实践过程中独立发展起来,即实践超前于理论它一经问世就在石油、电力和航空等领域中得到十分成功的应用。之后,又延伸到网络、冶金、轻工、机械等部门或系统。 80年代初期,人们为了增强自适应控制系统的鲁棒性,在广义最小方差控制的基础上,吸取预测控制中的多步预测、滚动优化思想,以扩大反映过程未来变化趋势的动态信息量,提高自适应控制系统的实用性。这样就出现了便于辨识过程参数模型、带自校正机制、在线修改模型参数的预测控制算法,主要有Clarke等提出的广义预测控制(GPC) Do Keyser的扩展时域预测自适应控制(EPSAC),广义预测极点配置控制(GPP)。Brosilow于1978年提出推理机制(1C), Garcia. Norari于1982年提出内部模型控制(简称内模控制,IMC ),从模型结构的角度对预测控制作了更深入的研究,分析出预测控制具有内模控制的结构。应用内模控制结构来分析预测控制系统,有利于理解预测控制的运行机理,分析预测控制系统的闭环动静态特性、稳定性和鲁棒性,找出各类预测控制算法的内在联系,导出它们的统一格式,有力推动了预测控制在算法研究、稳定性鲁棒性的理论分析和应用研究上的发展。但实际上,预测控制的理论还是落后于其实际应用的,因此在理论和应用方面,仍需得到进一步的研究和发展。

1.2.1 预测控制存在的问题 就目前的研究现状 来看,预测控制的研究中主要存在一下问题: (1) 理论分析难以深入。目前的许多理论分析工作都是针对广义预测控制算法进行的。其分析方法与一般的自适应控制的方法类似,都是把主要精力放在寻找一种在线估计方法,然后与预测控制策略相结合,得到的分析结果也与一般的自适应算法结果相似,完全看不出预测控制的特点。所以,要得到对预测控制深入的理论分析结果,首先必须摆脱自适应控制的束缚,针对预测控制本身的机理特点,寻找新的分析方法。另外,对多变量预测控制算法

的稳定性,鲁棒性的研究急需解决。 (2) 对非线性系统的预测控制还没有很好的解决。主要原因是如何解决滚动优化的问题。还有是在算法研究上应该紧扣预测控制的模型预测,滚动优化和反馈这三大机理 进行,主要包括以下几个方面: a) 测模型的特点不是建立对象的最小化模型,而是在确定的优化性能指标和优化策略下预测未来的输出模型,所以重在功能而非结构.这能使我们不受传统的数学模型的束缚,大胆引进新思路新方法。一是充分利用对象的各种先验知识建立没有结构限制的高质量模型.二是利用对象过程中的有效信息建立多个不同结构和功能的预测模型,并进行预测,基于某种综合优化指标,确定某个时段的优化控制方案,根据多个并行预测控制结果综合确定预测值。 b) 优化策略的研究目前多为无约束的二次性能指标优化,实际问题则是多目标多自由度的优化问题,需要规范并能解决快速求解。当然,优化策略的选取要受到实际问题的限制,我们应研究怎样的优化策略才能将与之对应的先进的控制器结构或方法结合新的预测控制器结构中,从而得到适应性、鲁棒性和最优性都比有的算法更好的性的预测控制算法。 c) 建立有效的反馈校正方法。由于对象的验前信息的不充分性,基于此类信息集合得到的预测控制模型用于在线预测时,其预测值与实际值之间一定存在一个误差,这就是预测误差。引起预测误差的主要原因有两个:建立预测模型引起的误差和干扰引起的误差。若能将二者的预测误差分离开来,区别对待,对建模误差进行补偿校正,对干扰误差进行反馈校正,以求达到理想的校正效果。

1.2.2 预测控制的发展前景 (1) 系统的鲁棒性和稳定性 与常规PID控制、最小方差控制、自校正控制等自适应控制相比,预测控制具有较好的稳定性和鲁棒性,但系统的稳定性和鲁棒性分析与设计尚没有得到很好的解决。预测控制目前已有的算法中,主要设计参数与闭环系统的动静态特性。稳定性和鲁棒性之间的一般解析关系难以得到,因此对系统稳定性,鲁棒性的分析还远没有达到定量的程度,没有一个通用的参数设计选择原则。尤其是对于多变量系统的相应预测控制算法,其稳定性和鲁棒性的分析急需突破,这是今后仍需努力研究的一个主要方面 。 (2) 对非线性,不确定系统的研究 工业过程大量存在非线性,不确定系统,对这类系统的预测控制还没有很好的解决,非线性预测控制和将成为今后研究的重点,以满足过程控制工业的要求。 (3) 预测控制算法的发展和创新 进一步加强理论研究,在预测控制的三大机理:预测模型、反馈校正和滚动优化的策略上下功夫,全方面地去加以研究和突破,如引进先进理论,建立无结构限制的高效模型,选择合理的优化策略,研究更有效的反馈校正方法等等:注重学科的交叉研究,把其他学科的理论与现有预测控制方法相结合。 (4) 加强理论应用和软件开发 在工业实践中去挖掘和寻找预测控制需解决的,新出现的问题和研究方向和发展方向,由实践来促进理论的发展。同时,加强软件开发,促使其更好,更快的应用和发展。 综上所述,预测控制采用预测模型预测系统的未来输出,实现滚动优化控制,并不断根据系统的实际输出修正预测的准确性。预测模型的多样性,模型精度要求不高,这正符合了工业过程控制的特点,尤其是预测控制改进了最优控制,用滚动的有限时域,优化取代了一成不变的全局优化。这样不仅实现最优控制,而且克服了系统中不确定性的影响,具有更强的鲁棒性,这是预测控制能得到成功应用的根本原因。正因为预测控制具有复杂性生长过程控制的特点,可以预计,预测控制作为一类新型计算机控制算法,仍会显示它强大的生命力。

1.3 预测控制的研究方法 研究预测控制算法之间的内在关系以及它们的等价变换是深入了解算法本质机理、进一步研究算法的性质和对算法扩展的重要途径。到目前为止已有许多种类不同的预测控制方法 。最早提出的典型预测控制算法有模型预测启发控制(MPHC),模型算法控制(MAC),以及动态矩阵控制(DMC),广义预测控制(GPC)和推理控制(IC)等。被控对象的脉冲响应或阶跃响应一般称为非参数模型。这两类响应容易从现场检测到,且不需要事先知道过程模型的结构和参数等先验知识,也不必通过使用复杂的系统辨识技术便可设计控制系统,即所谓的滚动优化取代了传统的最优控制。由于在优化过程中利用测量

信息不断进行反馈校正,所以这在一定程度上克服了不确定的影响,增强了控制系统的鲁棒性。此外,这些控制算法的在线计算比较简单。与传统的PID算法相比较,预测控制的优点是显而易见的。本文只介绍我们用到的GPC和DMC两种算法,并简单介绍传统的PID算法。 1.3.1 广义预测控制 广义预测控制 (GPC)是在自适应控制的研究中发展起来的另一类预测控制算法,是对对象输出做多步预测,这种算法是建立在将来时刻的控制量上,同时确定一个控制范围,并假设在这个范围外的控制量增量为零。目标函数为预测输出与设定值的误差和 控制增量的二次函数。它适用于不确定结构系统和复杂系统,如非最小相位系统就开环不稳和时滞变化的系统,对于模型失配也能获得稳定控制。在自校正控制系统中,由于有分灵敏,如果估计不准或是时变的,控制精度就会大大降低;而有些算法对系统的阶次十分灵敏,一旦估计不准,算法就不能使用。换句话说算法在滞后时对它们对系统的依赖性比较强。在此背景下,克拉克(Clarke) 等人在保持最小方差自校正控制的模型预测,最小方差控制,在线辨识等原理的基础上提出了广义预测控制.最为一种自校正控制算法,GPC是针对随机离散系统提出的.它的模型形式和反馈校正测量同DMC都有一定的差别。 1.3.2 动态矩阵控制

动态矩阵控制(DMC) 是预测控制中应用比较广的算法之一,它一种用被控对象的阶跃响应特征性来描述系统动态模型的预测控制算法。它有算法简单,计算量小,鲁棒性较强等特点。它适用于渐进稳定的线性对象。对于弱非线性对象,可在工作点处首先线性化:对于不稳定对象,可先用常规PID控制使其稳定,然后再使用DMC算法 ,在这里我们将作重点介绍。DMC控制包括模型预测、滚动优化和反馈校正三部分。 (1) 模型预测 它的功能是根据对象的历史信息和选定的未来输入预测其未来输出值,这里只强调模型的功能而不强调其结构形式。从方法角度讲,只要是具有预测功能的信息集合,无论它有什么样的表现方式,均可作为预测模型。因此,状态方程,传递函数这类传统的模型都可以作为预测模型。在DMC中,首先需要测定对象单位阶跃响应的采样值 (i=1,2,?),这样对象的动态信息就可以近似用 的集合表示了。这个集合就构成了模型向量 。同时还需确定一个我们预测范围的建模时域 。 (2) 滚动优化 DMC是一种以优化确定控制策略的算法。在每一个时刻 ,要确定从该时刻起的 个控制增量 ,使被控对象在其作用下的未来 个时刻的输出 预测值 尽可能接近给定的期望值 ,i=1,?, 。这里 , 分别成为优化时域和控制时域,通常规定 。 (3) 反馈校正 动态控制是一个闭环控制算法,在通过优化确定了一系列未来的控制作用后,为了防止模型失配或环境干扰引起控制对理想状态的偏离,若不及时利用实时信息进行反馈校正,进一步的优化就会建立在虚假的基础上。为此,在下一个采样时刻首先要检测对象的实际输出,并把它与以上时刻的模型预测输出进行比较,构成输出误差。再根据误差权矩阵 对其进行修正。 (一)DMC的主要特征 (1) 预测模型采用阶跃响应特征建模。 (2) 设计过程中固定格式是:用二次型目标函数决定控制增量最优值序列,但没 有考虑各种约束条件。 (3) 参数调整:用改变二次型目标函数中的权系数矩阵 , 来实现。 (二)DMC算法的优点 (1) 直接在控制算法中考虑预测变量和控制变量的约束条件,用满足约束条件的范围来求出最优预测值。 (2) 把控制变量与预测变量的权系数矩阵作为设计参数,在设计过程中通过仿真来调节鲁棒性好的参数值。 (3) 预测变量和控制变量较多的场合,或者控制变量的设定在给出的目标值范围内,这时具有自由度,预测变量的定常状态值被认为是有无数组组合的。 (4) 从受控对象动特性设定到最后作仿真来确定控制性能为止,这一系列设计规范已相当成熟。DMC算法以 直接作为控制量,在控制中包含了数字积分环节,因此,即使在失配的情况下,也能得到无静差控制。 显然,DMC在工业实际应用中之所以受到欢迎,并得到成功应用,除了算法简单、响应容易获得外,主要是因为它具有的预测模型、滚动优化和反馈校正三大特点。此外,由于它采用了多步预测的方式,扩大了反映过程未来

变化趋势的信息量,因而能克服各种不确定性和复杂变化的影响,使动态矩阵控制能在各种复杂生产过程控制中获得很好的应用效果,并具有较高的鲁棒性。这些都是动态矩阵控制能得到成功应用的根本原因。 第2章 软件功能介绍

本文讨论的简单SISO预测控制系统,从理论上描述系统的控制性能并模拟系统进行软件设计。软件设计包括:界面、辨识、DMC、GPC及PID五部分,各部分系统通过界面来给定和修改参数模型,并且调用Matlab等其他软件的结果;系统辨识根据界面给定的对象得出参数,再送给DMC和GPC作为设计模型用;DMC、GPC和PID的设计是根据系统辨识来设计控制模型,再来控制实际对象。 (1) 界面软件功能介绍 作为一个控制系统,怎样实现人机联系是最主要的问题,也是最主要的目的。预测控制面对的对象大多都是工业过程,要求具有实时控制功能。本文所研究的是简单的SISO预测控制理论部分,为此我们设计的界面的功能是给定输入值,通过辨识和控制返回输出。由于建模采用的是Matlab编程语言,所以界面需要在Matlab在VC间进行通信转换。本文介绍了一种将Matlab编译成可执行程序的一种方法,它使得Matlab编写的程序能够完全脱离Matlab这个环境来执行,从而大大提高了程序的应用范围和使用价值。 众所周知,MATLAB是一套功能非常强大的商业数学软件,从信号处理,语音处理,数据采集,数值运算,图像处理,到电子仿真,金融分析等等,几乎在各个工业领域,他都已经得到了广泛应用,同时也取得了巨大的成功。但是,由于Matlab是用一种脚本语言,他的解释是逐行执行的,程序中所有的变量都是用MxArray来实现的,所以为了保证通用性,它的执行效率非常低,这就是我们常常看到的:在开发一些复杂的算法时,通常会发现程序执行得特别慢,虽然Mathworks公司已经在竭力提高m脚本文件(Scriptfiles)的运算速度,但目前为止效果仍然不能和实现同样功能的可执行程序相比。而且m脚本文件是不能脱离Matlab这个应用程序环境,这就大大制约了程序的可移植性和通用性。正是基于上述考虑,利用Matlab提供的C/C++编译器,将m文件编译成可执行的应用程序是重点工作,作者用的编译环境是:MS VC++ 6.0和Matlab6.5。 (2) 系统辨识软件功能介绍 辨识 的主要目的是建立动态系统的数学模型,以便对系统进行控制,或对系统的状态进行估计。是在对输入和输出观测的基础上,从一类系统中确定一个与观测系统等价的系统。它包括三个部分:1,选择适当的系统结构,即选取某一类系统;2,获取系统的输入输出测量值;3,确定评价值。在辨识当中会因为过程传递函数的阶数或参数的改变而及时进行修改模型。总之,一切与系统模型有关的应用,都可以发挥系统辨识的作用。最小二乘法是辨识当中使用最为广泛的一种,它是一种给予使误差平方和最小的方法。它简单、易于理解、便于应用,是学习其他参数设计估计方法的基础 辨识只考虑系统的输入输出特性,而不强调系统的内部机理。在输入输出数据的基础上,从一组给定的模型类中,确定一个与所测系统等价的模型。当模型确定以后,就需要进行基于输入输出数据的模型参数的估计。也即已知观测数据向量的情况在最小误差平方和的意义下求解回归参数,再将求解所得的回归参数送入控制模块,对系统进行控制。辨识系统的输入输出数据在一定程度上反映了系统的动态和静态特性和行为,一般在辨识中假定其是可直接测量的,它是辨识的基础。根据辨识目的及被辨识系统的先验知识或了解,确定系统所属的模型类。在控制领域中,常用的模型类有:线性的或非线性的,连续的或离散的,确定或随机的,时变的或时不变的等。 (3) DMC软件功能介绍 由辨识得到的被控对象的参数,经过预测模型、滚动优化和反馈校正建模和算法控制。由于我们用到的是输入的阶跃响应,所以在模型预测之前需对辨识得到的参数进行阶跃响应,以此来建立预测模型和算法的此时的模型是为下一步的实际控制做准备的。建立模型后,我们就要对由截面给定的实际输入进行控制,得到各种控制结果,输出返回给截面。在系统的输入端加上一个控制增量,各个采样时间分别可在系统的输出端测得一序列采样值,用动态系数来表示。经过阶跃响应下得到实际的输出值,再将期望值与实际测量值

进行比较,得到误差。一般我们要求系统有强鲁棒性和稳定性,根据前面得到的误差进行校正,再实行下一时刻的计算,然后重复上述过程。 (4) GPC软件功能介绍 GPC的软件功能与DMC很相似,也是根据辨识得到的参数进行模型预测、滚动优化和反馈校正,再将控制的结果返回给界面的过程。根据系统辨识而设计的各种控制模型,我们可以通过其对实际对象的控制结果来分析其控制性能的好坏,特别是稳定性和鲁棒性的分析。 (5) PID软件功能介绍 PID由比例、积分和微分三部分组成 ,根据设定值和对由辨识得到的实际系统控制的输出值构成偏差 ,再经过比例、积分和微分的线性组合对被控对象进行控制。比例作用的引入是为了及时成比例地反映控制系统的偏差信号 ,以最快速度产生控制作用,使偏差向减小的方向变化。积分作用的引入主要是为了保证实际输出值 在稳态时对设定值 的无静差跟踪。假设闭环系统已经处于稳定状态,则此时控制输出量 和控制偏差量 都将保持在某个常数值上,不失一般性,我们分别用 和 来表示。微分作用的引入,主要是为了改善闭环系统的稳定性和动态响应速度。作为经典的控制理论,PID控制规律仍然是当今工控行业的主导控制方式,无论复杂、简单的控制任务,PID控制都能取得满意的控制效果。可以说,通过适当的PID参数,PID控制可以得到各种输出响应特性,也就是说,通过适当给定PID参数,大多数的控制任务都可以由PID完成。 算法实现及程序设计

无论是DMC算法的软件设计还是GPC算法的软件设计,大体上都可分为模型预测、滚动优化和反馈校正三部分。本文除动态矩阵控制(DMC)算法及其软件设计外,还将简略介绍其他算法的设计过程,以便于比较。此外,实现人机对话的界面和建模所需的辨识都是不可缺少的部分。 在DMC、GPC 和辨识算法中,有大量矩阵、向量、多项式的运算,相比较其它程序语言,我们使用Matlab可以很方便实现这些运算。本软件中使用的是Matlab 6.5。 无论DMC还是GPC控制器设计,都依据对象的传递函数。对于可控的对象,只要选择适当的输入,就会得到所希望的输出。DMC和GPC控制器设计的核心就是要通过一定得算法求得这个适当得输入。但对象的实际传递函数一般不可知的或者很难通过解析的方法得到,对于复杂的对象尤其如此。因此,对对象进行辨识就是需要最先解决的问题。在本软件中采用的最小二乘法进行系统辨识,用得到对象的传递函数进行控制器设计。为了简化设计,没有采用循环辨识,而是一次辨识。 由于是做仿真,不存在需要控制的实际对象,实际对象就用一个传递函数表示。考虑到对象固有的一阶时滞性,传递函数一般形式为 : (3.1) 式中, 、 为对象的输入输出时滞。 我们就可以用两个向量来描述对象。在Matlab程序中,式(3.1)的分母、分子分别用向量 、 表示: 对象的实际传递函数用 、 表示。将式(3.1)展开,可以得到 (3.2) 其中k为当前时刻。这样,只要我们知道从 到 时刻的输入,以及从 到 时刻的输出,就可以得到 时刻对象的“实际”输出。式(3.2)用向量表示为 (3.3) 式中 将辨识得到的传递函数用A、B表示。有了传递函数A、B,我们就可以设计控制器了。 第3章 3.1 界面设计

界面是实现人机对话的平台,提供系统的给定输入,显示控制结果。由于本文中编程采用的是Matlab语言,我们利用Matlab提供的C/C++编译器,将m文件编译成可执行的应用程序,这样就可以将各分块联系起来了。具体的设计过程我们简单介绍如下: (1) Matlab中的操作 由于Matlab的编译只能对函数M文件进行编译,所以如果原来的程序脚本文件,则程序应该成函数形式。本文中涉及的函数转换有与图形有关也有与图形无关的,首先建立的是图形无关的m 文件test1.m,再是建立图形有关的,我们用到的编译命令是mcc –p –B sglcpp test2.m(如果程序由许多文件组成,处理方法同上)。编译完成后得到与m文件名相对应的.hpp和.cpp文件、一个主函数文件、bin目录中的两个.fig文件以及一个.exe文件。我们需要的只是与m文件相对应的.hpp文件、.cpp文件以及bin目录中的两个.fig文件,本例中是test2.hpp、test2.cpp以及bin目录中的FigureMenuBar.fig和FigureToolBar.fig。 (2) VC

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库预测控制在线全文阅读。

预测控制.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/303087.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: