离心泵的故障诊断使用稳态实验gydF4y2Ba
这个例子显示了一个基于模型的方法检测和诊断的不同类型的故障发生在泵送系统。给出的例子是离心泵的分析在故障诊断应用程序书Rolf Isermann [1]。gydF4y2Ba
泵监督和故障检测gydF4y2Ba
泵是必不可少的设备在许多行业包括电力和化工、矿产和采矿、制造、供暖、空调和冷却。离心泵是用于运输液体的旋转动能转换成流体流动的水动力能量。转动能量通常来自内燃机或电动马达。液体进入泵叶轮附近或旋转轴和由叶轮、加速流动的径向向外扩散。gydF4y2Ba
液压或机械部件损坏泵经验。最频繁断裂组件是滑动环海豹和球轴承,虽然失败其他组件包括驱动电机、叶轮叶片和滑动轴承也并不少见。下表列出了最常见的类型的缺点。gydF4y2Ba
空化:gydF4y2Ba发展蒸汽泡沫流体内如果静态压力低于蒸汽压。突然泡沫崩溃导致损坏的叶片轮子。gydF4y2Ba
气液:gydF4y2Ba压降导致溶解气体的液体。气体和液体的分离和更低的结果。gydF4y2Ba
演练:gydF4y2Ba丢失的液体会导致缺乏冷却和轴承过热。重要的开始阶段。gydF4y2Ba
侵蚀:gydF4y2Ba机械损伤的墙壁,因为硬颗粒或空化gydF4y2Ba
腐蚀:gydF4y2Ba损失的液体gydF4y2Ba
轴承磨损:gydF4y2Ba通过疲劳和金属摩擦机械损伤,一代的点蚀和眼泪gydF4y2Ba
堵塞的孔洞:gydF4y2Ba导致重载/轴轴承损坏gydF4y2Ba
滑动环海豹堵塞:gydF4y2Ba导致更高的摩擦和较小的效率gydF4y2Ba
增加将印章:gydF4y2Ba导致效率的损失gydF4y2Ba
存款:gydF4y2Ba存款的有机材料或通过化学反应在转子入口或出口减少效率和增加温度。gydF4y2Ba
振动:gydF4y2Ba转子不平衡转子通过破坏或存款。会导致轴承损坏。gydF4y2Ba
可用的传感器gydF4y2Ba
以下信号通常是测量:gydF4y2Ba
进口和出口之间的压力差gydF4y2Ba
转速gydF4y2Ba
电动机转矩gydF4y2Ba 和泵的转矩gydF4y2Ba
液体放电(流)在泵出口处标率gydF4y2Ba
驱动电动机电流、电压、温度(不考虑)gydF4y2Ba
流体温度、沉积物(不考虑)gydF4y2Ba
泵和管道系统的数学模型gydF4y2Ba
一个力矩gydF4y2Ba 应用于转子的径向离心泵导致转速gydF4y2Ba 和传输泵流体的动量增加转子进口转子半径较小的出口更大的半径。涡轮欧拉方程收益率压差之间的关系gydF4y2Ba 、速度gydF4y2Ba 和液体放电率(流量)gydF4y2Ba :gydF4y2Ba
在哪里gydF4y2Ba 是理论(理想;以米,没有损失)泵头gydF4y2Ba ,gydF4y2Ba 是比例常数。占有限数量的叶轮叶片时,摩擦损失和影响损失non-tangential流,真正的泵头是由:gydF4y2Ba
在哪里gydF4y2Ba ,gydF4y2Ba 和gydF4y2Ba 比例常数是作为模型参数。相应的泵转矩:gydF4y2Ba
电机和泵的机械零件导致速度增加转矩时根据:gydF4y2Ba
在哪里gydF4y2Ba 的比例是惯性电机和泵,然后呢gydF4y2Ba 摩擦转矩由库仑摩擦吗gydF4y2Ba 和粘滞摩擦gydF4y2Ba 根据:gydF4y2Ba
泵是连接到一个管道系统,传输流体从降低储罐上。动量平衡方程收益率:gydF4y2Ba
在哪里gydF4y2Ba 是一个管的阻力系数,gydF4y2Ba 管长度gydF4y2Ba 和横截面积gydF4y2Ba ,gydF4y2Ba 是存储在泵的高度。模型参数gydF4y2Ba 从物理或可以估计拟合测量传感器信号的输入/输出模型。模型使用的类型取决于操作条件下运行泵。例如,完整的泵管的非线性模型系统可能不需要如果泵总是运行在一个恒定的角速度。gydF4y2Ba
故障检测技术gydF4y2Ba
缺点可以通过检查发现某些特性从测量数据中提取和比较他们已知的阈值可接受的行为。不同故障的检测能力和isolability取决于实验的性质和可用性的测量。例如,恒速分析压力测量只能检测故障造成大的压力变化。此外,它不能可靠地评估失败的原因。然而,多速实验压差的测量,电机转矩和许多来源的流量可以检测和隔离故障如来自天然气围场,排练,大额存款,汽车缺陷等。gydF4y2Ba
基于模型的方法采用以下技术:gydF4y2Ba
参数估计:使用测量的健康(名义)操作机器,模型的参数估计及其不确定性量化。然后使用重新评估测试系统测量参数值,以及随之而来的估计比较反对他们的名义值。这种技术是这个例子的主要话题。gydF4y2Ba
残留一代:一个模型训练作为健康的机前。比较模型的输出和测量观测数据从测试系统和计算残余信号。这个信号大小进行了分析,方差和其他属性检测的缺点。大量的残留可能是设计用来区分不同来源的缺点。这种技术的讨论gydF4y2Ba离心泵的故障诊断使用残留分析gydF4y2Ba的例子。gydF4y2Ba
恒速实验:参数估计的故障分析gydF4y2Ba
泵校准和监督的一种常见做法是运行它以恒定速度和记录泵的静压头和流体放电率。通过改变阀门在管道系统中的位置,排出的液体体积(GPM)监管。放电率的增加导致水泵扬程下降。泵的测量头的特点对制造商提供的值程式码可以比较。任何差异都显示错误的可能性。水头和流量放电率的测量是通过模拟泵管系统模型的仿真软件。金宝appgydF4y2Ba
的额定速度2900 RPM,理想的泵头特征对于一个健康的泵制造商提供的是如图所示。gydF4y2Ba
url =gydF4y2Ba“//www.tatmou.com/金宝appsupportfiles/predmaint/fault-diagnosis-of-centrifugal-pumps-using-steady-state-experiments/PumpCharacteristicsData.mat”gydF4y2Ba;websave (gydF4y2Ba“PumpCharacteristicsData.mat”gydF4y2Baurl);负载gydF4y2BaPumpCharacteristicsDatagydF4y2BaQ0处gydF4y2BaH0gydF4y2BaM0gydF4y2Ba%为泵的扬程制造商提供的数据gydF4y2Ba图绘制(H0 Q0处,gydF4y2Ba“——”gydF4y2Ba);包含(gydF4y2Ba的放电率Q (m ^ 3 /小时)gydF4y2Ba)ylabel (gydF4y2Ba泵头(m)的gydF4y2Ba)标题(gydF4y2Ba“在2900 RPM泵扬程特性”gydF4y2Ba网格)gydF4y2Ba在gydF4y2Ba传奇(gydF4y2Ba“健康泵”gydF4y2Ba)gydF4y2Ba
泵的故障导致一个明显的变化特征是:gydF4y2Ba
穿在间隙的差距gydF4y2Ba
穿在叶轮出口gydF4y2Ba
在叶轮出口的存款gydF4y2Ba
分析错误的泵,速度,转矩和流量测量收集泵受到不同的缺点。例如当故障引入环间隙,测量头特征泵特性曲线显示了变化。gydF4y2Ba
负载gydF4y2BaPumpCharacteristicsDatagydF4y2Ba第一季度gydF4y2BaH1gydF4y2BaM1gydF4y2Ba%的信号测量泵间隙过大的差距gydF4y2Ba持有gydF4y2Ba在gydF4y2Ba情节(Q1, H1);负载gydF4y2BaPumpCharacteristicsDatagydF4y2Ba第二季gydF4y2BaH2gydF4y2Ba平方米gydF4y2Ba%信号测量泵的一个小间隙的差距gydF4y2Ba情节(Q2, H2);传奇(gydF4y2Ba“健康泵”gydF4y2Ba,gydF4y2Ba“大通关”gydF4y2Ba,gydF4y2Ba“小间隙”gydF4y2Ba)举行gydF4y2Ba从gydF4y2Ba
相似的变化中可以看出torque-flow特点和其他故障类型。gydF4y2Ba
对于故障诊断的自动化,您将观察到的变化来定量信息。这样做一个可靠的方法是适合head-flow特征数据的参数化曲线绘制。使用泵管动力学控制方程,并使用一个简化的转矩的关系,得到以下方程:gydF4y2Ba
要估计的参数。如果你测量gydF4y2Ba 和gydF4y2Ba ,参数可以通过线性最小二乘估计。这些参数是gydF4y2Ba特性gydF4y2Ba可以用来开发一个故障检测与诊断算法。gydF4y2Ba
初步分析:比较参数值gydF4y2Ba
计算和绘制参数值估计上述3曲线。使用的测量值gydF4y2Ba 和gydF4y2Ba 数据和gydF4y2Ba 的名义泵速度。gydF4y2Ba
w = 2900;gydF4y2Ba% RPMgydF4y2Ba%健康泵gydF4y2Ba[hnn_0, hnv_0 hvv_0、k0_0 k1_0, k2_0] = linearFit (0, {w Q0 H0, M0});gydF4y2Ba%泵间隙过大gydF4y2Ba[hnn_1, hnv_1 hvv_1、k0_1 k1_1, k2_1] = linearFit (0, {w, Q1, H1, M1});gydF4y2Ba%泵小间隙gydF4y2Ba[hnn_2, hnv_2 hvv_2、k0_2 k1_2, k2_2] = linearFit (0, {w, Q2, H2, M2});X = [hnn_0 hnn_1 hnn_2;hnv_0 hnv_1 hnv_2;hvv_0 hvv_1 hvv_2]”;disp (array2table (X,gydF4y2Ba“VariableNames”gydF4y2Ba,{gydF4y2Ba“hnn”gydF4y2Ba,gydF4y2Ba“hnv”gydF4y2Ba,gydF4y2Ba“hvv”gydF4y2Ba},gydF4y2Ba…gydF4y2Ba“RowNames”gydF4y2Ba,{gydF4y2Ba“健康”gydF4y2Ba,gydF4y2Ba“大通关”gydF4y2Ba,gydF4y2Ba“小间隙”gydF4y2Ba}))gydF4y2Ba
hnn hnv hvv __________ __________ _____健康5.1164 e-06 8.6148 e-05 0.010421大间隙4.849 e-06 8.362 e-05 0.011082小间隙5.3677 e-06 8.4764 e-05 0.0094656gydF4y2Ba
Y = [k0_0 k0_1 k0_2;k1_0 k1_1 k1_2;k2_0 k2_1 k2_2]”;disp (array2table (Y,gydF4y2Ba“VariableNames”gydF4y2Ba,{gydF4y2Ba“k0”gydF4y2Ba,gydF4y2Ba“k1”gydF4y2Ba,gydF4y2Ba“k2”gydF4y2Ba},gydF4y2Ba…gydF4y2Ba“RowNames”gydF4y2Ba,{gydF4y2Ba“健康”gydF4y2Ba,gydF4y2Ba“大通关”gydF4y2Ba,gydF4y2Ba“小间隙”gydF4y2Ba}))gydF4y2Ba
k0 k1 k2 __________ ________ __________健康0.00033347 0.016535 2.8212 e-07大间隙0.00031571 0.016471 3.0285 e-07小间隙0.00034604 0.015886 2.6669 e-07gydF4y2Ba
表显示,gydF4y2Ba 和gydF4y2Ba 值降低,当间隙差距大时小间隙大于标称值。另一方面,gydF4y2Ba 和gydF4y2Ba 值增加对大间隙差距,减少对小缺口。的依赖gydF4y2Ba 和gydF4y2Ba 在间隙差距尚不明朗。gydF4y2Ba
结合不确定性gydF4y2Ba
初步分析表明参数变化可以指示故障。然而,即使对于健康的水泵有变化测量由于测量噪声、液体粘度变化,污染slip-torque电机运行泵的特性。这些测量变化介绍参数估计的不确定性。gydF4y2Ba
收集5套测量从泵操作无过错的情况下运行在2900转10放电节流阀位置。gydF4y2Ba
url =gydF4y2Ba“//www.tatmou.com/金宝appsupportfiles/predmaint/fault-diagnosis-of-centrifugal-pumps-using-steady-state-experiments/FaultDiagnosisData.mat”gydF4y2Ba;websave (gydF4y2Ba“FaultDiagnosisData.mat”gydF4y2Baurl);负载gydF4y2BaFaultDiagnosisDatagydF4y2BaHealthyEnsemblegydF4y2BaH = cellfun (@ (x) x.Head HealthyEnsemble,gydF4y2Ba“大学”gydF4y2Ba,0);Q = cellfun (@ (x) x.Discharge HealthyEnsemble,gydF4y2Ba“大学”gydF4y2Ba,0);情节(猫(2 Q{:}),猫(2 H {:}),gydF4y2Ba“k”。gydF4y2Ba)标题(gydF4y2Ba水泵扬程特性合奏5测试运行的gydF4y2Ba)包含(gydF4y2Ba的流量(m ^ 3 / hed)”gydF4y2Ba)ylabel (gydF4y2Ba泵头(m)的gydF4y2Ba)gydF4y2Ba
情节展示了一个健康的变化特征甚至在现实条件下泵。这些变化必须考虑进行故障诊断可靠。下一小节将讨论故障检测和隔离噪声数据的技术。gydF4y2Ba
异常检测gydF4y2Ba
在很多情况下,只有健康的测量机器可用。在这种情况下,统计描述的健康状态,封装的均值和协方差参数向量,可以创建使用可用的测量。测试的测量泵可以在名义上相比统计测试它是否是合理的,测试泵是一种健康的泵。检测到故障泵预计将作为一个视图中的异常检测的功能。gydF4y2Ba
估计均值和协方差的泵头和转矩参数。gydF4y2Ba
负载gydF4y2BaFaultDiagnosisDatagydF4y2BaHealthyEnsemblegydF4y2Ba[HealthyTheta1, HealthyTheta2] = linearFit (1, HealthyEnsemble);meanTheta1 =意味着(HealthyTheta1, 1);meanTheta2 =意味着(HealthyTheta2, 1);covTheta1 = x (HealthyTheta1);covTheta2 = x (HealthyTheta2);gydF4y2Ba
可视化的参数不确定性,因为74%的置信区域,对应2个标准差(gydF4y2Ba
)。看到helper函数gydF4y2BahelperPlotConfidenceEllipsoidgydF4y2Ba
获取详细信息。gydF4y2Ba
%为水泵扬程参数椭球的信心gydF4y2Baf =图;f.Position (3) = f.Position (3) * 2;次要情节(121)helperPlotConfidenceEllipsoid (meanTheta1 covTheta1 2, 0.6);包含(gydF4y2Ba“hnn”gydF4y2Ba)ylabel (gydF4y2Ba“hnv”gydF4y2Ba)zlabel (gydF4y2Ba“hvv”gydF4y2Ba)标题(gydF4y2Ba“2-sd信心为水泵扬程参数椭球”gydF4y2Ba)举行gydF4y2Ba在gydF4y2Ba
%为泵转矩参数椭球的信心gydF4y2Ba次要情节(122)helperPlotConfidenceEllipsoid (meanTheta2 covTheta2 2, 0.6);包含(gydF4y2Ba“k0”gydF4y2Ba)ylabel (gydF4y2Ba“k1”gydF4y2Ba)zlabel (gydF4y2Ba“k2”gydF4y2Ba)标题(gydF4y2Ba“2-sd信心为泵转矩参数椭球”gydF4y2Ba)举行gydF4y2Ba在gydF4y2Ba
灰色的椭圆体展示自信的地区健康泵参数。加载标记测试数据对健康的地区比较。gydF4y2Ba
负载gydF4y2BaFaultDiagnosisDatagydF4y2BaTestEnsemblegydF4y2Ba
TestEnsemble包含一组泵的速度、扭矩、各种阀和流量测量主管职位。所有测量含有间隙差距不同震级的断层。gydF4y2Ba
%测试数据预览gydF4y2Badisp (TestEnsemble {1} (1:5,:))gydF4y2Ba%测量前5行从第一个乐团成员gydF4y2Ba
时间运行ValvePosition速度头放电扭矩_____ ___ ____ _________________交_____ 180秒1 10 3034.6 12.367 35.339 0.35288 180.1秒1 10 2922.1 9.6762 36.556 4.6953 180.2秒1 2636.1 11.168 36.835 9.8898 180.3秒1 10 2717.4 10.562 40.22 -12.598 180.4秒1 3183.7 10.55 40.553 14.672gydF4y2Ba
计算测试参数。看到helper函数gydF4y2BalinearFitgydF4y2Ba
。gydF4y2Ba
% TestTheta1:水泵扬程参数gydF4y2Ba% TestTheta2:泵转矩参数gydF4y2Ba[TestTheta1, TestTheta2] = linearFit (1, TestEnsemble);次要情节(121)plot3 (TestTheta1 (: 1), TestTheta1 (:, 2), TestTheta1 (:, 3),gydF4y2Ba“g *”gydF4y2Ba)视图(-42.7[10])次要情节(122)plot3 (TestTheta2 (: 1), TestTheta2 (:, 2), TestTheta2 (:, 3),gydF4y2Ba“g *”gydF4y2Ba)视图(-28.3 [18])gydF4y2Ba
每个泵绿星标志是由一个测试。信心外边界的标记可视为离群值而内部从一个健康的泵或逃跑的检测。注意标记从一个特定的泵在泵头视图可能标记为异常而不是泵转矩的观点。这可能是由于不同来源的错误被检测到这些观点,或潜在的压力和扭矩测量的可靠性。gydF4y2Ba
量化区域异常检测使用的信心gydF4y2Ba
在本节中使用的置信区域信息的一种方式检测和评估故障的严重程度进行了探讨。“距离”的技术是计算测试样本均值或中位数的健康的地区分布。必须的距离相对于正常的“传播”的健康参数数据由其协方差表示。泰姬陵的函数计算测试样本的Mahalanobis距离参考样本集的分布(这里的健康的泵参数集):gydF4y2Ba
ParDist1 =泰姬陵(TestTheta1 HealthyTheta1);gydF4y2Ba%的水泵扬程参数gydF4y2Ba
如果你承担74%信心绑定(2个标准差)可接受的健康数据的变化,在ParDist1任何值,大于2 ^ 2 = 4应该标记为异常,因此表明错误的行为。gydF4y2Ba
距离值添加到情节。红线标记异常测试样品。看到helper函数gydF4y2BahelperAddDistanceLinesgydF4y2Ba
。gydF4y2Ba
阈值= 2;disp(表((1:长度(ParDist1))、ParDist1 ParDist1 >阈值^ 2,gydF4y2Ba…gydF4y2Ba“VariableNames”gydF4y2Ba,{gydF4y2Ba“PumpNumber”gydF4y2Ba,gydF4y2Ba“SampleDistance”gydF4y2Ba,gydF4y2Ba“异常”gydF4y2Ba}))gydF4y2Ba
_____ PumpNumber SampleDistance异常__________ * * * 1 58.874真2 24.051真3 6.281真的4 3.7179假5 13.58真的6 3.0723假7 2.0958假8 4.7127真9 26.829真的10 0.74682假gydF4y2Ba
helperAddDistanceLines (1 ParDist1 meanTheta1 TestTheta1,阈值);gydF4y2Ba
同样泵转矩:gydF4y2Ba
ParDist2 =泰姬陵(TestTheta2 HealthyTheta2);gydF4y2Ba%为泵转矩参数gydF4y2Badisp(表((1:长度(ParDist2))、ParDist2 ParDist2 >阈值^ 2,gydF4y2Ba…gydF4y2Ba“VariableNames”gydF4y2Ba,{gydF4y2Ba“PumpNumber”gydF4y2Ba,gydF4y2Ba“SampleDistance”gydF4y2Ba,gydF4y2Ba“异常”gydF4y2Ba}))gydF4y2Ba
_____ 1 9.1381 PumpNumber SampleDistance异常__________ * * *真2 5.4249真3 3.0565假4 3.775假5 0.77961假6 7.5508真7 3.3368假8 0.74834假假10 1.0241假3.6478 9gydF4y2Ba
helperAddDistanceLines (2 ParDist2 meanTheta2 TestTheta2,阈值);视图([8.1 - 17.2])gydF4y2Ba
现在的情节不仅显示异常样品的检测还量化他们的严重性。gydF4y2Ba
量化异常检测分类器使用看到下面成了gydF4y2Ba
国旗异常的另一个有效的方法是建立一个健康参数数据集看到下面成了一个分类器。火车一个支持向量机分类器使用健康的泵参数数据。因为没有错标签使用,对所有样本来自相同的(健康)类。由于参数的变化gydF4y2Ba 和gydF4y2Ba 最象征潜在的缺点,只使用这些参数来训练支持向量机分类器。gydF4y2Ba
数控=大小(HealthyTheta1, 1);rng (2)gydF4y2Ba%的再现性gydF4y2BaSVMOneClass1 = fitcsvm (HealthyTheta1(: 1[3]),(数控,1),gydF4y2Ba…gydF4y2Ba“KernelScale”gydF4y2Ba,gydF4y2Ba“汽车”gydF4y2Ba,gydF4y2Ba…gydF4y2Ba“标准化”gydF4y2Ba,真的,gydF4y2Ba…gydF4y2Ba“OutlierFraction”gydF4y2Ba,0.0455);gydF4y2Ba
测试观察和决策边界的阴谋。国旗的支持向量和潜金宝app在的离群值。看到helper函数gydF4y2BahelperPlotSVMgydF4y2Ba
。gydF4y2Ba
图helperPlotSVM (SVMOneClass1 TestTheta1(: 3[1]))标题(gydF4y2BaSVM为水泵扬程参数异常检测的gydF4y2Ba)包含(gydF4y2Ba“hnn”gydF4y2Ba)ylabel (gydF4y2Ba“hvv”gydF4y2Ba)gydF4y2Ba
边界分离从其余的数据异常值出现在轮廓值为0;这是水平曲线标有“0”的阴谋。离群值是使用红圈标记。类似的分析可以为转矩参数执行。gydF4y2Ba
SVMOneClass2 = fitcsvm (HealthyTheta2(: 1[3]),(数控,1),gydF4y2Ba…gydF4y2Ba“KernelScale”gydF4y2Ba,gydF4y2Ba“汽车”gydF4y2Ba,gydF4y2Ba…gydF4y2Ba“标准化”gydF4y2Ba,真的,gydF4y2Ba…gydF4y2Ba“OutlierFraction”gydF4y2Ba,0.0455);图helperPlotSVM (SVMOneClass2 TestTheta2(: 3[1]))标题(gydF4y2BaSVM为转矩参数异常检测的gydF4y2Ba)包含(gydF4y2Ba“k0”gydF4y2Ba)ylabel (gydF4y2Ba“k2”gydF4y2Ba)gydF4y2Ba
类似的分析可以进行检测其他的缺点,如穿或存款在叶轮出口下故障隔离的上下文中讨论。gydF4y2Ba
使用稳态参数故障隔离功能gydF4y2Ba
如果信息类型的故障(s)在测试系统是可用的,它不仅可以用来创建算法检测错误但也表明他们的类型。gydF4y2Ba
答:区分间隙差距由似然比检测错误gydF4y2Ba
间隙的变化差距可以分为两种类型——小于预期差距(水泵扬程特性图黄线)和更大的比预期的差距(红线)。负载泵测试数据集包含间隙差距断层,断层的性质(大小)是已知的。使用这些故障标签执行我家的分类在以下模式:gydF4y2Ba
模式1:正常间隙差距(健康行为)gydF4y2Ba
模式2:大间隙的差距gydF4y2Ba
模式3:小间隙的差距gydF4y2Ba
url =gydF4y2Ba“//www.tatmou.com/金宝appsupportfiles/predmaint/fault-diagnosis-of-centrifugal-pumps-using-steady-state-experiments/LabeledGapClearanceData.mat”gydF4y2Ba;websave (gydF4y2Ba“LabeledGapClearanceData.mat”gydF4y2Baurl);负载gydF4y2BaLabeledGapClearanceDatagydF4y2BaHealthyEnsemblegydF4y2BaLargeGapEnsemblegydF4y2BaSmallGapEnsemblegydF4y2Ba
乐团包含来自50个独立实验的数据。像以前一样适合稳态线性模型参数化泵头和扭矩数据。gydF4y2Ba
[HealthyTheta1, HealthyTheta2] = linearFit (1, HealthyEnsemble);[LargeTheta1, LargeTheta2] = linearFit (1, LargeGapEnsemble);[SmallTheta1, SmallTheta2] = linearFit (1, SmallGapEnsemble);gydF4y2Ba
情节参数柱状图检查如果有3中分离性模式。这个函数gydF4y2BahistfitgydF4y2Ba
用于绘制直方图和相应的拟合正态分布曲线。看到helper函数gydF4y2BahelperPlotHistogramgydF4y2Ba
。gydF4y2Ba
水泵扬程参数gydF4y2Ba:gydF4y2Ba
helperPlotHistogram (HealthyTheta1 LargeTheta1 SmallTheta1, {gydF4y2Ba“hnn”gydF4y2Ba,gydF4y2Ba“hnv”gydF4y2Ba,gydF4y2Ba“hvv”gydF4y2Ba})gydF4y2Ba
柱状图显示gydF4y2Ba 提供了良好的可分性的三种模式gydF4y2Ba 参数有重叠的概率分布函数(pdf)。gydF4y2Ba
泵转矩参数gydF4y2Ba:gydF4y2Ba
helperPlotHistogram (HealthyTheta2 LargeTheta2 SmallTheta2, {gydF4y2Ba“k0”gydF4y2Ba,gydF4y2Ba“k1”gydF4y2Ba,gydF4y2Ba“k2”gydF4y2Ba})gydF4y2Ba
的扭矩参数,个人可分性不是很好。还有一些均值和方差的变化,可以利用3-mode训练分类器。如果均值或方差pdf文件显示良好的分离,可以快速设计似然比测试的测试数据集分配给最有可能的模式。这是下泵头参数的显示。gydF4y2Ba
让:gydF4y2Ba
:假设头参数属于健康泵模式gydF4y2Ba
:假设头参数属于泵间隙过大的差距gydF4y2Ba
:假设头参数属于泵间隙小的差距gydF4y2Ba
考虑可用的参数集作为测试样本预测模式。分配的预测模式,属于一个联合PDF具有最高的价值(假设gydF4y2Ba
被选中了gydF4y2Ba
如果gydF4y2Ba
)。然后情节结果比较真实的混淆矩阵和预测模式。函数gydF4y2BamvnpdfgydF4y2Ba
用于计算PDF价值和功能gydF4y2BaconfusionmatrixgydF4y2Ba
和gydF4y2Ba的热图gydF4y2Ba
用于可视化混淆矩阵。看到helper函数gydF4y2BapumpModeLikelihoodTestgydF4y2Ba
。gydF4y2Ba
%泵头混淆矩阵gydF4y2Ba图pumpModeLikelihoodTest (HealthyTheta1 LargeTheta1 SmallTheta1)gydF4y2Ba
混乱情节展示了完美的三种模式之间的分离,这并不奇怪的明确分离的直方图gydF4y2Ba 参数。gydF4y2Ba
%泵扭矩混淆矩阵gydF4y2BapumpModeLikelihoodTest (HealthyTheta2 LargeTheta2 SmallTheta2)gydF4y2Ba
结果稍差的扭矩参数。不过,成功率相当高(97%),尽管三种模式的pdf明显重叠。这是因为PDF价值计算影响的位置(平均)以及振幅(方差)。gydF4y2Ba
b .多层次故障模式使用分类树装袋gydF4y2Ba
在本节中,讨论了另一种分类技术时更适合分类中需要更多的模式。考虑以下故障泵的操作模式:gydF4y2Ba
健康的操作gydF4y2Ba
穿在间隙差距gydF4y2Ba
小在叶轮出口的存款gydF4y2Ba
在叶轮进口的存款gydF4y2Ba
磨料磨损叶轮出口gydF4y2Ba
破碎的叶片gydF4y2Ba
空化gydF4y2Ba
分类问题是困难,因为只有三个参数计算,你需要区分7的操作模式。因此,不仅你要比较估计参数为每个故障模式的健康模式,而且彼此——两个gydF4y2Ba方向gydF4y2Ba(增加或减少的值)gydF4y2Ba级gydF4y2Ba(10%比70%改变)必须考虑的参数变化。gydF4y2Ba
这里使用TreeBagger分类器显示了这个问题。树装袋工是一个学习的技术,使用引导聚合(装袋)的特性来创建决策树分类标签数据。50标记数据集收集7模式的操作。水泵扬程参数估计为每个数据集和训练分类器使用的一个子集参数估计从每个模式。gydF4y2Ba
url =gydF4y2Ba“//www.tatmou.com/金宝appsupportfiles/predmaint/fault-diagnosis-of-centrifugal-pumps-using-steady-state-experiments/MultipleFaultsData.mat”gydF4y2Ba;websave (gydF4y2Ba“MultipleFaultsData.mat”gydF4y2Baurl);负载gydF4y2BaMultipleFaultsDatagydF4y2Ba%计算水泵扬程参数gydF4y2BaHealthyTheta = linearFit (1、HealthyEnsemble);Fault1Theta = linearFit (1、Fault1Ensemble);Fault2Theta = linearFit (1、Fault2Ensemble);Fault3Theta = linearFit (1、Fault3Ensemble);Fault4Theta = linearFit (1、Fault4Ensemble);Fault5Theta = linearFit (1、Fault5Ensemble);Fault6Theta = linearFit (1、Fault6Ensemble);gydF4y2Ba%为每个模式操作生成标签gydF4y2Ba标签= {gydF4y2Ba“健康”gydF4y2Ba,gydF4y2Ba“ClearanceGapWear”gydF4y2Ba,gydF4y2Ba“ImpellerOutletDeposit”gydF4y2Ba,gydF4y2Ba…gydF4y2Ba“ImpellerInletDeposit”gydF4y2Ba,gydF4y2Ba“AbrasiveWear”gydF4y2Ba,gydF4y2Ba“BrokenBlade”gydF4y2Ba,gydF4y2Ba“空化”gydF4y2Ba};VarNames = {gydF4y2Ba“hnn”gydF4y2Ba,gydF4y2Ba“hnv”gydF4y2Ba,gydF4y2Ba“hvv”gydF4y2Ba,gydF4y2Ba“条件”gydF4y2Ba};gydF4y2Ba%组装结果表中的参数和相应的标签gydF4y2BaN = 50;T0 = [array2table (HealthyTheta)、repmat(标签(1)[N, 1]));T0.Properties。VariableNames = VarNames;T1 = [array2table (Fault1Theta)、repmat(标签(2)[N, 1]));T1.Properties。VariableNames = VarNames;T2 = [array2table (Fault2Theta)、repmat(标签(3),[N, 1]));T2.Properties。VariableNames = VarNames; T3 = [array2table(Fault3Theta), repmat(Label(4),[N,1])]; T3.Properties.VariableNames = VarNames; T4 = [array2table(Fault4Theta), repmat(Label(5),[N,1])]; T4.Properties.VariableNames = VarNames; T5 = [array2table(Fault5Theta), repmat(Label(6),[N,1])]; T5.Properties.VariableNames = VarNames; T6 = [array2table(Fault6Theta), repmat(Label(7),[N,1])]; T6.Properties.VariableNames = VarNames;%栈的所有数据gydF4y2Ba%为模型创建使用30的50个数据集gydF4y2BaTrainingData = [T0 (1:30,:); T1 (1:30,:), T2 (1:30,:), T3 (1:30,:), T4 (1:30,:), T5 (1:30:); T6 (1:30:)];gydF4y2Ba%创建一个合奏Mdl 20决策树的预测gydF4y2Ba%的标签使用参数值gydF4y2Ba提高(3)gydF4y2Ba%的再现性gydF4y2BaTrainingData Mdl = TreeBagger(20日,gydF4y2Ba“条件”gydF4y2Ba,gydF4y2Ba…gydF4y2Ba“OOBPrediction”gydF4y2Ba,gydF4y2Ba“上”gydF4y2Ba,gydF4y2Ba…gydF4y2Ba“OOBPredictorImportance”gydF4y2Ba,gydF4y2Ba“上”gydF4y2Ba)gydF4y2Ba
Mdl = TreeBagger合奏20袋装决策树:训练X: [210 x3]培训Y: [210 x1)方法:分类NumPredictors: 3 NumPredictorsToSample: 2 MinLeafSize: 1 InBagFraction: 1 SampleWithReplacement: 1 ComputeOOBPrediction: 1 ComputeOOBPredictorImportance: 1接近:[]一会:“AbrasiveWear”“BrokenBlade”“空化”“ClearanceGapWear”“健康”“ImpellerInletDeposit”“ImpellerOutletDeposit”属性,方法gydF4y2Ba
TreeBagger的性能模型可以计算通过研究其误分类概率out-of-bag观测数量的决策树的函数。gydF4y2Ba
%计算袋误差gydF4y2Ba图绘制(oobError (Mdl))包含(gydF4y2Ba树木的数量gydF4y2Ba)ylabel (gydF4y2Ba“误分类概率”gydF4y2Ba)gydF4y2Ba
最后,计算模型的预测性能测试样品上没有用于种植决策树。gydF4y2Ba
ValidationData = [T0 (31:50:); T1 (31:50:); T2 (31:50:); T3 (31:50:); T4 (31:50:); T5 (31:50:); T6 (31:50:)];ValidationData PredictedClass =预测(Mdl);E = 0 (7);gydF4y2Ba%健康数据错误分类gydF4y2BaE(1) =总和(~ strcmp (PredictedClass(1:20),标签{1}));gydF4y2Ba%间隙差距故障误分类gydF4y2BaE(2) =总和(~ strcmp (PredictedClass(21:40),标签{2}));gydF4y2Ba%叶轮出口存款故障误分类gydF4y2BaE(3) =总和(~ strcmp (PredictedClass(41:60),标签{3}));gydF4y2Ba%叶轮进口存款故障误分类gydF4y2BaE(4) =总和(~ strcmp (PredictedClass(61:80),标签{4}));gydF4y2Ba%磨损故障误分类gydF4y2BaE(5) =(~总和strcmp (PredictedClass(81:100),标签{5}));gydF4y2Ba%破碎的叶片故障误分类gydF4y2BaE(6) =总和(~ strcmp (PredictedClass(101:120),标签{6}));gydF4y2Ba%空化故障误分类gydF4y2BaE(7) =总和(~ strcmp (PredictedClass(121:140),标签{7}));图酒吧(E / 20 * 100) xticklabels(标签)组(gca,gydF4y2Ba“XTickLabelRotation”gydF4y2Ba、45)ylabel (gydF4y2Ba“误分类(%)'gydF4y2Ba)gydF4y2Ba
情节表明,磨料磨损和断叶片故障分类错误的验证样本的30%。仔细看看预测标签显示的分类错误的情况下,“AbrasiveWear”和“BrokenBlade”标签得到彼此之间的混杂在一起。这表明,这些故障的症状分类不够的分类器。gydF4y2Ba
总结gydF4y2Ba
精心设计的故障诊断策略可以节省运营成本最小化服务停机和组件更换成本。战略受益于良好的知识用于操作机器的动态结合传感器测量检测和隔离不同的缺点。gydF4y2Ba
这个例子讨论了参数方法基于稳态实验故障检测和隔离。这种方法需要仔细的系统动力学建模和使用(或变换)的参数特性设计故障诊断算法。参数被用于培训异常探测器,进行似然比检测和多分类器的训练。gydF4y2Ba
如何利用分类技术在现实生活中的测试的泵gydF4y2Ba
故障诊断工作流程的一个总结。gydF4y2Ba
运行测试泵的额定速度。打开排出阀不同的设置来控制流量。对于每个阀位,注意泵的速度,流量、压力差异和扭矩。gydF4y2Ba
估计参数的泵头和泵转矩特性(稳态)方程。gydF4y2Ba
如果不确定性/噪音低和参数估计是可靠的,估计的参数可以直接与他们的名义值。他们的相对大小指示故障的性质。gydF4y2Ba
一般的情况下,使用异常检测技术,首先检查是否有故障存在于系统。可以很快通过比较估计参数值与均值和协方差值从历史数据库获得健康的泵。gydF4y2Ba
如果表示一个错误,使用故障分类技术(如似然比分类器的测试或输出)隔离(s)最可能的原因。分类技术的选择将取决于可用的传感器数据,可靠性,故障的严重程度和可用性的历史信息的故障模式。gydF4y2Ba
基于残留分析的故障诊断方法,看到gydF4y2Ba离心泵的故障诊断使用残留分析gydF4y2Ba的例子。gydF4y2Ba
引用gydF4y2Ba
Isermann,罗尔夫,gydF4y2Ba故障诊断的应用。基于模型的状态监测:驱动器,驱动器、机械、植物、传感器、和容错系统gydF4y2Ba版本1,斯普林格出版社柏林海德堡,2011年版。gydF4y2Ba
金宝app支持功能gydF4y2Ba
线性适合泵参数。gydF4y2Ba
函数gydF4y2Bavarargout = linearFit(形式、数据)gydF4y2Ba% linearFit线性最小二乘解的泵头和转矩参数。gydF4y2Ba%gydF4y2Ba% = = 0,如果形式接受单独的输入和返回单独的输出。仅供一个实验。gydF4y2Ba%如果形式= = 1,接受一个合奏和返回紧凑的参数向量。几个实验(整体)。gydF4y2Ba如果gydF4y2Ba形式= = 0 w ={1}数据;Q ={2}数据;H ={3}数据;M =数据{4};n =长度(Q);gydF4y2Ba如果gydF4y2Baisscalar (w), w = w *的(n - 1);gydF4y2Ba结束gydF4y2BaQ = Q (:);H = H (:);M = M (:);预测= [w。^ 2,w。*问,问:^ 2);θ₁=预测\ H;hnn =θ₁(1);hnv =θ₁(2);hvv =θ₁(3);θ=预测\ M; k0 = Theta2(2); k1 = -Theta2(3); k2 = Theta2(1); varargout = {hnn, hnv, hvv, k0, k1, k2};其他的gydF4y2BaH = cellfun (@ (x) x.Head、数据gydF4y2Ba“大学”gydF4y2Ba,0);Q = cellfun (@ (x) x.Discharge、数据gydF4y2Ba“大学”gydF4y2Ba,0);M = cellfun (@ (x) x.Torque、数据gydF4y2Ba“大学”gydF4y2Ba,0);W = cellfun (@ (x) x.Speed、数据gydF4y2Ba“大学”gydF4y2Ba,0);N =元素个数(H);θ₁= 0 (N);θ= 0 (N);gydF4y2Ba为gydF4y2Bakexp = 1: N预测= [W {kexp}。^ 2,W {kexp}。*问{kexp}, {kexp}。^ 2);X1 =预测\ H {kexp};hnn = X1 (1);hnv = x1 (2);hvv = x1 (3);X2 =预测\ M {kexp};k0 = X2 (2);k1 = x2 (3);k2 = X2 (1); Theta1(:,kexp) = [hnn; hnv; hvv]; Theta2(:,kexp) = [k0; k1; k2];结束gydF4y2Bavarargout ={θ₁,θ};gydF4y2Ba结束gydF4y2Ba结束gydF4y2Ba
会员测试可能性。gydF4y2Ba
函数gydF4y2BapumpModeLikelihoodTest (HealthyTheta LargeTheta SmallTheta)gydF4y2Ba% pumpModeLikelihoodTest生成预测基于PDF的价值观和剧情混淆矩阵。gydF4y2Bam1 =意味着(HealthyTheta);c1 = x (HealthyTheta);m2 =意味着(LargeTheta);c2 = x (LargeTheta);m3 =意味着(SmallTheta);c3 = x (SmallTheta);N =大小(HealthyTheta, 1);gydF4y2Ba%真实类gydF4y2Ba% 1:健康:组标签是1。gydF4y2BaX1t = 1 (N, 1);gydF4y2Ba% 2:巨大的差距:集团标签是2。gydF4y2BaX2t = 2 * 1 (N, 1);gydF4y2Ba% 3:小差距:组标签是3。gydF4y2BaX3t = 3 *的(N - 1);gydF4y2Ba%计算预测类的联合PDF的最大值。gydF4y2BaX1 = 0 (N, 3);X2 = 0 (N, 3);X3 = 0 (N, 3);gydF4y2Ba为gydF4y2Bact = 1: NgydF4y2Ba%会员的健康参数样本概率密度gydF4y2Ba:HealthySample = HealthyTheta (ct);x1 = mvnpdf (m1, HealthySample c1);x2 = mvnpdf (HealthySample, m2, c2);x3 = mvnpdf (HealthySample, m3, c3);:X1 (ct) = (X1, x2) x3);gydF4y2Ba%会员泵参数概率密度大差距gydF4y2Ba:LargeSample = LargeTheta (ct);x1 = mvnpdf (m1, LargeSample c1);x2 = mvnpdf (LargeSample, m2, c2);x3 = mvnpdf (LargeSample, m3, c3);:X2 (ct) = (x1, X2) x3);gydF4y2Ba%会员泵参数概率密度对小差距gydF4y2Ba:SmallSample = SmallTheta (ct);x1 = mvnpdf (m1, SmallSample c1);x2 = mvnpdf (SmallSample, m2, c2);x3 = mvnpdf (SmallSample, m3, c3);:X3 (ct) = (x1, x2) X3);gydF4y2Ba结束gydF4y2Ba[~,PredictedGroup] = max ([X1, X2, X3], [], 2);TrueGroup = [X1t;X2t;X3t];C = confusionmat (TrueGroup PredictedGroup);热图(C,gydF4y2Ba…gydF4y2Ba“YLabel”gydF4y2Ba,gydF4y2Ba“实际情况”gydF4y2Ba,gydF4y2Ba…gydF4y2Ba“YDisplayLabels”gydF4y2Ba,{gydF4y2Ba“健康”gydF4y2Ba,gydF4y2Ba很大的差距的gydF4y2Ba,gydF4y2Ba“小缺口”gydF4y2Ba},gydF4y2Ba…gydF4y2Ba“包含”gydF4y2Ba,gydF4y2Ba“预测条件”gydF4y2Ba,gydF4y2Ba…gydF4y2Ba“XDisplayLabels”gydF4y2Ba,{gydF4y2Ba“健康”gydF4y2Ba,gydF4y2Ba很大的差距的gydF4y2Ba,gydF4y2Ba“小缺口”gydF4y2Ba},gydF4y2Ba…gydF4y2Ba“ColorbarVisible”gydF4y2Ba,gydF4y2Ba“关闭”gydF4y2Ba);gydF4y2Ba结束gydF4y2Ba