设计一离散系统的matlab实现。
一、 摘要:
matlab是一套用于科学计算的可视化高性能语言与软件环境。它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个界面友好的用户环境。它的信号处理工具箱包含了各种经典的和现代的数字信号处理技术,是一个非常优秀的算法研究与辅助设计的工具。
在设计数字滤波器时,通常采用matlab来进行辅助设计和**。
matlab是一种科学技术软件,专门以矩阵的形式处理数据。它在信号与系统中的应用主要包括符号运算和数值计算**分析。符号运算主要包括傅里叶正反变换、拉普拉斯正反变换和z正反变换等。
数值计算与**分析主要包括函数波形绘制、函数运算、信号的时域和频谱分析、系统的s域分析和零极点图绘制等内容。这里简要介绍了离散时间系统z域分析理论。利用matlab函数绘制了离散时间系统特性曲线、零极点图,并对系统稳定性进行判定。
同时利用matlab实现离散系统频域特性的分析。结果表明matlab是线性系统性能分析的有效工具。
二、设计题目:离散时间系统的matlab实现。
三、 设计目的。
通过该设计,理解系统的单位抽样响应,频率响应及零极点增益的概念及意义。
四、 设计内容及其主要matlab函数。
如图所示的一个离散系统
图1 离散系统的信号流图。
该系统对应的输入差分方程为:
y(n)-0.4y(n-1)-0.5y(n-2)=0.2x(n)+0.1x(n-1)
求该系统的单位抽样响应、频率响应及零极点增益。
1、 单位抽样响应:
系统的单位抽样响应是当输入为单位抽样信号时系统的输出响应。
matlab中有两个函数可以计算系统的单位抽样响应:filter函数和impz函数。
1) filter函数。
filter函数是利用递归滤波器或非递归滤波器对数据进行滤波。因为一个系统可以看做一个滤波器。系统的输出就是输入经过滤波器滤波的结果。filter函数的格式为:
y=filter(b,a,x)
此函数是对由a和b组成的系统对输入进行滤波,如果输入为单位抽样信号δ(n),那么输出就是系统的单位抽样响应。
用filter函数编写的原程序为:
a=[1,-0.4,-0.5];b=[0.2,0.1];
x=[1,zeros(1,100)];
y=filter(b,a,x);
其运行结果为:
单位脉冲响应。
2)impz函数。
impz函数的格式为。
impz(a,b)可以直接给出系统的单位抽样响应,其源程序为:
> b=[0.2,0.1];a=[1,-0.4,-0.5];
> impz(b,a)
其结果如下图所示:
2、频率响应h(e^jw)
matlab中的函数使用基于fft的计算法来计算由向量和组成的系统的频率响应,其一般用法为:[h,f]=freqz(b,a,n,fs)
其中向量a和b由离散系统决定,fs为采样频率,在(0,fs/2)频率范围内选取个频率点,并记录在中。由于函数是采用基2的fft算法,常数去2 的幂次方,这样可以提高运算速度。
其源程序为。
h,f]=freqz(b,a,64,2*pi);
其结果为;图2 离散系统的频率响应。
1、 零极点增益。
2、 利用ma
3、 tlab中roots函数可以求得系统的零极点,从而得到系统的零极点增益表示。其源程序为。
zr=roots(b)
zp=roots(a)
stem(y)
title('filter'),pause
impz(b,a)
title('impz'),pause
plot(f,abs(h))
title('频率响应'),pause
zplane(b,a)
title('零极点图')zr =
zp =
其结果为:零极点增益。
五、 设计总结及心的体会。
课程设计是一门将理论与实践相联系的课程,它让我们将平时从课本上学到的东西运用到实际中去。通过课程设计,可以让我们发现理论的学习与实践之间的差距与联系,也能让我们学有所用,学以致用。
通过此次matlab课程设计,我明白要完成一件作品不是一件简单的事情,这需要花很多精力和心思,当然在这期间也学到了更多matlab的知识。为了完成这次设计,我认真将matlab的知识进行了再一次细致的学习,在做的过程中也遇到了很多问题,但通过自己的学习和与同学的讨论都一一解决了。
通过此次课程设计也培养了我们综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是我们实际工作能力的的具体训练和考察过程,随着科学技术发展的日新月异,作为电子专业的大学生来说掌握matlab软件的应用时十分重要的。
MATLAB课程设计
1 求被控对象传递函数g s 的matlab描述。num 789 6312 11835 den 1 14 56 64 0 0 gs tf num,den transfer function 789 s 2 6312 s 11835 s 5 14 s 4 56 s 3 64 s 2 2 求被控对象脉冲...
MATLAB课程设计
课程设计。题目 matlab计算器。姓名 班级 学院 专业 完成时间。1总体设计。该计算器程序主要是matlab来制作,界面主要由四个静态文本框 21个运算按钮和两个动态文本框组成。实现的运算功能有四则运算 加 减 乘 除。而且添加了括号使人们使用时更加简单。这些计算功能主要调用了matlab的自定...
MATLAB课程设计
matlab课程设计。如图所示,为测量系统的示意图,它由两个能相互转动的连杆,角度编码器和滚轮等组成。o1为固定点,o2点为转动点,o3点为滚轮的中心,连杆的有效长度分别为l1和l2。任一位置时,连杆1相对于某基准位置的角度为 1,两连杆的相对角度为 2。其中对于 1,取垂直方向为基准线,在基准线左...