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

上传人:wj 文档编号:14069453 上传时间:2023-06-20 格式:DOCX 页数:93 大小:1.44MB
下载 相关 举报
北京理工大学信号与系统实验报告.docx_第1页
第1页 / 共93页
北京理工大学信号与系统实验报告.docx_第2页
第2页 / 共93页
北京理工大学信号与系统实验报告.docx_第3页
第3页 / 共93页
北京理工大学信号与系统实验报告.docx_第4页
第4页 / 共93页
北京理工大学信号与系统实验报告.docx_第5页
第5页 / 共93页
北京理工大学信号与系统实验报告.docx_第6页
第6页 / 共93页
北京理工大学信号与系统实验报告.docx_第7页
第7页 / 共93页
北京理工大学信号与系统实验报告.docx_第8页
第8页 / 共93页
北京理工大学信号与系统实验报告.docx_第9页
第9页 / 共93页
北京理工大学信号与系统实验报告.docx_第10页
第10页 / 共93页
北京理工大学信号与系统实验报告.docx_第11页
第11页 / 共93页
北京理工大学信号与系统实验报告.docx_第12页
第12页 / 共93页
北京理工大学信号与系统实验报告.docx_第13页
第13页 / 共93页
北京理工大学信号与系统实验报告.docx_第14页
第14页 / 共93页
北京理工大学信号与系统实验报告.docx_第15页
第15页 / 共93页
北京理工大学信号与系统实验报告.docx_第16页
第16页 / 共93页
北京理工大学信号与系统实验报告.docx_第17页
第17页 / 共93页
北京理工大学信号与系统实验报告.docx_第18页
第18页 / 共93页
北京理工大学信号与系统实验报告.docx_第19页
第19页 / 共93页
北京理工大学信号与系统实验报告.docx_第20页
第20页 / 共93页
亲,该文档总共93页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

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

《北京理工大学信号与系统实验报告.docx》由会员分享,可在线阅读,更多相关《北京理工大学信号与系统实验报告.docx(93页珍藏版)》请在冰点文库上搜索。

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

/册闻讨Iirhnolony

9/85

本科实验报告

实验名称:

信号与系统实验

课程名

称 :

数子信号处理

实验时

间 :

任课教

师 :

范哲意

实验地

点 :

八、、 ・

4-442

实验教

师 :

何冰松,范哲意

实验类

型 :

□原理验证

□综合设计

□自主创新

学生姓

名 :

学号/班级:

号 :

院 :

信息与电子学院

同组搭

档 :

业 :

信息工程

绩 :

信畝与电子学院

SCHM4LMINFAMUTIAHUdDELfCTlIMMlieii

实验一信号的时域描述与运算

、实验目的

①掌握信号的MATLAB表示及其可视化方法。

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

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

二、实验原理与方法

1.连续时间信号的MATLA表示

连续时间信号指的是在连续时间范围内有定义的信号,即除了假设干个不连续点外,在任何时刻信号都有定义。

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

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

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

例如一个正弦信号可以表示如下:

>>t=0:

0.01:

10;

>>x=sin(t);

利用plot(t,x)命令可以绘制上述信号的时域波形,如图 1所示。

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

例如对于上述正弦信号,可以用符号对象表示如下:

>>x=sin(t);

>>ezplot(X);

利用ezplot(x)命令可以绘制上述信号的时域波形

0

-1

Time(seconds)

图1利用向量表示连续时间信号

常用的信号产生函数

函数名

功能

函数名

功能

heaviside

单位阶跃函数

rectpuls

门函数

sin

正弦函数

tripuls

三角脉冲函数

cos

余弦函数

square

周期方波

sinc

sinc函数

sawtooth

周期锯齿波或三角波

exp

指数函数

sin(t)

1

0

-1

t

图2利用符号对象表示连续时间信号

2.连续时间信号的时域运算

对连续时间信号的运算包括两信号相加、相乘、微分、积分,以及位移、反转、尺度变换(尺度伸缩)等。

1)相加和相乘

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

