您好,欢迎来到飒榕旅游知识分享网。
搜索
您的当前位置:首页实验1 离散时间系统的时域特性分析

实验1 离散时间系统的时域特性分析

来源:飒榕旅游知识分享网


实验1 离散时间系统的时域特性分析

1.1 实验目的

线性时不变(Linear Time Invariant,LTI)离散时间系统在时域中可以通过常系数线性差分方程来描述,冲激响应序列可以刻画其时域特性。本实验通过使用MATLAB函数研究离散时间系统的时域特性,以加深对离散时间系统的差分方程、冲激响应喝系统的线性和时不变特性的理解。

1.2 基本原理

一个离散时间系统是将输入序列变换成输出序列的一种运算。若以T[•]表示这种运算,则一个离散时间系统可由图1-1来表示,即

x(n)T[•]y(n) (1-1)

图1-1 离散时间系统

离散时间系统中最重要的。最常用的是“线性是不变系统”。

1. 线性系统

满足叠加原理的系统称为线性系统,即若某一输入是由N个信号的加权和组成的,则输出就是系统对这几个信号中每一个输入的响应的加权和。

第 1 页 共 17 页

如果系统在序列x1(n)和x2(n)输入时的输出分别为y1(n)和y2(n),即

y1(n)T[x1(n)],,y2(n)T[x2(n)]

那么当且仅当式(1-2)和(1-3)成立时,该系统是线性的。

T[x1(n)x2(n)]T[x1(n)]T[x2(n)] (1-2)

T[ax1(n)]aT[x1(n)] (1-3)

式中:a为任意常数。上述第一个性质称为可加性,第二个性质称为齐次性或比例性。这两个性质合在一起就成为叠加原理,写成

