0
点赞
收藏
分享

微信扫一扫

Matlab 如何选择采样频率和信号长度


Matlab 如何选择采样频率和信号长度

Matlab 如何选择采样频率和信号长度_信号处理

% Matlab 如何选择采样频率和信号长度
% 
% pr2_2_10  

clear; clc; close all;

M = 256; % 数据长度M
fs = 10; % 采样频率fs
f1 = 1; f2 = 2.5; f3 = 3; % 设置3个正弦信号的频率
t = (0:M-1)/fs; % 设置时间序列
x = cos(2*pi*f1*t)+cos(2*pi*f2*t)+cos(2*pi*f3*t); % 计算出信号波形

X1 = fft(x,20); % FFT变换
X2 = fft(x,40);
X3 = fft(x,128);
freq1 = (0:10)*fs/20; % 计算3个信号在频域的频率刻度
freq2 = (0:20)*fs/40;
freq3 = (0:64)*fs/128;

% 作图
plot(freq1,abs(X1(1:11)),'g--',freq2,abs(X2(1:21)),'r:',freq3,abs(X3(1:65)),'b-');
legend('N=20','N=40','N=128');
title('不同N值的DFT变换');
xlabel('频率/Hz'); 
ylabel('幅值');
set(gcf,'color','w');

Matlab 如何选择采样频率和信号长度_采样频率_02

当 N=128 时,峰值更明显了,但由于栅栏现象和矩形窗泄漏存在,3个正弦信号虽然输入时幅值相同,但从频域上反映出的幅值各不相同。

举报

相关推荐

0 条评论