采用符号对象表示的两个信号,可以直接根据符号对象的运算规那么运算。

2)微分和积分

对于向量表示法表示的连续时间信号,可以通过数值计算的方法计算信号

的微分和积分。

这里微分使用差分来近似求取的,由时间向量 Nt,,tN]和采

样值向量[洛“2,"N]表示的连续时间信号,其微分可以通过下式求得

x'(t)|ttk3Xk,k1,2, ,N1

kt

其中t表示采样间隔。

MATLAB中用diff函数来计算差分Xk1Xk。

连续时间信号的定积分可以由MATLAB的qud函数实现,调用格式为

quad('function_name',a,b)

其中,function_name为被积函数名,a、b为积分区间。

对于符号对象表示的连续时间信号,MATLAB提供了diff函数和quad函数分别用于求微分和积分。

3.离散时间信号的 MATLA表示

离散时间信号仅在一些离散时刻有定义。

在 MATLAB中离散时间信号需要

使用两个向量来表示,其中一个向量用于表示离散的时间点,另一个向量表示在这些时间点上的值。

例如对于如下时间信号

x(n){3,2,1,2,1,1,2,3}

采用MATLAB可以表示如下:

>>n=-3:

4;

>>x=[-32-121-123];

>>stem(n,x,'filled');

>>xlabel('n');

>>title('x(n)');

Stem函数用于绘制离散时间信号波形,为了与我们表示离散时间信号的习惯相同,在绘图时一般需要添加‘filled'选项,以绘制实心的杆状图形。

上述

n

图3离散时间信号例如

4.离散时间信号的时域运算

离散时间信号的相加相乘是将两个信号对应的时间点上的值相加或相乘,可以直接使用算术运算的运算符“+〞和“*〞来计算。

离散时间信号的位移,那么可看作是将表示时间的向量平移,而表示对应时间点上的值的向量不变。

离散时间信号的反转,那么可以看作是将表示时间的向量和表示对应时间点上的值的向量以零点为基准点,一纵轴为对称轴反折,向量的反折可以利用MATLAB的fliplr函数实现。

三、实验内容

(1)、利用MATLAB^制以下连续时间信号的波形:

05t

、x(t)(1e.)u(t)

>>t=0:

0.001:

10;

>>x=(1-exp(-0.5*t)).*(heaviside(t));

>>plot(t,x)

2、x(t)cos(t)[u(t)u(t2)]

>>t=0:

0.001:

10;

>>x=cos(pi*t).*(heaviside(t)-heaviside(t-2));

>>plot(t,x)

|t|x(t)cos(2t)[u(t2)u(t2)]

3、 2

>>t=0:

0.001:

10;

>>x=abs(t)/2.*cos(pi*t).*(heaviside(t+2)-heaviside(t-2));

>>plot(t,x)

4、x(t)e

10

3)]

