Navigation

Mitglieder Online

· Gäste Online: 1

· Mitglieder Online: 0

· Anzahl Mitglieder: 107
· Neuestes Mitglied: Klimparfed

Neueste Artikel

Login

Benutzername

Passwort



Noch kein Mitglied?
Hier klicken um Dich zu registrieren.

Passwort vergessen?
Um ein neues Passwort anzufordern klicke hier.

Latest Downloads

Forum Themen

Neueste Themen
· Multi-Master IIC Int...
· HCS08 im DIP Gehäuse
· Rotary Encoder
· Serial Software Buffer
· Embedded World 3-5.3...
Heisseste Themen
Keine Themen erstellt

Pistenbully

1. Das Controllerboard

Ich habe mir einen kleinen autonomen mobilen Roboter gebaut. Als Erstes ist hier erstmal der Plan meines Controllerboards. Das Board basiert auf einem Motorola 68HC908GP32, der über 32KB Flash und 512 Byte Ram verfügt. Der Controller ist In System Programmierbar, die Programmierschaltung ist einfach aufzubauen und die nötige Software inklusive Assembler, Debugger und Simulator ist bei P&E Micro gratis zu bekommen. Inzwischen gibt es auch von Metrowerks in Zusammenarbeit mit Motorola eine HC08 Special Edition des C-Compilers, welche bis zu 16KB Code erzeugen kann. Weitere Features sind 8 8-Bit AD-Eingänge, 2 Timer Kanäle, Interne Pullups und bis zu 33 I/O Leitungen, von denen 8 Interrupt fähig sind. Die Programmierschaltung ist schon auf dem Board integriert, der Max232 erledigt die nötige Pegelwandlung zur Seriellen Schnittstelle des PC und liefert die nötige Spannung zur Aktivierung des Monitormodus. Den Max232 habe ich auf eine kleine Separate Platine gelötet.


2. Schaltplan des Boards






















































































3. Chassis

Als Fahrgestell habe ich ein ausgeschlachtetes Modellfahrzeug mit dem Namen Pisten Bully verwendet. Das ganze war ein Kettenfahrzeug, das sich durch die 2 vorhandenen Motoren leicht steuern läßt und eine Menge Platz bietet. Praktischerweise ist auch gleich ein Fach für den Akku vorhanden. Der Akku war auch gleich mit dabei. Diesen Akku benutze ich für die Versorgung der Motoren. Für das Controllerboard und die Sensoren benutze ich einen zweiten Akku, der gut in den oberen Teil des Chassis reinpaßt.
























4. Sonstige Hardware

Der Roboter ist mit Tastern ausgestattet um einen Aufprall zu erkennen und mit drei IR-Sensoren um zu verhindern, das er irgendwo anstößt. Die IR-Sensoren sind mit Sharp IS471F Detektoren aufgebaut. Weil mir die im Fahrzeug vorhandenen H-Brücken durch ein Mißgeschick abgeraucht sind, habe ich sie, nachdem ich die Stromaufnahme der Motoren gemessen habe, durch einen L293D ersetzt. Der Vorteil des L293D ist auch das durch die Enable Eingänge 2 PWM Ports am Controller ausreichen. Für die IS471F und den L293D habe ich jeweils die Schaltungen aus den Datenblättern verwendet. Die ENABLE Eingänge des habe ich mit den beiden Timer Kanälen verbunden damit ich die Möglichkeit habe die Geschwindigkeit mittels PWM zu variieren. Einen Plan des Anschlusses gibt es hier : L293D.gif. Die Batteriespannung wir über einen A/D kanal kontrolliert.

5. Software

Für die Software habe ich ein kleines Assembler Programm geschrieben. Mit der bisherigen Ausstattung ist der Roboter ja nur in der Lage eigenständig durch die Gegend zu fahren, also ist das Programm noch recht einfach. Wenn der Roboter auf der einen Seite ein Hindernis erkennt weicht er zur anderen Seite aus. Ein wenig mußte ich noch tricksen, damit der Roboter, wenn er schräg auf eine Ecke zufährt sich dort nicht verhaspelt. Die Motoren werden per PWM angesteuert, da aber kein Feedback vom Antrieb kommt, ist die Pulsweite immer 100%. Die Akkuspannung für die Motoren wird über einen A/D Eingang überprüft. Wenn die Akkuspannung unter 8 Volt sinkt, hält der Roboter so lange an bis die Spannung wieder über 8 Volt ist. Der Sourcode ist hier : robsrc.asm

6. Die Abstandssensoren

Die Abstandssensoren habe ich mit 2 IS471F aufgebaut, die ca. 1cm voneinander entfernt sind.
























Davon habe ich jeweils einen vorne und einen hinten am Roboter angebracht. Leider hat sich das ganze als unpraktikabel herausgestellt. Die Schaltschwelle der IS471F hängt zu sehr von der Stellung der LED´s ab. Es ist zwar möglich, einen Sensor in etwa so einzustellen, das die Schaltschwellen so 1cm auseinanderliegen, aber dann beide Sensoren auf den gleichen Abstand zu bekommen ist schon sehr schwierig. Da sich die Lage der LED´s durch Erschütterungen beim fahren gerne mal etwas verändert, habe ich das ganze dann aufgegeben.

7. In Planung

Das Thema Abstandssensoren liegt erstmal auf Eis siehe oben. Die Orientierung an der Wand finde ich aber weiterhin reizvoll. Mal sehen was mir da noch für Ideen kommen. Ansonsten bin ich weiter auf der Suche nach neuen Zielen für den Roboter. Eine Person zu verfolgen wäre auch interessant.

Hier noch ein paar Bilder von meinem Roboter.



So sah er anfangs mal aus





















Von vorne



















Das Controllerboard






















Von hinten






















von der Seite






















Die vorderen Sensoren























Ein IR-Taster in großaufnahme























Nochmal von vorne























Von oben

Seitenaufbau: 0.14 Sekunden
727,936 eindeutige Besuche