T[a1x1(n)[a2x2(n)]a1T[x1(n)]a2T[x2(n)] (1-4)

式(1-4)对任意常数a1和a2都成立。

在证明一个系统是线性系统时,必须证明此系统同时满足可加性和比例性,而且信号以及任何比例常数都可以是复数。

2. 时不变系统

系统的运算关系T[•]在整个运算过程中不随时间(也不随序列的先后)而变化,这种系统称为时不变系统(或称移不变系统)。这个性质可用以下关系表示:若输入x(n)的输出为y(n),则将

第 2 页 共 17 页

输入序列移动任意位后,其输出序列除了跟着移位外,数值应保持不变,即

若T[x(n)]y(n),则T[x(nm)]y(nm) (m为任意整数)

满足以上关系的系统就称为时不变系统。

3. 常系数线性差分方程

线性时不变离散系统的输入、输出关系可用以下常系数线性差分方程描述:

y(n)=﹣

ay(nk)kk1N+

bx(nr)rr0M

(1-5)

当输入x(n)为单位冲激序列时,输出y(n)即为系统的单位冲激响应h(n)。当ak=0时,k=1,2,…,N时,h(n)是有限长度的,称系统为有限长单位冲激响应(Finite Impulse Response,FIR)系统;反之,则称系统为无限长单位冲激响应(Infinite Impulse Response,IIR)系统。

1.3 实验内容及要求

1. 阅读并输入1.5节中介绍的例题程序,理解每一条语句的含义。改变例题中的有关参数(如信号的频率、周期、幅度、显示时间的取值范围、采样点数等),观察对信号波形有何影响。

2. 参考1.5节中给出的例题程序,自己编写MATLAB程序,产生下列离散序列:

(1) x(n)u(n),5n5

第 3 页 共 17 页

(2) (3)

nx(n)3sin,0n204 x(n)e(0.1j1.6)n,0n16

(4)

x(n)sinn/4,0n20n/4

3. 考虑如下差分方程描述的两个离散时间系统:

系统1:y(n)=0.5x(n)+0.27x(n-1)+0.77x(n-2)

系统2:y(n)=0.45x(n)+0.5x(n-1)+0.45x(n-2)+0.53y(n-1)-0.46y(n-2)

20n200nx(n)cos()cos()256256,0n299 输入

(1) 编程求上述两个系统的输出,兵分别画出系统的输入与输出波形.

(2) 编程求上述两个系统的冲激响应序列,并画出波形。

(3) 若系统的初始状态为零,判断系统2是否为时不变的?是否为线性的?

1.4 实验报告要求

(1) 简述实验原理,画出程序框图,并列出实验程序清单,包括必要的程序说明。

(2) 记录调试运行情况及所遇问题的解决方法。

第 4 页 共 17 页

1.5 实验用MATLAB语言工具函数简介

1. 产生N个零元素矢量函数

x=zeros (1,N)

2. 计算系统的单位冲激响应h(n)的两种函数

(1) y=impz(b,a,N)

功能:计算系统的激励响应序列的前N个取样点。

(2) y=filter(b,a,x)

功能:系统对输入进行滤波,如果输入为单位冲激序列(n),则输出y即为系统的单位冲激响应h(n)。

上面两个函数中,输入参数:b,a为式(1-5)中线性差分方程的系数,即:

a[1,a1,a2,aN]b[b0,b1,b2,bM],,

输出参数:y在此为系统的单位冲激响应序列。

3. 序列的产生

下面介绍四种常用的典型序列。

第 5 页 共 17 页

(1) 单位冲激序列:

(n){1,n00,n0

单位冲激序列也叫单位脉冲序列或单位取样序列,如同1-2所示,其特点是:仅在n=0时取样为1,其他时刻取值为0。

例1.1 产生一个长度为N=100的单位冲激序列:

图1-2 单位冲激序列

N=100;

u=[1 zeros(1,N-1)];

Stem(0:N-1,u) %注意,MATLAB的下标是从1开始的,这点与C语言不同。

(2) 单位阶跃响应:

第 6 页 共 17 页

u(n){1,n00,n0

例1.2 产生一个长度为N=100的单位阶跃序列(见图1-3):

N=100;

s=[ones(1,N)];

stem(0:99,s);

axis([0 100 0 2]) (3) 正弦序列:x(n)sin(n)

图1-3 单位阶跃序列

第 7 页 共 17 页

例1.3 产生一个正弦序列(见图1-4)

图1-4 正弦序列

n=0:40;

f=0.1;

phase=0;

A=1.5;

arg=2*pi*f*n-phase;

x=A*cos(arg);

stem(n,x);

第 8 页 共 17 页

axis([0 40 -2 2]);

grid

(4) 复指数序列

x(n)ejn

例1.4 产生一个复指数序列(见图1-5)

图1-5 复指数序列

c= - (1/12)+(pi/6)*I;

k=2;

n=0:40;

第 9 页 共 17 页

x=k*exp(c*n);

subplot(2,1,1);

stem(n,real(x));

subplot(2,1,2);

stem(n,imag(x));

xlabel(‘时间序列n’);ylabel(‘信号幅度’);

title(‘虚部’);

4. 离散时间系统时域分析

(1) 线性和非线性系统

例1.5 假设系统为 y(n)0.4y(n1)0.75y(n2)2.2403x(n)2.4908x(n1)2.2403x(n2),输入三个不同

的序列x1(n),x2(n)和x(n)=ax1(n)+bx2(n),求y1(n),y2(n)及y(n),并判断此系统是否为线性系统。

MATLAB程序如下:

n=0:40;

a=2;

第 10 页 共 17 页

b=-3;

x1=cos(2*pi*0.1*n);

x2=cos(2*pi*0.4*n);

x=a*x1+b*x2;

num=[2.2403 2.4908 2.2403];

den=[1 -0.4 0.75];

y1=filter(num,den,x1); %计算出y1(n)

y2=filter(num,den,x2); %计算出y2(n)

y=filter(num,den,x); %计算出y(n)

yt=a*y1+b*y2; %y(n)=ay1(n)+ay2(n)

subplot(2,1,1);

stem(n,y);

ylabel(‘信号幅度’);

第 11 页 共 17 页

subplot(2,1,2);

stem(n,yt);

ylabel(‘信号幅度’);

执行结果如下图1-6所示。

图1-6 线性系统的判断

从图上可知,上下两个图完全一样,即y(n)=T[ax1(n)+bx2(n)]=aT[x1(n)]+bT[x2(n)],所以此系统是个线性系统。注意上式中的T是算子。

(2) 时不变系统和时变系统

例1.6 假设系统为:(DEN)

第 12 页 共 17 页

y(n)-0.4y(n-1)+0.75y(n-2)=2.2403x(n)+2.4908x(n-1)+2.2403x(n-2) (NUM),试判别此系统是否为时不变系统。

MATLAB程序如下:

n=0:40;

D=10;

a=3;

b=-2;

num=[2.2403 2.4908 2.2403];

den=[1 -0.4 0.75];

ic=[0 0]; %设置零初始条件

x=a*cos(2*pi*0.1*n)+b*cos(2*pi*0.4*n);

y=filter(num,den,x,ic);通过滤波器。

xd=[zeros(1,D) x];

yd=filter(num,den,xd,ic);

第 13 页 共 17 页

N=length(y);

d=y-yd(1+D:N+D);

subplot(3,1,1);

stem(n,y);

ylabel('信号幅度');

title('输出y[n]');

grid;

subplot(3,1,2);

stem(n,yd(1:length(y)));

ylabel('信号幅度');grid;

subplot(3,1,3);

stem(n,d);

xlabel('时间序列n');

第 14 页 共 17 页

ylabel('信号幅度');

title('差值信号');

grid; 执行结果如图1-7所示。

图1-7 时不变系统的判断

由图可知,y(n-D)=T[x(n-D)],故此系统为时不变系统。

(3) 线性时不变系统的冲激响应计算

例1.8 用MATLAB命令y=impz(num,den,N)计算因果线性时不变离散时间系统的冲激响应的前N个样本。系统仍采用前两个例子的系统。

MATLAB程序如下:

第 15 页 共 17 页

N=40;

num=[2.2403 2.4908 2.2403];

den=[1 -0.4 0.75];

y=impz(num,den,N);

stem(y);

xlabel(‘时间序列n’);

ylabel(‘信号幅度’);

title(‘冲激响应’);

grid;

执行结果如图1-8所示。

第 16 页 共 17 页

图1-8 线性时不变系统的冲激响应计算

第 17 页 共 17 页

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sarr.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务