2sin(2t)[u(t) u(t

>>t=0:

0.001:

10;

>>x=exp(-t).*sin(2*pi*t).*(heaviside(t)-heaviside(t-3));

>>plot(t,x)

(2)、利用MATLAB^制以下离散时间信号的波形:

1、x(n)u(n3)

>>x=heaviside(n-3);

2、x(n)(1/2)nu(n)

>>x=(-1/2).An.*heaviside(n);

>>stem(n,x,'filled')

0'.5*

°%

j-

5

3、x(n) n[u(n)u(n5)]

>>x=n.*(heaviside(n)-heaviside(t-5));

>>stem(n,x,'filled')

>>x=sin(n*pi/2).*heaviside(n);

>>stem(n,x,'filled')

0.4-

0.2“

0O

-0.2-

-0.4-

-0.6'

10

(3)、利用MATLA生成并绘制连续周期矩形波信号,要求周期

为2,峰值为3,显示三个周期波形

>>t=0:

0.001:

6;

>>x=square(t*pi).*3;

11/85

[、X3(t) Xi(t)X2(t)

>>t=0:

0.001:

10;

>>x仁(-t+4).*(heaviside(t)-heaviside(t-4));

>>x2=sin(2*pi*t);

>>x3=x1+x2;

plot(t,x3)

2、X4(t) X1(t)X2(t)

>>t=0:

0.001:

10;

>>x仁(-t+4).*(heaviside(t)-heaviside(t-4));

>>x2=sin(2*pi*t);

>>x4=x1.*x2;

plot(t,x4)

27/85

3、X5(t)Xi(t)N(t)

symst;

x1=(4-t)*(heaviside(t)-heaviside(t-4));x1=(4+t)*(heaviside(-t)-heaviside(t+4));x5=x1+x2;

ezplot(t,x5);

5)、离散时间信号x(n)波形(X(n)[°,1,2,3,3,3,3]),用MATLAB^出x(n)、x(-n)、x(n+2)和x(n-2)的波形。

n=-3:

4;x=[0,1,2,3,3,3,3,0];n仁-fliplr(n);x1=fliplr(x);

n2=n+2;

n3=n-2;

subplot(221);stem(n,x,'filled');

subplot(222);stem(n1,x1,'filled');subplot(223);

stem(n2,x,'filled');subplot(224);

stem(n3,x,'filled');

(6)、有MATLABS程绘制以下信号的时域波形,观察信号是否为周期信号?

假设是周期信号,周期是多少?

假设不是周期信号,请说明原因。

x(t)1cos(t)2cos(t)cos(2t)

1、 4 3 2 4

symst;

x=1+cos(pi/4*t-pi/3)+2*cos(pi/2*t-pi/4)+cos(2*pi*t);

ezplot(x,[-20,20]);

5

2、x(t)sin(t)2sin(t)

>>x=sin(t)+2*sin(pi*t);

>>plot(t,x)

不是周期信号

2nx(n)23sin(——

3、 3

n=1:

20;

x=2+3*sin(2*n/3*pi-pi/8);

stem(n,x,'filled');

x(n)cos(-n)sin(")cos(-n)4、 6 3 2

n=1:

20;

x=cos(n*pi/6)+sin(n*pi/3)+cos(n*pi/2);

stem(n,x,'filled');

10 15 20

25匚 一

-20 -15 -10 -5 D

是周期信号T=12s

实验二LTI系统的时域分析

一、 实验目的

1、 掌握利用MATLAB寸系统进行时域分析的方法。

2、 掌握连续时间系统零状态响应、冲激响应和阶跃响应的求解方法。

3、 掌握求解离散时间系统响应、单位抽样响应的方法。

4、 加深对卷积积分和卷积和的理解。

掌握利用计算机进行卷积积分和卷积

和计算的方法。

二、 实验原理与方法

1、连续时间系统时域分析的 MATLAB实现

(1)、连续时间系统的MATLAB示

LTI连续系统通常可以由系统微分方程描述,设LTI因果系统的微分方程一

般式为:

%/袖©十务』E •十时‘®十瓦*©十乂仝心②十」汁如©十&您

那么在MATLAB!

,可以建立系统模型如下:

b=[bM,bm-bo];

a=[aN,an-ia o];

sys=tf(b,a);

其中,tf是用于创立系统模型的函数,向量a与b的元素是以微分方程求导的降幕次序来排列的,如果有缺项,应用 0补齐。

(2)、连续时间系统的零状态响应

零状态响应是指系统的初始状态为零,仅由输入信号引起的响应。

MATLAB!

供了一个用于求解零状态响应的函数lism,其调用格式如下:

lsim(sys,x,t) 绘出输入信号及响应的波形,x和t表示输入信号数值向量

和时间向量。

y=lsim(sys,x,t) 这种调用格式不绘出波形,而是返回响应的数值向量。

(3)、连续时间系统的冲激响应与阶跃响应。

MATLAB提供了函数impluse来求指定时间范围内,由模型sys描述的连续时间系统的单位冲激响应。

其调用格式如下:

impulse(sys)在默认的时间范围内绘出系统冲激响应的时域波形。

impulse(sys,T)绘出系统在0-T范围内冲激响应的时域波形。

impulse(sys,ts:

tp:

te)绘出系统在ts-tp范围内,以tp为时间间隔取样的冲激响应的时域波形。

[y,t]=impulse(…)该调用格式不绘出单位冲激响应波形,而是返回单位冲激响应的数值向量及其对应的时间向量。

函数step用于求解单位阶跃响应,函数step同样也有如下几种调用格式:

step(sys)

step(sys,T)

step(sys,ts:

tp:

te)

[y,t]=step(…)

2、离散时间系统时域分析的 MATLAB实现

(1)、离散时间系统的MATLA表示。

LTI离散系统通常可以由系统差分方程描述,设描述系统的差分方程为:

NM

aky(nk)bx(nr)

k0r0r

那么在MATLA里,可以用如下两个向量来表示这个系统:

b=[bo,bi ,bm|

a=[ao,ai ,an]

(2)、离散时间系统对任意输入的响应。

MATLA提供求LTI离散系统响应的专用函数fliter,该函数用于求取差分方程描述的离散时间系统在指定时间范围内对输入序列所产生的响应,其调用格式如下:

y=filter(b,a,x)

其中,x为输入序列,y为输出序列,x,y所对应的时间区间必须相同。

(3)、离散时间系统的单位抽样响应。

MATLAB!

供了函数impz来求指定时间范围内,由向量b和a描述的离散时间系统的单

位抽样响应。

其调用格式如下:

impz(b,a)在默认的时间范围内绘出系统抽样响应的时域波形。

impz(b,a,T)绘出系统在0-N范围内冲激响应的时域波形。

impz(b,a,ns:

ne)绘出系统在ns-ne范围的冲激响应的时域波形。

[y,n]= impz(…)该调用格式不绘出单位冲激响应波形,而是返回单位冲激

响应的数值向量及其对应的时间向量。

3、卷积和与卷积积分

(1)、离散时间序列的卷积和

卷积和是离散系统时域分析的根本方法之一, 离散时间序列X1(n)和X2(n)的

卷积和x(n)定义如下:

x(n)x〔(n)x2(n) x1(k)x2(nk)

MATLA提供了函数conv来求两个离散序列的卷积和。

其调用格式如下:

x=conv(x1,x2)

(2)、连续时间信号的卷积积分

卷积积分是连续系统时域分析的有效方法和工具之一,连续时间信号和的卷积积分定义如下:

x(0-

—"O3»

用户可根据书上内容自定义一个用于计算卷积积分的通用函数 sconv。

三、实验内容

1、描述模拟低通、高通、带通和带阻滤波器的微分方程如下,试采用MATLAB绘出各系统的单位冲激响应和单位阶跃响应波形。

>>a=[1sqrt

(2)1];

>>b=[1];

>>sys=tf(b,a);

>>impulse(sys)

Time(seconds)

(2)曲)+"曲)+溜"卫)

>>a=[1sqrt

(2)1];

>>b=[100];

>>sys=tf(b,a);

>>impulse(sys)

160123456789

Time(seconds)

(打rw+/©+^)=^(o

>>a=[111];

>>b=[10];

>>sys=tf(b,a);

>>impulse(sys)

<4)z(?

)+y©+xo=^)+^)

>>a=[111];

>>b=[101];

>>sys=tf(b,a);

>>impulse(sys)

2、某系统可以由微分方程描述

y(n)+y(n-1)+y(n-2)=x(n)

①请利用MATLAB^出该系统冲激响应和阶跃响应的时域波形;

②根据冲激响应的时域波形分析系统的稳定性;

③如果系统的输入为,求系统的零状态响应

>>a=[116];

>>b=[1];

>>sys=tf(b,a);

>>impulse(sys)

>>step(sys)

Time(seconds)

4

6

8

10

12

14

StepResponse

Time(seconds)

是稳定系统

>>t=0:

0.01:

10;

>>x=exp(_t);

>>lsim(sys,x,t)

LinearSimulationResults

Am

plit0.6ud

e

3、描述离散系统的差分方程如下,试采用 MATLAB^出各系统

的单位抽样响应,并根据单位抽样响应的时域波形分析系统的稳定性。

①y(n)+3y(n-1)+2y(n-2)=x(n)

>>a=[132];

>>b=[1];

>>impz(b,a)

不是稳定系统

5、采用MATLA计算如下两个序列的卷积,并绘出图形

xjn) [1,2,1,1]

X2(n) 1,(2n2)

>>x仁[1211];

>>x2=[11111];

>>x=conv(x1,x2)

1 3 4 5 5 4 2 1

1

0*

40

6、某LTI离散系统,其单位抽样响应h(n)二sin(0.5n),n>=0,系统的输入为x(n)=sin(0.2n) ,n>=0,计算当

n=0,1,2,…,40时系统的零状态响应y(n),绘出x(n),h(n)和

y(n)时域波形。

>>n=0:

40;

>>h=sin(0.5*n);

>>x=sin(0.2*n);>>y=conv(h,x);

>>subplot(311);>>stem(n,h,'filled');

>>subplot(312);>>stem(n,x,'filled');

>>subplot(313);>>stem(y,'filled');

程序运行结果如下:

29/85

-1

0

10

15

••

20

25

30

35

10

10

15

20

25

30

35

40

20

30

40

50

60

70

80

90

7、两个连续信号,是采用 MATLA求这两个信号的卷积

function [x,t]=sconv(x1,x2,t1,t2,dt)

x=conv(x1,x2);

x=x*dt;

t0=t1

(1)+t2

(1);

l=length(x1)+length(x2)-2;

t=t0:

dt:

(t0+l*dt);

end

>>dt=0.001;

>>t1=(-2):

dt:

2;

>>t2=(-1):

dt:

1;

>>x1=2.*(heaviside(t1+2)-heaviside(t1-2));

>>x2=heaviside(t2+1)-heaviside(t2-1);

>>subplot(221);

>>plot(t1,x1);

>>xlabel('t(s)');

>>title('x_1(t)');

>>subplot(222);

>>pIot(t2,x2);

>>xlabel('t(s)');

>>title('x_2(t)');

>>[x,t]=sconv(x1,x2,t1,t2,dt);

>>subplot(212);

>祁lot(t,x);

>>xlabel('t(s)');

>>title('x(t)=x_1(t)*x_2(t)

x1(t)

1

--

i ir p r

■ IF F P

x2(t)

1

2

4

3

2

1

-2

0t(s)

0t(s)

1

-2

0

-3

x(t)=x1(t)*x2

t(s)

实验三信号频域分析

一、 实验目的

①深入理解信号频谱的概念,掌握信号的频域分析方法。

②观察典型周期信号和非周期信号的频谱,掌握其频谱特性。

二、 实验原理与方法

1、连续周期信号的频谱分析

如果周期信号满足狄里赫利条件,就可以展开为傅里叶级数形式,即

(1)

(2)

1

—T0x(t)e

jkw0tdt

x(t)k qe咖

式中,To表示基波周期,Wo2/To为基波频率,T0(T表示任一个基波周期内的积分。

(1)和式

(2)定义为周期信号复指数形式的傅里叶级数,系数 Ck称为

x(t)的傅里叶系数。

周期信号的傅里叶级数还可以由三角函数的线性组合来表

示,即

x(t)ao akcoskwot bksinkwot

k1 k1 (3)

其中:

1 2 2

a t0x(t)dt,ak Tox(t)coskwtdt,bk t°x(t)sinkwotdt

To T0 T0 (

式(3)中同频率的正弦项和余弦项可以合并,从而得到三角函数形式的傅里叶级数,即

x(t) Ao Akcos(kWot k)

k1

其中:

(5)

31/85

(6)

A0a0,Ak

k ak

可见,任何满足狄里赫利条件的周期信号都可以表示成一组谐波关系的复指数函数或三角函数的叠加。

一般来

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2