exponentialDegradationModel

估计剩余使用寿命的指数退化模型

描述

使用exponentialDegradationModel为估计元件的剩余使用寿命(RUL)而建立一个指数衰减过程的模型。退化模型通过预测监测信号何时会越过一个预定义的阈值来估计RUL。指数退化模型是有用的,当组件经历累积退化。有关降级模型的更多信息,请参见指数退化模型

配置一个exponentialDegradationModel对象,你可以:

  • 估计使用关于相似的部件,例如制造为相同规格的多个机器的集合的健康历史数据的模型参数。要做到这一点,利用适合

  • 当你根据你的组件降解过程的知识创建模型指定模型参数。

一旦您配置退化模型的参数,你可以使用则预测类似组件的剩余使用寿命predictRUL。用于说明劣化模型RUL预测一个基本的例子,请参见更新RUL预测的数据到达

有关预测剩余使用寿命的一般信息,请参阅预测剩余使用寿命的模型

创建

描述

例子

MDL= exponentialDegradationModel创建一个指数降级模型用于估计RUL,并使用默认设置初始化该模型。

例子

MDL= exponentialDegradationModel(名称,值)使用名称-值对指定用户可设置的模型属性。例如,exponentialDegradationModel( 'NoiseVariance',0.5)创建具有的模型噪声方差的指数衰减模型0.5。可以指定多个名称 - 值对。在引号中每个属性的名称。

属性

展开全部

此属性是只读的。

当前平均值θ退化模型中的参数,指定为标量。有关降级模型的更多信息,请参见指数退化模型

您可以指定西塔使用名称 - 值对的说法,当你:

  • 创建模型。

  • 使用重置模型重新开始函数。

否则,值西塔当您使用改变更新函数。

此属性是只读的。

目前方差θ参数在退化模型,指定为一个非负的标量。有关降级模型的更多信息,请参见指数退化模型

您可以指定ThetaVariance使用名称 - 值对的说法,当你:

  • 创建模型。

  • 使用重置模型重新开始函数。

否则,值ThetaVariance当您使用改变更新函数。

此属性是只读的。

当前平均值β退化模型中的参数,指定为标量。有关降级模型的更多信息,请参见指数退化模型

您可以指定Beta版使用名称 - 值对的说法,当你:

  • 创建模型。

  • 使用重置模型重新开始函数。

否则,值Beta版当您使用改变更新函数。

此属性是只读的。

目前方差β参数在退化模型,指定为一个非负的标量。有关降级模型的更多信息,请参见指数退化模型

您可以指定BetaVariance使用名称 - 值对的说法,当你:

  • 创建模型。

  • 使用重置模型重新开始函数。

否则,值BetaVariance当您使用改变更新函数。

此属性是只读的。

之间的电流相关θβ,指定为在范围[-1,1]的标量值。有关降级模型的更多信息,请参见指数退化模型

您可以指定ρ使用名称 - 值对的说法,当你:

  • 创建模型。

  • 使用重置模型重新开始函数。

否则,值ρ当您使用改变更新函数。

当前截距值φ在退化模型,指定为一个标量。有关降级模型的更多信息,请参见指数退化模型

您可以指定φ使用名称 - 值对的说法,当你创建模型。否则,值φ当你估计模型之前使用的变化适合函数。

模型参数的先验信息,指定为具有以下字段的结构:

  • 西塔- 的平均值θ

  • ThetaVariance- 方差θ

  • Beta版- 的平均值β

  • BetaVariance- 方差β

  • ρ- 相关性θβ

您可以指定领域:

  • 当您创建模型。当您指定西塔,ThetaVariance,Beta版,BetaVariance, 要么ρ在模型创建使用名称 - 值对,的相应字段也设置。

  • 使用适合函数。在这种情况下,现有值从用于拟合模型中的数据得出的。

  • 使用重新开始函数。在这种情况下,当前值西塔,ThetaVariance,Beta版,BetaVarianceρ被复制到的相应字段

  • 在模型创建后使用点符号。

有关降级模型的更多信息,请参见指数退化模型

加性噪声方差ε在退化模型中,指定为非负的标量。有关降级模型的更多信息,请参见指数退化模型

您可以指定NoiseVariance:

  • 使用名称 - 值对,当你创建模型

  • 使用名称 - 值对与重新开始功能

  • 使用点符号模型创建后

斜率检测电平,用于确定降解过程的开始时,指定为在范围[0,1]一个标量。该值对应于在斜率显着性的t-检验的alpha值。

要禁用坡度检测测试,请设置SlopeDetectionLevel[]

您可以指定SlopeDetectionLevel:

  • 使用名称 - 值对,当你创建模型

  • 使用名称 - 值对与重新开始功能

  • 使用点符号模型创建后

此属性是只读的。

斜率检测时间,当检测到显著斜率,指定为标量,它是本。的更新功能设置此值时SlopeDetectionLevel不是空的。

此属性是只读的。

提供最新的退化特征值更新功能,指定为一个标量。

此属性是只读的。

初始生存期变量的值更新函数首先被调用的模型,指定为一个标量。

当模型检测到斜坡,将InitialLifeTime值被改变以匹配SlopeDetectionInstant值。

此属性是只读的。

供给到最新寿命变量值更新功能,指定为一个标量。

终身变量,指定为字符串,其中包含一个有效的MATLAB®变量名或”“

