matlab 采样点数,信号频率、采样频率、采样点数

f -- 信号频率

fs -- 采样频率

N -- 采样点数

信号频率(f):

信号频率就是信号的频率,影响的是信号的发生函数。

采样点数(N):

采样点数是一次向PC端发送的数据量包含的点数,采样点数决定了每次传到PC内的数据量。

就是每个周期采了几个点。N =T/dt ;dt = 1/fs.

FFT、IFFT的采样点数必须是2的指数,在频域一个频点对应时域的一次采样,所以FFT的点数自然就是2048、1024、512、256、128.

采样率

采样率决定了采样的精度。

采样频率(Hz):

波形中相邻两点间隔的实践就是采样频率(fs)的倒数。

采样频率必须大于信号的频率(不失真),fs/N(频率分辨率)越小,精度越高,通过补0增加的FFT点数无法提高FFT精度。

产生信号的总时间长度t = dt*采样数 = 采样数/fs

信号周期T = 1/f ;

产生信号的周期数 = 总时间长度/T = 总时间长度信号频率 = 采样数/采样频率信号频率

采样针对于信号处理来说的,模拟信号的数字信号处理方法就是将待处理的模拟信号经过采样、量化、编码形成数字信号,并利用数字信号处理方法对采样得到的数字信号进行处理。

绘图:

%% 信号采样

% 信号生成

f = 200; % 信号频率

Tf = 1/f; % 0.005 一个信号周期的时间

% t = (0:0.00001:20*Tf); % 信号的时间范围 ,总的传播时间

t = linspace(0,20*Tf,1000*20); % 原信号每个周期内的点数为1000个点

% Tn = t(end)/Tf % 20 信号周期数,一共重复了20次

x = cos(2*pi*f*t); % 生成的信号

% 采样

N =50; % 自定义采样点数 一个周期的采样点数

fs = f*N; % 采样频率

dt = 1/fs; % 采样间隔,采样间隔可以理解为采样信号的周期,周期 = 1/频率

% T = (0:N-1)*dt; % 定义采样的每个时间点 一个周期采样时间

T = 0:dt:t(end); % 整个信号时间范围内采样

x1 = cos(2*pi*f*T); % 对信号进行采样

subplot(311);

plot(t,x); %原始信号

title('原始信号');

ylim([-1 1]);

subplot(312);

plot(t,x,'b',T,x1,'rp'); % 采样点

title('采样过程');

ylim([-1 1]);

subplot(313)

plot(T,x1) %采样信号

title('采样后的信号')

ylim([-1 1])

xlabel('时间/s')

采样点数为50.jpg

采样点数为10.jpg

采样点数为5.jpg

从图中可以看出,采样点数越多,采样频率越大,采样后的信号与原信号越精确,否则会出现波形失真。

你可能感兴趣的:(matlab,采样点数)