EyeBot – Vision Guided Robot

Für "smartes Greifen" müssen verschiedene Disziplinen optimal zusammenarbeiten. Wenn die Aufgabe beispielsweise lautet, Produkte unterschiedlicher Größe, Form, Material oder auch Qualität roboterbasiert zu sortieren, muss nicht nur Gegriffen, sondern vorher identifiziert, analysiert und lokalisiert werden. Mit regelbasiert arbeitenden Bildverarbeitungssystemen ist das gerade in kleinen Losgrößen oft nicht nur sehr aufwendig, sondern auch kaum wirtschaftlich lösbar. Doch in Kombination mit KI-basierter Inferenz können Industrierobotern heute bereits die notwendigen Fähigkeiten und das Produktwissen eines Facharbeiters antrainiert werden. Für die einzelnen Teilaufgaben muss das Rad sogar nicht mehr neu erfunden werden. Es genügt, die richtigen Produkte interdisziplinär als "smartes Robot Vision System" effektiv zusammen arbeiten zu lassen.

EyeBot Use Case

In einer Fertigungslinie liegen Objekte zufällig verstreut auf einem Förderband. Die Objekte müssen erkannt, auswählt und z.B. in eine Verpackungen gelegt oder für eine Verarbeitungs- bzw. Analysestation lagerichtig weitergereicht werden. Das Softwareunternehmen urobots GmbH hat für die Erfassung von Objekten und zur Robotersteuerung eine PC-basierte Lösung entwickelt. Ihr trainiertes KI-Modell war in der Lage, die Position und Orientierung der Objekte in Kamerabildern zu erkennen, aus denen dann Griffkoordinaten für den Roboter ermittelt wurden. Das Ziel war nun, diese Lösung auf das KI-basierte Embedded Vision System von IDS Imaging Development Systems GmbH zu portieren. Denn für die Lösung kam es urobots vor allem auf zwei Dinge an:

  1. Der Anwender soll die Möglichkeit haben, das System ohne spezielle KI-Expertise für verschiedene Anwendungsfälle einfach selbst anzupassen. Das heißt, auch wenn sich z.B. etwas in der Produktion ändert, wie die Beleuchtung, das Aussehen der Objekte oder auch wenn weitere Objekttypen eingebunden werden sollen.
  2. Das Gesamtsystem sollte durch direkte Kommunikation der Gerätekomponenten vollständig PC-los arbeiten, um sowohl kostengünstig als auch leicht und platzsparend zu sein.

Beides Anforderungen, die von IDS mit dem Inferenzkamerasystem IDS NXT Experience Kit bereits zur Verfügung stehen.

Alexey Pavlov (Geschäftsführer der urobots GmbH) erklärt:
„Die komplette Bildverarbeitung läuft auf der Kamera, die direkt über Ethernet mit dem Roboter kommuniziert. Ermöglicht wird dies durch eine mit dem IDS NXT Vision App Creator entwickelte Vision App, die den IDS NXT KI core verwendet. Die Vision App versetzt die Kamera in die Lage, vortrainierte (2D) Objekte in den Bildinformationen zu lokalisieren und identifizieren. So können beispielsweise Werkzeuge, die auf einer Ebene liegen, lagerichtig gegriffen und auf einen dafür vorgesehenen Platz gelegt werden. Das PC-lose System spart Kosten, Platz und Energie, wodurch sich leichte und kostengünstige Kommissionierungslösungen realisieren lassen."

Lageerkennung und direkte Maschinenkommunikation

Ein trainiertes neuronales Netz identifiziert alle Objekte im Bild und detektiert zudem ihre Position und Orientierung. Durch die KI geht das nicht nur für feste und immer gleich aussehende Objekte, sondern auch wenn viel natürliche Varianz vorliegt, wie beispielsweise bei Lebensmitteln, Pflanzen oder anderen flexiblen Objekten. Daraus resultiert in eine sehr stabile Positions und Lageerkennung der Objekte. Die urobots GmbH trainierte für den Kunden das Netz mit eigener Software und Wissen, konvertierte es ins richtige Format und lud dieses dann auf die IDS NXT Kamera hoch. Dazu musste es es in ein spezielle Format übersetzt werden, das einer Art "verketteter Liste" gleicht. Die Portierung des trainierten neuronalen Netzes für die Verwendung in der Inferenzkamera war mit dem von IDS bereitgestellten Tool IDS NXT ferry sehr einfach. Aus jeder Schicht des CNN-Netzwerks wird dabei ein Knotendeskriptor, der jede Schicht genau beschreibt. Am Ende entsteht eine vollständige verkettete Liste des CNN in binärer Darstellung. Ein speziell für die Kamera entwickelter CNN-Beschleuniger auf Basis eines FPGA Core kann dieses universellen CNN Formate dann optimiert ausführen.

