北理工信号与系统MATLAB实验

合集下载

信号与系统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实验及答案

产生离散衰减正弦序列()π0.8sin 4n x n n ⎛⎫= ⎪⎝⎭, 010n ≤≤,并画出其波形图。

n=0:10;x=sin(pi/4*n).*0.8.^n;stem(n,x);xlabel( 'n' );ylabel( 'x(n)' );用MATLAB 生成信号()0sinc at t -, a 和0t 都是实数,410t -<<,画波形图。

观察并分析a 和0t 的变化对波形的影响。

t=linspace(-4,7); a=1;t0=2;y=sinc(a*t-t0); plot(t,y);t=linspace(-4,7); a=2;t0=2;y=sinc(a*t-t0); plot(t,y);t=linspace(-4,7); a=1;t0=2;y=sinc(a*t-t0); plot(t,y);三组对比可得a 越大最大值越小,t0越大图像对称轴越往右移某频率为f 的正弦波可表示为()()cos 2πa x t ft =,对其进行等间隔抽样,得到的离散样值序列可表示为()()a t nT x n x t ==,其中T 称为抽样间隔,代表相邻样值间的时间间隔,1s f T=表示抽样频率,即单位时间内抽取样值的个数。

抽样频率取40 Hz s f =,信号频率f 分别取5Hz, 10Hz, 20Hz 和30Hz 。

请在同一张图中同时画出连续信号()a x t t 和序列()x n nT 的波形图,并观察和对比分析样值序列的变化。

可能用到的函数为plot, stem, hold on 。

fs = 40;t = 0 : 1/fs : 1 ;% ƵÂÊ·Ö±ðΪ5Hz,10Hz,20Hz,30Hz f1=5;xa = cos(2*pi*f1*t) ; subplot(1, 2, 1) ;plot(t, xa) ;axis([0, max(t), min(xa), max(xa)]) ;xlabel('t(s)') ;ylabel('Xa(t)') ;line([0, max(t)],[0,0]) ; subplot(1, 2, 2) ;stem(t, xa, '.') ;line([0, max(t)], [0, 0]) ;axis([0, max(t), min(xa), max(xa)]) ;xlabel('n') ;ylabel('X(n)') ;频率越高,图像更加密集。

北京理工大学信号与系统实验报告5 连续时间系统的复频域分析

北京理工大学信号与系统实验报告5 连续时间系统的复频域分析

实验5连续时间系统的复频域分析(综合型实验)一、实验目的1)掌握拉普拉斯变换及其反变换的定义并掌握MATLAB 实现方法。

2)学习和掌握连续时间系统函数的定义及复频域分析方法。

3)掌握系统零极点的定义,加深理解系统零极点分布与系统特性的关系。

二、实验原理与方法 1.拉普拉斯变换连续时间信号x(t)的拉普拉斯变换定义为(s)(t)e st X x dt +∞--∞=⎰(1)拉普拉斯反变换为1(t)(s)e 2j st j x X ds j σσπ+∞-∞=⎰ (2)MATLAB 中相应函数如下:(F)L laplace = 符号表达式F 拉氏变换,F 中时间变量为t ,返回变量为s 的结果表达式。

(F,t)L laplace =用t 替换结果中的变量s 。

()F ilaplace L =以s 为变量的符号表达式L 的拉氏反变换,返回时间变量为t 的结果表达式。

(,)F ilaplace L x =用x 替换结果中的变量t 。

拉氏变换还可采用部分分式法,当(s)X 为有理分式时,它可以表示为两个多项式之比:110110...(s)(s)(s)...M M M M N N N N b s b s b N X D a s a s a ----+++==+++ (3) 上式可以采用部分分式法展成以下形式1212(s)...N Nr r rX s p s p s p =+++--- (4) 再通过查找常用拉氏变换对易得反变换。

利用residue 函数可将X(s)展成(4)式形式,调用格式为:[r,p,k]residue(b,a)=其中b 、a 为分子和分母多项式系数向量,r 、p 、k 分别为上述展开式中的部分分式系数、极点和直项多项式系数。

2.连续时间系统的系统函数连续时间系统的系统函数是指系统单位冲激响应的拉氏变换(s)(t)e stH h dt +∞--∞=⎰(5)连续时间系统的系统函数还可以由系统输入与输出信号的拉氏变换之比得到。

信号与系统 MATLAB综合实验

信号与系统    MATLAB综合实验

信号与系统MATLAB综合实验一、实验目的:1、学习MATLAB语言的编程方法及熟悉MATLAB指令。

2、掌握连续时间信号的卷积运算方式,分析建立信号波形间的联系。

3、通过使用MATLAB函数研究线性时不变离散时间系统的时域特性,以加深对线性时不变离散时间系统的时不变性的理解。

二、实验仪器1、计算机2、MATLAB 软件三、实验原理一个离散时间系统是将输入序列变换成输出序列的一种运算。

若以T[•]表示这种运算,则一个离散时间系统可由图1-1来表示,即→∙→(1-1)x n T y n()[]()图1-1 离散时间系统离散时间系统中最重要的、最常用的是“线性时不变系统”。

时不变系统系统的运算关系T[•]在整个运算过程中不随时间(也不随序列的先后)而变化,这种系统称为时不变系统(或称移不变系统)。

