Announcement

Unity AI 2021 Praktikanten: Mit Robotik Herausforderungen meistern

ANTHONY NAVARRO / UNITY TECHNOLOGIESSenior Technical Product Manager
Sep 16, 2021|9 Min.
Unity AI 2021 Praktikanten: Mit Robotik Herausforderungen meistern
Diese Website wurde aus praktischen Gründen für Sie maschinell übersetzt. Die Richtigkeit und Zuverlässigkeit des übersetzten Inhalts kann von uns nicht gewährleistet werden. Sollten Sie Zweifel an der Richtigkeit des übersetzten Inhalts haben, schauen Sie sich bitte die offizielle englische Version der Website an.

AI@Unity arbeitet an erstaunlichen Forschungen und Produkten in den Bereichen Robotik, Computer Vision und maschinelles Lernen. Unsere Sommerpraktikanten arbeiteten an KI-Projekten mit echter Produktwirkung.

Da die Roboter immer ausgefeilter und die Aufgaben immer komplexer werden, steigt der Bedarf an Simulation. Die Simulation ermöglicht den Entwicklern eine Skalierung, da sie nicht für jedes Szenario, das sie testen müssen, einen physischen Roboter haben müssen. Sie ermöglicht es auch, bestimmte Aufgaben während der Entwicklung zu entwickeln und zu testen, insbesondere solche Aufgaben, die erst dann ausgeführt werden können, wenn der Roboter vollständig im Einsatz ist. Unser Unity Robotics-Team konzentriert sich darauf, Robotiksimulationen zu ermöglichen, indem es die Leistungsfähigkeit, die Ressourcen und die Integrierbarkeit der Unity-Engine nutzt und gleichzeitig robotikspezifische Tools und Pakete entwickelt, die die Simulationsmöglichkeiten erweitern. Der Unity Robotics Hub bietet Demos, Tutorials und Pakete, mit denen Sie noch heute mit der Simulation Ihres Roboters beginnen können.

Im Sommer 2021 haben unsere Praktikanten fleißig gearbeitet und wertvolle Beiträge zu unserer Arbeit bei Unity geleistet. Lesen Sie in den folgenden Abschnitten über ihre Projekte und Erfahrungen.

Inverse Kinematik und Steuerung in Unity
Jacob Platin, Robotik, Universität von Pennsylvania (Penn)

In diesem Sommer hatte ich die wunderbare Gelegenheit, als Teil des Robotik-Teams an der Integration von inverser Kinematik und Robotersteuerungen in Unity zu arbeiten. Wenn Benutzer Roboter, insbesondere Roboterarme, simulieren wollen, müssen sie den Roboter mit denselben oder ähnlichen APIs steuern, die sie auch zur Steuerung der echten Roboter verwenden würden. Diese APIs werden als Robotersteuerungen bezeichnet und bieten eine Vielzahl von Funktionen, z. B. das Bewegen des Roboters von einer Position zu einer anderen, das Bewegen eines einzelnen Gelenks (im Gelenkraum) oder sogar das Bewegen des Roboters im Kreis. Robotersteuerungen arbeiten hauptsächlich im Gelenkraum, d.h. die Befehle werden als Zielwinkel für jedes Gelenk angegeben. Der Mensch hingegen interessiert sich nur für die Position und Ausrichtung des Endeffektors im kartesischen Raum (d. h. X-, Y- und Z-Koordinaten in unserer 3D-Welt). Das Ziel der inversen Kinematik besteht also darin, zu bestimmen, welche Gelenkwinkel einer bestimmten Position und Orientierung im kartesischen Raum entsprechen. Inverse Kinematik ist ein wichtiger Bestandteil des Werkzeugkastens eines Robotikers. Mit diesem Paket wird Unity als Simulationsplattform für die Robotik noch leistungsfähiger und einfacher zu verwenden.

