实验一 离散时间信号和系统

更新时间:2024-02-28 12:21:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验一 离散时间信号和系统

一.

实验目的:

掌握时域离散信号的产生及基本时域处理的Matlab实现方法;掌握离散信号卷积和相关的Matlab实现;线性时不变系统及性质验证;进一步理解和巩固理论知识,提高分析和解决实际问题的能力。 二.

实验原理:

1.时域离散信号的产生及时域处理

当模拟信号X(t)中变量t取整数的并代表时间的离散时刻,就形成了时域离散信号,即独立时间被量化了,但是幅度还是连续的,它是一个数字的序列,所以在MATLAB中可以用两个列向量x和n来表示一个有限长的序列,且可以对序列各种运算。 2.卷积与相关

任何序列可以表示为移位和倍率后的单位采样序列响应的加权和,卷积有很多灵活的作用,可以用来描述一个线性是不变系统的响应,而相关也是卷积的一个运用,两个序列的相关性可以通过计算它们的卷积得到结果。 3.线性时不变系统

当一个系统的某一输入是由N各信号的加权和组成,则输出就是系统对这几个信号中每一个的响应的同样加权和,那这个系统就是线性系统;当线性系统的输入和输出对x(n) y(n)不随时间移位n而变化,这个系统就是线性时不变系统,线性时不变系统在数字信号处理中起重大的作用,简化系统的分析。 三.实验内容:

1.用Matlab产生并画出(用stem函数)下列序列的样本:

1) x1(n)?m?0?(m?1)??(n?2m)??(n?2m?1)?100?n?25

function x1=sy11_1(n) n=0:25; x0=0; for m=0:10 x1=(m+1).*(impsep(2*m,0,25)-impsep(2*m+1,0,25)); x0=x0+x1; end 1

x1=x0; stem(n,x1); end

2) x2(n)?n2?u(n?5)?u(n?6)??10?(n)?20(0.5)n?u(n?4)?u(n?10)? 其中u(n)是阶跃信号。

function x=sy11_2(n) n=[-5:10]; x1=(n.^2).*(stepsep(-5,-5,10)-stepsep(6,-5,10)); x2=10*impsep(0,-5,10); x3=20.*(0.5.^n).*(stepsep(4,-5,10)-stepsep(10,-5,10)); x=x1+x2+x3; stem(n,x); end

2.已知序列:x3(n)?e(0.1?0.3?j)n?cos(2n?0.2?)?R(n)/10?10?n?10

其中R(n)均匀分布的随机序列。

1) 在四个子图中画出其幅度、相位、实部和虚部。

2

2) 求该序列的能量和功率。

function x=sy12(n) n=[-10:10]; x=exp((0.1-0.3*pi*j).*n)+cos(2*n+0.2*pi)+rand(1,21)/10; subplot(2,2,1);stem(n,real(x));title('实部'); subplot(2,2,2);stem(n,imag(x));title('虚部'); subplot(2,2,3);stem(n,abs(x));title('幅度'); subplot(2,2,4);stem(n,(180/pi).*angle(x));title('相位'); p=sum(abs(x).^2) w=p./21 end 运行结果: 功率p =48.2136 能量w =2.2959

3.卷积与相关

已知序列x(n)?[3.240?1.5?0.32567.15.6]经过系统h(n)后得到输出y(n)。系统函数为:

0?n?9

h(n)?[?2?1012]-1?n?3

1) 求输出y(n)及y(n)的定义范围;

3

2) 求x(n)和y(n)的互相关。

function y=sy131(n) x=[3.2 4 0 -1.5 -0.3 2 5 6 7.1 5.6]; nx=[0:9]; h=[-2 -1 0 1 2]; nh=[-1:3]; [y,ny]=conv_m(x,nx,h,nh) [x,nx]=sigfold(x,nx); [rxy,nrxy]=conv_m(x,nx,y,ny) function [y,n]=sigfold(x,n) y=fliplr(x); n=-fliplr(n); 运行结果: y = Columns 1 through 11 -6.4000 -11.2000 -4.0000 6.2000 12.5000 4.3000 -13.5000 -20.3000 -18.8000 -9.3000 10.4000 Columns 12 through 14 19.1000 19.8000 11.2000 ny = -1 0 1 2 3 4 5 6 7 8 9 10 11 12 rxy = Columns 1 through 11 -35.8400 -108.1600 -140.3200 -92.8800 21.2200 109.5500 65.8900 -90.8300 -305.3700 -444.5900 -320.9700 Columns 12 through 23 0.0000 320.9700 444.5900 305.3700 90.8300 -65.8900 -109.5500 -21.2200 92.8800 140.3200 108.1600 35.8400 nrxy = Columns 1 through 21 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 Columns 22 through 23 11 12 ans = Columns 1 through 12 -6.4000 -11.2000 -4.0000 6.2000 12.5000 4.3000 -13.5000 -20.3000 -18.8000 -9.3000 10.4000 19.1000 4

Columns 13 through 14 19.8000 11.2000 上述的y是输出的结果,ny是其定义范围,rxy和nrxy表示x序列和y的相关性。

4.系统线性性质验证

一个特定的线性时不变系统,描述它的差分方程为:

y(n)?3.18x(n?2)?0.48x(n?4)?x(n)?0.8y(n?2),

1) 在0?n?100之间求解并画出系统的脉冲响应,从脉冲响应确定系统的稳定性;

002) 如果此系统的输入为x(n)??5?3cos(0.2?n)?4sin(0.6?n)?u(n)。在0?n?2间求出y(n)的响应。

(1) function y=sy14(n) b=[1,0,3.18,0,-0.48]; a=[1,0,-0.8]; x=impsep(0,0,100); n=[0:100]; h=filter(b,a,x); stem(n,h) sum(abs(h)) 运行结果:ans =18.4998,系统函数h是绝对可和,所以这个系统是稳定的; 系统的脉冲响应图如下:激励是冲激时,系统输出就是系统的脉冲响应 (2) 5

function y=sy142(n) b=[1,0,3.18,0,-0.48]; a=[1,0,-0.8]; n=[0:200]; x=(5+3.*cos(0.2.*pi.*n)+4.*sin(0.6.*pi.*n)).*stepsep(0,0,200); h=filter(b,a,x); stem(n,h) 当系统有输入时,仍然可以用同样的函数来求响应。

6

function y=sy142(n) b=[1,0,3.18,0,-0.48]; a=[1,0,-0.8]; n=[0:200]; x=(5+3.*cos(0.2.*pi.*n)+4.*sin(0.6.*pi.*n)).*stepsep(0,0,200); h=filter(b,a,x); stem(n,h) 当系统有输入时,仍然可以用同样的函数来求响应。

6

本文来源:https://www.bwwdw.com/article/bh4a.html

Top