Chương 5 Bộ lọc số có đáp ứng xung hữu hạn và vô hạn gồm có những nội dung cơ bản sau: Các mạch lọc đơn giản, mạch lọc FIR, mạch lọc FIR thông thấp, mạch lọc FIR thông cao,... Mời các bạn cùng tham khảo.
Trang 1CHƯƠNG V
Xử lý tín hiệu số nâng cao
Bộ lọc số có đáp ứng xung hữu
hạn và vô hạn
Trang 2Khái niệm
Lọc số: biến dạng sự phân bố tấn số
của các thành phần của một tín hiệu
Phân loại
FIR: hệ thống đặc trưng bởi đáp ứng xung có
chiều dài hữu hạn
IIR: Hệ thống đặc trưng bởi đáp ứng xung có
chiều dài vô hạn
Trang 3Các mạch lọc đơn giản
Trang 4Mạch lọc FIR
Mạch lọc FIR có hàm truyền dạng tổng
quát
M m
m
m z b
z
H
0 )
(
Trang 5Mạch lọc FIR thông thấp
Hàm truyền đạt
Hàm truyền này có một điểm không tại z=1 và một điểm cực tại z=0
1 1
2
1 )
H
Trang 6Mạch lọc FIR thông thấp
Đáp ứng tần số của mạch lọc này là:
2
sin 2
cos 2
cos 2
cos 2
sin
2 2
cos
2
2
1
sin cos
1 2
1 1
2
1 )
(
j e
e
2
2
cos )
H
Trang 7Mạch lọc FIR thông thấp
Đáp ứng biên độ
b=[0.5 0.5];
a=[1];
[H,w]=freqz(b,a,100);
subplot(1,2,1);plot(w/pi,abs(H));
subplot(1,2,2);plot(w/pi,angle(H));
2
cos 2
cos )
H
Trang 8Mạch lọc FIR thông thấp
Kết quả:
Tùy thuộc vào yêu cầu mà có thể sử dụng 1 lúc nhiều bộ lọc
Trang 9Mạch lọc FIR thông cao
Hàm truyền đạt
Đáp ứng tần số
1
1 2
1 )
H
) 2
sin(
)
H
Trang 10Mạch lọc FIR thông cao
Đáp ứng biên độ
) 2
sin(
) 2
sin(
) ( e j je j 2
H
Trang 11Mạch lọc IIR
1
1
1
1 2
1 )
(
z
z z
H
j
j j
e
e e
H
1
1 2
1 )
(
Trang 12Mạch lọc IIR thông thấp
alpha1=0.9; b1=[1-alpha1, 1-alpha1]; a1=[2,-2*alpha1]; alpha2=0.7; b2=[1-alpha2, 1-alpha2]; a2=[2,-2*alpha2]; alpha3=0.4; b3=[1-alpha3, 1-alpha3]; a3=[2,-2*alpha3]; [H1,w]=freqz(b1,a1,100);
[H2,w]=freqz(b2,a2,100);
[H3,w]=freqz(b3,a3,100);
subplot(2,1,1);plot(w/pi,abs(H1),'b ',w/pi,abs(H2),'r-',w/pi,abs(H3),'g-');
legend('alpha=0.9','alpha=0.7','alpha=0.4');
subplot(2,1,2);plot(w/pi,angle(H1),'b ',w/pi,angle(H2)
,'r-',w/pi,angle(H3),'g-');
legend('alpha=0.9','alpha=0.7','alpha=0.4');
Trang 13Kết quả
Trang 14Mạch lọc IIR thông cao
Hàm truyền đạt
Đáp ứng tần số
1
1 1
1 2
1 )
(
z
z z
H
j
j j
e
e e
H
1
1 2
1 )
(
Trang 15Mạch lọc IIR thông cao
alpha1=0.9; b1=[1+alpha1, -1-alpha1]; a1=[2,-2*alpha1]; alpha2=0.7; b2=[1+alpha2, -1-alpha2]; a2=[2,-2*alpha2]; alpha3=0.4; b3=[1+alpha3, -1-alpha3]; a3=[2,-2*alpha3]; [H1,w]=freqz(b1,a1,100);
[H2,w]=freqz(b2,a2,100);
[H3,w]=freqz(b3,a3,100);
subplot(2,1,1);plot(w/pi,abs(H1),'b ',w/pi,abs(H2),'r-',w/pi,abs(H3),'g-');
legend('alpha=0.9','alpha=0.7','alpha=0.4');
subplot(2,1,2);plot(w/pi,angle(H1),'b ',w/pi,angle(H2)
,'r-',w/pi,angle(H3),'g-');
legend('alpha=0.9','alpha=0.7','alpha=0.4');
Trang 16Mạch lọc IIR thông cao
Trang 17Mạch lọc IIR thông dải
Hàm truyền đạt
2 1
2
) 1
( 1
1 2
1 )
(
z z
z z
H
Trang 18Mạch lọc IIR thông dải
beta=0.3;
alpha1=0.9; b1=[1-alpha1,0, -1+alpha1];
a1=[2,-2*beta*(alpha1+1),2*alpha1];
alpha2=0.7; b2=[1-alpha2,0, -1+alpha2];
a2=[2,-2*beta*(alpha2+1),2*alpha2];
alpha3=0.4; b3=[1-alpha3,0, -1+alpha3];
a3=[2,-2*beta*(alpha3+1),2*alpha3];
[H1,w]=freqz(b1,a1,100);
[H2,w]=freqz(b2,a2,100);
[H3,w]=freqz(b3,a3,100);
subplot(2,1,1);plot(w/pi,abs(H1),'b ',w/pi,abs(H2),'r-',w/pi,a
bs(H3),'g-');
legend('alpha=0.9','alpha=0.7','alpha=0.4');
subplot(2,1,2);plot(w/pi,angle(H1),'b ',w/pi,angle(H2),'r-',w/
pi,angle(H3),'g-');
legend('alpha=0.9','alpha=0.7','alpha=0.4');
Trang 19Mạch lọc IIR thông dải
Trang 20Mạch lọc chắn dải
Hàm truyền đạt
2 1
2 1
) 1
( 1
2
1 2
1 )
(
z z
z
z z
H