《1 引言》

1 引言

网络控制系统 (NCS) 是计算机技术、通信技术与控制技术发展和融合的产物。实时性是控制系统面临的重要问题之一, 在网络控制系统中, 对由数据传输带来的不确定延迟, 提出了将广义预测控制 (GPC) 应用于网络控制系统的思想, 并用BP网络建立了一个误差的预测模型, 结合基于参数模型预测的预测值, 一起构成新型的广义预测控制算法, 其优越性在基于以太网的网络控制系统中得到了验证。

《2 网络控制系统及其控制方法》

2 网络控制系统及其控制方法

《2.1 网络控制系统简介》

2.1 网络控制系统简介

NCS概念于1999年出现在马里兰大学G. C. Walsh等人的论著[1,2]中, 但并没有给出确切的定义, 只是用图说明了NCS的结构, 如图1所示。控制器与传感器通过网络形成闭环。NCS狭义和广义之分。狭义的NCS是指在某个区域内一些现场检测、控制及操作设备和通信线路的集成, 用以提供设备之间的数据传输, 使该区域内不同地点的设备和用户实现资源共享和协调操作。广义的NCS包括狭义的NCS, 还包括通过企业信息网络对工厂车间、生产线甚至现场设备的监控调度、优化等。

《图1》

图1 网络控制系统的结构

图1 网络控制系统的结构  

Fig.1 Structure of networked control systems

实时性是控制系统面临的重要问题之一, 由于控制网络中传送的数据包通常较短、发送/接收频率高, 因此有限的网络带宽就使数据传输过程中不可避免地存在着时延, 而且随着网络协议、负载等诸多时延因素的影响, 该时延会随机变化。这就容易导致较大的超调量和较长的调节时间, 严重影响生产过程的控制品质, 甚至会降低系统的稳定性。

《2.2 带误差补偿的GPC用于网络控制系统论述》

2.2 带误差补偿的GPC用于网络控制系统论述

目前3种最有影响的预测控制方法是动态矩阵控制 (DMC) 、模型算法控制 (MAC) 和广义预测控制 (GPC) 。DMC和MAC是分别以阶跃响应和脉冲响应描述的非参数模型为基础的预测控制算法。二者均适用于渐近稳定的线性过程, 且算法简单、计算量小、鲁棒性较强。GPC是一种基于参数模型的算法, 是在自适应控制的研究中发展起来的预测控制算法。它的预测模型采用受控自回归积分滑动平均模型 (CARIMA) , 克服了阶跃响应模型、脉冲响应模型不能描述不稳定过程和难以在线辨识的缺点。GPC保持最小方差自校正控制器的模型预测, 在优化中引入了多步预测的思想, 抗负载扰动、随机噪声、时延变化等能力显著提高, 具有许多可以改变各种控制性能的调整参数。它不仅能用于开环稳定的最小相位系统, 而且可用于非最小相位系统、不稳定系统和时滞、变结构系统。它在模型失配情况下仍能获得良好的控制性能。预测控制在时滞控制系统的作用见参考文献[3,4,5]。正是因为GPC内在的鲁棒性, 即对于不确定时延系统的适应性, 它可以很好地应用于带延时的网络控制系统的控制。

但是, GPC基本算法是基于系统的数学模型, 没有考虑建模误差的影响。为了保证算法的有效性, 被控对象的数学模型应该非常精确。然而, 在复杂的工业环境下所涉及的对象往往是多输入、多输出的高维复杂系统, 其数学模型可能非常复杂, 再加上环境等不确定因素的影响, 很难建立起精确的数学模型。虽然GPC基本算法对模型失配有一定的抑制作用, 但在建模误差较大时, 随着预测长度的增加, 预测误差必然急剧增加, 从而有可能破坏系统的鲁棒性。

在网络控制系统中, 网络时延的存在会使控制对象的实际数学模型与预测模型产生较大偏差, 这势必影响预测的精度, 随着预测长度的增加, 其预测误差也加大。为了克服这一缺点, 考虑引入预测误差对预测输出进行校正, 通过对预测模型的输出校正, 就可以进一步克服模型失配的影响, 提高控制系统的鲁棒性。

具体解决方法:利用历史数据, 根据已发生的预测偏差, 基于BP网络建立一个误差的预测模型, 并结合基于数学模型预测的预测值一起构成改进的广义预测控制算法。

《3 广义预测控制 (GPC) 及其改进》

3 广义预测控制 (GPC) 及其改进

《3.1 广义预测控制基本算法[6,7]》

3.1 广义预测控制基本算法[6,7]