Die Integration dieser Funktionen in Unity erwies sich als immense Herausforderung, die von mir verlangte, meine Kenntnisse in linearer Algebra, Physik, Kalkül, Informatik und sogar Vorkalkül aufzufrischen und gleichzeitig die Software so benutzerfreundlich wie möglich zu gestalten. Ich habe auch etwas über die Simulation von Industrierobotern in VR gelernt, indem ich eine Demo erstellt habe, bei der die Benutzer einen Würfel in VR bewegen können, dem der Roboterarm folgt. Mit der Herausforderung kommt jedoch auch eine große Chance, und es war mir eine Ehre, ein so grundlegendes Stück Code für Roboter in Unity im Alleingang zu entwerfen, zu erstellen und zu versenden. Es ist unglaublich selten, dass Mitarbeiter sich täglich auf ihre Arbeit freuen und von ihr ständig herausgefordert werden, und ich kann von Glück sagen, dass ich diese Erfahrung bei Unity gemacht habe!

Multi-Agenten-Robotik-Simulation
Tiffany Yau, B.Eng. Robotik-Ingenieurwesen, Universität von Toronto
Simon Chamorro, B.Eng. Robotics Engineering, Université de Sherbrooke
3D-Simulation eines grünen Roboters, der sich auf einem Holzboden bewegt

In industriellen Anwendungen müssen mehrere Roboter mit unterschiedlichen Spezialfähigkeiten zusammenarbeiten, um komplexe Aufgaben zu bewältigen. Dieses Projekt zeigt, wie die Koordination zwischen mehreren Robotern mit dem Unity-Editor und den Robotik-Simulationspaketen zusammen mit ROS 2 erreicht werden kann, um eine Find-and-Ferry-Aufgabe in einem Lagerhaus auszuführen. Diese Demonstration unterstreicht auch den Vorteil von Unity gegenüber anderen Robotersimulationstools, bei denen Multi-Agenten-Simulationen wie diese eine Herausforderung darstellen. Unsere Simulation besteht aus zwei Arten von Robotern, die wir Findbot und Ferrybot nennen. Mehrere Findbots sind dafür verantwortlich, mithilfe von maschinellem Lernen Zielwürfel in einer Lagerumgebung zu finden, und ein einzelner Ferrybot navigiert zu diesen Würfeln, holt sie ab und bringt sie an einen bestimmten Ort. Zu diesem Zweck ist jeder Findbot mit einer Kamera zur Erkennung des Würfels ausgestattet, während der Ferrybot einen Roboterarm zum Aufnehmen des Würfels hat. Dieses Beispielprojekt ist nützlich für Robotikentwickler und Forscher, die die Robotikwerkzeuge von Unity in ihren eigenen Simulationen verwenden möchten.

Insgesamt war dies eine großartige Erfahrung, da wir eine breite Palette von Unity-Paketen nutzen und in unser Projekt integrieren konnten. So haben wir zum Beispiel das Computer Vision Perception Package für die Datenerfassung verwendet, um unser Modell für die Posenschätzung zu trainieren. Wir haben auch ein Paket für inverse Kinematik (das in Jacobs Projekt oben erwähnt wurde) auf Ferrybot verwendet, um die Würfel aufzunehmen. Die Abhängigkeit von einem Projekt, das parallel zu unserem entwickelt wurde, war ebenfalls eine große Herausforderung, aber auch eine großartige Gelegenheit, um Zusammenarbeit und Kommunikation zu lernen. Es ist auch sehr befriedigend zu wissen, dass unser Projekt zur Vorbereitung eines ROSCon-Workshops 2021 genutzt wird.

Werden Sie Mitglied unseres Teams

Wenn Sie daran interessiert sind, durch die Arbeit mit Unity an anspruchsvollen Projekten im Bereich der künstlichen Intelligenz praktische Erfahrungen zu sammeln, besuchen Sie unsere Seite für Hochschulkarrieren. Sie können Ihre Erfahrungen zu Hause machen, indem Sie unsere Demos und Tutorials im Unity Robotics Hub durchgehen.