基于自编码器和支持向量机的气压传动系统气缸泄漏故障诊断

2023-02-24 07:14王志文
液压与气动 2023年2期
关键词:编码器气缸气动

杨 波, 王志文, 马 茜, 王 虎, 熊 伟

(1.大连海事大学 船舶与海洋工程学院, 辽宁 大连 116026;2.大连海事大学 信息科学技术学院, 辽宁 大连 116026)

引言

随着制造业的数字化、网络化和智能化升级,提出了对系统及关键设备进行智能故障诊断与预测的更高需求,减少故障停工,在提高生产效率的同时保证产品高质量和低成本。同时,由于绿色制造对制造过程中资源、能源与环境等越来越严格的约束,也提出了节能减排的更高要求。

气压传动系统由于其简单易维护、设备元件购置成本低、污染小、环境适应性强等诸多优点,在制造领域应用极为广泛。但气动系统存在2个显著的缺陷[1-2]:

(1) 由于工作介质压缩空气的可压缩性以及压力与流量的耦合特性,气动系统表现出极强的非线性,导致其在精确建模、控制及监测诊断方面的诸多困难;

(2) 气动系统能效极低,导致其在使用过程中的能耗成本远高于其较低的购置成本,在绿色制造愈发严格的约束下,其低能效缺陷愈发显著。

泄漏是气动系统最常见的故障类型及能量浪费的最主要因素之一。通常气动系统10%~30%的能量浪费是由泄漏造成的[3],随着系统老化和功能退化,泄漏情况会逐渐恶化,因此对泄漏故障进行实时诊断有重要意义。在工业气动系统中,通常以人工巡检的方式,采用肥皂水测漏[4]和超声测漏方法[5]对系统漏点进行定位,人力和时间成本高,不能实时化和自动化,而且对于内泄漏检测无能为力。近年来也有通过定期检测系统压力和流量变化的功能模块[6-7]被开发应用于系统泄漏状况评估,但基本上只用于测定下游系统泄漏量,不能对具体的泄漏点进行诊断定位。传统方法都难以满足智能化的需求。

近年来,随着信号处理和人工智能技术的快速发展,智能化故障诊断在各个工业应用领域取得了长足进步[8-11],流体传动领域发展相对其他领域虽有发展但较为滞后,其中气动系统智能化故障诊断则是远落后于液压系统故障诊断发展[12]。杨飞等[13]提出了基于预测性维修的气动系统故障诊断流程,主要分为状态监测阶段、故障诊断与预测阶段和维修分析与决策阶段。其中状态监测阶段主要是采集设备状态或故障典型信息,依据设备正常工作的标准参数来进行比对,若设备脱离正常状态则进入下一阶段进行故障识别与定位,当判断出气动系统发生故障的位置后,再去考虑如何维修以及维修的成本。LI X等[14]介绍了一种气动系统的分析故障检测和诊断策略,目的是防止设备故障或过程关闭,从而损失生产时间和利润。该方法以压力、流量等参数为基础,采用基于小波分解的分析方法,开发了一种用于诊断未知泄漏的模式识别技术,并通过实验验证了该方法的有效性。ZHANG D等[15]将粒子算法与专家规则相结合,提出了一种基于改进专家系统的气动调节阀故障诊断方法,最后,通过设计的阀门实验系统平台验证了该方法的有效性和优越性。KAACZYNSKI T等[16]介绍了一种用于液压与气动的多媒体混合移动平台系统,分别介绍了如何针对液压与气动各自不同的特点来进行诊断;提出的气动和液压控制系统的诊断算法过程,为开发和实施操作过程中的安全解决方案奠定了基础。肖雅馨[17]对气动电磁阀在线故障检测进行了研究,通过间接法获取气动电磁阀动态特性,以电流信号取代常用的电压信号作为间接测试动态特性的输入,提出了基于长短期记忆神经网络预测的电磁阀故障风险预测算法,其核心方法为参考预测值来预警异常。

本研究采用以监测上游压缩空气信号对末端执行器进行状态监测及故障诊断的思路,以气动系统中最具代表性的执行器——气缸为研究对象,利用栈式自编码器(Stacked Auto-Encoders,SAE)模型对采集的信号进行特征提取,并将提取的特征送入SVM模型学习判断未知泄漏故障信号,对气缸内泄漏和外泄漏故障进行诊断定位。

1 实验系统

针对单气缸泄漏故障诊断,设计了如图1所示的实验系统,系统由气动元器件、传感器、数据采集装置、工控机及软件组成。气缸活塞杆的伸出与缩回由三位五通电磁换向阀控制,换向频率为0.5 Hz。气缸有杆腔进出气口处接调速阀用于模拟外泄漏故障,通过人为制造密封环磨损来模拟内泄漏故障。