这个性质可用以下关系表示:若输入)(ny,则将输入序列移动任意位后,其输出序列除了跟着x的输出为)(n移位外,数值应保持不变,即若)ynm[mT--(m为任意整数)=(xn(()]()][nT=,则)yxn满足以上关系的系统就称为时不变系统。

四、实验内容及结论1、连续时间系统的时域分析已知微分方程: )(2)(3)(2)(3)(t f t f t y t y t y +'=+'+'',1)0(-='-y , 2)0(=-y 若激励信号为)()(t u t f =,利用阶跃响应函数step(sys,t) 求解画波形;利用零状态响应函数lsim 求解画波形;利用卷积函数求解画波形;比较结果。

程序如下:dt=0.001;t1=0:dt:10;f1=-1*exp(-t1)+4*exp(-2*t1);t2=t1;f2=u(t2);f=conv(f1,f2);f=f*dt;t3=0:dt:20;subplot(311)plot(t3,f);xlabel('时间(t)');ylabel('y(t)');title('零状态响应(卷积法)');b=[3 2];a=[1 3 2];sys=tf(b,a);t=0:0.01:10;x=stepfun(t,0);y=lsim(sys,x,t);subplot(312)plot(t,y);xlabel('时间(t)');ylabel('y(t)');title('零状态响应(阶跃函数求法)');sys=tf(b,a);t=0:0.1:10;y=step(sys,t);subplot(313)plot(t,y);xlabel('时间t)');ylabel('y(t)');title('阶跃响应');结论:上述三种方法求得的都是输入为阶跃函数时候的零状态响应,也为阶跃响应,通过图形我们可以看出,利用卷积法求出的零状态和另外两种方法求出的零状态响应图形有一点差别,三者在0到10区间上响应都一致,而利用卷积法求的响应却在下面的区间内发生了变化,我试图修改程序,无论怎么改,发现只要调用了卷积函数,求得的图形就像上述的卷积法求的图形一样,不得解。

信号与系统MATLAB实验-实验二 Matlab中信号的运算

信号与系统MATLAB实验-实验二 Matlab中信号的运算

1、运用funtool对f(x)=sin(x)/x分别进行信号的尺度变换f(2x)、f(0.5x)和信号的移位运算f(x+1)、f(x-1)操作以及f(0.5x+1),分别记录相应波形。

f(x)=sin(x)/x f(x+1)f(2x) f(x-1)f(0.5x) f(0.5x+1)2、已知两连续时间信号如下图所示,1)写出信号的函数表达式,并计算f(t)=f1(t)* f2(t)的解析表达式; 2)用MATLAB 求f(t)=f1(t)* f2(t),并绘出f(t)的时域波形图。

(设定取样时间间隔为dt )【实验思考】:通过不断改变dt 的取值并对比所得到的实验效果,观察当取样时间dt 为多大时,函数conv_cs()的计算结果就是连续时间卷积f(t)=f1(t)* f2(t)的较好近似结果?3、已知两连续时间信号如下图所示,1)写出信号的函数表达式,并计算f(t)=f1(t)* f2(t)的解析表达式;2)用MATLAB 求f(t)=f1(t)* f2(t),并绘出f(t)的时域波形图。

(设定取样时间间隔为dt)【实验思考】:不断改变dt的取值并对比实验效果,当取样时间dt为多大时,函数conv_cs()的计算结果就是连续时间卷积f(t)=f1(t)* f2(t)的较好近似结果?clear alldt = 0.01;t1 = -3:dt:3;f1 = 2*(u(t1+1) - u(t1-1));figure;stairs(t1,f1);hold allgrid ont2 = -3:dt:3;f2 = u(t2+2)-u(t2-2);stairs(t2,f2)[fn, tn] = conv_cs(f1, t1, f2, t2, dt);plot(tn, fn)grid onlegend('f1', 'f2', 'f1*f2')。

信号与系统matlab实验四

信号与系统matlab实验四

