Stand 11.09.2026 - Dr.-Ing. Erhard Henkes

Programmierung mit LEGO® Mindstorms® EV3 - der ideale Einstieg? (Stand von 2020)

Kinder ab etwa acht Jahren können in der Regel schreiben und lesen, beherrschen die begehrten Smartphones und auch PC-/Bildschirm-Tastaturen sowie den Umgang mit der Computermaus. Eine Hürde stellt die englische Sprache dar, gerade auch bei Videos z.B. auf Youtube. In Begleitung eines erfahrenen Erwachsenen können Kinder allerdings an die Grundlagen der Programmierung heran geführt werden. Gerade visuelle Programmierung senkt die Einstiegshürde enorm.

Die "Roboter" von Lego Mindstorms EV3 bieten diesbezüglich eine ganze Menge. Vor allem sind sie robust, und es existiert eine weltweite Community, die sich in fast zwanzig Jahren entwickelt hat. Man braucht nichts zusammenzulöten, und man kann sofort mit dem Bauen und dem Einstieg in die visuelle Programmierung (von LEGO) beginnen, zunächst nach Vorgabe, später mit eigenen Ideen.

Daher könnte dieses Set gut geeignet sein, um Kinder spielerisch an die Programmierung und das Verständnis für Zentraleinheiten, Aktoren, Sensoren und Programmierstrukturen heranzuführen. Ich finde gerade den Umgang mit mobilen Modellen gut, denn er sorgt dafür, dass die Kinder nicht stundenlang vor dem Monitor sitzen, sondern sich in gesunder Bewegung auf die Funktionen der Hardware konzentrieren.

Es gibt drei wichtige Sortimente auf dem (Gebraucht-)Markt:

31313  LEGO Mindstorms - EV3 Home
45544  LEGO Mindstorms - EV3 Education

45560  LEGO Mindstorms - EV3 Education Ergänzungsset

Leider sind die Preise immer noch sehr hoch.


Egal ob man sich zunächst für Home oder Education entscheidet, das zentrale Element ist der EV3 "Brick", der bevorzugt von einem anderen Computer aus programmiert wird. In meinem Fall ist der andere Computer ein PC. Zunächst braucht man die Programmiersoftware. Es gibt übrigens zwei Versionen, nämlich für die Home und für die Education Editon. Darauf sollte man achten.

Für das Smartphone kann man sich die
"Commander App" herunterladen. Es macht den Kindern viel Spaß, die Bots damit fernzusteuern. Die App ist auch ein Ersatz für die IR-Fernsteuerung, deren Kanalwahlschalter etwas hakelig ist.

Das nächste Thema ist die Verbindung zwischen Programmier-Computer und EV3 Brick. Bei den Sets liegt ein usb-Kabel bei. Das funktioniert gut, aber das Einstecken am Brick artet rasch in Gefummel aus. Bequemer ist die Kopplung via Bluetooth. Dazu muss der 
Programmier-Computer ebenfalls Bluetooth beherrschen. Ich habe hierzu meinen PC mit einem externen Bluetooth-Dongle, der in einen usb-Slot gesteckt wird, nachgerüstet.

In Windows 10/11 gibt es anschließend den Zugang via Windows-Symbol(Rechtsklick) -- Einstellungen --  Geräte -- Bluetooth
In Windows 10/11 drückt man oben auf das Plus-Symbol ("Bluetooth- oder anderes Gerät hinzufügen"). Dort wählt man Bluetooth und koppelt.
Das Ganze ist etwas fummelig, aber es lohnt sich. Hat man die Kopplung einmal vollzogen, so kann man die erstellte Software auf einfachste Weise übertragen.

Der EV3 Brick kann über einen käuflich zu erwerbenden usb-Dongle auch WLAN-fähig werden. Dies ist zu Beginn oder für die Verbindung mit dem
Programmier-Computer jedoch nicht notwendig.


LEGO® Mindstorms® EV3 Home - die Möglichkeiten

Bei dem Homeset 31313 sind fünf Modelle als Einstiegsbeispiele vorgegeben. Empfohlen wird der Beginn mit dem TRACK3R. Hierbei lernt man die Programmierung der Aktoren, im konkreten Fall der großen Motoren und des mittleren Motors.

Hilfe zu den einzelnen Blöcken in deutsche Sprache findet man im Internet. Wichtig sind die Anschlüsse A,B,C,D für die Aktoren und 1,2,3,4 für die Sensoren. Die beiden großen Motoren landen zumeist bei B+C, und der mittlere Motor wird dann an A oder D angeschlossen. Bei Verzweigungen, also beim gleichzeitigen Ausführen von Abläufen, sollte man auf Ressourcenkonflikte achten, also z.B. nicht gleichzeitg mit den gleichen Motoren nach links und rechts steuern. Bei den Sensoren sollte man darauf achten, dass der passende Block und Anschluss (1,2,3,4) für den Sensor gewählt wird. Ansonsten meldet die Programmier-Software einen Anschlussfehler.

