APP下载

数据驱动的闭环系统传感器故障诊断方法

2020-04-26那文波刘甜甜

仪表技术与传感器 2020年3期
关键词:加性增益偏差

李 明,那文波,刘甜甜,高 宇

(中国计量大学机电工程学院,浙江杭州 310018)

0 引言

在工程生产实际中,传感器容易受到其工作环境的影响发生故障,不能正确反映被控对象的信息,造成控制失效,基于数据驱动的传感器故障诊断方法的研究越来越受到相关领域科研人员的重视。传统故障诊断方法[1-2]多是基于研究对象模型完成故障诊断,这一方法需要了解研究对象的机理并建立数学模型。针对复杂特殊的对象,有时很难建立准确的数学模型,难以保证故障诊断精度,且模型不具有普适性。基于数据驱动的故障诊断是把系统作为一个黑箱处理,不再需要知道系统以及对象的精确的数学模型,通过系统过程运行数据分析与挖掘完成故障诊断。对于复杂且对象特性不便于掌握的被控对象,基于数据驱动的故障诊断方法有着较为明显的优势。对于动态系统,文献[3-4]利用统计分析方法,不需要深入了解系统的结构和原理,基于测量数据完成故障诊断,但是较难解释所诊断出的故障的物理意义。文献[5-6]利用信号处理方法故障诊断,不同故障存在不同的信号特征,利用不同的信号特征可以进行故障诊断,但对于抑制信号噪声,诊断微弱故障方面,仍需进一步研究。对于系统传感器,除了上述文献所用方法外,文献[7-9]通过训练神经网络、极限学习机等机器学习方法实现传感器故障诊断,此类方法需要较大的故障样本数据,且样本数据的完整性、可靠性都会对故障诊断精度产生很大影响。文献[10-11]利用多个传感器的互补和冗余信息,进行信息融合,实现传感器故障诊断。目前各种方法呈现出了相互交叉,相互融合的趋势。

研究课题总体从工程应用组态实现出发,将系统按结构类型分类,处理其故障诊断问题,分别解决不同结构中的传感器、执行器、控制器的故障诊断问题。本文先研究一阶定值系统的传感器故障诊断问题,分析与挖掘正常系统和故障系统的动态数据特征,适应传感器故障检测、故障估计和故障分离的普适模型,实现对一阶定值系统传感器故障诊断。

1 系统故障定义

根据故障发生的外部特征,可以将内部发生的故障概括为2类:加性故障和乘性故障。

设传感器的测量输出值为ym,被控对象的实际值为yr,则传感器正常工作时,传感器的测量输出值为ym=yr;当传感器发生故障时,若故障为加性故障,则传感器的测量输出值为ym=yr+A,式中A是不为0的常数,表示由传感器故障引入的传感器输出的偏差。若故障为乘性故障,则传感器的测量输出值为ym=Byr,式中的B是不为1的增益,表示由传感器故障引入的输出信号的增益。

2 故障诊断方法研究

2.1 故障检测方法

故障检测的目的是检测系统所使用的传感器是否发生故障。当传感器发生故障时,会导致传感器输出值与实际值不符,被控变量的实际值也会因为控制器的调节作用而偏离给定值。在传感器发生故障后,可以利用系统动态过程数据的统计特征实现故障检测,基于此提出故障检测方法。

假设一阶定值控制系统的响应从初始状态到稳定状态时间是ts。进行故障检测所需要的数据采用系统稳定后的时刻及其传感器输出值所构成的数据组,从第ts时刻开始的数据组为第一个数据组,数据总组数为

式中:Ts为采样周期;tc为整个系统的运行总时长。每个采样点的残差取绝对值表示为

式中:ym(k)为传感器输出值;ysp为系统给定值。

设系统发生故障后动态调节时间为ta,则每ta时间长度设置一个数据窗口,且每个数据窗口所包含的数据组数为

从第一组样本数据开始,每过一个采样周期向时间增长方向顺序移动一组,即数据窗顺移。一共可以顺移设置(n-Ns)个数据窗口。将每个数据窗口所包含的传感器输出值与给定值残差的绝对值求和,有

理想状态下,控制系统正常运行时达到期望值稳定运行后,残差为0,所以有E(k)=0。但是在实际工作环境中,系统并不在理想状态下运行,在运行过程中会有自身和环境的干扰存在,所以实际上E(k)≠0。