图1 实验系统原理图

流量传感器2用来记录泄漏范围大小,压力传感器1与流量传感器1用于采集气缸上游信号,用于对气缸不同位置泄漏的故障诊断,调压阀用于调节整个系统的压力,本次实验中调压阀出口压力分别设置为0.2 MPa与0.3 MPa。在整个系统中,传感器与执行器都已正确安装与调试后,可以从PC机端直接进行数据采集与控制。采样频率为100 Hz,气缸周期性伸出与缩回运动,采集信号的一个完整周期为气缸活塞杆一次伸出行程与一次缩回行程的一个完整循环。

2 数据预处理

图2为截取的气缸上游的流量与压力在时域的原始信号与完整的单个循环展示,由于气缸本身是往复运动的执行件,因此采集到的信号会呈现出周期性,且与换向阀频率相关,信号周期为2 s。本研究旨在时域信号利用自编码器对采集到的信号进行分析处理实现对气缸的故障诊断。数据预处理是进行故障诊断的第一步,主要目的是删除原始数据中的冗余信息,使得原始信号更加干净,便于算法的学习与处理,具体的数据预处理流程如图3所示。

图2 压力流量原始信号

图3 数据预处理流程

采集到的原始信号通常不可直接使用,由于传感器与实验设备本身带来的误差,往往会产生许多干扰信息,甚至会在某个时间序列内出现数据缺失的情况,这对后续特征提取以及分类结果都会造成很大的影响。在Python中能够较为容易地实现原始数据缺失值与异常值的检测[18]。

通过数据归一化可以在不改变原始数据的分布下将数据投影到[0,1]区间,将不同的原始数据保持在同一量纲内。通过Python软件将原始数据进行归一化处理后,进行循环分割,对原始信号预处理最重要的一步是分割循环,可视化周期模式。由于信号本身规律性强且呈周期性,所以选择将每一个循环作为原始信号正常与故障模式的样本点。

在Python中通过设置移动窗口的形式将每个起点找到并对信号进行分割,然后以表格的形式进行存储用来下一步处理。

3 故障诊断方法及流程

3.1 栈式自编码器

自编码器(Auto-Encoder, AE)是一个3层的无监督学习神经网络,3层分别为表示输入的输入层、表示学习特征的隐藏层和表示重构的输出层。输入层和隐藏层构成编码网络,将原始输入转换为隐藏特征。隐藏层和输出层构成解码网络,将隐藏特征重构为与原始输入具有相同维度的输出表征[19],AE的结构图如图4所示。

图4 AE的结构图

假设输入向量样本集为x=(x1,x2,…,xi,…,xm),编码器网络和解码网络可以分别表示为:

h=s(Wx+b)

(1)

z=s(W′h+b′)

(2)

式中,W,W′ —— 编码、解码网络的权重矩阵

b,b′ —— 编码、解码网络的偏置向量

s—— 激活函数

h—— 隐藏层特征

z—— 原始输入的近似恢复数据

均方误差(MSE)通常用作AE的损失函数,定义如下:

(3)

式中, ‖.‖ —— 范数

k—— 输入向量的维数

因此,m个样本的总损失函数为:

(4)

SAE就是多个自编码器逐级相联,隐藏层有多个,最终得到的特征更有代表性,并且维度很小。栈式自编码器一般后接SoftMax分类器用于预训练后的微调,在本次实验中由于训练集样本数较少,并没有进行全局性的微调,最终以SVM作为分类器,SAE结构图如图5所示。

图5 SAE结构图

3.2 诊断流程

针对单气缸故障诊断的流程图如图6所示,具体步骤如下:

图6 诊断流程图

(1) 在相同实验条件下分别采集两次气缸上游压力与流量信号,第一次采集的数据为训练集,第二次采集的数据为未知测试集;

(2) 使用Python搭建栈式自编码器,并设置隐藏层数量、迭代参数、激活函数等基本参数;

(3) 使用训练集训练栈式自编码器,通过预测试集的分类结果来对迭代次数、激活函数等参数进行调整;

(4) 将训练集提取的特征进行聚类可视化,进一步判别AE特征提取能力;

(5) 用测试集验证训练好的模型并输出诊断结果。

4 结果与讨论

由于采集到的原始数据具有明确的周期性且规律性较强,因此没有选取海量数据进行分析处理。本次实验共4种故障类型,训练集共288个样本,每个样本包含200个连续采样点。采集了两次数据作为训练集与测试集,每种故障类型训练集数为34,预测试集数为14,测试集样本数为14。故障类型及特点如表1所示,数据集信息如表2所示。

