使用数据分析,识别设备异常

设备健康监测系统在工业领域中扮演着至关重要的角色,它能够帮助企业及时发现设备异常,预防故障,提高设备使用寿命和生产效率。而异常诊断技术则是设备健康监测系统中的核心部分,能够实现对设备异常情况的准确判断。根据设备状态数据判断设备是否出现异常情况的方法。在设备健康监测系统中,异常诊断技术的作用主要体现在及时发现设备异常、提高设备使用寿命、提高生产效率等方面。

传统机理方法在设备健康监测中通常采集设备的振动或旋转历程数据,这些数据中蕴含着设备的工作状态信息。通过数字信号处理技术,我们可以对这些数据进行深入分析,从而识别出可能存在的故障信息。这种技术主要基于振动力学和小波理论,结合数字信号处理中的滤波、频谱分析等技术,对设备的运行状态进行深入的剖析。西安交通大学在这个领域有着深厚的积淀,他们在设备健康监测领域的研究成果被广泛应用到工业实践中。

然而,在工业领域除了振动和旋转类设备外还有许多其他类型的设备,如核电系统、卫星系统等。这些设备或部件往往难以使用数字信号直接表达,从而使得传统的异常诊断技术无法有效识别其异常状态。因此,对于这类设备或部件,我们需要探索新的异常识别方法。例如对于核电系统等复杂的大型设备,异常诊断需要结合多方面的数据来进行综合分析。例如,设备的运行温度、压力、液位等参数,以及设备的运行历史数据等,都可以被用来进行异常诊断。又比如对于大量机械系统中的非旋转和振动的部件,我们可以采用声学监测技术来进行异常诊断。通过收集设备的声波信号,我们可以分析设备的运行状态和故障模式,从而实现对设备异常的准确识别。这种技术具有非侵入性和远程监测的优点,适用于各种类型的设备。

下面,我们简要介绍一般工业设备运行中所感知到的数据的特点,以及如何利用这些数据来进行异常诊断。

首先,我们介绍一般工业设备运行中所感知到的数据的特点。与振动类或旋转类型的设备中所采集的数据相比,这种数据具有以下特点:

  1. 数据类型多样:振动信号通常以连续的实值表示,而一般设备上的感知数据除包含此类数据外通常还有表示开关状态得布尔量和表示不同挡位或级别得数值量。这意味着我们需要对不同类型的数据进行分类处理和分析。下图给出了不同数据类型在可视化上的差异。

  2. 数据维度高:振动信号可以通过一个或两个通道的信号数据实现故障识别。而一般工业设备的故障识别往往需要基于大量传感器进行。这使得识别模型的输入维数变得非常高,可能从数十个到数百个不等。因此,在处理这些数据时,我们需要采用降维技术,如主成分分析、线性判别分析等,以降低数据的维度,提高计算效率和准确性。

  3. 数据分布特殊:一般的振动信号通常具有周期性、平稳性特征。一般工业设备往往不具备这个特征。例如排气管上的压力传感器可能表现为随机脉冲信号,又如某挡位指示器可能长期输出某些状态值,而在偶然情形下输出另一些状态值。因此,我们需要根据不同设备的特性,采用适合的数据处理方法和模型来处理这些特殊分布的数据。

  4. 数据间相关关系复杂:在一般工业设备上,传感器通常被设计布局为感知多种状态参数,这些状态之间存在的相关性就体现在采集数据的相关关系上。当这种相关关系耦合了设备的不同运行工况及设备故障后,采集数据就会呈现出复杂的相关关系。因此,在处理这些数据时,我们需要考虑数据间的相关性,采用适合的相关性分析方法和模型来挖掘数据间的关系。

总之,一般工业设备的感知数据具有多样性、高维度性、特殊分布性和复杂相关性等特点,这给异常诊断带来了挑战。为了实现准确的异常诊断,我们需要采用适合的数据处理方法和模型来处理这些数据,并结合传统的信号处理和数学方法来提高异常诊断的准确性和可靠性。

除数据特点外,我们也需要了解一般工业系统的设备故障特性以及工况对异常诊断技术的影响。

