|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
F:\未命名.BMPsampleFreq = 1000;%采样频率
sampleLength =1000;%采样点数
t=0:1/sampleFreq:(sampleLength-1)/sampleFreq;
Data=sin(2*pi*300*t).*sin(2*pi*50*t)+sin(2*pi*300*t);
Data1=Data+randn(1,length(Data));
time_plot_s = 0:1/sampleFreq:(sampleLength-1) / sampleFreq; %建立离散时间列向量
fft_plot_Hz = sampleFreq*(1:sampleLength/2)/sampleLength;
figure;
subplot(311)
plot(time_plot_s,Data1);
title('原始信号时域波形');
ylabel('振幅/m/s^2');
xlabel('时间/s');
subplot(312)
Y=fft(Data1);
Pyy=abs(Y)*2/sampleLength;%求幅值 乘上后面的2/N得到正确幅值
title('傅里叶变换的频谱图');
ylabel('振幅/m/s^2');
xlabel('频率/Hz');
f=(0:length(Pyy)-1)'*sampleFreq/length(Pyy);%进行对应的频率转换
plot(f(1:sampleLength/2),Pyy(1:sampleLength/2));%做频谱图
subplot(313)
y=hilbert(Data1) ;%da是滤波后的信号
y=abs(y);
y=y-mean(y);
p=abs(fft(y,sampleLength))*2/sampleLength;
title('包络图');
plot((0:sampleLength/2-1)/sampleLength*sampleFreq,p(1:sampleLength/2)); %fs是采样频率
|
|