1、000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000
2、400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400
3、003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 00004000036 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 000040000
4、3 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0
5、000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000
6、400003 0000400003 0000400003 0000400003丶 0000400003伶 0000400003倶 0000400003儶 0000400003制 0000400003匶 0000400003吶 0000400003唶 0000400003嘶 0000400003圶 0000400003堶 0000400003夶 0000400003娶 0000400003嬶 0000400003尶 0000400003崶 0000400003帶 0000400003弶 0000400003怶 0000400003愶 0000400003戶 0000400003挶 0000400
7、003搶 0000400003收 0000400003昶 0000400003朶 0000400003栶 0000400003椶 0000400003樶 0000400003欶 0000400003氶 0000400003洶 0000400003渶 0000400003漶 0000400003瀶 0000400003然 0000400003父 0000400003猶 0000400003琶 0000400003甶 0000400003瘶 0000400003眶 0000400003砶 0000400003礶 0000400003稶 0000400003笶 0000400003簶 0000400
8、003紶 0000400003縶 0000400003缶 0000400003耶 0000400003脶 0000400003舶 0000400003茶 0000400003萶 0000400003蔶 0000400003蘶 0000400003蜶 0000400003蠶 0000400003褶 0000400003訶 0000400003謶 0000400003谶 0000400003贶 0000400003踶 0000400003輶 0000400003逶 0000400003鄶 0000400003鈶 0000400003錶 0000400003鐶 0000400003锶 0000400
9、003阶 0000400003霶 0000400003頶 0000400003餶 0000400003騶 0000400003鬶 0000400003鴶 0000400003鰶 0000400003鸶 0000400003鼶 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003艩
10、000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000
11、400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400
12、003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003制 0000400003夶 0000400003帶 0000400003朶 0000400003氶 0000400003洶 0000400003琶 0000400003甶 0000400003瘶 0000400003礶 0000400003缶 0000400003茶 0000400003萶 0000400003蔶 0000400003蠶 0000400003輶 0000400003逶 0000
13、400003鄶 0000400003鈶 0000400003鐶 0000400003頶 0000400003騶 0000400003鸶 0000400003鼶 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003
14、0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 000
15、0400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 000040
16、0003 0000400003 00004000036 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 00004000
17、03 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003
18、0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003 0000400003丶 0000400003斯特(Nyquist)取样间隔。如果f(t)不是严格的带限信号,则可以根据实际计算的精度要求来确定一个适当的频率为信
19、号的带宽。 例:用数值计算法实现上面门函数f(t)=(t+1)-(t-1)的傅里叶变换,并画出幅度频谱图 分析: 该信号的频谱为,其第一个过零点频率为,一般将此频率认为是信号的带宽。但考虑到的形状(为抽样函数),假如将精度提高到该值的50倍,即取,则据此确定的Nyquist取样间隔为:MATLAB程序如下:R=0.02; %取样间隔=0.02t=-2:R:2; % t为从-2到2,间隔为0.02的行向量%有201个样本点ft=zeros(1,50),ones(1,101),zeros(1,50); % 产生f(t)的样值矩阵(即f(t)的样本值%组成的行向量)W1=10*pi; %取要计算的频
20、率范围M=500; k=0:M; w=k*W1/M; %频域采样数为M, w为频率正半轴的采样点Fw=ft*exp(-j*t*w)*R; %求傅氏变换 FRw=abs(Fw); %取振幅W=-fliplr(w),w(2:501) ; %形成负半轴和正半轴的2M+1个频率点WFW=fliplr(FRw),FRw(2:501); %形成对应于2M+1个频率点的值Subplot(2,1,1) ; plot(t,ft) ;grid; %画出原时间函数f(t)的波形,并加网格xlabel(t) ; ylabel(f(t); %坐标轴标注title(f(t)=u(t+1)-u(t-1); %文本标注sub
21、plot(2,1,2) ; plot(W,FW) ;grid; %画出振幅频谱的波形,并加网格xlabel (W) ; ylabel (F(W); %坐标轴标注title(f(t)的振幅频谱图); %文本标注运行结果如下:三、 设计内容1、 编程实现下列信号的幅度频谱 a. 求出f1(t)=(2t+1)-(2t-1)的频谱函数F1(j),请将它与上面门宽为2的门函数f(t)=(t+1)-(t-1)的频谱进行比较,观察两者的特点,说明两者的关系。b.三角脉冲 f2(t)= c.单边指数信号f3(t)=d.高斯信号 f4(t)= 2、 利用ifourier( ) 函数求下列频谱函数的傅氏反变换a.
22、 b. 四、 基本要求1、熟悉常见信号的频谱2、了解MATLAB语言中的函数:fourier , ifourier , abs ,syms ,ezplot。五、设计报告要求1、 傅里叶变换的原理及其数值计算实现法的理论依据2、 记录设计的波形图,写出程序清单3、 收获与建议设计题目三、基于MATLAB的系统零极点及频率响应分析一、 设计目的1 掌握系统函数零极点的定义2 零极点与频率响应的关系3 极点与系统稳定性的关系4 状态方程与系统函数的关系5 在MATLAB中实现系统函数与状态方程间的转换二、 基本原理1 原理描述连续系统的系统函数H(s)的一般表示形式为:其对应的零极点形式的系统函数为
23、: 共有n个极点:p1,p2,pn和m个零点:z1,z2,zm。把零极点画在S平面中得到的图称为零极点图,人们可以通过零极点分布判断系统的特性。当系统的极点处在S的左半平面时系统稳定;处在虚轴上的单阶极点系统稳定;处在S的右半平面的极点及处在虚轴上的高阶极点,系统是不稳定的。描述系统除了可以用系统函数和零极图以外,还可以用状态方程。对应上述用系统函数H (s) 描述的系统,其状态方程可用相变量状态方程和对角线变量状态方程描述,形式分别为相变量状态方程:输入方程为对角线变量方程 输出方程 矩阵中的p为系统函数的极点,k为部分分式展开中的系数,即 上述状态方程和输出方程均可表示为 A.B.C.D分
24、别表示对应的矩阵,上述二种表示中D=0。系统在频域中的特性可以用频域中的系统函数表示 H(j)是复函数,可表示为称为幅频特性, 称为相频特性。MATLAB语言提供了系统函数,零极点和状态方程之间的相互转换语句,也提供了得到系统频率特性的语句:tf2zp:从系统函数的一般形式求出其零点和极点。zp2tf:从零极点求出系统函数的一般式。ss2zp:从状态方程式求系统的零极点。zp2ss:从零极点求系统的状态方程。freqs:由H(s)的一般形式求其幅频特性和相频特性。2例题 已知系统函数 ,求其零极点图。MATLAB程序如下:num = 1 0.5 2; %分子系数,按降幂顺序排列。den = 1
25、 0.4 1; %分母系数,按降幂顺序排列。z,p = tf2zp(num,den); %求零点z和极点pzplane (z,p) %作出零极点图运行结果如下: 已知系统和状态方程和输出方程 求其系统的零极点。MATLAB程序如下: A = 1,0;1,-3; B = 1,0; C = - ,1; D = 0 z,p = ss2zp (A,B,C,D) %求出零极点 zplane (z,p) %画出零极点图 已知系统的传递函数为 ,求其频率特性。MATLAB程序如下:num = 0.2 0.3 1; den = 1 0.4 1; w =logspace (-1,1); %频率范围freqs(n
26、um,den,w) %画出频率响应曲线运行结果如下:三、 设计内容1 已知下列系统函数H (s)或状态方程,求其零极点,并画出零极点图。 状态方程:输出方程:y = 4 5 1X2 已知下列系统函数H (s),求其频率特性。 3. 已知系统函数H (s),求其频率特性和零极图。四、 设计报告要求1 简述设计目的及基本原理2 计算系统的零极点并与设计结果进行比较3 记录频率特性曲线4 收获与建议设计题目四 LTI系统零状态响应的MATLAB仿真一、 设计目的1、 熟悉连续时间系统的单位冲激响应、阶跃响应的意义及求解方法2、 熟悉离散时间系统的单位冲激响应、阶跃响应的意义及求解方法3、 熟悉连续(
27、离散)时间系统在任意信号激励下响应的求解方法4、 熟悉应用MATLAB实现求解系统响应的方法二、 基本原理1、连续时间系统对于连续的LTI系统,当系统输入为e(t),输出为r(t),则输入与输出之间满足如下的线性常系数微分方程:当系统输入为单位冲激信号(t)时产生的零状态响应称为系统的单位冲激响应,用h(t)表示。若输入为单位阶跃信号(t)时,系统产生的零状态响应则称为系统的单位阶跃响应,记为g(t),如下图所示。系统的单位冲激响应h(t)包含了系统的固有特性,它是由系统本身的结构及参数所决定的,与系统的输入无关。我们只要知道了系统的冲激响应,即可求得系统在不同激励下产生的响应。因此,求解系统
28、的冲激响应h(t)对我们进行连续系统的分析具有非常重要的意义。在MATLAB中有专门用于求解连续系统冲激响应和阶跃响应, 并绘制其时域波形的函数impulse( ) 和step( )。如果系统输入为e(t),冲激响应为h(t),系统的零状态响应为r(t),则有:若已知系统的输入信号及初始状态,我们便可以用微分方程的经典时域求解方法,求出系统的响应。但是对于高阶系统,手工计算这一问题的过程非常困难和繁琐。在MATLAB中,应用lsim( )函数很容易就能对上述微分方程所描述的系统的响应进行仿真,求出系统在任意激励信号作用下的响应。lsim( )函数不仅能够求出连续系统在指定的任意时间范围内系统响
29、应的数值解,而且还能同时绘制出系统响应的时域波形图。以上各函数的调用格式如下: impulse( ) 函数 函数impulse( )将绘制出由向量a和b所表示的连续系统在指定时间范围内的单位冲激响应h(t)的时域波形图,并能求出指定时间范围内冲激响应的数值解。l impulse(b,a) 以默认方式绘出由向量a和b所定义的连续系统的冲激响应的时域波形。l impulse(b,a ,t0) 绘出由向量a和b所定义的连续系统在0 t0时间范围内冲激响应的时域波形。l impulse(b,a,t1:p:t2) 绘出由向量a和b所定义的连续系统在t1 t2时间范围内,并且以时间间隔p均匀取样的冲激响应
30、的时域波形。l y=impulse(b,a,t1:p:t2) 只求出由向量a和b所定义的连续系统在t1 t2时间范围内,并且以时间间隔p均匀取样的冲激响应的数值解,但不绘出其相应波形。 step( ) 函数函数step( )将绘制出由向量a和b所表示的连续系统的阶跃响应,在指定的时间范围内的波形图,并且求出数值解。和impulse( )函数一样,step( )也有如下四种调用格式:step( b,a)step(b,a,t0)step(b,a,t1:p:t2)y=step(b,a,t1:p:t2) 上述调用格式的功能和impulse( )函数完全相同,所不同只是所绘制(求解)的是系统的阶跃响应g
31、(t),而不是冲激响应h(t)。 lsim( )函数根据系统有无初始状态,lsim( )函数有如下两种调用格式:系统无初态时,调用lsim( )函数可求出系统的零状态响应,其格式如下:l lsim(b,a,x,t) 绘出由向量a和b所定义的连续系统在输入为x和t所定义的信号时,系统零状态响应的时域仿真波形,且时间范围与输入信号相同。其中x和t是表示输入信号的行向量,t为表示输入信号时间范围的向量,x则是输入信号对应于向量t所定义的时间点上的取样值。l y=lsim(b,a,x,t) 与前面的impulse 和step函数类似,该调用格式并不绘制出系统的零状态响应曲线,而只是求出与向量t定义的时
32、间范围相一致的系统零状态响应的数值解。系统有初始状态时,调用lsim( )函数可求出系统的全响应,格式如下:l lsim(A,B,C,D,e,t,X0) 绘出由系数矩阵A,B,C,D所定义的连续时间系统在输入为e和t所定义的信号时,系统输出函数的全响应的时域仿真波形。t为表示输入信号时间范围的向量,e则是输入信号e(t)对应于向量t所定义的时间点上的取样值,X0表示系统状态变量X=x1,x2,.xn在t=0时刻的初值。l Y,X= lsim(A,B,C,D,e,t,X0) 不绘出全响应波形,而只是求出与向量t定义的时间范围相一致的系统输出向量Y的全响应以及状态变量X的数值解。显然,函数lsim
33、( )对系统响应进行仿真的效果取决于向量t的时间间隔的密集程度,t的取样时间间隔越小则响应曲线越光滑,仿真效果也越好。说明:(1)当系统有初始状态时,若使用lsim( )函数求系统的全响应,就要使用系统的状态空间描述法,即首先要根据系统给定的方式,写出描述系统的状态方程和输出方程。假如系统原来给定的是微分方程或系统函数,则可用相变量法或对角线变量等方法写出系统的状态方程和输出方程。其转换原理如前面设计四所述。(2)显然利用lsim( )函数不仅可以分析单输入单输出系统,还可以分析复杂的多输入多输出系统。例题1: 若某连续系统的输入为e(t),输出为r(t),系统的微分方程为:求该系统的单位冲激
34、响应h(t)及其单位阶跃响应g(t)。若 求出系统的零状态响应r(t) 求冲激响应及阶跃响应的MATLAB程序:a=1 5 6;b=3 2;subplot(2,1,1), impulse(b,a,4)subplot(2,1,2), step(b,a,4)运行结果如下: 求零状态响应的MATLAB程序:a=1 5 6;b=3 2;p1=0.01; %定义取样时间间隔为0.01t1=0:p1:5; %定义时间范围x1=exp(-2*t1); %定义输入信号lsim(b,a,x1,t1), %对取样间隔为0.01时系统响应进行仿真hold on; %保持图形窗口以便能在同一窗口中绘制多条曲线p2=0
35、.5; %定义取样间隔为0.5t2=0:p2:5; %定义时间范围x2=exp(-2*t2); %定义输入信号lsim(b,a,x2,t2), hold off %对取样间隔为0.5时系统响应进行仿真并解除保持运行结果如下: 例题2 已知一个过阻尼二阶系统的状态方程和输出方程分别为: r(t)=0 1X(t) 若系统初始状态为X(0)=4 -5T 求系统在作用下的全响应。求全响应程序如下:A=0 1 ; -2 -3 ;B=0 2;C=0 1;D=0;X0=4 -5; %定义系统初始状态t=0: 0.01:10; E=3*exp(-4*t).*ones(size(t); %定义系统激励信号r ,
36、 x=lsim(A,B,C,D,E,t,X0); %求出系统全响应的数值解plot(t,r) %绘制系统全响应波形运行结果如下:2、离散时间系统LTI离散系统中,其输入和输出的关系由差分方程描述: (前向差分方程) (后向差分方程)当系统的输入为单位序列(k)时产生的零状态响应称为系统的单位函数响应,用h(k)表示。当输入为(k)时产生的零状态响应称为系统的单位阶跃应,记为:g(k),如下图所示。 如果系统输入为e(k),冲激响应为h(k),系统的零状态响应为y(k),则有:与连续系统的单位冲激响应h(t)相类似,离散系统的单位函数响应h(k)也包含了系统的固有特性,与输入序列无关。我们只要知
37、道了系统的单位函数响应,即可求得系统在不同激励信号作用下产生的响应。因此,求解系统的单位函数响应h(k)对我们进行离散系统的分析也同样具有非常重要的意义。MATLAB中为用户提供了专门用于求解离散系统单位函数响应, 并绘制其时域波形的函数impz( )。同样也提供了求离散系统响应的专用函数filter( ),该函数能求出由差分方程所描述的离散系统在指定时间范围内的输入序列作用时,产生的响应序列的数值解。当系统初值不为零时,可以使用dlsim( )函数求出离散系统的全响应,其调用方法与前面连续系统的lsim( )函数相似。另外,求解离散系统阶跃响应可以通过如下两种方法实现:一种是直接调用专用函数
38、dstep( ),其调用方法与求解连续系统阶跃响应的专用函数step( )的调用方法相似;另一种方法是利用求解离散系统零状态响应的专用函数filter( ),只要将其中的激励信号看成是单位阶跃信号(k)即可。函数的调用格式分别如下:.impz( )函数l impz(b,a) 以默认方式绘出由向量a和b所定义的离散系统单位函数响应的时域波形。limpz(b,a,n) 绘出由向量a和b所定义的离散系统在0 n (n必须为整数)的离散时间范围内单位函数响应的时域波形。limpz(b,a,n1:n2) 绘出由向量a和b所定义的离散系统在n1 n2 (n1、n2必须为整数)的离散时间范围内单位函数响应的时域波形。l y=impz(b,a,n1:n2) 求出由向量a和b所定义的离散系统在n1 n2 (n1、n2必须为整数)的离散时间范围内单位函数响应的数值解,但不绘出波形。 filter( ) 函数lfilter(b,a,x) 其中a和b与前面相同,x是包含输入序列非零样值点的的行向量。此命令将求出系统在与x的取样时间点相同的输出序列样值。例题:已知描述离散系统的差分方程为: 且已知系统输入序列为 求出系统的单位函数响应h(k)在-3 10离散时间范围内响应波形。 求出系统零状态响应在0