1. Trang chủ
  2. » Giáo Dục - Đào Tạo

(Tiểu luận) báo cáo bài tập lớn môn xử lý tín hiệu số bài tập 3 thiết kế bộ lọc fir dải chặn

15 16 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết kế bộ lọc FIR dải chặn
Tác giả Vũ Lê Hoàng, Nguyễn Viết Tuấn Anh, Nguyễn Quyết Thắng, Lưu Minh Hiển
Người hướng dẫn Trần Tuấn Anh
Trường học Học viện công nghệ bưu chính viễn thông
Chuyên ngành Xử lý tín hiệu số
Thể loại báo cáo
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 15
Dung lượng 2,15 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tần số giới hạn giữa dải thông và dải chặn gọi là tần số cắt và thường được ký hiệu là c.2.. Ý nghĩa và mục đích- Ý nghĩa: Bộ lọc là thiết bị quan trọng trong xử lý tín hiệu số, cho phép

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA KỸ THUẬT ĐIỆN TỬ 1

BÁO CÁO BÀI TẬP LỚN

MÔN XỬ LÝ TÍN HIỆU SỐ Bài Tập 3 : Thiết kế bộ lọc FIR dải chặn

Thành viên: Vũ Lê Hoàng – B22DCKH046

Nguyễn Viết Tuấn Anh – B22DCCN038 Nguyễn Quyết Thắng – B22DCCN813 Lưu Minh Hiển – B22DCCN290

Trang 2

Hà Nội – 2023

I Cơ sở lý thuyết

A Bộ lọc số lý tưởng

1 Khái niệm

Khái niệm về dải thông và dải chặn: Dải thông là dải tần số mà hệ xử lý

số cho tín hiệu số đi qua, dải chặn là dải tần số mà hệ xử lý số không cho tín hiệu số đi qua

Đối với hệ xử lý số lý tưởng: dải thông 2 là vùng tần số mà |H(ej )|= 1, còn dải chặn |H(ej )|= 0 Tần số giới hạn giữa dải thông và dải chặn gọi là tần số cắt và thường được ký hiệu là c

2 Ý nghĩa và mục đích

- Ý nghĩa: Bộ lọc là thiết bị quan trọng trong xử lý tín hiệu số, cho phép loại bỏ các tần số không mong muốn và lọc ra các tần số cần thiết từ tín hiệu Việc thiết kế bộ lọc giúp xử lý, lọc và phân tích tín hiệu một cách hiệu quả

- Mục đích:

 Loại bỏ nhiễu, làm sạch tín hiệu

 Phân tích thành phần tần số của tín hiệu

 Truyền tải thông tin trong dải tần số mong muốn

 Tách rời các tín hiệu có cùng băng tần

 Chuyển đổi dải băng tần của tín hiệu

3 Bộ lọc chặn dải lý tưởng

- Các thông số của bộ lọc chặn dải lý tưởng.

Trang 3

B Bộ lọc FIR

- Bộ lọc FIR (Finite Impulse Response) là một loại bộ lọc trong xử lý tín

hiệu có phản ứng hồi quy hữu hạn Các bộ lọc FIR có một số đặc điểm

cơ bản:

Hồi quy hữu hạn: Các bộ lọc FIR có đáp ứng xung có độ dài hữu hạn,

không có phản ứng vô hạn như các bộ lọc IIR Điều này có nghĩa là nó chỉ phản ứng với một tín hiệu đầu vào trong một khoảng thời gian hữu hạn và không tạo ra vòng lặp phản hồi

Dễ thiết kế: Bộ lọc FIR thường dễ thiết kế hơn so với các bộ lọc IIR,

vì chúng không có phần tử phản hồi và không gây ra vấn đề ổn định có thể xảy ra trong các bộ lọc IIR

Tính ổn định: Bộ lọc FIR thường ổn định hơn vì không có các vòng

lặp phản hồi có thể gây ra các vấn đề ổn định như ở các bộ lọc IIR

Phản ứng đáp ứng thời gian và tần số: Với bộ lọc FIR, bạn có thể

đạt được một đáp ứng tần số cụ thể và kiểm soát thời gian trễ

Khả năng thực hiện các chức năng lọc phức tạp: Các bộ lọc FIR có

thể thực hiện các chức năng lọc phức tạp, bao gồm lọc thông cao, lọc thông thấp, lọc thông bandpass, và các chức năng lọc khác một cách hiệu quả

Khả năng triệt tiêu rõ ràng tín hiệu nhiễu: Do tính chất của chúng,

các bộ lọc FIR có khả năng tách rõ ràng giữa tín hiệu và nhiễu

Trang 4

Có 2 dạng xung:

- Đáp ứng xung h(n) có 2 trường hợp:

Trang 5

