基于matlab信号与线性系统分析实验四——线性连续时间系统的分析
- 格式:doc
- 大小:61.00 KB
- 文档页数:8
实验四连续时间信号与系统的频域分析的MATLAB实现[实验目的]1.掌握周期信号的频谱—— Fourier 级数的分析方法及其物理意义。
2.深入理解信号频谱的概念,掌握典型信号的频谱以及Fourier 变换的主要性质。
3 通过阅读、修改并调试本实验系统所给周期信号频谱分析的源程序,加强Matlab 编程能力实验原理:信号与系统的频谱分析就是将信号与系统的时域表征经过傅里叶变换转换到频域表征,从而获得信号与系统在频域的分布特性,使我们从频域的角度获得对信号与系统的性质更加深入与具体的了解。
频谱分析又称为傅里叶分析,他为我们提供了一种非常方便的信号与系统的表示法与分析方法,在信号与系统的分析与研究中有着特别重要的作用。
一. 周期信号振幅谱的MATLAB实现例1.试用MATLAB绘出如图1所示周期矩形脉冲信号的振幅频谱。
图1解:MATLAB程序如下:echo offa=-5;b=5;n=50;j=sqrt(-1);%积分精度tol=1e-6;%设置脉冲波形周期T0=b-a;%定义脉冲波波形xsqual=@(x)1/2.*(x==-1/2)+(x>-1&x<1/2)+1/2.*(x==-1/2);%计算直流分量out(1)=1/T0.*quad(xsqual,a,b,tol);%积分计算基波和各次谐波分量xfun=@(x,k,T)xsqual(x).*exp(-j*2*pi*x*k/T); for i=1:nout(i+1)=1/T0.*quad(xfun,a,b,tol,[],i,T0); endout1=out(n+1:-1:2);out1=[conj(out1),out];absout=abs(out1);n1=[-n:n];stem(n1(n+1:2*n+1),absout(n+1:2*n+1));titile(幅度谱);二. 非周期信号的傅立叶变换的MATLAB实现MATLAB的Symbolic Math Toolbox 提供了能直接求解傅立叶变换及与变换的函数fourier()与ifourier()。
实验四:线性连续时间系统的分析(综合性)一、实验目的1.掌握用matlab 分析系统时间响应的方法2.掌握用matlab 分析系统频率响应的方法3.掌握系统零、极点分布与系统稳定性关系二、实验原理1. 系统函数H(s)系统函数:系统零状态响应的拉氏变换与激励的拉氏变换之比.H(s)=Y(s)/F(s)在matlab 中可采用多种方法描述系统,本文采用传递函数(系统函数)描述法. 在matlab 中, 传递函数描述法是通过传递函数分子和分母关于s 降幂排列的多项式系数来表示的.例如,某系统传递函数如下)1(8.03.11)(2+++=s s s s H则可用如下二个向量num 和den 来表示:num=[1,1]den=[1,1.3,0.8]2. 用matlab 分析系统时间响应 1)脉冲响应y=impulse(num,den,T)T:为等间隔的时间向量,指明要计算响应的时间点.2)阶跃响应y=step(num,den,T)T 同上.3)对任意输入的响应y=lsim(num,den,U,T)U:任意输入信号. T 同上.例:对式(1)系统,分别求脉冲响应、阶跃响应及对输入u(t)=sin(t)的响应.num=[1,1];den=[1,1.3,0.8];T=0:0.1:3;y1=impulse(num,den,T);y2=step(num,den,T);U=sin(T);y3=lsim(num,den,U,T);subplot(2,2,1);plot(T,y1);title('脉冲响应')subplot(2,2,2);plot(T,y2);title('阶跃响应')subplot(2,2,3);plot(T,y3);title('输入为u=sint 的响应')3.用matlab 分析系统频率响应特性频响特性: 系统在正弦激励下稳态响应随信号频率变化的特性.)()()()(ωϕωωωj j s e j H s H j H ===|H(j ω)|:幅频响应特性.ϕ(ω):相频响应特性(或相移特性).Matlab 求系统频响特性函数freqs 的调用格式:h=freqs(num,den,ω)ω:为等间隔的角频率向量,指明要计算响应的频率点.例:求式(1)系统的频响特性.num=[1,1];den=[1,1.3,0.8];W=0:0.1:100;h=freqs(num,den,W);subplot(1,2,1);plot(W,abs(h));title('幅频特性')axis([0,20,0,1.5]);set(gca,'xtick',[0,10,20]);set(gca,'ytick',[0,1/sqrt(2),1.25]);grid on; subplot(1,2,2);plot(W,angle(h));title('相频特性')axis([0,20,-pi/2,0.2]);set(gca,'xtick',[0,10,20]);set(gca,'ytick',[-pi/2,-pi/4,0]);grid on;4.系统零、极点分布与系统稳定性关系系统函数H(s)集中表现了系统的性能,研究H(s)在S 平面中极点分布的位置,可很方面地判断系统稳定性.1) 稳定系统: H(s)全部极点落于S 左半平面(不包括虚轴),则可以满足)]([lim =∞→t h t系统是稳定的.2)不稳定系统: H(s)极点落于S 右半平面,或在虚轴上具有二阶以上极点,则在足够长时间后,h(t)仍继续增长, 系统是不稳定的.3)临界稳定系统: H(s)极点落于S 平面虚轴上,且只有一阶,则在足够长时间后,h(t)趋于一个非零数值或形成一个等幅振荡.系统函数H(s)的零、极点可用matlab 的多项式求根函数roots()求得.极点:p=roots(den)零点:z=roots(num)根据p 和z 用plot()命令即可画出系统零、极点分布图,进而分析判断系统稳定性. 例: 系统函数H(s)如下,画出系统零、极点分布图, 判断该系统稳定性.)2(12324)(2342++-+-=s s s s s s Hnum=[1,0,-4];den=[1,2,-3,2,1];p=roots(den);z=roots(num);plot(real(p),imag(p),'*');hold on;plot(real(z),imag(z),'o');grid on极点: p = -3.1300、 0.7247 + 0.6890i 、0.7247 - 0.6890i 、-0.3195 零点: z = 2.0000、 -2.0000由系统零、极点分布图可知,该系统有一极点位于s右半平面,故系统是不稳定的.三、实验内容设)2)(1()(pspsssH--=设①p1=-2,p2=-30; ②p1=-2,p2=31.针对极点参数①②,画出系统零、极点分布图, 判断该系统稳定性.2.针对极点参数①②,绘出系统的脉冲响应曲线,并观察t→∞时, 脉冲响应变化趋势.3.针对极点参数①, 绘出系统的频响曲线.四、实验要求1.预习实验原理;2. 对实验内容编写程序(M文件),上机运行;3.绘出实验内容的各相应曲线或图,回答相应问题.五、思考题1.确定h(t)与其频率响应H(jw)的关系,在图形上有何关系。
MATLAB与信号实验——连续LTI系统的时域分析连续LTI系统的时域分析是信号与系统学中的重要课题。
MATLAB作为一种强大的科学计算软件,提供了丰富的工具和函数来进行信号与系统的分析。
下面将介绍MATLAB在连续LTI系统时域分析中的应用。
首先,我们需要了解连续LTI系统的基本概念。
一个连续域线性时不变系统(LTI系统)可以由它的冲激响应完全描述。
冲激响应是系统对单位冲激信号的响应。
在MATLAB中,可以使用impulse函数来生成单位冲激信号。
假设我们有一个连续LTI系统的冲激响应h(t),我们可以使用conv 函数来计算系统对任意输入信号x(t)的响应y(t)。
conv函数实现了卷积运算,可以将输入信号与冲激响应进行卷积运算得到输出信号。
例如,我们假设一个连续LTI系统的冲激响应为h(t) = exp(-t)u(t),其中u(t)是单位阶跃函数。
我们可以使用以下代码生成输入信号x(t)和计算输出信号y(t):```matlabt=-10:0.1:10;%时间范围x = sin(t); % 输入信号h = exp(-t).*heaviside(t); % 冲激响应y = conv(x, h, 'same'); % 计算输出信号```这段代码首先定义了时间范围t,然后定义了输入信号x(t)和冲激响应h(t)。
接下来,使用conv函数计算输入信号和冲激响应的卷积,设置参数’same’表示输出信号与输入信号长度相同。
最后,得到了输出信号y(t)。
在得到输出信号后,我们可以使用MATLAB的绘图功能来可视化结果。
例如,使用以下代码可以绘制输入信号和输出信号的图像:```matlabfigure;plot(t, x, 'b', 'LineWidth', 2); % 绘制输入信号hold on;plot(t, y, 'r', 'LineWidth', 2); % 绘制输出信号xlabel('时间');ylabel('幅度');legend('输入信号', '输出信号');```除了卷积运算外,MATLAB还提供了许多其他函数来进行连续LTI系统的时域分析。
武汉工程大学电气信息学院三、实验数据与结果分析1、2、四、思考:2. 3.四、思考:1、代数运算符号*和.*的区别是?*是矩阵相乘,是矩阵A行元素与B的列元素相乘的和.*是数组相乘,表示数组A和数组B中的对应元素相乘实验内容实验三连续时间信号的卷积一、实验内容1、已知两连续时间信号如下图所示,绘制信号f1(t)、f2(t)及卷积结果f(t)的波形;设时间变化步长dt分别取为0.5、0.1、0.01,当dt取多少时,程序的计算结果就是连续时间卷积的较好近似?2、、计算信号()()()11==-a t u e t f at 和()()t tu t f sin 2=的卷积f(t),f 1(t)、f 2(t)的时间范围取为0~10,步长值取为0.1。
绘制三个信号的波形。
二、实验方法与步骤1、绘制信号f 1(t)、f 2(t)及卷积结果f(t)的波形,当dt 取0.01时程序的计算结果就是连续时间卷积的较好近似程序代码如下:clear allclose allclcdt=0.01t1=0:dt:2;t2=-1:dt:1;f1=0.5*t1;f2=0.5*(t2+1);y=dt*conv(f1,f2); %计算卷积t0=t1(1)+t2(1); %计算卷积结果的非零样值的起点位置2.实验内容三、实验数据与结果分析1.2.实验内容实验五连续时间信号的频域分析一、实验内容1、如图5.4所示的奇谐周期方波信号,周期为T1=1,幅度为A=1,将该方波信号展开成三角形式Fourier级数并分别采用频域矩形窗和Hanning窗加权,绘制两种窗函数加权后的方波合成图像。
时间范围取为-2~2,步长值取为0.01。
2、将图5.5中的锯齿波展开为三角形式Fourier级数,按(2)式求出Fourier级数的系数,并在频域分别采用矩形窗、Hanning窗和三角窗加权,观察其Gibbs效应及其消除情况。
时间范围取为-2~2,步长值取为0.01。
【关键字】实现连续时间系统分析及MATLAB实现张登奇,张璇(湖南理工学院信息与通信工程学院,湖南岳阳)摘要:文章介绍了分析连续时间系统的基本流程,阐述了系统模型的创建方法,并用拉普拉斯变换对连续时间系统进行了时域、频域和稳定性分析,实例列举了MATLAB实现的程序。
关键词:MATLAB;连续时间系统;系统分析;拉普拉斯变换;系统函数引言系统分析就是已知系统结构和参数,研究系统的特性或计算给定激励下系统的输出。
分析系统首先要根据系统结构建立描述系统的数学模型,再采用适当的数学方法分析这个模型,找出反映系统基本性能的特征量,或求解给定激励下系统的输出。
在连续时间系统中,线性时不变连续时间系统是最基本的连续时间系统,电路网络或结构框图是常见的系统结构描述形式。
下面以线性时不变连续时间因果稳定系统为例,介绍系统分析的基本流程,阐述创建电路网络或结构框图数学模型的基本方法,并用拉普拉斯变换法对连续时间系统进行时域分析、频域分析和稳定性分析,结合实例列出MA TLAB在系统分析过程中的应用程序。
1 系统分析流程系统分析实质上是根据系统模型进行数学运算的过程。
分析系统首先要根据系统结构,建立一个描述系统的数学模型。
微分方程只与连续系统的自身结构有关,反映了系统的自身特性,是最基本的系统模型。
在零状态条件下,将微分方程两边进行拉普拉斯变换很容易得出系统函数。
系统函数的拉氏反变换就是描述系统时间特性的特征参数——单位冲激响应;将系统函数的变量用代入即可得到描述系统频率特性的特征参数——频率响应。
对系统进行时域分析,主要是求解微分方程,也可通过计算系统输入与单位冲激响应的卷积,在时域直接求解系统的零状态响应;对系统进行频域分析,主要是寻求系统输出随频率变化的规律,也可根据卷积性质把时域中的卷积计算变换成频域中的乘法运算。
无论是时域分析还是频域分析,拉普拉斯变换是简化运算的有力工具[1],系统函数是时域与频域联系的桥梁,根据其极点位置也可方便判断系统的稳定性。
连续时间信号的分析一、实验目的1.学习使用MATLAB 产生基本的连续信号、绘制信号波形。
2.实现信号的基本运算,为信号分析和系统设计奠定基础。
二、实验原理 1、基本信号的产生 时间间隔代替连续信号。
连续指数信号的产生连续矩形脉冲信号(门信号)的产生。
连续周期矩形波信号的产生。
2、信号的基本运算相加、相减、相乘、平移、反折、尺度变换。
三、实验内容1. 用MATLAB 编程产生正弦信号()sin(2),2,5Hz,3f t K ft K f ππθθ=+===,并画图。
代码如下: clc clear f0=5; w0=2*pi*f0; t=0:0.001:1; x=2*sin(w0*t+pi/3); plot(t,x) title('正弦信号')正弦信号2. 用MATLAB 编程产生信号122()0t f t -<<⎧=⎨⎩其它,画出波形。
代码如下:clc clear f0=2;t=0:0.0001:2.5; y=square(w0*t,50); plot(t,y);axis([0 2.5 -1.5 1.5]) title('周期方波');图形如下:单位阶跃信号3. 分别画出2中()f t 移位3个单位的信号(3)f t -、反折后的信号()f t -、尺度变换后的信号(3)f t 。
代码如下:clc cleart=-10:0.001:10; subplot(3,1,1) plot(t,f(t-3)) axis([-7 7 -2 2]) xlabel('t') ylabel('f(t-3)') title('移位') grid on subplot(3,1,2) plot(t,f(-t)) axis([-7 7 -2 2]) xlabel('t') ylabel('f(-t)') title('反折') grid on subplot(3,1,3) plot(t,f(3*t)) axis([-7 7 -2 2]) xlabel('t') ylabel('f(3t)') title('尺度变换') grid on 图形如下:xf (t )xf (t -3)xf (-t )xf (3*t )4. 用MATLAB编程画出下图描述的函数。
信号与系统实验报告—连续时间信号实验名称:连续时间信号一、实验目的1、熟悉Matlab编程工具的应用;2、掌握利用Matlab进行连续时间信号的绘制、分析和处理。
二、实验原理连续时间信号是指在时间轴上连续存在的信号。
连续时间信号可以用数学函数来描述,并且它们是时间变量t的函数,其幅度可以是任意实数或复数。
连续时间信号可以由物理系统中的物理量得到,比如声音信号、图像信号等。
对于一个连续时间信号x(t),可以对它进行各种变换,如平移、伸缩、反转等,这些操作可以用函数来表示。
其中,平移信号可以用x(t - a)表示,伸缩信号可以用x(at)表示,反转信号可以用x(-t)表示。
另外,通过利用傅里叶变换可以分析连续时间信号的频率构成,了解信号的频域特性,其傅里叶变换公式为:F(jω) = ∫[ -∞ , ∞ ] f(t) · e^(-jωt) · dt其中,F(jω)为信号在频域上的变换值,因此,我们可以通过傅里叶变换来分析信号在频域上的性质。
三、实验内容2、使用Matlab对信号进行平移、伸缩、反转等处理;3、使用Matlab对信号进行傅里叶变换,分析信号的频域特性。
四、实验步骤1、绘制信号首先,我们需要确定信号的形式和表示方法,根据实验要求选择不同的信号进行绘制。
在此以正弦信号为例,使用Matlab中的plot函数绘制正弦函数图形:t = 0: 0.01: 10;x = sin (2* pi* t);plot(t, x);xlabel('Time / s');title('Continuous sinusoidal signal');对信号进行平移、伸缩、反转处理也是十分简单的,只需要在信号函数上添加对应的变换操作即可。
以下是对信号进行平移、伸缩、反转处理的Matlab代码:3、进行傅里叶变换及频域分析Y = fft (x);P2 = abs (Y/L);P1(2:end-1) = 2* P1(2:end-1);title ('Single-Sided Amplitude Spectrum of x(t)');ylabel ('|P1(f)|');根据得到的频域分析结果,我们可以得出连续时间信号的功率、频率等特性。
MATLAB与信号实验-——-连续LTI系统的时域分析在信号处理中,MATLAB是一个强大的工具,它提供了许多功能,使我们能够模拟和分析各种信号系统。
对于连续LTI系统,时域分析是一个重要的方法,它允许我们直接观察系统的输入和输出信号之间的关系。
下面是一个关于连续LTI系统的时域分析的实验。
一、实验目的本实验的目的是验证连续LTI系统的时域响应,通过使用MATLAB模拟系统,我们可以观察到不同的输入信号产生的输出信号,从而了解系统的特性。
二、实验步骤1.定义系统:首先,我们需要定义我们的连续LTI系统。
这可以通过使用MATLAB中的lti函数来完成。
我们需要提供系统的传递函数,它描述了系统的输入和输出之间的关系。
2.设置输入信号:为了观察系统的行为,我们需要设置一个合适的输入信号。
在MATLAB中,我们可以使用square函数来生成一个方波信号,该信号具有固定的频率和幅度。
3.模拟系统:使用MATLAB的lsim函数,我们可以模拟我们的连续LTI系统。
这个函数将输入信号和系统的传递函数作为参数,然后计算出系统的输出信号。
4.分析结果:我们可以使用MATLAB的图形功能来观察输入和输出信号。
这可以帮助我们理解系统的行为,并验证我们的模型是否正确。
三、实验结果与分析在实验中,我们使用了不同的输入信号(如方波、正弦波等)来测试我们的连续LTI系统。
对于每种输入信号,我们都观察了系统的输出信号,并记录了结果。
通过对比不同的输入和输出信号,我们可以得出以下结论:1.对于方波输入,系统的输出信号是带有延迟的方波,这表明系统对突变信号的响应是瞬时的。
2.对于正弦波输入,系统的输出信号是与输入信号同频同相位的正弦波,这表明系统对正弦波的响应是具有稳定性的。
这些结果验证了连续LTI系统的基本特性:即对于单位阶跃函数(突变信号)的输入,系统的响应是瞬时的;而对于周期性输入(如正弦波),系统的响应具有稳定性。
这些结果与我们在理论上学到的知识相符,从而验证了我们的模型是正确的。
《MATLAB 》连续时间信号的频域分析和连续时间系统的时域分析实验报告1、编写程序Q3_1,绘制下面的信号的波形图:其中,ω0 = 0.5π,要求将一个图形窗口分割成四个子图,分别绘制cos(ω0t)、cos(3ω0t)、cos(5ω0t) 和x(t) 的波形图,给图形加title ,网格线和x 坐标标签,并且程序能够接受从键盘输入式中的项数n。
2、给程序例3_1增加适当的语句,并以Q3_2存盘,使之能够计算例题3-1中的周期方波信号的傅里叶级数的系数,并绘制出信号的幅度谱和相位谱的谱线图。
-+-=)5cos(51)3cos(31)cos()(000t t t t x ωωω∑∞==10)cos()2sin(1n t n n nωπ3.3反复执行程序例3_2,每次执行该程序时,输入不同的N值,并观察所合成的周期方波信号。
通过观察,你了解的吉布斯现象的特点是什么?3.4分别手工计算x1(t) 和x2(t) 的傅里叶级数的系数。
1.利用MATLAB 求齐次微分方程,,起始条件为,,时系统的零输入响应、零状态响应和全响应。
2. 已知某LTI 系统的方程为:其中,。
利用MATLAB 绘出范围内系统零状态响应的波形图。
3.已知系统的微分方程如下,利用MATLAB 求系统冲激响应和阶跃响应的数值解,并绘出其时域波形图。
(1)'''()2''()'()'()y t y t y t x t ++=()()t x t e u t -=(0)1y -='(0)1y -=''(0)2y -=''()5'()6()6()y t y t y t x t ++=()10sin(2)()x t t u t π=05t ≤≤''()3'()2()()y t y t y t x t ++=(2)''()2'()2()'()y t y t y t x t ++=。
第一题:
1.
num=[1,0];
den=[1,32,60];
p=roots(den);
z=roots(num);
plot(real(p),imag(p),'*');hold on;
plot(real(z),imag(z),'o');grid on
稳定
-30-25-20-15-10-50 2.
num=[1,0];
den=[1,32,60];
T=0:0.1:3;
y1=impulse(num,den,T);
y2=step(num,den,T);
U=sin(T);
y3=lsim(num,den,U,T);
subplot(1,1,1);plot(T,y1);title('脉冲响应');grid on;
-2-1.5-1-0.500.51 1.52 2.53
第二题:
1.
num=[1,0];
den=[1,32,60];
T=0:0.1:3;
y1=impulse(num,den,T);
y2=step(num,den,T);
U=sin(T);
y3=lsim(num,den,U,T);
subplot(1,1,1);plot(T,y1);title('脉冲响应');grid on;
00.51 1.52 2.53-0.20
0.2
0.4
0.6
0.8
1
1.2
2.
num=[1,0];
den=[1,-1,-6];
T=0:0.1:3;
y1=impulse(num,den,T);
y2=step(num,den,T);
U=sin(T);
y3=lsim(num,den,U,T);
subplot(1,1,1);plot(T,y1);title('脉冲响应');grid on;
00.51 1.52 2.530500
1000
1500
2000
2500
3000
3500
4000
4500
5000
第三题:
num=[1,0];
den=[1,32,60];
W=0:0.1:100;
h=freqs(num,den,W);
subplot(2,1,1);plot(W,abs(h));title('幅频特性');grid on;
subplot(2,1,2);plot(W,angle(h));title('相频特性');grid on;
010********
6070809010000.01
0.02
0.03
0.04
0102030405060708090100-2-1
1
2
相频特性
例题1:
num=[1,1];
den=[1,1.3,0.8];
T=0:0.1:3;
y1=impulse(num,den,T);
y2=step(num,den,T);
U=sin(T);
y3=lsim(num,den,U,T);
subplot(221);plot(T,y1);title('脉冲响应');
subplot(222);plot(T,y2);title('阶跃响应');
subplot(223);plot(T,y3);title('输入为u=sint 的响应');
012300.2
0.40.60.8
1脉冲响应01
2300.5
1
1.5
阶跃响应
0123
00.5
1
1.5
输入为u=sint 的响应
例题2:
num=[1,1];
den=[1,1.3,0.8];
W=0:0.01:100;
h=freqs(num,den,W);
subplot(1,2,1);plot(W,abs(h));title('•ùÆµÌØÐÔ')
axis([0,20,0,1.5]);
set(gca,'xtick',[0,10,20]);set(gca,'ytick',[0/sqrt(2),1.25]);grid on; subplot(1,2,2);plot(W,angle(h));title('ÏàÆµÌØÐÔ')
axis([0,20,-pi/2,0.2]);
set(gca,'xtick',[0,10,20]);set(gca,'ytick',[-pi/2,-pi/4,0]);grid on;
010200
1.25
ù••••••01020-1.5708-0.7854
•à••••••
例题3:
num=[1,0,-4];
den=[1,2,-3,2,1];
p=roots(den);
z=roots(num);
subplot(2,2,1);plot(real(p),imag(p),'*');grid on;hold on;
subplot(2,2,2);plot(real(z),imag(z),'o');grid on;
-4-202-1-0.5
0.5
1
-2-1012。