Worum es hier geht

Dieses Blog dokumentiert Fortschritte und Rückschläge der Entwicklung meines ersten Roboterprojektes. Ich habe dem Projekt den Namen vehikel[eins] gegeben - mit mehr oder weniger Hintersinn. Das Vehikel ist als fahrender Roboter konzipiert, der sich mittels einer Kamera visuell orientieren können soll. Die eigentliche Bildverarbeitung findet auf einem PC statt, der Roboter wird deshalb per Funk mit einem Computer in Verbindung stehen. Ich verkneife mir, allzu übermütige Pläne darüber zu schmieden, was im Detail mein Vehikel später visuell leisten können soll. Ich bin in erster Linie von der Idee eines Systems fasziniert, das mit Hilfe selbst gewonnener visueller Informationen in der realen Welt halbwegs sinnvoll agiert - mit der Welt interagiert. Alles noch etwas undurchsichtig? Ja... :)

Der aktuelle Stand

Ich habe das Projekt in drei Etappen aufgeteilt. Die erste Etappe bestand in der mechanischen Realisierung einer motorisierten Plattform für alle späteren Aufbauten. Diese Etappe wurde erfolgreich abgeschlossen. Daraus hervorgegangen ist ein dreirädriges Vehikel, dessen zwei Vorderräder unabhängig über ein Getriebe von jeweils einem Schrittmotor angetrieben werden. Das Hinterrad stellt sich passiv auf die aktuelle Bewegungsrichtung ein. In der zweiten Etappe des Projektes ging es darum, die Elektronik des Vehikels und der Basisstation zu entwickeln. Auch wenn ich noch an Details arbeite, ist diese Etappe in dem Sinne abgeschlossen, dass die gesteckten Ziele erreicht wurden. Der zentrale Mikrocontroller des Vehikels ist ein ATMEL AVR Mega32, die Firmware dafür entwickle ich mit der BASCOM IDE von MCS. Die Schrittmotoren werden durch eine Treiberelektronik auf Basis der Bausteine L297 und L298 angesteuert. Eine Funkverbindung zwischen Vehikel und PC wird mittels eines dazu entwickelten Interfaces hergestellt, das bidirektional mit dem PC über RS-232, mit dem Vehikel per Funk im 433 MHz Band kommuniziert. Die Funkstrecke wurde auf Grundlage der RFM12 Module von HopeRF realisiert. Vorne auf dem Vehikel ist eine mittels Servo bewegliche Funkkamera installiert. Die Kamera unterhält eine eigene Funkstrecke mit ihrem Empfängermodul, das mit PC-Interface und Netzteil die Basisstation bildet. Die am Vehikel befindliche Sensorik kann je nach konkretem Versuch variieren, zur Zeit ist vorne ein SRF05 Ultraschallmodul als Echolot installiert, an den Seiten vorne und hinten befinden sich Infrarot-Abstandssensoren. Die dritte Etappe ist diejenige, die für mich die unberechenbarste ist (aber deshalb auch besonders spannend), denn dabei steht die Implementierung eins visuellen Verhaltens im Mittelpunkt. Mittlerweile habe ich die ersten kleinen "Erfolge" in diesem Bereich zu verzeichnen.

Zum Aufbau dieser Seite


Unterhalb dieses Abschnittes sind die Tagebucheinträge chronologisch angeordnet, der aktuellste steht oben. Es werden nur die jeweils jüngsten acht Einträge auf dieser Seite angezeigt, ältere kann man an ihrem unteren Ende aufrufen. Man kann einen Eintrag kommentieren, in dem man auf "comments" unter dem entsprechenden Posting klickt.

Posts mit dem Label Mechanik werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Mechanik werden angezeigt. Alle Posts anzeigen

Samstag, 20. Oktober 2007

Basisstation im 19-Zoll-Einschubrahmen (Kameraempfänger und Netzteil)

