- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字信号处理实验
徐俊
2016年8月
目 录
实验一
离散时间系统及系统响应
·······························2
实验二
离散傅立叶变换及其特性验证
······························8
实验三
时域采样与频域采样 ···································17
实验四
冲激响应不变法 IIR 数字滤波器设计 ··························24
实验一 离散时间系统及系统响应
一、实验目的
1、掌握求解离散时间系统脉冲响应和阶跃响应的方法;
2、掌握用线性卷积求解离散时间系统响应的基本方法。
二、实验原理与设计方法
1、用 impz 和 dstep 函数求解离散系统的单位脉冲响应和阶跃响应
【例 1-1】已知某因果系统的差分方程为
系统为零状态,求系统的脉冲响应和阶跃响应。
解:该系统是一个 2 阶系统,列出 bm 和 ak 系数为
a0 =1,a1=0.5, a2=0,
b0=1 ,b1=0, b2=2
MALAB 程序如下(取 16 点作图):
a=[1,0.5,0];
b=[1,0,2];
n=16;
hn=impz(b,a,n); %脉冲响应
gn=dstep(b,a,n); %阶跃响应
subplot(1,2,1),stem(hn,'k');
title(' 系统的单位脉冲响应 ');
ylabel('h(n)');xlabel('n');
axis([0,n,1.1*min(hn),1.1*max(hn)]);
subplot(1,2,2),stem(gn,'k');
title(' 系统的单位阶跃响应 ');
ylabel('g(n)');xlabel('n');
axis([0,n,1.1*min(gn),1.1*max(gn)]);
结果如下图所示:
2、用 conv 函数进行卷积计算求系统响应
【例 1-2】某离散时间系统的脉冲响应为
hb(n)= δ (n)+2.5 -1)+2δ(n.5 δ-(n2)+ δ (n-3)
激励信号为
设 A=444.128 ,α =50 , 。
试求该系统在输入信号激励下的响应。
解: MATLAB 程序如下:
n=1:50;
%定义序列的长度是
50
hb=zeros(1,50);
% 注意:
MA TLAB
中数组下标从
1 开始
hb(1)=1;hb(2)=2.5;hb(3)=2.5;hb(4)=1;
close all;
subplot(3,1,1);
stem(hb);title(' 系统 h[n]');
m=1:50;T=0.001; % 定义序列的长度和采样率
A=444.128;a=50*sqrt(2.0)*pi; %设置信号有关的参数
w0=50*sqrt(2.0)*pi;
x=A*exp(-a*m*T).*sin(w0*m*T);
subplot(3,1,2);stem(x);title(' 输入信号 x[n]');
y=conv(x,hb);
subplot(3,1,3);stem(y);title(' 输出信号 y[n]');
结果如下图所示:
3、用 filter 函数求系统响应
线性常系数差分方程是描述离散时间 LTI 系统的另一个时域模型,即系统的输入信号
x[n] 输出信号 y[n] 关系可以用下面的差分方程来表达
N M
dk y[n
k]
pk x[ n
k ]
k 0
k 0
LTI
为了求得系统响应信号的显式表达式( Explicit expression 在 MATLAB 中,是用差分方程的系数来描述一个离散时间离散时间系统的差分方程为
),必须对差分方程求解。
LTI 系统的。例如,一个
y[n]+y[n-1]-6y[n-2]=x[n]
MATLAB
则用两个系数向量
num = [1]
和
den = [1 1 -6] 来描述该系统, 其中
num 和
den
分别表示系统差分方程右边和左边的系数,按照差分运算的递减排列。
在用
num 和
den 定义了一个离散时间
LTI
系统之后,可以利用
MATLAB
来求解系统
响应。求解离散时间系统的响应的一个非常有用的
MATLAB
函数就是
filter() 。它可以用
来求解系统的在输入信号 x[n] 作用下的零状态响应,也可以求解系统在这个输入信号作用
下的完全响应。其用法描述如下:
y = filter(num, den, x) ,求系统在输入 x 作用下的零状态响应
y, x 与 y 的长度相同。
y = filter(num,
您可能关注的文档
- 工程水文学习题册简答.docx
- 工程项目监理常用台账记录文本表格.docx
- 巩固练习_高考总复习_表语从句与同位语从句.docx
- 市政道路雨季专项工程施工组织设计方案(精).docx
- 常用临床护理_技术操作规程完整.docx
- 平面连杆机构基础习题与答案.docx
- 年北京市中考试题及答案汇总.docx
- 广联达办公大厦工程施工组织设计方案.docx
- 应收账款管理存在的问题与对策.docx
- 度国家自然基金申请书模板.docx
- 2022年高考物理一轮复习配套习题:选修3-2 第十章 专题突破.pdf
- 2022年高考物理一轮复习配套习题:选修3-3 第1讲.pdf
- 2022年高考物理一轮复习配套习题:选修3-3 第2讲.pdf
- 2022年高考物理一轮复习配套习题:选修3-3 第3讲.pdf
- 2022年高考物理一轮复习配套习题:选修3-4 第1讲.pdf
- 2022年高考物理一轮复习配套习题:选修3-4 第2讲.pdf
- 2022年高考物理一轮复习配套习题:选修3-4 第3讲.pdf
- 2022年高考物理一轮复习配套习题:选修3-4 第4讲.pdf
- 2022年高考物理一轮复习配套习题:选修3-5 第六章 第1讲.pdf
- 近发展起来的新算法.ppt
文档评论(0)