Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

projektesose2016:robboardpublic:start

Dies ist eine alte Version des Dokuments!




roboard.pdf

projektesose2016:robboard:doku

RoBoard

Projektplanung

Einführung

RoBoard ist ein Roboter, der in erster Linie die Tafel wischt. Er soll sich zu dem vom Benutzer angegebenen Bereich bewegen und in diesem vorhandene Schrift entfernen. Eventuell soll er auch noch schreiben können.

Prioritäten

Er MUSS sich auf der Tafel positionieren und zum gewünschten Breich hin bewegen und die Tafel wischen können. Er SOLL die Schrift möglichst gründlich entfernen und auch nur genau den angegebenen Bereich säubern. Wenn diese Teile funktionieren, wäre es NETT, den Roboter schreiben zu lassen und die Arbeit mit dem Kamerabild möglichst benutzerfreundlich zu gestalten, z.B. durch Markierung des zu wischenden Ausschitts statt durch Eingabe der exakten Koordinaten. Bewusst VERZICHTEN wir auf die Steuerung des Stifts durch einen beweglichen Arm und auf die Nutzung von einer Sprühflasche, die die Nutzung auf einer Kreidetafel vereinfacht hätte.

Projektstrukturplan

Gesamtprojekt

RoBoard

Aufgabenbereiche

  • Grundlagenrecherche
  • Physischer Aufbau
  • Bildauswertung
  • Dateneingabe
  • Schriftsuche
  • Datenverwertung
  • Kommunikation (Rechner ↔ Arduino)
  • Ansteuerung des Roboters

Grundlagenrecherche

Dazu gehört sich die physikalischen und mathematischen Grundlagen zu erarbeiten und eine Materialiste zu erstellen. Das wird auch im Verlauf der weiteren eine Rolle spielen, da immer wieder neue Problemstellungen auftauchen werden. Hierzu werden wir sowohl das Internet als auch Bücher und Fachzeitschriften zu Rate ziehen. Zu Problemen könnten fehlerhafte Quellen und Berechnungen führen.

Physischer Aufbau des Roboters

Fahrende Plattform

Auf der fahrenden Plattform wird die Halterung für den Schwamm befestigt sein. Außerdem ein W- LAN Modul und eventuell ein Stift in der Mitte. Fortbewegt werden soll es mittels drei Räder samt Motoren. Der Roboter soll in der Lage sein, sich an der Tafel in alle Richtungen zu bewegen.

Aufgaben
  • Planung der Plattform
  • Besorgung der Materialien
  • Bau der Plattform
Material
  • 3 Motoren (Leistung ist noch mit Hilfe des Drehmoments zu ermitteln)
  • Akku zur Stromversorgung
  • Räder mit Magentkern und Stahlummantelung (Verstärkung und Umlenkung des Magnetfelds)
  • Magnetstreifen, um Räder zu umwickeln
  • W- LAN Modul zur Datenübermittlung
  • gegebenenfalls Stift samt Halterung
  • Schrauben, Muttern, etc.
Wissen

Wir werden uns hierfür näher mit dem Drehmoment beschäftigen müssen, um die für den Motor benötigte Kraft berechnen zu können. Außerdem werden wir uns mit den Möglichkeiten zur Datenübertragung beschäftigen.

Risiken

Risiken bestehen bei der Berechnung des Drehmoments, weil von der Korrektheit des Ergebnisses die spätere Funktionsfähigkeit des Roboters abhängt. Sonst könnte es passieren, dass es nicht möglich ist vertikal die Tafel hinunter zu fahren.

Beweglicher Schwamm

Der Schwamm soll beweglich gelagert sein, so dass man den Schwamm nach oben von der Tafel weg klappen kann. Hierdurch soll es möglich sein, den Roboter über die Tafel zu bewegen, ohne sie dabei zu wischen. Die Halterung soll deswegen mit einem Motor an der Plattform befestigt sein.

Aufgaben
  • Planung der Halterung
  • Bau der Halterung
Material
  • Motor zu Bewegung des Schwammes
  • Alustangen für die Halterung des Schwamms
  • Schwamm für Whiteboard
  • Schrauben, Muttern, etc.
Wissen

Wir werden zu den Möglichkeiten für Motoren der Halterung recherchieren. Hierbei ist die benötigte Kraft um den Schwamm in der Luft zu halten und ihm ihn fest auf die Tafel zu drücken zu berücksichtigen.

Risiken