首先,一般工业系统的设备故障类型多种多样,故障可能产生的部位也十分分散。在振动或旋转类设备的故障诊断中,通常聚焦于应力失效或摩擦面损伤。然而,在一般工业系统中,故障可能涉及的范围更加广泛,包括但不限于失稳、过热、失压、随机碰撞、运动锁死、控制错误等等。这种多样性的故障类型使得我们在构建健康监测系统时,第一步往往是对系统运行状态进行异常识别,并确定异常的发生位置。由于故障类型的多样性,我们无法直接给出明确的故障判定,而是需要通过深入分析来确定具体的故障原因。

其次,一般工业系统的设备工况与设备故障之间存在一定的耦合性。在振动或旋转类设备中,工作状态与设备故障之间的耦合性较小。例如,通过将时域信号结合角速度信息转换为角域信号,研究人员可以在设备的任何转速下获得几乎相同的故障特征数据。然而,在一般工业系统中,特定的故障通常发生在某些特定工况下。比如散热循环管路连接不良导致的泄露可能只发生在设备启用散热功能且水流压力达到某阈值的情形下才发生。因此,在建立一般工业系统的故障诊断系统时,我们必须按照不同工况状态分别处理。下图给出了区分工况对异常识别有影响的一个概念性的示例。可以看到当我们将所有数据归为一类时,异常数据会嵌入到正常数据中难以区分。而在有明确工况区分的情形下异常数据比较容易被识别。当然,对于已经具有标签的数据,这种分隔是容易的,但对于故障率很小的工业数据而言,进行工况区分就非常有必要了。

基于一般工业系统的数据特征与故障特征实际,可以看出通过某一类专用数据特征是难以实现异常识别的。在这种情况下,通常选择基于统计的方法实现这一任务。

思考基于数字信号处理方法的异常识别原理,我们可以看到这种方法通常分为三个阶段:

第一阶段是提升所关注信息的信噪比。在这个阶段,我们通常使用滤波、包络等方法去除数据中存在的噪声。例如,对于振动信号,我们可以使用低通滤波器去除高频噪声,使用包络线提取方法提取信号的包络线,从而突出信号中的周期性成分。这些方法可以帮助我们更好地提取出设备运行时的关键信息,提高信号的信噪比。

第二阶段是使用特定算法从数字信号中提取出能表征运行状态的指标量。这些指标量应该能够反映设备的健康状态,并且可以用于区分正常状态和异常状态。例如,对于旋转轴而言,我们可以通过分析振动信号的峭度来检测转轴上是否存在裂纹。峭度是一个反映信号峰值分布情况的统计量,当转轴存在裂纹时,振动信号的峭度会增大。此外,我们还可以使用其他指标量,如均方根值、波形因子等,来进一步表征设备的运行状态。

第三阶段是将指标量与阈值进行比较,从而判断设备是否发生异常。阈值可以是根据经验值设定的固定值,也可以是根据历史数据计算出的动态值。当指标量超过阈值时,我们就可以认为设备发生了异常。需要注意的是,阈值的设定需要考虑到设备的运行工况和环境因素,以及不同类型的异常情况。因此,在设定阈值时需要进行充分的试验和验证,以确保诊断结果的准确性和可靠性。

综上所述,基于数字信号处理方法的异常识别原理包括三个阶段:提升所关注信息的信噪比、提取表征运行状态的指标量和比较指标量与阈值进行异常判断。当然,在实际应用中,我们需要结合设备的具体情况和实际需求进行选择和优化,以确保异常诊断结果的准确性和可靠性。

美林数据所提供的数据分析工具 Tempo AI 提供了面向信号处理的工作模块,可供用户便利的接入信号数据,并提供大量选项可供用户实现对信号数据的过滤、包络谱构建,以及抽取数据中蕴含的各类特征量。结合 Tempo AI 的其余数据分析工具,用户可以方便的实现基于信号数据的振动或旋转类设备的故障诊断。

  • 支持解析wav、txt、csv、dat文件、IoTDB连接信号数据。
  • 支持多种数字信号处理方法
  • 支持多种面向信号数据的特征工程方法
  • 支持信号数据处理与特征提取功能自定义