在传感器正常工作的 mnor[mnor≤(n-Ns)]个数据窗中,计算这些数据窗的E(k)值形成新的数据集SAE,计算 SAE 中 E(i),(i=1,2,…,mnor)的平均值sae及标准差σ。其中,

然后,令

式中Vthres为检测阈值。

式(7)即为故障检测模型。

故障检测方法如果对于某系统的传感器输出数据,经过数据窗顺移逐个计算数据窗口对应时间段的残差绝对值和E(k)。当残差绝对值和E(k)>Vthres,并且持续一段时间,则可以判断该系统传感器有故障发生。

标准差的引入,一定程度上避免了故障误检测;持续的这段时间也可以避免由于短时偶然干扰引起的故障误检测,这段时间可以基于工程环境的偶然干扰状况取小于ta的经验值。这里我们将检测到故障的数据窗口称为故障数据窗口。

对于渐变故障同样可以使用前述故障检测方法进行检测。当系统完成每次故障诊断且做容错处理后,若系统再多次检测出故障,且每次故障属于同一类型且强度呈现出线性或者非线性关系,则可以认为系统传感器出现了渐变性故障。假设每次故障强度为 fau(j)(j=1,2,…,n),线性渐变故障关系为

式中

表示渐变故障强度的变化速度,在几何上为该直线的斜率,fau(j)与fau(l)是系统检测出的同一类型任意2次故障强度。非线性故障关系为

式中:j为采样时刻;F(j)非线性关系可以用j时刻之前的故障强度值曲线拟合得到。

2.2 故障估计方法

故障估计的目的是确定传感器发生的故障强度。通过对故障数据窗口数据分析发现传感器输出值的变化率与其故障强度有对应关系,提出故障估计方法。

首先,从故障数据窗口数据中按时间序列逐个计算相邻采样周期传感器测量输出的变化率

假设从第i个数据开始有故障发生,若是加性故障,则传感器测量值为ym(i)=yr(i)+A;若是乘性故障,则传感器测量值为ym(i)=Byr(i)。且故障时刻的测量输出的变化率为

在忽略系统误差的情况下,测量输出数据ym(i-1)近似于真实数据yr(i),理想状态下yr(i)=ysp。由于发生故障时,传感器测量值的变化率瞬间达到极值y'p,所以y'(i)=y'p。由此得出故障估计公式,加性故障的偏差为

同理,若假设发生的是与加性故障相同强度的乘性故障,则乘性故障的增益为

故障估计方法中加性故障的偏差为

乘性故障增益为

式(10)和式(11)即为故障估计模型。利用故障估计方法可以确定故障强度,实现故障估计。

2.3 故障分离方法

故障分离的目的是识别传感器故障的种类。传感器发生故障时,其响应曲线的动态变化在开始时最为强烈,相同类型不同强度的故障响应曲线的动态变化不同,不同类型相同强度的故障响应曲线的动态变化也不同,基于此来提出故障分离方法。

基于故障数据窗口数据,以故障发生后的时间作为自变量,相应的传感器输出值作为因变量。拟合因变量输出值与自变量时间之间的变化趋势曲线,建立时间序列一元线性回归模型,再提取该模型参数作为故障特征,利用一元二次回归模型确定故障分离模型。

一元线性回归模型为

式中ε为回归模型的误差。

用最小二乘法求解模型参数,得到拟合方程为

取发生故障后调节时间ta内的一段数据组,截取的时间变量为 X=[x1,x2,x3,…,xn],测量值为 Y=[y1,y2,y3,…,yn],进行最小二乘法拟合得到第一次故障分离模型,选取第一次模型最高次项的回归系数^β1作为特征值。将不同故障强度实验数据中提取到的所有加性故障特征值p=^β1形成特征集P=(p1,p2,…,pn),所有乘性故障的特征值q=^β1,形成特征集Q=(q1,q2,…,qn)。由于传感器在发生加性故障和乘性故障时候的输出动态特性不同,所以即使在故障幅值相同的情况下,传感器测量值在故障调节过程中的运动趋势也是不同的,所以P≠Q。

为提高故障分离准确度,再次建立二项式故障分离模型。一元二项式模型为

用最小二乘法求模型参数,得到拟合方程为

加性故障和乘性故障幅值相同的情况下,各个加性故障偏差对应回归系数为(Ai,pi),(i=1,2,3,…,n),各个乘性故障增益对应回归系数为(Bi,qi),(i=1,2,3,…,n)。现在以加性故障的偏差 Ai为自变量,对应的回归系数pi作为因变量,以及以乘性故障的增益Bi为自变量,对应的回归系数qi为因变量,再次进行相同的二次拟合得到最终故障分离模型。

