Hallo Virtuelx,
ich habe auch vor ein paar Monaten angefangen, einen kleinen autonomen Roboter zu bauen.
Ich habe einen etwas anderen Ansatz gewählt:
Als Microcontrollersystem habe ich einen Arduino gewählt. Den kann man in einem C++ Derivat programmieren, die Entwicklugsumgebung ist umsonst und gut dokumentiert. Einen Arduino bekommt man ab 25 EUR. Ich habe mir den Arduino als Lernpaket gekauft (das liegt bei 70,--EUR z.B. bei Amazon) - allerdings war der Einstieg dafür ein Kinderspiel. Man kann sich die Informationen auch im Internet zusammensuchen: http://www.arduino.cc/ ist eine gute Einstiegsseite.
Programmiert wird der Arduino über USB, einen Programmer / Flasher benötigt man nicht.
Eine Alternative wäre vielleicht auch der Netduino. Prinzipiell dem Arduino ähnlich, allerdings deutlich schneller und zu programmieren über das .NET Microsoft Framework mit Microsoft Visual Studio (die Free- Edition reicht aus). Ich habe mich vorerst für den Arduino entschieden, weil es für den sogenennte Shields gibt: Das sind standardisierte und fertige Platinen, die man auf den Arduino stecken kann. Ein Motortreiber- Shield (z.B. für Getriebemotoren) bekommt man für ca. 25 EUR.
Ich habe mich für Schrittmotoren entschieden weil die kein Getriebe zur Drehzahl- und Drehmomentwandlung benötigen. Außerdem sind die Bewegungen des Roboters leicht kontrollierbar.
Nachdem ich die Schaltung fertig designed hatte stellte ich fest, dass die Einzelteile genau so teuer waren wie ein fertiger Baustein. Außerdem kann der fertige Baustein die Motoren im 1/4, 1/8 und 1/16 Verfahren ansprechen. Dieses Verfahren erlaubt, die 4V Schrittmotoren mit bis zu 30 V zu steuern. Der Baustein steuert die Motoren allerdings nur sehr kurz mit diesen hohen Werten an um die Magnetisierungen in den Motorwindungen schnell umzupolen. Danach regelt der Treiberbaustein die Spannung automatisch runter (sonst würden die Motoren durchbrennen). Damit bekommen die Motoren richtig Drehmoment!
Probiere so ein Verfahren bitte nicht mit normalen (Getriebe-)Elektromotoren aus - die rauchen Dir sonst sofort ab.
Die Schrittmotorsteuerung findest Du hier:
http://www.shop.robotikhardware.de/s...roducts_id=237
Als Motoren habe ich gewählt:
http://www.shop.robotikhardware.de/s...roducts_id=236
Zu Deinen Rädern:
Ich habe mir übrigens auch diese Räder bei Conrad bestellt. Die Räder sind super. Allerdings wirst Du folgendes Problem bekommen:
Die Räder haben einen Felgen-Mitnehmer von 12 mm im Format 6-Kant.
Das bedeutet: Um das Drehmoment des Motors zu übertragen benötigst Du einen Mitnehmer - irgendwie muß das Rad auf der Welle so befestigt werden das sich das Rad mit der Welle dreht. Und ich habe keinen Mitnehmer gefunden.
Ich habe mir übrigens vorher andere Räder und passende Mitnehmer gekauft:
http://www.shop.robotikhardware.de/s...roducts_id=234
Allderdings waren die Mitnehmer nicht in der Lage, das Drehmoment für meinen Roboter kraftschlüssig zu übertragen - nach einigen Versuchen stellt ich fest, dass der Mitnehmer durchrutschten.
Insofern habe ich mir die gleichen Reifen wie Du bei Conrad gekauft und stand vor dem Problem mit den Mitnehmern. Meine Lösung dazu war folgende:
1.) Google SketchUp (kostet nichts) heruntergeladen. Damit habe ich in 3-D passende Mitnehmer konstruiert.
2.) Die Mitnehme habe ich mir bauen lassen. Das geht mit Anbietern wie shapeways.com. Die drucken solche Teile in einem 3D Verfahren. Zur Zeit lasse ich mir ein neues Gehäuse und eine Radaufängung für meinen Roboter "drucken".
Die Mitnehmer findest Du hier:
http://www.shapeways.com/model/312428/
Die Mitnehmer passen auf eine 5 mm Welle und werden mit 3 mm Bolzen auf die Welle gespannt. Erst den Mitnehmer auf die Welle schieben, dann festspannen, anschließend ein kleiner Klecks Sekundenkleber auf die Stirnseite des Mitnehmers, Rad aufsetzen ... und Du bekommst das Teil nie wieder ab!
Mit den Mitnehmern rutscht seitdem nichts mehr durch
Letzter Tip von meiner Seite:
www.fritzing.org hat ein fantastisches kostenloses Tool zum Plantinenbauen. Inzwischen gibt es auch einen Link, um die Platinen kostengünstig fertigen zu lassen.
Ich benutze für meinen Roboter zur Orientierung einen Ultraschall- Entfernungsmesser (SRF05) und einen IR Entfernungsmesser GP2d120.
Ultraschallentfernungsmesser haben den Nachteil, dass ein Messen der Distanz während der Fahrt zu lange dauert. Es gibt dazu 2 Lösungen:
a) Motoren stoppen und messen, dann weiterfahren.
b) Timer-Interruptgesteuerte Motorprogrammierung. Das geht auch mit dem Arduino.
IR Entfernungsmessung geht nur bei sehr kurzen Distanzen. Außerdem kann der Roboter durch starkes Sonnenlicht gestört werden.
Ich habe mich für für die timer-interrupt gesteuerte Variante mit der Ultraschall- Entfernungsmessung entschieden. IR benutze ich zusätzlich, um Treppenabsätze zu entdecken damit mein Robbi nicht die Treppe runterfällt.
Ich hoffe ich habe Dir ein paar Anregungen geben können. Mein erster Versuchsroboter lief schon nach 4 Wochen.
Erst mal viel Erfolg mit Deinem Roboter!
Lesezeichen