Bộ lọc Kalman EKF

Một phần của tài liệu THÍ NGHIỆM HÀNG KHÔNG 3 bài báo cáo bài THÍ NGHIỆM máy BAY mô HÌNH bài THÍ NGHIỆM đo LƯỜNG QUÁN TÍNH IMU (Trang 59 - 65)

CHƯƠNG 2 BÀI THÍ NGHIỆM ĐO LƯỜNG QUÁN TÍNH IMU

2.1.2. Bộ lọc Kalman EKF

2.1.2.1 Giới thiệu

Lọc Kalman là một thuật tốn cung cấp ước tính của một số biến chưa biết dựa trên các phép đo được quan sát theo thời gian. Bộ lọc Kalman đã và đang chứng minh tính hữu ích của nó trong các ứng dụng khác nhau. Bộ lọc Kalman có hình thức tương đối đơn giản và u cầu sức mạnh tính tốn nhỏ. Tuy nhiên, những người không quen thuộc với lý thuyết ước lượng để hiểu và thực hiện các bộ lọc Kalman vẫn không dễ dàng. Trong khi tồn tại một số tài liệu xuất sắc như giải quyết vấn đề đạo hàm và lý thuyết đằng sau bộ lọc Kalman, chương này tập trung vào một quan điểm thực tế hơn.

Hai chương sau sẽ lần lượt giới thiệu các thuật toán của bộ lọc Kalman và bộ lọc Kalman mở rộng, bao gồm các ứng dụng của chúng. Với các mơ hình tuyến tính có nhiễu Gaussian cộng thêm, bộ lọc Kalman cung cấp các ước tính tối ưu. Điều hướng bằng hệ thống vệ tinh dẫn đường toàn cầu (GNSS) sẽ được cung cấp như một ví dụ triển khai

42

của bộ lọc Kalman. Bộ lọc Kalman mở rộng được sử dụng cho các vấn đề phi tuyến như theo dõi mục tiêu theo góc mang và điều hướng tham chiếu địa hình (TRN). Cách thực hiện các thuật tốn lọc cho các ứng dụng như vậy sẽ được trình bày chi tiết.

2.1.2.2 Bộ lọc Kalman

Định nghĩa vấn đề

Bộ lọc Kalman được sử dụng để ước tính trạng thái dựa trên hệ thống động lực học tuyến tính ở định dạng khơng gian trạng thái. Mơ hình q trình xác định sự phát triển của trạng thái từ thời gian k−1 đến thời gian k:

(1)

Trong đó:

• F là ma trận chuyển đổi trạng thái được áp dụng cho vectơ trạng thái trước

đó xk−1

• B là ma trận đầu vào điều khiển được áp dụng cho vectơ điều khiển

• là vectơ nhiễu quá trình được giả định là Gaussian trung bình bằng 0 với hiệp phương sai Q,

Mơ hình q trình được ghép nối với mơ hình đo lường mơ tả mối quan hệ giữa trạng thái và phép đo ở bước thời gian hiện tại k như:

(2)

Trong đó:

• là vectơ đo lường,

H là ma trận đo lường, và

• là véc tơ tiếng ồn đo lường được giả định là Gaussian trung bình bằng 0 với

43

Lưu ý rằng đôi khi thuật ngữ "đo lường" được gọi là "quan sát" trong các tài liệu khác nhau.

Vai trị của bộ lọc Kalman là cung cấp ước tính về ở thời điểm k , với ước tính ban đầu là x0, một loạt các phép đo

1, ,...,2 k

z z z và thông tin của hệ thống được mô tả bởi F, B, H, Q và R . Lưu ý rằng các chỉ số con của các ma trận này được bỏ qua ở đây bằng cách giả định rằng chúng bất biến theo thời gian như trong hầu hết các ứng dụng. Mặc dù ma trận hiệp phương sai được cho là phản ánh số liệu thống kê của tiếng ồn, nhưng số liệu thống kê thực sự của tiếng ồn vẫn chưa được biết đến hay không Gaussian trong nhiều ứng dụng thực tế. Vì thế, Q và R thường được sử dụng làm thơng số điều chỉnh mà người dùng có thể điều chỉnh để có được hiệu suất mong muốn.

Thuật toán lọc Kalman

Thuật toán lọc Kalman bao gồm hai giai đoạn: dự đoán và cập nhật. Lưu ý rằng các thuật ngữ “dự đoán” và “cập nhật” thường được gọi là “lan truyền” and “chỉnh sửa”, tương ứng, trong các tài liệu khác nhau. Thuật tốn lọc Kalman được tóm tắt như sau:

Dự đốn trạng thái ước tính

Hiệp phương sai lỗi dự đốn

Bảng 2-1: Sự dự đoán thuật toán lọc Kalman

Số dư đo lường

Kalman đạt được

Đã cập nhật ước tính trạng thái Đã cập nhật hiệp phương sai lỗi

44

Trong các phương trình trên, tốn tử mũ, ^, có nghĩa là ước tính của một biến. Đó là, xˆ

là một ước tính của x. Các chỉ số trên - và + biểu thị các ước tính được dự đốn (trước) và được cập nhật (sau), tương ứng.

Ước tính trạng thái dự đốn được phát triển từ ước tính trạng thái được cập nhật trước đó. Thuật ngữ mới P được gọi là hiệp phương sai lỗi trạng thái. Nó mã hóa hiệp phương sai lỗi mà bộ lọc cho rằng lỗi ước tính có. Lưu ý rằng hiệp phương sai của một biến ngẫu

nhiên x được định nghĩa là

