DSP数字信号处理实验报告1.docx

上传人:b****5 文档编号:8027851 上传时间:2023-01-28 格式:DOCX 页数:25 大小:1.42MB
下载 相关 举报
DSP数字信号处理实验报告1.docx_第1页
第1页 / 共25页
DSP数字信号处理实验报告1.docx_第2页
第2页 / 共25页
DSP数字信号处理实验报告1.docx_第3页
第3页 / 共25页
DSP数字信号处理实验报告1.docx_第4页
第4页 / 共25页
DSP数字信号处理实验报告1.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

DSP数字信号处理实验报告1.docx

《DSP数字信号处理实验报告1.docx》由会员分享,可在线阅读,更多相关《DSP数字信号处理实验报告1.docx(25页珍藏版)》请在冰豆网上搜索。

DSP数字信号处理实验报告1.docx

DSP数字信号处理实验报告1

 

本科学生实验报告

 

学号*********姓名何胜金

学院物电学院专业、班级12电子

实验课程名称数字信号处理(实验)

教师及职称杨卫平

开课学期第三至第四学年下学期

填报时间2015年3月12日

 

云南师范大学教务处编印

实验序号

01

实验名称

基本信号的产生 

实验时间

2015年3月12

实验室

云南师范大学同析3栋数字信号处理实验室

一.实验预习

1.实验目的

学习使用MATLAB产生基本信号、绘制信号波形、实现信号的基本运算,为信号分析和系统设计奠定基础。

 。

2.实验原理、实验流程或装置示意图 

MATLAB提供了许多函数用于产生常用的基本信号:

如阶跃信号、脉冲信号、指数信号、正弦信号和周期方波等。

这些基本信号是信号处理的基础。

 

1. 连续信号的产生 

(1) 阶跃信号 

产生阶跃信号u(t)的MATLAB程序如下,运行结果如图1.1.1所示。

 t=-2:

0.02:

6; x=(t>=0); plot(t,x); 

axis([-2,6,0,1.2]); 补充:

 

axis一般用来设置axes的样式,包括坐标轴范围,可读比例等 axis([xmin xmax ymin ymax]) 

axis([xmin xmax ymin ymax zmin zmax cmin cmax]) 坐标轴设置 

(2) 指数信号 

产生随时间衰减的指数信号x(t)=2*e^(-t)的MATLAB程序如下,运

行结果如图1.1.2所示。

 t=0:

0.001:

5; x=2*exp(-1*t); plot(t,x);

(3) 正弦信号 

利用MATLAB提供的函数sin和cos可产生正弦和余弦信号。

产生一

个幅度为2,频率为4Hz,相位为pi\6的正弦信号的MATLAB程序如下,运行结果如图1.1.3所示。

 f0=4; 

w0=2*pi*f0; t=0:

0.001:

1; 

x=2*sin(w0*t+pi/6); plot(t,x); 

(4) 矩形脉冲信号 

函数rectpulse(t)可产生高度为1、宽度为1、关于t=0对称的矩形脉冲

信号。

 

函数rectpulse(t,w))可产生高度为1、宽度为w、关于t=0对称的矩

形脉冲信号。

 

产生高度为1、宽度为4、延时2s的矩形脉冲信号的MATLAB程序如

下,运行结果如图1.1.4所示。

 t=-2:

0.02:

6; 

x=rectpuls(t-2,4); plot(t,x); 

(5) 周期方波 

函数square(w0*t)产生基本频率为w0(周期T=2*PI\w0)的周期方波。

 函数square(w0*t,DUTY))产生基本频率为w0(周期T=2*PI\w0)、占空比DUTY=t\T*100的周期方波。

T为一个周期中信号为正的时间长度。

t=T\2,DUTY=50,square(w0*t,50)等同于square(w0*t)。

 

产生一个幅度为1,基频为2Hz,占空比为50%的周期方波的MATLAB程序如下,运行结果如图1.1.5所示。

 f0=2; 

t=0:

.0001:

2.5; w0=2*pi*f0; 

y=square(w0*t,50);%duty cycle=50% plot(t,y);axis([0,2.5,-1.5,1.5]);

(6) 抽样函数 

使用MATLAB提供的函数sin(x)可计算抽样信号想x(t)=sint/t,函数sin(x)的定义为sin(x)=sin(pi*x)\pi*x.产生x(t)=sint/t信号的MATLAB程序如下,运行结果如图1.1.6所示。

 t=-10:

1/500:

10; x=sinc(t/pi); plot(t,x); 

2. 离散信号的产生 

(1) 单位脉冲序列和单位阶跃序列 

函数ones(1,n)和zeros(1,n)可以生成单位脉冲序列和单位阶跃序列。

函数ones(1,n)产生1行n列的由1组成的矩阵;函数zeros(1,n) 产生1行n列的由0组成的矩阵。

 

产生单位脉冲序列&[k-3]的MATLAB程序如下,运行结果如图1.1.7所示。

 k=-4:

20; 

x=[zeros(1,7),1,zeros(1,17)]; stem(k,x)

产生单位阶跃序列u[k-3]的MATLAB程序如下,运行结果如图1.1.8所示。

 k=-4:

20; 

x=[zeros(1,7),ones(1,18)]; stem(k,x) 

(2) 指数序列 

