《信号与系统实验报告.pdf》由会员分享,可在线阅读,更多相关《信号与系统实验报告.pdf(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、实验三常见信号的 MATLAB 表示及运算一、实验目的1熟悉常见信号的意义、特性及波形2学会使用MATLAB表示信号的方法并绘制信号波形3. 掌握使用MATLAB进行信号基本运算的指令4. 熟悉用 MATLAB实现卷积积分的方法二、实验原理根据 MATLAB的数值计算功能和符号运算功能,在MATLAB中,信号有两种表示方法,一种是用向量来表示,另一种则是用符号运算的方法。在采用适当的MA TLAB 语句表示出信号后,就可以利用MA TLAB 中的绘图命令绘制出直观的信号波形了。1.连续时间信号从严格意义上讲,MATLAB并不能处理连续信号。在MATLAB中,是用连续信号在等时间间隔点上的样值来
2、近似表示的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。在MATLAB中连续信号可用向量或符号运算功能来表示。 向量表示法对于连续时间信号( )f t,可以用两个行向量f 和 t 来表示, 其中向量 t 是用形如12:ttp t的命令定义的时间范围向量,其中,1t为信号起始时间,2t为终止时间, p 为时间间隔。向量 f 为连续信号( )f t在向量 t 所定义的时间点上的样值。 符号运算表示法如果一个信号或函数可以用符号表达式来表示,那么我们就可以用前面介绍的符号函数专用绘图命令ezplot()等函数来绘出信号的波形。 常见信号的MATLAB表示单位阶跃信号单位阶跃信号的
3、定义为:10( )00tu tt方法一:调用 Heaviside(t) 函数首先定义函数Heaviside(t) 的 m 函数文件 ,该文件名应与函数名同名即Heaviside.m。%定义函数文件 ,函数名为Heaviside,输入变量为x,输出变量为y function y= Heaviside(t) y=(t0); %定义函数体,即函数所执行指令欢迎下载2 %此处定义t0 时 y=1,t=0 时 y=0,注意与实际的阶跃信号定义的区别。方法二:数值计算法在 MATLAB中,有一个专门用于表示单位阶跃信号的函数,即stepfun( ) 函数,它是用数值计算法表示的单位阶跃函数( )u t。其
4、调用格式为:stepfun(t,t0) 其中, t 是以向量形式表示的变量,t0 表示信号发生突变的时刻,在 t0 以前,函数值小于零,t0 以后函数值大于零。有趣的是它同时还可以表示单位阶跃序列( )u k,这只要将自变量以及取样间隔设定为整数即可。符号函数符号函数的定义为:10sgn( )10ttt在 MATLAB 中有专门用于表示符号函数的函数sign(), 由于单位阶跃信号(t)和符号函数两者之间存在以下关系:1122( )sgn( )tt,因此,利用这个函数就可以很容易地生成单位阶跃信号。2. 离散时间信号离散时间信号又叫离散时间序列,一般用( )f k表示, 其中变量 k 为整数,
5、 代表离散的采样时间点(采样次数)。在 MATLAB中,离散信号的表示方法与连续信号不同,它无法用符号运算法来表示,而只能采用数值计算法表示,由于MATLAB中元素的个数是有限的,因此,MATLAB无法表示无限序列;另外,在绘制离散信号时必须使用专门绘制离散数据的命令,即stem()函数,而不能用plot()函数。单位序列( )k单位序列( )k)的定义为10( )00kkk单位阶跃序列( )u k单位阶跃序列( )u k的定义为10( )00ku kk3. 卷积积分两个信号的卷积定义为:1212( )( )( )( )()y tftftfftd欢迎下载3 MATLAB中是利用conv 函数来
6、实现卷积的。功能:实现两个函数1( )f t和2( )ft的卷积。格式: g=conv(f1,f2)说明: f1=f1(t),f2=f2(t) 表示两个函数,g=g(t)表示两个函数的卷积结果。三、实验内容1.分别用 MATLAB的向量表示法和符号运算功能,表示并绘出下列连续时间信号的波形:2( )(2) ( )tf teu t( )cos()( )(4)2tf tu tu t(1) t=-1:0.01:10; t1=-1:0.01:-0.01; t2=0:0.01:10; f1=zeros(1,length(t1),ones(1,length(t2); f=(2-exp(-2*t).*f1;
7、 plot(t,f) axis(-1,10,0,2.1) syms t; f=sym(2-exp(-2*t)*heaviside(t); ezplot(f,-1,10); 欢迎下载4 (2) t=-2:0.01:8; f=0.*(t0&t4); plot(t,f)syms t; f=sym(cos(pi*t/2)*heaviside(t)-heaviside(t-4) ); ezplot(f,-2,8); 2.分别用 MATLAB表示并绘出下列离散时间信号的波形:( )( )(8)f tk u ku k( )sin() ( )4kf ku k(2) t=0:8; t1=-10:15; f=ze
8、ros(1,10),t,zeros(1,7); stem(t1,f) axis(-10,15,0,10); 欢迎下载5 (3) t=0:50; t1=-10:50; f=zeros(1,10),sin(t*pi/4); stem(t1,f) axis(-10,50,-2,2) 欢迎下载6 3.已知两信号1( )(1)( )ftu tu t,2( )( )(1)ftu tu t,求卷积积分12( )( )( )g tftft,并与例题比较。t1=-1:0.01:0; t2=0:0.01:1; t3=-1:0.01:1; f1=ones(size(t1); f2=ones(size(t2); g=
9、conv(f1,f2); subplot(3,1,1),plot(t1,f1); subplot(3,1,2),plot(t2,f2); subplot(3,1,3),plot(t3,g); 欢迎下载7 与例题相比较, g(t)的定义域不同,最大值对应的横坐标也不同。4.已知12( )1,1,1,2 ,( )1,2,3,4,5f kfk,求两序列的卷积和。N=4; M=5; L=N+M-1; f1=1,1,1,2; f2=1,2,3,4,5; g=conv(f1,f2); kf1=0:N-1; kf2=0:M-1; kg=0:L-1; subplot(1,3,1),stem(kf1,f1,*k
10、);xlabel(k); ylabel(f1(k);grid on subplot(1,3,2),stem(kf2,f2,*k);xlabel(k); ylabel(f2(k);grid on subplot(1,3,3);stem(kg,g,*k);xlabel(k); ylabel(g(k);grid on 欢迎下载8 实验心得 :第一次接触 Mutlab 这个绘图软件,觉得挺新奇的,同时,由于之前不太学信号与系统遇到一些不懂的问题,结合这些图对信号与系统有更好的了解。实验四连续时间信号的频域分析一、 实验目的1熟悉傅里叶变换的性质2熟悉常见信号的傅里叶变换3了解傅里叶变换的MATLAB实
11、现方法二、 实验原理从已知信号( )f t求出相应的频谱函数()Fj的数学表示为:()Fj( )jtf t edt傅里叶反变换的定义为:1( )()2jtf tF jed在 MA TLAB 中实现傅里叶变换的方法有两种,一种是利用MATLAB中的 Symbolic Math 欢迎下载9 Toolbox 提供的专用函数直接求解函数的傅里叶变换和傅里叶反变换,另一种是傅里叶变换的数值计算实现法。1.直接调用专用函数法在 MATLAB中实现傅里叶变换的函数为:F=fourier( f ) 对 f(t)进行傅里叶变换,其结果为F(w) F=fourier(f,v) 对 f(t)进行傅里叶变换,其结果为
12、F(v) F=fourier( f,u,v ) 对 f(u) 进行傅里叶变换,其结果为F(v) 傅里叶反变换f=ifourier( F ) 对 F(w)进行傅里叶反变换,其结果为f(x) f=ifourier(F,U) 对 F(w)进行傅里叶反变换,其结果为f(u) f=ifourier( F,v,u ) 对 F(v)进行傅里叶反变换,其结果为f(u) 注意:(1) 在调用函数 fourier( ) 及 ifourier( ) 之前, 要用 syms命令对所有需要用到的变量(如 t,u,v,w)等进行说明, 即要将这些变量说明成符号变量。对 fourier( ) 中的 f 及 ifourier
13、( ) 中的 F 也要用符号定义符sym 将其说明为符号表达式。(2)采用 fourier( ) 及 fourier( ) 得到的返回函数,仍然为符号表达式。在对其作图时要用ezplot( )函数,而不能用plot() 函数。(3)fourier( ) 及 fourier( ) 函数的应用有很多局限性,如果在返回函数中含有( )等函数,则 ezplot( )函数也无法作出图来。另外,在用fourier( ) 函数对某些信号进行变换时,其返回函数如果包含一些不能直接表达的式子,则此时当然也就无法作图了。这是 fourier( ) 函数的一个局限。另一个局限是在很多场合,尽管原时间信号f(t)是连
14、续的,但却不能表示成符号表达式,此时只能应用下面介绍的数值计算法来进行傅氏变换了,当然,大多数情况下,用数值计算法所求的频谱函数只是一种近似值。2、傅里叶变换的数值计算实现法严格说来,如果不使用symbolic 工具箱,是不能分析连续时间信号的。采用数值计算方法实现连续时间信号的傅里叶变换,实质上只是借助于MATLAB的强大数值计算功能,特别是其强大的矩阵运算能力而进行的一种近似计算。傅里叶变换的数值计算实现法的原理如下:对于连续时间信号f(t),其傅里叶变换为:()Fj0( )lim()jtjnnf t edtf ne其中 为取样间隔,如果f(t)是时限信号,或者当|t|大于某个给定值时,f
15、(t) 的值已经衰减得很厉害,可以近似地看成是时限信号,则上式中的n 取值就是有限的,假定为N,有:()Fj10()Njnnf ne若对频率变量进行取样,得:( )()kF kF j10()0kNjnnf n ekM欢迎下载10 通常取:02kkkMM, 其中0是要取的频率范围, 或信号的频带宽度。 采用 MATLAB实现上式时,其要点是要生成f(t) 的 N 个样本值()f n的向量,以及向量kjne,两向量的内积(即两矩阵的乘积),结果即完成上式的傅里叶变换的数值计算。注意: 时间取样间隔 的确定,其依据是 必须小于奈奎斯特(Nyquist)取样间隔。如果f(t) 不是严格的带限信号,则可
16、以根据实际计算的精度要求来确定一个适当的频率0为信号的带宽。三、 实验内容1. 编程实现求下列信号的幅度频谱(1) 求出1( )(21)(21)ftutut的频谱函数F1(j ) ,请将它与上面门宽为2 的门函数( )(1)(1)ftu tu t的频谱进行比较,观察两者的特点,说明两者的关系。(2) 三角脉冲21 | | | 1( )0| | 1ttftt(3) 单边指数信号3( )( )tftet(4) 高斯信号23( )tf te(1) syms t w Gt=sym(Heaviside(2*t+1)-Heaviside(2*t-1); Fw=fourier(Gt,t,w); FFw=ma
17、ple(convert,Fw,piecewise); FFP=abs(FFw); ezplot(FFP,-10*pi 10*pi);grid; axis(-10*pi 10*pi 0 2.2) 欢迎下载11 与( )(1)(1)f tu tu t的频谱比较,1( )(21)(21)f tutut的频谱函数F1(j )最大值是其的 1/2。(2)syms t w; Gt=sym(1+t)*(Heaviside(t+1)-Heaviside(t)+(1-t)*(Heaviside(t)-Heaviside(t-1); Fw=fourier(Gt,t,w); FFw=maple(convert,Fw
18、,piecewise); FFP=abs(FFw); ezplot(FFP,-10*pi 10*pi);grid; axis(-10*pi 10*pi 0 2.2) 欢迎下载12 (3)syms t w Gt=sym(exp(-t)*Heaviside(t); Fw=fourier(Gt,t,w); FFw=maple(convert,Fw,piecewise); FFP=abs(FFw); ezplot(FFP,-10*pi 10*pi);grid; axis(-10*pi 10*pi -1 2) 欢迎下载13 (4)syms t w Gt=sym(exp(-t2); Fw=fourier(
19、Gt,t,w); FFw=maple(convert,Fw,piecewise); ezplot(FFw,-30 30);grid; axis(-30 30 -1 2) 欢迎下载14 2. 利用 ifourier( ) 函数求下列频谱函数的傅氏反变换(1)22()16F jj(2) 22()58()()65jjFjjj(1)syms t w Fw=sym(-i*2*w/(16+w2); ft=ifourier(Fw,w,t); ft 运行结果:ft = -exp(4*t)*heaviside(-t)+exp(-4*t)*heaviside(t) (2)syms t w Fw=sym(i*w)2
20、+5*i*w-8)/(i*w)2+6*i*w+5); ft=ifourier(Fw,w,t); ft 运行结果:ft = 欢迎下载15 dirac(t)+(-3*exp(-t)+2*exp(-5*t)*heaviside(t) 实验心得matlab不但具有数值计算能力,还能建模仿真,能帮助我们理解不同时间信号的频域分析。实验五 连续时间系统的频域分析一、实验目的1.学习由系统函数确定系统频率特性的方法。2.学习和掌握连续时间系统的频率特性及其幅度特性、相位特性的物理意义。3.通过本实验了解低通、高通、带通、全通滤波器的性能及特点。二、实验原理及方法频域分析法与时域分析法的不同之处主要在于信号分
21、解的单元函数不同。在频域分析法中,信号分解成一系列不同幅度、不同频率的等幅正弦函数,通过求取对每一单元激励产生的响应,并将响应叠加,再转换到时域以得到系统的总响应。所以说, 频域分析法是一种变域分析法。 它把时域中求解响应的问题通过Fourier 级数或Fourier 变换转换成频域中的问题;在频域中求解后再转换回时域从而得到最终结果。在实际应用中, 多使用另一种变域分析法:复频域分析法,即Laplace 变换分析法。所谓频率特性, 也称频率响应特性,是指系统在正弦信号激励下稳态响应随频率变化的情况,包括幅度随频率的响应和相位随频率的响应两个方面。利用系统函数也可以确定系统频率特性,公式如下:
22、)(|)(|HjjsejHsHjH幅度响应用jH表示,相位响应用)(H表示。本实验所研究的系统函数H(s)是有理函数形式,也就是说,分子、分母分别是m、n 阶多项式。niiimiiisasbsH00要计算频率特性,可以写出欢迎下载16 niiimiiijsjajbSHjH00为了计算出jH、)(H的值,可以利用复数三角形式的一个重要特性:njnjnsincossincos而2sin2cosjj,则2sin2cosnjnjnn利用这些公式可以化简高次幂,因此分子和分母的复数多项式就可以转化为分别对实部与虚部的实数运算,算出分子、分母的实部、虚部值后,最后就可以计算出幅度jH、相位)(H的值了。三
23、、实验内容a)smmmsH)(1)(2,m 取值区间0,1,绘制一组曲线m=0.1,0.3,0.5,0.7,0.9;b)绘制下列系统的幅频响应对数曲线和相频响应曲线,分析其频率特性。(1)1sssH(2)21 ssssH(3)11sssHa) % design2.m figure alpha=0.1,0.3,0.5,0.7,0.9; colorn=r g b y k; % r g b y m c k (红,绿,蓝,黄,品红,青,黑)for n=1:5 b=0 alpha(n); % 分子系数向量a=alpha(n)-alpha(n)2 1; % 分母系数向量printsys(b,a,s) Hz
24、,w=freqs(b,a); w=w./pi; magh=abs(Hz); zerosIndx=find(magh=0); magh(zerosIndx)=1; magh=20*log10(magh); magh(zerosIndx)=-inf; angh=angle(Hz); angh=unwrap(angh)*180/pi; 欢迎下载17 subplot(1,2,1) plot(w,magh,colorn(n); hold on subplot(1,2,2) plot(w,angh,colorn(n); hold on end subplot(1,2,1) hold off xlabel(
25、特征角频率 (timespi rad/sample) title(幅频特性曲线|H(w)| (dB); subplot(1,2,2) hold off xlabel(特征角频率(timespi rad/sample) title( 相频特性曲线theta(w) (degrees); b) (1) % design1.m b=1,0; % 分子系数向量a=1,1; % 分母系数向量printsys(b,a,s) Hz,w=freqs(b,a); w=w./pi; 欢迎下载18 magh=abs(Hz); zerosIndx=find(magh=0); magh(zerosIndx)=1; mag
26、h=20*log10(magh); % 以分贝magh(zerosIndx)=-inf; angh=angle(Hz); angh=unwrap(angh)*180/pi; % 角度换算figure subplot(1,2,1) plot(w,magh); grid on xlabel(特征角频率 (timespi rad/sample) title( 幅频特性曲线|H(w)| (dB); subplot(1,2,2) plot(w,angh); grid on xlabel(特征角频率(timespi rad/sample) title( 相频特性曲线theta(w) (degrees);
27、(2) % design1.m b=0,1,0; % 分子系数向量a=1,3,2; % 分母系数向量printsys(b,a,s) 欢迎下载19 Hz,w=freqs(b,a); w=w./pi; magh=abs(Hz); zerosIndx=find(magh=0); magh(zerosIndx)=1; magh=20*log10(magh); % 以分贝magh(zerosIndx)=-inf; angh=angle(Hz); angh=unwrap(angh)*180/pi; % 角度换算figure subplot(1,2,1) plot(w,magh); grid on xlab
28、el(特征角频率 (timespi rad/sample) title( 幅频特性曲线|H(w)| (dB); subplot(1,2,2) plot(w,angh); grid on xlabel(特征角频率(timespi rad/sample) title( 相频特性曲线theta(w) (degrees); (3) % design1.m b=1,-1; % 分子系数向量欢迎下载20 a=1,1; % 分母系数向量printsys(b,a,s) Hz,w=freqs(b,a); w=w./pi; magh=abs(Hz); zerosIndx=find(magh=0); magh(ze
29、rosIndx)=1; magh=20*log10(magh); % 以分贝magh(zerosIndx)=-inf; angh=angle(Hz); angh=unwrap(angh)*180/pi; % 角度换算figure subplot(1,2,1) plot(w,magh); grid on xlabel(特征角频率 (timespi rad/sample) title( 幅频特性曲线|H(w)| (dB); subplot(1,2,2) plot(w,angh); grid on xlabel(特征角频率(timespi rad/sample) title( 相频特性曲线theta
30、(w) (degrees); 欢迎下载21 实验心得: 虽然之前用公式转换到频域上分析,但是有时会觉得挺抽象的,不太好理解。 根据这些图像结合起来更进一步对信号的了解。同时,这个在编程序时,虽然遇到一些问题,但是总算解决了。实验六离散时间系统的Z 域分析一、 实验目的1.学习和掌握离散系统的频率特性及其幅度特性、相位特性的物理意义。2.深入理解离散系统频率特性和对称性和周期性。3.认识离散系统频率特性与系统参数之间的系统4.通过阅读、修改并调试本实验所给源程序,加强计算机编程能力。二、 实验原理及方法对于离散时间系统,系统单位冲激响应序列)(nh的 Fourier 变换)(jeH完全反映了系统
31、自身的频率特性,称)(jeH为离散系统的频率特性,可由系统函数)(zH求出,关系式如下:jjezzHeH)()( 6 1 ) 由于je是频率的周期函数,所以系统的频率特性也是频率的周期函数,且周期为2,因此研究系统频率特性只要在范围内就可以了。nnnjjnnhjnnhenheH)sin()()cos()()()( 6 2 ) 容易证明,其实部是的偶函数,虚部是的奇函数,其模jeH (的的偶函数,相位)(argjeH是的奇函数。因此研究系统幅度特性)(jeH、相位特性)(argjeH,只要在0范围内讨论即可。综上所述, 系统频率特性)(jeH具有周期性和对称性,深入理解这一点是十分重要的。当离散
32、系统的系统结构一定,它的频率特性)(jeH将随参数选择的不同而不同,这表明了系统结构、参数、特性三者之间的关系,即同一结构,参数不同其特性也不同。例如,下图所示离散系统,欢迎下载22 Da)(ny)(nx其数学模型由线性常系数差分方程描述:)()1()(nxnayny系统函数:azazzzH,)(系统函数频率特性:sin)cos1 (1)(jaaaeeeHjjj幅频特性:cos211)(2aaeHj相频特性:cos1sinarctan)(argaaeHj容易分析出, 当10a时系统呈低通特性,当01a时系统呈高通特性;当0a时系统呈全通特性。同时说明, 在系统结构如图所示一定时,其频率特性随参
33、数a 的变化而变化。三、 实验内容a)2281.011)(zzzH。b)1.04 .06.01 .03.03.01.0)(2323zzzzzzzHc)2181.011)(zzzHa) % design1.m b=1,0,-1; % 分子系数向量a=1,0,-0.81; % 分母系数向量printsys(b,a,z) Hz,w=freqz(b,a); w=w./pi; magh=abs(Hz); zerosIndx=find(magh=0); magh(zerosIndx)=1; magh=20*log10(magh); % 以分贝magh(zerosIndx)=-inf; angh=angle
34、(Hz); angh=unwrap(angh)*180/pi; % 角度换算欢迎下载23 figure subplot(1,2,1) plot(w,magh); grid on xlabel(特征角频率 (timespi rad/sample) title( 幅频特性曲线|H(w)| (dB); subplot(1,2,2) plot(w,angh); grid on xlabel(特征角频率(timespi rad/sample) title( 相频特性曲线theta(w) (degrees); 带通b) % design1.m b=0.1,-0.3,0.3,-0.1; % 分子系数向量a=
35、1,0.6,0.4,0.1; % 分母系数向量printsys(b,a,z) Hz,w=freqz(b,a); w=w./pi; magh=abs(Hz); zerosIndx=find(magh=0); magh(zerosIndx)=1; magh=20*log10(magh); % 以分贝欢迎下载24 magh(zerosIndx)=-inf; angh=angle(Hz); angh=unwrap(angh)*180/pi; % 角度换算figure subplot(1,2,1) plot(w,magh); grid on xlabel(特征角频率 (timespi rad/sampl
36、e) title( 幅频特性曲线|H(w)| (dB); subplot(1,2,2) plot(w,angh); grid on xlabel(特征角频率(timespi rad/sample) title( 相频特性曲线theta(w) (degrees); 高通c) % design1.m b=1,-1,0; % 分子系数向量a=1,0,0.81; % 分母系数向量printsys(b,a,z) Hz,w=freqz(b,a); w=w./pi; magh=abs(Hz); zerosIndx=find(magh=0); 欢迎下载25 magh(zerosIndx)=1; magh=20
37、*log10(magh); % 以分贝magh(zerosIndx)=-inf; angh=angle(Hz); angh=unwrap(angh)*180/pi; % 角度换算figure subplot(1,2,1) plot(w,magh); grid on xlabel(特征角频率 (timespi rad/sample) title( 幅频特性曲线|H(w)| (dB); subplot(1,2,2) plot(w,angh); grid on xlabel(特征角频率(timespi rad/sample) title( 相频特性曲线theta(w) (degrees); 带通实验心得: 本来理论知识不是很强的, 虽然已经编出程序得到相关图形,但是不会辨别相关通带,这让我深刻地反省。