Ein Risiko könnte sein, dass der Schwamm nicht fest genug auf die Tafel gedrückt wird, um sie gründlich zu reinigen, weil der Motor der Halterung nicht stark genug ist.

Bildaufnahme

Die Tafel soll durch eine fest installierte Kamera aufgenommen werden. Die Übertragung der Bilder der Kamera auf den Rechner soll wenn möglich ebenfalls über W- LAN erfolgen. Für die Auswertung der Daten u.ä. siehe „Bildauswertung“.

Aufgaben

Verknüpfung der Kamera mit dem Rechner

Material
  • Kamera
  • W-LAN Modul

Bildauswertung

Position des Roboters

In diesem Abschnitt geht es darum, wie die durch die Kamera aufgenommenen Bilder ausgewertet werden. Das Bild soll den Roboter (für den Nutzer auf dem Rechner sichtbar) innerhalb des Systems lokalisieren.

Aufgaben

Das Kamerabild soll mit einem Koordinatensystem verknüpft werden und so die genaue Position aus den übermittelten Daten bestimmt werden. Die Position des Roboters soll für den Nutzer klar erkennbar sein, deswegen soll das Koordinatensystem auch auf dem Bildschirm sichtbar sein.

Material
  • eigener Rechner
  • Bildverarbeitungsprogramm
Wissen

Wir werden Wissen über die Verarbeitung von Bilddaten auf dem Rechner benötigen. Außerdem, wie wir ein Koordinatensystem erstellen und die gemessenen Daten darin einfügen können.

Risiken

Risiken bestehen hierbei in einer ungenauen Justierung der Kamera, die zu fehlerhaften Daten führen könnte. Außerdem in einer fehlerhaften Einordnung der Koordinaten.

Schriftsuche

Das Programm sucht den vom Nutzer angegebenen Bereich nach Schrift ab. Falls diese vorhanden ist, geht es in den nächsten Schritt der Datenverarbeitung.

Aufgaben
  • Schrift im angegebenen Bereich erkennen
  • Entscheiden (je nachdem, ob Schrift vorhanden ist), ob der nächste Schritt eingeleitet werden muss
Material
  • Computer
  • Daten aus Bildauswertung
Wissen

Wir müssten noch herausfinden, wie das Programm Schrift erkennen kann.

Risiken

Flecken oder Spiegelungen könnten fälschlicherweise als Schrift erkannt werden und dann wird dort ungewollt gewischt. Das könnte mit einer hohen Wahrscheinlichkeit auftreten. Beziehungsweise könnte die Schrift auch zu undeutlich vom Hintergrund hervorstechen, sodass sie nicht erkannt wird und nicht gewischt wird. Wir müssten also immer auf einen sauberen Hintergrund achten und den Kontrast zwischen Tafel und Schrift hoch halten (z.B. Beleuchtung).

Dateneingabe

Der Bereich in dem gewischt werden soll, soll durch die manuelle Eingabe der Koordinaten (bzw. falls möglich durch Markierung des Bereichs im Koordinatensystem auf dem PC) angegeben werden. Damit der RoBoard weiß, wo er hinfahren und nach Schrift suchen muss.

Aufgaben
  • Koordinatensystem der Tafel muss auf dem Bildschirm zusehen sein
  • man braucht von dem rechteckigen Abschnitt, welcher vom RoBoard bearbeitet werden soll, die Koordinaten von der Ecke links oben und von der Ecke rechts unten → diese müssen vom Koordinatensystem abgelesen werden
  • Programm in das die Zielkoordinaten von RoBoard eingegeben und passend verarbeitet (zum Rechteck gemacht) werden können, muss geschrieben werden
Material
  • Computer
  • Kamerabild
Wissen

Wie man das mit dem Markieren im Koordinatensystem macht

Risiken

Die Koordinaten könnten falsch abgelesen und daraufhin falsch eingegeben werden. Dies ist eher wahrscheinlich, wenn man unkonzentriert arbeitet. Wenn man sich Mühe gibt und die Koordinaten richtig eingibt, dürfte nichts schief gehen. RoBoard würde bei einer falschen Eingabe zu einer anderen Stelle fahren, dort nach Schrift suchen und diese gegebenenfalls wegwischen, auch wenn dies nicht gewünscht war. Wenn die Dateneingabe nicht funktionieren sollte, könnte man den RoBoard so vereinfachen, dass er immer die gesamte Tafel nach Schrift absucht und wischt.