Jetzt sind auch die anderen beiden Module, Netzteil und Funkkameraempfänger, fertig. Die Bilder unten zeigen somit den vorläufigen Endzustand meiner Basisstation. Zu den beiden neuen Modulen ist wenig zu sagen. Der Kameraempfänger befand sich ja funktionsfertig in einem geschlossenen Gehäuse, ich habe dieses Gehäuse nur auf eine Eurokarte geschraubt und diese dann mit einer mit passenden Löchern versehenen Frontplatte verbunden. Die Antennenbuchse des ursprünglichen Gehäuses ragt direkt durch die Frontplatte hindurch. Da der Videoausgang sich auf der der Antenne gegenüberliegenden Seite befindet, habe ich diesen per Kabel zur Frontplatte verlängert. Ich habe mir in diesem Falle die Mühe gespart, ein Netzteil selbst zu bauen, ich habe mir ein billigst (3,95 €) Schaltnetzteil von Pollin besorgt (klassischer Restposten, gibt’s schon nicht mehr), und auch dieses auf eine Eurokarte geschraubt. Es liefert mir -5V, 5V und 12V mit ausreichender Belastbarkeit. Mit einer Frontplatte, einem Hauptschalter, einer Betriebs-LED und dem entsprechenden Wannenstecker für den Bus versehen, habe ich somit ein geeignetes Netzteilmodul.

Samstag, 13. Oktober 2007

Basisstation im 19-Zoll-Einschubrahmen (PC-Interface)

Nachdem ich die letzten eineinhalb Wochen für den Besuch zweier Tagungen verwendet habe, komme ich jetzt endlich wieder dazu, an meinem Roboter-Projekt weiter zu arbeiten. Ich habe heute den Umbau des PC-Interfaces der Basisstation abgeschlossen. Wie die Bilder zeigen, befindet sich das Interface jetzt - wie geplant - in einem 19-Zoll-Einschubrahmen. Das rechte Bild gibt einen Eindruck vom Aufbau. Die Platine ist mittels „Klötzchentechnik“ mit der Frontplatte verbunden – nicht schön aber selten. Ich habe darauf verzichtet, die einzelnen Module auf der Rückseite über die für dieses Gehäusesystem eigentlich vorgesehenen Stecker zu verbinden, stattdessen verwende ich einfache Wannenstecker. Die entsprechenden Gegenstücke gibt es als Quetschverbinder für Flachbandkabel, und da ich natürlich mehrere Verbinder auf ein Kabel setzen kann, ergibt sich somit eine einfache Möglichkeit ein Bussystem aufzubauen. Nach dem jetzigen Stand findet über diesen Bus nur die Verteilung der Versorgungsspannungen statt. Die beiden noch fehlenden Module (Kameraempfänger und Netzteil) sind in Arbeit und hoffentlich auch im Verlauf der nächsten Woche fertiggestellt.

Dienstag, 24. Juli 2007

So weit, so gut...

Die erste angestrebte Etappe ist erreicht: ich habe einen "fahrbaren Untersatz". Wenn der Weg dahin auch nicht ganz geradlinig war, bin ich mit dem Zwischenergebnis doch recht zufrieden. Ich habe weitere sechs Bilder gemacht, die den aktuellen Zustand dokumentieren. Wie die ersten beiden Fotos (man entschuldige die etwas dürftige Qualität) zeigen, habe ich jetzt auf das Chassis die zukünftige "Hauptplatine" montiert, die vorerst natürlich noch unbestückt ist. Hier wird sich dann bald ein AVR Mega32 befinden, sicherlich auch ein kleines LCD und ein paar Taster um verschiedene Betriebsmodi anwählen zu können, und – wichitg – ein RFM12 Funkmodul [link], über das das Vehikel mit einem PC kommunizieren soll (aber so weit sind wir noch lange nicht...). Ich habe dem Roboter bereits jetzt schon eine Funkkamera gegönnt (sehr mittelmäßiges Ding, dafür aber günstig bei Pollin [link]), um mir später all zu aufwendige Umbauten zu sparen – denn dass ich irgendwann eine Kamera wollen würde, ist völlig klar :). Die Kamera ist auf einem Miniservo montiert, damit mein Vehikel auch Augenbewegungen durchführen kann. Dieser Aufbau ist nach meinem Geschmack noch nicht optimal, ich werde sehen, ob das unter Funktion so bleiben kann.
Auch das "tiefergelegte" Hinterrad sei hier nochmal gezeigt. Das Tiferlegen habe ich einfach mit zwei PVC-Platten realisiert. In dem sich ergebenden Zwischenraum hat jetzt die Steckverbindung von Akku und Elektronik Platz.
Außerdem gibt es noch zwei Bilder vom Getriebe. Das erste zeigt im wesentlichen den Aufbau: Eine Alu-Grundplatte ist über vier Sechskantbolzen (hier kaum zu sehen) am Chassis befestigt, an dieser Platte ist der Schrittmotor angeflanscht. Wie man sieht, ist das rechte Loch der Motorbefestigung ein Langloch, um später den Eingriff des Ritzels in das Zahnrad justieren zu können. Das Hauptzahnrad sitzt auf einer 4mm-Achse, diese läuft in zwei gesinterten Buchsen, eine in der genannten Grundplatte, eine in der Deckplatte, die über vier Abstandsbolzen das Getriebe zum Rad hin abschließt. Ich hatte zwischenzeitlich das Problem, dass unter Last die Achsen in den Klemmbuchsen der Räder durchdrehten. Um das zu verhindern ist die Achse jetzt geschlitzt, und ein kleines Blechstück sperrt sie mittels eines glücklicherweise in den Rädern vorhandenen Schlitzes (Fischertechnik ist wirklich gut durchdacht!) – dies ist auf dem letzten Bild zu sehen.