Die von urobots entwickelte Vision App berechnet dann aus den Detektionsdaten optimale Griffpositionen. Doch damit war die Aufgabe noch nicht gelöst. Neben den Ergebnissen Was, Wo und Wie gegriffen wird, musste eine direkte Kommunikation zwischen der IDS NXT-Kamera und dem Roboter hergestellt werden. Gerade diese Aufgabe gilt es nicht zu unterschätzen. Hier entscheidet sich oftmals, wieviel Zeit, Geld und Manpower in eine Lösung investiert werden muss. urobots implementierte mit dem IDS NXT Vision App Creator ein XMLRPC-basiertes Netzwerkprotokoll in der Vision App der Kamera, um die konkreten Arbeitsanweisungen direkt an den Roboter weiterzureichen. Die finale AI-Vision-Applikation detektiert Objekte in ca. 200 ms und erreicht eine Lagegenauigkeit von +/- 2 Grad.

Das neuronales Netz in der IDS NXT Kamera lokalisiert und detektiert die exakte Lage der Objekte. Auf Basis dieser Bildinformationen können sie vom Roboter selbständig gegriffen und abgelegt werden
Das neuronales Netz in der IDS NXT Kamera lokalisiert und detektiert die exakte Lage der Objekte. Auf Basis dieser Bildinformationen können sie vom Roboter selbständig gegriffen und abgelegt werden

Mehr als künstlich intelligent — PC-los!

Nicht allein die künstliche Intelligenz macht diesen Use Case so smart. Auch die Tatsache, dass diese Lösung vollständig ohne einen zusätzlichen PC funktioniert ist in zweierlei Hinsicht interessant. Da die Kamera selbst Bildverarbeitungsergebnisse erzeugt und nicht nur Bilder liefert, kann zum einen auf die PC-Hardware und alle damit verbundene Infrastruktur verzichtet werden. Letztendlich reduziert das die Anschaffungs- und Instandhaltungskosten der Anlage. Ganz oft ist aber auch wichtig, dass Prozessentscheidungen direkt vor Ort getroffen werden, also "in Time". Folgeprozesse können dadurch schneller und ohne Latenzen ausgeführt werden, was in machen Fällen auch eine Erhöhung der Taktrate ermöglicht.

Ein weiterer Aspekt betrifft die Entwicklungskosten. AI-Vision bzw. das Trainieren eine neuronalen Netzes funktioniert ganz anders als klassische, regelbasierte Bildverarbeitung und damit ändert sich auch die Herangehensweise und Bearbeitung von Bildverarbeitungsaufgaben. Die Qualität der Ergebnisse ist nicht mehr das Produkt eines manuell entwickelten Programmcodes durch Bildverarbeitungsexperten und Anwendungsentwickler. Sprich, wenn sich eine Anwendung KI-basiert lösen lässt, können mit IDS NXT Experience Kit auch wieder Kosten und Zeit der entsprechenden Experten eingespart werden, denn mit der umfangreichen und nutzerfreundlichen Software-Umgebung kann jede Anwendergruppe ein neuronales Netz trainieren, die dazu passende Vision App entwerfen und auf der Kamera ausführen.

Der EyeBot Use Case hat zeigt, wie aus einer Computer Vision eine PC-lose Embedded AI-Vision Anwendung werden kann. Auch die Erweiterbarkeit durch das Vision App-basierte Konzept, die Anwendungsentwicklung für verschiedene Zielgruppen und ein durchgehender Hersteller-Support sind Vorteile des kleinen Embedded Systems. Mit EyeBot sind die Kompetenzen in einer Anwendung klar verteilt. Die Aufmerksamkeit des Anwenders kann bei seinem Produkt bleiben, während sich IDS und urobots auf das Training und die Ausführung der KI zur Bildverarbeitung und die Steuerung des Roboters konzentrieren. Ein zusätzlicher Vorteil – durch die Ethernet-basierte Kommunikation und die offene IDS NXT Plattform kann die Vision App auch leicht für andere Objekte, andere Robotermodelle und somit für viele weitere ähnliche Anwendungen adaptiert werden.

Video zum EyeBot von urobots