Filter Chaining Kalman


9

Tim saya sedang membangun robot untuk menavigasi secara mandiri di lingkungan luar. Kami baru-baru ini mendapat sensor IMU / GPS terintegrasi baru yang tampaknya melakukan beberapa on-chip filter Kalman diperpanjang. Ini memberikan pitch, roll, dan yaw, utara, timur, dan kecepatan turun, dan lintang dan bujur.

Namun, kami juga memiliki beberapa enkoder yang terpasang pada roda kami, yang memberikan kecepatan linier dan sudut. Sebelum kami mendapatkan sensor IMU / GPS baru ini, kami membuat EKF kami sendiri untuk memperkirakan keadaan kami menggunakan enkoder dan beberapa sensor berbiaya rendah lainnya. Kami ingin menggunakan filter on-chip sensor baru ini, tetapi juga memasukkan pembuat enkode kami ke dalam campuran.

Apakah ada masalah dengan merantai filter? Maksud saya adalah, kita akan menggunakan output EKF on-chip sensor IMU / GPS sebagai pembaruan untuk EKF kita sendiri, sama seperti kita menggunakan data yang dibaca dari pembuat enkode sebagai pembaruan EKF kita. Tampaknya masuk akal bagi saya, tetapi saya bertanya-tanya apa yang seharusnya dilakukan dalam kasus ini.


Bisakah Anda memasukkan kembali koreksi / perkiraan ke dalam "kotak hitam" EKF?
Damien

@ Damian tidak, sepertinya tidak ada cara untuk melakukan itu.
Robz

Jawaban:


4

Anda dapat menggunakan INS / GPS sebagai pembaruan untuk output EKF pertama Anda. Ini sebenarnya bukan rantai, tetapi hanya mengkondisikan estimasi berdasarkan informasi tambahan dari INS / GPS.

Misalkan kita memiliki fungsi-fungsi berikut:

, P t + 1 | t = EKF_PREDICT ( x t , P t , u t ), untuk masukan sebagai negara x , kovarians P , dan input kontrol (diperkirakan oleh odometry) u t .xt+1|tPt+1|txtPtutxPut

dan

, P t + 1 | t + 1 = EKF_UPDATE ( x t + 1 | t , P t + 1 | t , x t + 1 ). xt+1|t+1Pt+1|t+1xt+1|tPt+1|tx^t+1

Perkiraan dari sensor adalah x t + 1 . Kami memiliki hal-hal seperti:x^t+1

x^t+1gps=f(GPS)

x^t+1map=f(map)

x^t+1ins=f(INS)

dll untuk semua cara lain memperkirakan keadaan robot. Jadi menjalankan fungsi EKF_UPDATE untuk semua sensor itu sudah cukup baik.

Lingkaran Anda akan menjadi seperti ini:

untuk semua waktu t

  • Mari menjadi saat odometry / perkiraan kinematik pose, dan R u menjadi suara pada perkiraan itu.utRu

  • xt+1|tPt+1|txtPtutRu

  • S

    • x^t+1SRS

    • xt+1|t+1Pt+1|t+1xt+1|tPt+1|tx^t+1,RS

    • end-for

  • end-for

Beberapa peringatan adalah:

  • Karena kami menggunakan EKF, tidak ada jaminan bahwa perkiraan tersebut tidak tergantung pada urutan pembaruan. Artinya, jika Anda melakukan INS lalu GPS, estimasi yang dihasilkan mungkin berbeda dari jika Anda memperbarui dengan GPS lalu INS. Ini biasanya bukan masalah besar, tetapi filter akan membutuhkan penyetelan yang lebih signifikan.

  • Harap perhatikan bahwa INS Anda memiliki bias dan pergeseran, yang mungkin memengaruhi keandalan jangka panjang Anda. GPS dapat membantu Anda banyak di sini. Sebagian besar literatur secara bersamaan memperkirakan bias dan pergeseran dalam INS.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.