MATLAB实验三 信号的表示.docx

上传人:b****7 文档编号:10304802 上传时间:2023-02-10 格式:DOCX 页数:12 大小:128.48KB
下载 相关 举报
MATLAB实验三 信号的表示.docx_第1页
第1页 / 共12页
MATLAB实验三 信号的表示.docx_第2页
第2页 / 共12页
MATLAB实验三 信号的表示.docx_第3页
第3页 / 共12页
MATLAB实验三 信号的表示.docx_第4页
第4页 / 共12页
MATLAB实验三 信号的表示.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

MATLAB实验三 信号的表示.docx

《MATLAB实验三 信号的表示.docx》由会员分享,可在线阅读,更多相关《MATLAB实验三 信号的表示.docx(12页珍藏版)》请在冰豆网上搜索。

MATLAB实验三 信号的表示.docx

MATLAB实验三信号的表示

课程名称:

Matlab语言

开设时间:

2016—2017学年第2学期

专业班级:

学生学号:

学生姓名:

实验名称:

实验三、信号的表示与运算实验成绩:

指导教师:

批改时间:

一、实验目的和要求

掌握连续与离散信号的常见处理方法

掌握数值方法计算连续信号的卷积的方法

二、实验原理

2.1MATLAB基础

(具体内容见相关指导书)

2.2信号在MATLAB中的表示

例1:

用MATLAB命令产生单边衰减指数信号

,并绘出时间范围在

的波形图。

解:

MATLAB程序如下,产生的图形如图1所示。

t=0:

0.01:

3;

ft=2*exp(-1.5*t);

plot(t,ft,'Linewidth',2);grid;axis([0,3,02.5])

xlabel('t(sec)');title('单边指数衰减信号');

图1例1程序产生的图形

例2:

用MATLAB命令产生正弦信号

,并绘出时间范围在

的波形图。

解:

MATLAB程序如下,产生的图形如图2所示。

t=0:

0.01:

3;

ft=2*sin(2*pi*t+pi/4);

plot(t,ft,'Linewidth',2);

axis([03-2.52.5]);grid

title('正弦信号');xlabel('t(秒)');

图2例2程序产生的正弦信号波形图

例3:

用MATLAB命令画出复指数信号

的实部、虚部、模及相角随时间变化的曲线,并观察其时域特性。

(时间范围:

解:

MATLAB程序如下,产生的图形如图3所示。

t=0:

0.01:

3;

ft=2*exp((-1.5+j*10)*t);

subplot(221);plot(t,real(ft),'Linewidth',2);

title('实部');axis([03-22]);grid;

subplot(222);plot(t,imag(ft),'Linewidth',2);

title('虚部');axis([03-22]);grid;

subplot(223);plot(t,abs(ft),'Linewidth',2);

title('模');axis([0,3,0,2]);grid;

subplot(224);plot(t,angle(ft)/pi*180,'Linewidth',2);

title('相角(度)');axis([03-200200]);grid;

图3例3程序产生的图形

例4:

用MATLAB命令构建一个能够产生单位阶跃信号

的函数,函数名为uCT.m,并绘出时间范围在

内的阶跃信号波形图。

解:

先定义函数如下:

functionf=uCT(t)

f=(t>=0);

绘制阶跃信号波形图的程序如下,图形如图4所示。

t=-1:

0.001:

5;ft=uCT(t);

plot(t,ft,'Linewidth',2);grid;axis([-15-0.51.5]);

title('单位阶跃信号');xlabel('t(sec)');

图4例4产生的单位阶跃信号波形图

例5:

用例4中构建的函数实现幅度为1、宽度为1的门函数

解:

MATLAB程序为:

t=-2:

0.001:

2;

ft=uCT(t+0.5)-uCT(t-0.5);

plot(t,ft,'Linewidth',2);grid;

axis([-1.51.5-0.51.5]);title('门函数');

图5例5程序产生的门函数

2.3信号在MATLAB中的运算

关于信号相加、相乘、平移、反转、尺度变换等运算的基本原理请参阅教材p.8-11。

例6:

已知

,试用MATLAB命令绘出

的波形图,其中

(时间范围:

解:

MATLAB程序如下,产生的图形如图6所示。

closeall

clearall

f=1;

t=0:

0.01:

3;

f1=sin(2*pi*f*t);

f2=sin(2*pi*8*f*t);

subplot(211);plot(t,f1,t,f1+f2,'Linewidth',2);grid;

legend('f_1','f_1+f_2');title('f_1(t)+f_2(t)');axis([03-22]);

subplot(212);plot(t,f1,t,f1.*f2,'Linewidth',2);grid;

legend('f_1','f_1*f_2');title('f_1(t)*f_2(t)');axis([03-22]);

图6例6产生的波形

例7:

已知信号

的波形如图7所示,试用MATLAB命令画出

的波形图。

图7信号

的波形

解:

先建立

函数:

functionf=funct1(t)

f=uCT(t+2)-uCT(t)+(-t+1).*(uCT(t)-uCT(t-1));

调用上述函数来绘制所求信号的波形,程序如下。

产生的图形如图8所示。

closeall

clearall

t=-2:

0.001:

4;

ft1=funct1(t-2);ft2=funct1(3*t);

ft3=funct1(-t);ft4=funct1(-3*t-2);

subplot(221);plot(t,ft1,'Linewidth',2);grid;

title('f(t-2)');axis([-24-0.52]);

subplot(222);plot(t,ft2,'Linewidth',2);grid

title('f(3t)');axis([-24-0.52]);

subplot(223);plot(t,ft3,'Linewidth',2);grid;

title('f(-t)');axis([-24-0.52]);

subplot(224);plot(t,ft4,'Linewidth',2);grid;

title('f(-3t-2)');axis([-24-0.52]);

图8例7产生的波形

三、实验要求:

1)用两种方法实现g4(t).

2)用两种方法实现单位序列δ(n-5)

