You are on page 1of 25

EE2005 Tín hiệu và hệ thống

Lecture 14
Lấy mẫu & phân tích phổ tín hiệu dùng FFT

Signals and Systems  Tran Quang Viet – FEEE – HCMUT


Giới thiệu

f(kTs)
to DSP

f(t)

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Giới thiệu

y(kTs)
from
DSP
i0 y(t)

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Giới thiệu


Sample Hold
p(t)  
k 
δ(t  kTs )

f(kTs) f(kTs)

Chu kỳ lấy mẫu Ts hay tần số lấy mẫu s=2/Ts , Fs=1/Ts phải thỏa
ĐK nào?
EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Lý thuyết lấy mẫu
 Xét tín hiệu cần lấy mẫu f(t) với băng tần hữu hạn là B Hz

 Tín hiệu f(t) được lấy mẫu bằng cách nhân với chuỗi xung đơn vị
 
f (t)=f(t)p(t) f (t)=f(t)  δ(t  kTs ) f (t)   f(kT )δ(t  kT )
s s
k  n 

p(t)   δ(t  kT )
k 
s

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Lý thuyết lấy mẫu

 Phổ của tín hiệu đã được lấy mẫu

f(t)  F(ω)

2π 
p(t)  P(ω)  
Ts n 
δ(ω  nωs ); Fs =1/Ts , ωs =2πFs

  1 1 
f (t)  F(ω)= [F(ω)  P(ω)] 
2π Ts
 F(ω  nω )
n 
s

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Lý thuyết lấy mẫu

 Khôi phục tín hiệu - Định lý lấy mẫu: ĐL Nyquist, ĐL Shannon


Low-pass Filter

ωs  4πB Fs  2B; Fs =2B Nyquist rate

Tín hiệu có phổ giới hạn là B Hz có thể khôi phục chính


xác từ các mẫu của nó có được khi lấy mẫu đều đặn với
tốc độ Fs2B mẫu/s. Nói cách khác tần số lấy mẫu nhỏ
nhất là Fs=2B Hz
EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Lý thuyết lấy mẫu

 Lấy mẫu với bộ giữ mẫu bậc không:


p(t)   δ(t  kT )
k 
s

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Lý thuyết lấy mẫu

 Phổ của tín hiệu đã được lấy và giữ mẫu:

| F(ω) |

Low-pass Filter

 Khôi phục tín hiệu từ tín hiệu đã được lấy và giữ mẫu:

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Lý thuyết lấy mẫu

 Lưu ý khi lấy mẫu thực tế:


 Tín hiệu có băng tần hữu hạn: cần lấy mẫu với tốc độ lớn hơn
tốc độ Nyquist
Ideal Filter

Practical Filter

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Lý thuyết lấy mẫu
 Tín hiệu thực tế thường có băng tần vô hạn: giới hạn băng tần
bằng bộ lọc chống chồng lấn phổ

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier rời rạc (DFT)

 Mục đích: thiết lập mối quan hệ giữa các mẫu trong miền thời gian
với các mẫu trong miền tần số

1  
f(t)=  F(ω)e jωt dω F(ω)=  f(t)e jωt dt
2π  

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier rời rạc (DFT)

 Xét tín hiệu f(t) được lấy mẫu với chu kỳ Ts F(ω)
TS

 Xét tín hiệu tuần hoàn fT0(t) do lập lại f(t) với chu kỳ T0:


F(ω)
T0

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier rời rạc (DFT)
 Lấy mẫu phổ tín hiệu đã được lấy mẫu với chu kỳ 0

F(ω)
_
TS 2 F(ω)/T0
N0 mẫu
N0 mẫu
1

2 F(ω)
TST0

N 0 =T0 / Ts  ωs / ω0 F(ω)
_

F(ω) ωS
;  
ωS
Ts 2 2
EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier rời rạc (DFT)

 Biến đổi DFT thuận:

 Do f(t) chỉ tồn tại từ 0 đến T0 (tương ứng với N0 mẫu):


_ N 0 1 _ N 0 1
f (t)=  f(kTs )δ(t  kTs ) F(ω)=  f(kTs )e  jωkTs
k=0 k=0

 Mặt khác trong đoạn -s/2 đến s/2 (tương ứng với N0 mẫu):
_
F(ω) _ N 0 1
F(ω)  F(rω0 )  Ts F(rω0 )=Ts  f(kTs )e  jrω0kTs
Ts k=0

 Đặt 0=0Ts=2/N0; Fr=F(r0): mẫu thứ r của F(); fk=Tsf(kTs):


mẫu thứ k của f(t); ta có:
N 0 1
Fr =  f k e  jrΩ 0k (Biến đổi DFT thuận)
k=0
EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier rời rạc (DFT)
jmΩ0 r
 Biến đổi DFT ngược: nhân DFT thuận với e sau đó lấy tổng:
