Quy tắc đặt hàng của bộ lọc


8

Có quy tắc nào để tính thứ tự bộ lọc gần đúng của FIR / IIR dựa trên tỷ lệ truyền so với tỷ lệ mẫu không? Tôi dường như nhớ đọc về nó một lần ở Đại học. Tôi nghĩ bạn có thể ước tính sơ bộ như scaler * passband / stopband.

Tôi đã làm việc để triển khai các bộ lọc FIR / IIR khác nhau và muốn một số công thức sơ bộ cho biết nếu một biến được thay đổi, thì đây là khoảng bao nhiêu vòi bạn cần để có hiệu suất tương tự.


Đối với các bộ lọc FIR có một công thức được đưa ra trong câu trả lời này .
Matt L.

Câu trả lời:


11

"Quy tắc ngón tay cái" yêu thích của tôi đối với thứ tự của bộ lọc FIR thông thấp là "quy tắc harris fred":

N=[fs/delta(f)][atten(dB)/22]

trong đó delta (f) là dải chuyển tiếp, trong cùng một đơn vị fs fs là tốc độ mẫu của atten bộ lọc (dB) là từ chối mục tiêu tính theo dB

Ví dụ: nếu bạn có dải chuyển tiếp 100 Hz trong hệ thống được lấy mẫu ở tần số 1KHz và yêu cầu loại bỏ của bạn là 50 dB trong dải dừng thì thứ tự có thể được xấp xỉ bằng:

N = 1KHz / 100Hz * 50/22 = 23 vòi (làm tròn số)

Cảm ơn bạn đã quấy rối!

Lưu ý một công thức chi tiết khác có tính đến Ripple của tài khoản là công thức của Kaiser nhờ James Kaiser từ Bell Labs, mà tôi đã đưa vào hình ảnh của mình bên dưới.

Đối với hầu hết các ứng dụng tôi đã thực hiện, cách tiếp cận harris fred rất tốt, vì đã từ chối nhất định, các bộ lọc kết quả sử dụng thuật toán thiết kế bộ lọc truyền thống như Công viên-McClellan và Remez đã vượt quá yêu cầu gợn sóng của tôi khi đáp ứng yêu cầu từ chối. (Những gì tôi thường làm là ước tính thứ tự, thiết kế bộ lọc theo thứ tự đó, kiểm tra kết quả và tăng hoặc giảm thứ tự từ đó để tinh chỉnh). Các kết quả từ các ước tính chỉ là: ước tính và có thể thay đổi rộng rãi tùy thuộc vào các thông số thiết kế tổng thể và không được coi là một giải pháp chính xác.

nhập mô tả hình ảnh ở đây

Đối với những người quen thuộc với thiết kế bộ lọc sử dụng các cách tiếp cận cửa sổ, đánh giá về ô tô hoặc cửa sổ hình chữ nhật (đó là cách cắt đơn giản) cho thấy lý do tại sao phải mất fs/Δf vòi (giống như vòi 2π/Δωnếu các đơn vị cho tần số chuẩn hóa là radian / mẫu như thường được thực hiện) để hoàn thành dải chuyển tiếp. Xem những hình ảnh dưới đây giúp giải thích điều này.

Hình ảnh đầu tiên bên dưới hiển thị tần số Sinc dự kiến ​​cho một cửa sổ hình chữ nhật theo thời gian và sau đó ở dạng rời rạc, trong đó là hàm Sinc có bí danh, với điểm chính là cho các mẫu N theo thời gian của chức năng hình chữ nhật, đáp ứng tần số sẽ có giá trị null đầu tiên tại f = 1 / N (Trong đó f là tần số chuẩn hóa với 1 là tốc độ lấy mẫu).

Freq và thời gian cho cửa sổ hình chữ nhật

Hình ảnh tiếp theo này cho thấy cách tiếp cận cửa sổ hình chữ nhật cho thiết kế bộ lọc (mà tôi không bao giờ khuyến nghị nhưng có nhiều thông tin). Biểu đồ đầu tiên ở góc trên bên trái hiển thị đáp ứng tần số mục tiêu cho bộ lọc của chúng tôi dưới dạng phản hồi "tường gạch" lý tưởng. Xin đừng nhầm lẫn rằng với "cửa sổ ô tô" (hoặc "cửa sổ hình chữ nhật") cũng là một hình chữ nhật-- cửa sổ nằm trong miền thời gian!

Để nhận ra bộ lọc như vậy, chúng tôi sẽ sử dụng đáp ứng xung của đáp ứng tần số mong muốn làm hệ số trong bộ lọc FIR của chúng tôi (các hệ số của bộ lọc là đáp ứng xung --- đưa xung vào và ra tất cả các hệ số! ). Đáp ứng xung cho đáp ứng tần số hình chữ nhật (brickwall) là FT nghịch đảo, là một hàm Sinc, trong miền thời gian, được hiển thị ở góc dưới bên trái dưới dạng "Đáp ứng xung bắt buộc". Hàm Sinc mở rộng đến cộng và trừ vô hạn, vì vậy để thực sự nhận ra bộ lọc như vậy, chúng ta sẽ cần một bộ lọc dài vô hạn và nó sẽ có độ trễ dài vô hạn. Rõ ràng là chúng tôi không thể làm điều đó, vì vậy chúng tôi cắt các hệ số thành một cái gì đó có thể thực hiện được. Bộ lọc càng dài, chúng ta càng gần đúng với đáp ứng tường gạch lý tưởng,

