主要内容

exponentialDegradationModel

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

描述

使用exponentialDegradationModel为估算模型指数退化过程组件的剩余使用寿命(原则)。退化模型估计的荷重软化预测当一个监控信号将跨越一个预定义的阈值。组件时指数退化模型是有用的经验累积退化。退化模型的更多信息,请参阅指数退化模型

配置一个exponentialDegradationModel对象为特定类型的组件,您可以:

  • 使用历史数据估计模型参数有关的健康一个类似的组件,如多台机器生产的同一规格。为此,使用适合

  • 指定模型参数当您创建基于知识的模型组件的退化过程。

一旦你的配置参数退化模型,然后可以预测类似的组件使用的剩余使用寿命predictRUL。对于一个基本的示例说明原则与退化模型,预测更新原则预测数据的到来

对于一般信息预测剩余使用寿命,请参阅模型预测剩余寿命

创建

描述

例子

mdl= exponentialDegradationModel创建一个指数退化模型估算原则与默认设置和初始化模型。

例子

mdl= exponentialDegradationModel (名称,值)指定user-settable模型属性使用名称-值对。例如,exponentialDegradationModel (NoiseVariance, 0.5)创建一个指数退化模型与模型噪声的方差0.5。您可以指定多个名称-值对。在报价附上每个属性的名字。

属性

全部展开

这个属性是只读的。

电流的平均值θ退化模型中的参数,指定为一个标量。退化模型的更多信息,请参阅指数退化模型

您可以指定θ使用一个名称-值对论点时:

  • 创建模型。

  • 重置模型使用重新启动函数。

否则,该值θ当你使用的变化更新函数。

这个属性是只读的。

当前的方差θ退化模型中的参数,指定为负的标量。退化模型的更多信息,请参阅指数退化模型

您可以指定ThetaVariance使用一个名称-值对论点时:

  • 创建模型。

  • 重置模型使用重新启动函数。

否则,该值ThetaVariance当你使用的变化更新函数。

这个属性是只读的。

电流的平均值β退化模型中的参数,指定为一个标量。退化模型的更多信息,请参阅指数退化模型

您可以指定β使用一个名称-值对论点时:

  • 创建模型。

  • 重置模型使用重新启动函数。

否则,该值β当你使用的变化更新函数。

这个属性是只读的。

当前的方差β退化模型中的参数,指定为负的标量。退化模型的更多信息,请参阅指数退化模型

您可以指定BetaVariance使用一个名称-值对论点时:

  • 创建模型。

  • 重置模型使用重新启动函数。

否则,该值BetaVariance当你使用的变化更新函数。

这个属性是只读的。

电流之间的相关性θβ,指定为一个标量值的范围[1]。退化模型的更多信息,请参阅指数退化模型

您可以指定ρ使用一个名称-值对论点时:

  • 创建模型。

  • 重置模型使用重新启动函数。

否则,该值ρ当你使用的变化更新函数。

当前截距值ϕ在退化模型中,指定为一个标量。退化模型的更多信息,请参阅指数退化模型

您可以指定φ使用一个名称-值对的观点当您创建模型。否则,该值φ改变当你使用之前估计模型适合函数。

之前关于模型参数的信息,指定为一个结构有以下字段:

  • θ——中值θ

  • ThetaVariance——方差θ

  • β——中值β

  • BetaVariance——方差β

  • ρ——之间的相关性θβ

您可以指定领域的之前:

  • 当您创建模型。当你指定θ,ThetaVariance,β,BetaVariance,或ρ在创建模型使用名称-值对,相应的领域之前也是集。

  • 使用适合函数。在这种情况下,前值是来自适合使用的数据模型。

  • 使用重新启动函数。在这种情况下,当前的值θ,ThetaVariance,β,BetaVariance,ρ复制到相应的字段之前

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

退化模型的更多信息,请参阅指数退化模型

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

您可以指定NoiseVariance:

  • 当你创建的模型使用一个名称-值对

  • 使用一个名称-值对重新启动函数

  • 模型创建后使用点符号

斜率检测水平确定的开始退化过程,指定为一个标量范围[0,1]。这个值对应的alpha值t斜率的意义。

禁用斜率检测测试集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,“时间”,“条件”)

负载测试数据,这是一个run-to-failure退化剖面测试组件。测试数据是一个表相同的生活时间和数据变量作为训练数据。

负载(“expTestData.mat”)

基于知识的退化特性限制,定义一个阈值条件指标的值表示组件的临终。

阈值= 500;

假设您测量组件条件指标每小时150小时。每次测量更新训练有素的退化模型。然后,组件的剩余使用寿命预测在150小时。的原则是预测时间降解功能将通过指定的阈值。

t = 1:15更新(mdl expTestData (t,:))结束estRUL = predictRUL (mdl阈值)
estRUL =持续时间136.45人力资源

估计原则137年小时,这表明总预测寿命287年个小时。

负载观测数据。

负载(“expTestData.mat”)

对于这个示例,假设训练数据不是历史数据,而是实时观察组件的状态。

基于知识的退化特性限制,定义一个阈值条件指标的值表示组件的临终。

阈值= 500;

创建一个任意的先验分布指数退化模型数据和指定的噪声方差。同时,指定的生活时间和数据观测数据的变量名。

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

观察组件条件One hundred.小时,每次观测后更新退化模型。

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

One hundred.小时,预测组件的荷重软化使用当前生命时间价值存储在模型中。此外,获得相关的置信区间估计的原则。

estRUL = predictRUL (mdl阈值)
estRUL =持续时间221.38人力资源

估计原则234年小时,这表明总预测寿命334年个小时。

算法

全部展开

引用

[1]Gebraeel Nagi。“Sensory-Updated组件剩余寿命分布与指数退化模式。”IEEE自动化科学与工程。3卷,4号,2006年,页382 - 393。

扩展功能

版本历史

介绍了R2018a