WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Kalman-Filter verstehen - Literatur gesucht

 

benst
Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 18.11.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.02.2012, 16:55     Titel: Kalman-Filter verstehen - Literatur gesucht
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 19.02.2012, 17:49     Titel: Re: Kalman-Filter verstehen - Literatur gesucht
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
Balzer82
Forum-Anfänger

Forum-Anfänger



Beiträge: 26
Anmeldedatum: 22.02.11
Wohnort: Dresden
Version: ---
     Beitrag Verfasst am: 11.05.2013, 22:56     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
meinü

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2013, 02:18     Titel:
  Antworten mit Zitat      
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 Smile Im Moment ist es das leider noch nicht Sad
 
meinü

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2013, 02:32     Titel:
  Antworten mit Zitat      
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

Forum-Anfänger



Beiträge: 26
Anmeldedatum: 22.02.11
Wohnort: Dresden
Version: ---
     Beitrag Verfasst am: 12.12.2013, 09:53     Titel:
  Antworten mit Zitat      
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. Sad

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
Private Nachricht senden Benutzer-Profile anzeigen
 
meinü

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2013, 23:28     Titel:
  Antworten mit Zitat      
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: ---
     Beitrag Verfasst am: 13.12.2013, 01:24     Titel:
  Antworten mit Zitat      
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 Smile
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.