广义预测控制GPC是基于参数模型的预测控制, 是以受控自回归积分滑动平均模型CARIMA (controlled auto-regressive integrated moving average) 为预测模型, 对于多步预测时域P和控制时域L, 输出预测值的向量表示形式为

Yp(Κ+1)=GΔ(U(Κ)+Fy(k)+ΗΔ(u(k)(1)

其中Yp (K +1) = (yp (k +1) , yp (k +2) , …, yp (k +P) ) T;

《图2》

设参考轨迹为

Yd(Κ+1)=(yd(k+1),yd(k+2),,yd(k+Ρ))Τ

GPC的目的是使预测输出对参考轨迹的跟踪误差最小, 据此可确定如下性能指标:

J=ψ{(Yp(Κ+1)-Yd(Κ+1))Τ(Yp(Κ+1)-Yd(Κ+1))+λUΤ(Κ)U(Κ)}(2)

其中Yd表示期望值, λ为加权因子, 将Yp (K +1) 和Yd (K +1) 的表达式带入式 (2) 令∂J/∂ΔU (K) =0, 得如下的优化控制律:

ΔU(Κ)=(GΤG+λΙ)-1GΤ(Yd(Κ+1)-Fy(k)-ΗΔu(k-1))(3)

《3.2 加权的控制输入率》

3.2 加权的控制输入率

现有的GPC时域内所求得的M控制量, 大多数把第一个控制量Δu (k) 加到系统输入端, 作为k时刻滚动优化的结果, 并没有充分利用到剩余的M-1个已得到的控制量信息, 采用的一步控制增量Δu (k) 可能受预测误差、噪音和干扰等因素影响, 产生虚假波动。而由此控制增量直接跟踪可能带来大幅超调而导致长时间振荡, 导致瞬态响应性能下降。为了改善控制效果, 充分利用多步预测中的现有信息, 可采用平滑滤波的加权输入控制律:

u(k)=[i=1Μλ(i)u(k|k-i+1)]/i=1Μλ(i)(4)

式中λ (i) 为控制量加权系数, M为控制时域长度。

《3.3 神经网络误差预测和对预测输出的补偿[8]》

3.3 神经网络误差预测和对预测输出的补偿[8]

广义预测控制基本算法是基于系统的参数模型, 没有考虑建模误差的影响。在网络控制系统中, 网络时延的存在会使控制对象的实际参数模型与预测模型产生较大偏差, 这势必影响预测的精度 (即式 (1) 的预测结果与实际系统的输出产生偏差) , 随着预测长度的增加, 其预测误差也加大。

取BP网络作为预测模型, 以系统的期望输出和控制量作为输入样本, 实际输出与预测输出之差作为输出样本, 不断修正网络中神经元的连接权值, 使网络所表示的映射逐步逼近输入输出关系, 学习结束后, 网络就可以作为误差预测模型使用。

选用3层BP网络, 如图2所示, 中间层节点选用Sigmoid函数, 输出层节点选用线性函数。

《图3》

图2 BP网络示意图

图2 BP网络示意图  

Fig.2 BP network schematic plan

输入向量

X=[yd(k),yd(k-1),,yd(k-n+1),u(k-1),,u(k-m+1)]Τ

其中[yd (*) 为系统的期望输出值, u (*) 为系统的控制量;nm分别是系统的期望输出量和控制量的阶数。

输出向量为误差预测值:

《图4》

《图5》

其中y (k-j) 是在k-j时刻系统的实际输出值, yp (k-j|k-j-d) 是在k-j-d时刻基于数学模型的系统输出预测值, d为系统时滞, L为训练样本数。

用误差的反向传播算法进行连接权值调整, 训练好的神经网络即可进行误差的预测, 将误差的预测值记为ye (k+j|k) , 系统输出预测值记为yp (k+j|k) , 则经误差补偿的系统预测输出为

y˜p(k+j|k)=yp(k+j|k)+ye(k+j|k)(5)

用上式替换式 (1) 作为预测值, 即

Y˜p(k+1)=GΔU(Κ)+Fy(k)+ΗΔu(k)+Ye(6)

其中Ye = [ye (k+1|k) , ye (k+2|k) , …, ye (k +P|k) ]T

采用神经网络误差补偿后得到的最优解为

ΔU(Κ)=[GΤG+λΙ]-1GΤ(Yd(Κ+1)-Fy(k)-ΗΔ(u(k-1)-Ye](7)

《4 基于以太网的网络控制系统》

4 基于以太网的网络控制系统

《4.1 控制系统整体结构》

4.1 控制系统整体结构

为了验证控制效果, 设计了一个基于以太网的网络控制系统, 如图3所示。网络控制系统是由连在校园网上的2台计算机 (节点) 构成。其中一台计算机作为控制器, 另一台作为智能传感器/执行器。此系统的数据流向由2个环组成:一个是和硬件直接打交道的I/O环, 一个是负责网络传输的通信环。

《图6》

图3 基于以太网的网络控制系统

图3 基于以太网的网络控制系统  

Fig.3 Networked control system based on Ethernet

传感器/执行器端的硬件部分主要由PC机和基于PCI总线的数据采集卡组成;软件部分主要是通信进程和数据采集/处理进程。通信进程主要是利用Windows Socket的流式套接字技术, 支持以太网的TCP/IP协议, 提供可靠的点对点的通信。数据采集和输出部分主要是利用Windows的多媒体定时器实现高精度定时采样, 对被控对象进行控制。控制器端的控制程序是采用有BP网络预测误差补偿的广义预测控制方法设计的, 在编写BP神经网络算法和广义预测控制算法时, 使用了MATCOM的矩阵运算函数库。

《4.2 网络延迟分析》

4.2 网络延迟分析

假设条件:传感器节点采用时间驱动 (time-driven) 方式, 对被控对象进行等周期采样, 采样周期为T;控制器节点和执行器节点采用事件驱动 (event-driven) 方式, 即信息的到达时间即为相应节点的动作时间;整个控制回路总的时间延迟τk =τksc+τkca, 且{τk}为一相互独立的随机变量序列, 其中, τksc表示从传感器到控制器的时延, τkca表示从控制器到执行器的时延, 如图4所示。

《图7》

图4 带延迟的控制系统

图4 带延迟的控制系统  

Fig.4 Control system with time delay

《图8》

图5 网络控制系统的延迟测试曲线1

图5 网络控制系统的延迟测试曲线1  

Fig.5 Delay testing curve 1 in NCS

在校园网测试网络延迟特性, 主要过程是:第一个节点向第二个节点发送数据, 记录发送时刻t1, 第二个节点接收到数据后立即返回信息, 第一个节点收到确认信息的时刻记为t2, 则延迟近似表示为t= (t1-t2) /2。实验结果表明网段不同, 所得到的延迟是不同的。图5为相距15 m两直连节点间延迟曲线 (测试30个数据) , 最小延迟大约为4 ms左右, 而最大延迟达到15 ms左右;图6为相距200 m中间连有诸多其他节点的2节点间延迟曲线 (测试350个数据) , 最大延迟达到200 ms。可见, 网络的时延具有很大不确定性和随机性, 随着节点距离的增大, 网段中节点数增多, 节点间的网络延迟时间加长。

《图9》

图6 网络控制系统的延迟测试曲线2

图6 网络控制系统的延迟测试曲线2  

Fig.6 Delay testing curve 2 in NCS

《4.3 控制算法效果验证》

4.3 控制算法效果验证

选二阶对象的模型为G(s)=0.2s+1(0.4s+1)(0.1s+1)。2节点距离15 m, 传统的GPC算法的响应曲线如图7示, 具有神经网络误差补偿GPC算法的响应曲线如图8示。

《图10》

图7 传统的GPC算法的响应曲线

图7 传统的GPC算法的响应曲线  

Fig.7 Response curve of conventional GPC algorithm

当2节点相距200 m, 即模型发生明显失配时, 分别得到如图9和图10所示的传统的GPC和带补偿的GPC响应曲线。

显然, 当模型失配时, 普通的广义预测控制, 输出不能尽快逼近给定值。而具有神经网络误差补偿的广义预测控制, 有比较快的响应时间, 超调较小, 有良好的控制效果。

《图11》

图8 具有误差补偿GPC算法的响应曲线

图8 具有误差补偿GPC算法的响应曲线  

Fig.8 Response curve of GPC algorithm with error compensation

《图12》

图9 模型失配时传统的GPC算法的响应曲线

图9 模型失配时传统的GPC算法的响应曲线  

Fig.9 Response curve of conventional GPC algorithm under modeling mismatch

《图13》

图10 模型失配时带误差补偿的GPC算法
的响应曲线

图10 模型失配时带误差补偿的GPC算法的响应曲线  

Fig.10 Response curve of GPC algorithm with error compensation under modeling mismatch

《5 结论》

5 结论

笔者以网络控制系统为研究对象, 针对网络控制系统具有不确定时延的特性, 提出了具有误差补偿的广义预测控制思想。克服了系统不确定性和一般的广义预测控制的建模误差的影响, 实验结果表明当模型发生失配时, 具有神经网络误差补偿的广义预测控制比一般的GPC算法的控制效果有明显的改善。这表明了前者对变时滞系统的适应性以及对网络控制系统控制的有效性。