matlab信号实验分析方案.docx
《matlab信号实验分析方案.docx》由会员分享,可在线阅读,更多相关《matlab信号实验分析方案.docx(30页珍藏版)》请在冰豆网上搜索。
![matlab信号实验分析方案.docx](https://file1.bdocx.com/fileroot1/2022-12/30/f0e98572-034f-4752-b31a-55292e03b7a2/f0e98572-034f-4752-b31a-55292e03b7a21.gif)
matlab信号实验分析方案
大连理工大学
本科实验报告
课程名称:
信号与系统实验
学院(系):
电子信息与电气工程学部
专业:
电子信息工程
班级:
学号:
姓名:
实验三离散时间信号的波形图
一、实验目的
1.熟悉产生单位脉冲序列、单位阶跃序列、矩形序列、正弦型序列和指数序列的方法
2.掌握用MATLAB生成常用离散时间信号的方法
3.熟练掌握离散时间信号波形图的绘制
二、习题:
绘出下列序列的图形:
(1)序列
n=-5:
6。
x1=2.^n.*ufunc(n)。
figure
(1)
stem(n,x1,'r.')
(2)序列
n=-5:
6。
x2=-n.*ufunc(-n)。
figure
(2)
stem(n,x2,'b')
(3)序列
n=0:
10。
x3=sin(n.*pi./5)。
figure(3)
stem(n,x3,'y')
(4)序列
n=0:
10。
x4=(5./6).^n.*sin(n.*pi./5)。
figure(4)
stem(n,x4,'r')
实验四连续信号的频谱图
一、实验目的
1.理解掌握傅立叶变换的定义,并能够用MATLAB编程实现其函数功能
2.理解傅立叶变换的物理意义,熟练掌握连续时间信号频谱的计算方法
3.熟练掌握绘制连续时间信号频谱图的方法
二、习题
1)求周期矩形脉冲的频谱。
symstnTtaoA
T=4。
A=1。
tao=1。
f=A*exp(-j*n*2*pi/T*t)。
fn=2*pi*int(f,t,-tao/2,tao/2)/T。
fn=simple(fn)。
n=[-20:
-1,eps,1:
20]。
fn=subs(fn,n,'n')。
subplot(2,1,1)
stem(n,fn,'filled')
line([-2020],[00])。
2)如图所示三角波信号,即:
,试求其频谱
代码:
symstw
f=1-abs(t)/2。
fw=int((f*exp(-j*w*t)),t,-2,2)。
simple(fw)。
ezplot(fw,[-10:
10])。
实验五连续时间系统的响应
一、实验目的
1建立系统的概念
2掌握连续时间系统的单位冲激响应的求解
3掌握连续时间系统单位阶跃响应的求解
4介绍常用信号处理的MATLAB工具箱
二、习题
1)实现卷积
,其中:
程序代码:
clear
t1=0:
0.01:
2。
t2=0:
0.01:
10。
f1=(t1>0)。
f2=exp(-t2).*(t2>0)。
c=conv(f1,f2)。
t3=0:
0.01:
12。
plot(t3,c)。
xlabel('t')。
ylabel('f(t)*h(t)')。
title('卷积')
运行结果:
2)已知二阶系统方程
对下列情况分别求单位冲激响应
,并画出其波形。
a.
b.
c.
d.
程序代码:
den=[1,4,3]。
num=[3]。
sys=tf(num,den)。
subplot(2,2,1)
impulse(sys)。
gridon。
title('图1')
xlabel('t')。
ylabel('单位冲击')。
den=[1,2,1]。
num=[1]。
sys=tf(num,den)。
subplot(2,2,2)
impulse(sys)。
gridon。
title('图2')
xlabel('t')。
ylabel('单位冲击')。
den=[1,1,1]。
num=[1]。
sys=tf(num,den)。
subplot(2,2,3)
impulse(sys)。
gridon。
title('图3')
xlabel('t')。
ylabel('单位冲击')。
den=[1,0,1]。
num=[1]。
sys=tf(num,den)。
subplot(2,2,4)
impulse(sys)。
gridon。
title('图4')
xlabel('t')。
ylabel('单位冲击')。
实验六连续时间系统零极点和幅频特性
一、实验目的
1.掌握连续时间系统零极点的求解
2.分析系统零极点对系统幅频特性的影响
3.分析零极点对系统稳定性的影响
二、习题:
1.求下列系统的零极点
(1)
程序代码:
a=[12-321]。
b=[10-4]。
sys=tf(b,a)。
roots(b)。
roots(a)。
pzmap(sys)
运行结果:
ans=
-3.1300
0.7247+0.6890i
0.7247-0.6890i
-0.3195
(2)
程序代码:
a=[151630]。
b=[520250]。
sys=tf(b,a)。
roots(b)。
roots(a)。
pzmap(sys)
运行结果:
ans=
-3.0000
-1.0000+3.0000i
-1.0000-3.0000i
2.对于更多零极点和不同零极点位置的连续系统,作出系统的零极点图;分析系统是否稳定?
若稳定,作出系统的幅频特性曲线和相频特性曲线;
(1)1个极点s=0,增益k=1;
不稳定
程序代码:
a=[10]。
b=[1]。
sys=tf(b,a)。
figure
(1)
pzmap(sys)
figure
(2)
bode(b,a)。
(2)
2个共轭极点
,增益k=1;
程序代码:
a=[1025]。
b=[1]。
sys=tf(b,a)。
figure
(1)
pzmap(sys)
figure
(2)
bode(b,a)。
运行结果:
(3)零点在s=0.5,极点在
,增益k=1;
程序代码:
a=[10.225.01]。
b=[1-0.5]。
sys=tf(b,a)。
figure
(1)
pzmap(sys)
figure
(2)
bode(b,a)。
运行结果:
实验七含噪语音信号的分析
滤波器设计
滤波器是一种基本的处理信号的系统,具有传输选择特性的二端口网络,是一种线性时不变的系统。
它是处理连续信号的由分立元件构成的线性网络,其性能可用线性微分方程来描述。
它的功能主要是选频,即滤掉(衰减掉)不需要的信号成份,保留需要的信号成份.通过滤波器时不经受衰减或经受很小衰减的频带称为通带,经受的衰减超过某一规定值的频带称为阻带,位于通带和阻带之间的频带称为过渡带.在本实验中采用的是模拟实现高通滤波器和低通滤波器的功能。
根据巴特沃兹滤波器的滤波原理,其理想的滤波器函数为:
其中
是截止频率;将截止频率fc作为参数输入。
实验系统设计
图7-1系统流程图
⏹语音录入模块实现语音信号录入功能
⏹频谱分析模块运用傅氏变换理论以及抽样定理,对原始的语音信号进行的由时域到频域的转换,实现对语音信号进行频谱分析的功能
⏹付里叶反变换模块运用傅氏变换理论以及抽样定理,利用频谱分析的逆过程实现信号由频域至时域的逆变换功能
⏹高通滤波模块、低通滤波模块和带通滤波模块运用频域滤波理论实现对语音信号的滤波处理功能
⏹处理后的语音存档模块实现信号保存功能
低通滤波器代码:
1.低通滤波器设计:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%原始信号%%%%%%%%%%%%%%
%%%%%%%%低通滤波器%%%%%%%%%%%%
[x,fs,bits]=wavread('D:
\wang.wav')。
sound(x,fs,bits)。
N=length(x)。
t=0:
1/fs:
N/fs-1/fs。
P=1024。
X=fft(x,P)。
magX=abs(X)。
angX=angle(X)。
f=0:
fs/(2*P):
fs/2-fs/(2*P)。
figure
(1)。
subplot(311)。
plot(t,x)。
title('原始波形')。
subplot(312)。
plot(f,magX)。
title('原始信号幅度谱')。
subplot(313)。
plot(f,angX)。
title('原始信号相位谱')。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%加噪声信号%%%%%%%%%%%%%%%
Au=1。
%加噪幅度;
x1=Au*sin(10000*t*pi)。
%加入了一个5KHZ的噪声;
%subplot(221)。
%plot(t,x1)。
%观察噪声波形用,可注释掉!
x2=x1'。
y=x2+x。
sound(y,fs,bits)。
Y=fft(y,P)。
figure
(2)。
subplot(311)。
plot(t,y)。
title('加噪声波形')。
subplot(312)。
plot(f,abs(Y))。
title('加噪后幅度谱')。
subplot(313)。
plot(f,angle(Y))。
title('加噪后相位谱')。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%巴特沃思滤波%%%%%%%%%%%%%%%
%%%%%%%低通%%%%%%%%%%%%%%%
Ts=1/fs。
wp=1000。
ws=5000。
wp1=wp*2*Ts。
ws1=ws*2*Ts。
Rp=3。
Rs=30。
[G,Wn]=buttord(wp1,ws1,Rp,Rs)。
[bz,az]=butter(G,Wn)。
figure(3)。
[H,W]=freqz(bz,az)。
freqz(bz,az,256,fs)。
title('滤波器特性')。
z=filter(bz,az,y)。
sound(z,fs,bits)。
Z=fft(z,P)。
figure(4)。
subplot(311)。
plot(t,z)。
title('滤波后波形')。
subplot(312)。
plot(f,abs(Z))。
title('滤波幅度谱')。
subplot(313)。
plot(f,angle(Z))。
title('滤波后相位谱')。
波形显示:
2.高通滤波器:
3.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4.%%%%%%%原始信号%%%%%%%%%%%%%%
5.%%%%%%%%高通通滤波器%%%%%%%%%%%%
6.%由于这个音频文件的主要音频成分都集中在低频,所以用高通可能不适合,这里只是做一个演示
7.[x,fs,bits]=wavread('D:
\wang.wav')。
8.sound(x,fs,bits)。
9.N=length(x)。
10.t=0:
1/fs:
N/fs-1/fs。
11.P=1024。
12.X=fft(x,P)。
13.magX=abs(X)。
14.angX=angle(X)。
15.f=0:
fs/(2*P):
fs/2-fs/(2*P)。
16.figure
(1)。
17.subplot(311)。
18.plot(t,x)。
19.title('原始波形')。
20.subplot(312)。
21.plot(f,magX)。
22.title('原始信号幅度谱')。
23.subplot(313)。
24.plot(f,angX)。
25.title('原始信号相位谱')。
26.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
27.%%%%%%%加噪声信号%%%%%%%%%%%%%%%
28.Au=1。
%加噪幅度;
29.x1=Au*sin(100*t*pi)。
%加入了一个50HZ的噪声;
30.%subplot(221)。
31.%plot(t,x1)。
%观察噪声波形用,可注释掉!
32.x2=x1'。
33.y=x2+x。
34.sound(y,fs,bits)。
35.Y=fft(y,P)。
36.figure
(2)。
37.subplot(311)。
38.plot(t,y)。
39.title('加噪声波形')。
40.subplot(312)。
41.plot(f,abs(Y))。
42.title('加噪后幅度谱')。
43.subplot(313)。
44.plot(f,angle(Y))。
45.title('加噪后相位谱')。
46.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
47.%%%%%%%巴特沃思滤波%%%%%%%%%%%%%%%
48.%%%%%%%高通%%%%%%%%%%%%%%%
49.Ts=1/fs。
50.wp=2000。
51.ws=1000。
52.wp1=wp*2*Ts。
53.ws1=ws*2*Ts。
54.Rp=3。
55.Rs=30。
56.[G,Wn]=buttord(wp1,ws1,Rp,Rs)。
57.[bz,az]=butter(G,Wn,'high')。
58.figure(3)。
59.[H,W]=freqz(bz,az)。
60.freqz(bz,az,256,fs)。
61.title('滤波器特性')。
62.z=filter(bz,az,y)。
63.sound(z,fs,bits)。
64.Z=fft(z,P)。
65.figure(4)。
66.subplot(311)。
67.plot(t,z)。
68.title('滤波后波形')。
69.subplot(312)。
70.plot(f,abs(Z))。
71.title('滤波幅度谱')。
72.subplot(313)。
73.plot(f,angle(Z))。
74.title('滤波后相位谱')。
波形图:
3.带通滤波器:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%原始信号%%%%%%%%%%%%%%
%%%%%%%%带通滤波器%%%%%%%%%%%%
[x,fs,bits]=wavread('D:
\wang.wav')。
sound(x,fs,bits)。
N=length(x)。
t=0:
1/fs:
N/fs-1/fs。
P=1024。
X=fft(x,P)。
magX=abs(X)。
angX=angle(X)。
f=0:
fs/(2*P):
fs/2-fs/(2*P)。
figure
(1)。
subplot(311)。
plot(t,x)。
title('原始波形')。
subplot(312)。
plot(f,magX)。
title('原始信号幅度谱')。
subplot(313)。
plot(f,angX)。
title('原始信号相位谱')。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%加噪声信号%%%%%%%%%%%%%%%
Au=1。
%加噪幅度;
x1=Au*sin(10000*t*pi)。
%加入了一个5KHZ的噪声;
%subplot(221)。
%plot(t,x1)。
%观察噪声波形用,可注释掉!
x2=x1'。
y=x2+x。
sound(y,fs,bits)。
Y=fft(y,P)。
figure
(2)。
subplot(311)。
plot(t,y)。
title('加噪声波形')。
subplot(312)。
plot(f,abs(Y))。
title('加噪后幅度谱')。
subplot(313)。
plot(f,angle(Y))。
title('加噪后相位谱')。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%巴特沃思滤波%%%%%%%%%%%%%%%
%%%%%%%带通%%%%%%%%%%%%%%%
Ts=1/fs。
wp=[1000,4000]。
ws=[500,6000]。
wp1=wp*2*Ts。
ws1=ws*2*Ts。
Rp=3。
Rs=30。
[G,Wn]=buttord(wp1,ws1,Rp,Rs)。
[bz,az]=butter(G,Wn)。
figure(3)。
[H,W]=freqz(bz,az)。
freqz(bz,az,256,fs)。
title('滤波器特性')。
z=filter(bz,az,y)。
sound(z,fs,bits)。
Z=fft(z,P)。
figure(4)。
subplot(311)。
plot(t,z)。
title('滤波后波形')。
subplot(312)。
plot(f,abs(Z))。
title('滤波幅度谱')。
subplot(313)。
plot(f,angle(Z))。
title('滤波后相位谱')。
波形:
4.带阻滤波器:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%原始信号%%%%%%%%%%%%%%
%%%%%%%%带阻滤波器%%%%%%%%%%%%
[x,fs,bits]=wavread('D:
\wang.wav')。
%sound(x,fs,bits)。
N=length(x)。
t=0:
1/fs:
N/fs-1/fs。
P=1024。
X=fft(x,P)。
magX=abs(X)。
angX=angle(X)。
f=0:
fs/(2*P):
fs/2-fs/(2*P)。
figure
(1)。
subplot(311)。
plot(t,x)。
title('原始波形')。
subplot(312)。
plot(f,magX)。
title('原始信号幅度谱')。
subplot(313)。
plot(f,angX)。
title('原始信号相位谱')。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%加噪声信号%%%%%%%%%%%%%%%
Au=1。
%加噪幅度;
x1=Au*sin(9000*t*pi*2)。
%加入了一个10KHZ的噪声;
%subplot(221)。
%plot(t,x1)。
%观察噪声波形用,可注释掉!
x2=x1'。
y=x2+x。
sound(y,fs,bits)。
Y=fft(y,P)。
figure
(2)。
subplot(311)。
plot(t,y)。
title('加噪声波形')。
subplot(312)。
plot(f,abs(Y))。
title('加噪后幅度谱')。
subplot(313)。
plot(f,angle(Y))。
title('加噪后相位谱')。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%巴特沃思滤波%%%%%%%%%%%%%%%
%%%%%%%带阻%%%%%%%%%%%%%%%
Ts=1/fs。
wp=[4000,14000]。
ws=[6000,12000]。
wp1=wp*2*Ts。
ws1=ws*2*Ts。
Rp=2。
Rs=30。
[G,Wn]=buttord(wp1,ws1,Rp,Rs)。
[bz,az]=butter(G,Wn,'stop')。
figure(3)。
[H,W]=freqz(bz,az)。
freqz(bz,az,256,fs)。
title('滤波器特性')。
z=filter(bz,az,y)。
sound(z,fs,bits)。
Z=fft(z,P)。
figure(4)。
subplot(311)。
plot(t,z)。
title('滤波后波形')。
subplot(312)。
plot(f,abs(Z))。
title('滤波幅度谱')。
subplot(313)。
plot(f,angle(Z))。
title('滤波后相位谱')。
波形: