实验四 连续时间傅里叶变换及系统的频域分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
姓名:***
学号:********** 日期:2016/5/8
实验四 连续时间傅里叶变换及系统的频域分析
一、 实验目的
1、学会用MA TLAB 实现连续时间信号傅里叶变换、常见信号的傅里叶变换及性质。
2、学会用MA TLAB 分析LTI 系统的频域特性
3、学会用MA TLAB 分析LTI 系统的输出响应 二、实验原理
1.傅里叶变换的MATLAB 求解
MA TLAB 的symbolic Math Toolbox 提供了直接求解傅里叶变换及逆变换的函数fourier()及ifourier()两者的调用格式如下。
Fourier 变换的调用格式
F=fourier(f):它是符号函数f 的fourier 变换默认返回是关于w 的函数。
F=fourier(f ,v):它返回函数F 是关于符号对象v 的函数,而不是默认的w ,即
()()jvx F v f x e dx +∞
--∞
=⎰
Fourier 逆变换的调用格式
f=ifourier(F):它是符号函数F 的fourier 逆变换,默认的独立变量为w ,默认返回是
关于x 的函数。
f=ifourier(f,u):它的返回函数f 是u 的函数,而不是默认的x.
注意:在调用函数fourier()及ifourier()之前,要用syms 命令对所用到的变量(如t,u,v,w )进行说明,即将这些变量说明成符号变量。
例4-1 求2()t
f t e
-=的傅立叶变换
解: 可用MA TLAB 解决上述问题: syms t
Fw=fourier(sym(‘exp(-2*abs(t))’))
例4-2 求2
1
()1F jw ω
=
+的逆变换f(t) 解: 可用MA TLAB 解决上述问题 syms t w
ft=ifourier(1/(1+w^2),t)
2.连续时间信号的频谱图
例4-3 求调制信号t t AG t f 0cos )()(ωτ=的频谱,式中
)2
()2()(,21,12,40τττπωτ--+==
==t u t u t G A 解:MATLAB 程序如下所示
ft=sym('4*cos(2*pi*6*t)*(Heaviside(t+1/4)-Heaviside(t -1/4))'); Fw=simplify(fourier(ft))
subplot(121)
ezplot(ft,[-0.5 0.5]),grid on subplot(122)
ezplot(abs(Fw),[-24*pi 24*pi]),grid
用MA TLAB 符号算法求傅里叶变换有一定局限,当信号不能用解析式表达时,会提示出错,这时用MA TLAB 的数值计算也可以求连续信号的傅里叶变换,计算原理是
∑⎰
∞
-∞
=-→-∞
∞
-==n n j t
j e
n f dt e
t f j F ττωτ
ωτω)(lim
)()(0
当τ足够小时,近似计算可满足要求。
若信号是时限的,或当时间大于某个给定值时,信号已衰减的很厉害,可以近似地看成时限信号时,n 的取值就是有限的,设为N ,有
k N N
k e n f k F k N n n j k τ
π
ωτ
ττω2,0,)()(1
=
≤≤=∑-=- 是频率取样点 时间信号取样间隔τ应小于奈奎斯特取样时间间隔,若不是带限信号可根据计算精度要求确定一个频率 W0为信号的带宽。
例4-4 用数值计算法求信号)1()1()(--+=t u t u t f 的傅里叶变换
解,信号频谱是)(2)(ωωSa j F =,第一个过零点是π,一般将此频率视为信号的带宽,若将精度提高到该值的50倍,既W0=50π,据此确定取样间隔,02.00
21
=<F τ R=0.02;t=-2:R:2;
f=Heaviside(t+1)-Heaviside(t -1); W1=2*pi*50;
N=500;k=0:N;W=k*W1/N; F=f*exp(-j*t'*W)*R; F=real(F);
W=[-fliplr(W),W(2:501)]; F=[fliplr(F),F(2:501)]; subplot(2,1,1);plot(t,f); xlabel('t');ylabel('f(t)'); title('f(t)=u(t+1)-u(t -1)'); subplot(2,1,2);plot(W,F); xlabel('w');ylabel('F(w)'); title('f(t)的付氏变换F(w)');
3.用MA TLAB 分析LTI 系统的频率特性
当系统的频率响应H (jw )是jw 的有理多项式时,有
1110
1
110
()()()()()()()()()M M M M N N N N b jw b jw b jw b B w H jw A w a jw a jw a jw a ----++++==++++ MATLAB 信号处理工具箱提供的freqs 函数可直接计算系统的频率响应的数值解。
其调用格
式如下
H=freqs(b,a,w)
其中,a 和b 分别是H(jw)的分母和分子多项式的系数向量,w 为形如w1:p:w2的向量,定义系统频率响应的频率范围,w1为频率起始值,w2为频率终止值,p 为频率取样间隔。
H 返回w 所定义的频率点上,系统频率响应的样值。
例如,运行如下命令,计算0~2pi 频率范围内以间隔0.5取样的系统频率响应的样值 a=[1 2 1]; b=[0 1];
h=freqs(b,a,0:0.5:2*pi)
例 4-5 三阶归一化的butterworth 低通滤波器的频率响应为
321
()()2()2()1
H jw jw jw jw =
+++
试画出该系统的幅度响应()H jw 和相位响应()ϕω。
解 其MA TLAB 程序及响应的波形如下 w=0:0.025:5;
b=[1];a=[1,2,2,1]; % 阶数有高到低 H=freqs(b,a,w); subplot(2,1,1);
plot(w,abs(H));grid; xlabel('\omega(rad/s)'); ylabel('|H(j\omega)|'); title('H(jw)的幅频特性'); subplot(2,1,2);
plot(w,angle (H));grid; xlabel('\omega(rad/s)'); ylabel('\phi(\omega)'); title('H(jw)的相频特性');
4.用MA TLAB 分析LTI 系统的输出响应
例 4-6已知一RC 电路如图所示 系统的输入电压为f(t),输出信号为电阻两端的电压y(t).当RC=0.04,f(t)=cos5t+cos100t, t -∞<<+∞ 试求该系统的响应y(t)
解 由图可知 ,该电路为一个微分电路,其频率响应为
-
+ -
+ f(t)
y(t
R
C
()11R jw
H jw R jwC jw RC
=
=++
由此可求出余弦信号0cos t ω通过LTI 系统的响应为
000()()cos(())y t H jw t ωϕω=+
计算该系统响应的MATLAB 程序及响应波形如下 RC=0.04;
t=linspace(-2,2,1024); w1=5;w2=100;
H1=j*w1/(j*w1+1/RC); H2=j*w2/(j*w2+1/RC); f=cos(5*t)+cos(100*t);
y=abs(H1)*cos(w1*t+angle(H1))+ abs(H2)*cos(w2*t+angle(H2)); subplot(2,1,1); plot(t,f); ylabel('f(t)'); xlabel('Time(s)'); subplot(2,1,2); plot(t,y); ylabel('y(t)'); xlabel('Time(s)'); 三、 上机实验内容
1.验证实验原理中所述的相关程序;
2.分别用MALTAB 计算单位阶跃信号、矩形宽度为2的脉冲信号、cos(2pi * t)的傅里叶变换,并画出其幅度谱和相位谱。
3.设21
()0.08()0.41
H jw jw jw =
++,试用MA TLAB 画出该系统的幅频特性()H jw 和相
频特性()ϕω,并分析系统具有什么滤波特性。
(1)单位阶跃信号的傅立叶变换clc
clear all
close all
fs=100;N=1024;
n=0:N-1;
t=-10:0.01:10;
x=heaviside(t);
y=fftshift(fft(x,N)); f=n*fs/N-fs/2;
subplot 311;
plot(t,x);
axis([-10 10 0 2]);
xlabel('时间/s');
ylabel('振幅');
subplot 312;
plot(f,abs(y));
xlabel('频率/Hz');
ylabel('振幅');
axis([-40 40 0 30]); subplot 313;
plot(f,angle(y));
xlabel('频率/Hz');
ylabel('相位');
(2)矩形宽度为2的脉冲信号的傅里叶变换clc
clear all
close all
fs=100;N=2048;
n=0:N-1;
t=-10:0.01:10;
x=heaviside(t+1)-heaviside(t-1); y=fftshift(fft(x,N));
f=n*fs/N-fs/2;
subplot 311;
plot(t,x);
axis([-10 10 0 2]);
xlabel('时间/s');
ylabel('振幅');
subplot 312;
plot(f,abs(y));
xlabel('频率/Hz');
ylabel('振幅');
axis([-10 10 0 200]);
subplot 313;
plot(f,angle(y));
xlabel('频率/Hz');
ylabel('相位');
axis([-5 5 -5 5]);
(3)cos(2pi * t)的傅里叶变换
clc
clear all
close all
fs=10;N=1024;
n=0:N-1;
t=n/fs;
x=cos(2*pi*t);
y=fftshift(fft(x,N)); f=n*fs/N-fs/2;
subplot 311;
plot(t,x);
axis([0 2 -1 1]);
xlabel('时间/s');
ylabel('振幅');
subplot 312;
plot(f,abs(y));
xlabel('频率/Hz');
ylabel('振幅');
subplot 313;
plot(f,angle(y));
xlabel('频率/Hz');
ylabel('相位');
3.设2
1
()0.08()0.41
H jw jw jw =
++,试用MA TLAB 画出该系统的幅频特性()H jw 和相频特性()ϕω,并分析系统具有什么滤波特性。
clc clear all close all
w=0:0.025:5;
b=[1];a=[0.08,0.4,1]; H=freqs(b,a,w); subplot(2,1,1); plot(w,abs(H));grid; xlabel('\omega(rad/s)'); ylabel('|H(j\omega)|'); title('H(jw)的幅频特性'); subplot(2,1,2);
plot(w,angle (H));grid; xlabel('\omega(rad/s)'); ylabel('\phi(\omega)'); title('H(jw)的相频特性');
该系统为带宽为5Hz的低通滤波器。
实验总结
通过此次实验我已经能充分理解并掌握了连续时间的傅立叶变换,对于一般的傅里叶计算可以使用fourier(x)来进行计算以及一些满足狄里克莱条件的函数的成图。
在实验中,对于矩形脉冲函数是可以使用fourier函数成图,但是对于cosx和单位阶跃函数是无法成图的,因为由于fourier得到为有关狄拉克函数的函数,而用ezplot进行画图时,其x在[-2*pi,2*pi]区间划分的数据没有等于1或-1得,所以得到的y数据带入求得的函数中其值全为0,故而为一值为0的直线,从而具有局限性。
但是对于fft(x,N)函数来说就不存在这样的问题,对于其中的采样频率只要满足奈奎斯特抽样定理就可以了,如果所成的图像还是出现失真的情况,多半是采样数N太少。
置于fft函数所成的图像不能关于y轴对称是因为fft只存在正频率,如果想要获得关于y轴对称的函数就要再进行fftshift变换。
通过大量的百度和自学已经让我对信号的频域转化有了更加深入的
理解和认识。