东南大学数字信号处理实验_数字与信号处理实验1 离散时间信号分析
实验一 离散时间信号分析
一、实验目的
掌握两个序列的相加、相乘、移位、反褶、卷积等基本运算。
二、实验原理
1.序列的基本概念
离散时间信号在数学上可用时间序列来表示,其中代表序列的第n个数字,n代表时间的序列,n的取值范围为的整数,n取其它值没有意义。离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号进行等间隔采样,采样间隔为T,得到一个有序的数字序列就是离散时间信号,简称序列。
2.常用序列
常用序列有:单位脉冲序列(单位抽样)、单位阶跃序列、矩形序列、实指数序列、复指数序列、正弦型序列等。
3.序列的基本运算
序列的运算包括移位、反褶、和、积、标乘、累加、差分运算等。
4.序列的卷积运算
上式的运算关系称为卷积运算,式中代表两个序列卷积运算。两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。其计算的过程包括以下4个步骤。
(1)反褶:先将和的变量换成,变成和,再将以纵轴为对称轴反褶成。
(2)移位:将移位,得。当为正数时,右移n位;当n为负数时,左移位。
(3)相乘:将和的对应点值相乘。
(4)求和:将以上所有对应点的乘积累加起来,即得。
三、主要实验仪器及材料
微型计算机、Matlab6.5 教学版、TC 编程环境。
四、实验内容
(1)用Matlab 或C语言编制两个序列的相加、相乘、移位、反褶、卷积等的程序;
(2)画出画出两个序列运算以后的图形;
(3)对结果进行分析;
(4)完成实验报告。
五、实验结果
1.常用序列
(1) 单位采样序列
1)新建脚本文件impseq.m
function y = impseq(n)
y = (n == 0)
2)在命令窗口输入:
n = -5:5;
x = drawBS(n);
stem(n, x, 'fill'), xlabel('n'), grid on;
title('单位采样序列')
axis([-5 5 -0.1 1.1])3)运行之后得如下图
(2)单位阶跃序列
1)新建脚本文件stepseq.m
function y=uDT(n)
y=n>=0
2)在命令窗口输入
n=-4:4;
x=stepseq(n);
stem(n,x,'fill'),xlabel('n'),grid on;
title(‘单位阶跃序列’)
axis([-4 4 -0.1 1.1])
3)运行得下图
(3)矩形序列
1)新建脚本文件 recseq.m
function y=recseq(n)
y=n>=0
2)在命令窗口输入:
n=-6:6;
x=recseq(n)-recseq(n-3);
stem(n,x,'fill'),xlabel('n'),grid on;
title(‘矩阵序列’)
axis([-6 6 -0.1 1.1])
3)运行后得下图
(4)指数序列
1)在命令行窗口输入
n=-5:5;
a1=1.7;a2=-1.7;a3=0.2;a4=-0.2;
x1=a1.^n;x2=a2.^n;x3=a3.^n;x4=a4.^n;
subplot(221);
stem(n,x1,'fill'),grid on;
xlabel('n');title('x(n)=1.7^n')
subplot(222);
stem(n,x2,'fill'),grid on;
xlabel('n');title('x(n)=(-1.7)^n')
subplot(223);
stem(n,x3,'fill'),grid on ;
xlabel('n');title('x(n)=0.2^n')
subplot(224);
stem(n,x4,'fill'),grid on;
xlabel('n');title('x(n)=(-0.2)^n')
2)得如下图
(5)正弦序列
1)在命令窗口输入
n=-15:15;
x=sin(pi/5*n);
stem(n,x,'fill'),xlabel('n'),ylabel('x(n)'),grid on;
title('正弦序列')
axis([-10 10 -1.5 1.5])
2)运行后得如下图
2.序列间得基本运算
(1)单位采样与单位阶跃序列相加
1)在命令行窗口输入
n=-7:7;
x=impseq(n);
axis([-3 4 -0.5 1.5]);
x=stepseq(n)
axis([-8 8 -0.1 2.1]);
x=impseq(n)+stepseq(n);
stem(n,x,'fill'),xlabel('n'),grid on;
title('单位阶跃与单位采样序列求和')
2)运行后得下图
(2)相乘
1)新建seqmult.m文件
function [y, n] = seqmult(x1, n1, x2, n2)
n = min( min(n1), min(n2) ):max( max(n1), max(n2) );
y1 = zeros(1,length(n)); y2 = y1;
y1( find( ( n >= min(n1) )&( n <= max(n1) ) == 1 ) ) = x1;
y2( find( ( n >= min(n2) )&( n <= max(n2) ) == 1 ) ) = x2;
y = y1 .* y2;
2)在命令行窗口输入
n1=-1:4;
n2=-2:5;
x1=[1,2,0,-1,-2,0];
x2=[-1,1,-1,0.8,0,-1,3,1];
[y,n]=seqmult(x1,n1,x2,n2);
subplot(221);
stem(n1,x1,'.');grid;xlabel('n1');ylabel('y1')
subplot(222)
stem(n2,x2,'');grid;xlabel('n2');ylabel('y2')
subplot(212);stem(n,y,'.');grid
title('两序列相乘后的图形');
xlabel('n');ylabel('y');
3)得到如下图形
(3)卷积
1)新建convwt.m文件
function [y, ny] = convwt(x, xn, h, hn)
y = conv(x, h);
yn1 = xn(1) + hn(1);
yn2 = xn(end) + hn(end);
ny = [yn1 : yn2];
2)在命令行窗口输入
x=[1,2,3,-1,-2];xn=-1:3;
h=[2,2,1,-1,4,-2];hn=-3:2
[y,yn]=convwt(x,xn,h,hn)
stem(yn,y,'fill');xlabel('n');ylabel('y(n)');grid on;
title('单位阶跃与单位采样信号的卷积');
3)得如下图
(4)移位
1)在命令窗口输入
n = -2:3;
x= stepseq(n) - stepseq(n + 1)
m = -n;
m1 = m -1;
subplot(211);
stem(m,x,'fill'),xlabel('n');grid on
title('移位之前的图片')
axis([-5 5 -3 3])
subplot(212);
stem(m1,x,'fill'),xlabel('n');grid on
title('移位之后的图片');
axis([-5 5 -3 3])
2)得如下图
(5)反转
1)在命令行窗口输入
n = -3:3;
h= stepseq(n) - stepseq(n-2)
subplot(211);
stem(n,h,'fill'),xlabel('n');grid on
title('反转之前的图片')
axis([-4 4 -1 3])
m = -n;
subplot(212);
stem(m,h,'fill'),xlabel('m');grid on
title('反转之后的图片');
axis([-4 4 -1 3])
2)可得如下图
六、实验总结
通过本次实验我学会了使用Matlab绘制基本的单位脉冲序列(单位抽样)、单位阶跃序列、矩形序列、实指数序列、复指数序列、正弦型序列等图像,学会了序列的基本运算如序列的相加、相乘、移位、反转、卷积等基本运算。
东南大学数字信号处理实验_数字与信号处理实验1 离散时间信号分析相关推荐
- 实验一 离散时间信号分析
实验一 离散时间信号分析 班级 学号 姓名 日期 一.实验目的 掌握两个序列的相加.相乘.移位.反褶.卷积等基本运算. 二.实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列来表 ...
- 【数字信号处理】 第二章、时域中的离散时间信号
前言 学而时习之,不亦乐乎? --<论语·学而> Is it not pleasant to learn with a constant perseverance and applicat ...
- js 数字递增递减_数字推理满分技巧 !不是干货,请批我!
公众号:兼得公考 数字推理不是广东的特色考点,但广东的数字推理是比较有"特色"的,他的特色就是简单,特别是2019年的数字推理.但我们不能因为某一两年考得简单而简单地学,为了让大家 ...
- 数字下变频(DDC)_数字上变频(DUC)
文章目录 数字下变频(DDC) 数字上变频(DUC) FIR并行滤波 数字下变频(DDC) 有几点需要注意, 混频之后,抽取之前,需要设计抗混叠滤波器 考虑到硬件实现,滤波器的设计要合理(阶数.系数结 ...
- 计算机组成原理实验存储器部件实验,计算机组成原理实验_存储器部件教学实验...
实验题目存储器部件教学实验 一.实验目的: 1. 熟悉ROM芯片和RAM芯片在功能和使用方法等方面的相同和差异之处.学 习用编程器设备向EEPROM芯片内写入一批数据的过程和方法. 2. 理解并熟悉通 ...
- Java经典实验_猴子的经典实验(转载)
原文引自:http://www.ndrcms.edu.cn/bbs/dispbbs.asp?boardID=3&RootID=0&ID=13177&skin=1 -道德的起源- ...
- matlab语音信号处理实验_现代通信综合实验系统平台
现代通信综合实验系统平台 近30年来,随着我国电信行业的迅猛发展,该行业的发展水平已成为衡量一个国家实力的一大关键因子.行业的发展同时,为当代相关专业大学生创造了极大的就业市场,市场对通信类人才有着极 ...
- 数字逻辑对偶式_数字电子技术实验——组合逻辑电路的设计
实验目的: (1)掌握组合逻辑电路设计的一般步骤 (2)掌握用TTL基本门电路进行组合电路设计的方法 (3)学会如何查找线路的故障 实验仪器: (1)数字电路试验箱 (2)数字万用表 (3)集成块若干 ...
- 数字货币交易所_数字货币交易所开发运营的盈利模式
数字货币从不看好变成了一年2400亿美金的交易额,数字货币交易所也从 几家变成了500家,而且数量还在不断的增长.那到底数字货币交易所到底有什 么魔力,让众多资本趋之若鹜,数字货币交易所的盈利模式是什 ...
最新文章
- Python rstrip()方法 删除 string 字符串末尾的指定字符(默认为空格).
- CentOS7.X的系统管理、安全设置及系统优化思路
- javascript+HTMl5游戏下载,开发一个都能月薪上万!舅服你
- 数据增强,将数据增强后保存到本地
- linux mail命令查看邮件/mail控制台
- 计算机网络-思维导图(4)网络层
- javascript file cached in server side
- Map的两种遍历方法
- 【操作系统复习】操作系统的特征
- matlab自带的人脸分类器,基于MATLAB,运用PCA+SVM的特征脸方法人脸识别
- Rabin-Karp字符串查找算法学习:poj1200
- java程序算法实例_java编程算法经典案例
- 使用 node.js 进行服务器端 JavaScript 编程
- 计算机组装错题整理,数学排列组合部分错题精选.docx
- 图网络笔记-知识补充与node2vec代码注解
- Constructor vs Object
- OpenLayers学习入门篇
- 利用pandas处理二级office的Excel试题(一)
- 单片机内部FLASH的字节操作
- 软件测试周刊(第47期):要爱具体的人,不要爱抽象的人;要爱生活,不要爱生活的意义。
热门文章
- 2017.9.1 公路修建问题 思考记录
- 6416与aic23进行语言数据采集和处理的程序beta版
- 判断用户 小程序_【重要声明】小程序维护中,iphone用户手机暂时用不了小程序...
- telnet后为啥打开的时防火墙_以前用散煤取暖时,农民很大方,换上天然气后就“蔫了”,为啥?...
- MySQL子查询的使用
- java 90 训练营 二期下载_90天java进阶营二期 主流java技术与热门开源项目视频教程...
- mqtt调试助手_腾讯物联网开发平台入门操作,如何使用MQTT协议上传温度湿度数据...
- thymealf如何实现传单个变量给html_50个关于IPython的奇技淫巧
- object-c 混编 调用C,C++接口
- Mono for Android 优势与劣势