Samstag, 21. Juli 2007

Läuft!

Ich bin gerade mit dem aktuellen Umbau fertig geworden. Und weil ich direkt ein bisschen begeistert davon bin, dass mein Vehikel sich jetzt immerhin vernünftig über den Boden bewegen kann, veröffentliche ich doch direkt und auf die Schnelle mal ein paar Bilder. Weitere Detailaufnahmen und Erläuterungen folgen dann in Kürze.
Auch wenn jetzt alles recht schlicht aussieht, war der Bau des Getriebes durchaus nicht ganz trivial - aber dazu wie gesagt bei Zeiten mehr. Da ich für die Vorversion des Antriebes die Ritzel von den Motoren gezogen habe, habe ich mir für diesen Aufbau neue Motoren bestellt. Geeignete Zahnräder für mein Getriebe waren ausnahmsweise mal schnell und kostenoptimal (=umsonst) gefunden: in der Krims-Krams-Kiste kullerten schon seit längerem zwei wirklich schöne, sehr präzise gesinterte Metallzahnräder gleichen Moduls wie die Motorritzel herum. Sie entstammen wie mein Hinterrad (ehemals Papierandruckrolle) einem zerlegten Drucker.
Die Motoren haben ihre Position zum Chassis zwar nicht verändert (auch wenn sie jetzt anders aufgehängt sind), die Radachse ist aber nun um etwas mehr als den Radius des neuen Zahnrades nach unten verschoben. Dieses hat den positiven Nebeneffekt, dass mein Vehikel nun an Bodenfreiheit gewonnen hat. Diese Erhöhung des Chassis erforderte es natürlich auch, dass das Hinterrad „tiefer gelegt“ werden musste.


Donnerstag, 21. Juni 2007

Hinterrad, Version Zweipunktnull

