信号与系统实验matlab报告

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

大连理工大学本科实验报告
课程名称:信号与系统实验
学院(系):电信学部
专业:电子
班级:
学号:
姓名:
实验一信号的频谱图
一、实验目的
1. 掌握周期信号的傅里叶级数展开
2. 掌握周期信号的有限项傅里叶级数逼近
3. 掌握周期信号的频谱分析
4. 掌握连续非周期信号的傅立叶变换
5. 掌握傅立叶变换的性质
二、习题:
t=-3:0.01:3;
n0=-3;n1=-1;t0=2;
for i=0:2
t1=n0:0.01:n0+t0/2;x1=t1-n0;
t2=n1-t0/2:0.01:n1;x2=-t2+n1;
plot(t1,x1,'r',t2,x2,'r');hold on;
n0=n0+t0;
n1=n1+t0;
end
n_max=[1 3 7 15 31];
N=length(n_max);
for k=1:N
n=1; sum=0;
while (n<(n_max(k)+1))
b=4./pi/pi/n/n;
y=b*cos(n*pi*t);
sum=sum+y;
n=n+2;
end
figure;
n0=-3;n1=-1;t0=2;
for i=0:2
t1=n0:0.01:n0+t0/2;x1=t1-n0;
t2=n1-t0/2:0.01:n1;x2=-t2+n1;
plot(t1,x1,'r',t2,x2,'r');hold on; n0=n0+t0; n1=n1+t0; end
y=sum+0.5; plot(t,y,'b');
xlabel('t'),ylabel('wove'); hold off;
axis([-3.01 3.01 -0.01 1.01]); grid on;
title(['the max=',num2str(n_max(k))]) End
t
w o v e
the max=1
t
w o v e
the max=7
for k=1:3;
n=-30:30;tao=k;T=2*k; w=2*pi/T; x=n*tao*0.5
fn1=sinc(x/pi); fn=tao*fn1.*fn1; subplot(3,1,k),stem(n*w,fn);grid on
title(['T=',num2str(2*k)]); axis([-30 30 0 k]); end
t
w o v e
the max=3
ft=sym('sin(2*pi*(t-1))/(pi*(t-1))');
Fw=fourier(ft); subplot(2,1,1); ezplot(abs(Fw)); grid on ;
title('fudupu');
phase=atan(imag(Fw)/real(Fw));
subplot(2,1,2); ezplot(phase); grid on ;
title('xiangweipu');
ft=sym('(sin(pi*t)/(pi*t))^2'); Fw=fourier(ft); subplot(2,1,1); ezplot(abs(Fw)); grid on ; title('fudupu');
phase=atan(imag(Fw)/real(Fw));
subplot(2,1,2); ezplot(phase); grid on ; title('xiangweipu');
-6
-4
-2
02
4
6
w
fudupu
-6
-4
-2
02
4
6
w
xiangweipu
w
fudupu
-6
-4
-2
02
4
6
w
xiangweipu
(1)
syms t
Fw=sym('10/(3+i*w)-4/(5+i*w)')
ft=ifourier(Fw,t)
ezplot(ft);grid on
2 heaviside(t) (-2 exp(-5 t)+5 exp(-
3 t))
t
(2)
syms t
Fw=sym('exp(-4*w^2)')
ft=ifourier(Fw,t)
ezplot(ft);grid on
1/4/ 1/2 exp(-1/16 t2)
t
dt = 0.01; t = -0.5:dt:0.5;
ft = uCT(t+0.5)-uCT(t-0.5); N = 2000; k = -N:N;
W = 2*pi*k/((2*N+1)*dt); F = dt * ft*exp(-j*t'*W); plot(W,F), grid on
三、 实验体会:
这是第一次信号上机实验,在这次实验中第一次接触到了matlab 这个强大的工程软件,同时学会了对绘制时信号的时域波形和对信号进行频域分析。

非常直观的看到了,信号的叠加合成等现象。

-400
-300-200-1000100200300400
-0.4-0.2
0.2
0.4
0.6
0.8
1
实验二连续时间系统分析
一、实验目的
1 建立系统的概念
2 掌握连续时间系统的单位冲激响应的求解
3 掌握连续时间系统单位阶跃响应的求解
4 掌握连续时间系统零极点的求解
5 分析系统零极点对系统幅频特性的影响
6 分析零极点对系统稳定性的影响
7 介绍常用信号处理的MA TLAB 工具箱
二、习题
已知系统的微分方程为()()()()()''324y t y t y t x t x t ⅱ++=+,计算该系统的单位冲激响应和单位阶跃响应,b=[1,4];
a=[1,3,2]; sys=tf(b,a); t=0:0.1:10; y=impulse(
sys,t); subplot(2,1,1); plot(t,y);
xlabel('ʱ¼ä') ylabel('µ¥Î»³å¼¤ÏìÓ¦') b=[1]; a=[1,2,1];
sys=tf(b,a); t=0:0.1:10; y=step(sys,t ); subplot(2,1,2); plot(t,y);
xlabel('ʱ¼ä') ylabel('µ¥Î»½×Ô¾ÏìÓ¦')
01234
5
678910
0.5
1
1.5
时间
单位冲激响应
01234
5678910
0.5
1
时间
单位阶跃响应
1.
实现卷积()*()f t h t ,其中:()2[()(2)],()()
t f t t t h t e t e e e -=--=p=0.01; nf=0:p:2; f=2*((nf>=0)-(nf>=2)); nh=0:p:10; h=exp(-nh); y=conv(f,h);
subplot(3,1,1),stairs(nf,f); title('f(t)');axis([0 3 0 2.1]); subplot(3,1,2),stairs(nh,h); title('h(t)');axis([0 3 0 1.1]); subplot(3,1,3),plot(y); title('y(t)=f(t)*h(t)');
2. 已知二阶系统方程'''11()()()()c c R u t u t u t t L LC LC
d +
+= 对下列情况分别求单位冲激响应()h t ,并画出其波形。

a. 4,1,1/3R L H C F =W
== b. 2,1,1R L H C F =W
== c. 1,1,1R L H C F =W
== d. 0,1,1R L H C F =W
== b=[3];
a=[1,4,3]; sys=tf(b,a); t=0:0.1:10; y=impulse(sys,t); plot(t,y); xlabel('ʱ¼ä') ylabel('µ¥Î»³å¼¤ÏìÓ¦')
1 2 3 4
5 6 7 8 9 10
0 0.1 0.
2 0.
3 0.4
0.5 0.6 0.7
??
??????
00.51 1.52 2.53
f(t)
00.51 1.52 2.53
h(t)
0200400600800100012001400
y(t)=f(t)*h(t)
b=[1]; a=[1,2,1]; sys=tf(b,a); t=0:0.1:10; y=impulse(sys,t); plot(t,y);
xlabel('ʱ¼ä')
ylabel('µ¥Î»³å¼¤ÏìÓ¦')
b=[1]; a=[1,0,1]; sys=tf(b,a); t=0:0.1:10; y=impulse(sys,t); plot(t,y); xlabel('ʱ¼ä') ylabel('µ¥Î»³å¼¤ÏìÓ¦')
3. 求下列系统的零极点

1

24324
()2321s F s s s s s -=+-++
(2)23
25(45)
()51630s s s F s s s s ++=+++
b=[1 0 -4]; a=[1 2 -3 2 1]; sys=tf(b,a); subplot(3,1,1),pzmap(sys); subplot(3,1,2),step(b,a); subplot(3,1,3),impulse(b,a);
1)
时间
单位冲激响应
时间
单位冲激响应
b=[5 20 25 0]; a=[1 5 16 30]; sys=tf(b,a); subplot(3,1,1),pzmap(sys); subplot(3,1,2),step(b,a); subplot(3,1,3),impulse(b,a);
-4
-3-2-1012
-10
1P ole-Zero Map
Real Axis I m a g i n a r y A x i s
00.51 1.52 2.53 3.5
-20
20Step Response
Time (sec)A m p l i t u d e
00.51 1.5
2 2.5
3 3.5
-20
20Impulse Response
Time (sec)
A m p l i t u d e
-505P ole-Zero Map
Real Axis I m a g i n a r y A x
i s
0123
456
-5
05
Step Response
Time (sec)A m p l i t u
d e
0123456
-10
010
Impulse Response
Time (sec)
A m p l i t u d e
4. 对于更多零极点和不同零极点位置的连续系统,作出系统的零极点图;分析系统是否稳
定?若稳定,作出系统的幅频特性曲线和相频特性曲线; (1) 1个极点s=0,增益k=1; (2) 2个共轭极点5s j = ,增益k=1;
(3) 零点在s=0.5,极点在0.15s j =- ,增益k=1
b=[1 ]; a=[1 0]; sys=tf(b,a);
pzmap(sys);
Xi tong wending
b=[1 ];
a=[1 0 5]; sys=tf(b,a); pzmap(sys);
Lijie wending
P ole-Zero Map
Real Axis
I m a g i n a r y A x i s
P ole-Zero Map
Real Axis
I m a g i n a r y A x i s
b=[1 -0.5 ]; a=[1 -0.2 25.01]; sys=tf(b,a); pzmap(sys);
wending
三、 实验体会:
这次实验学会了用matlab 对系统进行一些分析,并求解连续时间系统的单位冲响应和单位阶跃响应。

对于以后实际问题中对连续时间系统的分析有了很大帮助。

这次实验中还运用matlab 分析了系统的零极点,并分析零极点对系统稳定性的影响。

以后对零极点的分析会更加方便了。

Real Axis
I m a g i n a r y A x i s
实验三信号抽样
一、实验目的
1、学会运用MATLAB完成信号抽样及对抽样信号的频谱进行分析;
2、学会运用MATLAB改变抽样间隔,观察抽样后信号的频谱变化;
3、学会运用MATLAB对抽样后的信号进行重建。

二、习题
四、设有三个不同频率的正弦信号,频率分别为
1100,
f H z =
2200,
f H z =
33800
f Hz
=。

现在用抽样频率
33800
f Hz
=对这三个正弦信号进行抽样,用MATLAB命令画出各抽
样信号的波形及频谱,
并分析频率混叠现象。

Ts=1/2/pi/3800;
dt = 0.0005;
t1 = -0.01:dt:0.01;
ft =sin(200*pi*t1);
subplot(221)
plot(t1,ft), grid on
xlabel('Time(sec)'),ylabel('f(t)') title('ÓàÏÒÐźÅ');
t2 = -0.01:dt:0.01;
fst=sin(200*pi*t2);
subplot(222);
plot(t1,ft,':'),hold on;
stem(t2,fst),grid on;
xlabel('Time(sec)'),ylabel('fs(t)'); title('³éÑùºóµÄÐźÅ'),hold off; Fsw=Ts*fst*exp(-j*t2'*W); subplot(223);
plot(W,abs(Fsw)), grid on; xlabel('\omega'),ylabel('Fs(w)'); title('³éÑùÐźŵÄƵÆ×');
-0.01-0.00500.0050.01
Time(sec)
f
(
t
)
余弦信号
Time(sec)
f
s
(
t
)
抽样后的信号
-4-2024
x 105
x 10-3
ω
F
s
(
w
)
抽样信号的频谱
Ts=1/2/pi/3800;
dt = 0.0001;
t1 = -0.005:dt:0.005;
ft =sin(400*pi*t1);
subplot(221)
plot(t1,ft), grid on
xlabel('Time(sec)'),ylabel('f(t)') title('ÓàÏÒÐźÅ');
t2 = -0.005:dt:0.005;
fst=sin(400*pi*t2);
subplot(222);
plot(t1,ft,':'),hold on;
stem(t2,fst),grid on;
xlabel('Time(sec)'),ylabel('fs(t)'); title('³éÑùºóµÄÐźÅ'),hold off; Fsw=Ts*fst*exp(-j*t2'*W); subplot(223);
plot(W,abs(Fsw)), grid on; xlabel('\omega'),ylabel('Fs(w)'); title('³éÑùÐźŵÄƵÆ×');
Ts=1/2/pi/3800;
dt = 0.00001;
t1 = -0.01:dt:0.01;
ft =sin(7600*pi*t1);
subplot(221)
plot(t1,ft), grid on
axis([-0.0001 0.0001 -1.5 1.5])
xlabel('Time(sec)'),ylabel('f(t)') title('ÓàÏÒÐźÅ');
t2 = -0.01:dt:0.01;
fst=sin(7600*pi*t2);
subplot(222);
plot(t1,ft,':'),hold on;
stem(t2,fst),grid on;
axis([-0.0001 0.0001 -1 1]); xlabel('Time(sec)'),ylabel('fs(t)'); title('³éÑùºóµÄÐźÅ'),hold off; Fsw=Ts*fst*exp(-j*t2'*W);
-101
x 10-4
Time(sec)
f
(
t
)
余弦信号
x 10-4
Time(sec)
f
s
(
t
)
-202
x 104
ω
F
s
(
w
)
抽样信号的频谱
-505
x 10-3
Time(sec)
f
(
t
)
余弦信号
x 10-3
Time(sec)
f
s
(
t
)
抽样后的信号
-4-2024
x 105
x 10-3
ω
F
s
(
w
)
抽样信号的频谱
subplot(223);
plot(W,abs(Fsw)), grid on ; axis([-10000*pi 10000*pi 0 0.02*pi]); xlabel('\omega'),ylabel('Fs(w)'); title('³éÑùÐźŵÄƵÆ×');
五、 结合抽样定理,用MATLAB 编程实现()Sa t 信号经冲激脉冲抽样后得到的抽样信号
()s f t 及其频谱,并利用()s f t 重构()Sa t 信号。

clc; clear all ; dt=0.01; t=-4:dt:4; ft=sinc(t/pi);
subplot(5,1,1),plot(t,ft),xlabel('Time(sec)'), ylabel('f(t)'), axis([-15 15 0 1.5]); title('抽样信号的时域波形'); N=500; k=-N:N;
W=2*pi*k/((2*N+1)*dt); Fw=dt*ft*exp(-j*t'*W);
subplot(5,1,2), plot(W,abs(Fw)), grid on
axis([-10 10 -0.2 3]); xlabel('\omega'), ylabel('F(w)'), title('抽样信号的频谱图'); Ts=1; t2=-4:Ts:4; fst=sinc(t2);
subplot(5,1,3), stem(t2,fst), axis([-4 4 -0.1 0.1]); xlabel('Time(sec)'), ylabel('fst(t)'), title('³éÑùºóµÄÐźÅ'); Fsw=Ts*fst*exp(-j*t2'*W);
subplot(5,1,4), plot(W,abs(Fsw));axis([-10 10 -0.2 1.1*pi]); xlabel('\omega'), ylabel('Fs(w)')
title('抽样后信号的频谱 '); w=1; wc=2*w; n=-100:100; nTs=n*Ts; ft2=sinc(nTs/pi);
fc=ft2*Ts*wc/pi*sinc((wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t))));subplo t(5,1,5), plot(t,fc),axis([-4 4 0 1.5]); xlabel('t'), ylabel('f(t)'); title('复原后的信号 ');
三、实验体会:
这次实验学习对信号进行抽样,及抽样后的频谱分析以及对抽样后信号的重建。

很好的与理论课中抽样定理相对应,非常直观的看到了信号的抽样过程及抽样频率对抽样信号的影响,通过对抽样后信号的还原,更深刻的理解了抽样定理。

实验四离散时间LTI 系统分析
一、实验目的
● 学会运用MATLAB 求解离散时间系统的零状态响应; ● 学会运用MATLAB 求解离散时间系统的单位冲激响应; ● 学会运用MATLAB 求解离散时间系统的卷积和。

● 学会运用MATLAB 求离散时间信号的z 变换和z 反变换; ● 学会运用MATLAB 分析离散时间系统的系统函数的零极点;
● 学会运用MATLAB 分析系统函数的零极点分布与其时域特性的关系; ●
学会运用MATLAB 进行离散时间系统的频率特性分析。

二、实验内容
1.
试用MATLAB 命令求解以下离散时间系统的单位冲激响应。

(1))1()()2()1(4)(3-+=-+-+n x n x n y n y n y (2)
)()2(10)1(6)(2
5
n x n y n y n y =-+-+ 代码如下:
clc; clear all ;
b=[3 4 1;5/2 6 10]; a=[1 1;1 0]; for k=1:2 if (k==1) c=b(k,:); d=a(k,:); else c=b(k,:); d=a(k,1); end n=0:30;
subplot(2,1,k), impz(c,d,30), grid on title(['离散系统的冲激响应', num2str(k)]); end
2.
已知某系统的单位冲激响应为()()()[]10)8
7
(--=n u n u n h n
,试用MATLAB 求当激励
信号为)5()()(--=n u n u n x 时,系统的零状态响应。

代码如下:
clc; clear all ; nh=-2:12; nx=-2:12;
h=(7/8).^nh.*(heaviside(nh)-heaviside(nh-8)); x=heaviside(nx)-heaviside(nx-5); y=conv(x,nx); ny=conv(h,nh);
subplot(3,1,1),stem(nx,x,'fill'), grid on xlabel('n'), title('x(n)'), axis([-4 16 0 2]); subplot(3,1,2), stem(nh,h,'fill'); grid on xlabel('n'), title('h(n)'), axis([-4 16 0 2]);
subplot(3,1,3), stem(ny,y,'fill'), grid on xlabel('n'), title('y(n)=x(n)*h(n)'); axis([-4 16 0 20]);
1.
试用MATLAB 画出下列因果系统的系统函数零极点布图,并判断系统的稳定性。

(1)48
.096.15.29
.06.12)(232-+---=z z z z z z H
(2)z
z z z z z H 873.065.09.01
)(234+---=
(1)
B=[0,2,-1.6,-0.9]; A=[1,-2.5,1.96,-0.48]; zplane(B,A),grid on legend('零点','极点')
title('零极点分布图')
因为有极点在单位圆外,所以该系统不稳定
Real Part
I m a g i n a r y P a r t
零极点分布图
(2)B=[0,0,0,1,-1];
A=[1,-0.9,-0.65,0.873,0]; zplane(B,A),grid on legend('Áãµã','¼«µã')
title('Á㼫µã·Ö²¼Í¼')
因为该系统函数的极点都在单位圆内,
所以该系统稳定 2.
试用MATLAB 绘制系统8
143)(22
+
-=z z z z H 的频率响应曲线。

b=[1 0 0]; a=[1 -0.75 0.125]; [H,w]=freqz(b,a,400,'whole'); Hm=abs(H); Hp=angle(H);
subplot(211) plot(w,Hm),grid on
xlabel('\omega(rad/s)'),ylabel('Magnitude') title('离散系统幅频特性曲线') subplot(212) plot(w,Hp),grid on
xlabel('\omega(rad/s)'),ylabel('Phase') title('离散系统相频特性曲线')
3. 自行设计系统函数,验证系统函数零极点分布与其时域特性的关系。

01234567
ω(rad/s)
M a g n i t u d e
离散系统幅频特性曲线
01234
567
ω(rad/s)P h a s e 离散系统相频特性曲线
Real Part
I m a g i n a r y P a r t
零极点分布图
2
)(-=z z
z H
b1=[1,0]; a1=[1,-2];
subplot(121) zplane(b1,a1)
title('极点在单位圆内的正实数') subplot(122) impz(b1,a1,10);grid on ;
三、实验体会
这次实验对离散时间系统的分析,与本学期的信号与系统理论课很好的结合在了一起。

较连续时间系统而言,离散时间系统不够直观。

分析和理解起来都和连续时间系统有很大不同。

并且有些求解不太方便。

这次试验中用matlab 对离散时间系统进行分析十分方便。

并且绘图功能也很强大,十分直观,更容易对信号进行直观的分析。

-1
012
Real Part
I m a g i n a r y P a r t
极点在单位圆内的正实数
n (samples)
A m p l i t u d e
Impulse Response
实验五:语音信号的调制解调
一、实验目的
1、了解语音信号处理在通信中的应用
2、理解幅度调制和解调的原理及方法
3、观察语音信号。

载波信号。

调制信号和解调后的信号频谱
二、实验内容
clc
clear
t=0:0.00001:1
s0=(1+0.5*Y).*cos(5000*pi*t)
subplot(321)
plot(t,s0),grid on
%叠加噪音
s1=s0+rand(1,length(t))
subplot(322)
plot(t,s1),grid on
%带通滤波
a=[2450,2550];b=[2400,32600];
fs=100000;
Wp=a/(fs/2);Ws=b/(fs/2);Rp=3; Rs=15;
[N,Wn]= Buttord(Wp,Ws,Rp,Rs) ;
[B,A]=Butter(N,Wn,'bandpass');
q=filtfilt(B,A,s1);
subplot(323)
plot(t,q),grid on
%XIANGANDIAOSHI
s2=q.*cos(5000*pi*t)
subplot(324)
plot(t,s2),grid on
%ditonglvbo
fs=100000;
Wp=600/(fs/2);Ws=2000/(fs/2);Rp=3; Rs=20;
[N,Wn]= Buttord(Wp,Ws,Rp,Rs) ;
[B,A]=Butter(N,Wn,'low');
s3=filtfilt(B,A,s2);
subplot(325)
plot(t,s3),grid on
s4=1.5*s3
subplot(326)
plot(t,s4),grid on
%pinpuhuizhi
三、实验体会
这次实验由于时间的限制,没能实现语音信号的调制与解调,不能不说是一个很大的遗憾。

不过在实验中还是实现了正弦波信号的条幅调制与解调。

和高频实验中,在示波器上看到的信号一样的。

对于调制解调的过程也有了更深刻的认识,对于在调制解调中的各个参数的作用的效果通过图形也能直接的看出并能分析出原因。

同时再一次感慨maltab 的强大。

原来matlab 也能对语音进行解码。

实验六:simulink仿真的应用
一、实验目的
1、学会运用simulink进行仿真。

2、运用simulink进行仿真调幅调制与解调的过程。

二、实验内容
1、simulink进行仿真调幅调制与解调
仿真结果:
2、运用simulink自主进行仿真
信号的处理及对噪声滤波
三、实验体会
这次试验最大的体会就是simulink这个工具十分方便。

Simulink 不用进行代码的编写,全部采用模块化,避免了很多底层繁琐的工作,却又能得到非常丰富的资源库。

并且试验中的参数可以进行设置和更改了十分的方便。

仿真功能也十分的强大,最终实现的和编代码一样的效果。

Simulink使用方便,界面人性化,十分快捷。

相关文档
最新文档