预测控制DMC.
- 格式:ppt
- 大小:2.02 MB
- 文档页数:97
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”),是以被控系统的输出时域响应(单位阶跃响应或单位冲激响应)为模型,控制律基于系统输出预测,控制系统性能有较强的鲁棒性,并且方法原理直观简单、易于计算机实现。
第23卷 第2期2000年4月鞍山钢铁学院学报Journal of Anshan Institute of I.&S.TechnologyVol.23No.2Apr.2000 DMCΟPID串级控制算法吴丽娟(鞍山钢铁学院电子与信息工程学院,辽宁鞍山 114002)摘 要:把DMC控制和PID控制相结合,给出DMCΟPID串级控制算法,该算法可作为PID控制的改进方案之一,仿真证明了该方法的有效性.关键词:预测控制;PID控制;串级控制中图分类号:TP13 文献标识码:A 文章编号:1000Ο1654(2000)02Ο0120Ο03 动态矩阵控制(DMC)是近年来发展起来的一种新型预测控制算法,是基于非参数模型,滚动优化实施并结合反馈校正的优化控制算法.它具有对模型要求低,在线计算方便,控制综合质量好等优点,因而得到了广泛应用. 该算法在实际应用时,存在抗干扰性与实时性相矛盾的问题,本文把DMC和PID控制相结合既解决了上述问题,又可作为PID控制的改进方案之一.1 PID串级控制系统 PID串级控制系统结构如图1所示.图1 PID串级控制系统 该系统主回路和副回路采样周期可不同,副回路采样周期T2小,主回路采样周期T1大,可使副控制对象响应速度快,主控制对象响应速度慢.2 DMC预测控制算法 (1)预测模型为Y PM(K)=Y PO(K)+AΔu M(K)(1) (2)滚动优化:性能指标min J(K)=ωP(K)-Y PM(K)2Q+Δu M(K)2R(2)ωP(K)为对象期望输出值ΔuM(K)=(A T QA+R)-1A T Q[ωP(K)-Y PO(K)]Δu(K)=C TΔuM (K) C T=(1,0, 0(3)收稿日期:1999-11-13.收稿日期:吴丽娟(1965-),女,辽宁鞍山人,鞍山钢铁学院讲师. (3)反馈校正:输出误差e (K +1)=y (K +1)-y 1(K +1/K )(4)其中,y (K +1)为模型实际输出. 修正未来输出预测Y cor (K +1)=Y N 1(K )+h e (K +1)(5)h =(h 1,h 2,…,h n )T 为校正向量.3 DMC 算法存在问题及解决方法311 存在的问题 (1)难以达到理想的抗干扰性.抗干扰性要求对干扰作出快速反应,希望有较小采样周期,但DMC 算法在线计算比一般PID 算法复杂,为了使维数不致过高而影响控制的实时性,往往不能把采样周期取得过小. (2)DMC 控制采用加权方式对预测输出进行校正,不能分辨误差是由模型失配还是由干扰引起的,校正参数难以兼顾鲁棒性和对干扰反应的快速性.312 解决方法 把DMC 和PID 控制相结合构成DMC ΟPID 串级控制,系统如图2所示.图2 DMC ΟPID 串级控制系统 副回路包含系统的主要干扰,采用PID 控制,可取较小的时间常数,可及时克服进入对象的二次干扰.主回路控制采用DMC 算法,目的在于获得良好的跟踪性能并对模型失配有较强的鲁棒性.4 仿 真 设被控对象传递函数为G (s )=1(s +1)(s +2)(5s +1) 考虑三种控制方案:(1)DMC 控制,采样周期T =1s ;(2)PID 串级控制,内、外环对象分别为图3 抗干扰性比较 G 2(s )=1(s +1)(s +2)G 1(s )=15s +1(3)DMC ΟPID 串级控制,内、外环同(2). (1),(3)控制结果比较如图3所示,图中分别为出现d =1干扰的DMC 控制及DMCΟPID 串级控制结果,串级结构大大改善了DMC 控制的抗干扰性.・121・23卷 2期 吴丽娟:DMC ΟPID 串级控制算法 (2),(3)控制结果比较如图4,5所示.图4 跟踪性能 图5 增益失配时的响应 从仿真结果可见DMC ΟPID 串级控制的控制性能、跟踪性及鲁棒性均胜过PID 串级控制,可作为PID 串级控制的改进方案,在实际工业生产过程中有一定的应用价值.参考文献[1] Schmidt G ,Xi Y.A New Design Method for Digital Controllers Based on Nonparameteric Plant Models[R ].In :TzafestasS G ed.Applied Digital Control Ammsterdam :North ΟHolland ,1985.93~109.[2] 王锦标,方崇智.过程计算机控制[M ].北京:清华大学出版社,1990.40~45.[3] 席裕庚.预测控制[M ].北京:国防工业出版社,1993.10~18.DMC ΟPID Series Control AlgorithmW U L i Οj uan(School of Electronic and Information Engineering ,Anshan Institute of I.&S.Technology ,Anshan 114002,China )Abstract :Combining the DMC with PID control ,this paper provided DMC ΟPID series control algorithm which can be used as the promoted method of PID control.The simulation shows the validity of the pro 2posed algorithm.K ey Words :predictive control ;PID control ;series contorl(R eceived November 13,1999)・221・ 鞍山钢铁学院学报 2000年。
预测控制DMC算法matlab%DMC控制算法clc;clear all;G=input('输入传递函数G=');%输入传递函数%判断是否为稳定系统,若是可以控制,若不是,则无法用DMC 算法进行控制den=G.den{1};%取传函的分母p=real(roots(den))%求传函的极点的实部for i=1:length(p)r=p(i);if r>0 %若有某一个极点的实部的实部大于零,则为不稳定系统,DMC无法控制p,G %在命令窗口显示极点和传函Error=('您要控制的对象为不稳定系统,DMC算法只适用于稳定系统!')returnendend%设置DMC参数Ts=input('采样周期 Ts= ');%采样时间P=input('预测时域 P= ');%预测步长M=input('控制时域 M= ');%控制步长N=80;%截断步长%设定参考值yr=10; %系统期望输出%建立系统阶跃响应模型[y0,t0]=step(G,0:5:500);%初始化DMCA=zeros(P,M);%动态矩阵a=zeros(N,1);for i=1:Na(i)=y0(i);endfor i=1:Pfor j=1:Mif i-j+1>0A(i,j)=a(i-j+1); %构造矩阵Aendendend%初始化向量ys,y,u,e和矩阵A0ys=ones(N,1);y=zeros(N,1);u=zeros(N,1);e=zeros(N,1);A0=zeros(P,N-1);for i=1:Pfor j=N-2:-1:1if N-j+1+i-1<=NA0(i,j)=a(N-j+1+i-1)-a(N-j+i-1);%构造矩阵A0 elseA0(i,j)=0;endendA0(i,N-1)=a(i+1);end%DMC程序for k=2:NUk_1=zeros(N-1,1);for i=1:N-1if k-N+i<=0Uk_1(i)=0;elseUk_1(i)=u(k-N+i);endendY0=A0*Uk_1;e(k)=y(k-1)-Y0(1);Yr=zeros(P,1);for i=1:PYr(i)=yr;endEk=zeros(P,1);for i=1:PEk(i)=e(k);enddelta_u=inv(A'*A+eye(M))*A'*(Yr-Y0-Ek); %控制增量的计算for i=1:Mif k+i-1<=Nu(k+i-1)=u(k+i-1-1)+delta_u(i); %控制律的计算endendtemp=0;%设置在k-j-1时刻以前的控制律for j=1:N-1if k-j<=0temp;elseif k-j-1<=0temp=temp+a(j)*u(k-j);elsetemp=temp+a(j)*(u(k-j)-u(k-j-1)); endendendif k-N<=0y(k)=temp+e(N);elsey(k)=temp+a(N)*u(k-N)+e(N); endend%画图显示结果t=10*(1:N);subplot(211);plot(t,y);title('DMC控制输出曲线'); xlabel('t')ylabel('y')grid onsubplot(212);plot(t,u,'r');title('控制作用');xlabel('t')ylabel('u')grid on。
dmc控制算法DMC控制算法是一种常用的控制方法,它在工业自动化领域中广泛应用。
DMC即Dynamic Matrix Control,它是一种基于模型的预测控制算法。
本文将介绍DMC控制算法的原理和应用。
DMC控制算法的基本原理是通过建立系统的数学模型,预测未来一段时间内的系统输出,并根据预测结果调整控制器的输出,使系统的实际输出与期望输出尽可能接近。
DMC算法的关键在于建立准确的系统模型和优化权重矩阵。
在DMC算法中,首先需要建立系统的数学模型。
这可以通过系统的输入和输出数据进行辨识来实现。
根据辨识得到的模型,可以预测未来一段时间内的系统输出。
预测的准确性直接影响控制的效果。
在预测的基础上,DMC算法通过优化权重矩阵来调整控制器的输出。
权重矩阵中的权重值反映了控制器对于不同因素的重视程度。
通过调整权重矩阵,可以使控制器更加关注系统输出与期望输出之间的偏差,从而实现更好的控制效果。
DMC算法的优点是可以有效地处理系统的时变性和非线性。
通过建立系统模型和预测未来输出,可以对系统的变化做出及时的响应。
此外,DMC算法还可以根据不同的控制要求进行灵活调整,使控制器更加适应不同的工况。
DMC控制算法在许多领域都得到了广泛应用。
例如,在化工工艺中,DMC算法可以用于控制反应器的温度、压力等参数,实现反应过程的精确控制。
在电力系统中,DMC算法可以用于控制发电机的输出,使电网的电压和频率保持稳定。
在机械制造中,DMC算法可以用于控制机床的位置和速度,实现精密加工。
DMC控制算法是一种基于模型的预测控制算法,通过建立系统模型和预测未来输出来调整控制器的输出,实现系统的精确控制。
DMC 算法具有灵活性和适应性强的特点,并在工业自动化领域中得到了广泛应用。
未来,随着控制技术的不断发展和完善,DMC算法将进一步提升自身的性能和应用范围,为工业自动化带来更大的价值。
动态矩阵控制(DMC )的简单理解及其⽰例⽂章结构前⾔在模型预测控制的课程当中接触到了动态矩阵控制(DMC)算法,虽然不会在以后继续深⼊,但它控制、预测和校正的思想还是可圈可点的。
本⽂将简要概述DMC的基本原理和控制流程,尽量做到省去复杂的数学公式⽽理解DMC。
但由于接触不深且实⼒有限,本⽂的表述可能会有⼀些不准确或者错误,因此仅供参考,同时欢迎⼤家指正。
DMC 的基本思想动态矩阵控制(DMC)是在上世纪80年代提出的⼀种典型的模型预测控制(MPC)⽅法。
虽然在今天它已经不再是MPC的研究关注点,但其思想却⾮常值得借鉴,因此⼏乎所有的模型预测控制教材都把DMC作为⼀部分来讲解。
概括来说,DMC的特点主要有:1. 控制与系统的数学模型⽆关,仅需获取系统的阶跃响应序列,⽅法适⽤于稳定的系统;2. 系统的动态特性中具有纯滞后或⾮最⼩相位特性都不影响算法的直接应⽤。
也就是说,使⽤DMC⽆需知道被控对象的数学模型,只需要获取被控对象的阶跃响应序列即可实现控制效果,但需要被控对象是渐进稳定的。
同时,即使被控对象有⼀定的纯滞后特性,或者是⾮最⼩相位的(对象传递函数的零点存在于S域右半平⾯)都不影响DMC的使⽤。
从上⾯的特性可以,DMC的应⽤范围是⽐较⼴泛的。
接下来就简单地谈⼀谈DMC的三要素,既预测模型、滚动优化和反馈校正。
预测模型DMC的使⽤需要建⽴在预测模型的基础上。
简单来说就是,DMC控制器希望通过已有信息构造未来若⼲时刻的系统输⼊并预测系统的输出。
那么要如何实现呢?可⾏的⽅案之⼀是使⽤系统的阶跃响应序列。
由线性时不变(LTI)系统具备的⽐例叠加性质可知,在已知从0开始的系统N个采样点上的阶跃响应序列的情况下,系统在k时刻对未来P个时刻的输出预测可由系统在k时刻的输出预测初值与M个连续的输⼊增量序列及由阶跃响应序列组成的动态矩阵A计算得到,其计算表达式如下:其中N称为截断步长,P称为预测步长,M称为控制步长,它们三者之间的⼤⼩关系⼀般为N > P > M > 0。