- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于PCA算法的故障诊断步骤
离线PCA监测模型的计算步骤:
选择监控变量,收集正常工况下的各变量的样本,记为训练样本数据X_train和检验数据X_test;
X_train为n×m矩阵,即n个样本,m个观测变量(即以列向量来看的话,为一个观测变量各个采样点的值)
对样本数据X_train和检验数据X_test进行中心化和标准化处理得到和;
中心化处理:按列对X_train减去观测变量的均值
观测变量某一采样点的值减去这一观测变量所有采样点的平均值
求取一列(即某一观测变量)的平均值
标准化处理:对X_train除以观测变量的标准差(按列(观测变量)进行)
标准差
求出标准化矩阵的协方差矩阵∑;
的协方差矩阵对∑为:
对∑进行特征分解,求得特征值()及其对应的特征向量(负荷向量)
确定主元个数, 确定了主元个数k,就得到了k个特征值,及其对应的特征向量;
A:累计贡献率法:
前k个主元的累积方差贡献率为:
当前k个主元的累积方差贡献率达到85%,则主元个数取k值
B:交叉检验估计法:
将采集到的数据分成k个部分,1部分数据用来建立主元模型,剩下的k-1部分用来作为检验数据去检验所建的模型。如此,建立若干个不同主元个数的模型,并测试所建立的模型,从中选取一个通过检验后误差最小的模型的主元个数作为系统主元个数。
建立PCA主元模型,并进行交叉验证以确定误差最小
按照,求出第i个主元,并依据
求出其主元模型
用带入得到另一主元模型,依据,求出模型误差,确定模型误差最小的那个模型即为主元模型。
计算T2统计量控制限和SPE统计量控制限;
对于样本个数为n,主元个数为k的过程变量X_train, T2统计量服从自由度为k和n一k的F分布,则置信度为а的T2统计量控制上限为:
或
检验水平为а的SPE统计量控制上限为:
,,,是与(1-)分位点对应的标准差
在线过程监测与故障诊断步骤:
采集第i时刻的在线实时数据(为1×m矩阵),并进行中心化和标准化处理得到;
按照,求出的得分向量,依据,求出PCA模型估计量,这里;
计算的T2统计量和SPE统计量,并画出T2统计量和SPE统计量的控制图;
将上述计算结果与T2统计量控制限和SPE统计量控制限比较,以检测过程运行有无异常,当有异常状态发生时,绘制贡献图,找出与故障相关的系统变量:
检查每个观测值x的标准化得分, 并确定造成失控状态的r(ra)个得分:;
计算每个变量相对于失控得分的贡献率是:
当是负时,设它为零;
计算第j个过程变量的总贡献率:
把所有m个过程变量的画在一个曲线图上。PCA_TE仿真程序:
%%TE过程的传统主元分析在Matlab中的仿真程序
%建立模型:
%载入模型数据,以故障11为例
Xtrain = load(G:d11.dat);
Xtrain = double(Xtrain);
%载入测试数据
Xtest = load(G:d11_te.dat);
Xtest = double(Xtest);
%标准化处理:
X_mean = mean(Xtrain); %按列求Xtrain平均值
X_std = std(Xtrain); %求标准差
[X_row,X_col] = size(Xtrain); %求Xtrain行、列数
% for i = 1:X_col
%Xtrain(:,i)=(Xtrain(:,i) - X_mean(i)./X_std(i));
%Xtest(:,i) = (Xtest(:,i) - X_mean(i)./X_std(i));
% end
Xtrain=(Xtrain-repmat(X_mean,X_row,1))./repmat(X_std,X_row,1);
%求协方差矩阵
sigmaXtrain = cov(Xtrain);
%对协方差矩阵进行特征分解,lamda为特征值构成的对角阵,T的列为单位特征向量,且与lamda中的特征值一一对应:
[T,lamda] = eig(sigmaXtrain);
% disp(特征根(由小到大));
% disp(lamda);
% disp(特征向量:);
% disp(T);
%取对角元素(结果为一列向量),即lamd
文档评论(0)