利用MATLAB实现SA信号的抽样与重构_第1页
利用MATLAB实现SA信号的抽样与重构_第2页
利用MATLAB实现SA信号的抽样与重构_第3页
利用MATLAB实现SA信号的抽样与重构_第4页
利用MATLAB实现SA信号的抽样与重构_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、利用MATLAB实现Sa信号的抽样与重构仿真目 录中文摘要I1 概论21.1 MATLAB的介绍21.2 课程设计的目的和要求32 MATLAB实现连续信号采样与重构的理论基础42.1 连续时间信号42.2 信号的采样4 2.3 信号的重构63 MATLAB实现Sa信号的抽样与重构仿真程序分析83.1 Sa信号的临界采样及重构93.1.1 程序实现及运行结果图93.1.2 程序分析113.2 Sa信号的过抽样及重构113.2.1 程序实现及运行结果图113.2.2 程序分析143.3 Sa信号的欠抽样及重构143.3.1 程序实现及运行结果图143.3.2 程序分析174 总结18参考文献19

2、201 概论1.1 MATLAB的介绍 MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple、MathCAD并称为四大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。M

3、ATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的M

4、ATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够

5、及时地报告出现的错误及进行出错原因分析。本文基于Matlab 强大功能来分析Sa 信号的抽样与重构,由于Sa 信号易于生成,分析方便,故在许多实际应用与仿真中(如数字通信系统等)运用较为广泛。对于连续时间信号的处理,往往将它转换为相应的离散信号(或数字信号),并进行加工和处理,然后再将处理后的离散信号转换为连续时间信号。而抽样定理为连续信号与离散时间信号的相互转换提供了理论依据。1.2 课程设计的目的和要求本次课程设计应用MATLAB实现连续信号的采样与重构仿真。了解MATLAB软件,学习应用MATLAB软件的仿真技术。它主要侧重于某些理论知识的灵活运用,以及一些关键命令的掌握,理解,分析等。

6、初步掌握线性系统的设计方法,培养独立工作能力。加深理解采样与重构的概念,掌握利用MATLAB分析系统频率响应的方法和掌握利用MATLAB实现连续信号采用与重构的方法。计算在临界采样、过采样、欠采样三种不同条件下重构信号的误差,并由此总结采样频率对信号重构误差的影响。离散正弦序列的MATLAB表示与连续信号类似,只不过是用stem函数而不是用plot函数来画出序列波形。命令窗口没打开时,从“Desktop”菜单中选择“Command Window”选项可以打开它。“”符号是输入函数的提示符,在提示符后面输入数据和运行函数。退出MATLAB时,工作空间中的内容随之清除。可以将当前工作中的部分或全部

7、变量保存在一个MAT文件中,它是一种二进制文件,扩展名为.mat。然后可在以后使用它时载入它。用MATLAB的当前目录浏览器搜索、查看、打开、查找和改变MATLAB路径和文件。在MATLAB桌面上,从“Desktop”菜单中选择“Current Directory”选项,或者在命令窗口键入“filebrowser”,打开当前目录浏览器。使用当前目录浏览器可以完成下面的主要任务:查看和改变路径;创建、重命名、复制和删除路径和文件;打开、运行和查看文件的内容;由于函数不是严格的带限信号,其带宽可根据一定的精度要求做一近似。根据以下三种情况用MATLAB实现采样信号及重构并求出两者误差,分析三种情况

8、下的结果。(1)的临界采样及重构:wm=1,wc=wm,Ts=Pi/wm;(2)的过采样及重构:wm=1,wc=1.1*wm,Ts=0.7*Pi/wm。(3)的欠采样及重构:,wm=1,wc=wm,Ts=1.5*Pi/wm。2 MATLAB实现连续信号采样与重构的理论基础2.1 连续时间信号 连续信号是指自变量的取值范围是连续的,且对于一切自变量的取值,除了有若干个不连续点以外,信号都有确定的值与之对应。严格来说,MATLAB并不能处理连续信号,而是用等时间间隔点的样值来近似表示连续信号。当取样时间间隔足够小时,这些离散的样值就能较好地近似连续信号。 在一定条件下,一个连续时间信号完全可以用该

9、信号在等时间间隔上的瞬时值来表示,并且可以用这些样本值把信号完全恢复过来。这样,抽样定理为连续时间信号与离散时间信号的相互转换提供了理论依据。通过观察采样信号的频谱,发现它只是原信号频谱的线性重复搬移,只要给它乘以一个门函数,就可以在频域恢复原信号的频谱,在时域是否也能恢复原信号时,利用频域时域的对称关系,得到了信号。2.2 信号的采样模拟信号经过 (A/D) 变换转换为数字信号的过程称为采样,信号采样后其频谱产生了周期延拓,每隔一个采样频率 fs,重复出现一次。为保证采样后信号的频谱形状不失真,采样频率必须大于信号中最高频率成分的两倍,这称之为采样定理。时域采样定理从采样信号恢复原信号必需满