Datenverwertung

In der Datenauswertung werden die, durch Bildauswertung und Eingabe des Nutzers, gesammelten Daten zur Berechnung der Aufgaben des Roboters verwendet. Die beinhaltet insbesondere die Berechnung seines Weges auf Grund seiner aktuellen Position und seines Zieles mitsamt des Wissend, wann der Schwamm gesenkt oder gehoben werden muss.

Aufgaben
  • Algorithmen zur Berechnung des Weges entwickeln
  • Den Weg in einer für den Arduino verwertbaren Form ausgeben
Material
  • Eigener Rechner
  • Daten aus Bildauswertung und Eingabe
Wissen

Wichtig ist hierbei den möglichst kürzesten Weg zum Abfahren einer Fläche zu finden. Dabei muss aus gegebenen Randkoordinaten ein Rechteck abgefahren werden.

Risiken

Falls bei der Berechnung Fehler vorkommen, könnte es passieren, dass unser Roboter versucht über den Rand der Tafel hinauszufahren und dabei abstürzt.

Kommunikation

Dieser Teilbereich beinhaltet sowohl die Kommunikation, also Datenübertragung, zwischen Rechner und Arduino, als ach die Kommunikation zwischen Kamera und Rechner. Hierbei muss die Datenübertragung zum und vom Arduino drahtlos erfolgen. Für die Kamera wäre eine drahtlose Übertragung optimal, um unabhängig von der Position der Kamera den Rechner aufbauen zu können. Die zu Übertragenden Daten sind bei der Kamera das Bild in Echtzeit, und bei dem Arduino der berechnete Weg.

Aufgaben
  • Empfangen (und gegebenenfalls Senden) von Daten am Arduino
  • Senden (und gegebenenfalls Empfangen) von Daten an der Kamera
  • Empfangen und Senden von Daten am Rechner
Material
  • Wlan-Modul für den Arduino
  • Wlan-Kamera
  • Eigener Rechner mit mindestens 2 Wlan-Antennen
Wissen

Hierfür benötigen wir das Wissen, wie der Arduino über ein Wlan-Modul angesprochen werden kann. Dies muss dann in unser Eingabeprogramm eingebunden werden. Das gleiche gilt bei der Kamera, wobei in diesem Fall hauptsächlich Daten empfangen werden müssen.

Risiken

Wenn die Kommunikation nicht funktionieren sollte, dabei ist es egal auf welcher Teilstrecke, kann entweder der Weg nicht berechnet werden oder der Weg nicht übertragen werden. In beiden Fällen würde es zum Stillstand unseres Roboters führen

Ansteuerung

Die Ansteuerung beinhaltet die eigentliche mechanische Arbeit des Roboters. Hier werden die einzelnen Motoren gesteuert. Da gibt es zwei Motoren für die Räder, welche dann für eine Drehung entgegengesetzt gedreht werden müssen und für eine Bewegung entlang einer Geraden gleichgerichtet. Wenn möglich wollen für diesen Teil Schrittmotoren verwenden -falls diese stark genug sind- , da die Steuerung dadurch leichter zu realisieren wäre. Dazu kommt der Motor für die Absenkung des Schwammes und vielleicht auch einer für die Absenkung eines Stiftes.

Aufgaben
  • Grundlegende Funktionen integrieren zur Steuerung des Fahrwerks (Fahren, Drehen)
  • Funktion zur Hebung oder Senkung
Material
  • Motoren für das Fahrwerk
  • Servo für das Schwamm-Gelenk
Wissen

Wichtig ist hier herauszufinden, wie genau man mit den Motoren Drehungen vollziehen und Entfernungen abfahren kann. Dazu muss für den Servo die richtige Position gefunden werden, damit der Schwamm fest genug auf der Tafel aufliegt um zu wischen, aber nicht zu fest, um den Roboter nicht von der Tafel weg zustoßen.

Risiken

Falls die Schrittmotoren zu ungenau sind und wir zu nah an der Kante versuchen zu wischen, könnte es passieren, dass der Roboter den Tafelbereich verlässt und zu Boden stürzt. Sollte der Servo den Schwamm zu schwach an die Tafel drücken, könnte selbige nicht mehr vollständig gereingt werden. Ist der Druck jedoch zu groß, könnte der Roboter in die Tiefe stürzen.

projektesose2016/robboardpublic/start.1477494879.txt.gz · Zuletzt geändert: 2016/10/26 17:14 von c.jaedicke