实验四 连续时间信号的傅立叶变换一、实验目的(1)掌握连续信号傅立叶变换与逆变换的计算方法(2)掌握利用MATLAB 实现连续时间信号傅立叶变换的方法二、实验内容1利用fourier()命令求解如下信号的傅立叶变换,给出)(t f 的波形图以及)(ωj F 的表达式和幅度频谱图:(1) 钟形脉冲:∞<<∞-=-t e t f t ,)(2)2(;(2)符号函数:⎩⎨⎧<->=0101)(t t t f)(ωF 的表达式:(1)22)(ωπω-=e F(2)ωωi F 2)(-=函数一程序如下:syms t v w x;x=exp(-(t/2)*(t/2));F=fourier(x);subplot(211);ezplot(x);subplot(212);ezplot(F);函数二:syms t v w x;x=Heaviside(t)-Heaviside(-t);F=fourier(x);subplot(211);ezplot(x,[-1,1]);subplot(212);ezplot(abs(F));运行结果如图:(1)(2)2求解如下信号的傅立叶变换,绘出信号的时域波形及幅度频谱图:(1) 升余弦脉冲:10)],cos(1[21)(≤≤+=t t t f π;(2)⎪⎩⎪⎨⎧><-=20221)(t t t t f)(ωF 的表达式:(1)()()[]πωπωωω++-+=Sa Sa Sa F 21)()( (2)()()222sin 22)(ωωωω==Sa F函数一:R=0.02;t=-1:R:1;f=1/2*(1+cos(pi*t));N=200;k=0:N;W=2*pi*k/(10*N*R);F=R*f*exp(-j*t'*W);F=real(F);W=[-fliplr(W),W(2:N+1)];F=[fliplr(F),F(2:N+1)];subplot(2,1,1);plot(t,f);xlabel('t');ylabel('f(t)');title('f(t)=u(t+1)-u(t-1)');axis([-1,1,-0.1,1.1]);subplot(2,1,2);plot(W,F);xlabel('w');ylabel('F(w)');title(' f(t)的傅氏变换F(w)');axis([-30,30,-0.1,1.1]);函数二:R=0.01;t=-2:R:2;f=(1-abs(t)/2);N=400;k=0:N;W=2*pi*k/(10*N*R);F=R*f*exp(-j*t'*W);F=real(F);W=[-fliplr(W),W(2:N+1)];F=[fliplr(F),F(2:N+1)];subplot(2,1,1);plot(t,f);xlabel('t');ylabel('f(t)');title('f(t)=(1-abs(t)/2)*[u(t+2)-u(t-2)]');axis([-2,2,-0.1,1.1]);subplot(2,1,2);plot(W,F);xlabel('w');ylabel('F(w)'); title('f(t)的傅氏变换F(w)'); axis([-25,25,-0.1,2.1]);运行结果如图:(1)(2)3已知)(1t f 的波形如下图所示且)()(11ωj F t f ↔;设)()(*)()(11ωj F t f t f t f ↔=,试用MATLAB 给出)(1t f 、)(t f 、)(1ωj F 及)(ωj F ,并验证时域卷积定理。

北京理工大学信号与系统实验实验报告

北京理工大学信号与系统实验实验报告

北京理工大学信号与系统实验实验报告信号与系统实验报告姓名:肖枫学号:1120111431班号:05611102专业:信息对抗技术学院:信息与电子学院12实验1 信号的时域描述与运算一、实验目的1. 掌握信号的MATLAB表示及其可视化方法。

2. 掌握信号基本时域运算的MATLAB实现方法。

3. 利用MATLAB分析常用信号,加深对信号时域特性的理解。

二、实验原理与方法1. 连续时间信号的MATLAB表示连续时间信号指的是在连续时间范围内有定义的信号,即除了若干个不连续点外,在任何时刻信号都有定义。

在MATLAB中连续时间信号可以用两种方法来表示,即向量表示法和符号对象表示法。

从严格意义上来说,MATLAB并不能处理连续时间信号,在MATLAB中连续时间信号是用等时间间隔采样后的采样值来近似表示的,当采样间隔足够小时,这些采样值就可以很好地近似表示出连续时间信号,这种表示方法称为向量表示法。

表示一个连续时间信号需要使用两个向量,其中一个向量用于表示信号的时间范围,另一个向量表示连续时间信号在该时间范围内的采样值。

例如一个正弦信号可以表示如下:>> t=0:0.01:10;>> x=sin(t);利用plot(t,x)命令可以绘制上述信号的时域波形,如图1所示。

如果连续时间信号可以用表达式来描述,则还可以采用符号表达式來表示信号。

例如对于上述正弦信号,可以用符号对象表示如下:>> x=sin(t);>> ezplot(X);利用ezplot(x)命令可以绘制上述信号的时域波形10.80.60.40.2-0.2-0.4-0.6-0.8-1012345678910Time(seconds)图1 利用向量表示连续时间信号3sin(t)10.5-0.5-1-6-4-20246t图 2 利用符号对象表示连续时间信号常用的信号产生函数函数名功能函数名功能 heaviside 单位阶跃函数 rectpuls 门函数 sin 正弦函数 tripuls 三角脉冲函数 cos 余弦函数 square 周期方波 sinc sinc函数 sawtooth 周期锯齿波或三角波 exp 指数函数2.连续时间信号的时域运算对连续时间信号的运算包括两信号相加、相乘、微分、积分,以及位移、反转、尺度变换(尺度伸缩)等。

信号与系统 MATLAB实验报告(可打印修改)

信号与系统 MATLAB实验报告(可打印修改)

0.8
0.6
0.4
0.2
0
-0.2
-0.4
-20
-15
-10
-5
0
5
10
15
20
对比可知此法做出的图像更加清晰美观。 (2)MATLAB 可以自动地根据曲线数据的范围选择合适的坐标系,从而使得 曲线尽可能清晰地显示出来,一般情况下不必选择坐标系。但是,如果对 MATLAB 自动产生的坐标轴不满意,可以利用 axis 命令对坐标轴进行调整。
title('f=R(t)')
axis([-5 5 -0.5 1.5])
(5) f (t) Sa(t)
ω=1 时:
t=-20:0.01:20 f=sin(t)./t 实现抽样函数
%调用正弦函数sin(),并用sin(t)./t
plot(t,f)
title('f(t)=Sa(t)')
axis([-20,-20,-0.5,1.1])
改进想法:
本题中函数的表示方法都不只一种。如阶跃函数可以借助符号函数来实现
可视化。其程序和结果如下:
t=-5:0.05:5 f=sign(t)
%调用符号函数 sign()
axis([-5,5,-1.1,1.1])
ff=1/2+1/2*f
%运用阶跃函数与符号函数的关系,表示出阶跃函数
ff
plot(t,ff)
实验程序:
(1)
n=-10:20
%设置变量范围,默认步长为1
f=heaviside(n)
x=heaviside(n)-heaviside(n-10) %阶跃函数直接相减
的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。 在 MATLAB 中 t = t1: p: t2 的命令定义时间范围向量,t1 为信号起始时间,t2 为终止时间,p 为时间间隔。

信号与系统Matlab实验报告

信号与系统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实验报告信号与系统 Matlab 实验报告引言:信号与系统是电子信息类专业中的一门重要课程,它研究了信号的产生、传输和处理过程,以及系统对信号的响应和影响。

通过实验,我们可以更直观地理解信号与系统的基本概念和原理,并掌握使用 Matlab 进行信号与系统分析和处理的方法。

实验一:信号的产生与显示在信号与系统课程中,我们首先需要了解不同类型的信号,以及如何产生和显示这些信号。

在 Matlab 中,我们可以使用一些函数来生成常见的信号波形,如正弦波、方波、三角波等。

通过编写简单的 Matlab 程序,我们可以实现信号的产生和显示。

实验二:信号的采样与重构在实际应用中,信号通常以连续时间的形式存在,但在数字系统中需要将其转换为离散时间的信号进行处理。

这就需要进行信号的采样和重构。

在 Matlab 中,我们可以使用采样函数和重构函数来模拟这一过程,并观察采样率对信号重构质量的影响。

实验三:信号的滤波与频谱分析信号滤波是信号处理中的重要环节,它可以去除信号中的噪声和干扰,提高信号质量。

在 Matlab 中,我们可以使用滤波函数来实现不同类型的滤波器,并观察滤波对信号频谱的影响。

此外,我们还可以使用频谱分析函数来研究信号的频谱特性,如频谱密度、功率谱等。

实验四:系统的时域与频域分析系统是信号处理中的重要概念,它描述了信号在系统中的传输和变换过程。

在Matlab 中,我们可以使用系统函数来模拟不同类型的系统,并观察系统对信号的时域和频域响应。

通过实验,我们可以深入理解系统的时域特性和频域特性,如冲击响应、频率响应等。

实验五:信号的调制与解调信号调制是将信息信号转换为调制信号的过程,而解调则是将调制信号恢复为原始信号的过程。

在 Matlab 中,我们可以使用调制函数和解调函数来模拟不同类型的调制和解调方式,如调幅、调频、调相等。

通过实验,我们可以了解不同调制方式的原理和特点,并观察调制和解调对信号的影响。

信号与系统MATLAB实验(word文档良心出品)

信号与系统MATLAB实验(word文档良心出品)

2016-2017学年第一学期信号与系统实验报告班级:姓名:学号:成绩:指导教师:实验一 常见信号的MATLAB 表示及运算一.实验目的1.熟悉常见信号的意义、特性及波形2.学会使用MATLAB 表示信号的方法并绘制信号波形 3. 掌握使用MATLAB 进行信号基本运算的指令 4. 熟悉用MATLAB 实现卷积积分的方法二.实验原理信号一般是随时间而变化的某些物理量。

按照自变量的取值是否连续,信号分为连续时间信号和离散时间信号,一般用()f t 和()f k 来表示。

若对信号进行时域分析,就需要绘制其波形,如果信号比较复杂,则手工绘制波形就变得很困难,且难以精确。

MATLAB 强大的图形处理功能及符号运算功能,为实现信号的可视化及其时域分析提供了强有力的工具。

根据MATLAB 的数值计算功能和符号运算功能,在MATLAB 中,信号有两种表示方法,一种是用向量来表示,另一种则是用符号运算的方法。

在采用适当的MATLAB 语句表示出信号后,就可以利用MATLAB 中的绘图命令绘制出直观的信号波形了。

下面分别介绍连续时间信号和离散时间信号的MATLAB 表示及其波形绘制方法。

1.连续时间信号所谓连续时间信号,是指其自变量的取值是连续的,并且除了若干不连续的点外,对于一切自变量的取值,信号都有确定的值与之对应。

从严格意义上讲,MATLAB 并不能处理连续信号。

在MATLAB 中,是用连续信号在等时间间隔点上的样值来近似表示的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。

在MATLAB 中连续信号可用向量或符号运算功能来表示。

⑴ 向量表示法对于连续时间信号()f t ,可以用两个行向量f 和t 来表示,其中向量t 是用形如12::t t p t 的命令定义的时间范围向量,其中,1t 为信号起始时间,2t 为终止时间,p 为时间间隔。

向量f 为连续信号()f t 在向量t 所定义的时间点上的样值。

北京理工大学信号与系统实验报告

北京理工大学信号与系统实验报告

实验1 信号的时域描述与运算一、实验目的1、掌握信号的MATLAB表示及其可视化方法。

2、掌握信号基本时域运算的MATLAB实现方法。

3、利用MATLAB分析常用信号,加深对信号时域的理解。

二、实验原理1、连续时间的MATLAB表示连续时间信号指的是在连续时间范围内有定义的信号,即除若干个不连续点外,在任何信号都有意义。

在MATLAB中,连续时间信号可以用两种方法来表示,即向量表示法和符号对象表示法。

向量表示法:严格意义上来说,MATLAB并不能处理连续时间信号,都必须是用信号等时间间隔采样后的采样值来近似表示的,采样时间间隔足够小的时候,这些采样值就可以近似地表示出连续时间信号。

例如:>>t=0:0.01:10;>>x=sin(t);此时利用plot(t,x)命令即可绘制上述信号的时域波形。

符号对象表示法:连续时间信号先用表达式表示出来,然后采用符号表达式来表示信号。

例如:>>sym t;>>x=xin(t);此时利用ezplot(x)命令即可绘制上述信号的时域波形。

常用的信号产生函数:2、连续时间信号的时域运算对连续时间信号的运算包括量信号想家、相乘、微分、积分以及位移反转、尺度变换(尺度伸缩)等1)相加和相乘信号的相加和相乘指两个信号对应时刻的值相加和相乘,对于两个采用向量表示的可以直接使用算术运算的运算符“+”和“•”来计算,此时要求表示两信号的向量时间范围和采样间隔相同,采用符号对象表示的两个信号,可以直接根据符号对象的运算规则运算。

2)微分和积分对于向量表示发表示的连续时间信号,可以用过数值计算的方法计算信号的微分和积分。

