1信号与系统课程设计题目:信号的抽样与恢复学生姓名:院(系、部):机电工程学院指导教师:2012年12月24日至2012年12月28日专业:电子信息工程学号:2摘要本设计是运用MATLAB编程来实现抽样定理及其信号恢复的仿真并能在建立的图形用户界面上显示出相应的仿真结果。目的在于能够熟练的应用MATLAB软件来建立友好的用户界面,通过界面来显示原始信号、抽样信号以及恢复后仿真的信号。本设计通过产生一个连续时间信号并生成其频谱,然后对该连续信号抽样,并对抽样后的频谱进行分析,最后通过设计低通滤波器滤出抽样所得频谱中多个周期中的一个周期频谱,并显示恢复后的时域连续信号。信号恢复,滤波器的参数需要很好的设置,以实现将抽样后的信号进行滤波恢复原连续信号。通过MATLAB软件中的信号分析的方法来验证抽样定理的正确性。关键词:抽样与恢复;滤波器;MATLAB1设计任务与要求(1)用MATLAB实现常用连续信号(2)用MATLAB实现常用离散信号(3)根据以下三种情况用MATLAB实现)(tSa的信号及恢复并求出两者误差,分析三种情况下的结果。由于函数)(tSa不是严格的带限信号,其带宽m可根据一定的精度要求做一近似。①)(tSa的临界抽样及恢复:,1m,mc,mispT/4.2;②)(tSa的过抽样及恢复:1m,mc1.1,mispT/5.2③)(tSa的欠抽样及恢复:1m,mc,mispT/5.2。2原理分析和设计图1总框架图32.1连续信号的抽样定理连续信号是指自变量的取值范围是连续的,且对于一切自变量的取值,除了有若干个不连续点以外,信号都有确定的值与之对应。严格来说,MATLAB并不能处理连续信号,而是用等时间间隔点的样值来近似表示连续信号。当抽样时间间隔足够小时,这些离散的样值就能较好地近似连续信号。时域对连续时间信号进行抽样,是给它乘以一个抽样脉冲序列,就可以得到抽样点上的样本值,信号被抽样前后在频域的变化,可以通过时域频域的对应关系分别求得了抽样信号的频谱。在一定条件下,一个连续时间信号完全可以用该信号在等时间间隔上的瞬时值来表示,并且可以用这些样本值把信号完全恢复过来。这样,抽样定理为连续时间信号与离散时间信号的相互转换提供了理论依据。通过观察抽样信号的频谱,发现它只是原信号频谱的线性重复搬移,只要给它乘以一个门函数,就可以在频域恢复原信号的频谱,在时域恢复原信号时,利用频域时域的对称关系,得到了信号。一个频谱在区间(mm,)以外为零的频带有限信号)(tf,可唯一的由其在均匀间隔ST)21(mSfT上的样点值)(snTf确定,这就是抽样定理。时域抽样定理从抽样信号)(tfs恢复原信号)(tf必需满足两个条件:(1))(tf必须是带限信号,其频谱函数在m各处为零;(2)抽样频率不能过低,必须sm2(或sf>2mf)。如果抽样频率0/2Ts大于或等于max2,即max2s(max2为连续信号)(t的有限频谱),则抽样离散信号)(t能无失真地恢复到原来的连续信号)(t。根据时域与频域的对称性,可以由时域抽样定理直接推出频域抽样定理。一个时间受限信号)(tf,它集中在(mm,)的时间范围内,则该信号的频谱)(jF在频域中以间隔为1的冲激序列进行抽样,抽样后的频谱)(1jF可以惟一表示原信号的条件为重复周期mtT21,或频域间隔mtf2121(其中112T)。抽样信号)(tfs的频4谱是原信号频谱)(jF的周期性重复,它每隔s重复出现一次。当sm2时,不会出现混叠现象,原信号的频谱的形状不会发生变化,从而能从抽样信号)(tfs中恢复原信号)(tf。图1为不同抽样频率时的抽样信号及频谱a)等抽样频率时的抽样信号及频谱(不混叠)b)高抽样频率时的抽样信号及频谱(不混叠)c)低抽样频率时的抽样信号及频谱(混叠)(a)(b)(c)图2抽样定理2.2信号抽样如图3所示,给出了信号抽样原理图图3信号抽样原理图5)()()(ttftfsTs,其中,冲激抽样信号)(tsT的表达式为:nsTnTtts)()(其傅立叶变换为nssn)(,其中ssT2。设)(jF,)(jFs分别为)(tf,)(tfs的傅立叶变换,由傅立叶变换的频域卷积定理,可得nssnsssnjFTnjFjF)]([1)(*)(21)(若设)(tf是带限信号,带宽为m,)(tf经过抽样后的频谱)(jFs就是将)(jF在频率轴上搬移至,,,,,02nsss处(幅度为原频谱的sT1倍)。因此,当ms2时,频谱不发生混叠;而当ms2时,频谱发生混叠。一个理想抽样器可以看成是一个载波为理想单位脉冲序列)(tT的幅值调制器,即理想抽样器的输出信号)(*te,是连续输入信号)(te调制在载波)(tT上的结果,如图4所示。图4信号的抽样用数学表达式描述上述调制过程,则有)()()(*tteteT理想单位脉冲序列)(tT可以表示为0)()(nTnTtt其中)(nTt是出现在时刻nTt,强度为1的单位脉冲。由于)(te的数值仅在抽样瞬时才有意义,同时,假设00)(tte所以)(*te又可表示为*0()()()netenTtnT2.3信号恢复6设信号)(tf被抽样后形成的抽样信号为)(tfs,信号的恢复是指由)(tfs经过内插处理后,恢复出原来信号)(tf的过程。若设)(tf是带限信号,带宽为m,经抽样后的频谱为)(jFs。设抽样频率ms2,已知)(jFs是以s为周期的谱线。现选取一个频率特性ccsTjH0)((其中截止频率c满足2scm)的理想低通滤波器与)(jFs相乘,得到的频谱即为原信号的频谱)(jF。显然,)()()(jHjFjFs,与之对应的时域表达式为)(*)()(tfthtfs而nssnssnTtnTfnTttftf)()()()()()()]([)(1tSaTjHFthccs将)(th及)(tfs代入式)(*)()(tfthtfs得nscscsccssnTtSanTfTtSaTtftf)]([)()(*)()(上式即为用)(SnTf求解)(tf的表达式,是利用MATLAB实现信号恢复的基本关系式,抽样函数)(tSat在此起着内插函数的作用。利用MATLAB中的抽样函数)/()sin()(tttSinc来表示)(tSa,有)/()(tSinctSa)/()(tSinctSacc,于是,信号恢复的内插公式也可表示为:)()()()(tSaTnTtnTftfccsnss)()(scnScsnTtSincnTfT3详细设计73.1常用连续时间信号的实现(1)正弦信号)2sin()(FsfnAnxA=3;fai=3*pi/4;Fs=2;f=3;n1=0:0.01:pi;x1=A*sin(2*pi*f*n1/Fs+fai);subplot(3,2,1);plot(n1,x1);title('正弦函数');xlabel('n');ylabel('x(n)');图5正弦函数(2)指数序列nanx)(a=2;n1=0:0.01:6;x1=a.^n1;subplot(3,2,1);plot(n1,x1);title('指数函数');xlabel('n');ylabel('x(n)');8图6指数函数(3))(tSa函数wm=1;%升余弦脉冲信号带宽wc=wm;%频率Ts=pi/wm;%周期ws=2.4*pi/Ts;%理想低通截止频率n=-100:100;%定义序列的长度是201nTs=n*Ts%抽样点f=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:0.5:20;f1=sinc(t1/pi);subplot(212);plot(t,fa)xlabel('t');ylabel('fa(t)');title('Sa(t)函数');grid;9图7)(tSa函数(4)单位阶跃信号)()(ttft=-1:0.01:4;%定义时间样本向量t0=0;%指定信号发生突变的时刻ut=stepfun(t,t0);%产生单位阶跃信号plot(t,ut)%绘制波形axis([-1,4,-0.5,1.5])%设定坐标轴范围title('单位阶跃信号')%设定标题图8单位阶跃信号(5)门函数()(2)(2)fttt的波形t=-4:0.01:4;%定义时间样本向量t1=-2;%指定信号发生突变的时刻u1=stepfun(t,t1);%(t+2)10t2=2;%指定信号发生突变的时刻u2=stepfun(t,t2);%(t-2)g=u1-u2;%表示门函数plot(t,g)%绘制门函数的波形axis([-4,4,-0.5,1.5])%设定坐标轴范围-4x4,-0.5y1.5title('门函数')%设定标题图9门函数3.2常用离散时间信号的实现(1)单位抽样序列0001)(nnnn1=-20:20;x1=[zeros(1,20),1,zeros(1,20)];subplot(3,2,1);stem(n1,x1);title('单位抽样序列');xlabel('n');ylabel('δ(n))');11图10单位抽样序列(2)单位阶越序列0001)(nnnun1=-20:20;x1=[zeros(1,20),1,ones(1,20)];subplot(3,2,1);stem(n1,x1);title('单位阶跃序列');xlabel('n');ylabel('u(n)');图11单位阶跃序列(3)正弦序列)2sin()(FsfnAnxf=10;Fs=1000;fai=0;n=1:99;12N=100;x=sin(2*pi*f*n/Fs+fai);stem(n,x);axis([0,150,-1.2,1.2]);xlabel('n'),ylabel('x')图12正弦序列(4)指数序列nanx)(a=2;n1=0:0.01:6;x1=a.^n1;subplot(3,2,1);plot(n1,x1);title('指数序列');xlabel('n');ylabel('x(n)');a1=1.1;n=[-5:15];x1=(a1.^n);subplot(2,2,1);stem(n,x1,'.k');title('指数序列');axis([-5,15,-0.5,5]);13图13指数序列(5))(tSa函数序列wm=1;%升余弦脉冲信号带宽wc=wm;%频率Ts=pi/wm;%周期ws=2.4*pi/Ts;%理想低通截止频率n=-100:100;%定义序列的长度是201nTs=n*Ts%抽样点f=sinc(nTs/pi);%抽样信号Dt=0.005;t=-20:Dt:20;t1=-20:0.5:20;f1=sinc(t1/pi);subplot(211);stem(t1,f1);xlabel('kTs');ylabel('f(kTs)');title('Sa(t)函数序列');14图14)(tSa函数序列3.3.1)(tSa的临界抽样及恢复当抽样频率等于一个连续的同信号最大频率的2倍,即ms2时,称为临界抽样。(1))(tSa的临界抽样及恢复程序代码;wm=1;%升余弦脉冲信号带宽wc=wm;%频率Ts=pi/