没有合适的资源?快使用搜索试试~ 我知道了~
DMC算法MATLAB编程及仿真.pdf
需积分: 50 16 下载量 126 浏览量
2019-12-27
17:09:30
上传
评论
收藏 305KB PDF 举报
温馨提示
工业生产的过程是复杂的, 建立起来的模型也是不完善的。预测控制中比较常见的三种算法是模型算法控制(MAC),动态矩阵控制(DMC)以及广义预测控制。动态矩阵控制(DMC),其采用增量算法,因此在消除稳态余差方面非常有效。
资源推荐
资源详情
资源评论
1
一、前言
工业生产的过程是复杂的, 建立起来的模型也是不完善的。 即使是理论非常
复杂的现代控制理论,其效果也往往不尽人意,甚至在一些方面还不及传统的
PID 控制。 20 世纪 70 年代,人们除了加强对生产过程的建模、系统辨识、自适
应控制等方面的研究外, 开始打破传统的控制思想, 试图面向工业开发出一种对
各种模型要求低、 在线计算方便、 控制综合效果好的新型算法。 在这样的背景下,
预测控制的一种,也就是动态矩阵控制( DMC )首先在法国的工业控制中得到
应用。因此预测控制不是某种统一理论的产物, 而是在工业实践中逐渐发展起来
的。预测控制中比较常见的三种算法是模型算法控制( MAC ),动态矩阵控制
(DMC)以及广义预测控制。本篇所采用的是动态矩阵控制,其采用增量算法,
因此在消除稳态余差方面非常有效。
二、控制系统设计方案
2.1 控制系统方案设计图
动态矩阵控制是基于系统阶跃响应模型的算法,隶属于预测控制的范畴。
它的原理结构图如下图 (1)所示:
图 (1) 预测控制原理结构图
上图就是预测控制原理结构图, 从图中我们可以看到, 预测控制的主要特点。
即建立预测模型; 采用滚动优化策略, 采用模型误差反馈矫正。 这也是预测控制
的本质所在。下面将对这三个特点一一说明。
2.2 预测控制基本原理
1、预测模型:预测模型的功能是根据对象历史信息和未来输入对对象输出
进行预测, 它是被控对象的准确模型。 这里只强调模型的功能而不强调其结构形
式。因此,预测模型可以是状态方程、 传递函数等传统的参数模型, 对于线性稳
2
定对象, 阶跃响应、 脉冲响应这类非参数模型也可以作为预测模型使用。 预测模
型具有展示系统未来动态行为的功能, 这样,就可以利用预测模型来预测未来时
刻被控对象的输出变化及被控变量与其给定值的偏差, 作为控制作用的依据, 使
之适应动态系统所具有的因果性的特点,得到比常规控制更好的控制效果。
2、滚动优化:预测控制是一种优化控制算法,它是通过某一性能指标的最
优来确定未来的控制作用。 这一性能指标涉及到系统未来的行为。 如,通常可取
被控对象输出在未来的采样点上跟踪某一期望轨迹的方差最小, 性能指标中涉及
到的系统未来的行为, 是根据预测模型由未来的控制策略决定的。 但是,预测控
制中的优化与传统意义下的离散最优控制有很大的区别, 这主要表现在预测控制
中的优化是一种有限时段的滚动优化。 每一采样时刻, 优化性能指标只涉及到从
该时刻起未来的有限时段, 到下一采样时刻, 这一优化时段同时向前推移。 因此,
预测控制不是用一个对全局相同的优化性能指标, 而是在每一采样时刻有一个相
对于该时刻的优化性能标。 不同时刻优化性能指标的相对形式是相同的, 但其绝
对形式, 即,所包含的时间区域是不同的。 在预测控制中, 优化不是一次离线进
行,而是反复在线进行, 这就是滚动优化的含义。 虽然各个不同时刻的优化指标
的相对形式是相同的, 每一步实现的是静态参数的优化, 但因为其包含的时间区
域不同, 从控制的全过程看, 实现的是动态的优化。 因而预测控制被称为是 “滚
动优化” 的算法。与一般最优控制中的全局优化相比, 预测控制中的滚动优化只
能得到全局的次优解, 但由于它的优化始终建立在实际过程的基础上, 使控制结
果达到实际意义上的最优控制,能够有效地克服工业过程控制中的模型不精确、
非线性、时变等不确定性的影响。
3、反馈校正: 预测控制是一种闭环控制算法, 预测算法在进行滚动优化时,
优化的基点应与系统实际一致。 但作为基础的预测模型, 只是对象动态特性的粗
描述,由于实际系统中存在的非线性、 模型失配、 干扰等因素, 基于不变模型的
预测不可能和实际情况完全相符, 这就需要用附加的预测手段补充模型预测的不
足,或者对基础模型进行在线修正。 滚动优化只有建立在反馈校正的基础上, 才
能体现出其优越性。 因此,预测控制算法在通过优化确定了一系列未来的控制作
用后,为了防止模型失配或环境干扰引起控制对理想状态的偏离, 并不是把这些
控制作用逐一全部实施, 而只是实现本时刻的控制作用。 到下一采样时刻, 则首
先检测对象的实际输出, 并利用这一实时信息、 对基于模型的预测进行修正, 然
后再进行新的优化。 反馈校正的形式是多样的, 可以在保持预测模型不变的基础
上,对未来的误差作出预测并加以补偿, 也可以根据在线辨识的原理直接修改预
测模型。 不论取何种校正形式, 预测控制都把优化建立在系统实际的基础上, 并
力图在优化时对系统未来的动态行为作出较准确的预测。 因此,预测控制中的优
3
化不仅基于模型,而且利用了反馈信息,因而构成了闭环优化。
2.3 DMC 控制策略
DMC 算法的基本原理 DMC(Dynamic Matrix Control )算法是基于被控对象
单位阶跃响应非参数模型的预测控制算法。 通过反馈校正和滚动优化当前和未来
时刻的控制量,使得输出响应符合预先设定的轨迹。 DMC 动态矩阵控制是一种
用被控对象的阶跃响应特性来描述系统动态模型的预测控制算法。
三、模型建立
3.1 模型和辨识算法的选择
已知加热炉温度被控系统的模型可以表达为如下形式,且已知参数范围:
1<K<5,100<T2<500, 50<T1<200, 8.5<D<11.5 现从生产现场采集到的输入输出运
行数据存放在文件 u 和 yi 中(采样间隔是 5 秒)。
Ds
e
sTsT
K
sG
1
)(
1
2
2
辨识算法分别用一次最小二乘算法和递推最小二乘算法对被控对象进行辨
识。最小二乘法是一种数学优化技术。 它通过最小化误差的平方和寻找数据的最
佳函数匹配。 利用最小二乘法可以简便地求得未知的数据, 并使得这些求得的数
据与实际数据之间误差的平方和为最小。
3.2 辨识算法介绍
1、一次最小二乘算法
数学原理:
观测矩阵 H 和 L
L=
T
nlll )](),.....,4(),3([
H=
)2(
...
)2(
)1(
)1(
...
)3(
)2(
)2(
...
)2(
)1(
)1(
...
)3(
)2(
nu
u
u
nu
u
u
nl
l
l
nl
l
l
被辨识参数矩阵 C=
T
bbaa ]2,1,2,1[
公式 1:
LHHHC
TT 1
)(
用 MATLAB 程序编程如下:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
load y22;load u; %导入输入输出序列
u=u;y=y22; %给 u, y 赋值
D=1; %设置纯迟延为 1
剩余15页未读,继续阅读
资源评论
zkh2013
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功