精华内容
下载资源
问答
  • PCA故障诊断MATLAB实现

    2018-06-23 13:34:14
    PCA故障诊断MATLAB实现,直接输入训练数据和测试数据即可,编写了SPE和T2统计图
  • 基于matlab的例子群算法故障诊断实例
  • 空调故障诊断matlab程序,有基于神经网络的空调故障诊断代码
  • 故障诊断Matlab常用技巧 1 巴特沃斯低通滤波+傅立叶变换 2 离散傅立叶变换 3 小波变换 4 短时傅立叶等等 具体做法见下处代码 clc close all %%for example fs = 12800; t = (0 :52121)/fs; data = sin(t).*cos(t); ...

    故障诊断Matlab常用技巧

    1 巴特沃斯低通滤波+傅立叶变换

    2 离散傅立叶变换

    3 小波变换

    4 短时傅立叶等等

    具体做法见下处代码

    clc
    close all
    %%for example
    fs = 12800;
    t = (0 :52121)/fs;
    data = sin(t).*cos(t);
    figure
    FFT(data,fs)
    figure
    BFFT(data,fs)
    figure
    XFFT(data,fs)
    figure
    xiaobo(data(30000:40000),fs)
    
    wlen = 512;
    hop = 2;
    
    figure
    shortFouier(wlen,hop,data(30000:40000),fs);
    %巴特沃斯低通滤波+傅里叶变换
    
    function BFFT(data,fs)
        datay = data(30000:40000);  %取中间稳定数据
        lengthNormal = length(datay);
        datay = datay - mean(datay);
        wc = 300/(fs/2);        %低道滤波截止频率为300Hz
        [a,b] = butter(4,wc);
        datay = filter(a,b,datay);
        rifft = fft(datay);
        fz = (0:lengthNormal-1)*fs/lengthNormal;
        P2 = 2*abs(rifft/lengthNormal);
        
        plot(fz(1:lengthNormal/2),P2(1:lengthNormal/2),'r');
        ax = gca;
        ax.XLim = [0 300];
        
        xlabel('频率Hz');
        ylabel('幅值');
        title('频谱图(频域)');
    end
    
    
    %小波去噪
    function data = loseNoise(data)
        lev = 15;
        data = wden(data,'heursure','s','one',lev,'db4');
    end
    
    
    %傅里叶
    function FFT(data,fs)
        datay = data(30000:40000);  %取中间稳定数据
        lengthD = length(datay);
        rifft = fft(datay);
        fz = (0:lengthD - 1)*fs/lengthD;
        P2 = 2*abs(rifft)/lengthD;
        plot(fz(1:lengthD/2),P2(1:lengthD/2),'m');
        ax = gca;
        ax.XLim = [0 300];
        xlabel('频率(Hz)');
        ylabel('幅值');
        title('频谱图');
    end
    
    
    %小波去噪+傅里叶
    function XFFT(data,fs)
        datay = loseNoise(data);
        FFT(datay,fs);
    end
    %短时傅里叶
    
    
    function shortFouier(wlen,hop,data,fs)
        lengthData = length(data);
        Normal1 = wextend(1,'sym',data,round(lengthData/2));% 镜像延拓
        Normal2 = wkeep1(Normal1,lengthData + 1*wlen);
         % 短时 Fouier
        h = hamming(wlen);% 海明窗的窗长
        f = 0:1:200;
        [tfr2,f,t2] = spectrogram(Normal2,h,wlen-hop,f,fs);
        tfr2 = tfr2 * 2/wlen*2;
        imagesc(t2-wlen/fs/2,f,abs(tfr2));
        %[S,F,T,P] = spectrogram(Normal2,h,wlen-hop,f,frequency);
        %surf(T,F,10*log10(P),'edgecolor','none');
        %view(0,1000);
        ylim([-10 200])
        xlabel('Time, s');
        ylabel('Frequency, Hz');
        colorbar
    end
    
    %小波去噪+小波变换
    function xiaobo(data,fs)
        data = loseNoise(data);
        t = (0:length(data)-1)/fs;
        plot(t,data);
        wavename = 'cmor3-3';
        totalscal = 1024;
        Fc = centfrq(wavename);
        c = 2*Fc*totalscal;
        scals = c./(1:totalscal);
        f = 8*scal2frq(scals,wavename,1/fs);
        coefs = cwt(data,scals,wavename);
        figure
        imagesc(t,f,abs(coefs));
        set(gca,'YDir','normal');
        colorbar;
        xlabel('时间 t/s');
        ylabel('频率 f/Hz');
        title('小波时频图');
    end
    
    展开全文
  • KPCA故障诊断matlab实现

    2018-06-23 13:36:18
    使用MATALB编写的KPCA故障诊断程序,输入训练数据和测试数据即可。带有SPE和T2统计图
  • 概率神经网络分类预测基于PNN变压器故障诊断matlab程序.zip
  • PCA故障诊断matlab实现

    2014-04-30 17:05:04
    matlab 实现PCA故障诊断功能,带测试测试数据,可直接运行
  • PCA故障诊断matlab代码,只需输入训练数据和测试数据即可。
  • 基于小波包熵和模糊C均值的轴承故障诊断MATLAB程序,代码中有注释,只要有MATLAB基础,理解起来比较简单。提供了一整套的故障诊断流程,先用小波包熵进行特征提取,再用FCM进行故障诊断
  • 三个并联电压源换流器的故障诊断MATLAB仿真设计.doc
  • Hilbert包络谱分析和Haar小波分析和数学形态学分析相对于时域无量纲参数分析、FFT分析方法,可以更好的观测出故障信号频率,分析故障类型。
  • 基于EMD的包络谱进行故障诊断matlab程序实例

    千次阅读 多人点赞 2019-04-09 10:39:01
    基于EMD的包络谱进行故障诊断matlab程序实例 源地址为http://blog.sina.com.cn/s/blog_574d08530100rbe1.html 刚开始接触滚动轴承故障诊断通常都是一头雾水。 其实只要按部就班就可以了。 滚动轴承故障诊断分为数据...

    基于EMD的包络谱进行故障诊断matlab程序实例

    源地址为http://blog.sina.com.cn/s/blog_574d08530100rbe1.html

    刚开始接触滚动轴承故障诊断通常都是一头雾水。

    其实只要按部就班就可以了。

    滚动轴承故障诊断分为数据采集、数据处理和故障辨识(或故障预测)。

    一接到故障诊断这个课题,你首先要明白,这三个步骤中,你想搞哪块。一般在其中一块有突破,基本上硕士就可以毕业了。

    下面介绍的是用EMD和包络解调进行数据处理,然后人工进行故障辨识。

    故障数据:http://download.csdn.net/source/3107403

    该故障数据是美国凯斯西储大学轴承数据中心的,数据使用方法见:http://blog.sina.com.cn/s/blog_574d08530100p3pr.html

    matlab程序:(内圈故障、外圈故障)

    %转速: 1750转/分
    %转频:29.16(29)
    %采样率:12K
    %轴承型号:6205
    %inner ring:5.4152
    %outer ring:3.5848
    %ge train:0.39828
    %rolling element:4.7135
    %外圈故障:104.57
    %内圈故障:157.94(158)
    %滚动体双故障:137.49
    %滚动体单故障:68.75
    %保持架外圈故障:11.62(12)【外圈静止,内圈转动】
    %-----------------
    %转速1750的6025轴承的深度7的内圈点蚀故障
    %驱动计数端的内圈故障,故障明显,基于EMD的包络解调有效
    %风扇计数端的内圈故障,故障效果不好,基于EMD的包络解调不是很有效
    %基础计数端的内圈故障,故障效果不好,基于EMD的包络解调无效,只能看到转频,故障频率不明显
    load 1750I7.mat;%内圈故障数据
    x=X107_DE_time;%驱动计数段的内圈故障
    fs=12000;%采样率
    N=10240;%采样点数(100倍)
    M=0;%采样数据段的起始位置
    n=M:N-1;
    t=n/fs;%信号时间序列
    X=X107_DE_time(1:N);%装载 驱动计数端的内圈故障数据
    %X=X107_FE_time(1:N);%装载 风扇计数端的内圈故障数据
    %X=X107_BA_time(1:N);%装载 基础计数端的内圈故障数据
    %X=X107_DE_time(1:N)-X107_BA_time(1:N);
    y=X’;%信号幅值序列
    k_in=kurtosis(y);%峭度系数,正常轴承为3左右
    figure;%画原始信号时域和频域图
    subplot(211);plot(t,y);title(‘原始信号时域波形’);
    subplot(212);hua_fft1(y,fs);title(‘原始信号频谱’);
    figure;%原始信号的包络谱
    subplot(211);hua_baoluo1(y,fs,1);title(‘原始信号包络谱’);
    subplot(212);hua_baoluo1(y,fs,1,500);title(‘原始信号部分频段包络谱’);
    imf=emd1(y);%经验模态分解
    figure;%前三个IMF分量
    subplot(311);plot(t,imf(1,:));title(‘IMF1时域波形图’);
    subplot(312);plot(t,imf(2,:));title(‘IMF2时域波形图’);
    subplot(313);plot(t,imf(3,:));title(‘IMF3时域波形图’);
    figure;%前三个IMF分量频谱
    subplot(311);hua_fft(imf(1,:),fs,1);title(‘IMF1频谱’);
    subplot(312);hua_fft(imf(2,:),fs,1);title(‘IMF2频谱’);
    subplot(313);hua_fft(imf(3,:),fs,1);title(‘IMF3频谱’);
    figure;%前三个IMF分量选择频段内的包络谱
    xf1=0;%需要查看的包络谱频率段起点频率
    xf2=1000;%需要查看的包络谱频率段终止频率
    subplot(311);hua_baol(imf(1,:),fs,1,xf1,xf2);title(‘IMF1包络谱’);
    subplot(312);hua_baol(imf(2,:),fs,1,xf1,xf2);title(‘IMF2包络谱’);
    subplot(313);hua_baol(imf(3,:),fs,1,xf1,xf2);title(‘IMF3包络谱’);

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • • 62 • 内 燃 机 与 配 件基于MATLAB的BP网络变压器故障诊断仿真 郑广瑞;王娜 (包头供电局,包 头 014000) 摘要:基于油中溶解气体分析针变压器故障诊断的对传统方法,在诊断过程中各存在不同程度的诊断缺陷。导致...

    • 62 • 内 燃 机 与 配 件基于MATLAB的BP网络变压器故障诊断仿真 郑广瑞;王娜 (包头供电局,包 头 014000) 摘要:基于油中溶解气体分析针变压器故障诊断的对传统方法,在诊断过程中各存在不同程度的诊断缺陷。导致输出的诊断结果 不准确、不能真实、全面反映变压器的真实故障状态。将人工网络算法应用到电力变压器故障诊断中。搭建了 B P 网络诊断模型,实现 对不同类型、不同程度故障的诊断。并运 用MATLAB神经网络工具箱进行仿真实验,较传统的变压器故障诊断的方法明显的提高了 故障诊断准确率。 关键词:DGA; B P 网络;变压器;故障诊断; MATLAB 0 引言 电力变压器是整个电力系统的枢纽设备之一,其运行 状态直接关系到整个系统的安全稳定运行。因此研究变压 器故障诊断具有十分重要的意义。 Dissolve Gas-in-Analysis简称D GA是目前诊断变压 器潜伏性故障最常规方法之一。通过提取变压器油样,对 油中溶解气体的在线监测和分析,可以实时或定时监测 变压器的运行状态,判断其是否正常工作。这是因为,对 于同一性质或不同性质的故障,绝缘物分解产生的气体 含量以及气体种类随故障的严重程度而异,而与绝缘油 的种类无关。因此油中溶解气体的组份和含量在一定程 度上可以反映出变压器故障状态,可将其作为反映变压 器故障的特征量。 B P 人工神经网络是人工智能方法体系成员之一。它 的基本结构是对人脑神经元的简单模拟,所以具有强大的 分布式存储能力、并行处理能力以及自适应学习能力。神 经网络自身的这些特征决定了,它可以处理从输入空间到 输出空间的非线性信息交换,因此可以解决基于油中 D GA的的变压器内部故障的诊断。 1 B P 人工神经网络原理 1.1 B P 神经元 神经网络的最基本的信息单元是人工神经元,其结 构是非线神经单元。 模式为多输入单输出如图1 所示为 神经元的基本模型图。神经元的数学模型输出可用下式 来表达: [yoFl(x„,) jx,=a( w,y„,,0 ) lyi=f( x,) 从人工神经元模型中,任意一个输入x„,(i=1,2,…,m ) 经过预处理单元I 计算后,其输出结果为: y〇,=I(x„,) (1) 其中输入函数为a ,其输入\输出关系为: x,=a( w ,y„,,0 ) ( 2 ) 式(2)中输入函数a 可以是任意函数,棕为权向量,兹 为阈值。净输入量X,经传输函数f ,在f 中产生神经元的输 出y,。B P 神经元的传输函数f 常用S 型函数使其输出值 作者简介:郑广瑞(1984-)男 ,内蒙古丰镇人,硕士研究生,主要从 事电力设备故障诊断研究;王娜(1989-),女 ,河北保定 人 ,硕士研究生,主要从事继电保护整定计算研究。 图1 神经元数学模型范围为0-1之内。 1.2人工神经网络模型 人工神经网络是一种采用误差反向递归传播的多层 前馈神经网络。其网络模型包括输入层,隐级层以及输出 层 ,其中隐级层的数量可以是一个或多个,但是现已证明 三层B P 网络就可以实现任意阶数的非线性映射。B P 网络 模型如图2 所示。 图2 B P 网络模型结构 1.3人工B P 网络原理 人工B P 网络算法其原理是将样表训练学习过程分 成误差反向传播以及正向传播两个过程。首先是将学习数 据从输入层一隐含层一输出层的正向传播过程。经过第一 阶段后,若输出层的实际输出与期望输出相差太大,则转 向第二阶段。第二阶段,通过误差反向传播来修正权系数 和阈值。将它们的误差以某种形式通过输出层一隐含层一 输

    展开全文
  • matlab仿真 样本在文件里,但是是没有解释,只是提供一个编写的思路与样式。大家相互进步吧。 diagnose_ = {'第一缸喷油压力过大','第一缸喷油压力过小',...fprintf(' 样本序号 实际类别 判断类别 正/误 故障类型 \n');
  • 数据分析中主要针对内外圈故障,应用4种故障分析方法分别进行分析.通过对同一转动频率的信号采用不同处理分析方法及同一分析方法对不同转动频率的的比较,可以发现时域无量纲参数分析、FFT分析这两方法可以有效的...
  • 基于支持向量机(SVM)的齿轮箱故障诊断,附有matlab程序f x sgn[(w) (x) b] sgn( ai*yiK(xi,x) b*) (13)*T*i 1n其中xi为支持向量,x为未知向量,(13)式就是SVM,在分类函数形式上类似于一个神经网络,其输出是若干中间...

    基于支持向量机(SVM)的齿轮箱故障诊断,附有matlab程序

    f x sgn[(w) (x) b] sgn( ai*yiK(xi,x) b*) (13)

    *T

    *

    i 1

    n

    其中xi为支持向量,x为未知向量,(13)式就是SVM,在分类函数形式上类似于一个神经网络,其输出是若干中间层节点的线性组合,而每一个中间层节点对应于输入样本与一个支持向量的内积,因此也被叫做支持向量网络,如下图:

    s

    输出y sgn iyiK xi x b

    i 1

    S个支持向量的非线性变换

    输入向量

    图:支持向量机网络图

    由于最终的判别函数中实际只包含未知向量与支持向量的内积的线性组合,因此识别时的计算复杂度取决于支持向量的个数。

    目前常用的核函数形式主要有以下三类,它们都与已有的算法有对应关系。

    T

    (1) 多项式形式的核函数,即K x,xi xxi 1,对应SVM是一个q阶多项式分类器。

    q

    (2) 径向基形式的核函数,即K x,xi exp{ 类器。

    x xi

    2

    2

    },对应SVM是一种径向基函数分

    (3) S形核函数,如 K x,xi tanh(v(xTxi) c), 则SVM实现的就是一个两层的感知器

    神经网络,只是在这里不但网络的权值、而且网络的隐层节点数目也是由算法自动确定的。

    3、支持向量机的拟合算法

    SVM方法也可以很好地应用于函数拟合问题中,其思路与在模式识别中十分相似。首先

    d

    考虑用线性回归函数f(x) w x b拟合数据{xi,yi},i 1,....,n,xi R,yi R的问题,

    并假设所有训练数据都可以在精度ε下无误差地用线性函数拟合,即

    展开全文
  • %对于每一个新样本的SPE值是按照《故障诊断与容错控制》PPT上140页的公式2.64计算的, tts=length(SPE); ttt=1:1:tts; figure(2) plot(ttt,SPE,'g-o'); num=ceil(0.08*m);%去掉总数的10%,将其当作误差 sortts1=sort...
  • matlab预测性维故障诊断故障预测机器学习神经网络
  • 这是小波故障诊断的GUI实现的一篇相关论文,与设计页面相关
  • 极限学习机matlab算法,可运行,用于机械故障诊断
  • matlab预测性维护,故障诊断,故障预测,机器学习
  • 主成分分析方法,用于故障诊断,能够实现故障特征提取
  • 故障诊断技术MATLAB程序光盘.zip
  • 震动故障诊断的相关例程和源码,非常有参考价值
  • PCA故障诊断(Matlab代码),pca算法matlab代码,matlab源码
  • 基于emd的滚动轴承故障诊断驱动计数端的内圈故障,故障明显,基于EMD的包络解调有效风扇计数端的内圈故障,故障效果不好,基于EMD的包络解调不是很有效基础计数端的内圈故障,故障效果不好,基于EMD的包络解调无效,...
  • 基于MATLAB的机械故障诊断技术案例教程程序4
  • 故障诊断代码 matlab

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,107
精华内容 842
关键字:

故障诊断matlab

matlab 订阅