📄 qingxieshipin.m
字号:
%**************************************************************************************************************************************************************
% 本程序为主程序,目的是对WM1000发动机故障诊断所布各个测点的加速度响应进行FFT,并绘制时频域响应图和功率谱密度函数图
%
% 中国北方发动机研究所试验测试中心 苏志霄 2006年10月
%**************************************************************************************************************************************************************
m=13; %m取值为测点数目
%读入时间加速度数据,各测点在每个测试时间内时间数据列是一致的,因此统一标识
t=acceleration_X;
len=max(size(t));
acc=zeros(m,len);
acc(1,:)=acceleration_Y';acc(2,:)=acceleration2_Y';acc(3,:)=acceleration3_Y';acc(4,:)=acceleration4_Y';acc(5,:)=acceleration5_Y';acc(6,:)=acceleration6_Y';
acc(7,:)=NONE_Y';acc(8,:)=NONE2_Y';acc(9,:)=NONE3_Y';acc(10,:)=NONE4_Y';acc(11,:)=NONE5_Y';acc(12,:)=NONE6_Y';acc(13,:)=NONE7_Y';
%**************************************************************************************************************************************************************
%将各测点加速度信号进行Fourier变换
f=5000*(0:1023)/2048;
A=zeros(m,2048);
pu=zeros(m,2048);
for i=1:m;
A(i,:)=fft(acc(i,:),2048);
pu(i,:)=sqrt(A(i,:).*conj(A(i,:)))/2048;
end;
%**************************************************************************************************************************************************************
%绘制各个测点的时域频域信号,并标出时域最大加速度值和频域最大加速度对应的频率值
for i=1:m;
figure(i);
subplot(3,1,1);
plot(t,acc(i,:));set(gca,'FontSize',7);grid;xlabel('time/Sec');ylabel('acceleration/g');
title(['The time,frequcncy response and power spectral density of ',num2str(i), ' point, maxacc=',num2str(max(abs(acc(i,:))),'%.1f'),'g']);
hold on;
[a n]=max(abs(acc(i,:)));
plot(t(n),acc(i,n),'r.','MarkerSize',15,'EraseMode','none');
hold off;
subplot(3,1,2);
plot(f,pu(i,1:1024));set(gca,'FontSize',7);xlabel('Frequcncy/Hz');ylabel('acceleration/g');
hold on;
[a n]=max(pu(i,:));
plot(f(n),pu(i,n),'r.','MarkerSize',15,'EraseMode','none');
N=num2str(n/1024*2500,'%.1f');
text(f(n)+30,pu(i,n),[N,'Hz'],'FontSize',8);
hold off;
subplot(3,1,3);
periodogram(acc(i,:),[],'onesided',512,5000);set(gca,'FontSize',7);xlabel('Frequcncy/Hz');ylabel('PSD/dB');title([]);
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -