-
Die vorliegende Erfindung betrifft ein Verfahren und ein System zum Betreiben eines Roboters, der einen Greifer führt, sowie ein Computerprogramm bzw. Computerprogrammprodukt zur Durchführung eines hier beschriebenen Verfahrens.
-
Die
DE 10 2022 129 008 A1 betrifft eine robotische Griffgenerierungstechnik für Teileaufnahmeanwendungen, wobei die Teile- und die Greifergeometrie als Eingaben bereitgestellt werden, üblicherweise aus CAD-Dateien, die Greiferkinematik ebenfalls als Eingabe festgelegt ist, eine Menge von Greifkandidaten mithilfe eines beliebigen bekannten Tools für die vorläufige Griffgenerierung bereitgestellt wird, ein Punktmodell des Teils und ein Modell der Greiferkontaktflächen mit einem Abstandsspielraum bei einer Optimierungsberechnung verwendet werden, die für jeden der Greifkandidaten vorgenommen wird, woraus eine Datenbank angepasster Griffe resultiert, die die Greifqualität durch die Verwendung einer virtuellen Greiferoberfläche optimieren, die die tatsächliche Greiferoberfläche in einem geringen Abstand weg vom Teil positioniert, dann eine Berechnung des vorzeichenbehafteten Distanzfelds für jeden der angepassten Griffe durchgeführt wird, und diejenigen, bei denen es zu irgendeiner Kollision zwischen dem Greifer und dem Teil kommt, verworfen werden, wobei die resultierende Griffdatenbank kollisionsfreie Griffe hoher Qualität zur Verwendung bei einem Vorgang zum Aufnehmen und Platzieren eines Teils durch einen Roboter enthält.
-
Die
DE 10 2022 122 818 A1 betrifft eine Methode der robotergesteuerten Zugriffserzeugung für Anwendungen der Maschinenbeschickung, wobei die Geometrie von Bauteilen und Greifer als Eingaben, typischerweise aus CAD-Dateien, bereitgestellt wird, die Greifer-Kinematik ebenfalls als eine Eingabe bereitgestellt wird, bevorzugte und gesperrte Zugriffsorte an dem Bauteil ebenfalls als Eingaben festgelegt werden können, um zu gewährleisten, dass die berechneten Zugriffskandidaten dem Roboter es ermöglichen, das Bauteil in eine Bearbeitungsstation zu laden, sodass die Bearbeitungsstation eine spezielle Stelle an dem Bauteil greifen kann, ein Optimierungslöser verwendet wird, um einen Qualitätszugriff mit stabilem Oberflächenkontakt zwischen dem Bauteil und dem Greifer zu berechnen, ohne Behinderung zwischen dem Greifer und dem Bauteil, und die bevorzugten und gesperrten Zugriffsorte zuzulassen, die als Eingaben festgelegt wurden, alle Flächen der Greiferfinger zum Greifen und zur Kollisionsvermeidung in Betracht gezogen werden, und ein Zyklus mit Zufallsinitialisierung verwendet wird, um viele hunderte vielfältiger Zugriffe für das Bauteil automatisch zu berechnen.
-
Die
DE 10 2021 121 063 A1 betrifft eine Greifbewegungs-Erzeugungstechnik für die robotergestützte Aufnahme von Objekten, wobei für alle auszuwertenden Objekte und Greifer eine Datenbank mit Volumen- oder Flächenmodellen bereitgestellt wird, ein Greifer ausgewählt und eine Zufallsinitialisierung durchgeführt werden, wobei zufällige Objekte und Stellungen aus der Objektdatenbank ausgewählt werden, anschließend eine iterative Optimierungsberechnung durchgeführt wird, bei der für jedes Objekt mit Oberflächenkontakt zwischen dem Objekt und dem Greifer viele Hunderte von Greifbewegungen berechnet und Stichproben für die Greifvielfalt und die globale Optimierung genommen werden, und schließlich eine physikalische Umgebungssimulation durchgeführt wird, bei der die Greifbewegungen für jedes Objekt auf simulierte Haufen von Objekten in einem Behälterszenario abgebildet werden, wobei die Greifpunkte und Annäherungsrichtungen aus der physikalischen Umgebungssimulation dann zum Trainieren neuronaler Netze für das Erlernen des Greifens in realen Roboteroperationen verwendet werden, wobei die Simulationsergebnisse mit Kameratiefenbilddaten korreliert werden, um einen qualitativ hochwertigen Greifvorgang zu identifizieren.
-
Die
DE 11 2021 003 955 T5 betrifft ein Erzeugen von Trainingsdaten auf einfache Weise, die für die Erstellung eines Trainingsmodells zur Identifizierung einer Position für die Entnahme eines en Gros geladenen Werkstücks benötigt werden, wobei eine Informationsverarbeitungsvorrichtung zum Verarbeiten von Informationen zum Wiederauffinden eines Werkstücks unter Verwendung einer Hand, umfasst: eine Empfangseinheit, die Wiederauffindungsbedingungen einschließlich Informationen über die Hand oder das Werkstück empfängt; eine Vorverarbeitungseinheit, die zumindest die Position des Schwerpunkts des Werkstücks auf Basis eines 3D-CAD-Modells des Werkstücks ableitet; und eine erste Verarbeitungseinheit, die auf Basis der abgeleiteten Position des Schwerpunkts des Werkstücks Schnittmerkmale des 3D-CAD-Modells des Werkstücks gemäß den Wiederauffindungsbedingungen ableitet.
-
Die
DE 11 2021 000 986 T5 betrifft eine Bereitstellung eines Robotersystems, das auf einfache Weise eine vollständige 3D-Punktgruppe für ein Messobjekt erzeugen kann, wobei das Robotersystem aufweist: einen Roboter, der einen Arm aufweist; einen 3D-Sensor, der dem Arm bereitgestellt ist; und eine Einheit zur Erzeugung einer 3D-Punktgruppe zum Erzeugen einer 3D-Punktgruppe eines Messobjekts gemäß 3D-Daten, die durch Messung des Messobjekts mit dem 3D-Sensor erlangt werden, wobei die Einheit zur Erzeugung einer 3D-Punktgruppe die 3D-Punktgruppe des Messobjekts durch Kombinieren von 3D-Daten aus der Messung des Messobjekts erzeugt, während der 3D-Sensor als Reaktion auf die Bewegung des Arms in einem beliebigen Koordinatensystem in einem Arbeitsbereich des Roboters neu positioniert wird.
-
Die
US 2021 / 0 158 561 A1 betrifft Geräte, Systeme und Techniken, die die Pose eines Objekts auf der Grundlage von Bildern schätzen, die aus einem kombinierten Bildvolumen generiert werden, wobei in mindestens einer Ausführungsform das kombinierte Bildvolumen aus mehreren Bildvolumina gewonnen wird, die auf der Grundlage mehrerer Bilder eines Objekts generiert wurden.
-
Aufgabe der vorliegenden Erfindung ist es, einen Betrieb eines Roboters, der einen Greifer führt, zu verbessern.
-
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Ansprüche 8, 9 stellen ein System bzw. Computerprogramm bzw. Computerprogrammprodukt zur Durchführung eines hier beschriebenen Verfahrens unter Schutz. Die Unteransprüche betreffen vorteilhafte Weiterbildungen.
-
Nach einer Ausführung der vorliegenden Erfindung weist ein Roboter einen Roboterarm auf, kann insbesondere ein solcher sein. Zusätzlich oder alternativ weist der Roboter, insbesondere der Roboterarm, in einer Ausführung wenigstens drei, insbesondere wenigstens sechs, in einer Ausführung wenigstens sieben, Gelenke bzw. (Bewegungs)Achsen, in einer Weiterbildung wenigstens drei, insbesondere wenigstens sechs, in einer Ausführung wenigstens sieben, Drehgelenke bzw. Drehachsen auf.
-
Nach einer Ausführung der vorliegenden Erfindung führt bzw. trägt der Roboter einen Greifer, in einer Weiterbildung einen Fingergreifer mit einem oder mehreren verstellbaren Fingern, einen Sauggreifer, einen magnetischen, vorzugsweise elektromagnetischen, Greifer oder dergleichen. Der Greifer ist in einer Ausführung, vorzugsweise zerstörungsfrei lös- bzw. austauschbar, an dem Roboter, insbesondere dem Roboterarm, vorzugsweise einem Endflansch des Roboters, insbesondere des Roboterarms, angeordnet.
-
Nach einer Ausführung der vorliegenden Erfindung umfasst ein Verfahren zum Betreiben des Roboters, der den Greifer führt, den Schritt: Ermitteln einer Pose des Greifers auf Basis einer Stellung des Roboters.
-
Eine Pose umfasst in einer Ausführung eine ein-, zwei- oder dreidimensionale Position und/oder eine ein-, zwei- oder dreidimensionale Orientierung, eine auf Basis einer Stellung des Roboters ermittelte Pose des Greifers in einer Ausführung eine ein-, zwei- oder dreidimensionale Position und/oder eine ein-, zwei- oder dreidimensionale Orientierung des Greifers relativ zu einem roboterfesten Bezugssystem, in einer Ausführung relativ zu einer Basis des Roboters, insbesondere des Roboterarms, und/oder relativ zu einer Umgebung des Roboters, eine hier ermittelte Pose einer von dem Greifer gehaltenen Last in einer Ausführung eine ein-, zwei- oder dreidimensionale Position und/oder eine ein-, zwei- oder dreidimensionale Orientierung der Last relativ zu dem Greifer, relativ zu einem roboterfesten Bezugssystem, in einer Ausführung relativ zu einer Basis des Roboters, insbesondere des Roboterarms, oder relativ zu einer Umgebung des Roboters. Eine Stellung des Roboters umfasst in einer Ausführung die Stellungen der Gelenke bzw. Achsen des Roboters, vorzugsweise erfasste bzw. Ist-Stellungen und/oder kommandierte bzw. Soll-Stellungen der Gelenke bzw. Achsen des Roboters. Somit kann eine Pose des Greifers in einer Ausführung mittels Vorwärtskinematik bzw. -transformation auf Basis der Stellungen der Gelenke) des Roboters ermittelt werden.
-
Nach einer Ausführung der vorliegenden Erfindung umfasst das Verfahren den weiteren Schritt: Ermitteln einer oder mehrerer virtueller Grenzkonturen in einer Abbildung wenigstens eines Teils des Greifers in bzw. mit einer Umgebung des Greifers (jeweils) auf Basis der ermittelten Pose des Greifers, wobei die bzw. einer oder mehrere der Grenzkontur(en jeweils) vorzugsweise die Pose des Greifers oder einen vorgegebenen translatorischen und/oder rotatorischen Versatz gegenüber der Pose des Greifers aufweisen. In einer Ausführung umfasst das Verfahren auch den Schritt, diese Abbildung zu ermitteln, in einer anderen Ausführung kann die ermittelte Abbildung auch von einer externen Instanz zur Verfügung gestellt werden bzw. sein.
-
Die Abbildung umfasst in einer Ausführung eine dreidimensionale Punktewolke und/oder ein Kamerabild und/oder ist bzw. wird mithilfe einer 3D-Aufnahmevorrichtung, insbesondere wenigstens einer 3D-Kamera, wenigstens zwei räumlich beabstandeten Stereographiekameras, wenigstens einem 3D-Scanner oder dergleichen, ermittelt. Daten der Abbildung geben in einer Ausführung dreidimensionale Positionen von Punkten des Greifers bzw. seiner Umgebung an, vorzugsweise von Punkten der Oberfläche des Greifers bzw. seiner Umgebung.
-
Nach einer Ausführung der vorliegenden Erfindung umfasst das Verfahren die weiteren Schritte:
- - Klassifizieren, vorzugsweise (Reduzieren durch) Aussortieren bzw. Eliminieren bzw. (Weg)Filtern, von Daten der Abbildung auf Basis der ermittelten Grenzkontur, insbesondere auf Basis der ermittelten Grenzkonturen;
- - Ermitteln einer Pose einer vom Greifer gehaltenen Last auf Basis der (solcherart) klassifizierten, insbesondere reduzierten, Daten; und
- - Steuern des Roboters und/oder Greifers auf Basis dieser ermittelten Pose der Last.
-
Einer Ausführung der vorliegenden Erfindung liegt die Erkenntnis, dass anhand einer bekannten Stellung des Roboters eine Pose des robotergeführten Greifers ermittelt werden kann, und die darauf aufbauende Idee zugrunde, dies auszunutzen, um eine Pose einer vom Greifer gehaltenen Last basierend auf einer Abbildung des Greifers mit der Last in bzw. mit seiner Umgebung besser, insbesondere rasch(er) und/oder präzise(r), zu ermitteln, vorzugsweise dadurch, dass wenigstens ein Teil der Daten der Abbildung zunächst basierend auf einer Pose des Greifers als nicht der Last zugeordnet aussortiert bzw. weggefiltert und die Pose der Last nur noch auf Basis der solcherart reduzierten (Daten der) Abbildung ermittelt wird.
-
In einer Ausführung ist die bzw. eine der auf Basis der ermittelten Pose des Greifers ermittelte(n) virtuelle(n) Grenzkontur(en) eine Greifer-Grenzkontur für den Greifer in der Abbildung, die auf Basis eines Datenmodells des Greifers ermittelt wird, und das Klassifizieren von Daten umfasst ein Aussortieren bzw. Eliminieren bzw. (Weg)Filtern von dem Greifer zugeordneten Daten der Abbildung auf Basis dieser Greifer-Grenzkontur, insbesondere von Daten, die bzw. deren Position innerhalb der Greifer-Grenzkontur liegt.
-
Das Datenmodell des Greifers ist bzw. wird in einer Ausführung auf Basis von Konstruktionsdaten, insbesondere CAD-Daten, des Greifers ermittelt bzw. kann solche Daten umfassen. Die Greifer-Grenzkontur für den Greifer entspricht in einer Ausführung einer, vorzugsweise vereinfachten, (virtuellen) Repräsentation des Greifers in der Abbildung und/oder wird in einer Ausführung derart ermittelt, dass sie im Rahmen einer durch die Vereinfachung bedingten Toleranz wenigstens teilweise mit einer, insbesondere theoretischen bzw. auf dem Datenmodell basierenden, Außenkontur des Greifers übereinstimmt, vorzugsweise innerhalb der tatsächlichen Außenkontur liegt. In einer Ausführung ändert sich die Greifer-Grenzkontur infolge einer Änderung einer Stellung des Greifers, beispielsweise eines oder mehrerer Finger des Greifers, entsprechend bzw. wird die Greifer-Grenzkontur für den Greifer in der Abbildung (auch) auf Basis einer kommandierten oder erfassten Pose von Gliedern des Greifers relativ zueinander (Greiferstellung) ermittelt.
-
Dem liegt die Erkenntnis, dass für den Greifer häufig präzise(re) Datenmodelle vorliegen, und die Idee zugrunde, auszunutzen, dass die Pose der Außenkontur des Greifers in der Abbildung auf Basis seiner ermittelten Pose und eines solchen Datenmodels bzw. einer auf dessen Basis ermittelten virtuellen Grenzkontur relativ präzise ermittelt und basierend hierauf dem Greifer zugeordneten Daten der Abbildung schnell(er), präzise(r) und/oder zuverlässig(er) aussortiert und dadurch die auf den (entsprechend reduzierten) Daten der Abbildung basierende Ermittlung der Pose der Last besser, insbesondere schnell(er), präzise(r) und/oder zuverlässig(er), erfolgen kann.
-
Zusätzlich oder alternativ ist in einer Ausführung die bzw. eine (weitere) der auf Basis der ermittelten Pose des Greifers ermittelte(n) virtuelle(n) Grenzkontur(en) eine Umgebungs-Grenzkontur für eine Umgebung des Greifers in der Abbildung, die auf Basis von Abmessungen, insbesondere theoretischen bzw. Soll-Abmessungen oder realen bzw. erfassten Abmessungen, des Greifers und/oder Abmessungen, insbesondere theoretischen bzw. Soll-Abmessungen oder realen bzw. erfassten Abmessungen, einer von dem Greifer gehaltenen Last, vorzugsweise der Last, deren Pose ermittelt wird, ermittelt wird, und das Klassifizieren von Daten umfasst ein Aussortieren bzw. Eliminieren bzw. (Weg)Filtern von einer Umgebung des Greifers (die in einer Ausführung den Roboter und/oder eine (gemeinsame) Umgebung von Greifer und Roboter, insbesondere also ein Hintergrund bzw. von dem Greifer, dem Roboter (und der Last) verschiedene Objekte, umfasst) zugeordneten Daten der Abbildung auf Basis dieser Umgebungs-Grenzkontur, insbesondere von Daten, die bzw. deren Position außerhalb der Umgebungs-Grenzkontur liegt.
-
Die Umgebungs-Grenzkontur für eine Umgebung des Greifers weist in einer Ausführung eine virtuelle, vorzugsweise konvexe, Hülle um die Last, in einer bevorzugten Ausführung in Form eines Ellipsoids, insbesondere einer Sphäre, oder eines Quaders, auf und/oder wird derart ermittelt, dass die Last vollständig innerhalb der Umgebungs-Grenzkontur liegt.
-
Dem liegt die Erkenntnis, dass durch die Pose des Greifers auch bereits die ungefähre Pose der Last relativ zur Umgebung bekannt ist, und die Idee zugrunde, dass durch Ausblenden von Daten der Abbildung, die außerhalb einer Grenzkontur liegen, welche an oder nahe der ermittelten Pose des Greifers und damit auch an oder nahe der Pose der von ihm gehaltenen Last angeordnet und so dimensioniert ist, dass sie die Last zuverlässig bzw. mit einem entsprechenden Sicherheitsabstand einhüllt, Daten der Abbildung, die zuverlässig nicht zur Last gehören, schnell(er), präzise(r) und/oder zuverlässig(er) aussortiert und dadurch die auf den (entsprechend reduzierten) Daten der Abbildung basierende Ermittlung der Pose der Last besser, insbesondere schnell(er), präzise(r) und/oder zuverlässig(er), erfolgen kann.
-
In einer Ausführung erfolgt das Klassifizieren von Daten der Abbildung auf Basis der ermittelten Greifer-Grenzkontur und Umgebungs-Grenzkontur mehrstufig, indem zunächst Daten der Abbildung durch das Aussortieren auf Basis der Umgebungs-Grenzkontur reduziert und danach diese reduzierten Daten durch das Aussortieren auf Basis der Greifer-Grenzkontur (noch) weiter reduziert werden. Dies weist in einer Ausführung den Vorteil auf, dass durch das Aussortieren auf Basis der Umgebungs-Grenzkontur häufig bereits eine erhebliche Datenreduktion erreicht werden kann. Zudem kann in einer Ausführung die Umgebungs-Grenzkontur eine einfache(re) geometrische Form aufweisen (als die Greifer-Grenzkontur), so dass das entsprechende Aussortieren rasch(er), präzise(r) und/oder zuverlässig(er) erfolgen und dadurch auch das anschließende Aussortieren auf Basis der Greifer-Grenzkontur verbessert werden kann.
-
In einer anderen Ausführung erfolgt das Klassifizieren von Daten der Abbildung auf Basis der ermittelten Greifer-Grenzkontur und Umgebungs-Grenzkontur, indem umgekehrt zunächst Daten der Abbildung durch das Aussortieren auf Basis der Greifer-Grenzkontur reduziert und danach diese reduzierten Daten durch das Aussortieren auf Basis der Umgebungs-Grenzkontur (noch) weiter reduziert werden.
-
In einer anderen Ausführung erfolgt das Klassifizieren von Daten der Abbildung auf Basis der ermittelten Greifer-Grenzkontur und Umgebungs-Grenzkontur parallel, in einer Weiterbildung, indem in einem Schritt sowohl Daten, die bzw. deren Position außerhalb der Umgebungs-Grenzkontur liegen, als auch Daten, die bzw. deren Position innerhalb der Greifer-Grenzkontur liegen, aussortiert werden. Dadurch kann das Verfahren beschleunigt werden.
-
In einer Ausführung werden die durch Aussortieren auf Basis der Greifer-Grenzkontur und/oder auf Basis der Umgebungs-Grenzkontur reduzierten Daten, die entsprechend im Wesentlichen der Last zugeordnete Daten enthalten, vor bzw. zum Ermitteln der Pose der Last noch (weiter bzw. nach)gefiltert. Hierdurch kann in einer Ausführung die Pose noch besser, insbesondere schnell(er), präzise(r) und/oder zuverlässig(er), ermittelt werden.
-
Zusätzlich oder alternativ werden in einer Ausführung die durch Aussortieren auf Basis der Greifer-Grenzkontur und/oder auf Basis der Umgebungs-Grenzkontur reduzierten Daten, die entsprechend im Wesentlichen der Last zugeordnete Daten enthalten, gegebenenfalls nach einer weiteren Datenbearbeitung, beispielsweise dem vorstehend genannten Nachfiltern, in ein Tiefenbild umgewandelt und basierend hierauf (je) eine Maske ermittelt, die vorteilhaft zum Aussegmentieren der Last in einem oder mehreren 2D-Bildern verwendet werden kann bzw. können. In einer Ausführung wird die Pose der Last auf Basis dieser Aussegmentierung auf Basis der klassifizierten bzw. reduzierten Daten der Abbildung ermittelt. Hierdurch kann in einer Ausführung das Aussegmentieren der Last in einem 2D-Bild bzw. Ermittlung der Pose verbessert, insbesondere schnell(er), präzise(r) und/oder zuverlässig(er) durchgeführt, werden. Indem in einer Ausführung das Aussegmentieren der Last auf Basis der Maske(n) erfolgt, die ihrerseits auf Basis der klassifizierten Daten ermittelt werden, wird dadurch die Pose der von dem Greifer gehaltenen Last (auch) auf Basis der klassifizierten Daten ermittelt.
-
In einer Ausführung umfasst das Steuern des Roboters und/oder Greifers auf Basis der ermittelten Pose der Last ein Transportieren und/oder Abgeben der Last mit dem robotergeführten Greifer.
-
In einer besonders vorteilhaften Anwendung umfasst das Steuern des Roboters und/oder Greifers auf Basis der ermittelten Pose der Last ein Überwachen und/oder Korrigieren einer Pose der Last, besonders bevorzugt während eines Greifens, Transportierens und/oder Abgebens der Last mit dem robotergeführten Greifer. Dabei wird in einer Ausführung die Pose der Last, vorzugsweise relativ zum Greifer, ein- oder mehrfach kontrolliert bzw. mit einer Referenz-Pose verglichen, vorzugsweise, während der Roboter die Last transportiert. Wird dabei eine fehlerhafte Pose oder eine unerwünschte Posenänderung der Last ermittelt bzw. erkannt, wird hierauf in einer Ausführung durch entsprechende Ausgabe einer Warnung und/oder eine entsprechende(s Steuern einer) Bewegung des Roboters und/oder Greifers, beispielsweise ein Anpassen des Griffs, ein Absetzen und Neu-Aufnehmen der Last, eine Anpassung der Stellung des Roboters zum bzw. beim Abgeben der Last oder dergleichen, reagiert.
-
Nach einer Ausführung der vorliegenden Erfindung ist ein System, insbesondere hard- und/oder software-, insbesondere programmtechnisch, zur Durchführung eines hier beschriebenen Verfahrens eingerichtet und/oder weist auf:
- Mittel zum Ermitteln einer Pose des Greifers auf Basis einer Stellung des Roboters;
- Mittel zum Ermitteln einer oder mehrerer virtueller Grenzkonturen in einer Abbildung wenigstens eines Teils des Greifers in einer Umgebung des Greifers auf Basis der ermittelten Pose, in einer Ausführung zum Ermitteln der Greifer-Grenzkontur auf Basis der ermittelten Pose und eines Datenmodells des Greifers und/oder zum Ermitteln der Umgebungs-Grenzkontur auf Basis der ermittelten Pose des Greifers und von Abmessungen des Greifers und/oder einer bzw. der von dem Greifer gehaltenen Last;
- Mittel zum Klassifizieren von Daten der Abbildung auf Basis der ermittelten wenigstens einen Grenzkontur, insbesondere zum Aussortieren von dem Greifer zugeordneten Daten der Abbildung auf Basis der Greifer-Grenzkontur und/oder zum Aussortieren von einer Umgebung des Greifers, insbesondere dem Roboter und/oder einer Umgebung des Greifers und Roboters, zugeordneten Daten auf Basis der Umgebungs-Grenzkontur;
- Mittel zum Ermitteln einer Pose einer von dem Greifer gehaltenen Last auf Basis der klassifizierten Daten; und
- Mittel zum Steuern des Roboters und/oder Greifers auf Basis der ermittelten Pose der Last.
-
In einer Ausführung weist das System bzw. seine Mittel auf: Mittel zum Umwandeln der durch Aussortieren auf Basis der Greifer-Grenzkontur und auf Basis der Umgebungs-Grenzkontur reduzierten Daten der Abbildung in ein Tiefenbild, Mittel zum Ermitteln wenigstens einer Maske basierend auf diesem Tiefenbild, und Mittel zum Aussegmentieren der Last in einem 2D-Bild basierend auf dieser Maske.
-
Ein System und/oder ein Mittel im Sinne der vorliegenden Erfindung kann hard- und/oder softwaretechnisch ausgebildet sein, insbesondere wenigstens eine, vorzugsweise mit einem Speicher- und/oder Bussystem daten- bzw. signalverbundene, insbesondere digitale, Verarbeitungs-, insbesondere Mikroprozessoreinheit (CPU), Graphikkarte (GPU) oder dergleichen, und/oder ein oder mehrere Programme oder Programmmodule aufweisen. Die Verarbeitungseinheit kann dazu ausgebildet sein, Befehle, die als ein in einem Speichersystem abgelegtes Programm implementiert sind, abzuarbeiten, Eingangssignale von einem Datenbus zu erfassen und/oder Ausgangssignale an einen Datenbus abzugeben. Ein Speichersystem kann ein oder mehrere, insbesondere verschiedene, Speichermedien, insbesondere optische, magnetische, Festkörper- und/oder andere nicht-flüchtige Medien aufweisen. Das Programm kann derart beschaffen sein, dass es die hier beschriebenen Verfahren verkörpert bzw. auszuführen imstande ist, sodass die Verarbeitungseinheit die Schritte solcher Verfahren ausführen kann und damit insbesondere den Roboter und/oder Greifer steuern kann.
-
Ein Computerprogrammprodukt kann in einer Ausführung ein, insbesondere computerlesbares und/oder nicht-flüchtiges, Speichermedium zum Speichern eines Programms bzw. von Anweisungen bzw. mit einem darauf gespeicherten Programm bzw. mit darauf gespeicherten Anweisungen aufweisen, insbesondere sein. In einer Ausführung veranlasst ein Ausführen dieses Programms bzw. dieser Anweisungen durch ein System bzw. eine Steuerung, insbesondere einen Computer oder eine Anordnung von mehreren Computern, das System bzw. die Steuerung, insbesondere den bzw. die Computer, dazu, ein hier beschriebenes Verfahren bzw. einen oder mehrere seiner Schritte auszuführen, bzw. sind das Programm bzw. die Anweisungen hierzu eingerichtet.
-
In einer Ausführung sind ein oder mehrere, insbesondere alle, Schritte des Verfahrens vollständig oder teilweise computerimplementiert bzw. werden ein oder mehrere, insbesondere alle, Schritte des Verfahrens vollständig oder teilweise automatisiert durchgeführt, insbesondere durch das System bzw. sein(e) Mittel.
-
In einer Ausführung weist das System den Roboter und/oder Greifer auf.
-
Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:
- 1: ein System zum Betreiben eines Roboters, der einen Greifer führt, nach einer Ausführung der vorliegenden Erfindung; und
- 2: ein Verfahren zum Betreiben des Roboters nach einer Ausführung der vorliegenden Erfindung.
-
1 zeigt ein System zum Betreiben eines sechsachsigen Roboters 10, dessen (Gelenk)Stellung(en) durch Gelenkkoordinaten q1,...,q6 angegeben sind, und an dessen Endflansch 11 ein Greifer 2 mit einer von ihm gehaltenen Last 3 angeordnet ist. Eine Robotersteuerung 20 kommuniziert mit dem Roboter 10 und einer Aufnahmevorrichtung 30 zum Aufnehmen einer Abbildung wenigstens eines Teils des Greifers 2 in seiner Umgebung.
-
In einem Schritt S10 wird die Abbildung in Form einer Punktewolke zur Verfügung gestellt und auf Basis der (Gelenk)Stellung(en) q = [q1,... ,q6] des Roboters 10 eine Pose x des Greifers 2 ermittelt, die dessen dreidimensionale Position und dreidimensionale Orientierung relativ zur Umgebung angibt (x = x(q)).
-
In einem Schritt S20 wird auf Basis der bekannten Abmessungen der Last 3 und der in Schritt S10 ermittelten Pose des Greifers 2 ein Durchmesser und eine (Mittelpunkts)Position einer Sphäre S derart bestimmt, dass die gehaltene Last 3 mit einer vorgegebenen Toleranz vollständig innerhalb der Sphäre angeordnet werden kann. Beispielsweise kann als Position [x, y, z] des Mittelpunkts der Sphäre S die durch die Pose des Greifers bestimmte Position des Greifers zuzüglich eines Soll-Versatzes zwischen Greiferbasis und Lastmittelpunkt ermittelt und der Durchmesser der Sphäre S so groß gewählt werden, dass die Last auch bei (bei (noch) gehaltener Last) maximal möglicher Abweichung von diesem Soll-Versatz (noch) vollständig innerhalb der Sphäre S liegt. Vorzugsweise kann als Position [x, y, z] des Mittelpunkts der Sphäre S die durch die Pose des Greifers bestimmte Position des Greifers selber ermittelt und der Durchmesser der Sphäre S entsprechend größer gewählt werden, so dass die gehaltene Last stets vollständig innerhalb der Sphäre S liegt.
-
Nun werden in einem Schritt S30 diejenigen Daten der Abbildung, die außerhalb der Sphäre S liegen, aussortiert bzw. eliminiert, beispielsweise einer Ablage 4 zugeordnete Daten. Dies entspricht einem Aussortieren von der Umgebung des Greifers, insbesondere dem Roboter 10 und einer gemeinsame Umgebung 4 des Greifers und Roboters, zugeordneten Daten auf Basis einer Umgebungs-Grenzkontur in Form der Sphäre S.
-
In einem Schritt S40 wird auf Basis eines Datenmodells des Greifers 2 und der in Schritt S10 ermittelten Pose des Greifers 2 eine Greifer-Grenzkontur G für den Greifer 2 in der Abbildung ermittelt, die leicht innerhalb der Außenkontur des Greifers 2 in der in Schritt S10 ermittelten Pose liegt.
-
Dann werden in einem Schritt S50 diejenigen der nach Schritt S30 verbliebenen Daten der Abbildung, die innerhalb der Greifer-Grenzkontur G liegen, eliminiert. Dies entspricht einem Aussortieren von dem Greifer 2 zugeordneten Daten auf Basis der in Schritt S40 ermittelten Greifer-Grenzkontur G.
-
Durch dieses Aussortieren zunächst auf Basis der Umgebungs-Grenzkontur (Schritt S30) und anschließend auf Basis der Greifer-Grenzkontur (Schritt S50) werden bzw. sind die verbleibenden Daten der Abbildung als potentiell der Last 3 zugeordnete Daten klassifiziert.
-
Nun wird in einem Schritt S60 die Pose der Last 3 relativ zum Greifer 2 auf Basis der solcherart klassifizierten Daten in an sich bekannter Weise, beispielsweise durch Erkennen bzw. Matchen von Mustern oder dergleichen, ermittelt. In einer Ausführung werden in Schritt S60 die durch Aussortieren auf Basis der Greifer-Grenzkontur und auf Basis der Umgebungs-Grenzkontur reduzierten Daten der Abbildung, vorzugsweise nach einem Nachfiltern, in ein Tiefenbild umgewandelt, basierend hierauf eine oder mehrere Masken ermittelt und diese (jeweils) zum Aussegmentieren der Last in einem 2D-Bild verwendet, wobei dieses Aussegmentieren bzw. aussegmentierte 2D-Bild(er) insbesondere zum Ermitteln der Pose verwendet werden kann bzw. können.
-
In einem Schritt S70 wird der Roboter 10 und/oder Greifer 2 auf Basis der solcherart ermittelten Pose der Last 3 gesteuert, insbesondere während eines Transports der Last 3 ihre Pose relativ zum Greifer 2 mit einer Referenzpose verglichen bzw. kontrolliert und bei einer unzulässigen Abweichung, beispielsweise einem Verrutschen, entsprechend korrigiert.
-
Durch die Verwendung der in Schritt S10 ermittelten Pose des Greifers 2 kann einerseits das Eliminieren von dem Greifer bzw. der Umgebung zugeordneten Daten der Abbildung verbessert, insbesondere rasch(er) durchgeführt werden.
-
Zudem können dadurch vorteilhaft Fehler beim Ermitteln der Pose der Last reduziert werden, die darauf basierend, dass Teile des Greifers bzw. der Umgebung irrtümlich mit Teilen der Last verwechselt werden.
-
Außerdem kann dadurch, dass die Pose der Last aufgrund der in Schritt S10 ermittelten Pose des Greifers 2 bereits ungefähr bekannt ist, die Ermittlung der tatsächlichen Pose der Last 3 auf Basis der (klassifizierten bzw. reduzierten Daten der) Abbildung verbessert, insbesondere rasch(er) durchgeführt werden.
-
Obwohl in der vorhergehenden Beschreibung exemplarische Ausführungen erläutert wurden, sei darauf hingewiesen, dass eine Vielzahl von Abwandlungen möglich ist. Außerdem sei darauf hingewiesen, dass es sich bei den exemplarischen Ausführungen lediglich um Beispiele handelt, die den Schutzbereich, die Anwendungen und den Aufbau in keiner Weise einschränken sollen.
-
Bezugszeichenliste
-
- 2
- Greifer
- 3
- Last
- 4
- Ablage
- 10
- Roboter
- 11
- Endflansch
- 20
- Robotersteuerung
- 30
- Aufnahmevorrichtung
- G
- Greifer-Grenzkontur
- S
- Sphäre (Umgebungs-Grenzkontur)
- q1-q6
- (Gelenk)Stellung(en) des Roboters