这里由时间向量[t1,t2,…,t N]和采样值向量[x1,x2,…,x N]表示的连续信号的微分是利用差分来近似求取的。

MATLAB里用diff来计算差分x(k+1)-x(k)。

连续信号的定积分可以由MATLAB的quad函数实现,调用格式为quad(‘functions_name’,a,b)其中,functions_name为被积函数名,a、b为积分区间。

北理工信号实验报告

北理工信号实验报告

北理工信号实验报告1. 实验目的本实验旨在通过对北理工信号实验的探索与学习,加深对数字信号处理的理解。

具体目标如下:- 了解信号处理的基本概念和基本原理;- 掌握数字信号的模拟与数字转换方法;- 学会使用MATLAB进行信号处理实验。

2. 实验原理信号处理是对信号进行采样、量化和编码等操作,将连续的模拟信号转换成离散的数字信号的过程。

数字信号由一系列的采样值组成,这些采样值是模拟信号在离散时间点上的近似值。

数字信号的采样率和量化位数是决定信号质量的重要因素。

实验中采集的信号是通过模拟方式产生的,通过模拟-数字转换芯片将模拟信号转换为数字信号。

然后使用MATLAB对这些数字信号进行采样、量化、编码和解码等操作。

3. 实验内容本次实验进行了如下几个实验操作和内容:- 使用函数`sin`生成一个频率为1000Hz,振幅为2的正弦信号;- 将生成的信号进行采样操作,并绘制采样后的信号图像;- 对采样信号进行离散傅立叶变换,并绘制频谱图像;- 对频谱进行低通滤波,并绘制滤波后的频谱图像;- 对滤波后的信号进行解码,并绘制解码后的信号图像;4. 实验结果与分析通过实验,我们得到了以下结果和分析:首先,我们生成了频率为1000Hz,振幅为2的正弦信号,并进行了采样操作。

