- 1 -
一种基于 DMC 的网络控制系统容错控制策
略#
杨丽曼,刘桂林,张献*
(北京航空航天大学自动化科学与电气工程学院,北京,100191) 5
摘要:网络负载的不均衡变化会带来随机的网络时延和数据包丢失,降低系统性能甚至造成
系统失稳。针对前向和反馈回路同时存在时延和数据包丢失的全分布式网络控制系统,提出
一种基于动态矩阵控制的容错控制策略,通过控制器和执行器端的接口设置与队列时序控
制,有效利用新预测模型输出和预测控制序列来补偿随机时延和数据包丢失,提升控制系统10
的鲁棒性和容错能力,以克服网络服务质量波动造成的不利影响。
关键词:网络控制系统;时延;数据包丢失;动态矩阵控制
中图分类号:TP273
A Fault-tolerant Control Strategy Based on Dynamic Matric 15
Control for Networked Control Systems
YANG Liman, LIU Guilin, ZHANG Xian
(School of Automation Science and Electrical Engineering, BeiHang University, Beijing 100191,
China)
Abstract: Unbalanced network loads in the networked control systems (NCS) can induce 20
stochastic data delay and packet loss, which can degrade the control performance and even
destabilize systems. For the fully-distributed networked control system existing delay and packet
loss in the forward and feedback loops, a fault-tolerant control strategy based on dynamic matric
control was proposed. The predictive model and predictive control sequence was designed to
compensate random delay and packet loss through the network interface settings and time 25
sequence control on controllers and actuators, which improved the robustness and fault-tolerant
ability against QoS (Quality of Service) fluctuation in NCS.
Key words: networked control system; network delay; packet loss; dynamic matric control
0 引言 30
网络控制系统(networked control system,NCS)指通过现场总线、工业以太网或无线
网络将分散的、智能化的现场检测、控制及执行设备作为网络节点连接起来构成闭环回路,
通过节点之间的数据共享与协作,共同完成控制任务的实时系统。NCS 的主要优点是可以
实现资源共享、远程操作与控制、安装与维护简单及增加了系统的灵活性。然而,由于带宽
资源有限,多任务多回路 NCS 中存在时延、时延抖动、丢包、时序错乱、量化误差等问题,35
使控制系统性能下降甚至不稳定。特别是在网络负载波动或重负载网络环境下,信道竞争和
拥塞不可避免的造成数据包丢失,严重影响系统的性能和稳定性[1]。因此针对数据包丢失的
网络控制系统研究其容错控制算法具有重要的意义。
目前,针对 NCS 数据包丢失的研究已经取得了不少研究成果。A. Rabello 等 [2]将具有
数据包丢失的 NCS 建模成异步动态系统,给出了系统指数稳定的充分条件。J. L. Xiong 等 [3]40
- 2 -
将数据包丢失过程描述为马尔可夫过程,设计状态反馈控制器,并给出了系统稳定的充分条
件。H. Huang 等 [4]考虑在网络控制系统中传感器和控制器之间、控制器和执行器之间都存
在数据包丢包的情况,丢包过程满足有限状态的马尔可夫链的性质,利用李亚普诺夫稳定理
论和马尔可夫跳变线性理论,给出了保持系统均方稳定且满足保成本性能指标的充分条件,
并提出了保成本控制器的设计方法。Y. Wang 等 [5]考虑网络存在于传感器到控制器之间,针45
对同时具有不确定短时延及数据包丢失的网络控制系统,引入丢包补偿器补偿丢包对系统的
影响,当发生数据包丢失时,控制器采用丢包补偿器产生的预估状态代替系统的真实状态计
算控制量。同时考虑不确定短时延的影响,将网络控制系统建模为一类具有参数不确定的离
散切换系统,利用线性矩阵不等式方法给出了系统的保成本控制器和丢包补偿器的协同设计
方法。Z. J. Li 等 [6]针对数据包丢失设计约束模型预测控制策略,文中在执行器端设计一个50
缓冲区存储预测控制序列来更新控制向量。Shi-Lu Dai 等[7]将被控对象看成连续线性时不变
系统,建立切换模型,并针对系统中的不确定性时延提出了调度和反馈控制协同设计方案。
动态矩阵控制(Dynamic Matrix Control,DMC)是一种用被控对象的阶跃响应特性来
描述系统动态模型的预测控制算法。它有算法简单、计算量小,鲁棒性较强等特点,适合解
决系统模型适配和时滞的问题[8]。D. Chen等 [8]运用DMC解决数据包时序错乱的问题。Z. P. 55
Chen等 [9]针对网络控制系统随机长时延的问题,运用DMC对其进行补偿,达到理想的效果。
Ling Rong等[10]将网络控制系统应用于对水轮机的控制,运用DMC降低了网络丢包对控制系
统的影响。
本文针对全分布式的网络控制系统,考虑时延和数据包丢失同时存在的情况,设计了带
有时序控制的容错动态矩阵控制算法,利用模型预测控制量序列和特定的缓存和时序设计实60
现时延和丢包的补偿,最后通过 MATLAB/truetime 仿真验证了该算法的有效性。
1 问题描述
全分布式的网络控制系统在远程机器人控制、大型工程机械与车辆操纵及电力系统自动
化领域应用非常广泛。这类系统中采用扁平化的总线拓扑结构,所有传感器、控制器与执行
器都直接连入网络的情况,控制回路的数据均经过网络传输,且执行器端具有一定数据处理65
能力,能够进行数据缓存和时序控制,系统结构简图如图 1 所示。
缓存 执行器 被控对象
控制器
传感器
S1
S2 通信网络
ca
k
k
T
sc
k
k
T
ky
ku
- 3 -
图 1 网络控制系统的结构简图
70
假设网络控制系统满足如下条件:
(1)传感器采用时间驱动,控制器采用时间和事件同时驱动,执行器采用时间驱动;
(2)从传感器到控制器和从控制器到执行器的网络时延有界,均满足 sc ca T ;
(3)假设传感器到控制器的数据包丢失与控制器到执行器的数据包丢失可描述为满足
努利分布的随机序列 k 与 k ,并有 75
( 0)
( )
( 1)
k
k
k
P
,
( 0)
( )
( 1)
k
k
k
P
其中 1 , 1 。 ,k k 为 0 表示数据包丢失,为 1 表示数据包成功传输,并且
连续包丢失个数小于等于 M。
2 带有时序控制的 DMC 容错控制算法设计
针对上述假设条件下的目标系统,将网络传输引起的数据包丢失看作传感器或控制器80
的暂态故障,利用动态矩阵控制理论对状态反馈和控制量信号的未来序列进行预测,并利用
预测值和滚动优化配合时序控制来补偿传输中的延迟和丢包,控制框图如图 2 所示。
网络
预期值
反馈校正
模型预测
滚动优化
受控对象
执行器
传感器
控制器
...
( )y k
( )U k( )U kr
( )Y k
p ( )Y k
M ( )Y k
( )y k
( )u k
缓存队列
图 2 基于 DMC 的 NCS 容错控制原理框图 85
预测模型
本文采用被控对象的阶跃响应特性来描述系统的模型。系统在一些采样点处的阶跃响应
值为 1a , 2a ,···, Na ,其中 N 为建模时域, Na 近似等于系统阶跃响应的稳态值,并认为
( )i Na a i N 。对象阶跃模型描述为: 90
1 2 0( ) ( 1) ( 2) ...... ( 1) ( )Ny k a u k a u k a u k M y k
假设系统在 k 时刻的输出初始值为 0 ( )y k ,而在第 k 时刻控制量 ( )u k 的控制增量为
( )u k 。在 k时刻预测未来 P个时刻的输出初始值为 0 ( | ),1y k i k i P ,其中 P为预测
时 域 。 则 当 在 未 来 M 个 采 样 间 隔 有 控 制 量 增 量 作 用 , 分 别 为
- 4 -
中国科技论文在线
( ), ( 1), , ( 1)u k u k u k M 时,其中 M 为控制时域,且M P N 。系统在未来95
P个时刻的预测模型输出应该为:
0 1
0 2 1
0 1
1
( 1| ) ( 1| ) ( )
( 2 | ) ( 2 | ) ( ) ( 1)
( | ) ( | ) ( ) ( 1)
( 1),1
M
M
M i i
i M
y k k y k k a u k
y k k y k k a u k a u k
y k i k y k i k a u k a u k
a u k M i P
整理后得到预测模型公式(1):
0 1
1
( | ) ( | ) ( 1),1
M
M i j
j
y k i k y k i k a u k j i P
(1)
将式(1)改写成矢量形式得到预测模型为: 100
0( ) ( ) ( )MY k Y k A U k (2)
式中: ( ) [ ( 1| ), ( 2 | ), , ( | )]TM M M MY k y k k y k k y k P k ;
0 0 0 0( ) [ ( 1| ), ( 2 | ), , ( | )]
TY k y k k y k k y k P k ;
( ) [ ( ), ( 1), , ( 1)]TU k u k u k u k M ;
1
2 1
1 1
0
P P P M
a
a a
A
a a a
105
反馈校正与滚动优化
由于实际存在模型失配、环境干扰等未知因素的影响,预测值有可能偏离实际值。系统
的输出预测值需要在预测模型的基础上,用实际输出误差加权的方式进行修正,相当于增加
了闭环的反馈校正环节。在网络控制系统中,偶发的数据包丢失类似于偶尔打开了这个闭环,
但小概率下的非连续丢包不会影响对模型失配的校正作用。 110
具体做法是在 k时刻首先检测对象的实际输出 ( )y k ,且将它与预测值 ( | 1)My k k 相
比较,构成误差 ( )e k 。
( ) ( ) ( | 1)Me k y k y k k (3)
引入校正向量 1 2[ ]
T
PH h h h ,并考虑丢包的影响,对模型加以修正输出预测
值 ( )PY k : 115
0( ) ( ) ( ) ( )P kY k Y k A U k He k (4)
DMC 按一定优化准则来确定控制量增量序列,如果用 ( )U k 表示在 k时刻得到的预测
控制增量,即
( ) [ ( | ), ( 1| ), , ( 1| )]U k u k k u k k u k M k (5)
使被控对象未来 P 个时刻的输出预测值 ( | )Py k i k 尽可能地逼近给定的期望值120
( | )ry k i k 。为此,引入优化目标函数:
- 5 -
中国科技论文在线
2 2
1 1
( ) [ ( | ) ( | )] ( 1| )
P M
r P
i j
J k y k i k y k i k u k j k
(6)
其中是加权系数,函数的前一项是使得预测输出尽可能地逼近期望值,后一项是不希
望控制增量变化过于剧烈。
以目标函数(6)最小为优化目标,结合公式(5)可以得出控制增量的计算公式: 125
1
0( ) ( ) ( ( ) ( ) ( ))
T T
r kU k A A I A Y k Y k He k
(7)
其中 ( ) [ ( 1| ), ( 2 | ), , ( | )]Tr r r rY k y k k y k k y k P k 为期望值向量。
这里需要说明的是预测初值初始值 0 ( )Y k 由预测模型输出迭代得到,即在 k时刻的第 i
步预测值 ( | )My k i k 将作为 1k 时刻的预测初始值 0 ( | 1)y k i k 。
在本系统中,执行器采用时间驱动,正常情况下,从输出采样到施加控制量为一步延迟,130
即执行器端在 k时刻采用的是控制器在 1k 时刻产生的最优控制增量预测控制增量
( | 1)u k k ,得到控制量 ( ) ( 1) ( | 1)u k u k u k k ,实际控制增量序列取为
( ) [ ( | 1),0, ,0]TU k u k k 。因此,预测模型的本次输出序列为 0( ) ( ) ( )MY k Y k A U k ,
再经过一步位移给出下一次的预测初值。
定义位移矩阵 V,初值与预测值的转换可写为 135
0 ( 1) ( )MY k VY k (8)
式中:
0 1 0
0 1
0 1
V
时延和丢包的补偿 140
实际的网络控制系统中,由于时延和丢包的存在不能保证反馈 ( )y k 和控制量 ( )u k 在 k
时刻起作用,由于 DMC 算法可以对未来一段时间内的对象输出进行预测,并利用滚动优化
和反馈校正环节得到未来几步的预测控制量,利用这一性质可以对小概率丢包和时延进行补
偿。基本思想是要求控制器工作在为事件和时间双触发模式下,每次计算得到的未来时域的
控制增量序列都打包发送给执行器,在其接收端设置缓存,严格按时序存储控制增量,执行145
器为时间触发方式,无论丢包或传输延时超限,都将按时输出本周期的预测控制量,系统的
工作时序如图 3 所示。
- 6 -
中国科技论文在线
对
象
输
出
对
象
输
入
(k-1)T kT (k+1)T (k+2)T (k+3)T (k+4)T t
传感器
控制器
执行器
( )u k
( 1)u k
( 2)u k ( 3)u k
( 4)u k
( 5)u k
1 0k
0k
图 3 NCS 工作时序图
这里分别对控制器和执行器端可能发生的几种情况进行分析并给出相应的处理方法。 150
(1) 控制器端
为了尽可能利用最新数据同时补偿丢失的损失,控制器端设置为时间和事件双触发,控
制器在[ , 1]k k 时间段内收到采样数据 ( ) ( )ky k y k ,由 k 取值分为两种状态。
A.网络传输正常情况下,传感器到控制器无丢包时 1k ,时延
sc
k T ,控制器采
用事件驱动,收到 ( )y k 的同时按照式(5)计算控制增量序列 ( )U k ,打包并向执行器发155
送。
B.网络拥塞或信道竞争造成丢包 0k 时,则在[ , 1)k k 内控制器接收端无数据达到,
此时控制器采用时间驱动方式,即在 1k 时刻到来时,直接用不加修正的预测模型
( 1| )My k k 得到 ( 1)PY k ,计算控制序列 ( 1)U k ,打包并向执行器发生。
综上所述,对于控制器来说只有两种情况,本周期内有数据到达则利用最新数据计算160
( )U k ,如果无数据到达则在下个时刻利用预测模型计算 ( 1)U k 。因此在有数据包丢
失的情况下同一个周期内可能产生两个控制序列。这里描述 ( 1, 1]k k 两个周期内的控制
量表达式。
0 1
0 1
( 1) ( ( 1) ( 1) ( 1)), [( 1, ) | 1]
( ) ( ( ) ( )), [ | 0]
r k
r k
U k G Y k Y k He k k k
U k G Y k Y k k
0
0
( ) ( ( ) ( ) ( )), [( , 1) | 1]
( 1) ( ( 1) ( 1)), [ 1| 0]
r k
r k
U k G Y k Y k He k k k
U k G Y k Y k k
165
(2) 执行器端
执行器端为时间触发,设置缓存长度为 M 的寄存器,存放控制增量序列
( ) ( )kU k U k 。如果每个周期有新数据到达则用新的序列刷新缓存窗口中的旧数据,
如果数据包丢失则只按时序向前移动,使寄存器出口在 k时刻总保存当前要施加的控制增量170
( )u k ,工作原理见图 4。
- 7 -
中国科技论文在线
丢弃
...
...
补充数据0
( | )
( 1| )
( )
( 1| )
u k k
u k k
U k
u k M k
( )u k
( 1)u k
( 1)u k M
( 1)u k
( 2)u k
[ , 1)k k 1k
1k Update
图 4 执行器端缓存队列的时序控制
执行器端根据 k 取值分为两种工作状态:
A.控制器到执行器无丢包时 1k ,按照假设
ca
k T ,控制增量数据包 ( )U k 在175
[ , 1)k k 内达到执行器,并按时序刷新缓存。在 1k 时刻,窗口数据自动左移一位,输出
( 1| )u k k ,计算控制量 ( 1) ( ) ( 1| )u k u k u k k ,作用于被控对象。
B.出现数据包丢失 0k ,[ , 1)k k 内无数据达到执行器端,寄存器窗口数据在 1k
时 刻 仍 自 动 前 移 一 位 , 此 时 输 出 的 增 量 为 ( 1 | 1 )u k k , 计 算 控 制 量
( 1) ( ) ( 1| 1)u k u k u k k ,作用于被控对象。 180
由于网络负载波动的不可知性,执行器端的情况较为复杂,施加的控制量可能是控制器
最新的输出也可能由于数据包丢失,从缓存中读取的若干周期前的预测值。这里只描述
[ , 1]k k 内出现的情况。
( ) ( 1| ), 1 and 1
( 1)
( ) ( 1| 1), 0 or 0
k k
k k
u k u k k
u k
u k u k k
其中 185
( 1| ) [0 1 0] ( )
( 1| 1) [0 0 1 0] ( 1)
u k k U k
u k k U k
这里的 ( 1)U k 和 ( )U k 分别是在 ( 1, ]k k 和 ( , 1]k k 内到达的最新控制增量序列数
据。如果执行器端一个周期内有两组数据达到,则新数据覆盖旧数据。
3 仿真实验
为了验证文中提出的 DMC 容错控制算法,以某远程燃油供给控制系统为对象进行仿真190
研究。在 MATLAB 中用 truetime 工具箱搭建网络控制系统模型,如图 5 所示,系统包含传
感器、控制器、执行器、干扰节点,网络协议为 CANbus,带宽 250kb/s。可通过改变干扰
- 8 -
中国科技论文在线
节点产生的网络流量和设置时延、包丢失率产生不同的网络环境,以测试网络服务性能对控
制系统的影响,并检验 DMC 算法的有效性。
195
图 5 网络控制系统 truetime 模型
考虑被控对象模型为
1s
,选取采样周期 T=,模型时域 10N ,模型的阶跃
响应值 1 2 10[ , , , ]a a a =[,,, ,,,,,,
],控制时域 M=2,预测时域 P=6,加权系数 =,校正向量h各元素值为 1。
为了进行对比分析,在控制参数不变的前提下分别对三种情况进行仿真实验。 200
1)理想状态下数采环境,无时延和数据包丢失,设计常规 DMC 控制器。
2)通过网络设置使时延小于一个采样周期,数据包丢失率 和 ,仍采用
常规 DMC 算法,不对时延和丢包做补偿。
3)网络环境同 2),采用本文提出的带有丢包和时延补偿的 DMC 容错算法。
比较三种情况下的系统响应和控制量曲线,如图 6-9 所示。 205
0 5 10 15 20 25 30
0
1
t /s
y
ideal condition without delay and data dropout
DMC without compensation on delay and data dropout
DMC with compensation on delay and data dropout
0 5 10 15 20 25 30
0
2
4
6
8
10
12
14
16
18
t /s
u
ideal condition without delay and data dropout
DMC without compensation on delay and data dropout
DMC with compensation on delay and data dropout
图 6 系统输出 y的响应曲线(有网络时 ) 图 7 控制量 u(有网络时 )
- 9 -
中国科技论文在线
0 5 10 15 20 25 30
0
1
t /s
y
ideal condition without delay and data dropout
DMC without compensation on delay and data dropout
DMC with compensation on delay and data dropout
0 5 10 15 20 25 30
0
2
4
6
8
10
12
14
16
18
t /s
u
ideal condition without delay and data dropout
DMC without compensation on delay and data dropout
DMC with compensation on delay and data dropout
图 8 系统输出 y的响应曲线(有网络时 ) 图 9 控制量 u(有网络时 )
由仿真结果可以看出,当数据包丢失率为 时,常规 DMC 算法的控制效果较差,而210
运用本文提出的容错 DMC 算法可有效的对时延和丢包加以补偿,控制效果接近于无时延和
数据包丢失的情况。当数据包丢失率为 时,系统处于半开环状态,常规 DMC 算法无法
保证系统的稳定性,但运用容错 DMC 算法,也能取得较好的控制效果(略有滞后)。因此,
对于一定范围内的时延和数据包丢失率造成的暂态故障,上述算法能得到较好的容错。
4 结论 215
针对一类小时延和数据包丢失并存的全分布式网络控制系统,设计了具有时延和丢包补
偿的容错 DMC 算法。系统中控制器采用时间事件双驱动,既可以有效的利用最新数据,又
能对传感数据丢包进行判断并补偿,执行器端采用带有缓存队列时序控制的时间驱动方式,
将时变时延转换为采样周期整数倍的同时,可根据时序采用预测控制量,从而对时延和数据
包的丢失进行补偿。最后,对理想数采和不同网络环境下的常规 DMC 和容错 DMC 算法进220
行对比仿真实验,发现本文所提出的容错 DMC 控制器可有效降低网络负载变化造成的时延
和丢包的不利影响,从而提升系统的鲁棒性。
[参考文献] (References)
[1] J. P. Hespanha, P. Naghshtabrizi, and Y. G. of Recent Results in Networked Control Systems,in 225
Proceedings of the IEEE, 2007,vol. 1, -162.
[2] A. Rabello and A. of asynchronous dynamical systems with rate constraints and applications,in
Proceeding of Control Theory and Application,2003,,-550.
[3] J. L. Xiong and J. Lam. Stabilization of linear systems over networks with bounded packet loss,
Automatica,2007,vol. 1, pp. 80-87. 230
[4] H. Huang, X. D. Han, D. X. Xie, and Z. Q. Wang. Positive Fault-tolerance Control with Data Packet Dropout
in Networked Control System, Control and Decision,2009,,pp1126-1130.
[5] Y. Wang, Q. W. Chen,W. H. Fan, and W. L. Hu. Cost-guaranteed Control with Data Packet Dropout in
Networked Control System, Control theory and application,2007, ,-254.
[6] Z. J. Li, L. F. Wang, X. H. Lai, and S. H. Xu, Stability of Constrained Model Predictive Control for Networked 235
Control Systems with Data Packet Dropout, in Proceeding of the IEEE International Conference on Automation
and Logistics, 2007, pp. 3018-3023.
[7] Shi-Lu Dai, Hai Lin and Shuzhi Sam Ge. Scheduling-and-Control Codesign for a Collection of Networked
Control Systems With Uncertain Delays, IEEE TRANSACTIONS ON CONTROL SYSTEMS
TECHNOLOGY,2010,18(1) 240
[8] D. Chen and B. Wang. Dynamic Control Algorithm with Data Packet Disordering in Networked Control
Systems, International Workshop on Intelligent Systems and Applications, 2009, pp. 1-4.
[9] Z. P. Chen, E. Z. Dong, , Networked Control Systems Based on Dynamic Matrix Control, 2nd Conference
on Human System Interactions,2009, pp. 87-91.
[10] LI Rong, SUN Hai rong, WANG Dong-feng,Networked Control System of Water Turbine Governor Based on 245
- 10 -
中国科技论文在线
Dynamic Matrix Algorithm,Journal of North China Electric Power University, 2011,,.