- 3 kiểu phương pháp hay gặp trong bộ lọc FIR:

 Cửa sổ

 Lấy mẫu tần số

 Least equare error

II Thiết kế bộ lọc FIR chặn dải

1 Phương pháp cửa sổ.

- Các bước thực hiện

B1: Khai báo các biến và tham số:

Khai báo tần số lấy mẫu fs

Khai báo thời gian t từ 0 đến 1 với khoảng cách 1/fs

B2: Tạo tín hiệu đầu vào:

Sử dụng hàm chirp để tạo tín hiệu chirp trong khoảng thời gian t Gán kết quả cho biến chirp_signal

B3: Thiết kế bộ lọc FIR:

Chọn hàm đáp ứng xung là hamming

Độ dài bộ lọc là N+1

Tính toán hệ số bộ lọc và gán vào biến b

B4: Vẽ đáp ứng xung của bộ lọc:

Sử dụng hàm freqz với tham số b, 1, 1024, fs

B5: Áp dụng bộ lọc lên tín hiệu:

Dùng hàm filter với tham số b, 1, chirp_signal

Gán kết quả cho biến filtered_signal

B6: Vẽ và so sánh kết quả:

Vẽ 2 subplot để so sánh tín hiệu đầu vào và đầu ra

- Mã giả (Matlab):

% Thiết kế bộ lọc FIR sử dụng cửa sổ Hamming

fs = 1000; % Tần số lấy mẫu

Trang 6

fpass = 100; % Tần số cắt chặn dải chuyển qua fstop = 200; % Tần số cắt chặn dải chặn lại

N = 100; % Bậc bộ lọc

% Tạo tín hiệu đầu vào (chirp signal)

t = 0:1/fs:5; % Thời gian từ 0 đến 5 giây

f0 = 50; % Tần số ban đầu

f1 = 250; % Tần số kết thúc

chirp_signal = chirp(t, f0, 5, f1, 'linear');

% Thiết kế bộ lọc FIR sử dụng hàm fir1

f_normalized = [fpass/(fs/2) fstop/(fs/2)];

b = fir1(N, f_normalized, 'stop', hamming(N + 1));

% Vẽ đáp ứng xung của bộ lọc FIR

freqz(b, 1, 1024, fs);

% Áp dụng bộ lọc lên tín hiệu đầu vào

filtered_signal = filter(b, 1, chirp_signal);

% Vẽ tín hiệu đầu vào và tín hiệu đầu ra

figure;

subplot(2,1,1);

plot(t, chirp_signal);

title('Tín hiệu đầu vào (Chirp)');

xlabel('Thời gian');

ylabel('Biên độ');

subplot(2,1,2);

plot(t, filtered_signal);

title('Tín hiệu đầu ra (Filtered)');

xlabel('Thời gian');

ylabel('Biên độ');

Kết quả:

- Đáp ứng tần số

Trang 7

Discover more

from:

GDQP D22

Document continues below

Giáo Dục Quốc

Phòng HCM

Học viện Công nghệ…

4 documents

Go to course

Trang 8

- So sánh tín hiệu vào / ra:

TỪ KHÓA HP1 VÀ 2 - Từ khóa học phần 1 và 2

Giáo Dục Quốc Phòng… 100% (1)

34

03 18 kiemtra 2 Lưu Gia Bảo

Giáo Dục Quốc

8

C From Control Structures through…

Giáo Dục Quốc

1269

[GR] Answers to Questions within the…

Autómatas Programables 94% (50)

24

Copy of Chicken Genetics SE

ap us history 100% (7)

4

Cambridge Data Form West 2022 thru 2023

AP Biology 100% (6)

2

Trang 9

2 Lấy mẫu tần số

- Các bước thực hiện:

B1: Khai báo các tham số:

Tần số lấy mẫu fs = 1000Hz

Tính tần số Nyquist là fs/2 = 500Hz

B2: Thiết kế thông số bộ lọc:

Tần số băng thông qua f_pass = 100Hz Tần số băng thông dừng f_stop = 300Hz

B3: Chuyển đổi tần số sang dạng từ 0 đến 1:

f_pass_normalized = f_pass/Nyquist = 0.2 f_stop_normalized = f_stop/Nyquist = 0.6

B4: Thiết kế bộ lọc FIR:

Bậc bộ lọc filter_order = 50

Sử dụng hàm fir2 thiết kế theo thông số trên

B5: Vẽ đáp ứng tần số của bộ lọc:

Sử dụng hàm freqz

B6: Tạo tín hiệu đầu vào:

Trang 10

Dùng hàm chirp tạo tín hiệu từ 0-400Hz

B7: Áp dụng bộ lọc lên tín hiệu:

Dùng hàm filter

B8: Vẽ và so sánh kết quả đầu vào và đầu ra.

