Die besten Robotik -Distributionen

Die besten Robotik -Distributionen
Für die Entwicklung der Robotik stehen viele Sammlungen zur Auswahl zur Verfügung. Aus Gewohnheit suchen Linux -Benutzer nach Verteilungen, um die perfekte Lösung für ihr Projekt zu finden. Während es Verteilungen gibt, können Sie es verpassen, wenn Sie nicht nach gemeinsamen Bibliotheken suchen, die Ihnen bei bestimmten Aufgaben helfen. Welche Tools, die Sie bereits verwenden, ist auch eine Überlegung, um ernst zu nehmen.

Da die Arbeit mit Robotern eine Entwicklungsaufwand sein wird, werden die meisten Tools, die Sie benötigen. Die Open Source Robotics Foundation (OSRF) verfügt über eine großartige Webseite mit Ressourcen. Sie unterstützen und pflegen das Robotik -Betriebssystem (ROS). Dies ist eine große Sammlung von Tools, die Sie sowohl auf Ihrem vorhandenen System als auch als Container installieren können.

Die Argumentation hinter einer Verteilung

Wenn Sie mit Robotern experimentieren, werden Sie viele Dinge entdecken, die Sie beim Start nicht erwartet haben. Erkennen Sie, wie sehr die Interpretation von Bildern für die Robotikentwicklung von Bedeutung ist?? In einer Verteilung haben Sie alle Tools, die Sie benötigen, bevor Sie wissen, dass Sie sie benötigen.

Dies macht es schneller, loszulegen und die Komplikationen zu vermeiden, wenn sich Projekte entwickeln. Sie werden den Speicherplatz unnötig belegen, aber die Gesamtgröße des Systems ist für einen modernen Computer nicht groß. Stellen Sie beim Fortschritt in Ihrem Projekt sicher, dass Sie wissen, was Sie in den Roboter einfügen sollen, und nicht. Ihre Festplatten -Raumbeschränkungen sind dort viel strenger.

ROS - die größte und offensichtliche Wahl

Wie bereits erwähnt, hat ROS eine riesige Funktionsbibliothek. Diese reichen von Hardwarekontrolle, Nachrichten zwischen Subsystemen und Visionsbibliotheken und Simulatoren. Das Projekt wird vom OSRF gut unterstützt. Sie werden wiederum von vielen Branchenführern unterstützt, und ihre kommerzielle Tochtergesellschaft unterstützt dieselben Unternehmen bei ihren Bemühungen.

Trotz der großen Auswahlmöglichkeiten und der hohen Raffinesse kann ein neuer Benutzer mit einigen Standardkomponenten beginnen. Dank der kooperativen Methoden des OSRF gibt es viele Roboter, die mit dem ROS gebaut wurden. Viele sind Konsumgüter, die Sie für einen angemessenen Betrag kaufen und Ihr Projekt für eine bestimmte Aufgabe beginnen können. Derzeit sind verfügbare Produkte eins auf Rädern, Beinen und Flügeln auf fliegenden Drohnen. Sie können sogar Wasserbewohner finden, einschließlich U -Boote.

Dieses Projekt hält Sie für den industriellen Gebrauch, wenn Sie dorthin wollen. Es gibt eine gewisse Lernkurve, aber Sie haben sowieso viel über Robotik zu lernen. Wenn Sie Ihr erstes Projekt planen, werden Sie mit Sicherheit viele Funktionen verpassen, die Sie nur für die grundlegende Verwendung benötigen.

Mobile Robotik -Programmier -Toolkit

Wie Sie sehen werden, wenn Sie mit Robotern beginnen, wird ein Großteil des Jobs programmieren. Dieses Toolkit hilft Ihnen bei SLAM (gleichzeitige Lokalisierung und Zuordnung) und anderen Tools für die Pfadplanung. Viele der Werkzeuge haben mit Sehvermögen zu tun. Ein interessantes Stück dieses Tool -Kits ist die Unterstützung für die Kinect -Hardware. Die libfreenect -Bibliotheken sind die zugrunde liegenden für dieses Projekt. Um es Ihrer Ubuntu -Installation hinzuzufügen, können Sie die PPA abholen und mit APT installieren. Das Kompilieren Ihrer eigenen erfordert GCC-7 oder neuer, clang-4 oder neuer. Für weitere Informationen und was Sie tun müssen, wenn Sie ROS verwenden, finden Sie auf der Github -Seite.

Yarp

Mit dem Namen "An einer anderen Roboterplattform" basiert es auf der Idee, dass Sie so viel wie möglich von vorhandenen Tools verwenden. Yarp ist eine Sammlung von C ++ - Bibliotheken, die Kommunikationsprotokolle für alle Ebenen von Robotikprojekten definiert. Sie haben drei Komponenten von Yarp, Yarpos, Yarpsig und Yarpdev. Sie alle befassen sich mit der Sendung von Daten zwischen den Komponenten Ihres Projekts. Die Yarpos -Komponente erstellt Schnittstellen in Richtung des von Ihnen ausgeführten Betriebssystems. Dies erleichtert einfach, das Betriebssystem oder die Hardware einer Komponente zu wechseln und gleichzeitig die gleichen YARP -Datenströme beizubehalten. Dies ist erforderlich, um die anderen Teile des Systems auszuführen. Yarpsig erledigt Signalverarbeitungsaufgaben, es wird mit OpenCV und ähnlichen Bibliotheken gegrenzt. Es erfolgt nicht die Verarbeitung. Yarpdev bietet Schnittstellen für alle Arten von Geräten, die Sie benötigen. Denken Sie an Kameras, Mikrofone, Motorfahrer und mehr. Yarp macht die Schnittstelle zum Gesamtsystem. Sie werden es auch verwenden, um Ihre Geräte zu konfigurieren. Yarp hilft Ihnen bei der Planung aller anderen Software, damit Sie das verwenden können, was es gibt. Tatsächlich haben Sie auch die Möglichkeit, einige Komponenten unter ROS auszuführen, während andere Yarp ausführen. Es stehen viele Optionen zur Verfügung, und Sie können schrittweise zwischen beiden wechseln.

Abschluss

Wenn Sie mit Robotik beginnen, benötigen Sie viele Softwareteile. Jeder Controller und jeder eingebettete Computer haben unterschiedliche Anforderungen und Systeme. Jede Kamera hat einen neuen Fahrer. Alle Daten müssen sich zwischen Subsystemen und Komponenten bewegen. Es wird wirklich kompliziert. Um schneller zu beginnen, müssen Sie ein System haben, das alles koordiniert. Sie tun dies, indem Sie eine Koordinierungsfunktion für Nachrichten und Daten haben. Diese sind als "Themen", "Knoten" und "Dienstleistungen" organisiert. Der Grund für diese unterschiedlichen Funktionen ist, dass Sie manchmal Befehle ausführen möchten, Sie manchmal Daten für viele andere Teile des Systems zur Verfügung stellen möchten, und Sie können auch alle Daten im Allgemeinen an das System senden.

Hier benötigen Sie eine Verteilung oder eine Plattform, die all dies koordiniert hält. ROS ist das System, das mit den meisten, wenn nicht allen Hardware und Arten von Projekten funktioniert. Denken Sie daran, zu verstehen, was Sie mit Ihrem Design erreichen möchten. Dies ist besonders wichtig, wenn Sie lernen. Wenn Sie ein Ziel haben, haben alle Schritte einen Grund und einen Verband. Das sind die Grundlagen des Lernens; Um den Zusammenhang zwischen Vernunft und Aktion zu sehen.