10、足两个条件:(1) 必须是带限信号,其频谱函数在 各处为零;(对信号的要求,即只有带限信号才能适用采样定理。)(2) 取样频率不能过低,必须 (或 )。(对取样频率的要求,即取样频率要足够大,采得的样值要足够多,才能恢复原信号。)如图1所示,给出了信号采样原理图图2-1 信号采样原理图由图2-1可见,其中,冲激采样信号的表达式为: 其傅立叶变换为,其中。设,分别为,的傅立叶变换,由傅立叶变换的频域卷积定理,可得 若设是带限信号,带宽为, 经过采样后的频谱就是将在频率轴上搬移至处(幅度为原频谱的倍)。因此,当时,频谱不发生混叠;而当时,频谱发生混叠。一个理想采样器可以看成是一个载波为理想单位脉冲

11、序列的幅值调制器,即理想采样器的输出信号,是连续输入信号调制在载波上的结果,如图2所示。图2-2 信号的采样 用数学表达式描述上述调制过程,则有 理想单位脉冲序列可以表示为 其中是出现在时刻,强度为1的单位脉冲。由于的数值仅在采样瞬时才有意义,同时,假设 所以又可表示为 2.3 信号的重构设信号被采样后形成的采样信号为,信号的重构是指由经过内插处理后,恢复出原来信号的过程,又称为信号恢复。若设是带限信号,带宽为,经采样后的频谱为。设采样频率,则由式(9)知是以为周期的谱线。现选取一个频率特性(其中截止频率满足)的理想低通滤波器与相乘,得到的频谱即为原信号的频谱。与之对应的时域表达式为 而 将及

12、代入得 此式即为用求解的表达式,是利用MATLAB实现信号重构的基本关系式,抽样函数在此起着内插函数的作用。例:设,其为:即的带宽为,为了由的采样信号不失真地重构,由时域采样定理知采样间隔,取(过采样)。利用MATLAB的抽样函数来表示,有。据此可知:通过以上分析,得到如下的时域采样定理:一个带宽为wm的带限信号f(t),可唯一地由它的均匀取样信号fs(nTs)确定,其中,取样间隔Ts/wm, 该取样间隔又称为奈奎斯特间隔。 根据时域卷积定理,求出信号重构的数学表达式为: 式中的抽样函数Sa(wct)起着内插函数的作用,信号的恢复可以视为将抽样函数进行不同时刻移位后加权求和的结果,其加权的权值