在该基础上更进一步,我们可以从数据分析的角度借鉴这一方法论,基于统计的一般工业设备异常诊断的方法可以分成以下三个阶段:

第一阶段是提升所关注数据的质量。在这个阶段,我们使用数据清洗和基于统计方法的异常值筛选等技术对数据进行整理。数据清洗主要包括去除重复数据、填补缺失值、平滑噪声数据等操作,以保证数据的完整性和准确性。同时,我们还会使用统计方法的异常值筛选技术,如基于均值和标准差的异常值检测、基于距离的异常值检测等,来识别出数据中的异常值,并进行相应的处理。这些操作有助于提高数据的可信度和准确性,为后续的诊断分析提供可靠的基础。

第二阶段是使用所获取的数据构建概率分布模型。考虑到一般工业设备所具有的多工况特征,需要对不同的工况分别建模,或者使用某种混合模型表达这种多工况的情形。例如,对于一台机器设备,它可能有多种不同的运行状态,如节能运行,怠速运行,满负荷运行等。针对每种状态,我们可以使用不同的概率分布模型进行建模,如正态分布、泊松分布、指数分布等。通过构建这些概率分布模型,我们可以更好地理解设备在不同状态下的数据特征和分布情况,为异常诊断提供依据。

第三阶段是设定统计分布的阈值,并使用得到的概率分布模型对当前指标量进行检验,并依据指标量是否超出阈值判断设备是否发生异常。阈值可以是根据经验值设定的固定值,也可以是根据历史数据计算出的动态值。通过将实际指标量与阈值进行比较,我们可以判断设备是否处于正常状态或者出现了异常情况。此外,我们还可以结合设备的运行特性和历史数据进行分析和建模,以提高异常诊断的准确性和可靠性。

在实际的设备健康监测系统中,异常诊断技术的建模过程还需要考虑以下方面:

首先需要考虑高维数据降维问题。由于设备运行过程中会产生大量数据,这些数据往往具有高维性,使得模型训练变得复杂和计算量大。因此,我们需要采用有效的降维方法,如主成分分析、线性判别分析等,将高维数据降维到低维空间,以简化模型训练和提高计算效率。

其次需要考虑不同数域合并建模问题。在设备健康监测中,我们通常会采集设备的多种状态参数,这些状态参数可能属于不同的数域,如温度、压力、振动等。为了更好地描述设备的整体状态和进行综合诊断,我们需要将这些不同数域的数据进行合并建模,以充分利用它们之间的信息。

最后需要考虑实际工业设备上故障发生概率问题。在建立异常诊断模型时,我们需要考虑不同故障发生的概率和影响程度。通过对不同故障发生概率的评估和分析,我们可以优化模型的训练和调整阈值,以提高异常诊断的准确性和可靠性。

下面以混合概率主成分分析算法为例,对前述思想做一个简要的介绍。

混合概率主成分分析(Mixture of Probabilistic Principal Component Analyzers,MPPCA)是一种统计学和机器学习方法,用于对高维数据进行降维和特征提取。它是对传统的概率主成分分析(Probabilistic Principal Component Analysis,PPCA)的扩展,能够更灵活地处理复杂的数据分布。

在混合概率主成分分析中,假设数据是由多个概率主成分分析模型组成的混合体,每个模型对应一个潜在的数据子集。这样,MPPCA 可以更好地处理数据中的多模态性(即数据中存在多种模式或簇)。MPPCA 的模型可以描述如下:

  1. 假设有 K 个成分(或模态),每个成分都由一个均值向量和一个协方差矩阵所描述。这些成分可以用高斯分布来建模。

  2. 每个数据点都由这 K 个成分中的一个生成,生成的成分由一个先验概率分布来决定。

  3. 数据点在给定其所属成分后,由相应成分的概率主成分分析模型生成。

MPPCA 通过最大化似然函数来进行参数估计,从而确定成分的均值、协方差矩阵、以及成分的先验概率。通常使用期望最大化算法(Expectation-Maximization,EM)来实现参数估计。

