信与系统仿真实验指导书_第1页
信与系统仿真实验指导书_第2页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

1、实验指导书21实验1MATLAB基本操作一、实验目的1. 熟悉MATLAB实验环境,练习MATLAB命令、m文件、Simulink的基本操作。2. 利用MATLAB编写程序进行矩阵运算、图形绘制、数据处理等。3. 利用Simulink建立系统的数学模型并仿真求解。二、实验原理MATLAB环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。MATLAB有3种窗口,即:命令窗口(TheCommandWindow)、m-文件编辑窗口(TheEditWindow)和图形窗口(TheFigureWindow)。Simulink是MATLAB的一个部件,它为MATLAB用户提供了一种有效的对反馈控

2、制系统进行建模、仿真和分析的方式。而Simulink另外又有Simulink模型编辑窗口。1. 命令窗口(TheCommandWindow)当MATLAB启动后,出现的最大的窗口就是命令窗口。用户可以在提示符“”后面输入交互的命令,这些命令就立即被执行。在MATLAB中,一连串命令可以放置在一个文件中,不必把它们直接在命令窗口内输入。在命令窗口中输入该文件名,这一连串命令就被执行了。因为这样的文件都是以“.m”为后缀,所以称为m文件。2. m文件编辑窗口(TheEditWindow)我们可以用m文件编辑窗口来产生新的m文件,或者编辑已经存在的m文件。在MATLAB主界面上选择菜单“File/N

3、ew/M-file”就打开了一个新的m文件编辑窗口;选择菜单“File/Open”就可以打开一个已经存在的m文件,并且可以在这个窗口中编辑这个m文件。3. 图形窗口(TheFigureWindow)图形窗口用来显示MATLAB程序产生的图形。图形可以是2维的、3维的数据图形,也可以是照片等。4. Simulink的启动方式:启动运行Simulink有两种方式:(1)在Commandwindow中,键入simulink,回车。(2)单击工具栏上Simulink图标。启动Simulink后,即打开了Simulink库浏览器(Simulinklibrarybrowser)。在该浏览器的窗口中单击“C

4、reateanewmodel(创建新模型)”图标,这样就打开一个尚未命名的模型窗口。把Simulink库浏览器中的单元拖拽进入这个模型窗口,构造自己需要的模型。对各个单元部件的参数进行设定,可以双击该单元部件的图标,在弹出的对话框中设置参数。三、实验内容与方法1. 输入命令,计算以下问题:12已知矩阵a二45+2i2-7i,利用MATLAB进行矩阵计算:a*ba/baba3a.*ba./ba.ba.3(2)多项式计算:求12+2X(7-4)三32的算数计算结果。2. 编写M文件绘制函数的图形。【例1-1】:绘制下面函数在03区间的图形。sinx,x0y(x)=x,0x3MATLAB程序:x=-

