Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

projektewise1718:elstiftospublic:start

Projektdokumentation ElStiftos

ElStiftos Aufgabe ist es einen beliebigen Tisch systematisch abzufahren und dabei sämtliche sich auf dem Tisch befindenden Stifte aufzusammeln und nach Farbe zu sortieren. Der Roboter bewegt sich auf zwei Rädern fort und hebt mittels eines Greifarms die Stifte in eine dafür vorgesehene Ablage. Verschiedene Sensoren erkennen die Stifte und verhindern, dass ElStiftos von der Tischkante fällt.

Einleitung

Die Idee war anfangs einen Roboter zu Bauen, welcher sich autonom fortbewegt und Dinge „aufräumt“. Wir wurden uns jedoch schnell einig, dass das greifen/sortieren von verschiedensten Gegenständen doch etwas zu komplex werden könnte, weshalb wir das Ganze letztendlich auf Stifte eingeschränkt haben.

der Ablauf

Zum Start wird ElStiftos in die rechte Ecke des mit Stiften übersäten Tisches gestellt. Durch den Schalter kann die Stromversorgung eingeschaltet werden und der Roboter fährt geradeaus los. Sobald die Kannte erreicht ist stoppt er, dreht sich um 90 Grad nach links, fährt eine Kurze Distanz nach vorne und dreht sich nochmal um 90 Grad nach links. Nun fährt er wieder geradeaus bis die andere Kante erreicht ist, an der er sich anstatt zwei mal nach links, zwei mal nach rechts dreht. Dieser Ablauf wird wiederholt. Sobald auf der kurzen Distanz zwischen den beiden links bzw. rechts Drehungen eine Kannte erkannt wird, ist der gesamte Tisch abgefahren und der Roboter hält an. Während der Fahrt werden sämtliche sich auf dem Weg befindenden Stifte durch die Trichtervorrichtung in Position für den Greifarm gebracht. Sobald die Lichtschranke im Hinterteil des Roboters einen Stift erkennt, greift der Greifmechanismus des Greifarms zu und der Farbsensor misst die Farbwerte. Je nach Farbe wird der der Stift nun in eines der beiden auf dem Roboter befestigten Fächer transportiert. Erkennt die Lichtschranke einen Stift während der Greifarm noch mit einem anderen Stift beschäftigt ist, stoppt der Roboter kurz die Fahrt. Dadurch werden „Stifte-Staus“ in der Trichtervorrichtung vermieden.

Übersicht der Komponenten

Das Grundgerüst des Roboters besteht aus Holz.

Fahrwerk
  • 2 Schrittmotoren
  • 2 Schrittmotor Treiber
  • 2 Kondensatoren

Trichter-Vorrichtung/ Abstandsmesser
  • Infrarot Abstandsmesser

Lichtschranke
  • 2 Widerstände
  • Infrarot LED
  • Phototransistor

Greifarm
  • Schrittmotor
  • Schrittmotor Treiber
  • Servomotor
  • Servomotor mit Greifmechanismus
  • 3 Kondensatoren

Farbsensor
  • Farbsensor

Stromversorgung

Der Arduino und die drei Schrittmotoren werden durch einen auf dem Roboter verstauten LiPo-Akku mit Strom versorgt.

Die Servomotoren werden direkt über den Arduino angesteuert, für die Ansteuerung der Schrittmotoren wurden Treiber benutzt. Anleitung zu den Treibern: Polulu

Die einzelnen Komponenten

Fahrwerk und Trichtervorrichtung

Der Roboter bewegt sich durch zwei Schrittmotoren an denen Räder befestigt sind vorwärts. Die Trichtervorrichtung auf der Unterseite, liegt auf der Tischoberfläche auf, weshalb er nicht umkippen kann. Auf der Unterseite ist ein Infrarot Abstandsmesser angebracht, um zu erkennen wenn Elstiftos an der Tischkannte angelangt ist. Die Trichtitervorrichtung haben wir durch ständiges ausprobieren optimiert. Vor dem Trichter hängen zwei Schrauben knapp über der Tischoberfläche welche verhindern, dass Stifte quer in den Trichter gelangen und diesen blockieren. Die jetzige Version des Trichters positioniert so gut wie alle Stifte richtig, Probleme gibt es nur noch wenn zwei Stifte eng aneinander in den Trichter gelangen. Der Abstand zwischen den beiden Trichter Gabeln entspricht ungefähr dem Abstand zwischen den Bahnen auf denen der Roboter den Tisch abfährt. Dadurch verpasst er keine Stifte.

