MATLAB ỨNG DỤNG TRONG VIỄN THÔNG - Trang 159

Thiết kế các bộ lọc

138

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Tan so chuan hoa

B

ien d

o

Hình 10.8.

Thiết kế các bộ lọc FIR nhiều dải tần
Trong trường hợp này, ta dùng hàm fircls với cú pháp như sau:

>> b = fircls(n,f,a,up,lo)

trong đó n là bậc của bộ lọc, f là một vector xác định các tần số ranh giới giữa các dải tần, a
là vector xác định biên độ mong muốn trong các dải tần và up, lo lần lượt là các vector xác
định các giới hạn trên và dưới của biên độ trong các dải tần nói trên. Các giá trị tần số đều là
tần số chuẩn hoá.
Ví dụ 10-9. Thiết kế bộ lọc FIR bậc 129 với các mô tả như sau:
Dải tần từ 0 -0,3: biên độ bằng 0, giới hạn trên 0,005, giới hạn dưới -0,005.
Dải tần từ 0,3 -0,5: biên độ bằng 0,5, giới hạn trên 0,51, giới hạn dưới 0,49.
Dải tần từ 0,5 -0,7: biên độ bằng 0, giới hạn trên 0,03, giới hạn dưới -0,03.
Dải tần từ 0,7 -0,9: biên độ bằng 1, giới hạn trên 1,02, giới hạn dưới 0,98.

Dải tần từ 0,9 -1: biên độ bằng 0, giới hạn trên 0,05, giới hạn dưới -0,05.

n = 129; % Bậc bộ lọc

f = [0 0.3 0.5 0.7 0.9 1]; % Các tần số ngưỡng

a = [0 0.5 0 1 0]; % Biên độ mong muốn

up = [0.005 0.51 0.03 1.02 0.05]; % Giới hạn trên của biên độ

lo = [-0.005 0.49 -0.03 0.98 -0.05]; % Giới hạn dưới của biên độ

b = fircls(n,f,a,up,lo); % Các hệ số bộ lọc

[hh,ff] = freqz(b,1,512,2); % Vẽ đáp ứng tần số

plot(ff,abs(hh),'b-');grid

xlabel('Tan so chuan hoa');

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.