根据Matlab的信号与系统实验指导材料
信号与系统实验指导书信号与系统matlab实验
信号与系统实验指导书信号与系统matlab实验信号与系统实验指导书一、实验目的1、掌握用Matlab绘制波形图的方法,学会常见波形图的绘制。
2、掌握用Matlab编写函数的方法3、通过对周期信号和非周期信号的观察,加深对周期信号的理解。
二、实验内容1、实验原理与计算实例1.1 绘制波图的基本函数 Matlab是一种基于矩阵和数组的编程语言,它将所有的变量都看成矩阵。
它不仅有强大的计算功能,还有各种各样的画图功能。
这里主要介绍信号与系统分析中常见的几个Matlab函数,包括Matlab提供的内部函数和自定义函数。
我们可以在命令窗口中每次执行一条Matlab语句;或者生成一个程序,存为M文,供以后执行;或是生成一个函数,在命令窗口中执行。
下面介绍几个基本函数。
(1)单位阶跃函数 M文名:u.m%单位阶跃函数(连续或离散)%调用格式 y=u(t)产生单位阶跃函数 function y=u(t) y=(t>=0)(2)门函数 M文名:rectplus.m,是Matlab的内部函数。
调用格式 y=rectplus(t)产生高度为1,宽度为1的门函数调用格式y=rectplus(t,W) 产生高度为1,宽度为W的门函数(3)三角脉冲函数 M文名:tripuls.m,是Matlab的内部函数。
调用格式 y=tripuls(t) 产生高度为1,宽度为1的三角脉冲函数调用格式 y=tripuls(t,w) 产生高度为1,宽度为w的三角脉冲函数调用格式 y=tripuls(t,w,s)产生高度为1,宽度为w的三角脉冲函数,-1<s<1。
当s=0时,为对称三角形;当S=-1时,为三角形顶点左边。
(4)抽样函数 M文名:Sa.m %抽样函数(连续或者离散)% 高度为1 % 调用格式 y=Sa(t),产生高度为1,第一个过零点为π function f=Sa(t)f=sinc(t./pi) %sinc(t)=sin(πt)/(πt)是MATLAB函数(5)符号函数 M文名:sign.m是Matlab的内部函数。
信号与系统matlab实验报告
信号与系统MATLAB实验报告实验目的本实验旨在通过MATLAB软件进行信号与系统的相关实验,探究信号与系统的特性与应用。
实验步骤1. 准备工作在正式进行实验之前,我们需要做一些准备工作。
首先,确保已经安装好MATLAB软件,并且熟悉基本的操作方法。
其次,准备好实验所需的信号与系统数据,可以是已知的标准信号,也可以是自己采集的实际信号。
2. 信号的生成与显示使用MATLAB编写代码,生成不同类型的信号。
例如,可以生成正弦信号、方波信号、三角波信号等。
通过绘制信号波形图,观察不同信号的特点和变化。
t = 0:0.1:10; % 时间范围f = 1; % 信号频率s = sin(2*pi*f*t); % 正弦信号plot(t, s); % 绘制信号波形图3. 系统的建模与分析根据实验需求,建立相应的系统模型。
可以是线性时不变系统,也可以是非线性时变系统。
通过MATLAB进行模型的建立和分析,包括系统的时域特性、频域特性、稳定性等。
sys = tf([1, 2], [1, 3, 2]); % 系统传递函数模型step(sys); % 绘制系统的阶跃响应图4. 信号与系统的运算对于给定的信号和系统,进行信号与系统的运算。
例如,进行信号的卷积运算、系统的响应计算等。
通过MATLAB实现运算,并分析结果的意义与应用。
x = [1, 2, 3]; % 输入信号h = [4, 5, 6]; % 系统响应y = conv(x, h); % 信号的卷积运算plot(y); % 绘制卷积结果的波形图5. 实验结果分析根据实验数据和分析结果,对实验进行结果总结与分析。
可以从信号的特性、系统的特性、运算结果等方面进行综合性的讨论和分析。
实验总结通过本次实验,我们学习了如何在MATLAB中进行信号与系统的实验。
通过生成信号、建立系统模型、进行运算分析等步骤,我们深入理解了信号与系统的基本原理和应用方法。
通过实验数据和结果分析,我们对信号与系统有了更深刻的认识,并掌握了MATLAB在信号与系统实验中的应用技巧。
信号与系统MATLAB实验全
实验篇 信号与系统实验指导实验一、MATLAB 编程基础及典型实例一、实验目的(1) 熟悉MATLAB 软件平台的使用; (2) 熟悉MATLAB 编程方法及常用语句; (3) 掌握MATLAB 的可视化绘图技术;(4) 结合《信号与系统》的特点,编程实现常用信号及其运算。
二、实验原理连续信号是指自变量的取值范围是连续的,且对于一切自变量的取值,除了有若干个不连续点以外,信号都有确定的值与之对应。
严格来说,MATLAB 并不能处理连续信号,而是用等时间间隔点的样值来近似表示连续信号。
当取样时间间隔足够小时,这些离散的样值就能较好地近似连续信号。
矩阵是MATLAB 进行数据处理的基本单元,矩阵运算是MATLAB 最重要的运算。
通常意义上的数量(也称为标量)在MATLAB 系统中是作为1×1的矩阵来处理的,而向量实际上是仅有一行或者一列的矩阵。
通常用向量表示信号的时间取值范围,如n = -5:5,但信号x(n)、向量n 本身的下标都是从1开始的,因此必须用一个与向量x 等长的定位时间变量n ,以及向量x ,才能完整地表示序列x(n)。
这一点详情可参考预备篇示例7的程序说明。
三、实验内容与步骤(1) 新建一个文件夹,以自己的汉语名字命名,以后就用该文件夹专门存放自己所编制的M 文件和产生的图形;将该文件夹设置成当前工作目录。
(2) 绘制信号t)32sin(e x(t)t 2-=的曲线,t 的范围在0 ~ 30s ,取样时间间隔为0.1s.(3) 在n = [-10:10] 范围产生离散序列:⎩⎨⎧≤≤-=其余n0,3n 32n,x(n) ,并绘图。
四、实验报告要求整理并给出“实验内容与步骤”(2)、(3)的程序代码与产生的图形;并回答下面的问题。
(1) 在调用某一函数文件时,该文件中除了输入、输出变量外的其它变量在调用函数结束后是否还存在?这些变量是全局还是局部变量?(2) 设n = -10:0.2:20,你可以通过哪些方法查看向量n 的维数?经过关系运算y = (n >= 3)以后,y 的维数是多少?y 又等于什么?(3) 通过MATLAB 的帮助系统,学习fliplr 函数的功能和使用方法。
信号与系统实验指导书(1-2)
实验一Matlab编程基础一、实验目的1. 学习Matlab软件的基本使用方法;2. 了解Matlab的计算、显示及绘图功能。
二、实验内容1. 运行Matlab软件,熟悉各窗口功能;2. 编制程序,完成数值计算,并显示计算结果;3. 给定数据,完成绘图显示。
三、实验步骤1. 熟悉Matlab软件窗口1)点击桌面上的“Matlab”图标,运行Matlab软件,显示Matlab软件主界面。
2)点击“新建”图标,显示编辑界面。
说明:1)在主界面中,“Current Directory”是Matlab软件运行环境的当前路径;“Workspace”是Matlab软件当前的工作空间,可以看到各种变量内容;“Command Window”是Matlab 软件命令窗口,可以直接运行命令,也可以显示运行结果。
2)在编辑界面中,可以编辑运行程序。
编辑完成后,可以点击绿色向右箭头按钮运行所编辑的代码。
2. 熟悉常用指令及编程方法1)常用指令●function:在MATLAB中不是它的自带函数就可以完成所有功能,更多的时候是自己编写程序来实现我们要的功能,这时就要用到此命令,调用格式为:function ****( ) 括号外面为函数名称,括号中为函数中要用到的变量。
●plot命令:plot命令是MATLAB中用来绘制用向量表示法表示的连续信号的波形。
它的功能是将向量点用直线依次连接起来。
调用格式:plot(k,f),其中k和f是向量。
●ezplot命令:ezplot命令是用来绘制用符号运算表示法表示的连续信号的波形。
调用格式:ezplot(f,[t1,t2]),其中[t1,t2]为一时间范围,f为以t为变量的函数。
●title命令:在绘图命令中,我们可以用此命令来对绘制出来的波形做一些注释,以便后期我们做图形处理。
调用格式为:title(‘……‘) 中间部分可以任意对图形进行注释的文字。
●xlabel、ylabel命令:这两个也是来对绘制出来的波形做标注用的,可以标注出两个坐标轴的未知数的意义,增加图形中的信息量。
信号与系统MATLAB实验讲义
实验六 连续系统分析的MATLAB 实现一、实验目的1、深刻理解连续时间系统的系统函数在分析连续系统的时域特性、频率特 性及稳定性中的重要作用及意义;2、掌握利用MATLAB 分析连续系统的时域响应、频率响应和零极点的基本 方法。
二、实验仪器设备PC 机、MATLAB 软件。
三、预习练习1.为了使实验能够顺利地进行,课前对教材中连续系统的频域分析的相关内容和实验原理、方法及内容做好充分预习,并预期实验的结果。
2.学习 MATLAB 软件,尤其是其中的和连续系统的频域分析有关的一些函数的使用。
3.写出实验内容2中的图6-5所示电路的频率响应。
四、实验原理连续时间LTI 系统可用如下的线性常系数微分方程来描述:()(1)(1)110()(1)(1)110()()()()()()()()n n n n m m m m a y t a yt a yt a y tb f t b ft b f t b f t ----++++=++++ (6-1) 如果系统的输入和初始状态已知,便可以用解析的方法求出系统的响应。
但对于高阶系统,手工计算将会变得非常繁琐和困难。
MATLAB 的控制工具箱(control toolbox )里包含了许多可用于分析线性非时变(LTI )系统的函数,使用命令help control 可以查看控制工具箱里的这些函数。
在调用这些函数时,需要用系数向量表示系统。
在后面会介绍具体的使用方法。
(一)系统的频率响应如果设LTI 系统的冲激响应为()h t ,该系统的激励信号为()f t ,则此系统的零状态响应()y t 为()()*()y t h t f t = (6-2)设()f t ,()h t ,()y t 的傅里叶变换分别为()F j ω,()H j ω,()Y j ω,根据时域卷积定理,与式(6-2)对应的频域关系为()()()Y j H j F j ωωω= (6-3)一般地,连续系统的频率响应定义为系统的零状态响应()y t 的傅里叶变换()Y j ω与激励信号()f t 的傅里叶变换()F j ω之比,即()()()Y j H j F j ωωω= (6-4)通常,()H j ω是ω的复函数,因此,又可将其写为()()()j H j H j e ϕωωω= (6-5)称()H j ω为系统的幅频特性,()ϕω为系统的相频特性。
基于matlab的信号与系统实验1
f2=stepfun(k2,0)-stepfun(k2,4);
f=dt*conv(f1,f2);
k0=k1(1)+k2(1);
k3=length(f1)+length(f2)-2;
k=k0:dt:k0+k3*dt;
subplot(2,2,1);
plot(k1,f1);title('f1(t)');xlabel('t');
y9=cos(7*pi*k1/4+pi/3);
subplot(3,3,1);stem(k1,y1);title('y_1(k)');
subplot(3,3,2);stem(k1,y2);title('y_2(k)');
>> subplot(3,3,3);stem(k1,y3);title('y_3(k)');
y6= y7= y8= y9=
指令:
>> k1=0:30;
y1=cos(pi*k1/2);
y2=cos(pi*k1/8);
y3=cos(pi*k1/4);
y4=cos(pi*k1);
y5=cos(3*pi*k1/2);
y6=cos(7*pi*k1/4);
y7=cos(15*pi*k1/8);
y8=cos(2*pi*k1);
以数值计算为主,学会区分数值计算和符号计算。
2.卷积与卷积和
掌握数值法计算离散卷积和,理解离散卷积与连续卷积的关系,掌握计算连续卷积的数值方法(近似方法)。
实验内容
一、信号的描述、运算、绘图
1、 用MATLAB生成下列函数,连续信号用plot,离散信号用stem绘图
matlab信号与系统实验报告
matlab信号与系统实验报告Matlab信号与系统实验报告引言:信号与系统是电子工程、通信工程等领域中的重要基础课程,对于理解和应用各种信号处理技术具有重要意义。
本实验报告旨在通过使用Matlab软件,对信号与系统的基本概念和实验进行探讨和分析。
实验一:信号的基本特性分析在信号与系统的研究中,我们首先需要了解信号的基本特性。
通过Matlab软件,我们可以方便地对不同类型的信号进行分析和处理。
在本实验中,我们选择了常见的正弦信号和方波信号进行分析。
首先,我们生成了一个频率为1kHz,幅度为2V的正弦信号,并绘制了其时域波形图和频谱图。
通过观察时域波形图,我们可以看到正弦信号具有周期性和连续性的特点。
而通过频谱图,我们可以看到正弦信号在频域上只有一个峰值,说明其是单频信号。
接下来,我们生成了一个频率为1kHz,幅度为2V,占空比为50%的方波信号,并绘制了其时域波形图和频谱图。
与正弦信号不同,方波信号具有分段常值的特点。
通过频谱图,我们可以看到方波信号在频域上存在多个谐波分量,说明其是由多个频率的正弦信号叠加而成。
实验二:系统的时域响应分析在信号与系统中,系统的时域响应是描述系统对输入信号进行处理的重要指标。
通过Matlab软件,我们可以方便地分析和绘制系统的时域响应。
在本实验中,我们选择了一个一阶低通滤波器作为系统,输入信号为一个频率为1kHz,幅度为2V的正弦信号。
通过绘制输入信号和输出信号的时域波形图,我们可以观察到系统对输入信号进行了滤波处理,输出信号的幅度和相位发生了变化。
此外,我们还可以通过改变系统的参数,如截止频率和阶数,来观察系统的时域响应的变化。
通过对比不同参数下的输出信号波形图,我们可以得出不同参数对系统响应的影响。
实验三:系统的频域响应分析除了时域响应,频域响应也是描述系统特性的重要指标。
通过Matlab软件,我们可以方便地进行系统的频域响应分析。
在本实验中,我们选择了一个二阶巴特沃斯低通滤波器作为系统,输入信号为一个频率为1kHz,幅度为2V的正弦信号。
信号与系统Matlab实验报告
实验一MATLAB 程序入门和基础应用一、实验名称MATLAB 程序入门和基础应用二、实验目的1.学习Matlab软件的基本使用方法;2.了解Matlab的数值计算,符号运算,可视化功能;3. Matlab程序设计入门四、实验设备计算机MATLAB软件六、实验内容及具体步骤1、打开MATLAB的系统界面,对其功能做一个大致了解;2、学习变量的描述方法,掌握几个固定变量:I,j,pi,inf的使用。
注意,变量描述以字母开头,可以由字母、数字和下划线混合组成,区分字母大,小写字符长度不超过31个。
3、学习数值,矩阵,运算符,向量的矩阵运算,数组运算的描述方法。
(1)用一个简单命令求解线性系统3x1+ x2 - x3 =3.6x1+2x2+4x3 = 2.1-x1+4x2+5x3 = -1.4A=[3 1 -1;1 2 4;-1 4 5];b=[3.6;2.1;-1.4];x=A\b结果:x = 1.4818 -0.4606 0.3848(2)用简短命令计算并绘制在0≤x≤6范围内的sin(2x)、sinx2、sin2x。
x=linspace(0,6)y1=sin(2*x),y2=sin(x.^2),y3=(sin(x)).^2;plot(x,y1,x, y2,x, y3)4、Matlab符号运算功能(1)符号运算的过程在符号运算的整个过程中,所有的运算均是以符号进行的,即使以数字形式出现的量也是字符量。
做一个对sin(x/2)求导的过程。
在命令窗口中输入如下符号表达式按回车:f='sin(x/2)';dfdx=diff(f)显示结果如下:dfdx = 1/2*cos(1/2*x)整个求导的过程都是由符号变量和符号表达式完成,没有涉及到具体的数值运算,其中1/2也被当作是字符量。
注意:符号变量前先要进行定义,定义语句是:sym 或syms 变量名列表。
前者定义一个单一的符号变量,后者可以一次定义多个符号变量。
matlab信号与系统实验报告材料
实验一 根本信号的产生与运算一、 实验目的学习使用MATLAB 产生根本信号、绘制信号波形、实现信号的根本运算.二、 实验原理MATLAB 提供了许多函数用于产生常用的根本信号:如阶跃信号、脉冲信号、指数信号、正弦信号和周期方波等等.这些信号是信号处理的根底.1、 利用MATLAB 产生如下连续信号并作图.〔1〕51),1(2)(<<---=t t u t x〔2〕300),32sin()(3.0<<=-t t e t x t〔3〕1.01.0,3000cos 100cos )(<<-+=t t t t x〔4〕2000),8.0cos()1.0cos()(<<=t t t t x ππ答:〔1〕、>> t=-1:0.02:5;>> x=<t>1>;>> plot<t,-2*x>;>> axis<[-1,5,-3,1]>;>> title<'杨婕婕 朱艺星'>;>> xlabel<'x<t>=-2u<t-1>'>;〔2〕、>> t=0:0.02:30;>> x=exp<-0.3*t>.*sin<2/3*t>;>> plot<t,x>;>> title<'杨婕婕 朱艺星'>;>> xlabel<'x<t>=exp<-0.3*t>.*sin<2/3*t>'>;因为原函数在t=15后x<t>取值接近于零,所以将横坐标改成0到15,看得更清晰axis<[0,15,-0.2,0.6]>;〔3〕>> t=-0.1:0.01:0.1;x=cos<100*t>+cos<3000*t>;plot<t,x>;>> title<'杨婕婕 朱艺星'>;>>xlabel<'x=cos<100*t>+cos<3000*t>'>;因为t 的间隔取太大,以至于函数不够准确,缩小t 的间隔:t=-0.1:0.002:0.2;x=cos<100*t>+cos<3000*t>;plot<t,x>;title<'杨婕婕'>>> t=-0.1:0.0001:0.1;x=cos<100*t>+cos<3000*t>;>> plot<t,x>;title<'杨婕婕 朱艺星'>;>> xlabel<'x=cos<100*t>+cos<3000*t>'>;〔4〕、t=0:0.01:200;>> x=cos<0.1*pi*t>.*cos<0.8*pi*t>;>> plot<t,x>;>> title<'杨婕婕 朱艺星'>;>> xlabel<'x=cos<0.1*pi*t>.*cos<0.8*pi*t>'>;因为为周期函数,可以将横坐标t 间隔扩大以便于观察图像>> axis<[0,30,-1,1]>;2、 利用MATLAB 产生如下离散序列并作图.〔1〕⎩⎨⎧≤≤-=,055,1)(n n x 1515≤<-n〔2〕)]25.0cos()25.0[sin()9.0()(n n n x n ππ+=,2020≤<-n答:〔1〕、k=-15:15;x=[zeros<1,10>,ones<1,11>,zeros<1,10>];stem<k,x>axis<[-15,15,-0.2,1.2]>;title<'杨婕婕 朱艺星'>;xlabel<'x<n>'>;〔2〕、k=-20:20;x=<0.9>.^k.*<sin<0.25*pi*k>+cos<0.25*pi*k>>;stem<k,x>;title<'杨婕婕 朱艺星'>;xlabel<' x=<0.9>^k*<sin<0.25*pi*k>+cos<0.25*pi*k>>'>;将横坐标变小以便于观察>> axis<[-20,10,-12,8]>;3、 序列:]2,3,1,0,2,1[)(-=↑n x ,]1,1,1[)(-=↑n h ,计算离散卷积)()()(n h n x n y *=,并绘出其波形.答:>> x=[1,2,0,-1,3,2];>> h=[1,-1,1];>> y=conv<x,h>;>> stem<[-2:length<y>-3],y>;>> ylabel<'y[k]'>;xlabel<'k'>;>> title<'杨婕婕 朱艺星'>;三、 实验思考题1、两个连续信号的卷积定义是什么?两个序列的卷积定义是什么?卷积的作用是什么?答:连续信号的卷积的定义:⎰∞∞--τττd t y x )()( 序列的卷积定义:∑=-0)()(m m n y m x .利用作图法即将其中一个信号图翻转,平移,两信号相乘,再相加.傅立叶变换的卷积性质涵盖着时域相乘、频域卷积、频域相乘,时域卷积的对偶关系.前者假如代表两个信号相乘,如此因发生调制作用,在频域一定出现频谱搬家〔频移〕.后者假如一个是信号,另一个代表系统,如此系统起着加工处理的滤波作用.任何信号与冲激函数相卷积,其结果是在冲激出现的时刻〔位置〕再生原信号.卷积在实际中的应用有实现幅度调制与解调,实现多路频分复用,实现单边带调幅〔SSB-AM 〕.2、什么是单位冲激信号)(t δ?能够用MATLAB 产生单位冲激信号吗? 答:出现过程极短,能量极大的信号为冲激信号)(t δ,其定义式为:)(t δ=0,t 0≠⎰∞∞-=1)(dt t δ;上式明确,在t=0无定义,因为不能作为数学函数的取值.而且表示)(t δ与时间覆盖的面积或称)(t δ的强度始终等于 1.因为)(t δ属于奇异函数一类的信号,能量无限大,用MATLAB 不能产生该信号.函数ones<1,n>可以生成单位脉冲序列.3、产生连续信号时,首先要定义时间向量t=0:T :Tp.其中T 和Tp 是什么意思? 答:每两点之间的时间间隔为T,即步长为T.连续信号的时间从0到Tp.实验二 利用DFT 分析离散信号频谱一、 实验目的应用离散傅里叶变换〔DFT 〕,分析离散信号的频谱.深刻理解DFT 分析离散信号频谱的原理,掌握改善分析过程中产生的误差的方法.二、 实验原理根据信号傅里叶变换建立的时域与频域之间的对应关系,可以得到有限长序列的离散傅里叶变换〔DFT 〕与四种确定信号傅里叶变换之间的关系〔见教材〕,实现由DFT 分析其频谱.三、 实验内容1. 利用FFT 分析信号31,...,1,0),83cos()(==n n n x π的频谱; 〔1〕、确定DFT 计算的参数;此题中Ω/2π=3/16,如此周期N=16,因为此题信号无直流分量,所以取样点数可为2*N=32,但必须保证都是独立的样点. N=32;n=0:N-1;x=cos<3*pi/8*n>;X=fft<x,N>;subplot<2,1,1>;stem<n,abs<fftshift<X>>>;ylabel<'Magnitude'>;xlabel<'Frequency <rad>'>;title<'朱艺星 杨婕婕'>; subplot<2,1,2>;stem<n,angle<fftshift<X>>>;ylabel<'Phase'>;xlabel<'Frequency<rad>'>;附:另取N=16时:N=16;n=0:N-1;x=cos<3*pi/8*n>;X=fft<x,N>;subplot<2,1,1>;stem<n-N/2,abs<fftshift<X>>>;ylabel<'Magnitude'>;xlabel<'Frequency <rad>'>;title<'朱艺星 杨婕婕'>;subplot<2,1,2>;stem<n-N/2,angle<fftshift<X>>>;ylabel<'Phase'>;xlabel<'Frequency<rad>'>;附:N取64时;N=64;n=0:N-1;x=cos<3*pi/8*n>;X=fft<x,N>;subplot<2,1,1>;stem<n,abs<fftshift<X>>>;ylabel<'Magnitude'>;xlabel<'Frequency <rad>'>;title<'朱艺星杨婕婕'>; subplot<2,1,2>;stem<n,angle<fftshift<X>>>;ylabel<'Phase'>;xlabel<'Frequency<rad>'>;(2)进展理论值与计算值比拟,讨论信号频谱分析过程中误差原因与改善方法.答:在频谱分析过程中由于取样频率过低或者由于信号的截取长度不当将会产生误差.取样频率过低,可能会产生混频现象,可以适当提高取样率,增加样点数,来减少混叠对频谱分析所造成的误差.对于连续周期信号,其时域取样必须满足时域取样定理:其取样点数K≥2*N+1〔其中N为最高谐波分量〕,即kfo ≥2Nfo+fo;fs≥2fm+fo.截取信号长度不当,会产生功率泄露,对周期序列进展频谱分析时,为防止泄露应做到:截取的长度应取一个根本周期或根本周期的整数倍,假如待分析的周期信号事先不知道其确切的周期,如此可截取较长时间长度的样点进展分析,以减少功率泄露误差.当然,必须在取样频率满足取样定理的条件下进展,否如此混叠与泄露同时存在给频谱分析造成困难.此题)83cos()(n n x π=为周期信号,无直流分量,所以取样点数可为2*N=32,但必须保证都是独立的样点.从取样点数N=32和N=16可以看出,取样点数的不同,会造成频率谱和相位谱的不同.当N=16时,n=3或-3时有幅度值,而在N=32时,n=-10和22时有幅度值,在N=64时,n=-20和44时有幅度值,得到在N=32时,其频谱已经和N=64时一致〔刚好成2倍关系〕,且N=16时已经产生混频现象.综上得,此题取样点数可为32.附:对于非周期连续信号,时域取样定理:fs ≥2fm.频域取样定理:一个时间受限的信号其长度为2τ在频域取样间隔Fo<1/2τ条件下,能够从样点集合完全恢复原来信号的频谱.2. 利用FFT 分析信号)(8.0)(n u n x n =的频谱;(1) 确定DFT 计算的参数;当n 取30时n=0:30;x=<0.8>.^n;subplot<2,1,1>;stem<n,x>;title<'朱艺星 杨婕婕'>;subplot<2,1,2>;w=n-15;plot<w,abs<fftshift<fft<x>>>>;附:当n 取60时n=0:60;x=<0.8>.^n;subplot<2,1,1>;stem<n,x>;title<'朱艺星 杨婕婕'>;subplot<2,1,2>;w=n-15;plot<w,abs<fftshift<fft<x>>>>;(2) 进展理论值与计算值比拟,讨论信号频谱分析过程中误差原因与改善方法.答:信号)(8.0)(n u n x n =为离散非周期信号,且为无限长的信号.根据理论分析,一个时间有限的信号其频谱宽度为无限,一个时间无限的信号其频带宽度如此为有限,因此,对一个时间有限的信号,应用DFT 进展分析,频谱混叠难以防止.对一个时间无限的信号虽然频带有限,但在时间运算中,时间长度总是取有限值,所以频谱泄露难以防止.当原始信号事有限长,截取的长度等于原始信号的长度,如此可以不考虑泄露的影响.当原始的非周期信号为无限长或比拟长,而截取的长度有限或不等于原始信号的长度,如此需考虑频谱泄露引起的不良影响.为了减少泄露的影响,一般可适当增加长度To,也可以通过试探法,先取长度N1〔To=N1*T 〕,然后取N2=2*N1,进展运算.假如两者计算的结果很接近,如此可取N1作为截取长度,否如此继续去N3=2*N2,直至相邻两个长度的计算结果相近,取长度较小的N 为好.此题中,因为信号)(8.0)(n u n x n =为离散非周期信号,且为无限长的信号,用试探法:取n 为30和60,进展比拟,发现两者的频谱根本相似,所以取n 为30较好.因为n 取过大,fs 提高,要求存贮单元增加,硬件速度提高,其结果势必在经济上和技术上带来新的问题.3. 有限长脉冲序列]5,0,1,3,3,2[)(↑=n x ,利用FFT 分析其频谱. N=6;n=0:N-1;x=[2,3,3,1,0,5];subplot<3,1,1>;stem<n,x>;title<'朱艺星 杨婕婕'>;subplot<3,1,2>;w=n;plot<w,abs<fftshift<fft<x>>>>;subplot<3,1,3>;plot<w,angle<fftshift<fft<x>>>>;4. 〔选做题〕某离散序列,630),153.2cos(75.0)152cos()(≤≤+=n n n n x ππ利用FFT 分析其频谱.(1) 对)(n x 做N=64点FFT,绘出信号的频谱,能够分辨出其中的两个频率吗? 假设x<n>是由连续信号)3.2cos(75.0)2cos()(t t t x ππ+=以fs=15Hz 进展取样得来的,如此△f=〔2.3-2〕π/2π=0.15Hz,根据公式:N ≥fs/△f 得N 最小应该为100.假如取N=64,如此不能分辨其中的两个频率.N=64;n=0:N-1;x=cos<pi*2/15*n>+0.75*cos<2.3*pi/15*n>;X=fft<x,N>;subplot<2,1,1>;stem<n,abs<fftshift<X>>>;title<'朱艺星 杨婕婕'>;ylabel<'Magnitude'>;xlabel<'Frequency <rad>'>;subplot<2,1,2>;stem<n,angle<fftshift<X>>>;ylabel<'Phase'>;xlabel<'Frequency <rad>'>〔2〕对)(n x 补零到N=256点后计算FFT,能够分辨出其中的两个频率吗?时域补零的结果L 的数量增加到256,原本的频域N 为64,因为L 要小于等于N,所以此时的N 要扩大为256,致使频域的样点数也增加,所以此时采取时域补零的方法能提高频率分辨力.但如果是在时域补零法得到的L的个数仍小于频域样点数N,如此时域补零法并没有增加信息量,增加后但在频域的N并没有变化,所以采取时域补零的方法不能提高频率分辨力,因为分辨力主要取决于频域样点数N的变化.N=64;n=0:N-1;y=cos<pi*2/15*n>+0.75*cos<2.3*pi/15*n>;x=[y,zeros<1,256-64>];M=256;X=fft<x,M>;subplot<2,1,1>;stem<0:M-1,abs<fftshift<X>>>;title<'朱艺星杨婕婕'>;ylabel<'Magnitude'>;xlabel<'Frequency <rad>'>;subplot<2,1,2>;stem<0:M-1,angle<fftshift<X>>>;ylabel<'Phase'>;xlabel<'Frequency <rad>'>;〔3〕假如不能够很好地分辨出其中的两个频率,应采用哪些措施?答:可以提高取样频率,增加频域的取样点数.当然,如果在T不变条件下,真正增加时域取样长度L,使提供所载荷的信息量增加,功率泄露减少,也会在一定程度上改善频率分辨力,但这不是通过补零使时域长度延长的结果,因为补零不增加信息量.四、实验思考题1.既然可直接由DTFT定义计算序列DTFT,为何利用DFT分析序列的频谱?答:通过DFT 可以求出确定性信号相应的离散频谱或频谱的样值,变换到有限频谱序列,这样就可以用计算机实现对信号进展分析,数字化计算速度快,故提出了DFT 来分析序列的频谱2. 假如序列持续时间无限长,且无解析表达式,如何利用DFT 分析其频谱?答:当原始的非周期信号为无限长或比拟长,可截取一段时间内的序列值,长度为L,作N 点的DFT 变换,N ≥L.而截取的长度有限或不等于原始信号的长度,如此需考虑频谱泄露引起的不良影响.为了减少泄露的影响,一般可适当增加长度To,也可以通过试探法,先取长度L1〔To=L1*T 〕,然后取L2=2*L1,进展运算.假如两者计算的结果很接近,如此可取N1作为截取长度,否如此继续去L3=2*L2,直至相邻两个长度的计算结果相近,取长度较小的L 为好.再从L 点有限长序列x<n>相应的频谱X<Ω>中,在主周期[-π,π]内对X<Ω>进展离散化,随即得到N 个频谱样点 用公式可表示为3. 序列补零和增加序列长度到可以提高频谱分辨率吗?两者有何本质区别?答:如果采取时域补零法得到的L 的个数仍小于频域样点数N,如此时域补零法并没有增加信息量,增加后但在频域的N 并没有变化,所以采取时域补零的方法不能提高频率分辨力,因为分辨力主要取决于频域样点数N 的变化.但如果是补零后的时域序列个数增加到L2,且L2个数大于频域样点数N,因为要满足N 大于等于L,如此现在会使频域样点数也随之增加,所以此时采取时域补零的方法能提高频率分辨力.如果在T 不变条件下,真正增加时域取样长度L,使提供所载荷的信息量增加,功率泄露减少,也会在一定程度上改善频率分辨力,但这不是通过补零使时域长度延长的结果,因为补零不增加信息量.实验三 离散系统分析一、 实验目的深刻理解离散时间系统的系统函数在分析系统时域特性、频域特性与稳定性中的重要作用与意义,掌握根据系统函数的零极点设计简单的滤波器的方法.熟练掌握利用MATLAB 分析离散系统的响应求解、频响特性和零极点的方法.二、实验原理MATLAB 提供了许多可用于分析线性非时变离散系统的函数,主要包括有系数函数、系统时域响应、系统频域响应等分析函数.二、 实验内容1. 某离散LTI 系统的差分方程为(1) 初始状态2)2(,1)1(=-=-y y ,输入)()(n u n x =,计算系统的完全响应; N=100;b=[0.0675,0.1349,0.0675];a=[1,-1.143,0.4128];x=ones<1,N>;y=filtic <b,a,[1,2]>;y=filter <b,a,x,y>;<2> 当以下3个信号分别通过离散系统时,分别计算离散系统的零状态响应 <1>),()10cos()(1n u n n x π=N=100;n=0:N-1;x2=[ones<1,N>];b=[0.0675,0.1349,0.0675];a=[1,-1.143,0.4128];x=cos<pi/10*n>.*x2;y=filter<b,a,x>; <2>)()5cos()(2n u n n x π= N=100;n=0:N-1;x2=[ones<1,N>];b=[0.0675,0.1349,0.0675];a=[1,-1.143,0.4128]; x=cos<pi/5*n>.*x2;y=filter<b,a,x>; <3>)()107cos()(3n u n n x π= N=100;n=0:N-1;x2=[ones<1,N>];b=[0.0675,0.1349,0.0675];a=[1,-1.143,0.4128]; x=cos<pi*7/10*n>.*x2;y=filter<b,a,x>;〔3〕该系统具有什么特性.答:该系统是低通滤波器.频率越高,幅度衰减越大.X3频率最高,幅度衰减也最大.计算H 〔Ω〕,也看出此为低通滤波器.N=100;n=0:N-1;b=[0.0675,0.1349,0.0675];a=[1,-1.143,0.4128];h=impz<b,a,N>;H=fft<h,N>;subplot;stem<n-N/2,abs<fftshift<H>>>;title<'杨婕婕 H'>;2. 某因果LTI 离散系统的系统函数为(1) 计算系统的单位脉冲响应;(2) 当信号)()2cos()()4cos()()(n u n n u n n u n x ππ++=通过系统时,计算系统的零状态响应.<1>N=40;a=[1,-1.035,0.8246,-0.2605,0.04033,];b=[0.03571,0.1428,0.2143,0.1428,0.03571];y=impz<b,a,N>;stem<y>;xlabel<'n'>;title<'朱艺星 杨婕婕 h<n>'><2>N=100;n=0:N-1;x2=[ones<1,N>];a=[1,-1.035,0.8246,-0.2605,0.04033,];b=[0.03571,0.1428,0.2143,0.1428,0.03571];x=x2+cos<pi/4*n>.*x2+cos<pi/2*n>.*x2;y=filter<b,a,x>;stem<y>;xlabel<'n'>;title<'朱艺星杨婕婕'>;三、实验思考题1.系统函数的零极点对系统冲激响应有何影响?答:系统函数的零极点会影响系统的稳定性和因果性.因为为冲激响应,所以分析s域.极点对稳定系统的影响:假如极点只在s左半平面,不包括jw轴,如此该系统为渐进稳定、BIBO系统;假如极点不单只在左半平面,还有在jw轴上有单根,如此为临界稳定系统.假如极点在jw轴上有重根,或者存在域s域的右半平面,如此该系统不稳定.对因果性的影响:假如极点有在s域右半平面,如此该系统为非因果系统,假如极点只存在于s域的左半平面,如此为因果系统.要考虑零极点相消的情况,但实际很难做到零极相消,使系统不稳定.2.假如某因果系统不稳定,有哪些主要措施可使之稳定?答:应改变系统设计,使所有极点都出现在s域的左半平面,且防止零极相消..。
信号与系统 matlab实验报告
信号与系统 matlab实验报告信号与系统 Matlab 实验报告引言:信号与系统是电子信息类专业中的一门重要课程,它研究了信号的产生、传输和处理过程,以及系统对信号的响应和影响。
通过实验,我们可以更直观地理解信号与系统的基本概念和原理,并掌握使用 Matlab 进行信号与系统分析和处理的方法。
实验一:信号的产生与显示在信号与系统课程中,我们首先需要了解不同类型的信号,以及如何产生和显示这些信号。
在 Matlab 中,我们可以使用一些函数来生成常见的信号波形,如正弦波、方波、三角波等。
通过编写简单的 Matlab 程序,我们可以实现信号的产生和显示。
实验二:信号的采样与重构在实际应用中,信号通常以连续时间的形式存在,但在数字系统中需要将其转换为离散时间的信号进行处理。
这就需要进行信号的采样和重构。
在 Matlab 中,我们可以使用采样函数和重构函数来模拟这一过程,并观察采样率对信号重构质量的影响。
实验三:信号的滤波与频谱分析信号滤波是信号处理中的重要环节,它可以去除信号中的噪声和干扰,提高信号质量。
在 Matlab 中,我们可以使用滤波函数来实现不同类型的滤波器,并观察滤波对信号频谱的影响。
此外,我们还可以使用频谱分析函数来研究信号的频谱特性,如频谱密度、功率谱等。
实验四:系统的时域与频域分析系统是信号处理中的重要概念,它描述了信号在系统中的传输和变换过程。
在Matlab 中,我们可以使用系统函数来模拟不同类型的系统,并观察系统对信号的时域和频域响应。
通过实验,我们可以深入理解系统的时域特性和频域特性,如冲击响应、频率响应等。
实验五:信号的调制与解调信号调制是将信息信号转换为调制信号的过程,而解调则是将调制信号恢复为原始信号的过程。
在 Matlab 中,我们可以使用调制函数和解调函数来模拟不同类型的调制和解调方式,如调幅、调频、调相等。
通过实验,我们可以了解不同调制方式的原理和特点,并观察调制和解调对信号的影响。
信号与系统实验指导书(matlab软件仿真)
信号与系统实验指导书(MATLAB仿真)目录实验一MATLAB 基本应用 (2)实验二信号的时域表示 (7)实验三连续信号卷积 (11)实验四典型周期信号的频谱表示 (18)实验五傅立叶变换性质研究 (23)实验六离散信号分析 (26)实验七离散系统的Z域分析 (29)Matlab相关符号及函数说明 (37)实验一MATLAB 基本应用一、实验目的:学习MATLAB的基本用法,了解 MATLAB 的目录结构和基本功能以及MATLAB在信号与系统中的应用。
二、实验内容:例一已知x的取值范围,画出y=sin(x)的图型。
参考程序:x=0:0.05:4*pi;y=sin(x);plot(y)例二计算y=sin(π/5)+4cos(π/4)例三已知z 取值范围,x=sin(z);y=cos(z);画三维图形。
z=0:pi/50:10*pi;x=sin(z);y=cos(z);plot3(x,y,z)xlabel('x')ylabel('y')zlabel('z')例四已知x的取值范围,用subplot函数绘图。
参考程序:x=0:0.05:7;y1=sin(x);y2=1.5*cos(x);y3=sin(2*x);y4=5*cos(2*x);subplot(2,2,1),plot(x,y1),title('sin(x)')subplot(2,2,2),plot(x,y2),title('1.5*cos(x)')subplot(2,2,3),plot(x,y3),title('sin(2*x)')subplot(2,2,4),plot(x,y4),title('5*cos(2*x)')连续信号的MATLAB表示1、指数信号:指数信号Ae at在MATLAB中可用exp函数表示,其调用形式为:y=A*exp(a*t) (例取A=1,a=-0.4)参考程序:A=1;a=-0.4;t=0:0.01:10;ft=A*exp(a*t);plot(t,ft);grid on;注:grid on是一个函数,表示在画图的时候添加网格线。
信号与系统MATLAB实验报告
一、实验名称MATLAB对连续信号与系统的时域分析、频域分析和s域分析;MATLAB对离散信号与系统的时域分析。
二、实验目的1.学习用MATLAB描述常用信号的方法。
2.掌握连续时间信号和离散时间信号的描述。
3.利用MATLAB计算信号卷积。
4.掌握信号频谱的定义,理解非周期信号频谱密度的概念。
5.掌握用MATLAB分析并绘制连续系统零极点图以判断因果系统稳定的方法。
三、实验原理1.连续系统的冲击响应和阶跃响应(1)连续系统的冲击响应在MATLAB中,利用函数impulse可求解系统冲击响应,其调y=impulse(sys,t)式中:sys表示LTI系统模型,用来表示微分方程、差分方程、状态方程。
利用函数tf获得微分方程的LTI系统模型,其调用形式为:sys=tf(b,a)式中:b和a分别为微分方程右端和左端的各项系数向量。
2.常用连续信号的傅里叶变换在MTLAB中,利用函数fourier实现信号f(t)的傅里叶变换,其调用形式是:F=fourier(f)(1)矩形脉冲矩形脉冲函数可以表示为:f(t)=AGr(t)=A, |t||<τ/2;f(t)=0, |t|>τ/2其傅里叶变换为F(jw)=Aτsa(wτ/2)式中:sa(·)表示采样函数。
3.连续系统函数H(s)的零极点分布和稳定性MATLAB信号处理工具箱提供的zplane函数可以直接求解H(s)的零极点分布,其调用形式为:zplane(b,a)式中:b和a分别为系统函数H(s)的分子多项式和分母多项式的系数向量,该函数的作用是在平面上画出单位圆及系统的零点和极点。
MATLAB信号处理工具箱提供的roots函数可求解多项式的根,其调用形式为:poles=roots(a)4.常用离散信号的MATLAB表示(1)正弦序列离散正弦信号与连续正弦信号类似,就是连续信号的离散型式。
正弦序列的一般序列为:f(k)=Acos(Ωk+φ)式中:A、Ω、φ分别为正弦序列的振幅、数字角频率和初相位。
信号与系统matlab实验指导书
实验一基本信号的波形一、实验目的:1.掌握matlab软件的基本操作。
2.熟悉matlab的基本命令的使用。
3.掌握用matlab绘出基本信号。
二、实验原理:1. 信号的时域表示方法1.1将信号表示成独立时间变量的函数例如x(t)=sin(ωt) 和x[n]=n(0.5)n u[n]分别表示一个连续时间信号和一个离散时间信号。
在MA TLAB中有许多内部函数,可以直接完成信号的这种表达,例如:sin():正弦信号cos():余弦信号exp():指数信号1.2用信号的波形图来描述信号用函数曲线表示一个信号,图1.1就是一个连续时间信号和一个离散时间信号的波形图。
图1.1 连续时间信号与离散时间信号的波形图1.3将信号用一个数据序列来表示对于离散时间信号,还可以表示成一个数的序列,例如:x[n]={...., 0.1, 1.1, -1.2, 0, 1.3, ….}↑n=0在《信号与系统》和《数字信号处理》课程中,上述三种信号的描述方法是经常要使用的。
2 用MATLAB仿真连续时间信号和离散时间信号在MATLAB中,无论是连续时间信号还是离散时间信号,MATLAB都是用一个数字序列来表示信号,这个数字序列在MATLAB中叫做向量(vector)。
通常的情况下,需要与时间变量相对应。
如前所述,MA TLAB有很多内部数学函数可以用来产生这样的数字序列,例如sin()、cos()、exp()等函数可以直接产生一个按照正弦、余弦或指数规律变化的数字序列。
2.1连续时间信号的仿真程序Program1_1是用MATLAB 对一个正弦信号进行仿真的程序,请仔细阅读该程序,并在计算机上运行,观察所得图形。
% Program1_1% This program is used to generate a sinusoidal signal and draw its plotclear, % Clear all variablesclose all, % Close all figure windowsdt = 0.01; % Specify the step of time variablet = -2:dt:2; % Specify the interval of timex = sin(2*pi*t); % Generate the signalplot(t,x) % Open a figure window and draw the plot of x(t)title('Sinusoidal signal x(t)')xlabel('Time t (sec)')常用的图形控制函数axis([xmin,xmax,ymin,ymax]):图型显示区域控制函数,其中xmin 为横轴的显示起点,xmax 为横轴的显示终点,ymin 为纵轴的显示起点,ymax 为纵轴的显示终点。
推荐-信号与系统实验指导书MATLAB语言工作环境和基本操作 精品
金陵科技学院实验一MATLAB语言工作环境和基本操作一、实验目的1.初步了解MATLAB开发环境和常用菜单的使用方法;2.熟悉MA TLAB常用窗口,包括命令窗口、历史窗口、当前工作窗口、工作空间浏览器窗口、数组编辑器窗口和M文件编辑/调试窗口等;3.了解MATLAB的命令格式;4.熟悉MATLAB的帮助系统。
二、实验原理1.简介MATLAB,Matrix Laboratory的缩写,是由Mathworks公司开发的一套用于科学工程计算的可视化高性能语言,具有强大的矩阵运算能力。
与大家常用的Fortran和C等高级语言相比,MA TLAB的语法规则更简单,更贴近人的思维方式,被称之为“草稿纸式的语言”。
MATLAB安装完成后,会自动在WINDOWS桌面上生成一个快捷方式,它是指向安装目录下\bin\win32\matlab.exe的链接,双击它即可来到MA TLAB集成环境的基本窗口,通常称之为命令窗口。
MA TLAB的退出与普通WIN32的程序一样,值得一提的是它有一个自身专有的快捷键Ctrl+Q。
MATLAB启动后界面如图所示。
命令窗口(mand Window):(1) 用于执行MA TLAB命令,正常情况下提示符为“>>”,表示MA TLAB进入工作状态。
(2) 在提示符后输入运算指令和函数调用等命令(不带“;”),MATLAB将迅速显示出结果并再次进入准备工作状态。
(3) 若命令后带有“;”,MATLAB执行命令后不显示结果。
(4) 在准备工作状态下,如果按上下键,MATLAB会按顺序依次显示以前输入的命令,若要执行它,则直接回车即可。
工作空间(Workspace):(1) 显示计算机内存中现有变量的名称、类型、结构及其占用子节数等。
(2) 如果直接双击某变量,则弹出Array Editor窗口供用户查看及修改变量内容。
(3) 该窗口上有工具条支持用户将某变量存储到文件中或者从文件中载入某变量。
信号与系统 matlab实验报告
信号与系统 matlab实验报告《信号与系统 Matlab实验报告》摘要:本实验报告通过使用 Matlab 软件进行信号与系统实验,探讨了信号与系统在数字领域的应用。
实验结果表明,Matlab 软件具有强大的信号处理和系统分析功能,能够有效地进行信号与系统的模拟和分析。
引言:信号与系统是电子工程领域中的重要基础课程,它研究了信号的产生、传输和处理,以及系统对信号的响应和影响。
在数字领域,信号与系统的理论和方法也得到了广泛的应用。
Matlab 软件作为一种强大的数学计算工具,为信号与系统的模拟和分析提供了便利和高效的途径。
实验一:信号的生成与显示在本实验中,我们首先使用 Matlab 软件生成了几种常见的信号,包括正弦信号、方波信号和三角波信号。
通过调整信号的频率、幅度和相位等参数,我们观察了信号的变化,并利用 Matlab 的绘图功能将信号图形显示出来。
实验结果表明,Matlab 软件能够方便地生成各种类型的信号,并能够直观地显示信号的波形和特性。
实验二:信号的采样与重构在本实验中,我们使用 Matlab 软件对信号进行了采样和重构。
我们首先对一个连续信号进行了离散采样,然后利用 Matlab 的插值函数对采样信号进行了重构。
实验结果表明,采样和重构过程中存在信号失真和频率混叠等问题,但通过适当的采样和重构方法,我们能够有效地还原原始信号。
实验三:系统的响应与分析在本实验中,我们使用 Matlab 软件对系统的响应进行了分析。
我们构建了几种常见的系统模型,包括线性时不变系统和滤波器系统,然后利用 Matlab 的系统分析工具对系统的频率响应、相位响应和单位脉冲响应等进行了分析。
实验结果表明,Matlab 软件能够有效地进行系统的模拟和分析,为系统设计和优化提供了有力的支持。
结论:通过本实验,我们深入了解了信号与系统在数字领域的应用,并掌握了使用 Matlab 软件进行信号与系统模拟和分析的方法。
基于matlab信号系统实验报告
实验(一)已知:t=0:0.001:1.2;t1=0:0.001:0.3;t2=0.301:0.001:0.6;t3=0.601:0.001:0.9; t4=0.901:0.001:1.2;x1=sin(2*pi*100*t1);x2=sin(2*pi*50*t2);x3=sin(2*pi*25*t3);x4=sin(2*pi*10*t4);信号s1为:s1= sin(2*pi*100*t)+sin(2*pi*50*t)+sin(2*pi*25*t)+sin(2*pi*10*t);信号s2为:t=[t1,t2,t3,t4];s2= [x1,x2,x3,x4];信号s3为:t=[t1,t2,t3,t4];s3= [x1,x4,x2,x3];编写matlab程序分别做出信号s1、s2和s3的时域波形程序清单t=0:0.001:1.2;t1=0:0.001:0.3;t2=0.301:0.001:0.6;t3=0.601:0.001:0.9;t4=0.901:0.001:1.2;x1=sin(2*pi*100*t1);x2=sin(2*pi*50*t2);x3=sin(2*pi*25*t3);x4=sin(2*pi*10*t4);s1= sin(2*pi*100*t)+sin(2*pi*50*t)+sin(2*pi*25*t)+sin(2*pi*10*t);t=[t1,t2,t3,t4];s2= [x1,x2,x3,x4];t=[t1,t2,t3,t4];s3= [x1,x4,x2,x3];figure(1),plot(t,s1);title('s1时域波形');figure(2),plot(t,s2);title('s2时域波形');figure(3),plot(t,s3);title('s3时域波形');运行实验(二)编写MATLAB程序实现单位阶跃序列u(n)与u(n-3)的卷积,n=[1:50];程序清单n=1:50;x=[ones(1,50)];y=[zeros(1,2),ones(1,48)];c=conv(x,y);M=length(c)-1;n=0:1:M;stem(n,c,'fill');grid on;运行实验(三)★编写matlab程序分别做出实验一中信号s1、s2和s3的幅频图;★观察信号s1、s2和s3的时域波形和幅频图,思考其幅频图的差别及其原因;★若有信号s4的幅频图与s2的幅频图完全相同(如图2所示),问s4的时域波形和s2是相同的吗,为什么?Ⅰ程序清单t=0:0.001:1.2;t1=0:0.001:0.3;t2=0.301:0.001:0.6;t3=0.601:0.001:0.9;t4=0.901:0.001:1.2;x1=sin(2*pi*100*t1);x2=sin(2*pi*50*t2);x3=sin(2*pi*25*t3);x4=sin(2*pi*10*t4);s1= sin(2*pi*100*t)+sin(2*pi*50*t)+sin(2*pi*25*t)+sin(2*pi*10*t);t=[t1,t2,t3,t4];s2= [x1,x2,x3,x4];t=[t1,t2,t3,t4];s3= [x1,x4,x2,x3];t=[0:0.001:1.5];f=1000*(0:(1/150):0.5);y1=abs(fft(s1));y2=abs(fft(s2));y3=abs(fft(s3));subplot(3,1,1),plot(f,y1(1:76));grid on;axis tight;title('幅频图s1');xlabel('f(Hz)');subplot(3,1,2),plot(f,y2(1:76));grid on;axis tight;title('幅频图s2');xlabel('f(Hz)');subplot(3,1,3),plot(f,y3(1:76));grid on;axis tight;title('幅频图s3');xlabel('f(Hz)');运行ⅡS1、s2、s3波形峰值不同,因为是由不同的波形叠加而成。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于Matlab 的信号与系统实验指导实验一 连续时间信号在Matlab 中的表示一、实验目的1、学会运用Matlab 表示常用连续时间信号的方法2、观察并熟悉这些信号的波形和特性二、实验原理及实例分析1、信号的定义与分类2、如何表示连续信号?连续信号的表示方法有两种;符号推理法和数值法。
从严格意义上讲,Matlab 数值计算的方法不能处理连续时间信号。
然而,可利用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能被Matlab 处理,并且能较好地近似表示连续信号。
3、Matlab 提供了大量生成基本信号的函数。
如: (1)指数信号:K*exp(a*t)(2)正弦信号:K*sin(w*t+phi)和K*cos(w*t+phi) (3)复指数信号:K*exp((a+i*b)*t) (4)抽样信号:sin(t*pi)注意:在Matlab 中用与Sa(t)类似的sinc(t)函数表示,定义为:)t /()t (sin )t (sinc ππ= (5)矩形脉冲信号:rectpuls(t,width)(6)周期矩形脉冲信号:square(t,DUTY),其中DUTY 参数表示信号的占空比DUTY%,即在一个周期脉冲宽度(正值部分)与脉冲周期的比值。
占空比默认为0.5。
(7)三角波脉冲信号:tripuls(t, width, skew),其中skew 取值范围在-1~+1之间。
(8)周期三角波信号:sawtooth(t, width) (9)单位阶跃信号:y=(t>=0)三、实验内容1、验证实验内容 直流及上述9个信号2、程序设计实验内容(1)利用Matlab 命令画出下列连续信号的波形图。
(a ))4/3t (2cos π+(b ))t (u )e 2(t-- (c ))]2()(u )][t (cos 1[--+t u t π(2)利用Matlab 命令画出复信号)4/t (j 2e )t (f π+=的实部、虚部、模和辐角。
四、实验报告要求1、格式:实验名称、实验目的、实验原理、实验环境、实验内容、实验思考等2、实验内容:程序设计实验部分源代码及运行结果图示。
实验二连续时间信号在Matlab中的运算一、实验目的1、学会运用Matlab进行连续时间信号的时移、反褶和尺度变换;2、学会运用Matlab进行连续时间信号微分、积分运算;3、学会运用Matlab进行连续时间信号相加、相乘运算;4、学会运用Matlab进行连续时间信号卷积运算。
二、实验原理及实例分析1、信号的时移、反褶和尺度变换信号的平移、反转和尺度变换是针对自变量时间而言的,其数学表达式和波形变换中存在着一定的变化规律。
从数学表达式上来看,信号的上述所有计算都是自变量的替换过程。
所以在使用Matlab进行连续时间信号的运算时,只需要进行相应的变量代换即可完成相关工作。
2、连续时间信号的微分和积分符号运算工具箱有强大的积分运算和求导功能。
连续时间信号的微分运算,可使用diff命令函数来完成,其语句格式为:diff(function, ‘variable’,n)其中,function表示需要进行求导运算的函数,或者被赋值的符号表达式;variable 为求导运算的独立变量;n为求导阶数,默认值为一阶导数。
连续时间信号积分运算可以使用int命令函数来完成,其语句格式为:int(function, ‘variable’, a, b)其中,function表示被积函数,或者被赋值的符号表达式;variable为积分变量;a 为积分下限,b为积分上限,a和b默认时则求不定积分。
3、信号的相加和相乘运算信号的相加和相乘是信号在同一时刻取值的相加和相乘。
因此Matlab对于时间信号的相加和相乘都是基于向量的点运算。
4、连续信号的卷积运算卷积积分是信号与系统时域分析的重要方法之一。
定义为:⎰+∞∞-=*=-2121d )t (f )(f )t (f )t (f )t (f τττMatlab 进行卷积计算可通过符号运算方法和数值计算方法实现。
(1)Matlab 符号运算法求连续信号卷积从卷积定义出发,可以利用Matlab 符号运算法求卷积积分,但要注意积分变量和积分限的选取。
例:试用Matlab 符号运算法求卷积y(t)=[u(t)-u(t-1)]*[u(t)-u(t-1)]。
(2)Matlab 数值计算法求连续信号的卷积例:试用Matlab 数值计算法求信号)2t (u )t (u )t (f 1--=和)t (u e )t (f 3t 2-=的卷积。
三、实验内容1、已知信号的波形(课本P11例题),画出()()()()2332----t f t f t f t f ,,,的波形图。
2、使用微分命令求xsinxlnx y=关于变量x 的一阶导数;使用积分命令计算不定积分 dx x ax x ⎰⎪⎪⎭⎫ ⎝⎛+-225,定积分()dx x xe x ⎰+1021。
3、已知()()()t t f t t f Ω=Ω=8sin ,sin 21,使用命令画出两信号和及两信号乘积的波形图。
其中,Hz f 12=Ω=π4、四、实验报告要求1、格式:实验名称、实验目的、实验原理、实验环境、实验内容(上述4部分代码及结果图形)、实验思考等。
实验三 连续时间LTI 系统的时域分析一、实验目的1、学会使用符号法求解连续系统的零输入响应和零状态响应2、学会使用数值法求解连续系统的零状态响应3、学会求解连续系统的冲激响应和阶跃响应 二、实验原理及实例分析1、连续时间系统零输入响应和零状态响应的符号求解连续时间系统可以使用常系数微分方程来描述,其完全响应由零输入响应和零状态响应组成。
MATLAB 符号工具箱提供了dsolve 函数,可以实现对常系数微分方程的符号求解,其调用格式为:dsolve(‘eq1,eq2…’,’cond1,cond2,…’,’v ’)其中参数eq 表示各个微分方程,它与MATLAB 符号表达式的输入基本相同,微分和导数的输入是使用Dy ,D2y ,D3y 来表示y 的一价导数,二阶导数,三阶导数;参数cond 表示初始条件或者起始条件;参数v 表示自变量,默认是变量t 。
通过使用dsolve 函数可以求出系统微分方程的零输入响应和零状态响应,进而求出完全响应。
[实例1]试用Matlab 命令求齐次微分方程0)()(2)(='+''+'''t y t y t y 的零输入响应,已知起始条件为2)0(,1)0(,1)0(=''='=---y y y 。
注意,程序中绘图的时间区间一定要t>0,本程序中取[0, 8],程序运行后结果如下。
2、连续时间系统零状态响应的数值求解在实际工程中使用较多的是数值求解微分方程。
对于零输入响应来说,其数值解可以通过函数initial来实现,而该函数中的参量必须是状态变量所描述的系统模型,由于现在还没有学习状态变量相关内容,所以此处不做说明。
对于零状态响应,MATLAB控制系统工具箱提供了对LTI系统的零状态响应进行数值仿真的函数lsim,利用该函数可以求解零初始条件下的微分方程的数值解。
其调用格式为:y=lsim(sys,f,t),其中t表示系统响应的时间抽样点向量,f是系统的输入向量;sys表示LTI系统模型,用来表示微分方程、差分方程或状态方程。
在求解微分方程时,sys是有tf函数根据微分方程系数生成的系统函数对象,其语句格式为:sys=tf(a,b)。
其中,a和b分别为微分方程右端和左端的系数向量。
例如,对于微分方程)()()()()()()()(0'1''2'''30'1''2'''3t f b t f b t f b f f b t y a t y a t y a t y a +++=+++可以使用),(];,,,[];,,,[01230123a b tf sys b b b b b a a a a a ===获得其LTI 模型。
注意,如果微分方程的左端或者右端表达式有缺项,则其向量a 或者b 中对应元素应该为零,不能省略不写。
3、连续时间系统冲激响应和阶跃响应的求解在连续时间LTI系统中,冲激响应和阶跃响应是系统特性的描述。
在MATLAB中,对于冲激响应和阶跃响应的数值求解,可以使用控制工具箱中提供的函数impulse和step来求解。
), () ,(tsysstepy tsysimpulsey==其中t表示系统响应的时间抽样点向量,sys表示LTI系统模型。
三、实验内容1、已知系统的微分方程和激励信号,使用MATLAB命令画出系统的零状态响应和零输入响应(零状态响应分别使用符号法和数值法求解,零输入响应只使用符号法求解)。
要求题目2必做,题目1选做。
2、已知系统的微分方程,使用MATLAB命令画出系统的冲激响应和阶跃响应(数值法)。
要求题目2必做,题目1选做。
四、实验报告要求1、格式:实验名称、实验目的、实验原理、实验环境、实验内容(上述几部分代码及结果图形)、实验思考等。
实验四傅里叶变换(FT)及其性质一、实验目的1、学会运用Matlab求连续时间信号的傅里叶2、学会运用Matlab求连续时间信号的频谱图3、学会运用Matlab分析连续时间信号的傅里叶变换的性质二、实验原理及实例分析(一)傅里叶变换的实现例1:用Matlab 符号运算求解法求单边指数信号)()(2t u e t f t -=的FT 。
例2:用Matlab 符号运算求解法求211)(ωω+=j F 的IFT 。
例3:用Matlab 命令绘出例1中单边指数数信号的频谱图。
例4:用Matlab命令求图示三角脉冲的FT,并画出其幅度谱。
例5:用Matlab数值计算法求例3的三角脉冲幅度频谱图。
(二)FT 的性质1、尺度变换例6:设矩形信号)5.0()5.0()(--+=t u t u t f ,利用Matlab 命令绘出该信号及其频谱图。
同时绘出)2()2/(t f t f 和的频谱图,并加以比较。
下面利用Matlab将常规矩形脉冲信号的频谱和其调制信号(课本例3-4信号)频谱进行比较。
Matlab源程序如下:傅里叶变换的其它性质可用类似的方法验证,希望大家课下练习。
三、实验内容[注意:(1)写代码时j i]3、分别利用Matlab符号运算求解法和数值计算法求下图所示信号的FT,并画出其频谱图。
4、已知门函数自身卷积为三角波信号,试用Matlab命令验证FT的时域卷积定理。
四、实验报告要求实验名称、实验目的、实验原理、实验环境、实验内容(上述几部分代码及结果图形)、实验思考等。