表1 故障类型及特点

表2 实验数据集信息

将训练集按以上预处理步骤进行预处理后送入自编码器神经网络进行训练,通过预测试集对模型参数进行了调整,激活函数选择Relu与sigmoid,自编码器网络结构为[200,100,50,10,2],隐藏层数设置为3层,迭代次数设置为200,将降维后的特征送入SVM模型学习,SVM的核函数采用RBF核函数,惩罚因子与核函数参数分别设为10和0.1,进行10次实验,并记录每次的故障准确率。图7和图8为第一次实验训练集输入压力p图与输出重构的压力p1图可视化对比;图9和图10为输入流量Q图与输出重构的流量Q1图可视化对比。其中每条曲线为气缸上游采集到的气缸周期内的压力与流量信号,前100数据点主要为气缸无杆腔进气过程中上游压力与流量信号的变化趋势,后100数据点主要为换向后气缸有杆腔进气过程中上游压力与流量信号的变化趋势。从对比图可以看出,SAE可以通过降维后的数据很好的还原出输入训练集的原始特征。

图7 输入的压力训练集

图8 重构的压力训练集

图9 输入的流量训练集

图10 重构的压力训练集

图11为流量信号与压力信号故障诊断正确率R,在10次实验后,流量信号的平均正确率可以达到96%,压力信号的平均正确率87%。由此可以看出,泄漏实验中以流量信号为指标进行故障检测要优于以压力信号为指标。

图11 压力流量结果对比图

图12和图13为压力与流量第9次实验的混淆矩阵图。对角线上的数值表示对于每种测试数据的正确类别数量,可以看到压力的第2类与第3类为主要的混淆对象,第5类与第0类也出现混淆,流量的第0类与第5类为主要的混淆对象。

图13 第9次实验流量混淆矩阵图

聚类作为无监督学习的一种,可以对无标签数据通过算法标准来进行相似度的分类。常用的聚类方法有层次聚类、K-Mean均值聚类、DBSCAN聚类等,本研究采用的聚类方法为DNSCAN聚类方法,其最大的优点是可以通过修改半径参数来判断是否有噪声样本点,通过栈式自编码器将原始数据降到2维后,可以在DBSCAN算法中进行可视化聚类分析,若出现噪声点可以通过返回的标签去分析原始数据来判别该样本是否需要在送入分类器前剔除或者是其他任何情况。

聚类第二大作用是可以对未知数据贴标签,本实验中采集到的部分数据是正常工况与泄漏工况下混合采集的,通过聚类可以将其区分贴好类别标签。基于此,聚类可以判断自编码器提取的特征是否有效,而且在真实工厂中历史数据多且复杂,更无法人工区分出正常与故障类别,这时候聚类算法就有很大的优势[20]。

因此,为了进一步明确SAE特征提取的能力以及降维后的数据分布,在原始数据降维后,将压缩数据送入DBSCAN算法进行聚类,分布结果如图14和图15所示。

图14 压力聚类分布图

图15 流量聚类分布图

由分布图可以看出虽然可以正确的将原始数据正确聚类,但是压力的第2类与第3类很接近以及流量的第0类与第5类在数据分布图中是比较接近的,这与混淆矩阵的结果是保持一致的。

5 结论

通过采集气缸上游监测点压力和流量两类信号,利用机器学习的方法对气动系统单气缸进行了内外泄漏故障的判别,得到如下主要结论:根据气动系统中气缸上游信号自身的特点进行循环分割作为样本点,采用自编码器进行特征提取后进行故障诊断的方法是有效的,表明通过分析上游信号来确定下游元器件故障状态是可行的。对于本研究的气缸泄漏实验,在相同条件下,以流量作为故障诊断指标会比压力更优。

气缸的工作状态变化本质上可以理解为其能量消耗的模式发生了变化,因此可以反映在气缸上游压力和流量信号中,同样监测上游压力和流量信号还可以对气缸一些其他常见的故障进行有效诊断,如气缸不动作、动作不平稳、动作过快或过慢、缓冲失效等等,进而可以推广应用到其他气动元器件及系统的故障诊断。

猜你喜欢
编码器气缸气动
中寰气动执行机构
基于NACA0030的波纹状翼型气动特性探索
气缸体止口面展开式车削加工
一种新型无杆气缸传送一模双件开卷落料模结构
基于反馈线性化的RLV气动控制一体化设计
基于FPGA的同步机轴角编码器
基于双增量码道的绝对式编码器设计
一种发电站专用的电力输送电缆的架设设备
JESD204B接口协议中的8B10B编码器设计
多总线式光电编码器的设计与应用