加性故障为

乘性故障为

式(15)、式(18)和式(19)即为故障分离模型。

如果有一组样本数据,样本数据自身拟合一次得到^βm,将Am代入p=f1(A)得pm,将Bm代入q=f2(B)得到qm,则可以基于如下方法实现故障分离。

故障分离方法,令e1=|pm-^βm|,e2=|qm-^βm|,比较e1和e2的大小,如果e1<e2,则可判断该故障为偏差为Am的加性故障。如果e1>e2,则可判断该故障为增益为Bm的乘性故障。

2.4 在线标定及故障诊断流程

工程实施中整个传感器在线标定及故障诊断的流程图如图1所示。

图1 故障诊断流程图

在线采集传感器测量值,待被控量稳定于设定值之后实时在线标定及故障诊断。在线标定是确定Vthres、p=f1(A)和q=f2(B),在系统投运和每次故障维护后进行重新标定,以适应系统特性。故障诊断首先应用故障检测方法检测数据窗的残差绝对值和E(k)是否超出阈值Vthres来判断传感器是否发生故障;如果有故障发生,则进入故障估计阶段进一步处理故障数据窗口数据得到加性故障偏差Am和乘性故障增益Bm。然后进入故障分离阶段,利用最小二乘法拟合故障发生后的调节时间内的数据得到模型参数^βm,将故障估计阶段的Am代入p=f1(A)得pm,将Bm代入q=f2(B)得到qm,令e1=|pm-^βm|,e2=|qm-^βm|,比较e1和e2的大小来确定故障类型,以及渐变故障的进一步诊断。

3 实例验证

利用复杂故障诊断与容错控制创新实验平台进行实验数据的采集以及所提故障检测方法的验证。该平台是一个简单分布式控制系统平台。上位机为装有 WINCC、MATLAB软件的 PC机,下位机为 S7-300型 PLC,CPU 为 315-2-PN/DP,输入输出为 2个分辨率为12位的8路模拟量输入输出模块,被控对象为单容水箱的液位。上位机与下位机之间通过工业以太网协议通讯,WINCC与MATLAB之间通过OPC规范通讯。整个系统平台图2所示。

图2 液位控制系统实验平台结构示意图

3.1 采集数据

设定液位给定值为10 cm,采样周期Ts=0.5 s,采集随时间变量同步的液位传感器测量输出数据。传感器的工作状态分为正常和故障两种状态,进行的实验分为正常状态实验、加性故障实验和乘性故障实验。

3.1.1 正常状态数据采集

传感器正常无故障实验时,加性故障模型中的偏差A=0,乘性故障模型中的增益B=1。实验设备运行时间设定为500 s,时间变量为Tx,传感器测量的输出值为Y0,可有1 000个样本数据(Tx,Y0)。图3为传感器在无故障状态下实验时的输出曲线。

图3 传感器无故障情况下液位曲线

3.1.2 加性故障数据采集

加性故障实验是在仿真模型中接入了阶跃信号来模拟加性故障,故障强度以阶跃信号大小而定。故障加入时刻设定为350 s,以模拟系统稳定运行到350 s时传感器发生加性故障。图4为传感器在第350 s时发生偏差为1.0 cm加性故障的液位响应曲线,从图4中可以看出本来稳定在给定值的液位在加入故障时刻突然变化,再经过近20 s的调节再次回到给定值,但此时实际液位值已经偏离给定值。同样采集0~500 s内的1 000个加性故障样本数据(Tx,YA)。

图4 加性故障,偏差为1.0 cm的液位曲线

3.1.3 乘性故障数据采集

乘性故障实验是在系统仿真模型中切换反馈通道中的增益模块来模拟乘性故障,在系统稳定运行到350 s时加入故障,图5分别为系统稳定运行到350 s时传感器发生增益为0.90的乘性故障的液位响应曲线。同样采集0~500 s内的1 000个乘性故障样本数据(Tx,YB)。

图5 乘性故障,增益为0.90的液位曲线

3.2 故障分离模型p=f1(A),q=f2(B)的确定

