DMC算法MATLAB编程及仿真

  • 格式:doc
  • 大小:177.00 KB
  • 文档页数:16

下载文档原格式

  / 16
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、前言

工业生产的过程是复杂的,建立起来的模型也是不完善的。即使是理论非常复杂的现代控制理论,其效果也往往不尽人意,甚至在一些方面还不及传统的PID控制。20世纪70年代,人们除了加强对生产过程的建模、系统辨识、自适应控制等方面的研究外,开始打破传统的控制思想,试图面向工业开发出一种对各种模型要求低、在线计算方便、控制综合效果好的新型算法。在这样的背景下,预测控制的一种,也就是动态矩阵控制(DMC)首先在法国的工业控制中得到应用。因此预测控制不是某种统一理论的产物,而是在工业实践中逐渐发展起来的。预测控制中比较常见的三种算法是模型算法控制(MAC),动态矩阵控制(DMC)以及广义预测控制。本篇所采用的是动态矩阵控制,其采用增量算法,因此在消除稳态余差方面非常有效。

二、控制系统设计方案

2.1 控制系统方案设计图

动态矩阵控制是基于系统阶跃响应模型的算法,隶属于预测控制的范畴。它的原理结构图如下图(1)所示:

图(1) 预测控制原理结构图

上图就是预测控制原理结构图,从图中我们可以看到,预测控制的主要特点。即建立预测模型;采用滚动优化策略,采用模型误差反馈矫正。这也是预测控制的本质所在。下面将对这三个特点一一说明。

2.2 预测控制基本原理

1、预测模型:预测模型的功能是根据对象历史信息和未来输入对对象输出进行预测,它是被控对象的准确模型。这里只强调模型的功能而不强调其结构形式。因此,预测模型可以是状态方程、传递函数等传统的参数模型,对于线性稳

定对象,阶跃响应、脉冲响应这类非参数模型也可以作为预测模型使用。预测模型具有展示系统未来动态行为的功能,这样,就可以利用预测模型来预测未来时刻被控对象的输出变化及被控变量与其给定值的偏差,作为控制作用的依据,使之适应动态系统所具有的因果性的特点,得到比常规控制更好的控制效果。

2、滚动优化:预测控制是一种优化控制算法,它是通过某一性能指标的最优来确定未来的控制作用。这一性能指标涉及到系统未来的行为。如,通常可取被控对象输出在未来的采样点上跟踪某一期望轨迹的方差最小,性能指标中涉及到的系统未来的行为,是根据预测模型由未来的控制策略决定的。但是,预测控制中的优化与传统意义下的离散最优控制有很大的区别,这主要表现在预测控制中的优化是一种有限时段的滚动优化。每一采样时刻,优化性能指标只涉及到从该时刻起未来的有限时段,到下一采样时刻,这一优化时段同时向前推移。因此,预测控制不是用一个对全局相同的优化性能指标,而是在每一采样时刻有一个相对于该时刻的优化性能标。不同时刻优化性能指标的相对形式是相同的,但其绝对形式,即,所包含的时间区域是不同的。在预测控制中,优化不是一次离线进行,而是反复在线进行,这就是滚动优化的含义。虽然各个不同时刻的优化指标的相对形式是相同的,每一步实现的是静态参数的优化,但因为其包含的时间区域不同,从控制的全过程看,实现的是动态的优化。因而预测控制被称为是“滚动优化”的算法。与一般最优控制中的全局优化相比,预测控制中的滚动优化只能得到全局的次优解,但由于它的优化始终建立在实际过程的基础上,使控制结果达到实际意义上的最优控制,能够有效地克服工业过程控制中的模型不精确、非线性、时变等不确定性的影响。

3、反馈校正:预测控制是一种闭环控制算法,预测算法在进行滚动优化时,优化的基点应与系统实际一致。但作为基础的预测模型,只是对象动态特性的粗描述,由于实际系统中存在的非线性、模型失配、干扰等因素,基于不变模型的预测不可能和实际情况完全相符,这就需要用附加的预测手段补充模型预测的不足,或者对基础模型进行在线修正。滚动优化只有建立在反馈校正的基础上,才能体现出其优越性。因此,预测控制算法在通过优化确定了一系列未来的控制作用后,为了防止模型失配或环境干扰引起控制对理想状态的偏离,并不是把这些控制作用逐一全部实施,而只是实现本时刻的控制作用。到下一采样时刻,则首先检测对象的实际输出,并利用这一实时信息、对基于模型的预测进行修正,然后再进行新的优化。反馈校正的形式是多样的,可以在保持预测模型不变的基础上,对未来的误差作出预测并加以补偿,也可以根据在线辨识的原理直接修改预测模型。不论取何种校正形式,预测控制都把优化建立在系统实际的基础上,并力图在优化时对系统未来的动态行为作出较准确的预测。因此,预测控制中的优

化不仅基于模型,而且利用了反馈信息,因而构成了闭环优化。

2.3 DMC 控制策略

DMC 算法的基本原理DMC (Dynamic Matrix Control )算法是基于被控对象单位阶跃响应非参数模型的预测控制算法。通过反馈校正和滚动优化当前和未来时刻的控制量,使得输出响应符合预先设定的轨迹。DMC 动态矩阵控制是一种用被控对象的阶跃响应特性来描述系统动态模型的预测控制算法。

三、模型建立

3.1 模型和辨识算法的选择

已知加热炉温度被控系统的模型可以表达为如下形式,且已知参数范围:1

)(122 辨识算法分别用一次最小二乘算法和递推最小二乘算法对被控对象进行辨识。最小二乘法是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。

3.2辨识算法介绍

1、一次最小二乘算法

数学原理:

观测矩阵H 和L

L=T n l l l )](),.....,4(),3([ H=⎥⎥⎥⎥⎥⎦

⎤⎢⎢⎢⎢⎢⎣⎡----------)2(...)2()1()1(...)3()2()2(...)2()1()1(...)3()2(n u u u n u u u n l l l n l l l 被辨识参数矩阵C=T b b a a ]2,1,2,1[

公式1:L H H H C T T 1)(-=

用MATLAB 程序编程如下:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

load y22;load u; %导入输入输出序列

u=u;y=y22; %给u ,y 赋值

D=1; %设置纯迟延为1