信号分析与处理实验报告基于MATLAB.docx
《信号分析与处理实验报告基于MATLAB.docx》由会员分享,可在线阅读,更多相关《信号分析与处理实验报告基于MATLAB.docx(26页珍藏版)》请在冰豆网上搜索。
![信号分析与处理实验报告基于MATLAB.docx](https://file1.bdocx.com/fileroot1/2022-10/24/333ec6c6-adc2-4b4a-b524-17e5589b0a3a/333ec6c6-adc2-4b4a-b524-17e5589b0a3a1.gif)
信号分析与处理实验报告基于MATLAB
武汉工程大学
电气信息学院
专业班级
14通信3班
实验时间
12-16周周二上午
学生学号
1404200529
实验地点
4B315
学生姓名
赵晶
指导教师
许楠
实验项目
信号分析与处理实验(基于MATLAB)
实验类别
基础实验
实验学时
10学时
实验目的及要求
一、掌握连续信号的MATLAB表示方法及用MATLAB描绘二维图像
二、掌握用MATLAB对连续信号进行基本运算和时域变换的方法;
三、掌握两个连续时间信号卷积的计算方法和MATLAB编程技术。
四、掌握LTI系统的微分方程描述方法及其MATLAB编程的求解方法。
五、掌握周期函数的傅里叶级数计算方法和编程技术,掌握用MATLAB进行傅里叶正反变换的方法。
六、掌握系统频率响应特性的计算方法和特性曲线的绘制方法;掌握用MATLAB语言进行系统频响特性分析的方法
成绩评定表
类别
评分标准
分值
得分
合计
上机表现
按时出勤、遵守纪律
认真完成各项实验内容
30分
报告质量
程序代码规范、功能正确
填写内容完整、体现收获
70分
说明:
评阅教师:
日期:
年月日
实验内容
实验一:
连续时间信号的时域表示
一、实验内容
1、参考示例程序,绘制信号的图形,t取-1到4,步长值设为0.01。
2、产生一个指数为的复指数函数,绘出函数的实部、虚部、幅度和相位的波形,t取0到20,步长值设为0.1。
2、实验方法与步骤
1、绘制信号的图形
程序代码如下:
clearall
t=-1:
0.01:
4;%信号时间样本点向量
f=exp(-2*t).*cos(3*pi*t).*(heaviside(t)-heaviside(t-3));%函数描述
plot(t,f)%命令绘制信号的时域波形
title('信号1')%添加标题
xlabel('t')%添加横坐标说明
ylabel('f')%添加纵坐标说明
axis([-1,4,-0.7,1.1])%对横纵坐标进行限定
gridon
2、绘制指数为的复指数函数的实部、虚部、幅度和相位的波形
程序代码如下:
clearall
t=0:
0.1:
20;%信号时间样本点向量
z=(-0.1+(pi/4)*1i)*t;%函数描述
f=exp(z);%定义指数信号
fr=real(f);%描述函数实部
fi=imag(f);%描述函数虚部
fa=abs(f);%描述函数幅度
fg=angle(f);%描述函数相位
subplot(2,2,1)%将当前窗口分成2行2列个子窗口,并在第1个子窗口绘图
plot(t,fr)
title('实部')
xlabel('t')
axis([-0.5,20.5,-0.8,1.2])
gridon
subplot(2,2,2)%将当前窗口分成2行2列个子窗口,并在第2个子窗口绘图
plot(t,fi)
title('虚部')
xlabel('t')
axis([-0.5,20.5,-0.8,1])
gridon
subplot(2,2,3)%将当前窗口分成2行2列个子窗口,并在第3个子窗口绘图
plot(t,fa)
title('幅度')
xlabel('t')
axis([-0.5,20.5,0,1.1])
gridon
subplot(2,2,4)%将当前窗口分成2行2列个子窗口,并在第4个子窗口绘图
plot(t,fg)
title('相位')
xlabel('t')
axis([-0.5,20.5,-3.5,3.5])
gridon
三、实验数据与结果分析
1、
2、
四、思考:
1、为什么图二中t=0处曲线是间断的,如何使其成为连续的曲线?
因为axis函数对纵坐标的的上边界限定过小,使图形在边界处不能完整的显示。
实验内容
实验二:
连续时间信号的时域分析
一、实验内容
1、已知,,绘制x(t)和y(t)的图形,t取-3到5,步长值设为0.01。
2、根据符号函数和单位阶跃函数的关系,利用符号函数sign实现单位阶跃函数。
要求图形窗口的横坐标范围为-5~5,纵坐标范围为-1.5~1.5。
3、任意定义一个有限长时间信号y1(t),根据式2.1产生一个周期信号,绘制y1(t)和y(t)的图形。
2、实验方法与步骤
1、绘制x(t)和y(t)的图形
程序代码如下:
clear
t=-3:
0.01:
5;
x=exp(-0.5*t).*heaviside(t);%描述因果信号x(t)
y=exp(-0.5*1.5*(t+2)).*heaviside(1.5*(t+2));%描述因果信号x(1.5t+3)
subplot(2,1,1)
plot(t,x)
title('x(t)')
xlabel('t')
ylabel('x')
axis([-3,5,-0.1,1.1])
gridon
subplot(2,1,2)
plot(t,y)
title('y(t)')
xlabel('t')
ylabel('y')
axis([-3,5,-0.1,1.1])
gridon
2、利用符号函数sign实现单位阶跃函数
符号函数与单位阶跃函数的关系表达式为:
程序代码如下:
clear
t=-20:
0.01:
20;
x1=sign(t);
u=(x1+1)./2
plot(t,u)
title('u')
xlabel('t')
axis([-5,5,-0.5,1.5])
gridon
3、绘制y1(t)和周期信号y(t)的图形
利用for循环语句来实现周期信号
程序代码如下:
clear
t=-8:
0.01:
8;
y1=rectpuls(t)%定义有限长时间信号
y=0%赋初始值为0
fori=-6:
2:
6;%从-6开始以2的步长递增至6结束
y=y+rectpuls(t+i,1)%循环叠加
end%结束循环
subplot(2,1,1)
plot(t,y1)%绘制有限长时间信号y1(t)的时域波形
title('y1(t)')
xlabel('t')
axis([-2,2,-0.2,1.2])
gridon
subplot(2,1,2)
plot(t,y)%绘制周期信号y(t)的时域波形
title('y(t)')
xlabel('t')
axis([-7,7,-1,2])
gridon
三、实验数据与结果分析
1.
2.
3.
四、思考:
1、代数运算符号*和.*的区别是?
*是矩阵相乘,是矩阵A行元素与B的列元素相乘的和
.*是数组相乘,表示数组A和数组B中的对应元素相乘
实验内容
实验三连续时间信号的卷积
一、实验内容
1、已知两连续时间信号如下图所示,绘制信号f1(t)、f2(t)及卷积结果f(t)的波形;设时间变化步长dt分别取为0.5、0.1、0.01,当dt取多少时,程序的计算结果就是连续时间卷积的较好近似?
2、、计算信号和的卷积f(t),f1(t)、f2(t)的时间范围取为0~10,步长值取为0.1。
绘制三个信号的波形。
二、实验方法与步骤
1、绘制信号f1(t)、f2(t)及卷积结果f(t)的波形,当dt取0.01时程序的计算结果就是连续时间卷积的较好近似
程序代码如下:
clearall
closeall
clc
dt=0.01
t1=0:
dt:
2;
t2=-1:
dt:
1;
f1=0.5*t1;
f2=0.5*(t2+1);
y=dt*conv(f1,f2);%计算卷积
t0=t1
(1)+t2
(1);%计算卷积结果的非零样值的起点位置
t3=length(y);%计算卷积结果的非零样值的宽度
ty=t0:
dt:
(t0+(t3-1)*dt);%确定卷积结果的非零样值的时间向量
subplot(3,1,1)
plot(t1,f1)%绘制信号f1(t)的时域波形
title('f1')
xlabel('t1')
axis([-1.5,3,-0.2,1.1])
gridon
subplot(3,1,2)
plot(t2,f2)%绘制信号f2(t)的时域波形
title('f2')
xlabel('t2')
axis([-1.5,3,-0.2,1.1])
gridon
subplot(3,1,3)
plot(ty,y)%绘制两信号卷积结果y(t)的时域波形
title('y')
xlabel('ty')
axis([-1.5,3.2,-0.2,0.7])
gridon
2、计算信号和的卷积f(t)
程序代码如下:
clearall
closeall
clc
dt=0.1
t1=0:
dt:
10;
t2=0:
dt:
10;
f1=exp(-1*t1).*heaviside(t1);
f2=sin(t2).*heaviside(t2);
y=dt*conv(f1,f2);%计算卷积
t0=t1
(1)+t2
(1);%计算卷积结果的非零样值的起点位置
t3=length(y);%计算卷积结果的非零样值的宽度
ty=t0:
dt:
(t0+(t3-1)*dt);%确定卷积结果的非零样值的时间向量
subplot(3,1,1)
plot(t1,f1)%绘制信号f1(t)的时域波形
title('f1')
xlabel('t1')
axis([-0.2,10.2,-0.2,1])
gridon
subplot(3,1,2)
plot(t2,f2)%绘制信号f2(t)的时域波形
title('f2')
xlabel('t2')
axis([-0.2,10.2,-1.2,1.2])
gridon
subplot(3,1,3)
plot(ty,y)%绘制两信号卷积结果y(t)的时域波形
title('y')
xlabel('ty')
axis([-0.2,20.2,-1.2,1.2])
gridon
3、实验数据与结果分析
1.
2.
实验内容
实验四连续时间系统的时域分析
1、实验内容
已知描述某连续系统的微分方程为:
1、求出该系统在0~30秒范围内,以时间间隔0.1秒取样的单位冲激响应和单位阶跃响应的数值解,并绘制时域波形;
2、计算并绘制该系统在输入信号为时的零状态响应。
二、实验方法与步骤
1、绘制该系统的单位冲激响应和单位阶跃响应的时域波形
程序代码如下:
clearall
closeall
clc
t=0:
0.1:
30;
a=[4,1,6];
b=[0,0,1];%描述系统的对应向量
subplot(2,1,1)
impulse(b,a);%绘出向量a和b定义的连续系统的单位冲激响应的时域波形
title('单位冲激响应')
xlabel('t')
ylabel('y')
axis([0,30,-0.15,0.2])
gridon
s