5、6:0.1:6;leng=length(x);form=1:lengifx(m)=0y(m)=sin(x(m);elseifx(m)=3y(m)=x(m);elsey(m)=-x(m)+6;endendplot(x,y,,*,),grid;练习:绘制下面的图形:(1)sin(1/1),-1t=0);plot(t,u);axis(-2,6,0,1.2)xlabel(时间(t);ylabel(幅值(f);title(单位阶跃信号);(3)复指数信号f(t)二e-3t+4jtMATLAB程序如下:t=0:0.01:3;a_3;b_4;z=exp(a+i*b)*t);subplot(221);plot

6、(t,imag(z),title(实部);xlabel(时间);ylabel(幅值);subplot(222);plot(t,real(z),title(虚部);xlabel(时间);ylabel(幅值);subplot(223);plot(t,abs(z),title(模);xlabel(时间);ylabel(幅值);subplot(224);plot(t,angle(z),title(相角);xlabel(时间);ylabel(幅值);2. 连续时间信号的基本运算(1) 加(减)、乘运算实现两个信号的加法和乘法运算:要求两个信号运算的时间序列长度相同。MATLAB程序如下:t_0:0.01

7、:2;f1_exp(-3*t);f2_0.2*sin(4*pi*t);f3_f1+f2;f4_f1.*f2;subplot(221);plot(t,f1);title(f1(t);subplot(222);plot(t,f2);title(f2(t);subplot(223);plot(t,f3);title(f1+f2);subplot(224);plot(t,f4);title(f1*f2);(2) 信号的反褶、移位、尺度变换由f(t)到/(at+b)(a0)步骤:/(t)-移位T/(t+b)-T/(at+b)反褶T/(-at+b)【例2-1】已知f(t)=sin(tt。试通过反褶、移位、

8、尺度变换由f的波形得到f(-2t+3)的波形。MATLAB程序如下symst;f=sym(sin(t)/t);f1=subs(f,t,t+3);f2=subs(f1,t,2*t);f3=sub(f2,t,-t);subplot(2,2,1);ezplot(f,-8,8);gridon;subplot(2,2,2);ezplot(f1,-8,8);gridon;subplot(2,2,3);ezplot(f2,-8,8);gridon;subplot(2,2,4);ezplot(f3,-8,8);gridon;(3)连续信号的卷积运算y=COnV(X,h)用于实现x、h两个序列的卷积,假定都是从

9、n=0开始。Y序列的长度为x、h序列的长度之和再减1.【例2-2】求两个方波信号的卷积。MATLAB程序如下:y1=ones(1,20),zeros(1,20);y2=ones(1,10),zeros(1,20);y=conv(y1,y2);n1=1:length(y1);n2=1:length(y2);L=length(y);subplot(3,1,1);plot(n1,y1);axis(1L02);subplot(3,1,2);plot(n2,y2);axis(1L02);n=1:L;subplot(3,1,3);plot(n,y),axis(1L020);【例2-3】求两个指数信号的卷积

10、。MATLAB程序如下:t=0:0.01:l;yl=exp(-6*t);y2=exp(-3*t);y=conv(yl,y2);L1=length(yl);L2=length(y2);L=length(y);subplot(3,l,l);plot(t,yl);subplot(3,l,2);plot(t,y2);tl=0:0.01:2;subplot(3,l,3);plot(tl,y);四、程序设计实验i.编制程序,生成如下连续信号:&(t-3),cos3t+sin2t。2设计一个程序,选择一个信号f(t),完成信号f(t)到f(21+2)的转化。f(t)=sin(t),f(t)=&(t),f(t

11、)=&(t)&(t4)3.若123,证明卷f(t)*f(t)+f(t)=f(t)*f2(t)+f(t)*f(t)积满足:1231213五、实验预习要求1. 预习实验原理。2. 熟悉实验程序。3. 思考程序设计实验部分程序的编写。六、实验报告要求1在MATLAB中输入程序,验证试验结果,并将实验结果存入指定存储区域。2对于程序设计实验,要求通过对验证性实验的练习,自行编制完整的实验程序,实现对信号的模拟,并得出实验结果。3. 在实验报告中写出完整的自编程序,并给出实验结果。实验3连续LTI系统的时域分析一、实验目的1. 熟悉连续LTI系统在典型激励信号下的响应及其特征。2. 掌握连续LTI系统单

12、位冲激响应的求解方法。3. 重点掌握用卷积法计算连续时间系统的零状态响应。4. 熟悉MATLAB相关函数的调用格式及作用。5. 会用MATLAB对系统进行时域分析。二、实验原理连续时间线性时变系统(LTD可以用如下的线性常系数微分方程来描述:ay(n)(t)+ay(T)(t)+ay(t)+ay(t)=bf(m)(t)+bf(t)+bfnn-110m10其中,nm,系统的初始条件为y(0_),y(0_),y(0_),y-1(0_).。系统的响应一般包括两个部分,即由当前输入所产生的响应(零状态响应)和由历史输入(初始状态)所产生的响应(零输入响应。对于低阶系统,一般可以通过解析的方法得到响应。但

13、对于高阶系统,手工计算就比较困难,这时MATLAB强大的计算功能就能比较容易的确定系统的各种响应,如冲激响应、阶跃响应、零输入响应、零状态响应、全响应等。1直接求解法在MATLAB中,要求以系数向量的形式输入系统的微分方程。因此,在使用前必须对系统的微分方程进行变换,得到其传递函数。其分别用向量a和b表示分母多项式和分子多项式的系数(按照s的降幕排列)。涉及到的MATLAB函数有:impulse(冲激响应)、step(阶跃响应)、roots(零输入响应)、lsim(零状态响应)等。2. 卷积计算法根据系统的单位冲激响应,利用卷积计算的方法,也可以计算任意输入状态下系统的零状态响应。设一个线性零

14、状态系统,已知系统的单位冲激响应为h(t),当系统的激励信号为f(t)时,系统的零状态响应为:y(t)=ff(T)h(t-T)dT=ff(t-T)h(T)dTzsgg也可简单记为y(t)=f(t)*h(t)zs由于计算机采用的是数值计算,因此系统的零状态响应也可用离散序列卷积和来近似为:y(k)二艺f(n)*h(kn)T=f(k)*h(k)zsn=g式中y(k)、f(k)和h(k)分别对应以T为时间间隔对连续时间信号zsy(t)、f(t)和h(t)进行采样所得到的离散序列。zs三、实验内容与方法【例3-1】求系统y(t)+6y(t)+3y(t)=3x(t)+9x(t)的冲激响应和阶跃响应。(1

15、) 系统的冲激响应的MATLAB程序如下:b=3,9;a=l,6,8;sys=tf(b,a)t=0:0.1:10;y=impulse(sys,t);plot(t,y);xlabel(time(t);ylabel(y(t);title(单位冲激响应);(2) 系统的阶跃响应的MATLAB程序如下:b=3,9;a=1,6,8;sys=tf(b,a)t=0:0.1:10;y=step(sys,t);plot(t,y);xlabel(time(t);ylabel(y(t);title(单位阶跃响应);【例3-2】求系统y”(t)+y(t)=cos(t),y(0+)=y(0+)=0的全响应。MATLAB

16、程序如下:b=l;a=l,O,l;sys=tf(b,a)t=0:0.1:10;x=cos(t);y=lsim(sys,x,t);plot(t,y);xlabel(time(t);ylabel(y(t);title(零状态响应);利用函数直接求的程序:b=l;a=l,0,l;ABCD=tf2ss(b,a);sys=ss(A,B,C,D);t=0:0.1:10;x=cos(t);y=lsim(sys,x,t);plot(t,y);xlabel(time(t);ylabel(y(t);title(系统响应);四、程序设计实验1. 计算下述系统在指数函数激励下的零状态响应。1.65S4-0.331S3

17、576S2+90.6+19080H(s)=S6+0.996S5+463S4+97.8S3+12131S2+8.11s2计算下述系统在冲激、阶跃、斜坡和正弦激励下的零状态响应。y(4)(t)+0.6363y(t)+0.9396y(t)+0.5123y(t)+0.0037y(t)=-0.475f(t)0.248f(t)0.1189f(t)0.0564f(t)五、实验预习要求1. 预习实验原理。2. 熟悉实验程序。3. 思考程序设计实验部分程序的编写。六、实验报告要求1. 在MATLAB中输入程序,验证试验结果,并将实验结果存入指定存储区域。2. 对于程序设计实验,要求通过对验证性实验的练习,自行编

18、制完整的实验程序,实现对信号的模拟,并得出实验结果。3. 在实验报告中写出完整的自编程序,并给出实验结果。实验4连续系统的频域分析、实验目的1. 掌握连续时间信号的傅里叶变换和傅里叶逆变换的实现方法。2掌握傅里叶变换的数值计算方法和绘制信号频谱的方法。二、实验原理1. 周期信号的分解根据傅里叶级数的原理,任何周期信号都可以分解为三角级数的组合这称为f(t)的傅里叶级数。在误差确定的前提下,可以由一组三角函数的有限项叠加而得到。例如一个方波信号可以分解为:f(t)=4E(sint+】sin3t+sin5t+】sin7t+)兀i3i5i7i合成波形所包含的谐波分量越多,除间断点附近外,它越接近于原

19、波形,在间断点附近,即使合成的波形所含谐波次数足够多,也仍存在约9%的偏差,这就是吉布斯现象(Gibbs)。2连续时间信号傅里叶变换的数值计算由傅里叶变换的公式:f(妙)=ff(t)e-呗=lim区f(nT)e-阿TgTtOn=g当f(t)为时限信号时,上式中的n取值可以认为是有限项N,则有:F(k)=Sf(nT)x,okn,其中=竺kn=0kNt3系统的频率特性连续LTI系统的频率特性称为频率响应特性,是指在正弦信号激励作用下稳态作用响应随激励信号频率的变化而变化的情况,表示为:H()=Y()X()三、实验内容与方法1周期信号的分解【例4-1】用正弦信号的叠加近似合成一个频率为50Hz,幅度

20、为3的方波。MATLAB程序如下:clearallfs=10000;t=0:l/fs:0.1;f0=50;sum=0;subplot(211)forn=1:2:9plot(t,4/pi*1/n*sin(2*pi*n*f0*t),k);holdon;endtitle(信号叠加前);subplot(212)forn=1:2:9;sum=sum+4/pi*1/n*sin(2*pi*n*f0*t);endplot(t,sum,k);title(信号叠加后);2. 傅里叶变换和逆变换的实现求傅里叶变换,可以调用forier函数,调用格式为F=fourier(f,u,v),是关于u的函数f的傅里叶变换,返

21、回函数F是关于v的函数。求傅里叶逆变换,可以调用iforier函数,调用格式为f=ifourier(F,u,v),是关于v的函数F的傅里叶逆变换,返回函数f是关于u的函数。【例4-2】已知连续信号f(t)=e-2iti,通过程序完成其傅里叶变换。MATLAB程序如下:symstf=fourier(exp(-2*abs(t);ezplot(f);【例4-3】已知连续信号F(jo)=,通过程序完成其傅里叶1+2变换。MATLAB程序如下:symstwifourier(l/(l+w2),t)3. 傅里叶变换的性质举例练习傅里叶变换的时移特性和频移特性。【例4-4】分别绘出信号f=1e_2te和f(t

22、-1)的频谱,求f(t)=e-2te(t)的频谱。MATLAB程序如下:r=0.02;t=-5:r:5;N=200;W=2*pi;k=-N:N;w=k*W/N;fl=l/2*exp(-2*t).*stepfun(t,0);F=r*fl*exp(-j*t*w);Fl=abs(F);Pl=angle(F);subplot(3,l,l);plot(t,fl);gridxlabel(t),ylabel(f(t);title(f(t);subplot(3,1,2);plot(w,Fl);xlabel(w);grid;ylabel(F(jw)的模);subplot(3,l,3);plot(w,Pl*180

23、/pi);grid;xlabel(w);ylabel(相位(度);再求信号f(t-l)的频谱:r=0.02;t=-5:r:5;N=200;W=2*pi;k=-N:N;w=k*W/N;fl=l/2*exp(-2*(t-1).*stepfun(t,1);F=r*f1*exp(-j*t*w);Fl=abs(F);Pl=angle(F);subplot(3,l,l);plot(t,fl);gridxlabel(t),ylabel(f(t);title(f(t);subplot(3,l,2);plot(w,Fl);xlabel(w);grid;ylabel(F(jw)的模);subplot(3,l,3)

24、;plot(w,Pl*180/pi);grid;xlabel(w);ylabel(相位(度);【例4-5】傅里叶变换的频移特性:信号f(t)=g(t)为门信号,绘出信号f=/e_jlOt和信号f=/ejlOt的频谱,并与原信号的12频谱图进行比较。(1)f(t)=g(t)=8(t-1)-8(t+1),求其频谱可以采用数值计算的方法。MATLAB程序如下:R=0.02;t=-2:R:2;f=stepfun(t,-l)-stepfun(t,l);w1=2*pi*5;N=500;k=0:N;W=k*wl/N;F=f*exp(-j*t*W)*R;F=real(F);W=-fliplr(W),W(2:5

25、01);F=fliplr(F),F(2:501);subplot(211);plot(t,f);xlabel(t),ylabel(f(t);axis(-2,2,-0.5,2);title(f(t)=u(t+l)-u(tT);subplot(212);plot(W,F);xlabel(w),ylabel(F(w);title(f(t)的傅里叶变换);(2)得到f(t)=/(t)e-j10t,f(t)=/(t)ej10t的频谱的12MATLAB程序如下:R=0.02;t=-2:R:2;f=stepfun(t,-l)-stepfun(t,l);fl=f.*exp(-j*10*t);f2=f.*exp

26、(j*10*t);w1=2*pi*5;N=500;k=-N:N;W=k*w1/N;F1=f1*exp(-j*t*W)*R;F2=f2*exp(-j*t*W)*R;Fl=real(Fl);F2=real(F2);subplot(211);plot(W,F1);xlabel(w),ylabel(Fl(w);title(Fl(jw)的频谱);subplot(212);plot(W,F2);xlabel(w),ylabel(F2(w);title(F2(jw)的频谱);四、程序设计实验1. 方波的合成实验。用5项谐波合成一个频率为50Hz,幅值为3的方波,写出MATLAB程序,给出实验结果。2. 编写

27、程序,画出信号f(t)=e-3t(t),f(t-4)以及信号f(t疋-j4t的频谱图。五、实验预习要求1. 预习实验原理。2. 熟悉实验程序。3. 思考程序设计实验部分程序的编写。六、实验报告要求1. 在MATLAB中输入程序,验证试验结果,并将实验结果存入指定存储区域。2. 对于程序设计实验,要求通过对验证性实验的练习,自行编制完整的实验程序,实现对信号的模拟,并得出实验结果。3. 在实验报告中写出完整的自编程序,并给出实验结果。实验5连续系统的复频域分析一、实验目的1了解连续系统的复频域分析的基本方法。2. 掌握相关函数的调用。二、实验原理1拉普拉斯变换与傅里叶变换的关系如果信号f(t)的

28、傅里叶变换存在,则拉普拉斯变换与傅里叶变换的关系可表示为:Fj)二F(s)1s=J2. 系统冲激响应的求解根据系统函数H(s)和冲激响应的关系式:H(s)=fh(t)e-stdtg可以用拉普拉斯逆变换的方法求系统的冲激响应。3. 应用拉普拉斯变换法求系统的响应应用经典的拉普拉斯变换法求解系统的响应时,应先从时域变换到复频域,然后在复频域经过处理后,再用拉普拉斯反变换,完成对时域问题的求解。4零极点分布与系统稳定性的关系根据系统函数H(s)零极点的分布来分析连续系统的稳定性是零极点分析的重要应用,由系统稳定性的复频域条件可知,当系统函数H(s)的所有极点均位于S平面的左半平面时,系统稳定。对于高

29、阶系统,求解极点比较困难,所以可以用MATLAB来实现。5零极点分布与系统的频率特性用向量法可以通过系统的零极点分布直接求出系统的频率响应。其中q(j=1,2,m),p(i=1,2,N)分别为系统的零点和极点,则系统的频率响应为:N(加-q)bBBB*eW+屮)H(j)=-j=1=m112m叫jp)AA.A*ej驴广巴)ii=1bBB.B其中,幅频响应为:IHj)1=AA.2Am12n相频响应为:申()=W+屮+.+屮)-(U+U+.+U)12m12n向量jw沿着虚轴变化,角频率由0变化到无穷,就可以直观地求出系统的幅频响应和相频响应的变化,从而求出系统的频率特性。三、实验内容与方法1拉普拉斯

30、变换与傅里叶变换的关系【例5-1】信号f(t)=8(t)-8(t-2),绘制MATLAB曲面观察拉普拉斯变换与傅里叶变换的关系,可以求得信号的拉普拉斯变换与傅里叶变1e-2s换:F(s)=,F(j)=2Sa()e-jsMATLAB程序如下:%绘制矩形信号拉氏变换曲面图elf;a=-0:0.1:5;b=-20:0.1:20;a,b=meshgrid(a,b);c=a+i*b;c=(l-exp(-2*c)./c;c=abs(c);mesh(a,b,c);surf(a,b,c);view(-60,20);axis(-0,5,-20,20,0,2);title(拉氏变换(s域像函数);colormap(hsv);MATLAB程序如下:%绘制矩形信号傅氏变换曲线w=-20:0.1:20;%确定频率范围Fw=(2*sin(w).*exp(i*w)./w;%计算傅里叶变换plot(w,abs(Fw);%绘制信号振幅频谱曲线title(傅里叶变换(振幅频谱曲线);xlabel(频率);2. 应用拉普拉斯变换求解系统的响应【例5-2一个非时变电路的转移函数为:_104(s+6000)HSUS2+875s+88x106g若u=12.5cos(8000t)V,求u0的稳态响应。g0应用拉普拉斯变换法求解,MATLAB程序如下:symsst;Hs

温馨提示

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

评论

0/150

提交评论