Ở đây biểu thị giá trị dự kiến (trung bình) của đối số của nó. Người ta có thể quan sát thấy rằng hiệp phương sai trở nên lớn hơn ở giai đoạn dự đốn do tổng kết với Q, có nghĩa là bộ lọc khơng chắc chắn hơn về ước tính trạng thái sau bước dự đốn.

Trong giai đoạn cập nhật, phần dư đo được tính trước. Phần dư của phép đo, còn được gọi là sự đổi mới, là sự khác biệt giữa phép đo thực, zk, và phép đo ước tính,

. Bộ lọc ước tính số đo hiện tại bằng cách nhân trạng thái dự đoán với ma trận đo lường. Phần dư, , sau đó được nhân với mức tăng Kalman, , để sửa chữa, , với ước tính dự đốn . Sau khi nhận được ước tính trạng thái được cập nhật, bộ lọc Kalman sẽ tính tốn hiệp phương sai được cập nhật, , sẽ được sử dụng trong bước thời gian tiếp theo. Lưu ý rằng hiệp phương sai lỗi được cập nhật nhỏ hơn hiệp phương sai lỗi được dự đốn, có nghĩa là bộ lọc chắc chắn hơn về ước tính trạng thái sau khi phép đo được sử dụng trong giai đoạn cập nhật.

Chúng ta cần một giai đoạn khởi tạo để triển khai bộ lọc Kalman. Là các giá trị ban đầu, chúng tơi cần phỏng đốn ban đầu về ước tính trạng thái, và phỏng đốn ban đầu của ma trận hiệp phương sai, . Cùng với Q và R, và đóng một vai trò quan trọng để đạt được hiệu suất mong muốn. Có một quy tắc chung được gọi là "sự thiếu hiểu biết ban đầu", có nghĩa là người dùng nên chọn một lớn để hội tụ nhanh hơn. Cuối cùng, người ta có thể có được triển khai bộ lọc Kalman bằng cách triển khai

45

các giai đoạn dự đoán và cập nhật cho mỗi bước thời gian, k =1, 2, 3 , …, sau khi khởi tạo các ước tính.

Lưu ý rằng các bộ lọc Kalman được suy ra dựa trên giả định rằng q trình và mơ hình đo lường là tuyến tính, tức là, chúng có thể được biểu thị bằng các ma trận F , B và H , và nhiễu của quá trình và phép đo là Gaussian bổ sung. Do đó, bộ lọc Kalman chỉ cung cấp ước tính tối ưu nếu các giả định được thỏa mãn.

2.1.2.3 Bộ lộc Kalman mở rộng

Định nghĩa vấn đề

Giả sử bạn có một hệ thống động phi tuyến trong đó bạn khơng thể xác định mơ hình q trình hoặc mơ hình đo lường với phép nhân vectơ và ma trận như trong (1) và (2) . Bộ lọc Kalman mở rộng cung cấp cho chúng ta một công cụ để xử lý các mơ hình phi tuyến như vậy một cách hiệu quả. Vì nó rẻ hơn về mặt tính tốn so với các phương pháp lọc phi tuyến khác như bộ lọc khối điểm và bộ lọc hạt, bộ lọc Kalman mở rộng đã được sử dụng trong các ứng dụng thời gian thực khác nhau như hệ thống định vị.

Bộ lọc Kalman mở rộng có thể được xem như một phiên bản phi tuyến của bộ lọc Kalman đã tuyến tính hóa các mơ hình về một ước tính hiện tại. Giả sử chúng ta có các mơ hình sau để chuyển đổi trạng thái và đo lường.

(3)

(4)

Trong đó:

• là chức năng của trạng thái trước đó,

• và đầu vào điều khiển, , cung cấp trạng thái hiện tại .

• là chức năng đo lường liên quan đến trạng thái hiện tại, , để đo lường .

• và là nhiễu Gaussian đối với mơ hình q trình và mơ hình đo lường với hiệp phương sai Q và R , tương ứng.

46

Thuật toán bộ lọc Kalman mở rộng

Tất cả những gì bạn cần là lấy ma trận Jacobian, đạo hàm riêng bậc nhất của một hàm vectơ đối với một vectơ, của mỗi mơ hình trong mỗi bước thời gian như sau:

Lưu ý các đăng ký của FF và HH được duy trì ở đây vì các ma trận thường thay đổi với các giá trị khác nhau của vector trạng thái cho mỗi bước thời gian. Bằng cách này, bạn tuyến tính hóa các mơ hình về ước tính hiện tại. Thuật tốn bộ lọc rất giống với bộ lọc Kalman.

(5)

(6)

Dự đốn trạng thái ước tính

Hiệp phương sai lỗi dự đốn

Bảng 2-3: Sự dự đoán của thuật toán bộ lọc Kalman mở rộng

Số dư đo lường Kalman đạt được

Đã cập nhật ước tính trạng thái Đã cập nhật hiệp phương sai lỗi

Bảng 2-4: Cập nhật thuật toán bộ lọc Kalman mở rộng

Như trong thuật toán bộ lọc Kalman, toán tử mũ, ^ , có nghĩa là ước tính của một biến. Đó là, là một ước tính của . Các chỉ số trên - và + biểu thị các ước tính được dự đốn (trước) và được cập nhật (sau), tương ứng. Sự khác biệt chính so với bộ lọc

47

Kalman là bộ lọc Kalman mở rộng thu được ước tính trạng thái được dự đoán và phép

đo được dự đoán bằng các hàm phi tuyến và , tương ứng.

Một phần của tài liệu THÍ NGHIỆM HÀNG KHÔNG 3 bài báo cáo bài THÍ NGHIỆM máy BAY mô HÌNH bài THÍ NGHIỆM đo LƯỜNG QUÁN TÍNH IMU (Trang 59 - 65)

Tải bản đầy đủ (PDF)

(198 trang)