模型预测控制及其MATLAB实现
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1
a1 a n 1
u (k 1) y (k 2) 0 a n m 1 u (k m 1) y 0 (k n)
0
a1 a A 2 a n
a1 a n 1
(7-8) 式中 矩阵A为n×m维的常数矩阵,由于它完全由系统 的阶跃响应参数所决定, 反映了对象的动态特性,故称 之为动态矩阵。n,m分别称之为最大预测长度和控制 长度
。
ˆ AU Y0 Y
7.1.2 滚动优化 系统的模型预测是根据动态响应系数和控制增量来 决定的,该算法的控制增量是通过使最优化准则 n m 2 J [ y (k j ) w(k j )]2 ( j )u( k j 1) j 1 j 1 (7-9) 的值为最小来确定的, 以使系统在未来n(p>=n>=m)个时 刻的输出值尽可能接近期望值。为简单起见取控制加 权系数 ( j ) (常数)
10
11
12
2
2015/11/11
W [ w(k 1), w(k 2), , w(k n)]T 若令 则式(7-9)可表示为
用Y的最优预测值 Yˆ 中 并令
代替Y,即将式(3-8)代入式(3-10)
J 0 U
(7-10) 式中 w(k+j)称为期望输出序列值,在预测控制这类算 法中 , 要求闭环响应沿着一条指定的、平滑的曲线到 达新的稳定值,以提高系统的鲁棒性. 一般取 j j
ˆ ( k 1) e( k 1) y ( k 1) y
并用此误差加权后修正对未来其它时刻的预测 ~ ˆ he(k 1) Yp Y 即 (7-14) p ~ ~ ~ y ( k p )]T 为t=(k+1)T时刻经误差 式中 Y [ y (k 1), y (k 2), , ~ h [h1 , h2 , , h p ]T 校正后所预测的t=(k+1)T时刻的系统输出; h1 1 。 为误差校正矢量,
由于对象及环境的不确定性,在k时刻实施控制作用 后,在k+1时刻的实际输出y(k+1)与预测的输出
ˆ ( k 1) y 0 (k 1) a1 u ( k ) y
未见得相等,这就需要构成预测误差
~ 经校正后的 Y 作为下一时刻的预测初值,由于在 p t=(k+1)T 时刻的预测初值 , 应预测 t=(k+2)T,…,(k+p+1)T 时刻的输出值,故令 y 0 (k i ) ~ y (k i 1) (i 1,2, , p 1) (7-15) 由式(3-14), 式(3-15)得下一时刻的预测初值为
(7-16) 这一修正的引入,也使系统成为一个闭环负反馈系统, 对提高系统的性能起了很大作用。 由此可见,动态矩阵控制是由预测模型,控制器和校正 器三部分组成的,模型的功能在于预测未来的输出值,控 制器则决定了系统输出的动态特性,而校正器则只有当 预测误差存在时才起作用。
18
ˆ ( k i 1) hi 1e(k i ) y 0 (k i) y (i 1,2, , p 1) y (k p) y ˆ ( k p ) h p e( k 1) 0
5
7. 1 动态矩阵控制理论
动态矩阵控制是一种基于计算机控制的技术,它 是一种增量算法,并基于系统的阶跃响应,它适用 于稳定的线性系统,系统的动态特性中具有纯滞后 或非最小相位特性都不影响该算法的直接应用。由 于它直接以对象的阶跃响应离散系数为模型, 从而避 免了通常的传递函数或状态空间方程模型参数的辩 识,采用多步预估技术从而能有效地解决时延过程 问题,按使预估输出与给定值偏差最小的二次性能 指标实施控制,因此是一种最优控制技术,动态矩 阵控制算法的控制结构主要由预测模型、滚动优化 和误差校正及闭环控制形式构成。
14
U ( AT A I ) 1 AT (W Y0 )
如果A,λ都已确定,d 可事先离线解出,在线计算Δu(k) 只需完成两个矢量的点积即可。 可见,预测控制的控制策略是在实施了Δu(k)之后, 采集k+1时刻的输出数据,进行新的预测、校正、优化 ,从而避免在等待m拍控制输入完毕期间,由于干扰等 影响造成失控。因此优化过程不是一次离线进行,而 是反复在线进行的,其优化目标也是随时间推移的, 即在每一时刻都提出一个立足于该时刻的局部优化目 标,而不是采用不变的全局优化目标。
i p
由于只有过去的控制输入是已知的 , 因此在利用动 态模型作预估时有必要把过去的输入对未来的输出贡 献分离出来,上式可写为
ˆ (k j ) ai u (k j i ) y
i 1 j
(7-4) 上式右端的后二项即为过去输入对输出n步预估,记为 p 1 (7-5) y (k j ) a u (k j i ) a u (k j p)
2
3
实际中大量的工业生产过程都具有非线性、不 确定性和时变的特点,要建立精确的解析模型十分 困难,所以经典控制方法如PID控制以及现代控制 理论都难以获得良好的控制效果。而模型预测控制 具有的优点决定了该方法能够有效地用于复杂工业 过程的控制,并且已在石油、化工、冶金、机械等 工业部门的过程控制系统中得到了成功的应用。
0 a n m 1
则(7-7)式可写为
记
ˆ [y ˆ ( k 1), y ˆ ( k 2), , y ˆ ( k n)]T Y
U [u (k ), u (k 1), , u (k m 1)]T Y0 [ y 0 (k 1), y 0 (k 2), , y 0 (k n)]T
6
4
1
2015/11/11
7.1.1 预测模型
从被控对象的阶跃响应出发,对象动态特性用一系 列动态系数 a1 , a 2 ,, a p 即单位阶跃响应在采样时刻的值 来描述,p称为模型时域长度,ap是足够接近稳态值的 系数。
根据线性系统的比例和叠加性质(系数不变原理),若 在某个时刻k-i(k>=i)输入u(k-i),则 u (k i ) 对输出y(k)的 1 i p a u ( k i ) 贡献为: y (k ) i p a u (k i ) (7-1) 若在所有 k i(i 1,2,, k ) 时刻同时有输入,则跟据叠加原 p 1 理有 y (k ) ai u (k i ) a p u (k p) i 1 (7-2) 利用上式容易得到y(k+j的 n步预估(n<p) 为: (7-3) ˆ (k j ) a u (k j i) a u (k j p ) ( j 1,2, , n) y
13
15
7.1.3 误差校正 由于每次实施控制,只采用了第一个控制增量Δu(k) ,故对未来时刻的输出可用下式预测。 ˆ au (k ) Y Y (7-13) p p0 ˆ (k 1), y ˆ (k 2), , y ˆ (k p )]T表示在t=kT时刻预测的 式中 Yˆp [ y 有 u ( k ) 作用时的未来p个时刻的系统输出; Y p 0 [ y 0 (k 1), y 0 (k 2),, y 0 (k p)]T表示在t=kT时刻预测的无 T u ( k )作用时的未来p个时刻的系统输出; a [a1 , a 2 ,, a p ] 为单位阶跃响应在采样时刻的值。
2015/11/11
第三篇 模型预测控制 及其MATLAB实现
1
第7章 预测控制理论
7.1 7.2 7.3
动态矩阵控制理论 广义预测控制理论 预测控制理论分析
模型预测控制(Model Predictive Control:MPC) 是20世纪80年代初开始发展起来的一类新型计算机控 制算法。该算法直接产生于工业过程控制的实际应用, 并在与工业应用的紧密结合中不断完善和成熟。模型 预测控制算法由于采用了多步预测、滚动优化和反馈 校正等控制策略,因而具有控制效果好、鲁棒性强、 对模型精确性要求不高的优点。
i
p
(7-6)
图7-1 单位阶跃响应曲线
7
8
9
为增加系统的动态稳定性和控制输入的可实现性, 以及减少计算量可将 向量减少为 m维(m<n),则式 u (7-6)变为 (7-7) ˆ (k 1) a 0 u (k ) y (k 1) y
a y ˆ (k 2) 2 ˆ ( k n) a n y
i j 1 0 i j 1
a u (k j i) a
i
p 1
p
u ( k j p )
( j 1,2, , n)
ห้องสมุดไป่ตู้
i
p
( j 1,2, , n)
p 1 i 1
将式(3-4)写成矩阵形式
ˆ (k 1) a1 y y ˆ ( k 2) a 2 ˆ ( k n) a n y u (k ) y 0 (k 1) u (k 1) y (k 2) a1 0 a n 1 a1 u (k n 1) y 0 (k n)
16
17
3
2015/11/11
7. 2 广义预测控制理论
十多年来产生了许多自校正器, 都成功地用于实际 过程,但是对变时延,变阶次与变参数过程, 控制效果 不好。因此研制具有鲁棒性的自校正器成为人们关 注的问题。 Richalet 等人提出了大范围预测概念, 在此基础上, Clarke 等 人 提 出 了 广 义 预 测 自 校 正 器 , 该 算 法 以 CARIMA模型为基础, 采用了长时段的优化性能指标, 结合辨识和自校正机制, 具有较强的鲁棒性, 模型要 求低等特点, 并有广泛的适用范围。
T T
J (Y W ) (Y W ) U U
w(k j ) a y (k ) (1 a ) y r ( j 1,2, , n)
其中 为柔化系数 0 1 ;y(k)为系统实测输出 值;yr 为系统的给定值。
得 (7-11) 式(7-11)与实际检测值无关,是DMC算法的开环 控制形式。由于模型误差,弱非线性特性等影响,开环 控制式(7-11),不能紧密跟踪期望值,若等到经过m个时 刻后,再重复式(7-11), 必然造成较大的偏差,更不能抑 制系统受到的扰动。故必须采用闭环控制算式,即仅 将计算出来的 m个控制增量的第一个值付诸实施, 即 现时的控制增量为 u (k ) c T ( AT A I ) 1 AT (W Y0 ) d T (W Y0 ) (7-12) 式中 c T 1 0 0 ; d T c T ( AT A I ) 1 AT
目前提出的模型预测控制算法主要有基于非参数 模型的模型算法控制(MAC)和动态 矩阵控制( DMC),以及基于参数模型的广义预测控制(GPC )和广义预测极点配置控制 (GPP)等。其中,模 型算法控制采用对象的脉冲响应模型,动态矩阵控 制采用对象的阶跃响应模型,这两种模型都具有易 于获得的优点;广义预测控制和广义预测极点配置 控制是预测控制思想与自适应控制的结合,采用 CARIMA模型(受控自回归积分滑动平均模型), 具有参数数目少并能够在线估计的优点,并且广义 预测极点配置控制进一步采用极点配置技术,提高 了预测控制系统的闭环稳定性和鲁棒性。 。
a1 a n 1
u (k 1) y (k 2) 0 a n m 1 u (k m 1) y 0 (k n)
0
a1 a A 2 a n
a1 a n 1
(7-8) 式中 矩阵A为n×m维的常数矩阵,由于它完全由系统 的阶跃响应参数所决定, 反映了对象的动态特性,故称 之为动态矩阵。n,m分别称之为最大预测长度和控制 长度
。
ˆ AU Y0 Y
7.1.2 滚动优化 系统的模型预测是根据动态响应系数和控制增量来 决定的,该算法的控制增量是通过使最优化准则 n m 2 J [ y (k j ) w(k j )]2 ( j )u( k j 1) j 1 j 1 (7-9) 的值为最小来确定的, 以使系统在未来n(p>=n>=m)个时 刻的输出值尽可能接近期望值。为简单起见取控制加 权系数 ( j ) (常数)
10
11
12
2
2015/11/11
W [ w(k 1), w(k 2), , w(k n)]T 若令 则式(7-9)可表示为
用Y的最优预测值 Yˆ 中 并令
代替Y,即将式(3-8)代入式(3-10)
J 0 U
(7-10) 式中 w(k+j)称为期望输出序列值,在预测控制这类算 法中 , 要求闭环响应沿着一条指定的、平滑的曲线到 达新的稳定值,以提高系统的鲁棒性. 一般取 j j
ˆ ( k 1) e( k 1) y ( k 1) y
并用此误差加权后修正对未来其它时刻的预测 ~ ˆ he(k 1) Yp Y 即 (7-14) p ~ ~ ~ y ( k p )]T 为t=(k+1)T时刻经误差 式中 Y [ y (k 1), y (k 2), , ~ h [h1 , h2 , , h p ]T 校正后所预测的t=(k+1)T时刻的系统输出; h1 1 。 为误差校正矢量,
由于对象及环境的不确定性,在k时刻实施控制作用 后,在k+1时刻的实际输出y(k+1)与预测的输出
ˆ ( k 1) y 0 (k 1) a1 u ( k ) y
未见得相等,这就需要构成预测误差
~ 经校正后的 Y 作为下一时刻的预测初值,由于在 p t=(k+1)T 时刻的预测初值 , 应预测 t=(k+2)T,…,(k+p+1)T 时刻的输出值,故令 y 0 (k i ) ~ y (k i 1) (i 1,2, , p 1) (7-15) 由式(3-14), 式(3-15)得下一时刻的预测初值为
(7-16) 这一修正的引入,也使系统成为一个闭环负反馈系统, 对提高系统的性能起了很大作用。 由此可见,动态矩阵控制是由预测模型,控制器和校正 器三部分组成的,模型的功能在于预测未来的输出值,控 制器则决定了系统输出的动态特性,而校正器则只有当 预测误差存在时才起作用。
18
ˆ ( k i 1) hi 1e(k i ) y 0 (k i) y (i 1,2, , p 1) y (k p) y ˆ ( k p ) h p e( k 1) 0
5
7. 1 动态矩阵控制理论
动态矩阵控制是一种基于计算机控制的技术,它 是一种增量算法,并基于系统的阶跃响应,它适用 于稳定的线性系统,系统的动态特性中具有纯滞后 或非最小相位特性都不影响该算法的直接应用。由 于它直接以对象的阶跃响应离散系数为模型, 从而避 免了通常的传递函数或状态空间方程模型参数的辩 识,采用多步预估技术从而能有效地解决时延过程 问题,按使预估输出与给定值偏差最小的二次性能 指标实施控制,因此是一种最优控制技术,动态矩 阵控制算法的控制结构主要由预测模型、滚动优化 和误差校正及闭环控制形式构成。
14
U ( AT A I ) 1 AT (W Y0 )
如果A,λ都已确定,d 可事先离线解出,在线计算Δu(k) 只需完成两个矢量的点积即可。 可见,预测控制的控制策略是在实施了Δu(k)之后, 采集k+1时刻的输出数据,进行新的预测、校正、优化 ,从而避免在等待m拍控制输入完毕期间,由于干扰等 影响造成失控。因此优化过程不是一次离线进行,而 是反复在线进行的,其优化目标也是随时间推移的, 即在每一时刻都提出一个立足于该时刻的局部优化目 标,而不是采用不变的全局优化目标。
i p
由于只有过去的控制输入是已知的 , 因此在利用动 态模型作预估时有必要把过去的输入对未来的输出贡 献分离出来,上式可写为
ˆ (k j ) ai u (k j i ) y
i 1 j
(7-4) 上式右端的后二项即为过去输入对输出n步预估,记为 p 1 (7-5) y (k j ) a u (k j i ) a u (k j p)
2
3
实际中大量的工业生产过程都具有非线性、不 确定性和时变的特点,要建立精确的解析模型十分 困难,所以经典控制方法如PID控制以及现代控制 理论都难以获得良好的控制效果。而模型预测控制 具有的优点决定了该方法能够有效地用于复杂工业 过程的控制,并且已在石油、化工、冶金、机械等 工业部门的过程控制系统中得到了成功的应用。
0 a n m 1
则(7-7)式可写为
记
ˆ [y ˆ ( k 1), y ˆ ( k 2), , y ˆ ( k n)]T Y
U [u (k ), u (k 1), , u (k m 1)]T Y0 [ y 0 (k 1), y 0 (k 2), , y 0 (k n)]T
6
4
1
2015/11/11
7.1.1 预测模型
从被控对象的阶跃响应出发,对象动态特性用一系 列动态系数 a1 , a 2 ,, a p 即单位阶跃响应在采样时刻的值 来描述,p称为模型时域长度,ap是足够接近稳态值的 系数。
根据线性系统的比例和叠加性质(系数不变原理),若 在某个时刻k-i(k>=i)输入u(k-i),则 u (k i ) 对输出y(k)的 1 i p a u ( k i ) 贡献为: y (k ) i p a u (k i ) (7-1) 若在所有 k i(i 1,2,, k ) 时刻同时有输入,则跟据叠加原 p 1 理有 y (k ) ai u (k i ) a p u (k p) i 1 (7-2) 利用上式容易得到y(k+j的 n步预估(n<p) 为: (7-3) ˆ (k j ) a u (k j i) a u (k j p ) ( j 1,2, , n) y
13
15
7.1.3 误差校正 由于每次实施控制,只采用了第一个控制增量Δu(k) ,故对未来时刻的输出可用下式预测。 ˆ au (k ) Y Y (7-13) p p0 ˆ (k 1), y ˆ (k 2), , y ˆ (k p )]T表示在t=kT时刻预测的 式中 Yˆp [ y 有 u ( k ) 作用时的未来p个时刻的系统输出; Y p 0 [ y 0 (k 1), y 0 (k 2),, y 0 (k p)]T表示在t=kT时刻预测的无 T u ( k )作用时的未来p个时刻的系统输出; a [a1 , a 2 ,, a p ] 为单位阶跃响应在采样时刻的值。
2015/11/11
第三篇 模型预测控制 及其MATLAB实现
1
第7章 预测控制理论
7.1 7.2 7.3
动态矩阵控制理论 广义预测控制理论 预测控制理论分析
模型预测控制(Model Predictive Control:MPC) 是20世纪80年代初开始发展起来的一类新型计算机控 制算法。该算法直接产生于工业过程控制的实际应用, 并在与工业应用的紧密结合中不断完善和成熟。模型 预测控制算法由于采用了多步预测、滚动优化和反馈 校正等控制策略,因而具有控制效果好、鲁棒性强、 对模型精确性要求不高的优点。
i
p
(7-6)
图7-1 单位阶跃响应曲线
7
8
9
为增加系统的动态稳定性和控制输入的可实现性, 以及减少计算量可将 向量减少为 m维(m<n),则式 u (7-6)变为 (7-7) ˆ (k 1) a 0 u (k ) y (k 1) y
a y ˆ (k 2) 2 ˆ ( k n) a n y
i j 1 0 i j 1
a u (k j i) a
i
p 1
p
u ( k j p )
( j 1,2, , n)
ห้องสมุดไป่ตู้
i
p
( j 1,2, , n)
p 1 i 1
将式(3-4)写成矩阵形式
ˆ (k 1) a1 y y ˆ ( k 2) a 2 ˆ ( k n) a n y u (k ) y 0 (k 1) u (k 1) y (k 2) a1 0 a n 1 a1 u (k n 1) y 0 (k n)
16
17
3
2015/11/11
7. 2 广义预测控制理论
十多年来产生了许多自校正器, 都成功地用于实际 过程,但是对变时延,变阶次与变参数过程, 控制效果 不好。因此研制具有鲁棒性的自校正器成为人们关 注的问题。 Richalet 等人提出了大范围预测概念, 在此基础上, Clarke 等 人 提 出 了 广 义 预 测 自 校 正 器 , 该 算 法 以 CARIMA模型为基础, 采用了长时段的优化性能指标, 结合辨识和自校正机制, 具有较强的鲁棒性, 模型要 求低等特点, 并有广泛的适用范围。
T T
J (Y W ) (Y W ) U U
w(k j ) a y (k ) (1 a ) y r ( j 1,2, , n)
其中 为柔化系数 0 1 ;y(k)为系统实测输出 值;yr 为系统的给定值。
得 (7-11) 式(7-11)与实际检测值无关,是DMC算法的开环 控制形式。由于模型误差,弱非线性特性等影响,开环 控制式(7-11),不能紧密跟踪期望值,若等到经过m个时 刻后,再重复式(7-11), 必然造成较大的偏差,更不能抑 制系统受到的扰动。故必须采用闭环控制算式,即仅 将计算出来的 m个控制增量的第一个值付诸实施, 即 现时的控制增量为 u (k ) c T ( AT A I ) 1 AT (W Y0 ) d T (W Y0 ) (7-12) 式中 c T 1 0 0 ; d T c T ( AT A I ) 1 AT
目前提出的模型预测控制算法主要有基于非参数 模型的模型算法控制(MAC)和动态 矩阵控制( DMC),以及基于参数模型的广义预测控制(GPC )和广义预测极点配置控制 (GPP)等。其中,模 型算法控制采用对象的脉冲响应模型,动态矩阵控 制采用对象的阶跃响应模型,这两种模型都具有易 于获得的优点;广义预测控制和广义预测极点配置 控制是预测控制思想与自适应控制的结合,采用 CARIMA模型(受控自回归积分滑动平均模型), 具有参数数目少并能够在线估计的优点,并且广义 预测极点配置控制进一步采用极点配置技术,提高 了预测控制系统的闭环稳定性和鲁棒性。 。