exponentialDegradationModel
指数退化模型估算剩余使用寿命
描述
使用exponentialDegradationModel
为估算模型指数退化过程组件的剩余使用寿命(原则)。退化模型估计的荷重软化预测当一个监控信号将跨越一个预定义的阈值。组件时指数退化模型是有用的经验累积退化。退化模型的更多信息,请参阅指数退化模型。
配置一个exponentialDegradationModel
对象为特定类型的组件,您可以:
使用历史数据估计模型参数有关的健康一个类似的组件,如多台机器生产的同一规格。为此,使用
适合
。指定模型参数当您创建基于知识的模型组件的退化过程。
一旦你的配置参数退化模型,然后可以预测类似的组件使用的剩余使用寿命predictRUL
。对于一个基本的示例说明原则与退化模型,预测更新原则预测数据的到来。
对于一般信息预测剩余使用寿命,请参阅模型预测剩余寿命。
创建
属性
θ
- - - - - -电流的平均值θ参数
标量
这个属性是只读的。
电流的平均值θ退化模型中的参数,指定为一个标量。退化模型的更多信息,请参阅指数退化模型。
您可以指定θ
使用一个名称-值对论点时:
创建模型。
重置模型使用
重新启动
函数。
否则,该值θ
当你使用的变化更新
函数。
ThetaVariance
- - - - - -当前的方差θ参数
负的标量
这个属性是只读的。
当前的方差θ退化模型中的参数,指定为负的标量。退化模型的更多信息,请参阅指数退化模型。
您可以指定ThetaVariance
使用一个名称-值对论点时:
创建模型。
重置模型使用
重新启动
函数。
否则,该值ThetaVariance
当你使用的变化更新
函数。
β
- - - - - -电流的平均值β参数
标量
这个属性是只读的。
电流的平均值β退化模型中的参数,指定为一个标量。退化模型的更多信息,请参阅指数退化模型。
您可以指定β
使用一个名称-值对论点时:
创建模型。
重置模型使用
重新启动
函数。
否则,该值β
当你使用的变化更新
函数。
BetaVariance
- - - - - -当前的方差β参数
负的标量
这个属性是只读的。
当前的方差β退化模型中的参数,指定为负的标量。退化模型的更多信息,请参阅指数退化模型。
您可以指定BetaVariance
使用一个名称-值对论点时:
创建模型。
重置模型使用
重新启动
函数。
否则,该值BetaVariance
当你使用的变化更新
函数。
ρ
- - - - - -电流之间的相关性θ和β
0
(默认)|标量值的范围(1,- 1)
这个属性是只读的。
电流之间的相关性θ和β,指定为一个标量值的范围[1]。退化模型的更多信息,请参阅指数退化模型。
您可以指定ρ
使用一个名称-值对论点时:
创建模型。
重置模型使用
重新启动
函数。
否则,该值ρ
当你使用的变化更新
函数。
φ
- - - - - -当前截距值
标量
当前截距值ϕ在退化模型中,指定为一个标量。退化模型的更多信息,请参阅指数退化模型。
您可以指定φ
使用一个名称-值对的观点当您创建模型。否则,该值φ
改变当你使用之前估计模型适合
函数。
之前
- - - - - -之前关于模型参数的信息
结构
之前关于模型参数的信息,指定为一个结构有以下字段:
θ
——中值θThetaVariance
——方差θβ
——中值βBetaVariance
——方差βρ
——之间的相关性θ和β。
您可以指定领域的之前
:
当您创建模型。当你指定
θ
,ThetaVariance
,β
,BetaVariance
,或ρ
在创建模型使用名称-值对,相应的领域之前
也是集。使用
适合
函数。在这种情况下,前值是来自适合使用的数据模型。使用
重新启动
函数。在这种情况下,当前的值θ
,ThetaVariance
,β
,BetaVariance
,ρ
复制到相应的字段之前
。模型创建后使用点符号。
退化模型的更多信息,请参阅指数退化模型。
NoiseVariance
- - - - - -加性噪声的方差
1
(默认)|负的标量
加性噪声的方差ε在退化模型中,指定为负的标量。退化模型的更多信息,请参阅指数退化模型。
您可以指定NoiseVariance
:
当你创建的模型使用一个名称-值对
使用一个名称-值对
重新启动
函数模型创建后使用点符号
SlopeDetectionLevel
- - - - - -斜率检测水平
0.05
(默认)|标量值在[0,1]|[]
斜率检测水平确定的开始退化过程,指定为一个标量范围[0,1]。这个值对应的alpha值t斜率的意义。
禁用斜率检测测试集SlopeDetectionLevel
来[]
。
您可以指定SlopeDetectionLevel
:
当你创建的模型使用一个名称-值对
使用一个名称-值对
重新启动
函数模型创建后使用点符号
SlopeDetectionInstant
- - - - - -斜率检测时间
[]
(默认)|标量
这个属性是只读的。
斜率检测时间,即时当检测到显著的斜率,指定为一个标量。的更新
函数设置这个值时SlopeDetectionLevel
不是空的。
CurrentMeasurement
- - - - - -最新的退化特征值
标量
这个属性是只读的。
提供最新的退化特征值更新
函数,指定为一个标量。
InitialLifeTimeValue
- - - - - -最初的生命周期变量值
标量|持续时间
对象
这个属性是只读的。
最初的使用寿命的变量值更新
函数首先呼吁模型,指定为一个标量。
模型检测到一个斜坡的时候,InitialLifeTime
值更改为匹配SlopeDetectionInstant
价值。
CurrentLifeTimeValue
- - - - - -当前终身变量值
标量|持续时间
对象
这个属性是只读的。
最新的变量值提供给生命更新
函数,指定为一个标量。
LifeTimeVariable
- - - - - -生命周期变量
”“
(默认)|字符串
一生变量指定为一个字符串,该字符串包含一个有效的MATLAB®变量名或”“
。
当你训练模型使用适合
功能,如果你的训练数据是:
表
,然后LifeTimeVariable
必须匹配一个变量名称的表吗时间表
,然后LifeTimeVariable
一个变量名称的表或维度时间变量的名称,data.Properties.DimensionNames {1}
您可以指定LifeTimeVariable
:
当你创建的模型使用一个名称-值对
当你调用作为参数
适合
函数模型创建后使用点符号
LifeTimeUnit
- - - - - -一生变量单位
”“
(默认)|字符串
一生变量单位,指定为一个字符串。
一生中变量的单位不需要基于时间的。测试组件的生命可以测量的使用变量,如距离(英里)或燃料消耗(加仑)。
DataVariables
- - - - - -退化变量名
”“
(默认)|字符串
退化变量名称,指定为一个字符串,该字符串包含一个有效的MATLAB函数的名字。退化模型只有一个数据变量。
您可以指定DataVariables
:
当你创建的模型使用一个名称-值对
当你调用作为参数
适合
函数模型创建后使用点符号
UseParallel
- - - - - -使用并行计算的旗帜
假
(默认)|真正的
国旗时使用并行计算拟合值数据之前,指定为真正的
或假
。
您可以指定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。
扩展功能
C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。
使用笔记和限制:
的
predictRUL
,更新
,重新启动
命令支持代码生成金宝appMATLAB编码器™荷重软化模型类型。在生成代码,使用这个模型之前,您必须保存模型saveRULModelForCoder
。例如,看到的生成代码预测剩余寿命。除了只读属性,你不能改变以下属性的退化模型在运行时间:
LifeTimeVariable
LifeTimeUnit
DataVariables
看到
predictRUL
额外的限制代码生成。
自动并行支持金宝app
加速代码通过自动运行并行计算使用并行计算工具箱™。
评估这些模型并行,设置UseParallel
财产真正的
。
版本历史
Apri esempio
如果dispone di una versione modificata di questo esempio。Desideri aprire questo esempio con le modifiche星期二吗?
第一MATLAB
海脂肪clic苏联合国collegamento切corrisponde questo第一MATLAB:
Esegui il第一inserendolo所以nella隙缝di第一MATLAB。我浏览器web非supportano金宝app comandi MATLAB。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。