Nehmen wir als Beispiel den Warteblock auf einen Sensorwert, hier mit dem IR-Sensor verbunden (im Bild ganz links). Der IR-Sensor liefert bei der Funktion "Nähe" einen Wert zwischen 0 und 100 (entspricht nicht cm, sondern ist stark von der Farbe des Objektes abhängig!). Dieser Wert wird im nachfolgend gezeigten Warte-Block mit einem vorgegebenen Wert verglichen:

IR-Block 

Wenn die Nähe hier bei Annäherung des Objektes den Wert 40 unterschreitet, so wird der nachfolgende Block ausgeführt. Klappt man das Menü voll aus, so erkennt man alle Möglichkeiten. Neben der Nähe gibt es noch Signal-Richtung, Signal-Nähe und Fernsteuerung. Neben dem Vergleich des Messwerts mit einem vorgegebenen Wert gibt es noch die Möglichkeit, diesen vorgegebenen Wertzu verändern.

IR-Block
 
Im Nähemodus wird IR-Licht ausgestrahlt und das reflektierte Licht gemessen. Die Stärke des reflektierten IR-Lichts wird dann als "Nähe" interpretiert. Diese Methode ist nicht so exakt wie beim Ultraschall-Sensor, aber man kann damit zumindest qualitativ arbeiten: 0 bedeutet sehr nah, und 100 bedeutet sehr weit entfernt. Farbe und Material des reflektierenden Objektes beeinflussen diesen Wert stark. Braucht man einen genauen Abstandswert, so verwendet man den Ultraschallsensor, der z.B. im Education Set dabei ist. Ultraschall benötigt allerdings Objekte mit harter Oberfläche, möglichst nicht abgeschrägt oder gar abgerundet. Die Reflexion zurück zum Sensor ist entscheidend. Bedingt durch die Laufzeit des Ultraschalls kann man über die Zeit die gelaufene Strecke (hin und her) messen. Der Abstand zum Objekt ist die Hälfte davon. Die Schallgeschwindigkeit bei Raumtemperatur beträgt ca. 343 m/s. Das muss man aber nicht selbst im Programm berechnen, sondern das erledigt implizit der jeweilige Ultraschall-Block.

Nach dem
TRACK3R, der wirklich ein toller Einstieg ist, weil er wie ein Fernsteuerauto wirkt, folgte bei uns der SPIK3R, ein Skorpion, der mit roten Kugeln schießen und mit Zangen greifen kann, echt witzig gemacht. Allerdings ist die Umsetzung der Schussmethodik schon anspruchsvoll, also nicht der ideale Einstieg für Achtjährige.



Programmierung mit LEGO® Mindstorms® EV3 - direkt programmiert mit C#/.Net (Stand von Sept. 2026)

Man kann mit Software auf dem PC ein EV3 Modell direkt betreiben, indem man es via usb (stationär) oder Bluetooth (mobil) anbindet. Zuerst habe ich den Farbsortierer aus dem Education Set via usb angebunden, da die Lego-Programme Probleme mit grün und blau bereiteten. Hier findet sich die passende Software zum Ausprobieren: https://www.roboternetz.de/community/threads/75088-Einstieg-in-das-EV3-System-mit-31313/page2?p=672679&viewfull=1#post672679

Hier wird alles deterministisch mit Algorithmen abgearbeitet. C#/.Net ersetzt die passende LEGO Software Blöcke. Es muss nichts auf den EV3 Brick geladen werden. Das Programm läuft auf dem PC. Von dort werden die Aktoren und Sensoren via usb-Kopplung bedient. Dieses Beispiel zeigt ideal, wie man den EV3 Brick mit einem externen Programm direkt ansteuern kann. Die LEGO Software wird nicht benötigt.


     

Programmierung mit LEGO® Mindstorms® EV3 - direkt programmiert mit C#/.Net (Stand von Sept. 2026)

Spannender wird es, wenn man Algorithmen durch KI unterstützt. Hierzu habe ich einen kleinen Rover gebaut, der zwei große Motoren für die Räder rechts und links verwendet.
Anleitungen findet man sowohl für das Home als auch für das Education Set.
Hier gibt es z.B. eine Foto-Anleitung für das Home Set: https://ev3lessons.com/RobotDesigns/instructions/DrivingBas3.pdf
Ich habe diese verwendet, den vorderen mittleren Motor dabei weggelassen, dafür eine Schubstange für die Kisten angebaut.
 

EV3-Rover: Vier Kisten mit Kamera und lokaler KI sortieren

In diesem Versuch vom 10. September 2026 sortiert ein LEGO-EV3-Rover zwei rote und zwei blaue Kisten in ihre jeweiligen Zielbereiche.
Die Kisten stehen anfangs so dicht beieinander, dass kein direkter Transport ins Ziel möglich ist.
Zunächst muss der Rover Platz schaffen und die gegenseitigen Blockaden (Deadlocks) lösen.

