www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Gyro ADXRS610, Hysterese, Werte filtern, Bascom


Autor: Bascompasstschon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, liebes Forum!

Ich will eine Lagestabilisierung mit Bascom realisieren (ich bin noch 
Anfänger, habe aber schon ein bisschen Erfahrung mit Bascom). Als Sensor 
habe ich ein Gyroskop ADXRS610 zur Verfügung. Ich habe zuerst ein 
Programm geschrieben, womit ich die eingelesenen Werte umrechne und 
printen lasse : ADC -> Spannung [mV] -> Winkelgeschwindigkeit [°/s] -> 
Winkel [°]. Der Winkel driftet beim Stillstand nicht, da ich einen 
Bandpassfilter schon nach dem Einlesen der ADC-Werte implementiert habe. 
Die ersten Male klappt das ganz gut, allerdings habe ich Hysterese 
festgestellt, d.h. die Werte schaukeln sich mit der Zeit hoch (z.B. Soll 
= 10°, Ist = 15° usw., in beide Richtungen, wobei nach rechts ein 
bisschen stärker), die Hysterese wird auch immer mehr mit der Zeit.

Nun ist es so, dass ich einen normalen P-Regler als Regler eingesetzt 
habe. Liegt es daran, dass die Hysterese da ist, oder muss ich noch 
einen speziellen Hysteresefilter implementieren?

Hat jemand Erfahrung mit diesem Problem?

Über Hilfe würde ich mich freuen! :-)

Gruß Bascompasstschon

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Gyroskop ist nicht ausreichend für eine Lagebestimmung /- regelung. 
Hierzu braucht man immer einen Beschleunigungssensor + Gyroskop.
Man muss verschiede Fehlerquellen durch digitale Signalverarbeitung 
ausfiltern. (Temperaturdrift, Rauschen, Vibrationen, ect...).
Ich weiß ja nicht wofür - das solltest du uns verraten.
Wenn es um ein Stabilisierung in der Luft handelt kommst du um das nicht 
herum: http://en.wikipedia.org/wiki/Kalman_filter
Ansonsten Komplementärfilter (Hochpass+Tiefpass).
Ein Gyro ist zu ungenau und die Integration über die Zeit bringt 
keinerlei verwertbare Ergebnisse ...
Achso: bring dir C bei - Bascom ist nichts für solch anspruchsvolle 
Programmierung.

Autor: Bascompasstschon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok, gut, dann weiß ich schonmal Bescheid, danke!

Das ist für ein Halterungssystem, das eine Kamera trägt und auf ein Auto 
montiert werden soll. Das Auto (kein Modellauto sondern ein echtes) wird 
ungefähr mit 10 km/h auf einem Feldweg fahren. Das sind so die 
Randbedingungen. Ich hatte auch gelesen, dass man ACCs braucht, aber die 
haben doch auch einen Fehler wenn ich das System beschleunige oder? Dann 
habe die die Beschleunigung als zusätzliche Störgröße drin. Hast du mit 
sowas Erfahrung?

Ja, das werde ich mal in Angriff nehmen mit C, aber momentan versuche 
ich erstmal mit Bascom ein einigermaßen gutes Ergebnis zu erzielen, aber 
danke für den Tip! :-)

Viele Grüße

Autor: Bascompasstschon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh Gott, ja der Kalmanfilter, mit dem habe ich mich schonmal 
beschäftigt, aber der schafft mich. Ich finde das ziemlich kompliziert 
und wollte es erstmal mit einem anderen Filter probieren. Wenn ich etwas 
mehr Erfahrung habe will ich mich damit näher beschätigen.

Autor: MWS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lehrmann Michael schrieb:
> Achso: bring dir C bei - Bascom ist nichts für solch anspruchsvolle
> Programmierung.

Unsinn.

Quadrocopter in Bascom:
http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=35143

Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
MWS schrieb:
> Lehrmann Michael schrieb:
>> Achso: bring dir C bei - Bascom ist nichts für solch anspruchsvolle
>> Programmierung.
>
> Unsinn.
>
> Quadrocopter in Bascom:
> http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=35143

Bestätigt!

Ich selbst habe solch ein Quattrocopter mit Bascom programmiert! Ich 
würde fasst behaupten es ist mit Bascom sogar einfacher als mit C!

Autor: Bascompasstschon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Okay, super vielen Dank, für den Link! :-)

Ich werde ihn mir jetzt durchlesen!

Autor: Bascompasstschon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh man, so wie es aussieht komme ich wohl nicht um den Kalmanfilter rum, 
oder? Oder kann ich das trotzdem noch mit einem anderen Filter 
hinbekommen? Und einen ACC brauch ich auf jeden Fall, stimmt das?

Gruß Bascompasstschon

Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich selbst hab auf den Kalman-Filter verzichtet, da ich den 
Quattrocopter im "Heli-Mode" fliegen wollte. Letztenendes musste ich 
feststellen, das mit der ganzen Stabilisierung (ich hatte noch GPS und 
nen Kompas drauf) ich nicht mal ne RC-Funke gebraucht hätte...

Autor: Bascompasstschon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Von GPS und Kompass und habe ich schon mal gelesen. Kannst du mir sagen, 
was die genau messen und welche Modelle du hattest? Hattest du auch noch 
einen ACC drauf?

Danke für die Hilfe! :-)

Viele Grüße

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.