基于PLC的动态矩阵控制算法实现_杨俊
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
出值尽可能接近期望值 。 由预测模型 (1)导出指标
中 y与 Δu的关系
yPM (k)=yP0 (k)+AΔu(k)
a1
0
(3)
其中 , A= aM …
a1 , 称为动态矩阵 。
aP … aP-M+1
最优化指标 J中的第二项主要用于压制过于剧
烈的控制增量 , 以防止系统超出限制范围或发生剧
烈震荡 , M、P分别称为控制时域和优化时域 。
关键词 :模型预测控制 ;动态矩阵控制 ;PLC 中图分类号 :O232 文献标识码 :A 文章编号 :1000 -0682(2008)04 -0067 -04
Iຫໍສະໝຸດ BaiduplementingthePLC-baseddynamicmatrixcontrolalgorithm
YANGJun, MAShu-shu (SchoolofAutomationunderSoutheastUniversity, JiangsuNanjing210096, China)
0.200 7, 0.083 7, 0.010 1] 。 2.3 DMC算法的 PLC编程实现
等并没有直接的解析关系 。 对于一般的被控对象 , 文中采用 S7 -300系列 PLC实现系统的动态矩
DMC通常要用凑试结合仿真的方法对设计参数进 行整定 [ 3] 。
阵控制算法 , 编程软件为 SIMATICSTEP-7 V5.3, 编 程过程中用到的模块及其功能见表 1。
表 1 算法中用到的模块及其功能
类型 组织块
逻辑 功能块
特殊 功能块 数据块
对象名称 OB1 FC1 FC2 FC3 FC4 FC5
FC6
FC7 FC105 FC106 DB1
符号变量名 主循环执行程序 DMC控制器实时控制模块 预测值校正模块 初始值移位模块 控制增量计算模块 输出预测值计算模块
中 , 到下一 采样时 刻首先 要检 测对 象的 实际输 出
y(k+1), 并与模型预测输出 y1 (k+1 k)比较 , 构成 输出误差
e(k+1)=y(k+1)-y1(k+1 k)
(6)
并可采用对 e(k+1)加权的方式修正对未来输出的
预测 :
ycor(k+1)=yN1 (k)+he(k+1)
(7)
由权系数组成的 N维向量 h=[ h1 …hN] T 称为校正
向量 。
在 k+1时刻 , 由于时间基点的变动 , 预测的未
来时间点也将移动到下一时刻 , 即
yN0 (k+1)=Sycor(k+1)
(8)
01
0
其中 S= 0
为移位阵 。 1 01
2 动态矩阵控制算法的 PLC实现
针对东南大学过程控制实验室 QXLPC-3实验
参数 di和校正参数 hi。但其中除了 hi可由设计者 直接自由选择外 , ai取决于对象的阶跃响应特性及
2, 优化时域 P=6, 被控对象的模型向量 a=[ 0, 0, 0.810 5, 1.629 3, 2.144 7, 2.469 1, 2.673 2, 2.801 7,
采样周期的选择 , di取决于 ai及优化性能指标 , 它 2.882 6, 2.933 5, 2.965 6, 2.985 7, 2.998 4, 3.006 4,
由于 DMC是一种基于模型的控制 , 并且应用了
在线优化的原理 , 与 PID算法相比 , 显然它需要作更
多的离线准备工作 , 这主要包括以下 3个方面 :
(1)检测对象的阶跃响应 , 经 光滑后得到模型
系数 a1 , … , aN。 (2)利用仿真程序确定优化策略 , 并计算出控
制系数 d1 , …, dP。 (3)选择校正系数 h1 , h2 , …, hN, 这里取 hi=1, i
Keywords:modelpredictivecontrol;dynamicmatrixcontrol;PLC
0 引言
模型预测控制最初是由美国和法国等几家公司 在 70年代先后提出的一类新型控制算法 。 它一经 问世 , 就在工业过程控制中得到了广泛运用 。 它的 出现不是某种理论研究的产物 , 而是在工业实践中 发展起来的一种有效 的控制算法 。 动态矩阵控制 (DMC)是一种基于对象阶跃响应的模型预测控制 算法 , 它采用预测模型 、滚动优化和反馈校正等控制 策略 , 适用于具有多变量 、大时滞 、强耦合和不确定 性等不易建立精确数学模型的工业生产过程 , 已在 造纸 、石油 、化工 、电力 、冶金等工业部门的控制系统 中得到了成功应用[ 1] 。
由线性系统的比例和叠加性质 , 用模型参数足
以预测对象在未来的输出值 , 在 M个连续的控制增
量作用下未来各时刻的输出值为
min(M, i)
∑ yM (k+ik)=y0 (k+ik)+
ai-j+1 ×Δu(k+j-
j=1
1), i=1, … , N
(1)
式中 , k+ik表示在 k时刻 对 k+i时刻 的预测 , y0 表示初始预测值 。
=1, …, N。
这三组动态系数确定后 , 将其置入固定的内存
单元中 , 以便实时调用 。 DMC的在线计算由初始化
模块与实时控制模块组成 。 初始化模块是在投入运
行的第一步检测对象的实际输出 y, 并把它设定为
预测初值 y0(k+ik), i, …, N。 从第二步起转入实 时控制模块 , 在每一采样时刻的在线计算流程见图
1.2 滚动优化
为了对系统进行控制 , 可通过下述优化指标进
行优化
minJ(k)=‖
rp(k)-yPM(k)‖
2 Q
+‖
ΔuM (k)‖
2 R
(2)
其中 , Q=diag(q1 … qP), R=diag(r1 … rM )分别称为 误差权矩阵和控制权矩阵 。确定从现在起 M个连
续变化的控制增量 , 以使系统在未来 P个时刻的输
其中 , cT =[ 1, 0, … , 0] , P维行向量 dT =cT(ATQA+
R)-1 ATQ=[ d1 …dP] 称为控制向量 。
1.3 反馈校正
由于实际存在模型失配 、环境干扰等未知因素 ,
进一步的优化可能会建立在虚假的基础上 。为了及
时纠正这些误差 , 必须采用闭环算法 。 所以在 DMC
分析和研究 。被控对象的动态响应如图 2所示 。
图 1 动态矩阵控制的在线计算流程
2.2 DMC控制器的参数选择
图 2 被控对象的动态响应
由图 1给出的 DMC算法及其算法流程可知 , 当 经过反复凑试及仿真比较 , 选择控制器参数如
DMC算法在线实施时 , 只涉及到模型参数 ai、控制 下 :采样周期 T=2, 建模时域 N=25, 控制时域 M =
可以进一步得到算法的开环控制形式 ΔuM (k)=(ATQA+R)-1 ATQ[ rP(k)-yP0 (k)] (4)
在最优控制规律式 (4)中 , 并不将所有 M个计
算出来的控制增量付诸实践 , 而只是实施其中的第
一个值 , 即
Δu(k)=cTΔuM(k)=dT[ rP(k)-yP0 (k)]
(5)
们都是设计的结果而非直接可调参数 。 由此可见 , 3.011 5, 3.014 6, 3.016 6, 3.017 9, 3.018 7, 3.019 2,
在设计中真正要确定的原始参数应该包括 :采样周 3.019 5, 3.019 7, 3.019 8, 3.019 9, 3.019 9] , 误差权
2008年第 4期 工业仪表与自动化装置
· 67·
基于 PLC的动态矩阵控制算法实现
杨 俊 , 马姝姝
(东南大学 自动化学院 , 江苏 南京 210096) 摘要 :在介绍了动态矩阵控制 (DMC)算法后 , 重点阐述了 DMC在 PLC中的实现技术及其应用 研究 。 论文采用 PLC实现了上述控制算法 , 具有更高的可靠性和实时性 。 仿真及实验研究结果表 明 , 动态矩阵控制效果远优于传统 PID控制 。文中提出的算法实现可直接或稍加修改应用于实际 工业过程 。
Abstract:Thispaperpresentsakindofdynamicmatrixcontrol(DMC)anditsimplementationtechniqueandapplicationstudybasedonthePLC.Infact, theDMCalgorithm iscarriedoutbyusingthe PLC, thusachievinghighreliabilityandreal-timeproperty.Theresultsfrom thesimulationandexperimentindicatethattheeffectofthedynamicmatrixcontrolismuchbetterthanthatoftheconventionalPID control.Thisalgorithmcanbeappliedtoanyrealindustrialprocessdirectlyorafteralittlemodificationof it.
1 动态矩阵控制算法原理
DMC算法对模型精度要求不高却能实现高质 量控制 。 究其原因 , 它的优化过程不是一次离线进 行 , 而是反复在线进行 。 与一般最优控制中的全局 优化相比 , 滚动优化只能得到全局的次优解 , 但由于 它的优化始终建立在实际过程的基础上 , 从而达到 了实际意义上的最优控制 [ 3] 。 DMC控制包括下述 3个部分 。 1.1 预测模型
期 T、优化性能指标中的优化时域 P、控制 时域 M、 矩阵和控制权矩阵均取单位阵 , 校正向量各元素均取
误差权矩阵 Q及控制权矩阵 R、校正系数 hi。 这些 1, 参考输入设置为 4, 控制向量 dT =[ 0, 0, 0.229 2,
设计参数是通过 ai、di、hi间接 影响控制 系统性能 的 , 它们与控制的快速性 、稳定性 、鲁棒性 、抗干扰性
DMC算法容易由高级语言实现 , 所以在现代工 业过程控制中 , 其往往在监控层开发应用 。 国内外 许多从事过程控制的知名公司都开发了各自的商品 化先进控制软件 , 并已广泛应用于各类工业过
收稿日期 :2008 -06 -19 作者简介 :杨 俊 (1984 -), 男 , 湖北省孝感 人 , 硕士生 , 研 究方
向为先进控制理论及应用 。
程[ 2] 。 然而 , 由于监督计算机硬件性能的局限性和 操作系统不稳定性等因素的影响 , 系统的可靠性和 实时性会降低 。 PLC因其具有很高的可靠性和实时 性 , 已在工业过程控制中大量应用 。 然而 PLC在实 现复杂控制算法时 , 开发工作量大 , 不及高级语言简 洁 。 因此 , 用 PLC实现先进过程控制算法仍然是过 程控制领域的一个难点 。该文采用 S7 -300 PLC实 现了动态矩阵控制算法 。
首先需要测定对象单位阶跃响应的采样值 ai= a(iT), i=1, 2…, 其中 , T为采样周期 。 对于渐近稳
· 68·
工业仪表与自动化装置 2008年第 4期
定的对象 , 其阶跃响应在 N个有限采样周期后将趋
于稳定值 , 即 aN≈a(∞)。这样 , 对象的动态信息就 可以近似用有限集合 {a1 , a2 , …, aN}加以描述 。这 个集合的参数构成了 DMC的模型参数 , 向量 a=[ a1 , a2 , …, aN] T称为模型向量 , N则称为模型时域 。
装置水温控制对象 , 该文采用 SiemensS7 -300 PLC
实现了动态转矩控制 。 被控对象特性可由式 (9)近
似描述 :
G(s)=4.33.20s2+1e-4.65s
(9)
该对象动态矩阵控制算法的 PLC实现过程包
括计算流程设计 、控制器参数选择 、编程实现 。
2.1 DMC算法的计算流程
1, 其中对未来输出的预测值只需设 置一个 N维数
组 y(i)。
2008年第 4期 工业仪表与自动化装置
· 69·
MATLAB的模型预测工具箱提供了一系列的函 数 ,可用于模型预测控制的分析、设计和仿真 。这些函 数的类型主要有 :系统模型辨识函数 、模型建立和转换 函数 、模型预测控制器设计仿真工具以及系统分析工 具等等[ 4] 。运用这些函数 , 能很容易地对已知被控对 象或非参数模型对象设计模型预测控制器并进行仿真