- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
离散系统的MATLAB的实现
离散系统的MATLAB实现
一、设计目的
通过该设计,理解系统的单位抽样响应,频率响应及零极点增益的概念及意义。
课程设计环境
计算机、MATLAB软件
设计内容及其主要MATLAB函数
如图所示的一个离散系统
该离散系统对应的输入输出查分方程为:
y(n)-0.4y(n-1)-0.5y(n-2)=0.2x(n)+0.1x(n-1)
求该系统的单位抽样响应,频率响应及零极点增益。
单位抽样响应
系统的单位抽样响应是当输入信号为输入信号为单位抽样信号时系统的输出响应。
MATLAB中有两个函数可以计算系统的单位抽样响应:filter函数和impz函数。
filter函数
filter函数是利用递归滤波器或非递归滤波器对数据进行滤波。因为一个离散系统可以看做一个滤波器。系统的输出就是输入经过滤波器滤波的结果。filter函数的格式为:
y=filter(b,a,x)
此函数是对由a和b组成的系统对输入进行滤波,如果输入为单位抽样信号,那么输出就是系统的单位抽样响应。
impz函数
impz函数的格式为:
impz(b,a)可直接给出系统的单位抽样响应。
频率响应
由向量a和b组成的系统的频率响应为
MATLAB中的freqz函数使用基于FFT的算法来计算由向量a和b组成的系统的频率响应。其一般用法为:
【h,f】=freqz(b,a,n,Fs)
其中向量a和b由离散系统决定,Fs为采样频率,在【0,】频率范围内选取n个频率点,并记录在f中。由于freqz函数是从用基2的FFT算法,n常取2的幂次方,这样可以提高运算速度。
零极点增益
利用MATLAB中roots的函数可求得系统的零、极点,从而得到系统的零极点增益表示。其一般用法为:
zr=roots(b)
zp=roots(a)
设计报告要求
按题目要求进行设计,写出设计报告,给出源程序。
分别利用filter函数和impz函数画出给定的离散系统的单
位抽样响应。
画出给定离散系统的频率响应。
画出系统的零、极点图。
设计总体方案
1.、离散系统单位抽样响应
(1)利用filter函数计算系统的单位抽样响应。其一般格式为:
y=filter(b,a,x)
然后利用plot函数可以画出给定的离散系统的单位抽样响应图。其一般格式为:
plot(x,y)
还可以对图形进行修饰,例如plot(x,y,’s’)
表1 线性、点型和颜色
标识符 颜色 标识符 线型和点型 y 黄 . 点 m 品红 o 圆圈 c 青 x x号 r 红 + +号 g 绿 - 实线 b 蓝 * 星号 w 白 : 虚线 k 黑 -. 点划线 -- 长划线
表2 其他修饰函数
图例 标注 标题 x轴 y轴 legend(‘文字’) text(x,y,‘文字’) title(‘文字’) xlabel(‘文字’) ylabel(‘文字’) (2)利用impz函数可直接画出系统的单位抽样响应,其一般格式为impz(b,a)
2、离散系统的频率响应
利用freqz函数计算由向量a和b组成的系统的频率响应,其一般格式为:
【h,f】=freqz(b,a,n,Fs)
再利用plot函数画出离散系统的幅频特性和相频特性图,其中h为y轴,f为x轴。
3、零、极点增益
利用roots函数可计算系统的零、极点。其一般格式为:
zr=roots(b)
zp=roots(a)
利用polar函数画出zr的幅频特性曲线和相频特性曲线。其中polar函数是极坐标绘图函数。在画图时需要用到打开图形保持hold on 和关闭图形保持hold off。再利用zplane函数得出相应离散体统的零极点增益图。与roots函数得出来的图相对照,看是否一致。zplane函数的一般格式为:
zplane(b,a)
设计参数
由图中给出的离散系统对应的输入差分方程:
y(n)-0.4y(n-1)-0.5y(n-2)=0.2x(n)+0.1x(n-1)
得出:b=[0.2,0.1];a=[1,-0.4,-0.5]
在用filter函数中x的选值只要有一个1就行,其他的数值必须为零。
在用freqz函数中,【h,f】=freqz(b,a,n,Fs)。Fs为采样频率,n的取值在【0,】频率范围内,并记录在f中。由于freqz函数是从用基2的FFT算法,n常取2的幂次方,这样可以提高运算速度。所以可取:Fs=20;n=2^3.
源程序和实验图
1用filter函数
a=[1,-0.4,-0.5];
b=[0.2,0.1];
x=[0,0,1,0,0];
y=filter(b,a,x)
y =
0 0 0.2000 0.1800 0.1720
p
原创力文档


文档评论(0)