1. 引言
随着人们对工业生产过程控制的要求越来越高,工程师们开始尝试寻找一些新的控制理念,除了在系统识别、鲁棒控制、自适应控制、模型简化等方面寻求突破。因此,预测控制不是从某种理论衍生出来的产物,而是直接来自工业生产实践 [1] [2] 。
本文首先对物理实验平台的非线性水箱进行了分析和实验,获得了流量-水位的飞升曲线MATLAB上进行了辨识,获取了不同水位工作点下对象模型参数;考虑PLC预测控制算法编程优化了控制器存储空间有限等问题,A以典型的工业工艺模型为控制对象,3030型艾默生非线性水箱。设计了PLC通过预测控制和控制,实现非线性水箱水位预测控制系统PID对比试验研究验证了预测控制对非线性水箱控制的可实现性和优势,从调节时间、超调量、鲁棒性等方面。
2. 动态矩阵控制(DMC)
2.1. 介绍基本原理
动态矩阵控制(DMC)以阶跃响应为基础,采用控制增量的算法。DMC优点在于在控制中加入积分环节,可以有效消除系统的静态误差 [3] 。
DMC算法包括预测模型、滚动优化、反馈校正三个部分 [4] 。算法流程图如图1所示。
2.2. 基于黄金分割法的约束预测控制器设计
在实际的工业控制过程中,执行器的输出是有限的,即输出范围只能为0%~在100%之间,因此,在工业环境中设计控制器时,考虑输出约束后,动态矩阵控制简化算法的控制增量会发生变化。本文采用黄金分割法设计有约束力的预测控制器,
Δ
u
(
k
) 最优值计算将在约束条件下进行。
2.2.1. 介绍了黄金分割算法
黄金分割算法非常适合解决一维函数
[
a
,
b
] 区间内极值问题的经典算法。其主要解决思想是通过适者生存的原则,沿着已知的方向逐渐缩小搜索范围,然后逐渐接近优化问题的最佳价值 [5] 。
黄金分割法具体的计算步骤为:
(1) 确定收敛精度
ε ;
(2) 从
[
a
,
b
] 区间内选择
r
1
,
r
2
(
r
1
<
r
2
) 两点,然后将
[
a
,
b
] 分成三段;
Figure 1. Flow chart of unconstrained dynamic matrix control algorithm
图1. 动态矩阵控制算法流程图
(3) 判断
f
(
r
1
) 和
f
(
r
2
) 的大小,若
f
(
r
1
)
>
f
(
r
2
) ,需要更新收敛区间:
a
=
r
1
r
1
=
r
2
r
2
=
a
0.618
×
(
b
?
a
)
若
f
(
r
1
)
>
f
(
r
2
) ,收敛区间的更新公式为:
b
=
r
2
r
2
=
r
1
r
1
=
a
0.382
×
(
b
?
a
)
(4) 若
b
?
a
a
<
ε 停止迭代,极值为
a
b
2 ,函数的极值为
f
(
a
b
2
) ;否则,返回步骤(3)继续迭代。
2.2.2. 基于黄金分割法的约束预测控制器设计
在设计约束控制器时,选择约束目标函数 [6] [7] [8] :
min
J
(
k
)
=
‖
w
p
(
k
)
?
y
?
p
0
(
k
)
?
A
2
Δ
u
(
k
)
‖
Q
2
H
T
R
H
Δ
u
2
( k )
在线求解
Δ
u
(
k
) 最优值的问题定义为:
Δ
u
(
k
)
=
arg
min
J
(
Δ
u
(
k
)
)
s
.
t
.
Δ
u
(
k
i
)
∈
[
Δ
u
min
,
Δ
u
max
]
,
Δ
u
min
<
0
,
Δ
u
max
>
0
u
(
k
i
)
∈
[
u
min
,
u
max
]
,
u
min
≥
0
,
Δ
u
max
>
0
Δ
u
(
k
i
)
=
γ
i
Δ
u
k
)
,
1
≤
i
≤
M
−
1
由上述公式作简单的推导可以得到如下的关系:
u
(
k
)
=
Δ
u
(
k
)
+
u
(
k
−
1
)
u
(
k
+
1
)
=
γ
Δ
u
(
k
)
+
Δ
u
(
k
)
+
u
(
k
−
1
)
u
(
k
+
M
−
1
)
=
R
i
Δ
u
(
k
)
+
u
(
k
−
1
)
其中,
R
i
=
∑
γ
i
结合上述
Δ
u
(
k
) 的两个约束条件,通过推导,可以得到最终的约束范围是:
Δ
u
(
k
)
∈
{
[
max
(
Δ
u
min
,
u
min
−
u
(
k
−
1
)
R
M
−
1
)
,
min
x
(
Δ
u
max
,
u
max
−
u
(
k
−
1
)
R
M
−
1
)
]
,
γ
<
1
[
max
(
Δ
u
min
γ
M
−
1
,
u
min
−
u
(
k
−
1
)
R
M
−
1
)
,
min
x
(
Δ
u
max
γ
M
−
1
,
u
max
−
u
(
k
−
1
)
R
M
−
1
)
]
,
γ
≥
1
}
根据上述得到的
Δ
u
(
k
) 的约束范围,即可在设定的
[
a
1
(
t
)
,
b
1
(
t
)
] 区间内进行最优值搜索求解。则基于黄金分割法和集结优化的有约束预测控制算法流程图如图2所示。
3. MATLAB仿真实例
3.1. 控制对象的辨识及参数的获取
以实验室的A3030型艾默生的非线性水箱为控制对象,通过调节控制阀,观察水位的变化情况,当水位趋于稳定不在发生变化时,此时可以通过系统自带的数据采集工具,截取实时趋势曲线中,变化较
Figure 2. Flow chart of constrained predictive control algorithm based on golden section method
图2. 基于黄金分割法的有约束预测控制算法流程图
为明显的一段。图3为水箱在阀门扰动下得到的飞升曲线,图3中,经过去坏点、初始值归零化等处理后,通过热工遗传算法辨识可以得到该水箱的传递函数为:
G
(
s
)
=
3.7766
(
52.676
s
+
1
)
2
3.2. DMC算法和PID算法的比较
在MATLAB平台上对已知的被控对象进行常规的PID优化和DMC优化。
运用DMC算法对该模型进行优化,选取参数如下:
模型时域:
N
=
200
预测时域:
P
=
200
控制时域:
选取:
γ
=
0.5
设定区间
u
∈
[
−
6
,
6
]
;
Δ
u
∈
[
−
16
,
16
]
由图4可知,① 号曲线为DMC算法优化后的曲线;② 号曲线为PID算法整定后的曲线。通过曲线的对比,可以得到DMC算法对被控对象的调节效果和品质远高于常规的PID控制,集中体现在DMC算法无超调,且调节时间远快于PID算法,所以,可以得出,DMC算法在控制策略和控制品质上是优于PID控制的。
Figure 3. Flying curve of nonlinear water tank under valve disturbance
图3. 阀门扰动下非线性水箱的飞升曲线
Figure 4. Simulation results
图4. 仿真结果
4. 基于PLC的水箱控制试验
4.1. 实验设备介绍
A3030型艾默生过程自动化实训系统通过实际流体(自来水)的流量控制和液位控制来模拟对实际对象的控制和设备管理,它充分展示了DCS分散控制功能,体现了控制系统和现场仪表间的协同运作能力以及在PID回路之外建立设备管理平台为用户带来预诊断功能的先进理念,由于上水箱是一个圆筒状模型,一个具有典型非线性特征的对象,可以模拟很多实际工业过程被控对象。
现场设备包括:压力变送器、温度变送器、流量变送器、分析仪表,无线振动变送器,阀门、阀门定位器等。实验室项目融合了当前先进的各类通讯模式:HART、FF (基金会现场总线)以及Wireless Hart 智能无线通讯协议。被控对象的实物图如图5。
4.2. 实验流程及实例
OVATION是美国开发的新型分散控制系统,它既包含过程控制技术,又吸收了企业管理信息技术,系统在硬件上采用了速度快、容量大的设备,保证系统的高性能运行;通讯网络使用标准的以太网,可靠性高、速度快、开放性高,提升其多任务、多数据的工作能力。
本次实验以单容水箱为被控对象。通过第二章的黄金分割算法的计算,可以得到的所需的模型参数
a
[
i
]
(
i
=
1
⋯
N
) 和控制器增量系数
d
t 。将PLC中的程序初始化后赋值。然后将PLC与DCS立柜进行通讯连接,在Ovation系统上进行必要的通信点的配置和逻辑图的搭建。水箱水位的控制趋势图可以通过自带软件获取。本次实验总体流程如图6。
图7中A曲线为水位变化趋势,B曲线为控制器变化趋势。实验截取了其中10分钟的水位趋势变化图,可以看出①时刻水位能够在极短的时间内稳定下来;在稳定后的5分钟也就是②时刻通过改变出水口的插槽,从而改变对象的模型,来观察该算法的鲁棒性。通过实验可以看出,DMC算法确实能够提高系统的控制品质,集中体现在调节时间加快,超调量低,还可以看出该算法的鲁棒性良好。
无论是从第二节的仿真研究还是第三节的实验来看,通过对比可以看出:针对大迟延、大惯性、非线性的对象,从控制的品质来讲,都是DMC算法优于PID控制策略,集中体现在系统的调节时间加快、超调量降低、鲁棒性增强。
Figure 5. A3030 process system physics experiment platform
图5. A3030工艺流程系统物理实验平台
Figure 6. Experimental flow diagram
图6. 实验流程图
Figure 7. Water tank level control trend
图7. 水箱水位控制趋势图
5. 结论
本文首先系统分析了预测控制中DMC算法的主要过程,并提出了一种基于黄金分割算法的有约束的预测控制器设计;其次对A3030工艺流程设备进行了简要的介绍。主要完成了在MATLAB平台上对DMC算法和PID算法进行调试,通过对被控对象的调节,可以看出,所选的DMC算法在控制品质上是优于传统的PID算法。为了进一步实现DMC算法,我们将利用PLC和A3030的非线性水箱上模拟控制大迟延系统的物理实验。通过试验可以验证出DMC算法确实可以提高系统的控制品质,且该算法的鲁棒性也较好。有比较深远的意义和推广价值,未来应更进一步革新和改善DMC算法,以达到更优的品质。