第六章 利用Matlab对信号进行频域分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
➢ (1)确定周期信号的基本周期T0
➢ (2)计算一个周期内的抽样点数N。若周期信号的最高次谐频为P次
谐 则频认为p 集0 中则信频号谱9中0%有((或2p根+1据)工根程普允线许;而若定周)期以信上号的的能频量谱的无前限(宽p,+1)
次谐波为近似的频谱范围,其余谐波可以忽略。取
N2p1
➢ (3)对连续周期信号以抽样间隔T进行抽样,T T 0 。 ➢ (4)利用FFT函数对x[k]作N点FFT运算,得到XN[m].
在有限长度序列的DTFS为:
X [m ] 1 [ 0 ,4 ,0 ,0 ,0 ,0 ,0 ,8 e j 3 ,0 ,8 e j 3 ,0 ,0 ,0 ,0 ,0 ,4 ] 1 6
.
➢ N=16;n=0:N-1; ➢ x=cos(pi/8*n+pi/3)+0.5*cos(7*pi/8*n); ➢ X=fft(x)/N; ➢ subplot(2,1,1); ➢ stem(n-N/2,abs(fftshift(X))); ➢ ylabel('Magnitude');xlabel('Frequency(rad)'); ➢ subplot(2,1,2); ➢ stem(n-N/2,angle(fftshift(X))); ➢ ylabel('phase');xlabel('frequency(rad)');
➢
(5)最后求得连续周期信号的频谱
X(n0)
1 X[m] N
➢ 例题3 已知周期信号 x (t) c o s ( 1 0t) 2 s in ( 1 8t),计算其频谱。
➢ 解:所信以号取的N基≥频(2×0 92+r1ad=/1s周9)期为1s;最高次谐波为9018rad/s
.
➢ Example ➢ T0=1;N=19;T=T0/N; ➢ t=0:T:T0; ➢ x=cos(2*pi*5*t)+2*sin(2*pi*9*t); ➢ Xm=fft(x,N)/N; ➢ f=(-(N-1)/2:(N-1)/2)/N/T;%% ➢ figure; ➢ stem(t,x); ➢ figure; ➢ stem(f,abs(fftshift(Xm))); ➢ xlabel('f(Hz)');ylabel('Magnitude');title('幅度谱');
第六章 利用Matlab对信号进行频域分析
.
6.1离散时间周期信号:离散时间 傅里叶级数
基本周期为N,基频为Ω0=2π/N的周期信号x[n]的离散时间
傅里叶级数为:
N1
x[n] X[k]ejk0n
k0
其中
X[k]1N1x[n]ejk0n Nn0
.
➢ 在matlab中可以用fft和ifft来求解离散时间傅 里叶级数。长度为N的矢量x可以表示一个 周期为N的离散时间信号,则它的离散傅里 叶级数为:
j ( n ) 33
2
1
e
j j n
3e 3
1
j j n
e 3e 3
2
2
3
x[n] X[k]ejkn/3 k2 X[2]ej2n/3 X[1]ejn/3 X[0]
X[1]ejn/3 X[2]ej2n/3 X[3]ejn
.
6.2 利用DTFT分析模拟信号频谱
➢ 连续周期信号相对于离散周期信号,连续 非周期信号相对于离散非周期信号,可以 通过时域抽样定理建立相互关系。因此, 在离散信号DTFT分析方法基础上可以增加 时域抽样的步骤,就可以实现连续信号的 DTFT分析。
T
1 2 fm
Байду номын сангаас
0.02s
时域信号无限长,因此必须截断到有限长。该信 号单调衰减,到了t=6s后几乎衰减到0,取Tp=6s 进行分析,则截断点数为 N TP 300,采用矩形窗, 确定频域抽样点数为512点 T
.
➢ fsam=50;Tp=6;N=512;T=1/fsam; ➢ t=0:T:Tp; ➢ x=exp(-1*t); ➢ X=T*fft(x,N); ➢ subplot(2,1,1);plot(t,x); ➢ xlabel('t');title('时域信号'); ➢ w=(-N/2:N/2-1)*(2*pi/N)*fsam;%%%% ➢ y=1./(j*w+1); ➢ subplot(2,1,2);plot(w,abs(fftshift(X)),w,abs(y),'r-.'); ➢ title('幅度谱');xlabel('w'); ➢ legend('理论值','计算值',0); ➢ axis([-10,10,0,1.4]);
.
➢ 周期为T0的连续时间周期信号x ( t ) 的频谱函为 , 定X义(n为0 )
X(n) 1 T0 x(t)ejn0tdt T0 0
➢ 式中T0是信号的周期 称为0 信 2T号0 的 2基 f频0
连续周期信号的频谱 X (n0 ) 为非周期离散普,普线间 隔为 0
.
➢ 相比离散周期信号的DFT分析方法,连续周期信号的DFT分析方法增 加了时域抽样环节。如果不满足抽样定理,将出现混叠误差。连续周 期信号分析步骤为:
➢ N=-11:12; ➢ x=ones(1,24)+sin(N*pi/12+3*pi/8); ➢ X=fft(x)/24 ➢ stem(N,fftshift(X)); ➢ xrecon=ifft(X)*24; ➢ xrecon(1:4) ➢ figure; ➢ stem(N,fftshift(xrecon))
.
%练习 利用观察法确定信号x[n]=cos(πn/3+ π/4)的DTFS X[n]的周期为N=6,利用欧拉公式得到
e e j ( n ) 33
j(
n
)
33
x[n]
2
1
j j n
e 3e 3
1
j j n
e 3e 3
2
2
从k=-2到k=3求和
.
j( n )
x[n] e e 3 3
.
➢ 练习 ➢ 1连续求以下信号的DTFS的系数
x [ n ] c o s ( n /3 0 ) 2 s i n ( n /9 0 )
➢ 2已知一个信号在一个周期内的DTFS系数由下式给 出X[k]=(1/2)k,假设N=10,求出时域信号x[n]。
.
➢ 例题2
➢ 已知一个周期序列,x[n]cos(n)0.5cos(7n)
.
➢ 例4: 利用DTFT近似分析连续信号x(t)etu(t) 的幅 度谱并与理论值比较
➢ 解:此信号的频谱为 X( j) 1 ,幅度谱为
X( j) 1
j 1
2 1
此信号的频谱为无限宽且单调衰减,当 2 2 5 ra d/s
X(j50) 0.0064 时,已经衰减到很小,因此初步选取
fm=25Hz为近似最高频率,则抽样间隔
.
83
8
利用FFT计算它的离散时间傅里叶级数
理论计算可得
x[n] cos( n )0.5cos(7 n)
83
8
j( n )
j( n )
j(7 n)
j(7 n)
e 8 3 e 8 3 e 8 e 8
2
4
1
j j n
(8e 3e 8
j jn
j 7 n
8e 3e 8 4e 8
j 7 n
4e 8 )
16
得到离散序列 x [ k ] ➢ (2)确定信号截断长度M及窗函数的类型,得到
有限长度M点离散序列 xM[k]x[k]w[k] ➢ (3)确定抽样点数N,要求N≥M。 ➢ (4)利用FFT函数进行N点FFT计算得到N点的
X[m]. ➢ (5)由X[m]可以得到连续信号的频谱 X ( j ) 样点
的近似值 X(j)|m2TX[m] NT
DFT分析方法增加了时域抽样环节。如果不满足抽样定理,会出
现混叠误差。如果信号在时域加窗截断过程中,窗口宽度(截断
长度)或窗口类型不合适,则会产生较大的频率泄露而影响频谱
分辨率。因此确定抽样间隔T和相应的截断长度是决定DTFT能否
正确分析信号频谱的关键。
.
➢ 连续非周期信号的分析步骤: ➢ (1)根据时域抽样定理,确定时域抽样间隔T,
.
➢ 练习 ➢ 对于连续时间周期信号
x(t)=sin(4πt)+sin(10 πt)+cos(16 πt)+cos(24 πt) 求其频谱
.
6.3利用DTFT计算连续非周期信号的频谱
➢ 连续非周期信号 x ( t ) 的频谱函数 X ( j ) 是连续谱。
定义为:X(
j)
x(t)ejtdt
相比离散时间非周期信号的DTFT分析方法,连续非周期信号的
➢ X=fft(x)/N ➢ 离散时间傅里叶级数的系数X是长度为N的
矢量X。以下命令 ➢ x=ifft(X)*N; ➢ 产生时域波形一个周期的矢量x.
.
➢ 例题1 求离散时间傅里叶级数的系数,信号
x [n ] 1 s in (n/1 2 3/8 )
➢ 周期为24,可以用以下命令来求离散时间傅里叶级 数的系数