西安交大数字信号处理实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数字信号处理实验报告

班级:自动化86

姓名:潘文培

学号:08054142

日期:2010/11/11

实验1 常见离散信号的MATLAB 产生和图形显示

实验目的:加深对常用离散信号的理解;

实验原理:

1. 单位抽样序列

⎩⎨⎧=01)(n δ

≠=n n 在MATLAB 中可以利用ZEROS()函数实现。

;

1)1();

,1(==x N zeros x

如果

)(n δ在时间轴上延迟了K 个单位,得到)(k n -δ即:

⎨⎧=-01)(k n δ

0≠=n k

n (1)、单位脉冲序列的代码:

n1=-10;

n2=10; k=0; n=n1:n2;

nt=length(n); nk=abs(k-n1)+1; x=zeros(1,nt); x(nk)=1;

stem(n,x,'file');

axis([n1,n2,0,1.1*max(x)]); title('单位脉冲序列'); xlabel('时间'); ylabel('幅度');

截图如下:

(2)、延时后的脉冲序列代码:

n1=-10;

n2=10;

n=n1:n2;

nt=length(n);

nk=abs(k-n1)+1;

x=[zeros(1,nk-1),ones(1,nt-nk+1)];

stem(n,x,'file');

axis([n1,n2,0,1.1*max(x)]);

title('单位脉冲序列');

xlabel('时间');

ylabel('幅度');

截图如下:

2.单位阶跃序列

⎨⎧01)(n u

00

<≥n n 在MATLAB 中可以利用ones()函数实现。

);,1(N ones x =

程序代码为:

n = -10:15;

u = [zeros(1,10) ones(1,16)]; stem(n,u);

xlabel('时间'); ylabel('幅度');

title('单位阶跃序列'); axis([-10 15 0 1.2]);

截图如下:

3.正弦序列

)/2sin()(ϕπ+=Fs fn A n x

在MATLAB 中

)

/***2sin(*1

:0fai Fs n f pi A x N n +=-=

程序代码为:

N = 36

n = 0:N-1; A = 2; Fs=3

f = 0.1; Q = pi/6; ar

g = 2*pi*f*n + Q;

x = A*sin(arg); stem(n,x);

axis([0 35 -2 2]);grid; title('正弦信号'); xlabel('时间'); ylabel('幅度'); axis;

截图如下:

4.复正弦序列

n j e n x ϖ=)(

在MATLAB 中

)

**exp(1

:0n w j x N n =-=

程序代码为:

N=36 w=pi/6;

c = w*i; a = 1; n = 0:N-1;

x = a*exp(c*n); subplot(2,1,1); stem(n,real(x)); xlabel('时间');

ylabel('幅度');title('复正弦序列实部'); subplot(2,1,2); stem(n,imag(x)); xlabel('时间');

ylabel('幅度');title('复正弦序列虚部');

截图如下:

5.指数序列

n a n x =)(

在MATLAB 中

n

a x N n .^1

:0=-=

程序代码为:

n = 0:35; a = 1.2; K = 1;

x = K*a.^n; stem(n,x);

xlabel('时间'); ylabel('幅度'); title('指数序列');

截图如下:

实验内容:编制程序产生上述5种信号(长度可输入确定),并绘出其图形。 实验要求:讨论复指数序列的性质。

复指数序列的公式为:

所以由复指数序列的公式可得到以下性质:

1.当σ=0时,它的实部和虚部都是正弦序列。

2.当|σ|>1时,它的实部和虚部都是指数增长的正弦序列。

3.当|σ|﹤1时,它的实部和虚部都是指数衰减的正弦序列。

实验2 离散系统的差分方程、冲激响应和卷积分析

实验目的:加深对离散系统的差分方程、冲激响应和卷积分析方法的理解。

实验原理:离散系统

)sin (cos )()(00)(0n j n e e e e n x e n x n n

j n j n j o ωωσωσϕ

ωσ+=⋅===+

其输入、输出关系可用以下差分方程描述:

∑=∑=-=

-M k k N

k k k n x p k n y d 0

][][

输入信号分解为冲激信号,∑-=

-∞

=m m n m x n x ][][][δ。记系统单位冲激响应

][][n h n →δ,则系统响应为如下的卷积计算式:

∑∞

-∞

=-=

*=m m n h m x n h n x n y ][][][][][

N k d k ,...2,1,0==时,h[n]是有限长度的(n :[0,M])

,称系统为FIR 系统;反之,称系统为IIR 系统。

在MATLAB 中,可以用函数y=Filter(p,d,x) 求解差分方程,也可以用函数 y=Conv(x,h)计算卷积。

实验内容:编制程序求解下列两个系统的单位冲激响应和阶跃响应,并绘出其图形。

[]0.6[1]0.08[2][][1]y n y n y n x n x n +-+-=--

[]0.2{[1][2][3][4][5][6]}y n x n x n x n x n x n x n =-+-+-+-+-+-

实验要求:给出理论计算结果和程序计算结果并讨论。

1、程序的代码为:

a=[1,0.6,0.08]; b=[1,-1,0]; N=16; n=0:N-1; x1=[n==0];

y1=filter(b,a,x1); x2=[n>=0];

y2=filter(b,a,x2);

subplot(2,1,1),stem(n,y1); title('系统单位冲击响应'); subplot(2,1,2),stem(n,y2); title('系统单位阶跃响应');

截图如下:

相关文档
最新文档