数字信号处理实验二
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
对输入x[n]滤波,求得y1[n] 。y[n]和y1[n]有差别吗?为什么要使用对x[n]补零后得到的x1[n]作为输入来产生y1[n] ?
三、实验器材及软件
1•微型计算机1台
2. MATLAB 7.0 软件
四、实验原理
1.三点平滑滤波器是一个线性时不变的有限冲激响应系统,将输出延时一个抽样周期,可得到三点平滑滤波器的因果表达式,生成的滤波器表示为
y[n] 1
-(x[ n] x[n 1] x[n 2]) 3
归纳上式可得
1 M 1
y[n] x[n k]
IVI k 0
此式表示了一个因果M点平滑FIR滤波器
2.对线性离散时间系统,若y1[n]和y2[n]分别是输入序列xqn]和X2[n]的响
应,
则输入
x[n] xdn] X2【n]
的输出响应为
y[n] yd n] y2【n]
则系统称为线性系统。
3.对于离散时不变系统,若y1[n]是x1[n]的响应,则输入
x[n]=x 1[n-n o]
的输出响应为
y[n]=y qn-n o]
则称系统为时不变系统。
五、实验步骤
2.1 首先利用MATLA产生一个高频正弦信号和一个低频正弦信号,利用两个信
个信号,再对输出信号进行分析。
2.2 在2.1的基础上编写num=ones[1-1],运行程序得出结论。
2.4 分别用扫频信号通过2.1、2.2的系统,进行比较分析。
2.7 分别计算出y1[n]和y2[n],得到yt[n];再利用filter 函数求得y[n],计算差值输出,比较y[n]和yt[n]。
2.20根据impz函数的调用方式,得到
num = [0.9 -0.45 0.35 0.002] den = [1 0.71 -0.46 -0.62] ,再调用impz 函数,画出图像。
2.23首先产生序列x[n],把它作为四阶系统的输入,生成y[n]。然后将同样的输入x[n]应用到第一级得到y1[n]。接着用相同的方法得到y2[n]。最后求得两者的差,并画出图像。
2.28分别用conv函数和filter 函数求得输出,进行图像比较。
六、实验记录(数据、图表、波形、程序等)
2.1 对M=2运行上述程序,生成输入x[n]=s1[n]+s2[n] 的输出信号。输入x[n] 的哪个分量被该离散时间系统抑制?
% Program P2_1
clf;
n = 0:100;
si = cos(2*pi*0.05* n); s2 = cos(2*pi*0.47* n); x = s1+s2;
M = input('滤波器所需的长度 =');
num = on es(1,M); y = filter( num,1,x)/M; subplot(2,2,1); plot( n, s1); axis([0, 100, -2, 2]);
xlabel('时间序号 n' ); ylabel('振幅'); title('信号 #1'); subplot(2,2,2); plot (n, s2); axis([0, 100, -2, 2]);
xlabel('时间序号 n' ); ylabel('振幅'); title('信号 #2'); subplot(2,2,3); plot (n, x);
axis([0, 100, -2, 2]);
xlabel('时间序号 n' ); ylabel('振幅'); title('输入信号'); subplot(2,2,4); plot (n, y);
axis([0, 100, -2, 2]);
xlabel('时间序号 n' ); ylabel('振幅'); title('输岀信号'); axis;
2.2 若线性时不变
系统由 y[n]=0.5(x[n]+x[n-1])
变成
-2
-2
0 1.5 1 0.5
幅
0 -0.5 -1 -1.5 信号#1
10 20 30 40
50
时间序号
60 n
70 80 90 100
幅
信号#2
时间序号n
2 1.5 1
0.5 幅 0
振
-0.5
-1 -1.5 10 20
30 输入信号
40
50
60 70 80 90 100
时间序号n
输出信号
y[n]=0.5(x[n]-x[n-1]) ,对输入 x[n]=s1[n]+s2[n] 的影响是什么?
在 M=2的基础上,线性时不变系统由y[n]=0.5(x[n]+x[n-1])
变成
y[n]=0.5(x[n]-x[n-1]) ,则在 MATLA 上,程序 P2.1 更改:
num 可以直接表示为 num=[1-1],通用的表达式为:num=[1 -ones(1,M-1)]。
得到图像为
2.4 修改程序P2.1,用一个长度为101、最低频率为0、最咼频率为0.5的扫 频正弦信号
作为输入信号(见程序 P1.7),计算其输出信号。你能用该系统对扫频信 号的响应来解释习题
Q2.1和习题Q2.2的结果吗?
%日频信号通过 2.1系统: elf; n = 0:100;
s1 = cos(2*pi*0.05* n); s2 = cos(2*pi*0.47* n); a = pi/2/100; b = 0;
arg = a*n *n + b*n; x = cos(arg);
M = input('滤波器所需的长度 ='); num = on es(1,M);
信号#1
2 ---------------------------- .——
2 If
-
1 ” _1
-2
0 100 -2 100
-2
0 2
1
0 -1 -2 0
100
50 时间序号n 输出
信号
1 0
信号#2
1
0 50 时间序号n 输入
信号
-1 50
100 时间序号n
If
50
时间序号n