- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2010基于MATLAB的数字信号实验指导书
实验一 基本信号产生及基本信号运算
一 实验目的
利用MATLAB产生基本信号、绘制信号波形;
实现信号的基本运算,特别掌握卷积和运算。
二 实验原理
1、基本信号的产生
离散信号在时域均可用序列来表示,图形则给人形象直观的印象,因此本实验利用MATLAB产生基本信号、绘制信号波形。
延迟单位脉冲序列
产生并绘制出该信号的MATLAB程序如下:
此程序产生起始位置为、终止位置为、脉冲位置为的延迟单位脉冲序列,并绘制出该信号的图形。
延迟单位阶跃序列
产生并绘制出该信号的MATLAB程序如下:
此程序产生起始位置为、终止位置为、阶跃位置为的延迟单位脉冲序列,并绘制出该信号的图形。
矩形序列
因此可以用延迟单位阶跃序列通过一些基本运算得到,也可以直接产生,直接产生并绘制出该信号的MATLAB程序如下:
实指数序列
产生并绘制出该信号的MATLAB程序如下:
正弦序列
下面的MATLAB程序产生起始位置为、终止位置为的正弦序列:
复指数序列
下面的MATLAB程序产生起始位置为、终止位置为的复指数序列:
2、信号的基本运算
从数学的角度,系统可以看成是通过一组运算把一个离散信号(输入)转化成另一个信号(输出)的算法,本实验的另一个目的是实现信号的基本运算。表1.1列出了基本信号运算的MATLAB实现。
表1.1 基本信号运算的MATLAB实现
运算 数学表达式 MATLAB实现 备注 移位 x(n-m) nz=nz+m;z=x; 翻褶 x(-n) nz=-fliplr(n);z=fliplr(x) 和 x(n)+y(n) x+y x与y的维数相同 乘积 x(n)*y(n) x*y 标乘 c*x(n) c*x 累加 ny=nx;y=cumsum(x) 差分 diff(x) 卷积和 conv(x,y)
实验内容
利用MATLAB产生并绘制下列信号:
(1)
(2)
(3)
(4)
2、 利用MATLAB函数conv计算有限长序列与线性卷积,其中。
四、实验报告要求
1、给出实验结果及相应程序;
2、用图解法求出第2题结果,画出图形并与计算机计算结果比较;
3、总结实验中遇到的难点及解决方法。
实验二 快速傅里叶变换
一 实验目的
1、掌握快速傅里叶正变换与反变换的原理及具体实现方法;
2、编程实现有限长序列的快速傅里叶正变换与反变换;
3、加深理解快速傅里叶变换在运算量上及运算精度的优势。
二 实验原理
DFT 是信号分析与处理中的一种重要变换。因直接计算DFT 的计算量与变换区间长度N的平方成正比,当N较大时,计算量太大直接用DFT 算法进行谱分析和信号的实时处理是不切实际的。快速傅里叶变换(简称FFT)是一种快速算法,本实验对应教材中阐述了基-2 按时间抽取FFT算法和基-2按频率抽选的FFT算法原理,该算法将DFT运算分解成M级蝶形运算。每一级运算都需要N/2次复数乘和N次复数加(每个蝶形需要两次复数加法)。所以,M级运算总共需要的复数乘次数为
MATLAB中提供了进行快速傅里叶变换的fft函数:
X=fft(x),计算M点的DFT,M是序列x的长度,即M=length(x),x是表示离散信号的向量,X是系数向量,X=fft(x,N),计算补零或截断的N点DFT,当x得长度M小于N是,对x补零使其长度为N,当x的长度M大于N时,对x截断使其长度为N。
x=ifft(X),计算M点的IDFT。M是序列X的长度。
X=ifft(X,N),计算补零或截断的N点IDFT。
为了提高fft和ifft得运算效率,应尽量是序列长度M=2r,或对序列补零使N=2r。
三 实验内容
1、 已知一长度为16的有限序列试利用MATLAB计算序列x(n)的16点和512点DFT。
2、计算长度为N=30的余弦序列的频谱。
3、已知x(n)={1,2,0,1},h(n)={2,2,1,1},试利用MATLAB实现由FFT计算有限长序列x(n)与h(n)的线性卷积,并与线性卷积直接计算的结果进行比较。
四 实验报告要求
1、给出实验结果及相应程序,要求在编制的程序中加上详细的注释,与DFT计算法比较,总结FFT算法在运算量上的优势。
2、总结实验中遇到的难点及解决方法。
实验三 双线性变换法设计IIR数字滤波器
一 实验目的
1、设计巴特沃
文档评论(0)