Jetzt ist das neue Hinterrad endlich montiert. Das Prinzip ist das gleiche wie bei der vorigen Version: an der Akkuwanne (ich nenne diesen Teil des Chassis jetzt mal so...) ist zunächst eine Auslegerplatte montiert. Ich habe dafür Aluminium von drei Millimetern Stärke verwendet, damit es nicht zu Instabilitäten kommt. Die Platte ist mit Messingklötzchen befestigt, wie ich sie auch schon bei der Akkuwanne eingesetzt habe (s.u.). In der Auslegerplatte befindet sich ein präzises Loch, in dem sich der Schaft einer Schaftschraube leichtgängig drehen kann - dieses stellt die Lagerung der Gabel dar. Der Gewindeteil der Schaftschraube greift in einen PVC-Block, an dem zwei Aluminiumschenkel befestigt sind und somit die Gabel bilden, in der das Hinterrad gelagert ist. Bei dieser Version sind die Schenkel deutlicher gegen den Lagerpunkt der Gabel verschoben als bei der Vorversion. Relativ zum Chassis liegt der Lagerpunkt übrigens so, dass das Rad seine Orientierung um 360° ändern kann, ohne ans Chassis anzuecken.
Die Realisierung des Hinterrades könnte dem einen oder anderen als kleiner Tipp dienen. Ich habe als Rad eine Andruckrolle aus einem alten Drucker verwendet, gleichartige Rollen habe ich schon in diversen Druckern gesehen, sie sollten also leicht zu bekommen sein. Sie haben zunächst mal den Vorteil, dass sie materialbedingt eine gute Bodenhaftung aufweisen. Meistens sind sie auf sehr präzise – aber zöllige – Achsen aufgepresst, in diesem Falle war es eine 7,93 mm dicke Achse (gemessen, ich war bisher zu faul nachzusehen, was das "nominal" für ein Maß ist). Das Loch in der Rolle hat somit auch einen Durchmesser von knapp unter acht Millimetern. Ich habe dieses Loch nun mit einer präzisen Maschinenreibahle auf 8 mm aufgerieben. Durch eine minimale Menge Fett läuft das Rad dadurch nun ganz hervorragend auf der 7,93 mm Achse. Also habe ich mir ein Stück von der Achse abgesägt, die Enden abgedreht und mit Bohrungen versehen. Somit hatte ich ein hervorragend gelagertes Hinterrad. Das kurze Stück Achse, zu erkennen auf dem letzten Bild, sitzt fest zwischen den Schenkeln der Gabel. Anlaufscheiben rechts und links verhindern, dass das Rad durch die Gabel gebremst wird.
Auf die Auslegerplatte habe ich nun auch schon mal die Motortreiberplatine montiert, die Befestigung für die – ebenfalls noch nicht vorhandene – Hauptplatine steht noch aus.
Außerdem habe ich die Akkuwanne auch noch etwas gekürzt, damit das Vehikel nicht allzu lang wird, es ist jetzt schon etwas größer geworden, als ich geplant hatte.
Achja, so ganz ausdrücklich hatte ich es ja noch garnicht gesagt: das Hinterrad funktioniert jetzt sehr zufriedenstellend, es richtitet sich immer brav auf die aktuelle Fahrtrichtung aus. Schön.


Samstag, 16. Juni 2007

Ein Satz mit x...

... das war wohl nix. Wie die Bilder zeigen, habe ich die Hinterradaufhängung mittlerweile fertiggestellt. Das einzige Problem dabei: die Sache funktioniert nicht. Wie man insbesondere auf dem rechten Bild sehen kann, habe ich die Drehachse der Gabel (gebildet von der Schaftschraube, deren Kopf man auf der Auslegerplatte erkennen kann) und die Drehachse des Rades gegeneinander verschoben (genaugenommen 10 mm) . Die Idee dabei war, dass das Rad sich dadurch besser auf eine neue Fahrtrichtung des Vehikels einstellen kann. Genau das funktioniert aber nicht, sprich: die 10 mm sind augenscheinlich zu wenig. Wenn ich das Hinterrad per Hand um 90° gegen die Fahrzeuglängsachse verdrehe und danach das Vehikel dann geradeaus ziehe, stellt sich das Rad nicht wieder auf die Fahrzeuglängsachse ein, sondern verharrt in seiner 90°-Stellung und radiert über den Boden. Unschön. Die Lagerung der Gabelachse ist zwar nicht perfekt, aber nicht so schlecht, dass das Problem dort seine Ursache hätte. Es liegt also ziemlich sicher an dem zu geringen o. g. Versatz.
Ich werde das Ganze jetzt noch mal aufbauen und dabei die Drehachsen des Rades und der Gabel noch weiter auseinanderziehen, außerdem werde ich ein kleineres Rad verwenden – mal sehen ob’s hilft. Dann an die Arbeit...


Dienstag, 22. Mai 2007

Einige Details

Das linke Bild zeigt im Detail, wie mittels kleiner Messingklötze die Bleche miteinander verbunden sind. Die Motoren sind mit Sechskantbolzen an den Blechen befestigt. Auf dem rechten Bild sind alle bisher verwendeten Einzelteile zu erkennen.

Montag, 21. Mai 2007

Der Anfang...

Die beiden Bilder zeigen den aktuellen Stand. Wie unten beschrieben befinden sich die Räder direkt an den Motoren, die Motoren sind am Chassis montiert. Man erkennt außerdem die Konstruktion der Wanne aus drei Einzelblechen. Auf den Blechen ist bisher noch die Schutzfolie, die mache ich ab, wenn alle Löcher gebohrt sind. Das linke Bild zeigt die recht geringe Bodenfreiheit des Vehikels - wie gesagt, hoffentlich kein Problen in den Umgebungen, in denen sich der Roboter bewegen soll.

Malte Ahlers 2007-2008