Matlab怎样进行信号的重建这个题先让把x(t)=sin(2πt)按照T=0.4抽样,这一步我已经做了,然后又让重建该信号并且要求step=0.01,应该如何实现重建,我抽样的代码如下:clear;clc;clf;t=-20:0.01:20;subpl
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/24 22:05:51
Matlab怎样进行信号的重建这个题先让把x(t)=sin(2πt)按照T=0.4抽样,这一步我已经做了,然后又让重建该信号并且要求step=0.01,应该如何实现重建,我抽样的代码如下:clear;clc;clf;t=-20:0.01:20;subpl
Matlab怎样进行信号的重建
这个题先让把x(t)=sin(2πt)按照T=0.4抽样,这一步我已经做了,然后又让重建该信号并且要求step=0.01,应该如何实现重建,我抽样的代码如下:
clear;clc;clf;
t=-20:0.01:20;
subplot(2,1,1);x=sin(2*pi*t);
plot(t,x);
t2=-20:0.4:20;
x2=sin(2*pi*t2);
subplot(2,1,2);stem(t2,x2);
Matlab怎样进行信号的重建这个题先让把x(t)=sin(2πt)按照T=0.4抽样,这一步我已经做了,然后又让重建该信号并且要求step=0.01,应该如何实现重建,我抽样的代码如下:clear;clc;clf;t=-20:0.01:20;subpl
clear all;
clf;
N = 200; %采样数量
F = 1; %被采样信号频率1Hz
Ts = 0.1; %采样间隔
Fs = 1/Ts; %采样频率
T = N*Ts; %采样时长
n = 0:N-1; %时域采样序列(N个采样)
NP = floor( (1/F)/(Ts) ); %1个周期采样点数
%为了清楚显示波形,只画1个周期
nTs = n*Ts; %时域采样时间序列
f = sin(2*pi*nTs); %时域采样,
subplot(211);
stem(nTs(1:NP),f(1:NP));
title(['采样信号,Ts=' num2str(Ts)]);
%下面是为了更好地显示出待采样信号的波形
Ts1 = 0.001;
NP1 = floor( (1/F)/(Ts1) );
t1 = [0:NP1-1]*Ts1;
f1 = sin(2*pi*t1);
hold on;
plot(t1,f1,'r-');
hold off;
%下面开始用内插法重建信号
%采样信号: x(n)=f
%采样间隔: T=Ts
%原理(内插法): y(t)=Σx(n)sinc((t-nTs)/Ts)
t1 = 0; %开始时间
t2 = 1/F; %结束时间(取信号的1个周期)
Dt = Ts/2;
t=t1:Dt:t2;
fa = f * sinc( Fs*(ones(length(nTs),1)*t - nTs'*ones(1,length(t))) );
subplot(212);
plot(t,fa);
title('重建信号(内插法)');