Informatik und Kram

Da wir lange nicht wußten, wo wir das für die Uni ausgearbeitete Material unterbringen sollten und auch einen schrecklichen Drang hatten der Welt diverse Sachen aufzudrücken...

Endlich RP6
de-flagge aktiviert en-flagge deaktiviert

Endlich hab ichs geschafft, einen RP6 in die Hände zu bekommen. Da ich langsam echt keine Lust mehr habe, an meinem WEIRDO rumzuschrauben und da noch endlos Zeit/Geld/Wut reinzustecken, hab ich mich entschieden, meine Robo-Experimente auf dem RP6 weiterzuführen. Dieser Artikel entsteht nach und nach, je nachdem, wann ich Zeit habe, was damit zu bauen, ihr seid also quasi live dabei :-)
Und so sieht das Teil ausgepackt aus, schon sehr geil, hätte nicht gedacht, dass der so schön kompakt ist. Ich werd mir jetzt mal gleich die Bedienungsanleitung reinfahren und dann direkt mal ne Probefahrt machen und checken, wieviel geiler fertige Getriebe und ein ordentliches Fahrwerk als mein alter Aufbau sind.

Tag 1 - Setup

Windows

Einfach den Anleitungen in der KurzAnleitung folgen!

Linux

Steht leider noch nichts in der Kurzanleitung, aber glücklicherweise basieren die Tools von AREXX (Hersteller des RP6) auf Java, so dass man sie auch mit Linux benutzen kann. Hierzu einfach auf die Homepage von AREXX ( http://www.arexx.com ), und dort bei Robotik/RP6/Software die Programme ziehen und den Anleitungen folgen. Wenn man rp6_loader.zip entpackt hat, sieht man ein paar exe-files, sowie RP6Loader_linux.sh. Sofern Java installiert ist, erscheint dieses nette Fenster. Bei mir wurde die FTDI-Platine unter Linux erst nach einigen Minuten erkannt (keine Ahnung warum).
Das hier is die GUI. Von hier aus kann man dann die Programme in den RP6 laden, sich Rückmeldungen über die serielle Schnittstelle ausgeben lassen etc.
Die Motor-Test-Programme wollten bei mir alle nicht funktionieren, weil der linke Encoder nichts von sich gegeben hat, also musste ich doch mal in die Doku kucken, argh :-) Problem erkannt, Problem gebannt. Auf den Encodern befinden sich Potis, die man einstellen kann, das macht kein Spaß kann ich euch sagen! Bei dieser Gelegenheit bin ich aber über ein super feature der GUI gestolpert, nämlich die Möglichkeit, sich versch. Messwerte in separaten Displays live anzuschauen! Video seht ihr hier:

Tag2 - Erstes Programm

Hier mal das erste Programm, ich nenns einfach mal "Die Motte" :-) Er fährt in die Richtung, in der mehr Licht wahrgenommen wird. Ist rechts und links gleich viel Licht, fährt er geradeaus. Ausserdem sind die Bumper und die IR-Sensoren aktiviert, deshalb stösst er auch nirgends an:

Tag3 - I²C - LCD - Display

Mal ein kleiner Eigenbau, ich hab mein LCD auf ne Erweiterungsplatine gepackt, zusammen mit nem Atmega8, der im I²C-Bus hängt und so Nachrichten entgegennimmt. LCD funktioniert schon, I²C mittlerweile auch, aber folgendes beachten:

I²C-Probleme

Einfach wie in der Anleitung beschrieben die RP6I2C-Libs einbinden (den header im Programm, und das source-file im Makefile), auch beim Programm für den Atmega8. Jetzt kommt das wichtigste, was mich zwei volle Tage gekostet hat: Beim slave nur gerade Adressen benutzen!(Bei den RP6Libs wird immer das gesamte 8Bit Adressbyte übergeben. Das unterste Bit muss frei bleiben - nur die oberen 7 sind die eigentliche Adresse.)
Ich geb zu, die Verdrahtung sieht nicht so schön aus, aber auch nur, weil beim ersten Entwurf die Leitungen der Datenbits vertauscht waren..und dann hatte ich auch keinen Bock mehr, das nochmal ordentlich zu machen. Wens interessiert, ich hab Kupferlackdraht benutzt, zum ersten Mal überhaupt, und ich bin begeistert von dem Zeug! Musste den Lötkolben allerdings auch auf ca. 400° einstellen, dass der Lack geschmolzen ist.

Tag 4 - Greifer

Ich brauch unbedingt nen Greifer, da der RP6 ja mal Bier holen soll :-)
Hier also mal die ersten proof-of-concepts, prototypen etc.:

Proof-of-concept erfolgreich!!!


Kommentare

Schöner Greifer!
Aber pass auf das der Robby keinen Kater bekommt von dem Bier :)

Kommentar schreiben