当您使用训练模型适合功能,如果你的训练数据是:

  • 表格,然后LifeTimeVariable必须匹配表变量名称之一

  • 时间表,然后LifeTimeVariable在表或时间变量的维度名称变量名称之一,data.Properties.DimensionNames {1}

您可以指定LifeTimeVariable:

  • 使用名称 - 值对,当你创建模型

  • 作为一个参数适合功能

  • 使用点符号模型创建后

寿命可变单元,指定为字符串。

寿命变量的单位并不需要是基于时间的。测试部件的寿命可以在使用可变的术语,诸如行进的距离(英里)或燃料消耗(加仑)来测量。

降级变量名,指定为包含一个有效的MATLAB变量名的字符串。退化模型只有一个数据变量。

您可以指定DataVariables:

  • 使用名称 - 值对,当你创建模型

  • 作为一个参数适合功能

  • 使用点符号模型创建后

标志用于使用并行拟合从数据先前值时的计算,如任一指定的真正要么

您可以指定UseParallel:

  • 使用名称 - 值对,当你创建模型

  • 使用名称 - 值对与重新开始功能

  • 使用点符号模型创建后

用于簿记的附加模型信息,指定为任何数据类型或格式。模型没有使用这些信息。

您可以指定用户数据:

  • 使用名称 - 值对,当你创建模型

  • 使用点符号模型创建后

对象的功能

适合 使用历史数据估计剩余使用寿命模型的参数
predictRUL 估计剩余使用寿命要测试部件
更新 更新剩余使用寿命模型退化后的参数分布
重新开始 重置剩余使用寿命退化模型

例子

全部折叠

负荷训练数据。

加载('expTrainVectors.mat')

训练数据是列向量的单元数组。每个列向量都是一个组件的退化特性概要。

创建使用默认设置的指数衰减模型。

mdl = exponentialDegradationModel;

利用训练数据训练退化模型。

fit (mdl expTrainVectors)

创建指数退化模型,并配置一个已知的先验分布。

mdl = exponentialDegradationModel (“θ”,0.5%,'ThetaVariance',0.003,...“测试版”,0.3,'BetaVariance'0.002,...的ρ,0.1);

中存储指定的先验分布参数模型的属性。

mdl.Prior
ans =结构体字段:西塔:0.5000 ThetaVariance:0.0030 Beta版:0.3000 BetaVariance:0.0020卢:0.1000

该模型的当前的后验分布也被设定以匹配指定的先验分布。例如,检查相关参数的后值。

mdl.Rho
ANS = 0.1000

负荷训练数据。

加载('expTrainTables.mat')

训练数据是表的单元数组。每个表都是一个组件的降级功能配置文件。中的生命时间度量值“时间”在变量和相应的降解特征测量“条件”变量。

创建一个默认设置的指数衰减模型。

mdl = exponentialDegradationModel;

利用训练数据训练退化模型。指定的续航时间和数据变量名。

fit (mdl expTrainTables,“时间”,“条件”)

负荷训练数据。

加载('expTrainTables.mat')

训练数据是表的单元数组。每个表都是一个组件的降级功能配置文件。中的生命时间度量值“小时”在变量和相应的降解特征测量“条件”变量。

创建一个指数退化模型,并指定续航时间变量单位。

mdl = exponentialDegradationModel ('LifeTimeUnit',“小时”);

利用训练数据训练退化模型。指定的续航时间和数据变量名。

fit (mdl expTrainTables,“时间”,“条件”)

负载测试数据,其是用于测试部件的运行至故障降解曲线。测试数据是相同的续航时间和数据变量作为训练数据的表。

加载('expTestData.mat')

基于降解功能限制的知识,定义阈值条件指示符值,表示结束的寿命的部件的。

阈值= 500;

假设你测量部件状态指示符每个小时150小时。更新与每个测量训练的退化模型。然后,预测部件的剩余使用寿命,在150小时。该RUL是预测时间处的降解特征将通过指定阈值。

T = 1:150的更新(MDL,expTestData(T,:))结束estRUL = predictRUL (mdl阈值)
estRUL =持续时间136.63人力资源

估计RUL约为137小时,表示预期寿命的总和287个小时。

负载观测数据。

加载('expTestData.mat')

在这个例子中,假设训练数据是不是历史数据,但零件条件的,而实时观测。

基于降解功能限制的知识,定义阈值条件指示符值,表示结束的寿命的部件的。

阈值= 500;

创建的指数衰减模型任意先验分布数据可以与指定的噪声方差。此外,指定观测数据的续航时间和数据变量名。

mdl = exponentialDegradationModel (“θ”1,'ThetaVariance'1 e6,...“测试版”1,'BetaVariance'1 e6,...'NoiseVariance',0.003,...'LifeTimeVariable',“时间”,“DataVariables”,“条件”,...'LifeTimeUnit',“小时”);

观察该组件条件100小时,每次观测后更新退化模型。

我= 1:10 0更新(mdl expTestData(我,:));结束

100小时,使用模型中存储的当前生命时间值预测组件的RUL。同时,获得与估计的RUL相关的置信区间。

estRUL = predictRUL (mdl阈值)
estRUL =持续时间221.38小时

估计RUL约为234小时,表示预期寿命的总和334个小时。

算法

展开全部

参考

[1]Gebraeel Nagi。传感器更新的剩余寿命分布的组件与指数退化模式。IEEE交易的自动化科学与工程。第3卷,第4期,2006年,第382-393页。

扩展功能

介绍了R2018a