Lichtschranke

Die Lichtschranke befindet sich im Hinterteil des Roboters und besteht aus einer Infrarot-LED die auf einen Phototransistor zeigt. Die LED und der Transistor sind in zwei Metallrohre eingelassen welche aufeinander zeigen. Die Stifte werden vom Trichter zwischen die LED und den Transistor geleitet und verdecken dadurch den Transistor. Dieser gibt also unterschiedliche Werte aus, je nachdem ob sich ein Stift in Position befindet oder nicht. Der Phototransistor ist wie im Chrashkurs angeschlossen. Die LED wird über einen Widerstand mit dem 5V Ausgang des Ardiono mit Strom versorgt.

Greifarm

Der Greifarm besteht aus einen vorgefertigtem Servomotor mit einem Greifmechanismus, einem normalen Servomotor und einem Schrittmotor. Auf dem Schrittmotor ist der Servo befestigt, an dem über eine Holzvorrichtung der „Greifservo“ angebracht ist. der Greifarm kann sich dadurch hoch und runter bewegen und einmal um die eigene Achse drehen. Sobald ein Stift erkannt wird greift der Greifservo zu und der Arm bewegt sich um 70 Grad nach oben. Daraufhin dreht der Schrittmotor den Arm um circa 180 Grad zur Stiftablage, wo der der Arm sich wieder ein wenig absenkt und den Stift dann loslässt. Codetechnisch ergab sich hier die Herausforderung den Greifprozess ablaufen zu lassen, während der Roboter gleichzeitig weiterfährt, da die Arduino Software es nicht direkt möglicht macht mehrere Prozesse parallel ablaufen zu lassen. Die einzelnen Motoren müssen also immer nacheinander angesteuert werden. Im Code haben wir dass durch verschachtelte if bzw. switch case Bedingungen und Variablen zum Speichern des Greifarmzustands, gelöst. Wodurch ständig die Fahrwerkmotoren und je nach Bedarf einer der Greifarmmotoren angesteuert wird.

Farbsensor

Den Farbsensor haben wir zum Schluss hinzugefügt, weshalb dieser auch noch optimierungsfähig ist. Der Sensor ist unter dem Greifservo angebracht und misst die Werte dann, wenn sich der Arm noch direkt über dem Trichterende befindet. Dadurch ist bei den Messungen eine einigermaßen konstante Farbumgebung gewährleistet, was für zuverlässige Werte wichtig ist. Die Schaltung und das Messen der Werte haben wir dieser Anleitung entnommen: Anleitung

Ergebnis und Diskusion

Wir haben das was wir uns vorgenommen haben geschafft, der Roboter ist vollkommen funktionsfähig aber natürlich auch noch optimierbar. Probleme gibt es besonders beim Farbsensor. Die Kabel die zur Steckplatine führen sind sehr steif und behindern dadurch den Grefarm beim drehen. Da die Steppermotoren sich nicht ihre Position merken, führt schon eine kleine ungewollte Verschiebung des Greifarms durch die Kabel zu großen Problemen. Die einfache Lösung wäre, flexiblere Kabel an zu löten, was wir jedoch nicht mehr geschafft haben. Ein weiteres Problem ergibt sich durch die Reibung des Trichters auf der Tischoberfläche. Diese macht dem Roboter besonders bei den Drehungen zu schaffen und führt zu einem schnelleren Akkuverbrauch da die Motoren mit viel Strom versorgt werden müssen. Hier musste als Lösung der komplette Trichter umgebaut werden.

Code

projektewise1718/elstiftospublic/start.txt · Zuletzt geändert: 2018/05/16 18:50 von d.golovko