【故障诊断】基于BP神经网络的电机数据特征提取与故障诊断软件设计附matlab代码 |
您所在的位置:网站首页 › bp的区别特征 › 【故障诊断】基于BP神经网络的电机数据特征提取与故障诊断软件设计附matlab代码 |
✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 神经网络预测 雷达通信 无线传感器 电力系统 信号处理 图像处理 路径规划 元胞自动机 无人机 ⛄ 内容介绍伴随我国经济发展突飞猛进,电气化的应用越来越广,异步电动机因其经济、安全、高效、低耗被广泛应用于工业生产的各个领域。电动机一旦发生故障不仅会损坏电机本身,还会影响整个工业生产环节,从而造成巨大的经济损失。因此,如何对电机加强保护,对电机故障诊断提出了更高要求。本文对人工神经网络的基本原理进行了研究。利用MATLAB软件,建立基于BP网络的故障诊断结构,根据故障样本数据对网络进行训练,从而实现了对电机的诊断。 ⛄ 部分代码clear all close all %%%%%%%%加载数据 addpath(genpath('../.')) data=importdata('s9.txt'); data1=data(1:3000,:); %%%%%%%%01--时域分析 %%%%%%%02频域分析--傅里叶变换 fs=1000; y=data1; figure subplot(211);plot(y,'k'); title('原始数据','Fontname', '宋体'); subplot(212); [y_f,y_ft,nfft]=hua_fft(y,fs,1); plot(y_f,2*abs(y_ft(1:nfft/2))/length(y));% % subplot(313);hua_fft(y,fs,1,0,250); title('FFT-show') %%%%%%%%%%%%%%%%%%%%%%%%%%% x=y; nfft=64; % FFT长度 X=fft(x,nfft); % FFT分析 ff=(0:(nfft/2-1))*fs/nfft; % 频率刻度 n2=1:nfft/2; % 正频率索引号 X_abs=abs(X(n2))*2/nfft; % 正频率部分的幅值谱 fe=50; % 中心频率 D=10; % 细化倍数f [y,freq]=exzfft_ma(x,fe,fs,nfft,D); % 细化分析 % 作图 figure subplot 311; plot(x,'k'); xlabel('时间/s','Fontname', '宋体'); ylabel('幅值','Fontname', '宋体'); title('时间序列','Fontname', '宋体'); subplot 312; plot(ff,X_abs,'k'); xlabel('频率/Hz','Fontname', '宋体'); ylabel('幅值','Fontname', '宋体'); title('细化分析前频谱','Fontname', '宋体'); grid; subplot 313; plot(freq,abs(y),'k'); grid; % set(gca, 'XTickMode', 'manual', 'XTick'); % set(gca, 'YTickMode', 'manual', 'YTick'); xlabel('频率/Hz','Fontname', '宋体'); ylabel('幅值','Fontname', '宋体'); title('细化分析的频谱','Fontname', '宋体'); set(gcf,'color','w'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% xn=data1; ls=length(xn); w_name='db6'; %对信号进行小波分解 [c,l]=wavedec(xn,5,w_name);%5层小波分解(层:尺度) ca5=appcoef(c,l,w_name,5);% 提取一维小波变换低频系数(第五层的逼近系数) cd5=detcoef(c,l,5);%提取一维小波变换高频系数 (细节系数) cd4=detcoef(c,l,4); cd3=detcoef(c,l,3); cd2=detcoef(c,l,2); cd1=detcoef(c,l,1); %%%%%%%%%%%%%%%%%%%%%%%%%%% % x=awgn(y1,SNR); %消除噪声处理 x2=xn;%awgn(xn,2); [thr,sorh,keepapp]=ddencmp('den','wv',x2); s1=wdencmp('gbl',c,l,w_name,3,thr,sorh,keepapp); figure; subplot(211); plot(xn,'k'); title('原始信号','Fontname', '宋体'); subplot(212); plot(s1,'k'); title('小波去噪后的信号','Fontname', '宋体'); %%%%%%%%%%%%%%%%%%%%%%%%%%希尔伯特变换------------- x=data1; Emd_result = emd(x);%(x为要处理的信号) [A,fa,tt] = hhspectrum(Emd_result); [E2,ttt,ff] = toimage(A,fa); % cemd_visu(x,1:length(x),Emd_result); disp_hhs(E2); ⛄ 运行结果[1]陈轶. 基于BP神经网络的模拟电路故障诊断[D]. 苏州大学. [2]罗彩玉. 基于BP人工神经网络的电动机故障诊断[J]. 科技创业家, 2013(11):2. ⛳️ 完整代码❤️部分理论引用网络文献,若有侵权联系博主删除 ❤️ 关注我领取海量matlab电子书和数学建模资料 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |