1. 引言
随着人们对工业生产过程的控制要求越来越高,工程师们除了在系统辨识、鲁棒控制、自适应控制、模型简化等方面寻求突破外,还开始尝试寻找一些新的控制思路。因此,预测控制并不是从某种理论衍生推导出的产物,而是直接来源于工业生产实践 [1] [2] 。
本文首先对物理实验平台的非线性水箱进行了分析和实验,获得了流量——水位的飞升曲线,并在MATLAB上进行了辨识,获取了不同水位工作点下对象模型参数;考虑PLC控制器存储空间有限等问题对预测控制算法编程进行了优化,A3030型艾默生的非线性水箱这种典型的工业过程模型作为控制对象。设计了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
(