13、为采样信号在相应时刻的定义值。利用MATLAB中的抽样函数来表示Sa(t),有,于是,信号重构的内插公式也可表示: 3 MATLAB实现Sa信号的抽样与重构仿真程序分析 sa(t)=sinc(t/pi)原信号的程序与运行波形图。1、程序代码:wm=1;wc=wm; Ts=pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-20:Dt:20;t1=-20:0.5:20;f1=sinc(t1/pi);subplot(211);plot(t1,f1)xlabel(kTs);ylabel(f(kTs);title(sa(t)=s

14、inc(t/pi)信号);grid;y=fft(f1);GF=abs(y);h=(0:length(y)-1)*fs/length(y);subplot(212);plot(h,GF);xlabel(频率(Hz);ylabel(幅值); grid;2、运行结果图:图3-1 Sa信号运行结果图3.1 Sa信号的临界采样及重构3.1.1 程序实现及运行结果图1、Sa信号的临界采样信号程序实现及运行图:程序代码:wm=1;wc=wm; Ts=pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-20:Dt:20;t1=-20:0

15、.5:20;f1=sinc(t1/pi);stem(t1,f1);xlabel(kTs);ylabel(f(kTs);title(sa(t)=sinc(t/pi)的临界采样信号);Grid运行图:图3-1-1 临界采样信号2、临界采样信号的重构程序实现及运行图:程序代码:wm=1;wc=wm; Ts=pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-20:Dt:20;fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs*ones(1,length(t);t1=-20:

16、0.5:20;f1=sinc(t1/pi);stem(t1,f1);plot(t,fa)xlabel(t);ylabel(fa(t);title(由sa(t)=sinc(t/pi)的临界采样信号重构sa(t);grid运行图:图3-1-2 临界采样信号重构3.1.2 程序分析Sa(t)=sinc(t/pi) %利用sinc函数生成函数Sa(t)Pi %圆周率n=-100:100; %时域采样点t=-20:Dt:20 %产生一个时间采样序列fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs*ones(1,length(t) %信号重构sinc

17、(t1/pi) %绘制f1的非的非零样值向量plot(t,fa) %绘制fa的图形stem(t1,f1) %绘制一个二维杆图图3-1-2所表示的是临界采样信号的重构,其中,其重构信号可以近乎完整的恢复为原信号,其误差可忽略不计。3.2 Sa信号的过抽样及重构3.2.1 程序实现及运行结果图1、过采样信号及重构程序实现和运行图程序代码:wm=1;wc=1.1*wm; Ts=0.7*pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-10:Dt:10;fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(lengt

18、h(nTs),1)*t-nTs*ones(1,length(t);t1=-10:0.5:10;f1=sinc(t1/pi);subplot(311);stem(t1,f1);xlabel(kTs);ylabel(f(kTs);title(sa(t)=sinc(t/pi)的采样信号);y=fft(f);GF=abs(y);h=(0:length(y)-1)*fs/length(y);subplot(312);plot(h,GF);xlabel(频率(Hz);ylabel(幅值); grid; subplot(313);plot(t,fa)xlabel(t);ylabel(fa(t);title(

19、由sa(t)=sinc(t/pi)的过采样信号重构sa(t);grid;运行图:图3-2-1 过采样信号及重构2、误差分析程序实现及运行图:程序代码:wm=1;wc=1.1*wm; Ts=0.7*pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-20:Dt:20;fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs*ones(1,length(t);error=abs(fa-sinc(t/pi);t1=-20:0.5:20;f1=sinc(t1/pi);stem(t1

20、,f1);plot(t,error);xlabel(t);ylabel(error(t);title(过采样信号与原信号的误差error(t);运行图:图3-2-2 误差分析图3.2.2 程序分析Sa(t)=sinc(t/pi) %利用sinc函数生成函数Sa(t)error=abs(fa-sinc(t/pi); %求重构信号与原信号误差f1=sinc(t1/pi); %f1的非零样值向量xlabel(t) %横坐标轴ylabel(fa(t) %纵坐标轴title(由sa(t)=sinc(t/pi)的欠采样信号重构sa(t) %书写图名图3-2-1中,时,此时为对原信号的过采样与重构,由图3-

21、2-2中可以看出,两信号的绝对误差error已在10-6 数量级,说明重构信号的精度已经很高。3.3 Sa信号的欠抽样及重构3.3.1 程序实现及运行结果图1、欠采样信号及重构程序实现和运行图程序代码:wm=1;wc=wm; Ts=1.5*pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-10:Dt:10;fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs*ones(1,length(t);t1=-10:0.5:10;f1=sinc(t1/pi);subplot(3

22、11);stem(t1,f1);xlabel(kTs);ylabel(f(kTs);title(sa(t)=sinc(t/pi)的采样信号);y=fft(f);GF=abs(y);h=(0:length(y)-1)*fs/length(y);subplot(312);plot(h,GF);xlabel(频率(Hz);ylabel(幅值); grid;subplot(313);plot(t,fa)xlabel(t);ylabel(fa(t);title(由sa(t)=sinc(t/pi)的欠采样信号重构sa(t);grid;运行图:图3-3-1 欠采样信号及重构2、误差分析程序实现及运行图:程序

23、代码:wm=1;wc=wm; Ts=1.5*pi/wm;ws=2*pi/Ts;n=-100:100;nTs=n*Tsf=sinc(nTs/pi);Dt=0.005;t=-20:Dt:20;fa=f*Ts*wc/pi*sinc(wc/pi)*(ones(length(nTs),1)*t-nTs*ones(1,length(t);error=abs(fa-sinc(t/pi);t1=-20:0.5:20;f1=sinc(t1/pi);stem(t1,f1);plot(t,error);xlabel(t);ylabel(error(t);title(欠采样信号与原信号的误差error(t);运行图:

24、图3-3-2 误差分析图3.3.2 程序分析Sa(t)=sinc(t/pi) %利用sinc函数生成函数Sa(t)error=abs(fa-sinc(t/pi); %求重构信号与原信号误差f1=sinc(t1/pi); %f1的非零样值向量图3-3-1中,为原信号的欠采样信号,因为它的取样频率不符合奈奎斯特频率,那么频移后的各相临频谱会发生相互重叠,这样就无法将他们分开,因而也不能再恢复原信号。频谱重叠的现象被称为混叠现象。4 总结通过此次的课程设计使我对MATLAB有了更深的理解,同时对信号的抽样与重构仿真的掌握。在设计过程中,老师给我们提供了一些参考资料,但这远远不够,重要的还是我们自己要查阅更多的资料和了解跟多的相关内容。MATLAB课程设计我不仅学到了很多知识,还有学习方法。仅凭我在信

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论