
2.2 单变量报警状态分析
单变量报警器的状态分析是分析单个报警变量是处于报警状态还是非报警状态,以及报警变量在报警状态和非报警状态之间的变化情况。
考虑一个过程变量x(t),其中t为时间,t=1,2,3,…,T。令xa(t)为x(t)对应的报警变量,当x(t)处于正常工况时,xa(t)处于非报警状态,其值为0;当x(t)处于异常工况时,xa(t)处于报警状态,其值为1。在实际工业中,最常用的是将报警变量x(t)与一个固定的高(低)报警阈值xtp比较的方法产生报警变量xa(t):

如图2.1所示,通常报警系统可能会配置有四个报警阈值:高高报警阈值xtp,hh,高报警阈值xtp,h,低报警阈值xtp,l和低低报警阈值xtp,ll。定义一个包含四个元素的向量Xtp来表示这些报警阈值,Xtp=[xtp,ll,xtp,l,xtp,h,xtp,hh],如果Xtp中某个元素不存在则用“NaN”代替。
除了报警阈值外,xa还有一些其他的属性xtag,xdesp,xtype:
● xtag代表了一个过程变量的标记名,这个标记名是工业分散控制系统(DCS)中此过程变量的唯一标识符。工业中xtag通常由数字、字母和符号组成,如xtag=X71NAO067。

图2.1 过程变量x(t)及其对应的报警阈值
● xdesp描述了一个过程变量的物理意义。例如,变量X71NAO067的描述为“催化剂上层和中层之间的压力差”。
● xtype标记了一个变量是数字量还是模拟量,当一个变量是模拟量时,xtype为1;当这个变量是数字量时,xtype为0。例如,xtag=X71NAO067是一个测量压力差的模拟量,因此xtype=1。
为了更好地描述时间序列{xa(t), x(t)}的主要特征,下面定义了一些基础状态指标:
● 报警触发(清除)分别定义为xa从0变到1(1变到0)。第n个报警触发和报警清除分别定义为

式中,to(n)和tc(n)为报警触发时刻和报警清除时刻。
● 报警持续时间为一个报警从报警触发时刻到报警清除时刻的持续时间,第n个报警持续时间的定义为

式中,h为采样周期。
● 报警间隔时间为从一个报警清除时刻到下一个报警触发时刻间的时间间隔,第n个报警间隔时间的定义为

式中,to(n+1)为第(n+1)个报警触发时刻。
● 游程长度是从一次报警触发时刻到下一次报警触发时刻之间的时间长度,第n个游程长度定义为

显然,报警持续时间、报警时间间隔和游程长度之间有关系R(n)=D(n)+I(n)。
图2.2给出了报警触发时刻、报警清除时刻、报警持续时间和报警间隔时间的详细说明。

图2.2 单变量报警状态指标说明示例
对于某一时间段[tj,tj+Δt]的数据(j∈[1,J],Δt为时间段长度),xa的报警触发数量为

式中,xa,o(t)和xa(t)相关,当且仅当xa(t)的值从0变到1时,xa,o(t)的取值为1,其余时刻xa,o(t)的值均为0,即

x a(t)从0变到1的时刻称为报警发生时刻{to(n)},即

相应的,时间段[tj,tj+Δt]内的报警清除次数为

当且仅当xa(t)的值从1变到0时,xa,c(t)的取值为1,其余时刻xa,c(t)的值均为0,即

x a(t)从1变到0的时刻称为报警清除时刻{tc(n)},即

第j个时间段内的报警持续时间、报警间隔时间和报警偏差为三个实数集合。但是由于报警触发次数和报警清除次数的不同,其计算比式(2.3)和式(2.4)要更加复杂。
如果Nocc(j)+Ncle(j)≤1,则xa有四种情况,如图2.3a、b、c和d所示,有
● xa(t)=0,t∈[tj,tj+Δt], Nocc(j)=Ncle(j)=0
● xa(t)=1,t∈[tj,tj+Δt], Nocc(j)=Ncle(j)=0
● xa(tj)=1,xa(tj+Δt)=0,Nocc(j)=0,Ncle(j)=1
● xa(tj)=0, xa(tj+Δt)=1, Nocc(j)=1,Ncle(j)=0
此时,报警持续时间、报警间隔时间为


如果Nocc(j)+Ncle(j)>1,则对应其他四种情况:
● xa(tj)=0, xa(tj+Δt)=0(见图2.3e)。这种情况下,报警触发次数和报警清除次数相同Nocc(j)=Ncle(j)。报警持续时间的集合(定义为SD(j),包含Nocc(j)个元素)为

图2.3 报警触发和报警清除的不同情况

报警间隔时间的集合(定义为SI(j),包含Ncle(j)+1个元素)为

● xa(tj)=1, xa(tj+Δt)=1(见图2.3f)。在这种情况下,报警触发次数和报警清除次数相同,即Nocc(j)=Ncle(j)。报警持续时间的集合[包含Nocc(j)+1个元素]为

报警间隔时间的集合包含Ncle(j)个从报警清除时刻到下一次报警触发时刻的时间间隔:

● xa(tj)=0,xa(tj+Δt)=1(见图2.3g)。在这种情况下,由于本段结尾的报警信号等于1,所以报警触发次数比报警清除次数多1[Nocc(j)=Ncle(j)+1]。报警持续时间的集合包含Ncle(j)个成对的报警触发时刻和报警清除时刻之间的持续时间及末尾xa等于1的部分,即

报警间隔时间的集合包括Ncle(j)个成对的报警触发时刻和报警清除时刻之间的间隔时间及初始xa等于0的部分,即

● xa(tj)=1, xa(tj+Δt)=0(见图2.3h)。在这种情况下,由于本段初始部分xa等于1,所以本段报警触发次数比报警清除次数少1,报警持续时间的集合为

报警间隔时间的集合为

基于上述单变量报警状态指标,表2.1给出了单变量报警典型工作状态及对应的状态指标。
表2.1 单变量报警典型工作状态及对应的状态指标

● 状态#1:处于非报警状态。如果报警变量处于非报警状态(见图2.3a),则xa(t)一直为0且没有触发报警,因此Nocc=Da=0而Ia为较大值。
● 状态#2:处于报警状态。如果报警变量处于报警状态(见图2.3b),则xa(t)一直为1且没有报警被触发,因此Nocc=Ia=0而Da为较大值。
● 状态#3:进入报警状态。如果报警变量正在进入报警状态(见图2.3c),这就意味着变量正在从状态#1向#2变化,因此Nocc和Da会增加而Ia会减少。
● 状态#4:离开报警状态。如果报警变量正在离开报警状态(见图2.3d),意味着变量正在从状态#2向#1变化,因此Nocc和Da会减少而Ia会增加。
● 状态#5:受干扰报警影响。干扰报警是由于随机噪声或干扰而产生的,干扰报警的特点是报警持续时间短和报警间隔时间短。如果报警变量受干扰报警影响,则Nocc为较大值而Da和Ia则为较小值。