3)

是一个6位离散序列,编程实现序列

,延迟信号

,周期延拓信号

,延迟信号的周期延拓

要求:

1、程序开头有注释语句说明程序作用,参数作用,2、每个语句后面有注释语句会说明句子的作用或者原理或者方法。

4、实验结果与分析

1)用两种方法实现g4(t).

方法一:

先定义函数如下:

functionf=uCT(t)

f=(t>=0);

t=-2:

0.001:

2;

ft=uCT(t+2)-uCT(t-2);

plot(t,ft,'Linewidth',2);grid;

axis([-31.5-0.53]);title('门函数');

方法二:

f=@(t)(heaviside(t+2)-heaviside(t-2));

>>ezplot(f,[-10,10])

2)用两种方法实现单位序列δ(n-5)

方法一:

>>k1=0;k2=10;k0=-5;k=k1:

k2;n=length(k);

>>f=zeros(1,n);

>>f(1,-k0-k1+1)=1

>>stem(k,f,'filled');

>>axis([k1,k2,0,1.5])

方法二:

function(x,n)=impseq(5,-1,6);

n=[-1:

6];x=[(n-5)==0];

 

3)

%编程实现序列x(n)、延迟信号x(n-2)、周期延拓x((n))_6、延迟信号的周期延拓信号x((n-2))_6

>>N=24;M=6;m=2;%对N、M、m赋值

>>n=0:

N-1;%对矩阵n赋值

>>x1=(0.5).^n;%生成指数序列

>>x2=[(n>=0)&n

>>x=x1.*x2;%截取操作形成新序列x(n)

>>xm=zeros(1,N);

>>fork=m+1:

m+M

xm(k)=x(k-m);%产生序列移位x(n-2)

end;

>>xc=x(mod(n,M)+1);%产生x(n)的周期延拓x((n))_6

>>xcm=x(mod(n-m,M)+1);%产生x(n-2)的周期延拓x((n-2))_6

>>subplot(4,1,1),stem(n,x,'.');ylabel('x(n)');%画出序列x(n)的图形,标注y轴“x(n)”

>>subplot(4,1,2),stem(n,xm,'.');ylabel('x(n-2)');%画出序列x(n-2)的图形,标注y轴“x(n-2)”

>>subplot(4,1,3),stem(n,xc,'.');ylabel('x((n))_6');%画出序列x((n))的图形,标注y轴“x((n))_6”

>>subplot(4,1,4),stem(n,xcm,'.');ylabel('x((n-2))_6');%画出序列x((n-2))的图形,标注y轴“x((n-2))_6”

 

5、心得体会

在本次实验中,我学会了常见信号的表示如正弦信号、单位脉冲序列、单位阶跃序列等和信号的基本运算如信号的相加与相乘、序列延迟与周期延拓运算。

除此之外,门函数可以通过单位阶跃函数相减得到,如宽度为4的门函数可以通过ε(t+2)-ε(t-2)得到。

信号可以进行移位运算,如δ(t-5)可以通过δ(t)右移5个单位。

复杂信号可以通过简单信号的基本运算得到,如加减乘除、移位等基本运算。

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

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1