MPPCA 的优点之一是它可以有效地处理具有复杂数据结构的情况,例如包含多个簇或模态的数据集。这使得它在许多领域中都有广泛的应用,例如图像处理、生物信息学、模式识别等。作为一篇介绍性材料,这里不对 MPPCA 的数学形式做更多说明。

当在工业设备监测和诊断的场景中面对高维度感知数据时,MPPCA 具有很强的可行性:

  1. 处理多模态数据分布:许多工业设备的性能参数可能会随着工作状态或环境条件的变化而产生多种模态,例如不同的工作负载、温度、湿度等因素。MPPCA 能够更灵活地处理这种多模态数据分布,通过将数据建模为多个成分的混合体,可以更准确地捕获到不同模态之间的关系。

  2. 降维和特征提取:高维度数据往往包含了大量冗余信息,降低了数据的可解释性和处理效率。MPPCA 可以将高维度数据映射到一个低维的潜在空间中,从而实现降维和特征提取的目的。这有助于减少计算复杂性,并提升异常检测的准确性。

  3. 灵活性和适应性:MPPCA 具有较强的模型灵活性,可以适应不同工况下的数据分布变化。它可以通过合适的模型参数来适应不同的工作状态,从而提高了异常检测的鲁棒性。

  4. 可解释的异常检测能力:MPPCA 可以通过对数据点在潜在空间中的重建误差来评估数据的异常程度。异常数据点通常会导致较大的重建误差,从而可以被有效地检测出来。

简单的说,MPPCA 既能够实现数据的降维,同时也能够将数据有效聚类到数个聚集核心。与混合高斯模型相比,MPPCA 提供了对不同维度数据之间存在相关性的描述方法,下图是使用概率主成分方法对数据进行统计性概括的一个示意。

为示意 MPPCA 算法所执行的功能,我们使用两个各自具有高斯分布的数据表示某设备运行的两种工况。为便于可视化,我们只使用两个维度的感知数据。

如果我们使用一般分类方法如 K-Means,可以看到该数据会以空间分割的方法划分为两个 分类。这并没有体现出设备运行参数的统计分布本质。以图上两个黑色点为例,其显然处于任何一种运行工况的一般分布区间,但使用 K-Means 方法并不能识别出这种数据的异常。

而 MPPCA 方法可以将属于不同工况的数据相对准确的区分。通过准确描述工况的统计分布,异常点可以较为准确的发现。它能够有效的以最精确的高斯分布描述数据。代价是协方差矩阵中非对角线项不为零。

当然,在实际设备健康监测系统构建时并没有万能的通用方法。我们必须基于数据和设备、运行机理的复杂性,必须由经验丰富的工业数据分析人员依据实际情形给出最佳的监测方案。美林数据在 PHM 技术领域深耕多年,很愿意与您在相关领域展开合作,共同研究适合您的异常识别技术。

相关推荐
Eric.Lee2021几秒前
moviepy将图片序列制作成视频并加载字幕 - python 实现
开发语言·python·音视频·moviepy·字幕视频合成·图像制作为视频
Dontla5 分钟前
vscode怎么设置anaconda python解释器(anaconda解释器、vscode解释器)
ide·vscode·python
_WndProc16 分钟前
C++ 日志输出
开发语言·c++·算法
努力学习编程的伍大侠29 分钟前
基础排序算法
数据结构·c++·算法
qq_5290252944 分钟前
Torch.gather
python·深度学习·机器学习
数据小爬虫@44 分钟前
如何高效利用Python爬虫按关键字搜索苏宁商品
开发语言·爬虫·python
XiaoLeisj1 小时前
【递归,搜索与回溯算法 & 综合练习】深入理解暴搜决策树:递归,搜索与回溯算法综合小专题(二)
数据结构·算法·leetcode·决策树·深度优先·剪枝
Cachel wood1 小时前
python round四舍五入和decimal库精确四舍五入
java·linux·前端·数据库·vue.js·python·前端框架
Jasmine_llq1 小时前
《 火星人 》
算法·青少年编程·c#