|
|
Kalman-Filter verstehen - Literatur gesucht |
|
benst |
Forum-Newbie
|
|
Beiträge: 8
|
|
|
|
Anmeldedatum: 18.11.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.02.2012, 15:55
Titel: Kalman-Filter verstehen - Literatur gesucht
|
|
Moin,
ich habe schon einiges zum Kalman-Filter gelesen und mittlerweile auch eine grobe Idee, wie er funktioniert bzw. was die Idee dabei ist, aber der Groschen ist noch nicht so recht gefallen. Im Internet findet man ja so einiges zu diesem Thema.
Was ich jedoch noch nicht gefunden habe, ist eine Beschreibung, die für ein einfaches/überschaubares Beispiel einen Kalman-Filter von Anfang bis Ende erklärt. Ich denke, wenn ich ein überschaubares "Problem" voll verstanden habe, dann kann schwierigere Probleme besser verstehen und das ganze auch auf eigene Aufgabenstellungen anwenden. Die Erklärungen, die ich gefunden habe, sind entweder recht allgemein gehalten oder so komplex, dass ich das ganze nicht komplett verstehe.
Kennt ihr eine entsprechende Beschreibung, Skript, Paper, Internetseite, Buch, ... passende Literatur?
Gruß
Ben
|
|
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 19.02.2012, 16:49
Titel: Re: Kalman-Filter verstehen - Literatur gesucht
|
|
Hallo benst,
Du schreibst, Du habest schon im Internet gesucht. Es wird aber nicht klar, was Du genau schon angesehen hast, und was noch unklar ist. Ist es dann sinnvoll nochmal die wichtigsten Quellen aus den Netz zu zitieren?!
Hilft das bereits weiter?
Gruß, Jan
|
|
|
Balzer82 |
Forum-Anfänger
|
|
Beiträge: 26
|
|
|
|
Anmeldedatum: 22.02.11
|
|
|
|
Wohnort: Dresden
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.05.2013, 21:56
Titel:
|
|
Hallo,
ich habe dazu einen Starter geschrieben, der nicht so wissenschaftlich korrekt, aber dafür verständlich ist.
Das Kalman Filter einfach erklärt Teil 1
Und falls man das dann geblickt hat, kann man sich das auch mal mehrdimensional anschauen:
Das Kalman Filter einfach erklärt Teil 2
Ich hoffe das ist ein guter Ansatz.
_________________
"Bremsen ist die sinnlose Umwandlung von Exergie in Anergie - daran kann man sich höchstens noch die Finger verbrennen" - Prof. J. Morgenstern
|
|
|
meinü |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.12.2013, 01:18
Titel:
|
|
|
|
|
Hi, irgendetwas passt bei deiner Erklärung und dem Code noch nicht zusammen.
Du schreibst, dass die Position unbekannt ist und nur die Geschwindigkeit gemessen wird. Aus dieser wird dann die Position berechnet.
Somit sollte ich doch als Eingangsvektor nur die gemessene Geschwindigkeit haben. Bei deiner Erklärung ist jedoch auch noch die Position vorgegeben. Die sollte doch eigentlich erst vom KF berechnet werden.
Dann hast du ein Array "messung" und eins "bewegung". Auch das ist unklar: "messung" sollte doch eigentlich die gemessene Geschwindigkeit sein? Im Array scheint aber der Ort zu sein. In "bewegung" scheint jedoch die (gemessene?) Geschwindigkeit zu stecken.
In function update schreibst du "Berechnet geschätzte Position nach Messung der Position". Auch hier wieder: im Tunnel wird doch nur die Geschwindigkeit gemessen und der KF sollte die Position berechnen?
Es ist leider noch unklar, was nun die tatsächlich gemessenen Werte sind und was berechnet wurde.
Verständlicher wäre es auch, wenn du die Indizes der Varianzen etc zB "messung,alt" oder "Ort,neu" nennst. Dann sollte alles klar sein Im Moment ist es das leider noch nicht
|
|
|
meinü |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.12.2013, 01:32
Titel:
|
|
Ergänzung: Du hast drei Sigmas. Eins heißt "sig", ich gehe davon aus dass das die Varianz des Ortes ist, den wir berechnet haben? Dann hast du noch ein "sigma_mess", welches die Varianz der gemessenen Geschwindigkeit ist? Und dann hast du noch "sigma_bewegung", wo gehört diese Varianz hin?
|
|
|
Balzer82 |
Forum-Anfänger
|
|
Beiträge: 26
|
|
|
|
Anmeldedatum: 22.02.11
|
|
|
|
Wohnort: Dresden
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.12.2013, 08:53
Titel:
|
|
Hallo meinü,
da hast du zum Teil Recht! Die Erklärung bei "Teil 1" passt nicht so recht zu dem, was dann konkret gerechnet wird, das ist etwas verwirrend.
Ich habe es didaktisch so aufgebaut, dass es die Einleitung zu "Teil 2" ist.
Ich wollte im Teil 1 gleich ein reales, verständliches Beispiel einführen aber die Erklärvideos vom Sebastian Thrun beibehalten, weshalb sich das etwas beißt.
Hast du dir die eingebetteten Videos angeschaut? Da wird das sehr gut erklärt, weshalb es sigma_mess, sigma_move und sigma gibt.
sigma_mess = Varianz des Messwertes für die "Geschwindigkeit"
sigma_move = Varianz des Messwertes für die zurückgelegte Strecke
sigma = Varianz der aktuellen Ortsangabe
_________________
"Bremsen ist die sinnlose Umwandlung von Exergie in Anergie - daran kann man sich höchstens noch die Finger verbrennen" - Prof. J. Morgenstern
|
|
|
meinü |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.12.2013, 22:28
Titel:
|
|
Hi, also die beiden Rechenschritte an sich sind klar. Nur die Eingangswerte nicht.
Beispiel Tunnel. Ich habe eine "alte" Position mit mü_ort und sigma_ort. Nun messe ich die aktuelle Geschwindigkeit mit mü_v und sigma_v. Aus der Geschwindigkeit berechne ich die seit der letzten Geschwindigkeitsmessung zurückgelegte Strecke mit mü_s und sigma_s (was ja irgendwie keinen Sinn macht?).
Wie gehts jetzt weiter, was setze ich in update und was in predict ein? Immer unter der Prämisse, dass ich nur die Messung der Geschwindigkeit habe?
|
|
|
meinü |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 13.12.2013, 00:24
Titel:
|
|
Hm, Ok. Hab mir jetzt noch den 2. Teil angeguckt. Ist guter Code, den werd ich mir noch bissel anschauen und auf ein eigenes Beispiel anpassen, Danke für die Beschreibung
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|