这个例子显示了作为新的数据从一个机器被测到达如何更新RUL预测。在这个例子中,你使用的训练数据来训练的RUL模型的合奏。然后,通过测试数据从一台机器的序列循环,更新为每个新数据点的RUL预测。该示例示出了RUL预测作为新数据的演变变得可用。
本例使用exponentialDegradationModel
。对于降级RUL模型,当有新的数据点可用时,必须首先更新降级模型,然后才能预测新的RUL值。对于其他RUL模型类型,跳过这个更新步骤。
加载本例中的数据,该数据包含两个变量,测试数据
和TrainingData
。
加载UpdateRULExampleData
测试数据
是含有一些条件指示符的值的表,条件
,记录每一个小时,作为前几个条目显示。
头(TestData, 5)
ANS =5×2表时间条件____ _________ 1 1.0552 2 1.2013 3 0.79781 4 1.09 5 1.0324
TrainingData
是表具有相同的变量作为一个单元阵列测试数据
。每个细胞在TrainingData
代表演进到状态指示符的故障条件
在一个机器的整个生命周期中。
用TrainingData
训练的exponentialDegradationModel
模型预测RUL。该适合
命令估计基于历史记录之前,对模型的参数TrainingData
。该先
属性包含模型参数西塔
,Beta版
,卢
。(对于这些模型参数的详细信息,请参阅exponentialDegradationModel
。)
MDL = exponentialDegradationModel('LifeTimeUnit',“小时”);fit (mdl TrainingData,“时间”,“条件”)mdl.Prior
ANS =同场的结构:的差值为0.0661,的差值为0.0583,的差值为1.8383e-04,的差值为-0.3129
退化模型是最可靠的退化跟踪后,初始坡度出现在条件指标的测量。将坡度检测级别设置为0.1,告诉模型在达到坡度之前不要进行RUL预测。(当您预先知道这些测量是针对一个已经开始退化的组件时,您可以通过设置来禁用斜率检测mdl.SlopeDetectionLevel = []
。)
mdl.SlopeDetectionLevel = 0.1;
定义阈值条件指示符值,表示机器的寿命结束。该RUL是离开之前用于测试机的条件指示器达到该阈值的预测时间。
阈值= 400;
对于RUL预测,假设测试数据
开始于时间Ť
= 1小时,每小时有一个新的数据样本可用。通常,您可以使用每个新的数据点预测一个新的RUL值。对于本例的降级模型,循环遍历测试数据
和更新使用每一个新的数据点的模型更新
命令。然后,检查模型是否检测到足够的坡度变化,以进行可靠的RUL预测。如果是,则使用predictRUL
命令。观察估计的演变,存储在向量估计RUL值和相关的置信区间EstRUL
和CI
, 分别。类似地,存储在阵列中的模型参数ModelParameters
。
N =高度(TESTDATA);EstRUL =小时(零(N,1));CI =小时(零(N,2));ModelParameters =零(N,3);对于T = 1:N CurrentDataSample = TESTDATA(T,:);更新(MDL,CurrentDataSample)ModelParameters(T,:) = [mdl.Theta mdl.Beta mdl.Rho];%计算RUL仅如果数据表明在斜率变化。如果〜的isEmpty(mdl.SlopeDetectionInstant)[EstRUL(吨),CI(T,:)] = predictRUL(MDL,CurrentDataSample,阈值);结束结束
绘制估计的模型参数值的轨迹。在退化数据中检测到斜坡后,这些值变化很快。当更多的数据点可用时,它们趋向于收敛。
时间=小时(1:N) ';tStart = mdl.SlopeDetectionInstant;%斜率检测时刻图(时间,ModelParameters);保持在图([TSTART,TSTART],[ - 1,2],'K--')({传奇'\ THETA(吨)','\β(t)的','\ RHO(吨)',“坡度检测瞬间”},“位置”,'最好')举行从
绘制预测RUL更降解数据可用来观察其演变。有直至在降解的数据中检测的斜率没有新的估计值RUL。在此之后,预计RUL随时间递减,符合市场预期。predictRUL
计算RUL值的统计分布。随着时间的推移,预测的RUL的置信范围会变得更窄。
图(时间,EstRUL,'B.-',时间,CI,'C',TSTART,EstRUL(小时(T开始)),的r *)标题(“在时刻t5估计RUL”)包含('T')ylabel (“估计RUL”)({传奇“预测的RUL”,“信心势必”,“信心势必”,“坡度检测瞬间”})
exponentialDegradationModel
|predictRUL
|更新