Montag, 15. Juni 2015

Lego Mindstorms

In diesem Artikel geht es um die Lego Mindstorms Roboterplattform und ihr Vor- und Nachteil, auch im Vergleich zum Arduino.

Die Lego Mindstorms Plattform

Die Lego Roboter Plattform besteht jeweils aus einer Brick, so etwas, wie einer Steuerzentrale, und den Sensoren bzw. Motoren, die an die Brick angeschlossen werden. Da es bereits verschiedene Versionen/Aktualisierungen gab, gibt es nicht mehr "die eine Brick". Auf dem Bild oben sieht ihr die Lego Mindstorms  EV3 Brick, eine sehr Aktuelle. Die Brick besitzt ein Display und ein paar Tasten, um Programme auszuführen und Programme zu löschen. Außerdem besitzt sie drei Anschlüsse für Motoren und vier für Sensoren. Die Anschlüsse sind so gestaltet, dass man sie nur richtig herum anschließen kann.
Die EV3 Brick hat sehr viele Möglichkeiten, wie man Programme auf sie spielen kann. Sie hat einerseits einen USB und einen SD Karten Slot, 
und kann andererseits die Programme auch direkt vom PC, über eine USB oder eine Bluetooth Verbindung bekommen. Die alten Modelle konnten Programme nur über eine USB Verbindung erhalten. Sobald die Programm übertragen wurden, werden sie im internen Speicher der Brick gespeichert. Die Speichergröße variiert von Modell zu Modell, wobei selbst bei den Alten mehr als 20 - 30 Programme Platz hatten. 
Wie bereits angesprochen, kann man Motoren und Sensoren, ähnlich wie beim Arduino, anschließen. Es gibt jedoch den Unterschied, dass eine Verbindung jeweils nur ein Kabel benötigt, das eine Ende ist dann am Sensor, das Andere an der Brick. Man benötigt also kein Breadboard und keine externen Steuerungschips, Widerstände oder sonstige elektronische Bauteile.
Es gibt eine Vielzahl an Sensoren und Motoren. Beispielsweise einen Ultraschallsensor, einen Farbsensor, einen Kreiselsensor, ein Mikrofon... und verschieden große Motoren. Normalerweise kauft man eine Lego Mindstorm Brick jedoch nicht alleine, sondern in einem Starterpack, wo die wichtigsten Dinge bereits dabei sind und dann Dinge, bei Bedarf, nachgekauft werden. In einem solchen Starterpack befinden sich auch normale Legoteile, da ein auf dem Lego Mindstorms System basierender Roboter normalerweise mit Legosteinen gebaut wird, da die Sensoren extra "Legohalterungen" haben und die Motoren exakt in die Legoreifen passen.
Für die Programmierung eines solchen Roboters gibt es dann verschiedene Möglichkeiten. Entweder man schreibt, wie beim Arduino ein Programm, bestehend aus einzelnen Zeilen, oder man klickt sich die einzelnen Teile eines Programms zusammen. Dafür gibt es eine Legosoftware IDE für den PC.
Dabei ist es so, dass man beispielsweise einen Legoblock für die Antriebsmotoren hat(siehe Leiste unten), und diesen dann an die Kette der Programmbausteine hängt. Dort kann man dann in diesem Block die Geschwindigkeit und die Richtung einstellen. Es gibt auch Schleifen(while) und Schalter(if Abfragen), in denen man auch auf die Sensorwerte zurückgreifen kann. Durch diese Dinge "baut" man sich dann so sein Programm zusammen. 

Lego Mindstorms im Vergleich zum Arduino

Die Hardware:
Das zusammenbauen eines Lego Roboters ist aufgrund der einfachen Verkabelung(Kabel einstecken, fertig!) komfortabler und durch die Verwendung von Legobausteinen kann man sich auch schnell das passende Gehäuse/Gefährt zusammenbauen. Das Verkabeln mit dem Arduino wird dank der Möglichkeit Shields zu verwenden auch immer leichter, wobei das noch nicht ganz die Einfachheit des Lego Systems erreicht. Das Bauen von Gehäusen gestaltet sich mit dem Arduino auch schwierig, sofern man nicht einen 3D Drucker Zuhause hat. Deshalb muss man sich oft selbst ein Gehäuse aus Metall, Holz oder Styropor basteln.

Die Software:
Die Programmierung von Lego Robotern sollte ja durch die grafische Oberfläche erleichtert werden, und das trifft bei einfachen Programmen auch zu. Sobald man jedoch ein etwas komplexeres Programm hat, beispielsweise eine if Abfrage in einer while Schleife wird das ganze extrem unübersichtlich und man wünscht sich schnell, das Programm als Text zu schreiben, wie etwa in der Arduino IDE. 

Fazit

Insgesamt ist die Lego Mindstorms (EV3)* Plattform eine interessante Möglichkeit, um einen Roboter zu bauen und für eine spezielle Zielgruppe auch die Richtige. Beispielsweise für kleinere Kinder, da das Verkabeln und Bauen sehr einfach geht, oder aber auch für Menschen, die nicht tiefer in die Materie einsteigen wollen, sondern nur schnell ihr Ergebnis erzielen wollen. Allen Anderen, auch ohne technisches Wissen, empfehle ich jedoch die Arduino Plattform. Das beginnt mit dem Preis. Ein Arduino Uno kostet in einem Starterkit ca. 40€, die Preise für ein Lego Mindstorms Starterkit beginnen bei 400€. Außerdem hat man beim Arduino die Arduino IDE, die schon eine wesentlich Vereinfachung zum reinen C Programmieren darstellt, jedoch die Vorteile der Text basierten Programmierung erhält. Zusätzlich kann man auf den Arduino sogenannte Shields setzen, das sind Erweiterungsboards, die alle Chips, Widerstände und Sonstiges bereits korrekt verkabelt enthalten. Dadurch wird auch die Verkabelung erleichtert, wobei man nach einiger Zeit eh merken wird, dass es auch ohne Shields in 95% der Fälle locker geht. Deshalb würde ich euch eher empfehlen, sofern ihr nicht zu der oben genannten Zielgruppe gehört, einen Arduino zu kaufen. Zur Auswahl des richtigen Arduino findet ihr auch einen Artikel in meinem Blog.

 Welche Plattform benutzt ihr lieber zum Roboter Bauen?

Keine Kommentare:

Kommentar veröffentlichen