- 3D-Druck Einstieg und Tipps         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 20

Thema: PID + Kompass

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Benutzer Stammmitglied
    Registriert seit
    09.05.2012
    Beiträge
    57

    PID + Kompass

    Hallo,

    ich würde gerne eure Meinung zur Herangehensweise für die Integration eines Kompass in meinen PID Regelkreis hören.
    Es geht um ein Kettenfahrzeug, mit zwei DC Motoren. (Die Plattform nähert sich, nach einem Umbau, der Fertigstellung, ist aber noch nicht soweit. Daher kann ich noch nicht testen.)

    1. Macht es eurer Erfahrung nach überhaupt Sinn, einen Kompass (AHRS mit Kompass, Beschleunigungssensor und Gyro) als Referenz zum geradeaus fahren zu nutzen? Der Kompass wird auf einem Mast montiert, um Abstand zu den DC Motoren zu bekommen.

    2. Bisher hatte ich zwei PID Regler, welche beide Motoren auf einer bestimmten Drehzahl halten (via PWM). Damit fährt das Fahrzeug recht gut geradeaus.
    Die Frage ist jetzt ob es Sinn macht, diese recht gut funktionierende Methode mit dem Kompass zu erweitern, oder ob ich nur den Kompass nutzen sollte.
    Es wäre schade, die guten Ergebnisse der Steuerung über die Encoder zu verwerfen, allerdings befürchte ich, dass ich mit beiden Systeme zusammen keine Stabilität hinbekommen.
    Wie würde ich eine Zusätzliche Komponente in die Reglung integrieren, ohne das System instabil zu machen?

    3. Gibt es eine gängige Methode um den Sprung in den Sprung in den Kompass Werten (360->1) zu verarbeiten?


    Generelle Tipps aus der Praxis zum Thema Kompass im Roboter sind sehr willkommen. Da ich leider wenig Zeit für das Hobby habe, freue ich mich über alle vermiedenen Fehlversuche (auch wenn Sie teilweise zum Spaß gehören ).

    Danke und Gruß
    Robert

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    31
    Beiträge
    1.578
    Hi,

    also wenn ich das richtig verstehe, hast du einen Roboter mit je einem Encoder pro Motor. Dazu willst du jetzt (oder eben auch nicht) einen Kompass integrieren!?
    Ich würde da einen Komplementärfilter verwenden (Hoch + Tiefpass), der die Signale miteinander verechnet und somit einen auf kurze & lange Zeit stabilen Wert ausgibt.
    Den Sprung könnte man z.b. so lösen:
    Code:
    Heading = Kompass_Value()
    
    If Heading >= 0 and Heading_old <= 360 then
       Umdrehung = Umdrehung + 1
    Elseif Heading <= 360 and Heading_old >= 0 then
       Umdrehung = Umdrehung - 1
    Endif
    Heading_old = Heading
    Heading_laufend = 360*Umdrehung + Heading
    Gruß
    Chris

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    09.05.2012
    Beiträge
    57
    Hallo Chris,

    danke für die Antwort.

    Ist es denn Erfahrungsgemäß sinnvoll, zwei PID Regler zu kombinieren? Oder beeinflussen diese sich zu sehr gegenseitig und erzeugen ein instabiles System?

    Danke für den Anstoß bezüglich des Sprungs in den Winkel Werten. Ich werde die Winkel in einer Skala -180 bis +180 verwenden. Dann muss ich nicht zwingend die 0 beim Auslesen erwischen.

    Gruß
    Robert

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    31
    Beiträge
    1.578
    Hi,

    wieso möchtest du den zwei PID-Regler verwenden? Kombinier doch einfach die Sensoren via Komplementärfilter.
    Naja, dann korigier doch den Code einfach auf +-180°. Sollte ja auch kein Problem sein

    Gruß
    Chris

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    09.05.2012
    Beiträge
    57
    Hmm, richtig. Das macht mehr Sinn.
    Kann ich dann einfach die beiden PIDs für RPM nutzen und den Error des Kompass, je nach Richtung der Abweichung, auf den Error der RPM aufrechnen bzw. abziehen? (ggf. mit einem sinnvollen Faktor)


    Ich hatte jetzt nicht erwartet, dass du den Code noch auf +-180° anpasst. Zur Veranschaulichung hat der erste Code gereicht.

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    31
    Beiträge
    1.578
    Hi,

    also du filterst die Signale und erhältst daraus dann einen Winkel. Diesen schickst du in den PID-Regler.
    Ich würde die reinen Encoder-Daten für den D-Anteil des Reglers verwenden und den korrekten Winkel für den P und I Anteil. Oder du verwendest die Encoder-Daten für P & D und den Winkel für I. Da müsste man wohl experimentieren was am besten ist

    Gruß
    Chris

  7. #7
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    73
    Beiträge
    11.077
    Hallo!

    Zitat Zitat von robvoi Beitrag anzeigen
    ich würde gerne eure Meinung zur Herangehensweise für die Integration eines Kompass in meinen PID Regelkreis hören.
    Meine Meinung: ein PID Regler und ein Kompas haben nix gemeinsames und können nicht sinvol in einer Regelung von Motor verbunden werden. Sonst ist für mich dein Problem unklar beschrieben.
    Geändert von PICture (26.02.2013 um 11:14 Uhr)
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    09.05.2012
    Beiträge
    57
    Zitat Zitat von PICture Beitrag anzeigen
    Hallo!
    Meine Meinung: ein PID Regler und ein Kompas haben nix gemeinsames und können nicht sinvol in einer Regelung von Motor verbunden werden. Sonst ist für mich dein Problem unklar beschrieben.
    @PICture
    Danke für dein Feedback.
    Beispiel Geradeausfahrt: Die Abweichung von Soll/Start-Winkel zu Ist-Winkel ist der Input für den PID Regelkreis. Der Output Regelt den rechten und linken Motor (+/- Output) und steuert entsprechend gegen.

    Warum das nicht gehen soll, verstehe ich nicht. Habs noch nicht probiert also...
    Meine Frage war davon ausgegangen, dass das funktioniert. Ich wollte dann Encoder (encLeft-encRight) als Input mit dem Kompass kombinieren.

    Gruß
    Robert

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    31
    Beiträge
    1.578
    Hi,

    hast du dich den schon mit der Datenfusion beschäftigt?
    Ich mache momentan etwas sehr ähnliches, nämlich die Fusionierung von einem Gyro und einem Kompass.

    Gruß
    Chris

  10. #10
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    73
    Beiträge
    11.077
    @ robvoi

    Sorry, aber für mich Regelung vom Drehzahl eines Motors per PID Regler und Steuerung der Fahrrichtung per Kompas, nicht in einen Topf passen.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. PID-Regler
    Von Che Guevara im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 16.10.2009, 19:13
  2. PID Regler
    Von Martin. im Forum Software, Algorithmen und KI
    Antworten: 2
    Letzter Beitrag: 31.07.2008, 14:24
  3. PID Regler
    Von hacker im Forum Software, Algorithmen und KI
    Antworten: 12
    Letzter Beitrag: 27.05.2007, 18:47
  4. PID - Regler
    Von hacker im Forum Software, Algorithmen und KI
    Antworten: 6
    Letzter Beitrag: 04.06.2006, 20:38
  5. PID-Regler
    Von Distel im Forum Elektronik
    Antworten: 21
    Letzter Beitrag: 28.07.2004, 16:50

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests