Master of Robotics
www.MaRobic.com öffnet seine Pforten für Besucher.
Lernen Sie die Grundlagen der Robotic an verschiedenen Beispielen und lassen Sie sich von
den Meisterwerken der Entwickler verzaubern. Die Seite bietet Ihnen nicht nur Tips und Tricks
zum Erstellen von eigenen Robotern, sondern auch Baupläne zu den Entwicklungen der Master of
Robotics. Ebenso können Sie selbst ein Zertifikat erlangen, indem Sie in verschiedenen Tests
die 3 Levels zum Master of Robotics erklimmen. Erstellen Sie Ihre eigenen Cyborgs und
Androiden. Das alles funktioniert mit den einfachen Lego Mindstorms Kästen. Hauptsächlich genutzt
sind hierbei das Dark Side Developers Kit und das Robotic Invention System.
Derzeitige Roboter sind:
- Hannibal
- Smart Tank
- Dance Bot
- Walkaholic
Derzeitige Tips zum erstellen umfassen zum Beispiel:
- 3 Punkt Bein Technologie - eine Technologie für effiziente laufende Roboter
- Flexiwelle - Die Flexi Welle ermöglicht rotierende Axen um bis zu 120° zu knicken
- Differenzenwerk - Das Differenzen Werk ermöglicht den Vergleich von 2 Geschwindigkeiten
- Differential - Das Differential bietet die Möglichkeit 2 Achsen zu synchronisieren
Die Roboter:
Dance Bot:
„Der Dance-Bot ist ein 2-beiniger Läufer der sich durch eine ausgereifte Beinkonstruktion vorwärtsbewegen kann ohne dabei sein Gleichgewicht zu verlieren.“ – KB
Der Dance-Bot war der erste Versuch, um sich mit dem Problem „2-beiniger Läufer“ zu beschäftigen. Die grundlegende Idee war einen Läufer zu entwickeln, der sich vorwärts bewegt und dabei sein eigenes Gewicht tragen kann.
Leider gelang es nicht mit einfachen Mitteln eine synchronisierte Gewichtsverlagerung des Läufers zu erzeugen. Dadurch lag das gesamte Gewicht des Läufers immer auf beiden Beinen. Ein „gehen“ war dadurch nicht möglich. Stattdessen erzeugte die komplexe Beinstruktur eine Drehbewegung, welche ihn zum tanzen brachte.
Da die ausgereifte Beinkonstruktion zwar nicht effektiv genutzt werden konnte, er aber trotzdem das ursprünglich Angedachte Konzept erfüllte, wurde aus dem „2-beinigen Läufer“ kurzerhand der „Dance-Bot“.
Da sich mit dem ursprüngliche Konzept und der Beinkonstruktion nicht der gewünschte Erfolg einstellte, wurde er im laufenden Prozess weiterentwickelt und es entstanden die Konstruktionen „Walkaholic“ bzw. „Hannibal“, deren Grunddesign besteht jeweils aus 2 „Dance-Bot`s“
benötigte Kästen:
- Dark Side Developer Kit
- Robotics Invention System 1.5
(Mit etwas Experimentieren ist er auch mit nur einem der beiden Kästen erstellbar.)
Modifikationen:
Der Dance Bot kann auch seinen eigenen RCX auf den Schultern tragen. Allerdings geht das auf Kosten der Stabilität und benötigt etwas Experimentierfreudigkeit. Ebenso haben wir Ihn bereits mit einem Microscout statt einem RCX mit Motor betrieben. Ein paar kleine Umbauten sind dazu nötig. Ein Video zu der Variante mit Microscout finden sie bei „Downloads“ unter ‚dance-bot-microscout.avi’.
Tipp:
Um zu erkennen weshalb er diesen Namen bekommen hat, sollte der „Dance-Bot“ während Musik mit 130 bpm läuft, eingeschaltet werden. Dabei kann festgestellt werden, dass er ziemlich genau im Takt der Musik bleibt.
Hannibal:
„Der Hannibal ist ein 4-beiniger Läufer, der sich durch eine eingebaute Kardanwelle und einen Drehkranze beim Laufen drehen kann, ohne dabei die Synchronität der Beine beim Laufen zu verlieren.“ –KB
Hannibal ist die Weiterentwicklung des Walkaholic und damit die 3. Stufe des Dance-Bot's. Er bekam seinen Namen durch seine Fülle und Größe, welche an einen Elefanten erinnert. Im Verlauf der Entwicklung des Hannibals wurde dieser allerdings immer schlanker und effizienter. Heute erinnert er eher an einen Windhund, als an einen Elefanten. Die Ur-Fassung des Hannibals können Sie in Bild 6 sehen.
Hannibal ist ein zuverlässiger 4-beiniger Läufer der auch lenken kann und stellt damit eine Rarität dar. Leider geht die Fähigkeit des Lenkens auf Kosten der Geschwindigkeit. Er ist zwar immer noch schneller als die meisten Lego 4-Beiner aus dem Dark-Side Kit, allerdings
erreicht er nicht mehr die Geschwindigkeit des Walkaholic.
Wichtigstes Bauteil im Hannibal ist die Kardanwelle, welche z.B. im Exploration Mars Set enthalten ist.
Diese sorgt für die Synchronisation der Vorder- und Hinterbeine, auch wenn der Roboter eingelenkt ist. Dadurch war es möglich einen 4-Beiner zu erschaffen, der lenkbar ist, dessen Beine aber nicht aus dem Takt kommen.
Sollte keine Kardanwelle vorhanden sein, gibt es im Tipp – Bereich eine genauere Beschreibung über die Funktionalität der selbst entwickelten Flexiwelle,. Mittels kleinerer Modifikationen am Hannibal, liefert diese ebenfalls das gewünschte Ergebnis.
Benötigte Kästen:
- Dark Side Developer Kit
- Robotics Invention System 1.5
- 1 zusätzlicher Motor
- zusätzlich wird eine Lego-Technik Kardanwelle und ein Lego-Technik Drehkranz benötigt
(Bei Bedarf kann als Kardanwellen-Ersatz die Flexi-Welle aus der Tipps Sektion von www.marobic.com genutzt werden.)
Varianten:
Außer der Basisversion kann der Hannibal auch in einer Version mit Rotationssensor gebaut werden. Diese Variante ermöglicht es, die Lenkung anhand von Winkeln zu realisieren. Das erhöht die Präzision der Lenkungen erheblich und verhindert Lenkungsungenauigkeiten, die bei längerem Betrieb entstehen.
Die Konstruktionsanweisungen zu dieser Modifikation sind ebenfalls in der Bauanleitung des Hannibals enthalten.
Programmiervarianten:
Der Hannibal kann in 2 verschiedenen Versionen programmiert werden:
1. Lenkung nach Zeitintervall: In dieser einfachen Variante wird zum Einlenken des
Roboters einfach Motor OUT_B kurz aktiviert. Die Laufrichtung des Motors bestimmt hierbei die Richtung, in die der Roboter einlenkt.
Wenn Sie das Skript ‚hannibal-std.nqc’ benutzen, können Sie mit simplen Anweisungen wie ‚links’, ‚rechts’, ‚gerade’ dem Roboter seine Anweisungen geben.
2. Lenkung nach Winkel: In dieser Variante muss der Hannibal mit einem
Rotationssensor an der Lenkachse ausgestattet sein. Beim Lenken misst er nun den Einschlagswinkel und ist damit
auch nach langer Laufzeit noch genau.
Nutzen Sie hierbei das Skript ‚hannibal-rot-sensor.nqc’.
Auch in diesem können Sie mit einfachen Befehlen den Roboter programmieren.
Smart Tank:
„Der Smart-Tank ist ein Kettenfahrzeug, welches durch seinen Dual-Motor Antrieb, verbunden mit einem Differenzial eine Kraft aufbringt, die es ihm ermöglicht über Hindernisse zu fahren bzw. auch auf unebenen Böden vorwärts zu kommen. Er glänzt auch durch seine Kompaktheit und Zuverlässigkeit. Ebenso ist er relativ einfach zu bauen und sehr flexibel in der Programmierung. „ - KB
Seine Stärke liegt in der Kraft, die er entwickelt und der zuschaltbaren Differentialsperre.
Da zwei Motoren nie richtig gleich laufen kann es passieren, dass das Fahrzeug ohne Diffenzialsperre nicht gerade fährt, sondern in einer leichten Kurve. Um dies zu verhindern, wurde die Differenzialsperre entwickelt.
Durch Einschalten dieser werden die beiden Motoren, die die linke bzw. rechte Seite antreiben, „gezwungen“ gleichschnell zu laufen. Da der schnellere Motor durch den langsameren gedrosselt wird, laufen beide Motoren gleich schnell. Bewegt sich der Smart-Tank geradeaus, kann die Sperre mittels des 3. Motors aktiviert, werden um 100% geradeaus Laufen zu garantieren. Zum Drehen wird die Sperre deaktiviert und die Motoren drehen den Panzer auf der Stelle, da sie entgegengesetzt laufen.
benötigte Kästen:
- Dark Side Developers Kit
- Robotics Invention System 1.5
- 18 mittlere Zahnräder
- 1 zusätzlicher Motor
Modifikationen:
- Berührungsbumper
- Bodenscanner
- Differenzenwerk
Der Berührungsbumper oder kurz Bumper dient zum „gefahrenlosen“ Vorwärtsbewegen des Tanks. Je nachdem mit welcher Seite der Tank mit seinem Bumper an ein Hindernis stößt, werden durch das implementierte Programm verschiedene Reaktionen aufgerufen.
Mittels des Bodenscanners kann der Panzer Symbole, die auf ein weißes Blatt Papier gedruckt sind, erkennen und auswerten. Hierbei gibt es derzeit 2 unterstützte Symbole in jeweils 2 Varianten (Pfeil links/rechts, Linie links/rechts). Fährt der Panzer über einen Pfeil, so dreht er sich um 90° in die Richtung des Pfeils. Fährt er schräg über eine Linie passt er seinen Kurs so an, dass er in Richtung der Linie seine Fahrt fortsetzt.
Durch den eingebauten Rotationssensor, mit seinem Differenzial, kann man messen welche Seite des Antriebs sich schneller dreht. Beim vorwärts bzw. rückwärts Fahren bleibt der Wert konstant. Wichtiger ist der Sensor allerdings beim Drehen. Durch den ermittelten Wert kann man genauere Angaben dazu machen wie lange der Tank sich drehen soll. Man könnte natürlich auch durch Angabe von Sekunden festlegen wie lange er sich in die jeweilige Richtung drehen soll. Allerdings wird man feststellen können, dass die Angabe von einer Drehdauer underschiedliche Ergebnisse liefert. Bei der Angabe von Zeiten gibt es viele Variablen, die nicht berücksichtigt werden, z.B. Bodenbeschaffung, Batteriestärke oder Kraftübertragung.
Bei Benutzung des Rotationssensors werden diese Variablen minimiert. Es lässt sich nun ein genauer Winkel vorgeben, um den der Tank sich drehen soll.
Zu beachten bei kombinierter Benutzung der Modifikationen:
Werden Berührungsbumper und Bodenscanner gleichzeitig verwendet, so muss man je
1 Berührungssensor und 1 Lichtsensor auf den selben Sensor-Eingang legen und die
Programmierung entsprechend anpassen.
Werden mehrere Varianten gleichzeitig verwendet, muss man bei der Programmierung darauf
Achten, dass die Prioritäten richtig gesetzt werden. Also, wann soll er sich nach
Bodenscanner Befehlen orientieren und wann nach den Berührungssensoren. Empfehlenswert
ist in diesem Fall die Prioritäten wie folgt festzulegen (wichtig -> weniger wichtig)
Berührungsbumper->Bodenscanner->Script
Programmierung:
Durch die unterschiedlichen Modifikationen gibt es auch unterschiedliche Varianten zur Programmierung des Smart-Tanks. Es gibt bereits 2 fertige Skripte, die es erleichtern den Tank zu programmieren.
‚smart-tank-std.nqc’:
Dieses Skript beinhaltet die Steuerung für Bumper und ein einfaches Skripting des Tanks.
Ist nur das Basismodell gebaut, so ermöglicht dieses Skript eine einfache Programmierung, um die Bewegungen des Tanks vorzugeben. Sind die Berührungsbumper angebaut, so werden diese zusätzlichen Funktionen des Tanks aktiv und er umfährt Hindernisse, gegen die er stößt.
‚smart-tank-intelli.nqc’:
Dieses Skript beinhaltet eine Mustererkennung für den Smart-Tank. Vorraussetzung sind die Modifikationen „Bodenscanner“ und „Differenzenwerk“. Zum Testen des Skriptes einfach schwarze Pfeile oder Linien auf DIN A4 Blättern ausdrucken und den Tank darüber fahren lassen. Als Beispiel sehen Sie das Video „smart-tank-intelli.avi“.
Tips, Tricks, Hinweise und Hilfen zum erstellen von Lego Robotern
3 Punkt Bein
Kurzbeschreibung:
Das 3 Punkt-Bein ist ein Konzept, um einen effizienten Läufer zu erstellen. Genutzt wird es im Dance-Bot, dem Walkaholic und dem Hannibal.
Artikel-Text:
Die Besonderheit dieses Beinkonzeptes liegt darin, dass es 3 natürliche Gelenke eines Beines emuliert, obwohl nur ein Motor das Bein antreibt. Installiert wird die Beinkonstruktion an 2 Punkten des Roboter Chassis. Zum einen, eine statische Aufhängung, zum anderen die Antriebsachse.
(Beispiel siehe Roboter->Dance-Bot)
Durch die Kombination aus Hüftgelenk, Kniegelenk und Fußgelenk wird eine natürliche Bewegung erreicht, welche ein Vorwärtslaufen des Roboters mit einem Abrollen der Füße ermöglicht. Dadurch ist die Statik des Roboters bedeutend stabiler und die Kraftübertragung der Motoren effizienter. Dieses Konzept hilft dem Walkaholic bei seinem schnellen Vorwärtsgang. Er "stößt" sich geradezu vom Boden ab.
Unter Downloads finden sie ein Demonstrationsvideo, welches zeigt wie die Füße funktionieren. Anhand des Videos lässt sich auch gut erkennen wie die 3 Gelenke arbeiten.
Differenzwerk:
Kurzbeschreibung:
Das Differenzwerk ermöglicht es die Geschwindigkeiten 2er Achsen mit nur einem Rotationssensor zu vergleichen. Dies kann zum Beispiel in einem Kettenfahrzeug zur Synchronisierung der Achsen oder zur Überprüfung des Lenkwinkels genutzt werden.
Artikel-Text:
Das Differenzwerk nutzt einen Rotationssensor in Kombination mit einem Differential zum Ermitteln und Ausgeben des Geschwindigkeitsunterschiedes zweier rotierender Achsen. Ein gleichbleibender Wert bedeuted hierbei, dass beide Achsen gleich schnell sind. Verändert sich der Wert gibt er an, welche der beiden Achsen gerade schneller läuft. Dies kann zum Beispiel genutzt werden, um zu überprüfen ob 2 Motoren gleich schnell laufen und diese bei Bedarf nachzuregeln. Bei einem Kettenfahrzeug würde dies den Geradeauslauf des Fahrzeugs erheblich verbessern. (Auch wenn dafür eine Differentialsperre wie im Smart-Tank verwendet werden kann).
Eine zweite Möglichkeit ist, mit dem Differenzwerk den Lenkwinkel eines Kettenfahrzeuges zu bestimmen. Im Smart-Tank wird diese Technik verwendet, um einen exakten 90° Winkel lenken zu können. Durch die Angabe eines Winkels sind die Drehungen weitaus präziser als bei der Angabe einer Dreh-Zeit. Um den Winkel zu ermitteln wird einfach der Wert des genutzten Rotationssensors vor der Drehung und nach der Drehung gemessen. Die Differenz ist eine genaue Angabe, wie weit das Kettenfahrzeug sich gedreht hat.
Die Bauanleitung des Differenzwerkes ist für den Smart-Tank angepasst. Es lässt sich aber auch einfach für andere Fahrzeuge umbauen.
Flexi Welle / Flexiwelle:
Die Flexiwelle ist eine Eigenentwicklung, die es ermöglicht, eine drehende Welle um bis zu 120° einzuknicken ohne die Drehbewegung zu behindern.“ - KB
Das Prinzip der Flexiwelle ist recht einfach und wird mittels Zahnrädern und bewegbaren Gelenken erreicht, welche eine Lenkbewegung von bis zu ±120° ermöglichen.
Die kleineren Zahnräder greifen so ineinander, dass sie die horizontale Bewegung in eine vertikale Bewegung umwandeln. Die 2 größeren Zahnräder übertragen die Drehbewegung von einer vertikalen Achse zur anderen. Von dort wird sie wiederum in eine horizontale Drehbewegung zurück gewandelt.
Sie wurde entwickelt, da am Anfang der Idee einen lenkbaren Roboter zu konstruieren überlegt wurde, wie die beiden Antriebsmotoren synchronisiert werden können.
(trotz des Einknickens des Roboters in der Mitte)
Die Funktionalität ist die selbe wie bei der Kardanwelle, die z.B. im Exploration Mars Set von Lego enthalten ist, allerdings werden bei der Eigenentwicklung mehr Bauteile benötigt als bei dem Lego – Bauteil.
Das Grundgerüst der Flexiwelle ist nicht sehr viel größer als die Kardanwelle, allerdings ist für den Einbau, speziell beim Hannibal, eine Modifikation nötig, die z.B. im Bild 3 zu sehen ist.
Das am Ende doch die Lego – Kardanwelle genommen wurde, soll nicht der Funktionalität zugesprochen werden. Der eigentliche Grund war die Einsparung von Bauteilen. Der Einbau der Flexiwelle zieht einen Umbau nach sich. Das kann am Ende zu einer zu geringen Anzahl von Bauteilen führen, um den Roboter zu Ende zu bauen.