Cắt ngắn đáp ứng xung trong miền thời gian giống hệt nhau về mặt toán học để nhân với một cửa sổ hình chữ nhật trong miền thời gian. (Lưu ý rằng đáp ứng xung cũng bị trễ một nửa thời lượng của cửa sổ để hệ thống là nguyên nhân). Nhân trong miền thời gian tương đương với tích chập trong miền tần số. Miền tần số (FT) của đáp ứng xung trước khi cắt là đáp ứng tần số tường gạch mong muốn ban đầu của chúng tôi. Đáp ứng tần số cho cửa sổ hình chữ nhật là một hàm Sinc trong miền tần số.

Vì vậy, khi chúng tôi cắt bớt đáp ứng xung mong muốn (nhân với thời gian bằng một cửa sổ hình chữ nhật), chúng tôi sẽ tạo ra đáp ứng tần số mong muốn với hàm Sinc, dẫn đến xấp xỉ đáp ứng tần số mục tiêu của chúng tôi như được hiển thị ở góc trên bên phải của hình ảnh phía dưới.

Đáp ứng tần số sau khi cửa sổ

Nói chung, một khóa mang đi cho các hàm Sinc là null đầu tiên là 1 / T trong đó T là thời lượng của hàm hình chữ nhật. Đối với một hệ thống được lấy mẫu, null đầu tiên sẽ ở2π/NTrong đó N đại diện cho số lượng mẫu trong suốt thời gian của hàm hình chữ nhật. Trong ảnh, tần số radian được chuẩn hóa được sử dụng cho trục tần số- (nếu điều đó làm bạn bối rối, bạn chỉ cần biết2πlà tần số radian cho tốc độ lấy mẫu). Vì vậy, trong quá trình tích chập, quá trình chuyển đổi gạch sắc nét lan ra và trong trường hợp này là 0 (chúng tôiΔω) trên một tần số 2π/N! Nên ở đây

N=2π/Δω
và tất nhiên bộ lọc kém với sidelobes, v.v ... Lưu ý điều này: Quá trình chuyển đổi từ chức năng này là sắc nét nhất có sẵn cho một số vòi nhất định; nó có độ phân giải tốt nhất về tần số nhưng dải động kém nhất (loại bỏ). Các loại hình cửa sổ khác (Blackman, Blackman-harris, Kaiser (yêu thích của tôi), v.v.) sẽ cải thiện đáng kể phạm vi động nhưng luôn phải trả giá cho quá trình chuyển đổi.

N vòi để hoàn thành quá trình chuyển đổi

Vì vậy, từ trên, chúng ta thấy nguồn gốc của 2π/Δωđược sử dụng trong các công thức gần đúng và chúng tôi cũng thấy lý do tại sao có một hệ số nhân bổ sung làm tăng số lượng vòi trên mức này cho các thiết kế bộ lọc điển hình; cửa sổ hình chữ nhật sẽ cho chúng ta sự chuyển tiếp tốt nhất có thể với N vòi trong đóN=2π/Δωnhưng có sự từ chối rất kém. Nhiều vòi được sử dụng để làm mịn quá trình chuyển đổi thời gian hơn nữa ngoài quá trình chuyển đổi mạnh mẽ của cửa sổ hình chữ nhật, cung cấp khả năng loại bỏ lớn hơn với chi phí băng thông chuyển tiếp.


1
Để tránh nhầm lẫn, công thức bạn gọi là "công thức của Kaiser" thực sự là công thức cho các bộ lọc tối ưu của Công viên McClellan (thực sự được tìm thấy bởi Kaiser), nhưng không phải cho phương pháp cửa sổ Kaiser. Cái sau không có hai cái khác nhauδgiá trị nhưng chỉ có một.
Matt L.

Thật vậy, Matt làm rõ tốt vì có một phương pháp cửa sổ Kaiser. Tuy nhiên, công thức này được gọi là "Công thức của Kaiser" trong tài liệu, vì vậy độc giả không nghĩ rằng đó là cách sử dụng riêng của tôi về thuật ngữ đó. engold.ui.ac.ir/~sabahi/Advanced%20digital%20communication/...
Dan Boschen

Tuyệt vời! Có vẻ như điều đó xuất phát từ trang 48 trong cuốn sách của Fred Harris: "Xử lý tín hiệu đa năng cho các hệ thống truyền thông"?
jeremy

Các quy tắc của ngón tay cái hoặc hình ảnh? Những hình ảnh là của tôi cho một lớp học tôi làm. Tôi không có cuốn sách nào nhưng tôi là một fan hâm mộ lớn và được anh ấy giới thiệu về "quy tắc ngón tay cái" của anh ấy trong buổi thuyết trình DSP World mà anh ấy đã làm vào khoảng năm 1996. (Lưu ý rằng anh ấy nhấn mạnh rằng tên của anh ấy được viết bằng tất cả chữ thường ).
Dan Boschen

@DanBoschen Công thức cho Công viên McClellan cũng hợp lệ khi thiết kế bộ lọc băng thông FIR? Nếu không, có "quy tắc ngón tay cái" nào khác có thể được áp dụng không?
lR8n6i

3

Độ dài của bộ lọc FIR hoặc thứ tự của bộ lọc IIR tỷ lệ nghịch với tỷ lệ chiều rộng của dải chuyển tiếp (hẹp nhất, nếu nhiều) so với tốc độ mẫu, những thứ khác tương đương nhau, ngoại trừ rất ngắn hoặc rất bộ lọc thứ tự thấp.


dunno tại sao ai đó hạ cấp. tôi đã sửa nó về không.
robert bristow-johnson

những thứ khác có phần tương đương?
Ben
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.