- Mã giả:

% Thiết kế bộ lọc FIR chặn dải

fs = 1000; % Tần số lấy mẫu

Nyquist = fs/2; % Tần số Nyquist

% Thiết kế thông số bộ lọc

f_pass = 100; % Tần số cắt băng thông chuyển qua

f_stop = 300; % Tần số cắt băng thông dừng lại

% Chuyển đổi tần số cắt sang dạng tần số rất nhỏ - nằm trong khoảng

từ 0 đến 1

f_pass_normalized = f_pass / Nyquist;

f_stop_normalized = f_stop / Nyquist;

% Thiết kế bộ lọc FIR

filter_order = 50; % Bậc bộ lọc

filter_coefficients = fir2(filter_order, [f_pass_normalized,

f_stop_normalized], 'stop' );

% Vẽ đáp ứng tần số của bộ lọc

freqz(filter_coefficients, 1, 1024, fs);

% Tạo tín hiệu dạng chirp đầu vào

t = 0:1/fs:1-1/fs;

input_signal = chirp(t, 0, 1, 400); % Tín hiệu dạng chirp từ 0Hz đến 200Hz

% Áp dụng bộ lọc FIR lên tín hiệu vào

output_signal = filter(filter_coefficients, 1, input_signal);

% Vẽ tín hiệu vào và ra

figure;

subplot(2,1,1);

plot(t, input_signal);

title('Tín hiệu đầu vào (Chirp)');

xlabel('Thời gian');

Trang 11

ylabel('Biên độ');

subplot(2,1,2);

plot(t, output_signal);

title('Tín hiệu đầu ra sau khi áp dụng bộ lọc FIR'); xlabel('Thời gian');

ylabel('Biên độ');

- Đáp ứng xung:

- So sánh tín hiệu đầu vào / ra:

Trang 12

3 Least equare error

- 1 Xác định thông số:

fs: Tần số lấy mẫu

f_pass: Tần số cắt thấp của dải chặn

f_stop: Tần số cắt cao của dải chặn

delta_f: Độ lệch tần số

2 Tính toán thông số cho bộ lọc:

Chuẩn hóa các tần số và độ lớn tương ứng:

frequencies = [0, f_pass - delta_f, f_pass, f_stop, f_stop + delta_f, fs/2];

magnitudes = [1, 1, 0, 0, 1, 1];

3 Xác định bậc của bộ lọc FIR:

filter_order: Số lượng hệ số của bộ lọc FIR

4 Thiết kế bộ lọc FIR:

Trang 13

Sử dụng hàm firls

5 Tạo tín hiệu đầu vào:

Sử dụng các thông số như thời gian mẫu, tần số bắt đầu và kết thúc để tạo tín hiệu đầu vào,

6 Vẽ đáp ứng tần số của bộ lọc:

7 Vẽ đồ thị của tín hiệu đầu vào và đầu ra:

- Mã giả:

% Thiết kế bộ lọc FIR chặn dải sử dụng phương pháp Least Equare error

fs = 1000; % Tần số lấy mẫu

f_pass = 100; % Tần số cắt thấp của dải chặn

f_stop = 150; % Tần số cắt cao của dải chặn

delta_f = 20; % Độ lệch tần số

% Tính các thông số cho bộ lọc

frequencies = [0, f_pass - delta_f, f_pass, f_stop, f_stop + delta_f, fs/2]; % Tần số chuẩn hóa

magnitudes = [1, 1, 0, 0, 1, 1]; % Độ lớn tần số tương ứng

% Bậc của bộ lọc FIR

filter_order = 100;

% Thiết kế bộ lọc FIR sử dụng phương pháp Least Equare error filter_coefficients = firls(filter_order, frequencies / (fs/2), magnitudes);

% Tạo tín hiệu chirp đầu vào

t = 0:1/fs:1-1/fs;

f0 = 20;

f1 = 200;

input_signal = chirp(t, f0, 1, f1);

% Áp dụng bộ lọc FIR vào tín hiệu đầu vào

output_signal = filter(filter_coefficients, 1, input_signal);

% Vẽ đáp ứng tần số của bộ lọc

freqz(filter_coefficients, 1, 1024, fs);

% Hiển thị tín hiệu đầu vào và đầu ra

Trang 14

subplot(2,1,1);

plot(t, input_signal);

title('Tín hiệu đầu vào (Chirp)'); xlabel('Thời gian');

ylabel('Biên độ');

subplot(2,1,2);

plot(t, output_signal);

title('Tín hiệu đầu ra sau lọc FIR'); xlabel('Thời gian');

ylabel('Biên độ');

- Đáp ứng xung:

Trang 15

- So sánh 2 tín hiệu đầu vào / ra :

Ngày đăng: 26/12/2023, 04:54

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w