通过绘制采样后的信号图像,可以看到信号的周期性,但呈现离散的特点。

然后,我们对采样信号进行离散傅立叶变换,得到了频谱图像。

通过观察频谱图像,我们可以清晰地看到信号的频率信息。

在频谱图像中,频率为1000Hz的正弦信号对应的频率分量明显。

接下来,我们对频谱进行低通滤波,滤除高频分量。

通过绘制滤波后的频谱图像,可以观察到高频分量被滤除了,只保留了低频分量。

最后,我们对滤波后的信号进行解码,并绘制解码后的信号图像。

通过观察解码后的信号图像,我们可以看到滤波后的信号与原始信号比较接近。

解码过程可以还原数字信号为模拟信号,使得信号能够以连续的形式传输和显示。

北京理工大学-信号与系统实验报告

北京理工大学-信号与系统实验报告

本科实验报告实验名称:信号与系统实验实验一信号的时域描述与运算一、实验目的①掌握信号的MATLAB表示及其可视化方法。

②掌握信号基本时域运算的MATLAB实现方法。

③利用MATLAB分析常用信号,加深对信号时域特性的理解。

二、实验原理与方法1. 连续时间信号的MATLAB表示连续时间信号指的是在连续时间范围内有定义的信号,即除了若干个不连续点外,在任何时刻信号都有定义。

在MATLAB中连续时间信号可以用两种方法来表示,即向量表示法和符号对象表示法。

从严格意义上来说,MATLAB并不能处理连续时间信号,在MATLAB中连续时间信号是用等时间间隔采样后的采样值来近似表示的,当采样间隔足够小时,这些采样值就可以很好地近似表示出连续时间信号,这种表示方法称为向量表示法。

表示一个连续时间信号需要使用两个向量,其中一个向量用于表示信号的时间范围,另一个向量表示连续时间信号在该时间范围内的采样值。

例如一个正弦信号可以表示如下:>> t=0:0.01:10;>> x=sin(t);利用plot(t,x)命令可以绘制上述信号的时域波形,如图1所示。

如果连续时间信号可以用表达式来描述,则还可以采用符号表达式來表示信号。

例如对于上述正弦信号,可以用符号对象表示如下:>> x=sin(t);>> ezplot(X);利用ezplot(x)命令可以绘制上述信号的时域波形常用的信号产生函数2.连续时间信号的时域运算-1-0.8-0.6-0.4-0.200.20.40.60.81Time(seconds)图1 利用向量表示连续时间信号-1-0.50.51t图 2 利用符号对象表示连续时间信号sin(t)对连续时间信号的运算包括两信号相加、相乘、微分、积分,以及位移、反转、尺度变换(尺度伸缩)等。