产生离散序列x[k]=0.5(3\4)^k的MATLAB程序如下,运行结果如图1.1.9所示。

 

k=-5:

15; 

x=0.3*(1/2).^k; stem(k,x);

(3) 正弦序列 

产生正弦序列sin(pi*k/3+pi\5)的MATLAB程序如下,运行结果如图1.1.10所示。

 

k=-10:

10; omega=pi/3; 

x=0.5*sin(omega*k+pi/5); stem(k,x);

(4) 离散周期方波 

产生幅度为1、基频o=pi/4rad、占空比为50%的周期方波的MATLAB程序如下,运行结果如图1.1.11所示。

 omega=pi/4; k=-10:

10; 

x=square(omega*k,50); stem(k,x);

(5) 白噪声序列 

白噪声序列在信号处理中是常用的序列。

函数rand可产生在[0,1]区间均匀分布的白噪声序列,函数rand可产生均值为0,方差为1的高斯分布的白噪声序列。

 

N=20;k=0:

N-1; x=rand(1,N) stem(k,x); 

3. 离散序列的基本运算 

离散信号的基本运算主要包括:

信号的加、乘、位移、翻转、卷积、相关等。

3.实验设备及材料

一台带matlab软件的计算机。

⏹4.实验方法步骤及注意事项 实验方法步骤:

 

(1) 打开MATLAB软件 

(2) 根据题目要求编写程序 (3) 运行程序 (4) 分析实验结果 (5) 关闭计算机  注意事项:

 

(1)对于实验仪器要轻拿轻放,遵守实验的规则。

 

(2)程序运行前要检查程序是否正确。

二、实验内容

1.利用MATLAB产生下列连续信号并作图。

 

(1) x(t)=-2u(t-1),-1

 

t=-1:

0.1:

5; x=(-2)*(t>=1); plot(t,x);

(2) x(t)=e^(-0.1*t)*sin(2\3*t),设0

程序:

 

t=0:

0.1:

30; 

x=exp(-0.1.*t).*sin(2.*t/3); plot(t,x);

3) x(t)=cos(100*t)+cos(3000*t),设-0.1

程序:

 

t=-0.1:

0.001:

0.1; x1=cos(100*t); x2=cos(3000*t); y=x1+x2; plot(t,y) 

 

(4) ) x(t)=cos(0.1*pi*t)*cos(0.8*pi*t),设0

程序:

 

t=0:

0.1:

200; 

x=cos(0.1.*pi.*t).*cos(0.8.*pi.*t); plot(t,x); 

2.利用MATLAB产生下列离散序列并作图。

 

(1)x[k]=1,  (-5<=k<=5); x[k]=0,  其他; 设-15

 

k = -15:

15; 

x = ((k <= 5) & (k >=-5)); stem(k, x);

 

(2)x[k]=0.9^k[sin(0.25Лk)+cos(0.25Лk)],设-20

 

t=-20:

0.1:

20; 

x=(0.9.^t).*[sin(0.25.*pi.*t)+cos(0.25.*pi.*t)]; plot(t,x); 

4.已知序列:

x[k]=[1,2,0,-1,3,2;k=-2,-1,0,1,2,3],h[k]=[1,-1,1;k=0,1,2]. 

(1)计算离散序列的卷积和y[k]=x[k]*h[k],并绘出其波形。

 程序:

 

x=[1,2,0,-1,3,2]; h=[1,-1,1]; y=conv(x,h); 

stem([0:

length(y)-1],y);

(2)计算离散序列的互相关函数Rxy[k]=求和x[k]y[k+n], 并绘出其波形。

 程序:

 

x=[1,2,0,-1,3,2]; h=[1,-1,1]; y=xcorr(x,h); 

m=(length(y)-1)/2; stem([-m:

m],y);

5.数字信号处理的应用之一是从含有加性噪声的信号中去除噪声。

现有被噪声污染的信号x[k]=s[k]+d[k]式中:

s[k]=cos(0.08*pi*k)为原始信号;d[k]为均有分布的白噪声。

 

(1) 分别产生50点的序列s[k]和白噪声序列d[k],将二者叠加生成x[k],并在同一张图上绘出x0[k],d[k]和x[k]的序列波形。

 

程序:

 k=0:

50; 

omega=pi*0.08; 

x=0.5*cos(omega*k); stem(k,x); 

程序:

 

N=50;k=0:

N-1; x=rand(1,N); stem(k,x);

 

程序:

 

N=50;k=0:

N-1; x2=rand(1,N); omega=pi*0.08; 

x1=0.5*cos(omega*k); y=x1+x2; 

stem(k,x1+x2);

2. 对实验现象、实验结果的分析及其结论 

熟悉使用了matlab的一些信号的产生,基本上调用matlab自身的函数就能产生数字信号处理所需的一些简单信号,对以后的matlab及信号处理深入学习打下基础,直观地看到了信号与系统理论通过作图实际的表现了出来,感性上认识了DSP:

 Digital Signal Processing数字信号处理具体实现。

 

当然了,这些信号表示了基本的matlab图形输出,为更加复杂的三维图形,动态作图或simulink等的学习使用打下基础。

教师评语及评分:

    

 

 

 

签名:

          年   月   日

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

当前位置:首页 > 总结汇报 > 学习总结

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

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