时间:2024-07-28
李翼飞,吴春平,涂 煊
(1.上海理工大学光电信息与计算机工程学院,上海 200093;2.上海工业自动化仪表研究院有限公司,200233)
在工业自动化生产中,随着现代技术的发展,对安全生产的要求越来越高。因此,传感器起着越来越重要的作用。传感器是把被测的物理信号转化成电信号的装置,其优劣对监控系统的功能至关重要。传感器可能存在各种故障,因此需要进行传感器故障排查的研究。对于振动传感器,故障诊断可应用主元分析法(principal component analysis,PCA)进行特征的提取。整个系统的数学模型不仅仅是传感器的测量数据。 然而,传统的PCA主要针对稳态过程。振动传感器工作状态不仅具有稳态,而且具有瞬态过程。诊断难以及时确定故障[1]。结合最小二乘支持向量机(least squares support vector machine,LS_SVM),可以弥补两种方法的不足,提高诊断的效率和准确率。
PCA是多元分析(multivariate analysis, MVA)的一种常用的数据分析法。PCA通过线性变换,将原始矩阵数据变换成一组线性无关的特征向量。该方法尽可能多地保留数据集中出现的特征提取,通过少量关键指标对系统运行状态进行描述。主成分分析的统计概念构造了一组新的变量,以基于原始数据空间表示原始数据空间。主要信息特征是从新的映射空间获得的,以形成对原始数据空间特征的解释。此外,新变量是原始变量的线性组合,新变量构成的空间维数远小于原始空间维数[2]。
假设一个m维的测量向量,已经收集和记录了N个测量数据:
对样本数据进行数据归一化,并构造变型矩阵:
(1)
(2)
在主元分析中进行阈值的设置,对式(2)进行奇异值分解(singular value decomposition,SVD):
(3)
确定主元的数目1,分解p、Λ,得式(4),并保存ppc、Λpc:
(4)
设置两个阈值:
(5)
(6)
(7)
式中:Cα为一个高斯分布的(1-α)%的置信极限。
(8)
zres子空间的值较小,因此可以忽略。
根据式(1)归一化测量:
(9)
计算均方预测误差(squared prediction error, SPE):
(10)
LS_SVM是基于SVM的一种改进算法[3]。将传统SVM中的不等式约束改为等式约束,采用最小二乘线性系统作为损失函数[4]。它取代了传统SVM中采用的二次规划方法,并使用误差平方和损失函数作为训练集的经验损失。这样就把解二次规划问题转换为求解线性方程组问题,简化了计算的复杂度,提高了求解问题的速度和收敛精度[5]。
假设样本是n维度向量,区域样本及其值表示为(x1,y1)。首先,使用非线性映射φ(x)把样本从原空间Rn映射至要素空间:
φ(x)={[φ(x1),φ(x2),…,φ(x1)]}l=1,2,…,n
(11)
在这个高维特征空间中构造最优决策函数:
y(x)=ω×φ(x1)+b
(12)
由此可得高维特征空间中的线性估计函数。然后,根据结构风险最小原则,寻找ω、b最小值。
(13)
式中:‖ω‖2为控制模型的复杂度。
当Remp不同时,支持向量机的形式也不同。如果将函数Remp设置为误差的二范数,则该优化目标函数变为式(6)。此时的SVM称为最小二乘支持向量机[6]。
(14)
式中:ξi为松弛变量;c为惩罚因子。
根据标准支持向量机最优分类面的求解方法,采用Lagrange系数法对式(14)进行计算。引入Lagrange系数ai(i=1,2,…,l),得如下定义的Lagrange函数:
(15)
定义核函数K(xi,yj)=φ(xi)×φ(xj)。K(xi,yi)是满足Mercer条件的对称函数。将优化问题转化为线性方程的求解:
(16)
最后,得到该最小二乘支持向量机的分类面非线性方程:
(17)
振动传感器的运行状态故障包括冲击故障、漂移故障、偏差故障等。进行二值分类是SVM算法设计时的目标。它是将标准的SVM算法进行适当的改进构造成多类分类器,以应对传感器运行故障这类多分类问题。因此,针对振动传感器,对SVM算法进行了变形。将多分类的SVM大致分为两类。第一类为直接法,是直接对目标函数进行修改,将要求解的多个分类问题组合在一起,一次性解决问题。一次性解决最优问题来实现多分类,计算的复杂度比较高。 第二类为间接法,是将多个二值分类器连接起来构造一个总的分类器组合。常用方式有一对多、一对一、有向无环图多分类和二叉树多分类等。此次振动传感器的故障诊断方法主要采用间接方法进行故障分类。
由N(N≥0)个节点组合成一个有序的集合即为二叉树。根节点加上互不相交的左右子树组成抑或为空集。二叉树算法将振动传感器诊断出的故障逐次进行二分类,直至所有故障都被分离出来。基于二叉树的多分类算法原理如图1所示。其中,A、B、C、D、E为5种类型的待分类状态。
图1 基于二叉树的多分类算法原理图
图1中,支持向量机分类器确定位于每一个节点上。每通过一个节点,便可确定传感器运行状态及其故障类型。在分类过程中,二叉树算法不需要对所有的支持向量机分器进行训练,这必然会提高故障诊断的速度[7]。在进行二叉树算法训练中,每完成一次训练,样本数均会有所减少。全部检测数据,通过第一个支持向量机分离出一种故障,以此类推,直到所有的故障被诊断分离出为止。随着故障分离出的个数增多,支持向量机的训练速度越来越快,多分类模型的构造也更加容易。
振动传感器的运行状态主要包括偏值运行、冲击运行、漂移运行、周期运行和正常运行这5种。通过数据比例得模式发生概率大小进行排序,分别为正常运行、漂移故障、偏置故障、冲击故障、周期故障。因此,测量得到振动传感器在不同时刻、不同状态的各类故障信号,并根据研究的方法进行特征的产生和提取,构建二维样本[8]。PCA与LS_SVM智能诊断流程如图2所示。
图2 PCA与LS_SVM智能诊断流程图
漂移故障信号的小波包5层分解图如图3所示。
图3 漂移故障信号的小波包5层分解图
由于振动传感器运行状态的特征生成需要尽可能精细的信号频率成分,因此采用小波分析。一簇基函数构成了小波,对信号的时间和频率域的局部特征进行描述[9]。小波分析信号的优点体现在实施局部分析、随机时间或空间域中分析上。尽管短时傅里叶变换也可对输出信号频带划分,但其方式为等间隔线性划分,而且是二进制变化。因此,高频带中的频率分辨率和低频段的时间分辨率相对较差。
根据前文所述算法,对小波分析完的原始数据进行PCA特征提取,得到对应的特征向量。根据提取得到的样本数据,绘制二次特征模式分布图,如图4所示。
图4 二次特征模式分布图
正常运行状态与各类故障运行状态下的特征数据,共计24组。此数据集有4组为测试组,故障数目分配如表1所示。
表1 故障数目分配表
将数据构建成一个矩阵,每个数据点占据其中一行。为建立LS_SVM需要两个额外的参数,即正则化参数(gam)和平方带宽(sig2)。gam决定了拟合误差最小化和平滑度之间的权衡[10];sig2为带宽。
根据图4反映的运行状态特征,设计如图5所示的分类流程。
图5 分类流程图
第一级分类器:以漂移故障作为被分离故障与各类运行状态进行分类,共100组。
第二级分类器:以偏差故障作为被分离对象与剩余运行状态进行分类,共80组。
第三级分类器:以突变故障作为被分离故障与周期故障和正常运行状态进行分类,共60组。
第四级分类器:以周期故障与正常运行状态进行分类,共40组。
通过四级LS_SVM分类器后,获得传感器信号经过小波包分解,PCA特征提取的数据中所隐含的特殊分类标准。
对传感器的其他运行状态,共选取了4×5组测试样本,进行分类器的推广能力测试。首先进行学习过的样本测试,观察分类器的测试准确率,并对选取的测试样本集测试。振动传感器故障诊断分类器的测试步骤如下:①归一化处理传感器信号;②小波包分解为5×1 000的原始特征数据矩阵;③经过PCA算法后,得到2维特征向量;④对该2维特征向量进行LS_SVM多分类,并得到诊断结果[11]。
原始数据加仿真数据共24组。对其进行结果诊断,诊断结果如表2所示。
表2 诊断结果
LS_SVM是适宜智能故障诊断的分类方法之一。应用LS_SVM的原理对振动传感器的运行状态进行诊断,较好地解决了小样本、非线性和高维数据识别的实际问题。本文在采用小波包分解提取信号的特征基础上,结合了PCA进行主特征二次提取,增强了振动传感器各工作状态的可分性,使得LS_SVM分类器能更加快速、简便地分类。振动传感器在直接原始特征上的分类,经过PCA二次提取特征后的准确率得到提高,具有良好的泛化性能。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!