1)相加和相乘信号相加和相乘指两信号对应时刻的值相加和相乘,对于两个采用向量表示的可以直接使用算术运算的运算符“+”和“*”来计算,此时要求表示两信号的向量时间范围和采样间隔相同。

信号与系统matlab实验报告

信号与系统matlab实验报告

信号与系统matlab实验报告信号与系统MATLAB实验报告引言信号与系统是电子工程、通信工程和控制工程等领域中的重要基础课程。

通过实验,我们可以更好地理解信号与系统的概念和基本原理,并掌握使用MATLAB进行信号与系统分析的方法。

本报告将介绍我们在信号与系统实验中的实验过程、结果和分析。

实验一:连续时间信号的采样与重构在这个实验中,我们研究了连续时间信号的采样与重构。

首先,我们通过MATLAB生成了一个连续时间信号,并使用采样定理确定了采样频率。

然后,我们对连续时间信号进行采样,并通过重构方法将采样信号还原为连续时间信号。

最后,我们通过观察重构信号与原始信号的相似性来评估重构的效果。

实验二:线性时不变系统的频率响应在这个实验中,我们研究了线性时不变系统的频率响应。

首先,我们通过MATLAB生成了一个输入信号,并设计了一个线性时不变系统。

然后,我们通过将输入信号输入到系统中,并记录输出信号的幅度和相位,从而得到系统的频率响应。

最后,我们绘制了系统的幅频特性和相频特性曲线,并对其进行了分析和讨论。

实验三:离散时间信号的采样与重构在这个实验中,我们研究了离散时间信号的采样与重构。

首先,我们通过MATLAB生成了一个离散时间信号,并使用采样定理确定了采样周期。

然后,我们对离散时间信号进行采样,并通过重构方法将采样信号还原为离散时间信号。

最后,我们通过观察重构信号与原始信号的相似性来评估重构的效果,并讨论了离散时间信号的采样与重构的特点。

实验四:离散时间系统的差分方程在这个实验中,我们研究了离散时间系统的差分方程。

首先,我们通过MATLAB生成了一个输入信号,并设计了一个离散时间系统。

然后,我们通过将输入信号输入到系统中,并根据系统的差分方程计算输出信号。

最后,我们对输入信号和输出信号进行了分析和比较,并讨论了离散时间系统的差分方程的特点和应用。

实验五:连续时间信号的傅里叶变换在这个实验中,我们研究了连续时间信号的傅里叶变换。

(完整版)信号与系统matlab实验3

(完整版)信号与系统matlab实验3

一、实现下述周期信号的傅立叶级数分解与合成(a )首先,推导出求解0a ,n a ,nb 的公式,计算出前10次系数; (b )利用MATLAB 求解0a ,n a ,n b 的值,其中n a ,nb 求解前10次系数,并给出利用这些系数合成的信号波形。