N 0 1 N 0 1  N 0 1  jm r
jm0 r  jrΩ0 k
 Fr e =    fk e e 0

r=0 r=0  k=0 

N 0 1 N 0 1  N0 1 j(mk)Ω r 
 Fr e jm0r =  fk   e 0

r=0 k=0  r=0 
N 0 1
jm0r 0; k  m
 Fr e =
r=0  N 0f k  N0f m ;k  m

N 0 1
1
fk =  Fr e jrΩ0 k (Biến đổi DFT ngược)
N0 r=0
EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier nhanh (FFT)
Đưa ra bởi Turkey and Cooley năm 1965, N0 phải là lũy thừa của 2
Giảm khối lượng tính toán: N 02  N 0 log N 0
N 0 1 N 0 1
1 Nhân: N0
fk   Fr e jr0k Fr   f k e  jr0k
N0 r 0 k 0 Cộng: N0-1

Tổng cộng cho các hệ số: N0N0 phép nhân và N0(N0-1) phép cộng

 Đặt: WN 0  e  j  2 / N 0   e  j0

 Các biểu thức DFT được viết lại:


N 0 1 N 0 1
1
Fr   f kWNkr0 fk   FrWN0kr
k 0
N0 r 0
EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier nhanh (FFT)

 Chia fk thành 2 chuỗi: chẵn và lẻ theo số thứ tự:


f 0 , f 4 , f6 ,..., f N 0 2 f1 , f3 , f5 ,..., f N 0 1
              
sequence g k sequence h k

Biểu thức DFT được viết lại:


N0 N0
2 1 2 1
Fr   f 2kWN20kr   f 2k 1WN(2 k 1) r
0
k 0 k 0

Ta có: W N0  WN20
2

N0 N0
2 1 2 1
 Fr   f 2kW Nkr0  WNr 0  f 2k 1W Nkr0  G  W r H
2 2 r N0 r
k 0 k 0

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier nhanh (FFT)
N0 N0
2 1 2 1
 Fr   f 2kW Nkr0  WNr 0  f 2k 1W Nkr0  Fr  Gr  WNr 0 H r
2 2
k 0 k 0
(0  r  N 0  1)
 Do Gr và Hr là DFT N0/2 điểm nên nó có tính tuần hoàn:
Gr  N0  Gr & H r  N0  H r
2 2

r  N20 N0
Mặt khác: WN  WN WNr 0  e  j WNr 0  WNr 0
2

0 0

r  N20 r
 Fr  N0  Gr  N0  WN H r  N0 F N0  G  W
 r 2 r N0 H r
2 2 0 2

N0
Fr  Gr  WNr 0 H r ; 0r 2
1

N0
Fr  N0  Gr  WNr 0 H r ; 0  r  2
1
2

 Áp dụng tính DFT N0=8 điểm:


EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier nhanh (FFT)

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier nhanh (FFT)

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier nhanh (FFT)

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier nhanh (FFT)

N0
Fr  Gr  WNr 0 H r ; 0  r  2
1

N0
Fr  N0  Gr  WNr 0 H r ; 0r 2
1
2

 Số phép toán nhân và cộng dùng để tính DFT dùng giải thuật FFT:

 Số phép toán nhân: N 0 log 2 N 0


2
 Số phép toán cộng: N 0 log 2 N 0

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier nhanh (FFT)

Fs = 1000;T = 1/Fs;
L = 1000;
t=(-L/2:L/2)*T;
y=2*sin(2*pi*100*t)
+sin(2*pi*200*t);
NFFT = 2^nextpow2(L);
Y = fft(y,NFFT)/Fs;
f = Fs/2*linspace(-
1,1,NFFT);
plot(f,abs(fftshift(Y)
),'Linewidth',2);
title('Spectrum of
y(t)');xlabel('Frequen
cy (Hz)')
ylabel('|Y(f)|');grid
on;

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT
Biến đổi Fourier nhanh (FFT)

Fs = 1000;T = 1/Fs;
L = 10000;
t=(-L/2:L/2)*T;
y=2*sin(2*pi*100*t)
+sin(2*pi*200*t);
NFFT = 2^nextpow2(L);
Y = fft(y,NFFT)/Fs;
f = Fs/2*linspace(-
1,1,NFFT);
plot(f,abs(fftshift(Y)
),'Linewidth',2);
title('Spectrum of
y(t)');xlabel('Frequen
cy (Hz)')
ylabel('|Y(f)|');grid
on;

EESignals
2015 : and
Signals & Systems
Systems 
Tran
TranQuang
QuangViet
Viet –– FEEE
FEEE –- HCMUT

You might also like