北京理工大学信号和系统实验报告.doc
《北京理工大学信号和系统实验报告.doc》由会员分享,可在线阅读,更多相关《北京理工大学信号和系统实验报告.doc(53页珍藏版)》请在三一文库上搜索。
1、本科实验报告实验名称: 信号与系统实验 课程名称:数字信号处理实验时间:任课教师:范哲意实验地点:4-442实验教师:何冰松, 范哲意实验类型:原理验证综合设计自主创新学生姓名:学号/班级:组号:学院:信息与电子学院同组搭档:专业:信息工程成绩:实验一 信号的时域描述与运算一、实验目的 掌握信号的MATLAB表示及其可视化方法。掌握信号基本时域运算的MATLAB实现方法。利用MATLAB分析常用信号,加深对信号时域特性的理解。二、实验原理与方法1. 连续时间信号的MATLAB表示连续时间信号指的是在连续时间范围内有定义的信号,即除了若干个不连续点外,在任何时刻信号都有定义。在MATLAB中连
2、续时间信号可以用两种方法来表示,即向量表示法和符号对象表示法。从严格意义上来说,MATLAB并不能处理连续时间信号,在MATLAB中连续时间信号是用等时间间隔采样后的采样值来近似表示的,当采样间隔足够小时,这些采样值就可以很好地近似表示出连续时间信号,这种表示方法称为向量表示法。表示一个连续时间信号需要使用两个向量,其中一个向量用于表示信号的时间范围,另一个向量表示连续时间信号在该时间范围内的采样值。例如一个正弦信号可以表示如下: t=0:0.01:10; x=sin;利用plot命令可以绘制上述信号的时域波形,如图1所示。如果连续时间信号可以用表达式来描述,则还可以采用符号表达式來表示信号。
3、例如对于上述正弦信号,可以用符号对象表示如下: x=sin; ezplot;利用ezplot命令可以绘制上述信号的时域波形常用的信号产生函数函数名功能函数名功能heaviside单位阶跃函数rectpuls门函数sin正弦函数tripuls三角脉冲函数cos余弦函数square周期方波sincsinc函数sawtooth周期锯齿波或三角波exp指数函数2.连续时间信号的时域运算 对连续时间信号的运算包括两信号相加、相乘、微分、积分,以及位移、反转、尺度变换尺度伸缩等。1相加和相乘信号相加和相乘指两信号对应时刻的值相加和相乘,对于两个采用向量表示的可以直接使用算术运算的运算符+和*来计算,此时要
4、求表示两信号的向量时间范围和采样间隔相同。采用符号对象表示的两个信号,可以直接根据符号对象的运算规则运算。2微分和积分对于向量表示法表示的连续时间信号,可以通过数值计算的方法计算信号的微分和积分。这里微分使用差分来近似求取的,由时间向量和采样值向量表示的连续时间信号,其微分可以通过下式求得其中表示采样间隔。MATLAB中用diff函数来计算差分。连续时间信号的定积分可以由MATLAB的qud函数实现,调用格式为quad 其中,function_name为被积函数名,a、b为积分区间。对于符号对象表示的连续时间信号,MATLAB提供了diff函数和quad函数分别用于求微分和积分。3.离散时间信
5、号的MATLAB表示离散时间信号仅在一些离散时刻有定义。在MATLAB中离散时间信号需要使用两个向量来表示,其中一个向量用于表示离散的时间点,另一个向量表示在这些时间点上的值。例如对于如下时间信号采用MATLAB可以表示如下: n=-3:4; x=-3 2 -1 2 1 -1 2 3; stem; xlabel; titlex;Stem函数用于绘制离散时间信号波形,为了与我们表示离散时间信号的习惯相同,在绘图时一般需要添加filled选项,以绘制实心的杆状图形。上述命令绘制的信号时域波形如图3所示。4.离散时间信号的时域运算离散时间信号的相加相乘是将两个信号对应的时间点上的值相加或相乘,可以直
6、接使用算术运算的运算符+和*来计算。离散时间信号的位移,则可看作是将表示时间的向量平移,而表示对应时间点上的值的向量不变。离散时间信号的反转,则可以看作是将表示时间的向量和表示对应时间点上的值的向量以零点为基准点,一纵轴为对称轴反折,向量的反折可以利用MATLAB的fliplr函数实现。三、实验内容1、利用MATLAB绘制下列连续时间信号的波形:1、 t=0:0.001:10; x=1-exp.*heaviside; plot01234567891000.10.20.30.40.50.60.70.80.912、 t=0:0.001:10; x=cos.*heaviside-heaviside;
7、 plot012345678910-1-0.8-0.6-0.4-0.200.20.40.60.83、 t=0:0.001:10; x=abs/2.*cos.*heaviside-heaviside; plot012345678910-0.6-0.4-0.200.20.40.60.814、 t=0:0.001:10; x=exp.*sin.*heaviside-heaviside; plot012345678910-0.6-0.4-0.200.20.40.60.82、利用MATLAB绘制下列离散时间信号的波形:1、 x=heaviside;stem01234567891000.10.20.30.
8、40.50.60.70.80.92、 x=.n.*heaviside; stem3、 x=n.*heaviside-heaviside; stem01234567891000.511.522.533.544、 x=sin.*heaviside; stem012345678910-1-0.8-0.6-0.4-0.200.20.40.60.83、利用MATLAB生成并绘制连续周期矩形波信号,要求周期为2,峰值为3,显示三个周期波形。 t=0:0.001:6; x=square.*3; plot0123456-3-2-10123、已知信号,用MATLAB绘出下列信号的波形1、 t=0:0.001:1
9、0; x1=.*heaviside-heaviside; x2=sin;x3=x1+x2;plot012345678910-10123452、 t=0:0.001:10; x1=.*heaviside-heaviside; x2=sin; x4=x1.*x2;plot0123456789-4-3-2-101233、syms t;x1=*heaviside-heaviside;x1=*heaviside-heaviside;x5=x1+x2;ezplot;5、已知离散时间信号x波形,用MATLAB绘出x、x、x和x的波形。n=-3:4;x=0,1,2,3,3,3,3,0;n1=-fliplr;x
10、1=fliplr;n2=n+2;n3=n-2;subplot;stem;subplot;stem;subplot;stem;subplot;stem;6、有MATLAB编程绘制下列信号的时域波形,观察信号是否为周期信号?若是周期信号,周期是多少?若不是周期信号,请说明原因。1、syms t;x=1+cos+2*cos+cos;ezplot;-10-8-6-4-20246810-3-2-1012345是周期信号 T=8s2、 x=sin+2*sin; plot-20-15-10-505101520-3-2-10123不是周期信号3、n=1:20;x=2+3*sin;stem;是周期信号 T=3s
11、4、n=1:20;x=cos+sin+cos;stem; 是周期信号 T=12s实验二 LTI系统的时域分析一、实验目的1、掌握利用MATLAB对系统进行时域分析的方法。2、掌握连续时间系统零状态响应、冲激响应和阶跃响应的求解方法。3、掌握求解离散时间系统响应、单位抽样响应的方法。4、加深对卷积积分和卷积和的理解。掌握利用计算机进行卷积积分和卷积和计算的方法。 二、实验原理与方法1、连续时间系统时域分析的MATLAB实现1、连续时间系统的MATLAB表示 LTI连续系统通常可以由系统微分方程描述,设LTI因果系统的微分方程一般式为: 则在MATLAB里,可以建立系统模型如下: b=bM,bM-
12、b0;a=aN,aN-1.a0; sys=tf; 其中,tf是用于创建系统模型的函数,向量a与b的元素是以微分方程求导的降幂次序来排列的,如果有缺项,应用0补齐。、连续时间系统的零状态响应 零状态响应是指系统的初始状态为零,仅由输入信号引起的响应。MATLAB提供了一个用于求解零状态响应的函数lism,其调用格式如下:lsim绘出输入信号及响应的波形,x和t表示输入信号数值向量和时间向量。y= lsim这种调用格式不绘出波形,而是返回响应的数值向量。3、连续时间系统的冲激响应与阶跃响应。MATLAB提供了函数impluse来求指定时间范围内,由模型sys描述的连续时间系统的单位冲激响应。其调
13、用格式如下:impulse在默认的时间范围内绘出系统冲激响应的时域波形。impulse绘出系统在0-T范围内冲激响应的时域波形。impulse绘出系统在ts-tp范围内,以tp为时间间隔取样的冲激响应的时域波形。y,t= impulse该调用格式不绘出单位冲激响应波形,而是返回单位冲激响应的数值向量及其对应的时间向量。函数step用于求解单位阶跃响应,函数step同样也有如下几种调用格式:stepstepsys,Tstepsys,ts:tp:tey,t=step2、离散时间系统时域分析的MATLAB实现1、离散时间系统的MATLAB表示。 LTI离散系统通常可以由系统差分方程描述,设描述系统的
14、差分方程为: 则在MATLAB里,可以用如下两个向量来表示这个系统: b=b0,b1,bMa=a0,a1,aN2、离散时间系统对任意输入的响应。MATLAB提供求LTI离散系统响应的专用函数fliter,该函数用于求取差分方程描述的离散时间系统在指定时间范围内对输入序列所产生的响应,其调用格式如下:y=filterb,a,x其中,x为输入序列,y为输出序列,x,y所对应的时间区间必须相同。3、离散时间系统的单位抽样响应。MATLAB提供了函数impz来求指定时间范围内,由向量b和a描述的离散时间系统的单位抽样响应。其调用格式如下:impz在默认的时间范围内绘出系统抽样响应的时域波形。impz绘
15、出系统在0-N范围内冲激响应的时域波形。impz绘出系统在ns-ne范围的冲激响应的时域波形。y,n= impz该调用格式不绘出单位冲激响应波形,而是返回单位冲激响应的数值向量及其对应的时间向量。3、卷积和与卷积积分 1、离散时间序列的卷积和卷积和是离散系统时域分析的基本方法之一,离散时间序列和的卷积和定义如下:MATLAB提供了函数conv来求两个离散序列的卷积和。其调用格式如下:x=conv2、连续时间信号的卷积积分卷积积分是连续系统时域分析的有效方法和工具之一,连续时间信号和的卷积积分定义如下: 用户可根据书上内容自定义一个用于计算卷积积分的通用函数sconv。三、实验内容1、已知描述模
16、拟低通、高通、带通和带阻滤波器的微分方程如下,试采用MATLAB绘出各系统的单位冲激响应和单位阶跃响应波形。 a=1 sqrt 1; b=1; sys=tf; impulse012345678910-0.100.10.20.30.40.50.6Impulse ResponseTime Amplitude a=1 sqrt 1; b=1 0 0; sys=tf; impulse0123456789-1.6-1.4-1.2-1-0.8-0.6-0.4-0.200.2Time Amplitude a=1 1 1; b=1 0; sys=tf; impulse024681012-0.4-0.200.2
17、0.40.60.81Time Amplitude a=1 1 1; b=1 0 1; sys=tf; impulse024681012-1-0.8-0.6-0.4-0.200.20.4Time Amplitude2、已知某系统可以由微分方程描述y+y+y=x请利用MATLAB绘出该系统冲激响应和阶跃响应的时域波形;根据冲激响应的时域波形分析系统的稳定性;如果系统的输入为,求系统的零状态响应; a=1 1 6; b=1; sys=tf; impulse step02468101214-0.2-0.100.10.20.30.40.5Time Amplitude0246810121400.050.1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北京理工大学 信号 系统 实验 报告