Eine an den PC (Windows 11, Programmierung mit Visual Studio 2026, Konsolen-Programm mit C# und .Net10) angeschlossene Web-Cam erfasst von schräg oben (auf Stativ) Position und Orientierung des Rovers sowie die Kistenpositionen. Das C#-Programm berechnet Anfahrwege und Schubbewegungen. Wenn seine klassische Planung keinen geeigneten Schritt findet, fragt es das lokal über Ollama laufende KI-Sprachmodell qwen3:8b nach Befreiungsvorschlägen. Diese werden anschließend vom C#-Programm geometrisch geprüft, bewertet und gegebenenfalls im seitlichen Schieberversatz angepasst.

Hier findet sich das C#-Programm: https://www.henkessoft.de/EV3/EV3TestBlueToothVisionTest/EV3VisionTest/Program.cs

Der Rover verwendet folgenden Marker auf seiner Oberseite: https://www.henkessoft.de/EV3/aruco_marker_dict4x4_50_id0.png

Hier findet sich die Videoaufnahme (ungeschnitten) der Darstellung auf dem PC-Monitor: https://www.henkessoft.de/EV3/KistenSortMitKI__1.mp4

Hier findet sich das Protokoll des Programms: https://www.henkessoft.de/EV3/EV3_Log_20260910_134724.txt


Der erfolgreiche Ablauf umfasst zehn Aktionen. Die genannten Schublängen sind die geplanten Werte. Die tatsächlichen Kistenpositionen werden anschließend erneut gemessen.

Aktion

Bewegung und Ergebnis

1

Ein Freischub von 10 cm nach oben verschiebt beide roten Kisten und lockert die Ausgangsgruppe auf.

2

Das C#-Programm plant einen um 90° versetzten Freischub: Die rote Kiste #1 wird mit 14 cm Schub nach links vom roten Partner getrennt.

3

Ein weiterer Freischub von 10 cm nach oben bringt die rote Kiste #2 in eine direkt sortierbare Position.

4

Kiste #2 wird in den roten Zielbereich nach (40, 90) cm geschoben.

5

Ein Freischub an der blauen Kiste #3 nach links verschiebt sowohl diese als auch die benachbarte rote Kiste #1.

6

Ein anschließender Freischub nach oben verschiebt diese beiden Kisten erneut. Danach kann die andere blaue Kiste #4 direkt sortiert werden.

7

Kiste #4 wird nach (75, 90) cm geschoben. Der Planner nutzt diesen Ausweichplatz, weil die beiden bevorzugten blauen Plätze geometrisch nicht erreichbar sind.

8

Die verbliebene rote Kiste #1 wird mit einem Freischub von 12 cm nach links von der blauen Kiste #3 getrennt.

9

Kiste #1 wird auf dem roten Zielplatz (40, 76) cm abgelegt.

10

Abschließend erreicht die blaue Kiste #3 ihren Zielplatz bei (60, 90) cm.

Die Kamerarückmeldung ist entscheidend: Nach Navigationsetappen kontrolliert das Programm die erreichte Position und korrigiert bei Bedarf. Vor dem Kistenkontakt berechnet es die Anfahrgeometrie neu. Nach jeder Aktion wird die gesamte Kistenanordnung erneut erfasst und als Grundlage für den nächsten Schritt verwendet. Die Ausführung wird an vorgesehenen Kontrollpunkten per Eingabetaste freigegeben.

Ergebnis: Alle vier Kisten werden erfolgreich sortiert. Dafür sind sechs Freischübe und vier Zieltransporte erforderlich. Fünf Freischübe beruhen auf Vorschlägen des KI-Modells qwen3:8b. Der erste Querschub wird vom C#-Programm selbst ermittelt. Die fünf KI-Abfragen benötigen (bei mir, RTX 2080 Super) zusammen etwa 3 Minuten und 17 Sekunden zusätzlich zur Bewegung und Bedienung.

Bei den jeweiligen Zielkontrollen liegen die gemessenen Abweichungen zwischen 0,95 und 1,55 cm. Der Versuch zeigt das Zusammenspiel von KI-Vorschlägen, geometrischer Planung und realer Rückmeldung: Auch gemeinsame Verschiebungen mehrerer Kisten können sinnvoll sein, wenn die anschließende Planung die veränderte Situation berücksichtigt.

 

 



Dieses Beispiel zeigt das Zusammenspiel von Algorithmen und KI in schwierigen Situationen am Beispiel einer Programmierung mit C#/.Net und Ausführung mit klassischer EV3 LEGO Mindstorms Hardware.  
Das Modell qwen3:8b zeigte übrigens bessere Ergebnisse als z.B. gemma3:4b.