Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
projektews1415:malokal [2015/03/30 14:07] c.jaedicke |
projektews1415:malokal [2016/01/21 12:45] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ~~NOTOC~~ | + | |
<html> | <html> | ||
Zeile 105: | Zeile 105: | ||
- | =====Software===== | + | ======Software====== |
Die Software rund um malokal gliedert sich in verschiedene Bereiche und Aufgaben. | Die Software rund um malokal gliedert sich in verschiedene Bereiche und Aufgaben. | ||
Zeile 118: | Zeile 118: | ||
- | ======malokalRemote====== | + | =====malokalRemote===== |
{{:projektewise2014:malokal:dokumentation:remote_all.jpg}} | {{:projektewise2014:malokal:dokumentation:remote_all.jpg}} | ||
Zeile 542: | Zeile 542: | ||
Besser wäre natürlich, die Wartezeit nicht von der Ausführungsgeschwindigkeit abhängig zu machen, sondern eine zeitbasierte Messung mit einem experimentellen Wert zu verwenden. Es könnte auch gemessen werden, wie lange das Servo für die vollen 180° benötigt, und dann die Wartezeit von dem zu ändernden Winkel abhängig zu machen. Wir hatten jedoch mit dem Loop-Code bisher keine Probleme, weshalb wir diese Idee bisher nicht umgesetzt haben. | Besser wäre natürlich, die Wartezeit nicht von der Ausführungsgeschwindigkeit abhängig zu machen, sondern eine zeitbasierte Messung mit einem experimentellen Wert zu verwenden. Es könnte auch gemessen werden, wie lange das Servo für die vollen 180° benötigt, und dann die Wartezeit von dem zu ändernden Winkel abhängig zu machen. Wir hatten jedoch mit dem Loop-Code bisher keine Probleme, weshalb wir diese Idee bisher nicht umgesetzt haben. | ||
+ | |||
+ | ======Zeichnungen und Tests====== | ||
+ | |||
+ | =====Das erste Bild===== | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_01.jpg}} | ||
+ | |||
+ | Das hier ist das aller erste Bild, das malokal gezeichnet hat. Eine remote gab es noch nicht, die Befehle waren fest einprogrammiert. Doch schon hier haben wir gesehen, dass das Projekt was werden kann. | ||
+ | =====Zeichnungen von malokalV1===== | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_06.jpg}} | ||
+ | |||
+ | Das Servo für den Stift ist neu dazu gekommen. So können wir die ersten gestrichelten Linien zeichnen. | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_05.jpg}} | ||
+ | |||
+ | Das erste Bild, das mit malokalRemote entstanden ist. In der Mitte erkennt man ein Flugzeug. | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_07.jpg}} | ||
+ | |||
+ | Hier haben wir die Winkelfehler mit einem eigenen Testmuster getestet. Aufgrund dieses Bildes haben wir uns entschieden, MalokalV2 zu bauen. Die Abweichungen sind wegen der ungenauen Hardware sehr groß. Die Ecken haben alle eine kleine angesetzte "Linie". Diese entsteht beim drehen, wenn der Stift nicht exakt mittig und auf der Motorachse ausgerichtet ist. | ||
+ | |||
+ | =====erste Zeichnung mit MalokalV2===== | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_08.jpg}} | ||
+ | |||
+ | Mit V2 sind die Ecken und Winkel wesentlich genauer. | ||
+ | =====21. Januar 2015===== | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_09.jpg}} | ||
+ | |||
+ | Jetzt wollten wir wissen, was wirklich geht. Für mehr Genauigkeit haben wir diese Zeichnung mit einem Kugelschreiber gezeichnet. Sehr gut sieht man bei "TU" das abdriften nach oben. | ||
+ | |||
+ | =====29. Januar 2015===== | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_02.jpg}} | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_03.jpg}} | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_04.jpg}} | ||
+ | |||
+ | Mehr Tests, um die Genauigkeit von malokal zu testen. | ||
+ | |||
+ | =====9. Februar 2015===== | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:img_1496.jpeg}} | ||
+ | |||
+ | Während wir malokal vor den anderen Projektgruppen vorgestellt haben, hat er seinen eigenen Schriftzug "MALOKAL" auf 1 mal 1,90 gezeichnet. Er hat die ganzen 10 min gebraucht und das L leider nicht mehr geschafft. Das Publikum war durch seine Leistung jedoch so überzeugt, dass es malokal auf den ersten Platz gewählt hat. Unsere Thermobecher haben wir aber trotzdem noch nicht abgeholt. | ||
+ | |||
+ | =====20. Februar 2015===== | ||
+ | |||
+ | Hier haben wir erstmals manuellRemote mit malokalRemote kombiniert. Das Rechteck und die "Sinus"-Kurve (eigentlich Kosinus...) sind per manuellRemote gezeichnet (mit Beschleunigungsmesser im Telefon). Der Text wurde in der remote konfiguriert und dann gezeichnet. | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_10.jpg}} | ||
+ | |||
+ | ======Pläne für die Zukunft====== | ||
+ | Was wir von unserem ursprünglichen Plan (bisher) nicht umsetzen konnten oder wollten. | ||
+ | |||
+ | =====Umsetzung von malokalV4 — geplant===== | ||
+ | Malokal hat zwar schon mehrere Rundum-Erneuerungen hinter sich (siehe [[projektewise2014:malokal:dokumentation:hardware|Hardware und Aufbau]]). Trotz aller Mühen sieht er dabei aber immer noch ziemlich gebastelt aus. | ||
+ | Wünschenswert wäre ein sauberes Fahrgestell, das sowohl besser aussieht, als auch präziser gefertigt wäre. Damit könnten Winkelabweichungen und Ungenauigkeiten beim Zeichnen nochmals minimiert werden. | ||
+ | |||
+ | Eine für uns relativ leicht umzusetzende Möglichkeit ist das Drucken eines Fahrgestells mit einem 3D-Drucker, der unserer Gruppe zur Verfügung steht. Dafür sind natürlich 3D-Dateien nötig. Erstellt haben wir diese teilweise mit SketchUp (eher das "Paint" unter den 3D-Programmen) und dem professionelleren Programm SolidEdge von Siemens. | ||
+ | |||
+ | ====Entwurf 01==== | ||
+ | |||
+ | Der erste Entwurf sieht eine solide Grundplatte vor, an der die Motoren direkt befestigt werden können. | ||
+ | Der Stift soll eine eigene Halterung bekommen, die modular aufgebaut werden soll. Das würde es uns ermöglichen, auch andere Medien (Kreide, verschiedene Stifte, zwei nebeneinander....) einzusetzen. Verbunden mit einem besseren Fahrwerk sollte evtl. auch die Elektronik verlötet und in eine eigene Box verlegt werden. | ||
+ | |||
+ | Das Bild links zeigt den Plan, das Bild rechts ist der erste Druck, Maßstab ca 1:2,5. | ||
+ | |||
+ | |||
+ | <html> | ||
+ | |||
+ | <img style="width:49%;position:relative;float:left;" src="/robotikWiki/lib/exe/fetch.php?media=projektewise2014:malokal:dokumentation:render_main_stift.jpg"> | ||
+ | <img style="width:49%;margin-left:2%;position:relative;float:left;margin-bottom:10px;" src="/robotikWiki/lib/exe/fetch.php?media=projektewise2014:malokal:dokumentation:img_9918.jpeg"> | ||
+ | |||
+ | </html> | ||
+ | ====Entwurf 02==== | ||
+ | |||
+ | Der zweite Entwurf ist ein komplettes 3D-gedrucktes Gehäuse in 3 Teilen. Das schwarze Bodenelement besitzt gedruckte Befestigungen für die Motoren, sowie eine flexible Befestigung für den Stift in der Mitte. Das Laufrad sitzt an einer Seite in einem kleinen Loch. Die Motoren sind komplett verkleidet. Für die Räder gibt es Aussparungen an der Unterseite. Die weiße Platte besitzt einen Schlitz rund herum, in den ein dünner gebogener Plexiglasstreifen eingelassen und verklebt ist. Das schwarze Teil besitzt ebenfalls diesen Schlitz, ist jedoch nicht mit dem Plexiglas verklebt. So kann der weiße Deckel samt Plexiglas einfach abgenommen werden. | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:ohne_titel.jpg}} | ||
+ | |||
+ | |||
+ | =====Kurven fahren — eventuell===== | ||
+ | Ein weiterer Punkt, der zu verbessern wäre, ist das Kurvenfahren. | ||
+ | Im Moment splittet die Geomerative-Library Kurven in kleine gerade Strecken. Malokal muss sich nach jeder kurzen Strecke (teilweise nur wenige mm lang) neu ausrichten.\\ | ||
+ | Stellt man sich den Buchstaben "O" vor, entstehen beim Abfahren des Pfades enorm viele Drehungen. Das dauert zum einen lange, ist aber auch auf Grund der sich aufaddierenden Winkelabweichungen problematisch. Es wäre daher durchaus sinnvoll, Code zu implementieren, der den Motoren abhängig vom Radius der zu fahrenden Kurve verschiedene Geschwindigkeiten zuweist. \\ | ||
+ | Da setzt mathematisches Verständnis von [[http://de.wikipedia.org/wiki/Bézierkurve|Bezier-Kurven (Wikipedia)]] voraus. | ||
+ | |||
+ | =====Sensoren — eventuell===== | ||
+ | Eine Wahrnehmung der Umgebung war ursprünglich vorgesehen, wurde jedoch verschoben.\\ | ||
+ | Es gab Pläne, den Schlupf der Räder zu verringern, in dem die Relativbewegung zum Papier mit Mausmodulen (Computermaus) gemessen und die Position entsprechend korrigiert wird.\\ | ||
+ | |||
+ | Ein anderer Plan war, mithilfe eines Helligkeitssensors, der schwarz von weiß unterscheiden kann, die Papierkante zu finden. Der Algorithmus, um von einem zumindest ungefähr bekannten Punkt den Ursprung des Papiers zu finden, ist unten skizziert. Der Algorithmus könnte hin und wieder besonders nach komplexen Formen ausgeführt werden, und so eine komplexe Lokalisierung umgehen. Der Algorithmus funktioniert besonders deshalb, weil die Fehler innerhalb einer einzigen Bewegung (zum beispiel einer Drehung um 90°) sehr gering sind. Vorraussezung ist, das der Helligkeitssensor möglichst nahe Am Stift liegt, oder zumindest in einem definierten Abstand auf einer Achse vertikal zu der Motorachse. | ||
+ | {{:projektewise2014:malokal:dokumentation:winkel_finden_plan.jpg|}} | ||
+ | |||
+ | =====Lokalisierung — eher nicht===== | ||
+ | Ursprünglich war ja eine Lokalisierung von malokal geplant. | ||
+ | Wir wussten nicht, wie genau die Motoren sein würden und hatten anfangs auch daran gedacht, malokal draußen auf großen Flächen fahren zu lassen. Letzteres ist im laufe des Projekts in den Hintergrund gerückt, und es hat sich herausgestellt, dass die Schrittmotoren äußerst präzise arbeiten. Ein bisschen Schlupf ist zwar vorhanden, wird aber durch Beschleunigung und Abbremsen minimiert. | ||
+ | Lediglich Winkelabweichungen sind nach wie vor ein Problem. Allerdings sind diese nicht so schlimm. Daher wurde die Lokalisierung vertagt. Bis jetzt sieht es auch so aus, als würden wir uns damit (zumindest vor Abgabe der Doku) nicht mehr beschäftigen können. | ||
+ | Ausserdem hatten wir Probleme, uns eine gute technische Umsetzung für die Lokalisierung zu überlegen, die die erforderliche Präzision erreicht. Im Moment kann malokal nach einer komplexen Form kurz angehalten und der Winkel manuell (ferngesteuert) korrigiert werden. So können auch schon jetzt komplexe und große Zeichnungen umgesetzt werden. | ||
+ | |||
+ | =====Outdoor-Tauglichkeit — eher nicht===== | ||
+ | Malokal könnte in Zukunft auch draußen zeichnen. Dafür müssten eventuell die Motoren aufgerüstet werden und die Räder an andere Untergründe angepasst werden. Eine glatte Betonfläche sollte sich jedoch nicht all zuweit von innenliegenden Fußböden unterscheiden. Schwerer wäre das Zeichnen auf unbekannten Untergründen wie grobem Asphalt. Das Zeichenmittel müsste noch auf die Untergründe abgestimmt werden. Auf Asphalt könnte Kreide verwendet werden, wenn die Reibung und damit die Fehler nicht zu groß werden. | ||
+ | |||
+ | ======Fazit====== | ||
+ | |||
+ | Malokal kann sich zwar (bisher) nicht lokalisieren oder ausrichten, jedoch schadet das nicht den erzeugten [[projektewise2014:malokal:dokumentation:zeichnungen|Bildern]]. | ||
+ | |||
+ | Je komplexer ein Bild wird, desto größer werden auch die Fehler. Jedoch kann malokal während des Zeichnens kurz angehalten und im Winkel korrigiert werden, oder das Bild entsteht Stück für Stück, wobei malokal immer wieder am Startpunkt des Papiers ausgerichtet wird. | ||
+ | |||
+ | Malokal hat uns großen Spaß gemacht. Wir haben ein Produkt, mit dem wir sehr zufrieden sind und was vor allem funktioniert. Auch die Software ist solide geworden und funktioniert ohne größere Probleme. | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:malokal_04.jpg}} | ||
+ | |||
+ | {{:projektewise2014:malokal:dokumentation:zeichnung_10.jpg}} | ||
+ | |||
+ | ======Code====== | ||
+ | =====malokalOS — 21. Februar 2015===== | ||
+ | {{:projektewise2014:malokal:dokumentation:malokalos.zip|}} | ||
+ | |||
+ | =====malokalRemote — 21. Februar 2015===== | ||
+ | {{:projektewise2014:malokal:dokumentation:malokalremote.zip|}} |