解:(a)110220[sign(t) - sign(t - 1)]0.25Ta dt ==⎰ 112202[sign(t) - sign(t - 1)][cos()]Tn n t a dt Tπ=⋅⎰ 112202[sign(t) - sign(t - 1)][sin()]T n n t b dt T π=⋅⎰ 程序:function [A_sym,B_sym]=CTFShchsymsyms t n k xT=4;if nargin<4;Nf=10;endif nargin<5;Nn=32;endx=time_fun_x(t);A0=int(x,t,0,1)/T;As=int(2*x*cos(2*pi*n*t/T)/T,t,0,1);Bs=int(2*x*sin(2*pi*n*t/T)/T,t,0,1);A_sym(1)=double(vpa(A0,Nn));for k=1:NfA_sym(k+1)=double(vpa(subs(As,n,k),Nn));B_sym(k+1)=double(vpa(subs(Bs,n,k),Nn));endif nargout==0c=A_sym;disp(c);d=B_sym;disp(d);t=-8:0.01:9;f1=c(1)+c(2).*cos(2*pi*1*t/T)+d(2).*sin(2*pi*1*t/T); f2=c(3).*cos(2*pi*2*t/T)+d(3).*sin(2*pi*2*t/T); f3=c(4).*cos(2*pi*3*t/T)+d(4).*sin(2*pi*3*t/T); f4=c(5).*cos(2*pi*4*t/T)+d(5).*sin(2*pi*4*t/T); f5=c(6).*cos(2*pi*5*t/T)+d(6).*sin(2*pi*5*t/T);f6=c(7).*cos(2*pi*6*t/T)+d(7).*sin(2*pi*6*t/T);f7=c(8).*cos(2*pi*7*t/T)+d(8).*sin(2*pi*7*t/T);f8=c(9).*cos(2*pi*8*t/T)+d(9).*sin(2*pi*8*t/T);f9=c(10).*cos(2*pi*9*t/T)+d(10).*sin(2*pi*9*t/T);f10=c(11).*cos(2*pi*10*t/T)+d(11).*sin(2*pi*10*t/T);ff1=f1+f2+f3+f4+f5+f6+f7+f8+f9+f10;ff2=f1+f2+f3+f4+f5+f6+f7;ff3=ff2+f8;ff4=ff3+f9;subplot(2,2,1)plot(t,ff1),hold ony=time_fun_e(t) %µ÷ÓÃÁ¬Ðøʱ¼äº¯Êý-ÖÜÆÚ¾ØÐÎÂö³å plot(t,y,'r:')title('ÖÜÆÚ¾ØÐ⨵ÄÐγɡª1+2+3+4+5+6+7+8+9+10´Îг²¨')axis([-4,4.5,-0.5,1.5])grid onsubplot(2,2,2)grid onplot(t,ff2),hold ony=time_fun_e(t)plot(t,y,'r:')title('ÖÜÆÚ¾ØÐ⨵ÄÐγɡª1+2+3+4+5+6+7´Îг²¨')axis([-4,4.5,-0.5,1.5])grid onsubplot(2,2,3)plot(t,ff3),hold ony=time_fun_e(t)plot(t,y,'r:')title('1+2+3+4+5+6+7+8´Îг²¨')axis([-4,4.5,-0.5,1.5])grid onsubplot(2,2,4)plot(t,ff4),hold ony=time_fun_e(t)plot(t,y,'r:')title('1+2+3+4+5+6+7+8+9´Îг²¨')axis([-4,4.5,-0.5,1.5])grid onendfunction x=time_fun_x(t)h=1;x1=sym('0.5+0.5*sign(t)')*h;x=x1-sym('(0.5+0.5*sign(t-1))')*h;%-------------------------------------------function y=time_fun_e(t)a=0.5;T=5;h=1;t=-8:0.01:9;e1=(1/2+1/2.*sign(t))-(1/2+1/2.*sign(t-1));e2=(1/2+1/2.*sign(t-4))-(1/2+1/2.*sign(t-5));e3=(1/2+1/2.*sign(t+4))-(1/2+1/2.*sign(t+3));y=e1+e2+e3;结果如下:A_sym =0.2500 0.3183 0.0000 -0.1061 -0.0000 0.0637 0.0000 -0.0455 -0.0000 0.0354 0.0000B_sym =0 0.3183 0.3183 0.1061 0.0000 0.0637 0.1061 0.0455 0.0000 0.0354 0.0637二、知周期为T=4的三角波,在第一周期(-2<t<2)内表示成:)(,试用MATLAB求该信号的傅立叶级数,并绘制它的频谱图。

北理工信号与系统实验报告

北理工信号与系统实验报告

������������ ������ ������������ ������ 0 ������
������������ =
1 ������0
������(������)������ −������������ ������ 0 ������ ������������
������0
上述两式定义为周期信号复指数形式的傅里叶级数,系数 Ck 称为 x(t)的傅 里叶级数。周期信号的傅里叶级数还可以由三角函数的线性组合来表示,即
xlabel('n') title('y[n]') 程序运行结果如下:
x[n] 1 0.5 0 -0.5 -1 1 0.5 0 -0.5 -1 y[n] 4 h[n]
0
5
10 n
15
20
0
5
10 n
15
20
2
0
-2
0
5
10
15
20 n
25
30
35
40
7.已知两个连续时间信号,求两个信号的卷积。 程序如下: w1=2; w2=4; dt=0.01; t1=-2:dt:2; t2=-4:dt:4; x1=2*rectpuls(t1,w1) x2=rectpuls(t2,w2) x=conv(x1,x2); x=x*dt; t0=t1(1)+t2(1); t3=length(x1)+length(x2)-2; t=t0:dt:(t3*dt+t0); plot(t,x); axis([-4 4 -2 6]); xlabel('t'); title('x(t)'); 程序运行结果如下:
an y (n) (t ) an1 y (n1) (t ) a1 y ' (t ) a0 y(t ) bm x (m) (t ) bm1 x (m1) (t ) b1 x ' (t ) b0 x(t )

信号与系统matlab实验指导书

信号与系统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实验报告

信号与系统 matlab实验报告《信号与系统 Matlab实验报告》摘要:本实验报告通过使用 Matlab 软件进行信号与系统实验,探讨了信号与系统在数字领域的应用。

实验结果表明,Matlab 软件具有强大的信号处理和系统分析功能,能够有效地进行信号与系统的模拟和分析。

引言:信号与系统是电子工程领域中的重要基础课程,它研究了信号的产生、传输和处理,以及系统对信号的响应和影响。

在数字领域,信号与系统的理论和方法也得到了广泛的应用。

Matlab 软件作为一种强大的数学计算工具,为信号与系统的模拟和分析提供了便利和高效的途径。

实验一:信号的生成与显示在本实验中,我们首先使用 Matlab 软件生成了几种常见的信号,包括正弦信号、方波信号和三角波信号。

通过调整信号的频率、幅度和相位等参数,我们观察了信号的变化,并利用 Matlab 的绘图功能将信号图形显示出来。

实验结果表明,Matlab 软件能够方便地生成各种类型的信号,并能够直观地显示信号的波形和特性。

实验二:信号的采样与重构在本实验中,我们使用 Matlab 软件对信号进行了采样和重构。

我们首先对一个连续信号进行了离散采样,然后利用 Matlab 的插值函数对采样信号进行了重构。

实验结果表明,采样和重构过程中存在信号失真和频率混叠等问题,但通过适当的采样和重构方法,我们能够有效地还原原始信号。

实验三:系统的响应与分析在本实验中,我们使用 Matlab 软件对系统的响应进行了分析。

我们构建了几种常见的系统模型,包括线性时不变系统和滤波器系统,然后利用 Matlab 的系统分析工具对系统的频率响应、相位响应和单位脉冲响应等进行了分析。

实验结果表明,Matlab 软件能够有效地进行系统的模拟和分析,为系统设计和优化提供了有力的支持。

结论:通过本实验,我们深入了解了信号与系统在数字领域的应用,并掌握了使用 Matlab 软件进行信号与系统模拟和分析的方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

title('x(t)=cos(\pit)[u(t)-u(t-2)]','FontSize',36,'FontName','Vijaya'); xlabel('t(s)','fontsize',24,'FontName','Times New Roman'); set(gca,'FontSize',24,'FontName','Times New Roman'); 运行结果如下:
1
2. 连续时间信号的时域运算 包括两信号的相加(+) 、相乘(*) 、微分、积分,以及移位、反 转和尺度变换(尺度伸缩)等。 MATLAB 中用 diff 函数来计算差分 xk+1-xk,用 quad 函数来计算 定积分,调用格式为: quad('function_name',a,b) 其中,function_name 为被积函数名,a、b 为积分区间。 3. 离散时间信号的 MATLAB 实现 在 MATLAB 中离散时间信号需要使用两个向量来表示。例如对 于如下离散时间信号:


实验 1 实验 2 实验 3 实验 4 实验 5 实验 6 实验 7
信号的时域描述与运算· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·1 LTI 系统的时域分析 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 21 信号的频域分析 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 42 LTI 系统的频域分析 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 67 连续时间系统的复频域分析 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 85 离散时间系统的 Z 域分析 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·101 连续时间系统的创建与仿真 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·115
③ x(t )
t cos( t ) u (t 2) u (t 2) 2
编程如下:
4
t=-2:0.001:2; x=abs(t)./2.*cos(pi.*t).*(heaviside(t+2)-heaviside(t-2)); plot(t,x,'LineWidth',2); axis([-2 2 -1 1]); title('$x(t)={|t|\over{2}}cos(\pi t)[u(t+2)-u(t-2)]$',... 'interpreter','latex','FontSize',36,'FontName','Vijaya'); xlabel('t(s)','Fontsize',24,'FontName','Times New Roman'); set(gca,'FontSize',24,'FontName','Times New Roman'); 运行结果如下:
t ④ x(t ) e sin(2 t ) u (t ) u (t 3)
编程如下: syms t; x=exp(-t)*sin(2*pi*t)*(heaviside(t)-heaviside(t-3));
5
p=ezplot(x); axis([0 3 -0.6 0.8]); title('x(t)=e^-^tsin(2\pit)[u(t)-u(t-3)]','FontSize',... 36,'FontName','Vijaya'); xlabel('t(s)','Fontsize',24,'FontName','Times New Roman'); set(gca,'FontSize',24,'FontName','Times New Roman'); set(p,'LineWidth',2); 运行结果如下:
个人感想简述 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·120
I
实验 1
一、实验目的
3. 利用 MATLAB 生成并绘制连续周期矩形波信号,要求周期为 2,峰值为 3,显示 3 个周期的波形。 编程如下: t=-1:0.001:6; x=3*square(pi*t,50); plot(t,x ,'LineWidth',2); axis([0 6 0 3.5]); title('x(t)','FontSize',36,'FontName','Vijaya'); xlabel('t(s)','Fontsize',24,'FontName','Times New Roman');
信号的时域描述与运算
①掌握信号的 MATLAB 表示及其可视化方法。 ②掌握信号基本时域运算的 MATLAB 实现方法。 ③利用 MALAB 分析常用信号,加深对信号时域特性的理解。 二、实验原理与方法 1. 连续时间信号的 MATLAB 表示 连续时间信号指的是在连续时间范围内有定义的信号。在 MATLAB 中连续时间信号可以用两种方法来表示:向量表示法和符 号对象表示法。 1)向量表示法:MATLAB 中连续时间信号是用信号时间间隔采 样后的采样值来近似表示的,当采样间隔足够小时,这些采样值就可 以很好地表示出连续时间信号。例如表示正弦信号: >>t=0:0.01:10; >>x=sin(t); >>plot(t,x) 2)对于上述正弦信号,还可以用符号对象表示如下: >>syms t; >>x=sin(t); >>ezplot(x)
③ x(n) n u (n) u ( n 5) 编程如下: n=-1:5;
8
x=n.*(u(n)-u(n-5)); stem(n,x,'filled' ,'MarkerSize',10,'LineWidth',2); axis([-1 5 0 5]); title('x(n)=n[u(n)-u(n-5)]','FontSize',36,'FontName','Vijaya'); xlabel('n','Fontsize',24,'FontName','Times New Roman'); set(gca,'FontSize',24,'FontName','Times New Roman'); 运行结果如下:
④ x(n) sin(n / 2)u(n) 编程如下: n=-1:10; x=sin(n*pi/2).*u(n); stem(n,x,'filled' ,'MarkerSize',10,'LineWidth',2); axis([-1 10 -1 1]);
9
title('x(n)=sin(n\pi/2)u(n)','FontSize',36,'FontName','Vijaya'); xlabel('n','Fontsize',24,'FontName','Times New Roman'); set(gca,'FontSize',24,'FontName','Times New Roman'); 运行结果如下:
① x(n) u(n 3) 编程如下: n=0:9; x=u(n-3); stem(n,x,'filled' ,'MarkerSize',10,'LineWidth',2); axis([0 8 0 1]); title('x(n)=u(n-3)','FontSize',36,'FontName','Vijaya'); xlabel('n','Fontsize',24,'FontName','Times New Roman'); set(gca,'FontSize',24,'FontName','Times New Roman'); 运行结果如下:
相关文档
最新文档