-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: In die Ecke fahren

  1. #1

    In die Ecke fahren

    Anzeige

    Hallo,

    Ich habe das Ziel einen kleinen Roboter in eine Ecke zu fahren (um sich automatisch aufzuladen etc...) Der Gedanke ist, dass der Roboter schräg in die Ecke fährt bis er an die Ecke stößt. Es ist davon auzugehen, dass die Ecke einen 90 Grad Winkel bildet.
    Der Roboter besitzt 6 Abstandssensoren im 60 Grad Winkel in alle Richtungen.
    Hat jemand eine Idee wie man das am besten macht? Zuerst sich an einer Wand orientieren, entlangfahren bis man an die Ecke kommt, dann 45 Grad reindrehen und nochmal gerade aus?
    Oder von der aktuellen Position ein Rundumbild machen und abhängig von dem Bild einen Wegplan entwickeln?

    Bin gespannt auf eure Ideen!
    Gruß

  2. #2
    Ich hab da nen ganz anderen Ansatz... Nimm doch eine Bake / leuchtturm ! Also einen IR-Tower mit ~36kHz Frequenz und einen Empfänger am Robo. Auf www.the-starbearer.de ist das beschrieben. Die Ultraschalldinger sind dann halt zum erkennen der mauern gut wenn er nah genug dran ist. der vorteil an dem System ist, dass es von überall im Raum geht, solange sichtkontakt exisitiert. Und der Empfänger braucht auch nur einen Port...

  3. #3
    Gast
    Hm vielleicht sollte ichs etwas genauer erklären. Der Robo weiss schon, dass er in der Gegend einer Ecke ist durch so eine IR Bake.
    Ziel ist es jetzt nur aus diesem "Eckgebiet" wo er sich nun befindet sozusagen an die Ecke anzudocken. Und zwar so, dass die linke Robo Seite die linke Wand und die rechte entsprechend die andere berührt. Damit werden dann per Magnet 2 Kontakte verbunden. (Jeder an jeweils einer Wand)
    Es ist also wichtig, dass der Robo genau die Ecke findet und drauf lossteuert.
    Der Robo hat schon einen IR Empfänger und 6 Abstandssensoren wobei 3 nach vorne und 3 nach hinten strahlen (natürlich versetzt)

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    29.04.2005
    Ort
    Weilburg
    Beiträge
    676
    Mein Tip:
    Mach es so wie man es seit über tausen Jahren kennt.
    Mit einer Bake bzw Leuchturm.
    Der Baken-Sender erstellt zwei Signale.
    Das eine Signal ist zB. Kurz mit langer Pause, das ander ist Lang mit kurzer Pause. (..geht auch mit zwei Farben)
    Wenn du dann auf den Leuchturm zufährst und das kurze Signal siehst, bist du zuweit links, beim Langen zu weit rechts. Nur wenn du ein Dauersignal sehen kannst bist du auf dem richtigen Kurs.

    So ähnlich macht das auch mein Rasenmäher wenn er seine Ladestation sucht.
    Prostetnic Vogon Jeltz

    2B | ~2B, That is the Question?
    The Answer is FF!

  5. #5
    Gast
    Hallo Vogon,

    Deine Idee hört sich gut an allerdings bin ich mir nicht ganz sicher ob ichs genau verstehe. Die Bake verwendet 2 Leds mit unterschiedlicher Modulation, wobei das eine Signal in die eine, das andere in die andere Richtung strahlt - nur genau in der Mitte überlappen sich diese.
    Ich stelle es mir nur etwas problematisch die 2 IR signale richtungsmässig zu gut zu trennen. Aber so ist das Prinzip oder?

    Weitere Frage zu deinem Rasenmäher. Dockt dieser direkt mit Kontakten an oder wird da der Strom induziert?

    Gruß

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    29.04.2005
    Ort
    Weilburg
    Beiträge
    676
    Ja, du hast es richtig verstanden.
    Das ist eine Blinkschaltung, wenn eine LED an geht, geht die andere aus. Beim Sender strahlen beide in die gleiche Richtung aber dazwischen eine Trennwand.

    Der Rasenmäher hat eine "Nase" mit Kontakten die er in seine Ladestation steckt.


    Das Andocken macht der aber mit drei Induktionsschleifen in der Bodenplatte.
    Die eine, das F-Signal hat eine Reichweite von ca 5 Meter und soll den Mäher suzusagen anlocken. Die beiden N-Signale steuern dann die Einfahrt und habe nur eine Reichweite von etwa einem Meter und sind in der rechten bzw linken Hälfte der Bodenplatte.


    Hier hab ich auch schon mal was dazu geschrieben: http://www.roboternetz.de/phpBB2/vie...?p=85023#85023
    http://www.razyboard.com/system/thre...7-2742353.html
    Prostetnic Vogon Jeltz

    2B | ~2B, That is the Question?
    The Answer is FF!

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801
    Mit des Abstandssensoren geht so was nicht?

    1) Um 45° drehen und ein Rundumbild machen mit Abständen alle 15°
    2) Jede Mauer sieht beim Drehen aus wie ein Sekans. Das Minimum ist der Abstand zur jeweiligen Wand.
    3) Selbst bei einer Auflösung von nur 15° sollten die beiden Minima in den Messwerten erkennbar sein. Sie sind dadurch ausgezeichnet, daß sie in einem Winkel von 90° +/- 15° zueinander stehen. Man könnte elso erst den kleinsten Abstand bestimmen und dann bei den Werten um +90° und um -90° relativ dazu das zweite Minimum suchen.
    4)Sind m1 und m2 die beiden Minima, fährt man in Richtung r(m1)+r(m2). Dabei ist das die Vektorsumme aus den Richtungen zu m1 und m2, die Länge von r(x) ist proportional zum Abstand x.

    Jedenfalls käme das mit Bordmitteln aus und sollte auch nicht so schwer zu programmieren sein.
    Disclaimer: none. Sue me.

  8. #8
    Ich denke SprinterSB deine Lösung ist doch die beste. Die Bakenidee ist zwar nicht schlecht, nur 2 IR Signale so gut getrennt abzustrahlen stell ich mir nicht so ganz einfach vor und man müsste das erstmal aufbauen.
    Allerdings ist es vielleicht doch besser ein Rundumbild nur mit einem Sensor zu machen, da man dadurch systematische Fehler der verschiedenen Sensoren schonmal ausschliessen könnte.
    Ich kann das alles leider erst morgen testen - Sorge bereitet mir auch wie präzise das drehen abläuft. Es handelt sich um die Roboter Jasmine 3 - zu sehn unter www.swarmrobot.org.
    Ich werde morgen berichten ob es tut!

    Danke für die Antworten!

  9. #9
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801
    Mein Verfahren ist recht ungenau, weil du damit nicht die Richtungen von m1 bzw m2 findest, sondern noch einen recht großen Fehler drinne hast.
    Evtl ist folgendes besser:

    1) Drehe den Robbi so hin, daß ein minimaler (möglichst kleiner) Abstand m1 auftritt (Minimum über alle Sensoren bzw, über 360°)

    m1 zeigt recht gut auf eine Wand, m2 ist ziemlich genau (bis auf Messfehler) senkrecht dazu. Blöderweise kannst du m2 nicht bestimmen, ohne nocmal zu drehen (oder hast die Werte irgendwo gemerkt).


    Das Verfahren kann man ja iterieren, also messen, fahren, messen, ...

    Würd mich mal interessieren, ob das geht
    Disclaimer: none. Sue me.

  10. #10
    Hallo,

    Konnte nur ein paar Tests machen - zu viel mehr bin ich leider noch nicht gekommen. Trotzdem hat man gleich mal einiges an Problemen erkannt... Problem Nr. 1 sind die Ungenauigkeiten bei Drehbewegungen - die sind wirklich fürchterlich - da verhält sich jeder Roboter relativ anders. Also um +90, dann -90 Grad drehen endet im Chaos falls man nicht wieder misst wo man ist. Noch dazu fahren die Dinger nicht allzu gut geradeaus und kleinwinklige Drehungen kann man ganz vergessen.

    Ich werde morgen mal versuchen mich an einer Wand entlangzuhandeln, denn parallel fahren kann man vergessen. Also immer einen Abstand unterschreiten, drehen&fahren bis wieder ein anderer Überschritten wird usw. - also Zig-Zack Fahrt.
    Irgendwann sollte man in der Ecke angekommen sein und müsste dann "nur noch" um 45 Grad drehen...
    Falls das nicht klappt werde ich mal versuchen wie/ob man präzise 360° drehen kann (theoretisch ja bis wieder der gleiche Messwert erreicht wurde...)
    Wenn das klappt sollte deine Lösung eigentlich fast die einfachste/billigste sein...

    Gruß

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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