Những bộ lọc này là thiết yếu cho ứng dụng như giảm nhiễu, tín hiệu mịn và điều khiển hệ thống. Hiểu được quá trình bảo đảm rằng bộ lọc hoạt động hiệu quả trong nguồn lực hạn chế của vi điều khiển vi mô.

Hiểu các bộ lọc IIR số

Bộ lọc IIR là bộ lọc đệ quy sử dụng các giá trị nhập và xuất trước để tính toán kết xuất hiện. Các giá trị này được đặc trưng bởi cơ chế phản hồi của họ, cho phép họ có khả năng lọc sắc với ít hệ số hơn so với bộ lọc FIR (Nempulse). Phương trình khác biệt tổng quát cho bộ lọc IIR là:

y [n] = (b0 * x [n] + (b1 * x [n-1) + ... + (bM * x[n-M] - (a1 * y [n-n] - ... (aN * y [n-N] )

Bước để kiểm soát vi mô

  • Mục lục: [FLT: 1] Xác định các đặc tả lọc như là tần số cắt giảm, thứ tự và gõ (từ- nhập, cầu cao, v. v.). Hãy dùng công cụ như là MATLAB hay thiết kế bộ lọc trực tuyến để tính toán các hệ số (b và a).
  • Convert Coactions: Phóng các hệ số lọc thích hợp cho việc thực hiện điểm cố định nếu cần thiết, xem xét kích cỡ từ của bộ điều khiển vi mô.
  • Đặt biến [FLT: 1] thiết lập bộ đệm cho các giá trị nhập và kết xuất trước, và hệ số lọc khởi tạo trong bộ nhớ của bộ điều khiển vi mô.
  • [FLT: 0] Mặc định Các Tính toán Sự khác biệt:[FLT: 1] Viết mã để tính toán kết xuất hiện thời bằng cách sử dụng các giá trị và hệ số đã lưu, cập nhật bộ đệm mỗi lặp lại.
  • Thay đổi khả năng thực hiện:[FLT: 1] Dùng số học cố định, tránh hoạt động điểm nổi nếu có thể, và tối ưu hóa bộ nhớ để đảm bảo khả năng xử lý thời gian thực.
  • [FLT: 0]Test và Coquiate:) Thử bộ lọc với các tín hiệu đã biết và xác nhận kết xuất. Điều chỉnh hệ số hoặc thực hiện khi cần thiết.

Ví dụ: Sự tăng cường cơ bản

Đây là một ví dụ đơn giản về việc thực hiện một bộ lọc cầu thấp ở C cho một bộ điều khiển vi mô:

/ Cofums cho bộ lọc

float b0 = 1, b1 = 1, a1 = - 0. 8;

prev input = 0, prev output = 0;[FLT: 1]

Bộ lọcfloat (float đầu vào)

Xuất xuất = b0 * nhập + b1 * prev input - a1 * prev put;

prev input = đầu vào;

prev head = đầu ra;

đầu ra lại

Kết luận

Việc sử dụng bộ lọc kỹ thuật số trong các dự án kiểm soát vi mô đòi hỏi thiết kế cẩn thận, tính toán hệ số và mã hóa hiệu quả. Bằng cách theo các bước có hệ thống và tối ưu hóa các thực hiện, các nhà phát triển có thể tạo ra bộ lọc hiệu quả để cải thiện chất lượng tín hiệu trong nhiều ứng dụng.