- LiFePO4 Speicher Test         
Ergebnis 1 bis 10 von 44

Thema: Roboter an einem Auto entlang fahren lassen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Geistesblitz
    Registriert seit
    15.03.2011
    Ort
    Dresden
    Alter
    37
    Beiträge
    1.937
    Das ist eine Info, die schon wesentlich früher gekommen sein müsste: Die Motoren können nur Vorwärts oder Stoppen, nix dazwischen und auch nicht rückwärts? Dann muss man es wirklich so angehen, wie du es begonnen hast. Mein Vorschlag würde in dem Fall folgendermaßen aussehen:

    Wenn der Roboter zu nah am Auto steht oder zu weit nach links zeigt -> Rechtsdrehung
    Wenn der Roboter zu weit vom Auto weg steht oder zu weit nach rechts zeigt -> Linksdrehung
    Wenn der Roboter im richtigen Abstand zum Auto ist und auch parallel steht -> Geradeausfahrt

    Dabei würde ich aber auch einen gewissen Toleranzbereich einplanen, zB. wenn die Differenz zwischen den Sensorwerten innerhalb gewisser Grenzen liegt, zählt es so, als wenn der Roboter parallel stünde. Ähnlich dann auch mit dem Mittelwert für die Abstandserkennung. Das macht das Ganze ein bisschen robuster, sonst würde der Bot die ganze Zeit nur hin und herzucken und dabei langsamer vorrankommen.

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    05.11.2013
    Beiträge
    26
    Doch doch, die Motoren können sich in beide Richtungen drehen
    Also wenn man am Linken Motor einen Wert kleiner als 91 eingibt dann dreht er sich rückwärts und beim rechten Motor größer 90 dann rückwärts...

    Der Sketch zum parallel halten funktioniert, er bleibt stehen wenn er parallel ist. Beim Kurven fahren geht es auch, also wenn er zu nah an der Wand ist fährt er nach rechts und wenn zu weit dann nach links...

    Jetzt muss ich die beiden kombinieren, aber ich weiß nicht so recht wie ich das machen soll...

    Toleranzwert für parallel stehen habe ich mit 1 bzw. 2cm versucht und für den Mittelwert habe ich ja einen Wert zwischen 48 und 52 cm ausgesucht...

    Wie gesagt, einzeln funktionieren die beiden Sketches ja so wie ich es haben möchte aber wie kombiniere ich die nun?

    EDIT:

    Der Motor kann auch beschleunigt werden, zum Beispiel bei 90 stoppt er, zwischen 90 und 100 wird er beschleunigt und ab 100 ist auf v_max. Und in die andere Richtung dann 90-80 beschleunigen und kleiner 80 v_max.

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Geistesblitz
    Registriert seit
    15.03.2011
    Ort
    Dresden
    Alter
    37
    Beiträge
    1.937
    Ok, dann sag doch mal, was die Motoren genau machen, wenn man ihnen verschiedene Werte füttert. Gehe ich richtig in der Annahme, dass 0 bzw. 180 jeweils die Maximalgeschwindigkeiten sind?

    Hast du dir meinen Vorschlag angesehen? Das führt ja quasi beide Probleme zusammen, kannst ja mal versuchen umzusetzen. Die Schlüsselstelle ist dabei die Oder-Verknüpfung in den If-Verzweigungen, die eben beide Fälle berücksichtigen.

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    05.11.2013
    Beiträge
    26
    Wenn man dem Motor 0-89 eingibt, dann dreht er sich gegen den uhrzeigersinn bei 90 stoppt er und über 90 bis 180 dreht er im Uhrzeigersinn.
    Die Motoren sind bei mir entgegengesetzt angebracht, deswegen muss ich einen im uhrzeigersinn und einen gegen den uhrzeigersinn drehen, damit beide räder vorwärts drehen. Und wie vorhin gesagt ist ab 100 bzw. 80 die maximal Geschwindigkeiten erreicht.

    Ich habe mir deinen Vorschlag schon angesehen. Mein Problem ist, dass wenn er zu nah ist und nach rechts dreht um sich zu entfernen, verliert er die parallelität zur wand und dreht sich irgendwann im kreis.

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Geistesblitz
    Registriert seit
    15.03.2011
    Ort
    Dresden
    Alter
    37
    Beiträge
    1.937
    Dann kann man ja immernoch sagen, dass wenn zB. der Roboter links von der Solllinie steht und sich über einen bestimmten Winkel nach rechts gelenkt hat, dass er dann einfach geradeaus fahren soll. Analog für die den Fall auf der anderen Seite. So dürfte er keine unsinnigen Kreise fahren. Sobald dann der Abstand über die gegenüberliegenden Toleranzgrenzen hinausgeht, lenkt er dann wieder gegen und ist im Toleranzbereich. Was du dabei vielleicht aber noch beachten solltest, dass die Sensorwerte konsistent bleiben. Wenn der Roboter zB. ein stück gedreht ist, misst er eigentlich nicht wirklich den Abstand zum Auto, sondern unter einem Winkel, wodurch der gemessene Wert größer wird. Das könnte ab einem bestimmten Winkel vielleicht zum Problem werden.

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    05.11.2013
    Beiträge
    26
    Das habe ich mir auch gedacht, wie kann ich das in meinem Code umsetzen?

Ähnliche Themen

  1. Antworten: 10
    Letzter Beitrag: 27.02.2008, 22:08
  2. rp6 rückwärts fahren lassen
    Von robob im Forum Robby RP6
    Antworten: 5
    Letzter Beitrag: 30.12.2007, 13:29
  3. Asuro aufrecht fahren lassen :D
    Von oThommyo im Forum Asuro
    Antworten: 3
    Letzter Beitrag: 17.05.2007, 17:10
  4. Asuro 5 Sek. rückwärts fahren lassen
    Von Momchilo im Forum Asuro
    Antworten: 2
    Letzter Beitrag: 19.01.2007, 10:01
  5. Modellbau-Servo in Endlage fahren lassen ?
    Von dreamy1 im Forum Elektronik
    Antworten: 5
    Letzter Beitrag: 06.12.2005, 17:15

Berechtigungen

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

LiFePO4 Speicher Test