将不同故障强度的实验阶段采集的加性故障和乘性故障传感器测量数据都截取故障发生后的调节时间ta=20 s数据进行最小二乘法拟合得到一次拟合系数,拟合结果如表1、表2、表3和表4所示。从表格中的均方根误差RSME数值可以看出曲线拟合的效果较好。

表1 加性故障偏差小于0的一次项拟合系数

表2 加性故障偏差大于0的一次项拟合系数

表3 乘性故障增益小于1的一次项拟合系数

表4 乘性故障增益大于1的一次项拟合系数

进而以表格中加性故障的偏差A为自变量,一次项系数p为因变量做二次曲线拟合。

当加性故障偏差A<0时,拟合结果:

当加性故障偏差A>0时,拟合结果:

同理,以乘性故障的增益B为自变量,对应的特征q为因变量进行一元二次回归拟合。

当乘性故障增益B<1时,拟合结果:

当乘性故障增益B>1时,拟合结果:

从以上拟合结果来看,r2接近于1,RMSE接近于0,说明数据对模型的拟合程度很好。

3.3 传感器的故障诊断

以系统传感器存在15%加性故障时所采集的数据为基础,验证传感器整个故障诊断算法。

3.3.1 传感器的故障检测

加入故障后动态调节的时间为ta=20 s,采样周期为Ts=0.5 s,则每个数据窗口所包含的数据组数为

在模拟系统传感器故障工作时的实验中,以偏差为1.5 cm的加性故障实验为例,对本次试验中传感器正常工作的250~320 s内所有数据窗口按照本文所提出的传感器故障检测方法方式计算阈值Vthres。有

故障检测的结果如图6所示,残差和明显地超出了检测阈值,说明此实验中传感器发生了故障。

图6 传感器故障检测结果

3.3.2 传感器的故障估计

计算出液位变化率极值y'p=y'm=3 cm/s,通过故障估计方法计算出故障的偏差值和系数增益。

当有

说明传感器发生了偏差Am=1.50 cm或增益Bm=1.15的故障。即传感器发生了相对于设定值偏差为15%的加性故障或增益为1.15的乘性故障。

3.3.3 传感器的故障分离

利用故障估计方法估计出传感器发生了相对于设定值偏差为15%的加性故障或增益为1.15的乘性故障,即有Am=1.50 cm,Bm=1.15。后将样本数据自身拟合以此得到^βm=-0.278 1,带入式(21)计算出

带入式(23)计算出

由此可以计算e1=|β^m-pm|=0.011 9和e2=|β^mqm|=0.038。因为e1<e2,根据故障分离方法,可以分离出传感器故障类型为加性故障。于是,我们可以得到传感器发生了相当于设定值偏差为15%的加性故障。

3.4 方法性能分析

利用实验平台,对一阶液位控制系统分别设置了相对给定值偏差-20%~20%的加性故障与反馈增益范围为0.80~1.20的乘性故障。每种加性故障实验强度间隔为相对于给定值1%的偏差;每种乘性故障实验强度间隔为0.01,其中液位给定值为10 cm。对本文所提出的故障检测、故障估计、故障分离方法做了性能测试。

在故障检测中,对于加性故障,可以检测范围为A=[-2.00,-0.01]∪[0.01,2.00](单位:cm);对于乘性故障,可检测范围为 B=[0.80,0.98]∪[1.02,1.20]。故障检测准确度明显高于其他方法。在故障估计中,去除液面波动以及其他未知干扰因素所带来的干扰,可以准确估计出故障强度,且故障强度越强,故障估计越准确。可以准确实现故障分离,分辨故障类型。

4 结束语

本文提出了一种基于实时数据驱动的一阶定值闭环系统传感器故障诊断的新方法。利用系统实时工作数据,基于数据驱动思想,提出了传感器在线故障检测、故障估计和故障分离方法,以及工程应用中的在线标定方法,克服了工程环境的干扰因素和系统自身的性能对方法应用准确度的影响。在单容液位控制系统上验证了所提方法的有效性和先进性。

猜你喜欢

加性增益偏差
基于增益调度与光滑切换的倾转旋翼机最优控制
模糊判断矩阵加性一致性局部修正算法
量子信道容量的不可加性首获实验验证
如何走出文章立意偏差的误区
两矩形上的全偏差
量子信道容量的不可加性首获实验验证
基于单片机的程控增益放大器设计
基于Multisim10和AD603的程控增益放大器仿真研究
企业家多重政治联系与企业绩效关系:超可加性、次可加性或不可加性
程控增益射频宽带放大器