77范文网 - 专业文章范例文档资料分享平台

实验部分:matlab在数字信号处理中的应用(2)

来源:网络收集 时间:2018-12-21 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

4、 离散序列卷积:

MATLAB提供一个conv函数

功能:进行两个序列间的卷积运算。

调用格式:y=conv(x,h),用于求取两个有限长度序列x和h的卷积,y的长度等于x和h的长度之和减1。

注意:conv函数默认两个信号的时间序列从n=0开始的。 例:已知两个信号序列;

f1?0.8n (0

2、如果两个信号不是从n=0开始的,则采用[y , ny]=conv_new(x , nx , h , nh)函数。

其中x 是输入序列,nx是它的序列号,h是另一个序列,nh是它的序列号,y是卷积和,ny是它的序列号。

%conv_new.m实现任意位置序列卷积运算,返回值是卷积和的值y和时间向量ny。 function[y,ny]=conv_new(x,nx,h,nh) n1=nx(1)+nh(1);

n2=nx(length(x))+nh(length(h)); ny=[n1:n2]; y=conv(x,h);

例:x=[3,11,7,0,-1,4,2]; nx=[-3:3];

h=[2,3,0,-5,2,1,]; nh=[-1:4]; [y,ny]=conv_new(x,nx,h,nh);

subplot(3,1,1),stem(nx,x);

axis([min(nx),max(nx),1.1*min(x),1.1*max(x)]); subplot(3,1,2),stem(nh,h);

axis([min(nh),max(nh),1.1*min(h),1.1*max(h)]); subplot(3,1,3),stem(ny, y);

axis([min(ny),max(ny),1.1*min(y),1.1*max(y)]);

实验三:离散系统的冲激响应和阶跃响应

1、 impz():

功能:求解数字系统的冲激响应。

调用格式:[h,t]=impz(b,a);求解数字系统的冲激响应h,取样点数为缺省值。

[h,t]=impz(b,a,n);求解数字系统的冲激响应h,取样点数为n值。 impz(b,a);在当前窗口用stem(t,h )函数出图。

2、 dstep():

功能:求解数字系统的阶跃响应。

调用格式:[h,t]=dstep(b,a);求解数字系统的阶跃响应h,取样点数为缺省值。

[h,t]=dstep(b,a,n);求解数字系统的阶跃响应h,取样点数为n值。 dstep(b,a);在当前窗口用stairs(t,h)函数出图。

3、filter子函数

功能:对数字系统的输入信号进行滤波处理。因为一个离散系统可以看作是一个滤波器,系统的输出就是输入经过滤波器滤波的结果。

调用格式:y=filtet(b , a, x),对于由矢量b, a决定的数字系统(b和a分别表示系统函数H(z)对应的分子项和分母项系数构成的数组,而且分母系数要归一化处理。)当输入信号为x时,对x中的数据进行滤波,结果存于y中,长度取max(na , nb).

[y , zf]=filter(b , a, x);除得到结果矢量y外,还得到x 的最终状态矢量zf。 y=filter(b , a, x, zi);可在zi中指定x的初始状态。

4、filtic子函数

功能:为filter子函数选择初始条件。

调用格式:zi=filtic(b ,a ,y ,x);求给定输入x和y时的初始状态。

zi=filtic(b , a, y);求x=0,给定输入y时的初始状态。

其中,x和y分别是表示过去的输入和输出。

例:已知一个因果系统的差分方程为 6y(n)+2y(n-2)=x(n)+3x(n-1)+3x(n-2)+x(n-3)满足初始条件y(-1)=0,x(-1)=0.求系统的单位冲激响应和阶跃响应。

将上述方程对y(n)项系数进行归一化,得到其系统函数分子和分母系数 a0=1, a1=0, a2=1/3, a3=0

b0=1/6, b1=1/2, b2=1/2, b3=1/6

用impz()函数的MATLAB程序(取N=32点作图) a=[1,0,1/3, 0]; b=[1/6, 1/2, 1/2, 1/6]; N=32; n=0:N-1;

hn=impz(b,a,n); gn=dstep(b,a,n);

subplot(1,2,1),stem(n,hn,’filled’); title(‘系统的单位阶跃响应’); ylabel(‘h(n)’);xlabel(‘n’);

axis([0,N-1,-1.1*min(hn),1.1*max(hn)]); subplot(1,2,2), stem(n,gn,’k’); title(‘系统的单位阶跃响应’);

ylabel(‘g(n)’);xlabel(‘n’);

axis([0,N-1,-1.1*min(gn),1.1*max(gn)]);

用filter()函数的MATLAB程序(取N=32点作图) a=[1,0,1/3, 0]; b=[1/6, 1/2, 1/2, 1/6]; xi=filtic(b,a,0,0); N=32; n=0:N-1;

x1=[n==0]; %单位冲激信号 hn=filter(b,a,x1,xi);

subplot(1,2,1),stem(n,hn,’filled’); title(‘系统的单位阶跃响应’); ylabel(‘h(n)’);xlabel(‘n’);

axis([0,N-1,-1.1*min(hn),1.1*max(hn)]);

x2=[n>=0]; %单位阶跃信号 gn=filter(b,a,x2,xi);

subplot(1,2,2), stem(n,gn,’k’); title(‘系统的单位阶跃响应’); ylabel(‘g(n)’);xlabel(‘n’);

axis([0,N-1,-1.1*min(gn),1.1*max(gn)]);

注:1、hold() 控制当前图形是否刷新的双向切换开关。hold on3、

使当前轴及图形保持

而不被刷新,准备接受此后将绘制的新曲线。hold off使当前轴及图形不再具备刷新的性质。

pause() 暂停执行文件,等待用户按任意键继续,pause(n) 在继续执行之前,暂停n秒。

实验四: 离散LSI系统的时域响应

对于离散LSI系统的响应,MATLAB为我们提供了多种求解方法: (1) 用conv子函数进行卷积积分,求任意输入的系统零状态响应。 (2) 用dlsim子函数求任意输入的系统零状态响应。

(3) 用filter和filtic子函数求任意输入的系统完全响应。 1、 dlsim子函数

功能:求解离散系统的响应。

调用格式:y=dlsim(b , a , x),求输入信号为x时系统的响应。

其中,b和a分别表示系统函数H(z)中,由对应的分子项和分母项系数构成的数组,而且分母系数要归一化处理。 例:(书本P96页15题)已知一个用以下差分方程表示的线性移不变因果系统为: y(n)?2ry(n?1)cos??r2y(n?2)?x(n) 当激励x(n)?anu(n)时,求系统的响应。

2、 用filter和filtic子函数求LSI系统对任意输入的响应

Filter子函数

功能:对数字系统的输入信号进行滤波处理。

调用格式:y=filtet(b , a, x),对于由b和a决定的数字系统(b和a分别表示系统函数H(z)中,由对应的分子项和分母项系数构成的数组,而且分母系数要归一化处理。)当输入信号为x时,对x中的数据进行滤波,结果存于y中,长度取max(na , nb).

[y , zf]=filter(b , a, x);除得到结果矢量y外,还得到x 的最终状态矢量zf。 y=filter(b , a, x, zi);可在zi中指定x的初始状态。 Filtic子函数

功能:为filter子函数选择初始条件。

调用格式:zi=filtic(b ,a ,y ,x);求给定输入x和y时的初始状态。 zi=filtic(b , a, y);求x=0,给定输入y时的初始状态。 其中,x和y分别是表示过去的输入和输出。 例:已知一个因果系统的差分方程为:

6y(n)-2y(n-4)=x(n)-3x(n-2)+3x(n-4)-x(n-6)

满足初始条件y(-1)=0,x(-1)=0,求系统的单位冲激响应和单位阶跃响应,时间轴上N取32点作图。

例:已知一个IIR数字低通滤波器的系统函数为:

0.1321?0.3963z?1?0.3963z?2?0.1321z?3 H(z)=

1?0.34319z?1?0.60439z?2?0.20407z?3输入一个矩形信号序列 x=square(n/5) (-2

作业:书本p96页16题。

作业:1、已知离散线性时不变的系统函数,请分别用impz和dstep子函数,filter和filtic子函数两种方法求解系统的冲激响应和阶跃响应。

1?0.5z?1 (1) H(z)? ?1?21?z?z (2) H(z)?1?0.5z?1?0.5z?2?z?3?0.5z?4?z?5

2、一个LSI系统的系统函数表示式为:

0.18763?20.2412z4?11?0.2412z4?22?0.1876z3?32 H(z)? ?31?0.6020z1?12?0.4956z8?24?0.03592z44满足初始条件y(-1)=5,y(-2)=5,试用filtet和filtic子函数求此系统的输入序列x(n)

为下列信号时的零输入,零状态以及完全响应。 (1) x(n)=R5(n) (2) x(n)=cos

2?3?n?sinn 310

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库实验部分:matlab在数字信号处理中的应用(2)在线全文阅读。

实验部分:matlab在数字信号处理中的应用(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/380542.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: