信号的采样与恢复,采样定理的仿真
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
摘要 (2)
正文
一、设计目的与要求 (3)
二、设计原理 (4)
三、设计内容和步骤 (5)
1.用MATLAB产生连续信号y=sin(t)和其对应的频谱 (6)
2.对连续信号y=sin(t)进行抽样并产生其频谱 (7)
3. 通过低通滤波恢复原连续信号 (9)
四、总结 (12)
五、致谢 (13)
六、参考文献 (14)
摘要
数字信号处理是一门理论与实践紧密结合的课程。做大量的习题和上机实验,有助于进一步理解和巩固理论知识,还有助于提高分析和解决实际问题的能力。过去用其他算法语言,实验程序复杂,在有限的实验课时内所做的实验内容少。MATLAB强大的运算和图形显示功能,可使数字信号处理上机实验效率大大提高。特别是它的频谱分析和滤波器分析与设计功能很强,使数字信号处理工作变得十分简单、直观。
本实验设计的题目是:信号的采样与恢复、采样定理的仿真。通过产生一个连续时间信号并生成其频谱,然后对该连续信号抽样,并对采样后的频谱进行分析,最后通过设计低通滤波器滤出抽样所得频谱中多个周期中的一个周期频谱,并显示恢复后的时域连续信号。实验中,原连续信号的频谱由于无法实现真正的连续,所以通过扩大采样点的数目来代替,理论上当采样点数无穷多的时候即可实现连续,基于此尽可能增加采样点数并以此来产生连续信号的频谱。信号采样过程中,通过采样点的不同控制采样频率实现大于或小于二倍最高连续信号的频率,从而可以很好的验证采样定理。信号恢复,滤波器的参数需要很好的设置,以实现将抽样后的信号进行滤波恢复原连续信号。
一、设计目的与要求
1.设计目的和要求
1.掌握利用MATLAB在数字信号处理中的基本应用,并会对结果用所学知识进行分
析。
2.对连续信号进行采样,在满足采样定理和不满足采用定理两种情况下对连续信号
和采样信号进行FFT频谱分析。
3.从采样信号中恢复原信号,对不同采样频率下的恢复信号进行比较分析。
4.基本要求:每组一台电脑,电脑安装MATLAB6.5版本以上软件。
二、设计原理
本实验主要涉及采样定理的相关内容以及低通滤波器恢复原连续信号的相关知识。
1.采样定理:
设连续信号)(t x a 属带限信号,最高截止频率为c Ω,如果采样角频率c s Ω≥Ω2,那么让采样性信号)(t x a ∧
通过一个增益为T 、截止频率为2/s Ω的理想低通滤波器,可以唯一地恢复出原连续信号)(t x a 。否则,c s Ω<Ω2会造成采样信号中的频谱混叠现象,不可能无失真地恢复原连续信号。
对连续信号进行等间隔采样形成采样信号,对其进行傅里叶变换可以发现采样信号的频谱是原连续信号的频谱以采样频率s Ω为周期进行周期性的延拓形成的。 对模拟信号进行采样可以看做一个模拟信号通过一个电子开关S ,设电子开关每隔周期T 和上一次,每次和上的时间为τ,在电子开关的输出端得到采样信号x^a(t)。用公式表示如下:
(2.2.1)
图1 对模拟信号进行采样
2.信号的恢复:
可用传输函数)(ωj G 的理想低通滤波器不失真地将原模拟信号)(t f 恢复出来,只是一种理想恢复。
2
)
2sin()(21
)(t t d e j G t g s s j ΩΩ=Ω=
⎰∞
∞
-ω
ωπ
因为T
s π
2=Ω
T
t T t t g ππ)
sin()(=
(2.2.2) 理想低通滤波器的输入输出)(t f ∧
和)(t y ,
)(t y =)(t f ∧*)(t g =
ττd t g t f )()(-⎰
∞
∞
- (2.2.3)
三、设计内容和步骤
1.用MATLAB产生连续信号y=sin(t)和其对应的频谱
%................时域连续信号和频谱...................................... x1=0:pi/10:(8*pi);
w=linspace(0,8*pi,length(x1));
figure
subplot(211)
plot(x1,sin(x1)); %原时域连续信号y=sin(t)
xlabel('t');ylabel('x(t)');
title('原时域连续信号y=sin(t)');
grid
sin1=sin(x1);
n=0:(length(x1)-1);
subplot(212)
plot(w,fft1(w,sin1,n)); %其对应频域信号Y=FFT(sin(t)) xlabel('w');ylabel('x(w)');
title('其对应频域信号Y=FT(sin(t))');
grid
其中要用到子函数fft1,程序代码如下:
function result=fft1(w,hanshu,n)
a=cell(1,length(w));for i=1:length(w) hanshu.*((exp(-j*(i-1)*pi/100)).^n); a{i}=sum(m); end
for i=1:length(w) result(i)=a{i}; end
子函数通过控制参数n的取值多少可分别计算离散和近似连续信号的频谱值并作为函数值进行返回。
产生图形如下: