Der LEGO-Konstruktor wird häufig verwendet, um den Fall eines Mechanismus mit einer Engine auf "Himbeeren" zu erstellen. Am häufigsten wird dieses Tandem in verschiedenen Robotern, Drohnen und Geländefahrzeugen eingesetzt. Der Enthusiast Daniel West ging den anderen Weg und schuf eine Maschine mit Raspberry Pi und LEGO, um die Teile dieses Sets automatisch zu sortieren. Natürlich basierend auf künstlicher Intelligenz. Ohne KI werden Eisen wahrscheinlich nicht bald arbeiten können.
Unter dem Schnitt - eine Beschreibung des Mechanismus des Sortierers sowie einige weitere interessante Projekte, die auf "Himbeeren" basieren.
Interessanterweise besteht die Sortiermaschine selbst aus 10.000 LEGO Blöcken! Es hat ... zwei Jahre gedauert, um es zu schaffen.
Dieses Auto ist ein echtes LEGO Cinderella. Sie kann jeden Teil des Konstruktors mit einer Geschwindigkeit von "einem Würfel in zwei Sekunden" in einen von 18 Containern sortieren. Darüber hinaus kann der Sortierer jeden jemals erstellten LEGO-Stein erkennen, einschließlich derer, auf die er noch nicht gestoßen ist. Diese Vielseitigkeit unterscheidet das System von zuvor erstellten Maschinen für einen ähnlichen Zweck.
Was ist unter der Haube
Die Maschine läuft auf folgender Hardware:
- Himbeer Pi 3 Modell B +
- Raspberry Pi V2 Kameramodul;
- 9 Motoren (gesteuert über einen Servomultiplexer, der über I 2C mit dem Raspberry Pi kommuniziert );
- 6 LEGO-Motoren (steuerungsgesteuerte L298N-Elektromotoren mit digitalen E / A-Anschlüssen am Raspberry Pi).
Wie bereits erwähnt, basiert der Sortierer auf Algorithmen für künstliche Intelligenz. Insgesamt ein ziemlich klassisches Faltungsnetzwerk, das zur Klassifizierung von Bildern verwendet wird. Wir haben bereits in einem Blog über Habré beschrieben, wie dies Wissenschaftlern bei ihrer Arbeit hilft .
Neuronales Netzwerktraining
Daniel West trainierte sein neuronales Netzwerk mit Bildern von 3D-Modellen von LEGO-Steinen. Gleichzeitig stand der Entwickler vor dem Problem des Datenmangels für das Training des neuronalen Netzwerks. Bilder in echter Qualität reichten nicht aus, und synthetische Bilder lieferten keine korrekten Ergebnisse. Am Ende trug nur eine Kombination aus synthetischen und realen Bildern zum Erfolg bei. Das neuronale Netzwerk konnte LEGO-Steine mit hoher Genauigkeit erkennen, auch wenn es zuvor nicht mit ihnen interagiert hatte.
Um Daten zu sammeln, verließ der Enthusiast das Auto, um die Teile mehrere Tage lang durch den Scanner zu führen. Als Ergebnis habe ich einen Datensatz mit ungefähr 300.000 nicht markierten LEGO-Bildern für die AI-Verarbeitung zusammengestellt. Daniel sprach in einem separaten, sehr visuellen Video ausführlicher über die Arbeit der KI und ihre Ausbildung und beschrieb den Prozess im Text .
Als Software verwendete der Enthusiast Blender, eine Open-Source-Software zum Erstellen von 3D-Computergrafiken, und Tensor Flow, eine Open-Source-Softwarebibliothek für maschinelles Lernen von Google. Er wurde auch bei seiner Arbeit von der Community der Macher des LEGO-Konstrukteurs - Rebrickable - unterstützt.
Laufen, detaillieren, laufen
Die Entwicklung ist eine echte Miniaturfördermaschine. Die Masse der Teile wird über den Raupenförderer in den sogenannten "Input Bucket" eingespeist. Hier gehen die Teile nacheinander, so dass streng ein LEGO-Block zur "Identifizierung" gesendet wird.
Die Bestellung wird durch eine vibrierende Plattform erreicht, die von einem LEGO Motor angetrieben wird. Durch Vibrieren verteilt die Plattform die Teile und stellt sicher, dass sie nicht übereinander liegen und einzeln gescannt werden.
Das Raspberry Pi-Kameramodul erfasst Videos von jedem Block, der das Raspberry Pi 3 Model B + verarbeitet, und sendet es drahtlos an einen leistungsstärkeren Computer, wo es ein neuronales Netzwerk betreibt und die Teile klassifiziert. Die vom neuronalen Netzwerk verarbeiteten Daten werden an die Sortiermaschine zurückgesendet, damit das Teil mithilfe einer Reihe von selbstfahrenden Gateways in einen von 18 Containern geschoben werden kann.
Bisher ist das Projekt unter der Überschrift "Versuchen Sie es nicht zu Hause" besser geeignet, da der Autor hervorragende Arbeit geleistet hat für das KI-Training. Aber Sie sehen, die Sache ist interessant.
Himbeer-Pi in Aktion
Und hier sind einige neuere interessante Projekte unter Beteiligung von "Malinka".
RoboScan Film Scanner
Die Arbeit mit Filmen wird aufgrund der immer größer werdenden Kluft zwischen den Technologien immer schwieriger. Ein Projekt namens RocoScan verwendet einen Raspberry Pi mit einer digitalen Spiegelreflexkamera. Das Gerät scannt nicht nur das Bild aus dem alten Film, sondern automatisiert auch die Aufzeichnung von Bildern in einem separaten Ordner.
Servergehäuse im Minecraft-Stil
Dieser leuchtend bekannte Minecraft-Erzblock ist tatsächlich ein Minecraft-Server! Im Inneren befindet sich ein Raspberry Pi 4 sowie eine 128-GB-SSD mit dem Paper MC SMP. Die Schönheit!
Krustenschneider
Das Gerät, das wir verdienen! Wenn Sie ein Fan von perfekten Sandwiches sind, wissen Sie, dass es keinen Platz für geröstete und knusprige Krusten gibt. Diese Maschine auf "Malinka" wird die Routine, Sandwich-Unvollkommenheiten loszuwerden, aus Ihrem Leben ausschließen.
Automatisierter Hühnerstall
Dies kann natürlich nicht nur für Hühnerställe verwendet werden. Aber ein Enthusiast hat das Öffnen und Schließen von Hühnerstalltüren automatisiert, um seine Farm nachts zu schützen. Es basiert auf einem Raspberry Pi und mehreren Timern, die morgens und abends das Öffnen und Schließen von Türen einleiten. Läuft Ihr Hühnerstall auf Python?
Hast du ein Lieblingsprojekt auf Malinka? Teilen Sie in den Kommentaren!