DE102021103726B4 - Messparameter-Optimierungsverfahren und -vorrichtung sowie Computersteuerprogramm - Google Patents

Messparameter-Optimierungsverfahren und -vorrichtung sowie Computersteuerprogramm Download PDF

Info

Publication number
DE102021103726B4
DE102021103726B4 DE102021103726.3A DE102021103726A DE102021103726B4 DE 102021103726 B4 DE102021103726 B4 DE 102021103726B4 DE 102021103726 A DE102021103726 A DE 102021103726A DE 102021103726 B4 DE102021103726 B4 DE 102021103726B4
Authority
DE
Germany
Prior art keywords
data
objects
measurement
robot
measurement parameters
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102021103726.3A
Other languages
English (en)
Other versions
DE102021103726A1 (de
Inventor
Lin Miao
Xingdou FU
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2020097760A external-priority patent/JP7450857B2/ja
Application filed by Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Publication of DE102021103726A1 publication Critical patent/DE102021103726A1/de
Application granted granted Critical
Publication of DE102021103726B4 publication Critical patent/DE102021103726B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0007Image acquisition
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1651Programme controls characterised by the control loop acceleration, rate control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/0095Means or methods for testing manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0014Image feed-back for automatic industrial control, e.g. robot with camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/771Feature selection, e.g. selecting representative features from a multi-dimensional feature space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37555Camera detects orientation, position workpiece, points of workpiece
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50391Robot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30242Counting objects in image

Abstract

Messparameter-Optimierungsverfahren zur Verwendung, wenn ein oder mehrere Objekte (5) durch eine an einem Roboter (10) vorgesehene Messvorrichtung (1) gemessen werden, wobei das Verfahren umfasst:einen ersten Schritt (S501), N (wobei N größer als 1 ist) aufgenommene Bilder der ein oder mehreren Objekte (5) zu erfassen, während bewirkt wird, dass die Messvorrichtung (1) sich mit einer Geschwindigkeit V, einem Zeitintervall T und einem Gesamtbewegungswinkel θ als ersten Messparametern bewegt;einen zweiten Schritt (S502, S503), auf Basis einer Annahme des Erfassens von N/j (wobei j eine ganze Zahl größer als oder gleich 1 ist) aufgenommenen Bildern der ein oder mehreren Objekte (5), während bewirkt wird, dass die Messvorrichtung (1) sich mit der Geschwindigkeit V, einem Zeitintervall T×j und dem Gesamtbewegungswinkel θ als zweiten Messparametern bewegt, und dann der Durchführung einer Bildverarbeitung zum Erkennen von Positionen und Ausrichtungen der ein oder mehreren Objekte (5), einen Bewertungswert Zi, der eine Genauigkeit der Erkennung der ein oder mehreren Objekte (5) anzeigt, für jede aufgenommene Bildzahl i (hier i=1,2,...,N/j-1,N/j) zu schätzen und die Bewertungswerte Zi in Zuordnung zu den zweiten Messparametern als erste Daten zu speichern;einen dritten Schritt (S504), auf Basis einer Annahme des Erfassens von N/j/k (wobei k eine ganze Zahl größer als oder gleich 2 ist) aufgenommenen Bildern der ein oder mehreren Objekte (5), während bewirkt wird, dass die Messvorrichtung (1) sich mit einer Geschwindigkeit V×k, einem Zeitintervall T×j/k und dem Gesamtbewegungswinkel θ als dritten Messparametern bewegt, und dann der Durchführung einer Verarbeitung ähnlich der Bildverarbeitung in dem zweiten Schritt, den Bewertungswert Zi, der eine Genauigkeit der Erkennung der ein oder mehreren Objekte (5) anzeigt, für jede aufgenommene Bildzahl i (hier i=1,2,...,N/j/k-1,N/j/k) auf Basis der ersten Daten zu schätzen und die Bewertungswerte Zi in Zuordnung zu den dritten Messparametern als zweite Daten zu speichern; undeinen vierten Schritt (S505), einen Messparameter, der Daten entspricht, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den zweiten Daten auszuwählen und den ausgewählten Messparameter als optimierten Messparameter zu bestimmen, der zu verwenden ist, wenn die ein oder mehreren Objekte (5) durch den Roboter (10) gehandhabt werden (S506).

Description

  • Die vorliegende Erfindung betrifft ein Objektmessparameter-Optimierungsverfahren und dergleichen in einem Robotersystem zum Handhaben von Objekten.
  • In Prüf- und Fertigungsstraßen in der Fabrikautomatisierung (FA) sind Vorrichtungen bekannt, die die Positionen und Ausrichtungen von Objekten wie etwa aufgehäuften Werkstücken (z.B. Teilen) messen und einen Roboter verwenden, um erkannte Objekte an eine andere Stelle oder in einen anderen Behälter umzusetzen oder die Objekte zu verarbeiten. In solchen Vorrichtungen werden Parameter zum optimalen Steuern des Betriebs des Roboters und der Messvorrichtung eingestellt, und auf Basis der Steuerparameter werden durch den Roboter und die Messvorrichtung verschiedene Aufgaben ausgeführt.
  • Die JP 2017-56546A beschreibt beispielsweise ein Verfahren zum aufeinanderfolgenden Bestimmen von Messpositionen und Ausrichtungen als Messparametern in einer Messvorrichtung, die einen Roboter und eine Werkzeugmaschine aufweist und eine Gruppe von Objekten mehrmals misst (Multi-View- beziehungsweise Mehrfachansichts-Messung). Bei diesem Verfahren sind Bewegungsendpunktpositionen des Roboters gespeichert, und auf Basis solcher Positionen erfolgt eine Kalibrierung, um gleichzeitig Fehler in den mechanischen Parametern des Roboters zu bestimmen und die relative Beziehung zwischen dem Koordinatensystem des Roboters und dem Koordinatensystem der Werkzeugmaschine zu gewinnen.
  • Die DE 10 2019 206 444 A1 offenbart ein Verfahren zum maschinellen Lernen einer Objekterkennung mithilfe wenigstens einer robotergeführten Kamera und wenigstens eines Lernobjekts umfasst die Schritte: Positionieren der Kamera in unterschiedlichen Posen relativ zu dem Lernobjekt mithilfe eines Roboters, wobei in den Posen jeweils wenigstens ein Lokalisierungs-Bild, insbesondere ein zweidimensionales und/oder ein dreidimensionales Lokalisierungs-Bild, aufgenommen und gespeichert wird, welches das Lernobjekt abbildet; Ermitteln eines virtuellen Modells des Lernobjekts auf Basis der Posen und wenigstens einiger der Lokalisierungs-Bilder; Ermitteln einer Pose einer Referenz des Lernobjekts in wenigstens einem mit der Kamera aufgenommenen Trainings-Bild, insbesondere wenigstens einem der Lokalisierungs-Bilder und/oder wenigstens einem Bild mit wenigstens einem in wenigstens einem der Lokalisierungs-Bilder nicht abgebildeten Störobjekt, auf Basis des virtuellen Modells; und maschinelles Lernen einer Objekterkennung der Referenz auf Basis dieser ermittelten Pose in dem wenigstens einen Trainings-Bild. Ein erfindungsgemäßes Verfahren zum Betreiben eines Roboters umfasst die Schritte: Ermitteln einer Pose wenigstens einer Referenz eines Betriebsobjekts mithilfe der Objekterkennung, die mit diesem Verfahren gelernt worden ist; und Betreiben des Roboters auf Basis dieser Pose.
  • Die DE 20 2017 106 506 U1 offenbart ein nichttransitorisches computerlesbares Speichermedium, das Anweisungen speichert, die durch einen oder mehrere Prozessoren ausführbar sind, um diese Schritte auszuführen: Erzeugen eines Kandidateneffektorbewegungsvektors, der eine Bewegung definiert, um einen Greifeffektor eines Roboters von einer aktuellen Stellung zu einer zusätzlichen Stellung zu bewegen; Identifizieren eines aktuellen Bilds, das durch einen Vision-Sensor, der dem Roboter zugeordnet ist, aufgenommen ist, wobei das aktuelle Bild den Greifeffektor und wenigstens ein Objekt in einer Umgebung des Roboters aufnimmt; Anwenden des aktuellen Bilds und des Kandidateneffektorbewegungsvektors als Eingabe für ein trainiertes neuronales Greif-Faltungsnetz; Erzeugen über das trainierte neuronale Greif-Faltungsnetz eines Maßes für erfolgreiches Greifen des Objekts mit der Anwendung der Bewegung, wobei das Maß basierend auf der Anwendung des Bilds und des Effektorbewegungsvektors auf das trainierte neuronale Greif-Faltungsnetz erzeugt wird; Identifizieren eines gewünschten Objekt-Semantikmerkmals; Anwenden als Eingabe für ein neuronales Semantik-Faltungsnetz einer räumlichen Transformation des aktuellen Bilds oder eines zusätzlichen Bilds, das durch den Vision-Sensor aufgenommen wird; Erzeugen über das neuronale Semantik-Faltungsnetz basierend auf der räumlichen Transformation eines zusätzlichen Maßes, das angibt, ob das gewünschte Objekt-Semantikmerkmal in der räumlichen Transformation vorhanden ist; Erzeugen eines Effektorbefehls basierend auf dem Maß für erfolgreiches Greifen und dem zusätzlichen Maß, das angibt, ob das gewünschte Objekt-Semantikmerkmal vorhanden ist; und Bereitstellen des Effektorbefehls für einen oder mehrere Aktuatoren des Roboters.
  • Die DE 10 2014 106 210 B4 offenbart ein Verfahren zum Konstruieren einer probabilistischen Darstellung des Orts eines Objekts innerhalb eines Arbeitsraumes enthält das Erhalten mehrerer 2D-Bilder des Arbeitsraumes, wobei jedes jeweilige 2D-Bild von einer Kamera erfasst wird, die an einem anderen Ort innerhalb des Arbeitsraumes angeordnet ist. Innerhalb wenigstens zweier der mehreren 2D-Bilder wird ein Vordergrundanteil identifiziert und jeder Vordergrundanteil wird auf jede von mehreren parallelen beabstandeten Ebenen projiziert. Innerhalb jeder der mehreren Ebenen wird ein Bereich identifiziert, in dem sich mehrere projizierte Vordergrundanteile überlappen. Diese identifizierten Bereiche werden kombiniert, um eine 3D-Begrenzungseinhüllende eines Objekts zu bilden. Diese Begrenzungseinhüllende ist eine probabilistische Darstellung des Orts des Objekts innerhalb des Arbeitsraumes.
  • Die DE 10 2008 020 579 B4 offenbart ein Verfahren zum Steuern einer beweglichen Vorrichtung relativ zu mindestens einem in einer Anordnung angeordneten Objekt, wobei in einem ersten Schritt Tiefenbilder mit einer Vielzahl von Bildpunkten von zumindest einem positiven und zumindest einem negativen Volumen eines Modells des Objektes für eine Vielzahl von Orientierungen und/oder Positionen des Modells gelesen werden, wobei das zumindest eine positive Volumen so definiert ist, dass es vollständig von dem Modell ausgefüllt ist, und wobei das zumindest eine negative Volumen so definiert ist, dass es keinen Teil des Modells enthält, in einem zweiten Schritt, der vor, nach oder während des ersten Schrittes durchgeführt werden kann, Daten aufgenommen werden, welche die Anordnung und/oder das Objekt beschreiben, in einem dritten Schritt zumindest ein Teil der Daten zumindest einem Teil der Bildpunkte der Tiefenbilder für zumindest einige der Orientierungen des Modells zugeordnet werden, in einem vierten Schritt die Orientierung und/oder Position des Objektes in der Anordnung anhand eines Vergleiches zumindest einiger der Daten mit zumindest einigen der Tiefenbilder bestimmt wird, und in einem fünften Schritt eine bewegliche Vorrichtung anhand der im vierten Schritt bestimmten Orientierung gesteuert wird, wobei im vierten Schritt die Orientierung und/oder Position des Objektes in der Anordnung bestimmt wird, indem für zumindest einige der Orientierungen des Modells und/oder für zumindest einige der Tiefenbilder bestimmt wird, für welchen Anteil des zumindest einen positiven Volumens die Daten das Erfülltsein mit dem Objekt anzeigen und für welchen Anteil des zumindest einen negativen Volumens die Daten das nicht Erfülltsein mit dem Objekt anzeigen und wobei im vierten Schritt jene Orientierung ausgewählt wird, für welche der Anteil des positiven Volumens und/oder der Anteil des negativen Volumens und/oder die Summe der beiden Anteile maximal ist.
  • Die EP 3 587 044 A1 offenbart ein Verfahren zum Greifen von Objekten in einem Suchbereich mittels eines in einem Weltkoordinatensystem kalibrierten Roboters, wobei der Roboter eine Kinematik umfasst, wobei an der Kinematik eine Greifvorrichtung zum Greifen eines Objekts und eine Kamera zum Erfassen von zweidimensionalen Bildern zumindest eines Teilbereichs des Suchbereichs angeordnet ist, wobei der Suchbereich mehrere Markierungen aufweist, welche ein Suchbereichskoordinatensystem definieren und welche dazu vorgesehen sind, perspektivische Verzerrungen in einem Bild des Suchbereichs zu ermitteln, wobei in einem vorgeschalteten ersten Kalibrationsschritt auf der Grundlage eines Referenzbildes des Suchbereichs eine erste Transformationsfunktion ermittelt wird, welche das Suchbereichskoordinatensystem in das Weltkoordinatensystem überführt. Das Verfahren umfasst ein Ausrichten der Kamera auf den Suchbereich, ein Aufnahmen eines zweidimensionalen Bildes des Suchbereichs, ein Entzerren des Bildes auf der Grundlage von in dem Bild aufgenommenen Markierungen, ein Ermitteln der Position und Lage eines in dem entzerrten Bild vorhandenen Abbilds eines identifizierten Objekts in einem Bildkoordinatensystem, ein Ermitteln der Position und Lage des Objekts in dem Suchbereichskoordinatensystem auf der Grundlage der Position und Lage des Abbildes des Objekts in dem Bildkoordinatensystem und auf der Grundlage von Abbildern der Markierungen, ein Ermitteln der Position und Lage des Objekts in dem Weltkoordinatensystem auf der Grundlage der Position und Lage des Objekts in dem Suchbereichskoordinatensystem und auf der Grundlage der ersten Transformationsfunktion, und ein Ansteuern der Kinematik zum Bewegen der Greifvorrichtung in eine Greifstellung, in welcher ein Ergreifen des identifizierten Objekts durch die Greifvorrichtung erfolgt, auf der Grundlage der Position und Lage des Objekts in dem Weltkoordinatensystem, wobei zumindest einer der Schritte, welche das Aufnehmen des Bildes, das Entzerren des Bildes, das Ermitteln der Position und Lage in dem Bild-, Suchbereichs- und/oder Weltkoordinatensystem umfassen, während einer Bewegung der Kinematik durchgeführt wird.
  • Bei der herkömmlichen Einstellung von Messparametern in JP 2017-56546A und dergleichen ist es bei der Optimierung der Messparameter notwendig, die Eignung von Kombinationen aus Parametern wie etwa der Schnelligkeit der Objektabbildung, der Anzahl aufgenommener Bilder und des Abbildungszeitintervalls zu bewerten, und daher erfordern Anpassung und Optimierung von Messparametern bisher viel Zeit und Arbeitsaufwand. Wenn die Messvorrichtung an einem Roboter angebracht ist, sind die Messparameter zudem von den mechanischen Eigenschaften des Roboters abhängig, und daher ist eine Anpassung der Messparameter für jeden Roboter notwendig. Wenn des Weiteren das Bewertungsziel bei der Objekterkennung geändert wird, sind noch mehr Arbeitsaufwand und Zeit erforderlich, und die Anpassung und Optimierung von Messparametern wird dadurch äußerst schwierig.
  • Die vorliegende Erfindung entstand angesichts dieser Umstände, und gemäß einem Aspekt ist eine Aufgabe der vorliegenden Erfindung die Bereitstellung eines Verfahrens, nach dem Messparameter für die Messung von Objekten durch eine an einem Roboter angebrachte Messvorrichtung beträchtlich einfacher angepasst und optimiert werden können als bei herkömmlicher Technik (beispielsweise mit geringerem Arbeitsaufwand, in kürzerer Zeit und ohne Roboterabhängigkeit) .
  • Das Folgende sind Konfigurationen der vorliegenden Erfindung zur Lösung der oben beschriebenen Probleme.
  • (1) Ein Beispiel für ein Messparameter-Optimierungsverfahren gemäß einem Aspekt der vorliegenden Offenbarung ist ein Verfahren zum Optimieren eines Messparameters zur Verwendung beim Messen von einem oder mehreren Objekten durch eine Messvorrichtung (einen Sensor), die an einem Roboter vorgesehen ist, wobei das Verfahren den unten beschriebenen ersten bis vierten Schritt (1) bis (4) aufweist. Es wird darauf hingewiesen, dass keine besonderen Beschränkungen der Konfiguration des „Roboters“ bestehen und die Beispiele eine Konfiguration mit einem Roboterarm und einer Hand aufweisen, die an einem Vorderende des Roboterarms vorgesehen ist und zum Handhaben von Objekten dient. Es bestehen auch keine besonderen Beschränkungen der „Messvorrichtung“, und die Beispiele weisen eine Vorrichtung auf, die an dem Roboterarm vorgesehen ist und Positionsinformationen (z.B. 2D- oder 3D-Positionsinformationen) zu Objekten messen kann. Ausführlichere Beispiele für den „Roboter“ und die „Messvorrichtung“ werden später beschrieben.
  • 1. Ein erster Schritt, N (wobei N größer als 1 ist) aufgenommene Bilder der ein oder mehreren Objekte zu erfassen, während bewirkt wird, dass die Messvorrichtung sich mit einer Geschwindigkeit V, einem Zeitintervall T und einem Gesamtbewegungswinkel θ als ersten Messparametern bewegt.
  • 2. Ein zweiter Schritt, auf Basis einer Annahme des Erfassens von N/j (wobei j eine ganze Zahl größer als oder gleich 1 ist) aufgenommenen Bildern der ein oder mehreren Objekte, während bewirkt wird, dass die Messvorrichtung sich mit der Geschwindigkeit V, einem Zeitintervall T×j und dem Gesamtbewegungswinkel θ als zweiten Messparametern bewegt, und dann der Durchführung einer Bildverarbeitung zum Erkennen von Positionen und Ausrichtungen der ein oder mehreren Objekte, einen Bewertungswert Zi, der eine Genauigkeit der Erkennung der ein oder mehreren Objekte anzeigt, für jede aufgenommene Bildzahl i (hier i=1,2,...,N/j-1,N/j) zu schätzen und die Bewertungswerte Zi in Zuordnung zu den zweiten Messparametern als erste Daten zu speichern.
  • 3. Ein dritter Schritt, auf Basis einer Annahme des Erfassens von N/j/k (wobei k eine ganze Zahl größer als oder gleich 2 ist) aufgenommenen Bildern der ein oder mehreren Objekte, während bewirkt wird, dass die Messvorrichtung sich mit einer Geschwindigkeit V×k, einem Zeitintervall T×j/k und dem Gesamtbewegungswinkel θ als dritten Messparametern bewegt, und dann der Durchführung einer Verarbeitung ähnlich der Bildverarbeitung in dem zweiten Schritt, den Bewertungswert Zi, der eine Genauigkeit der Erkennung der ein oder mehreren Objekte anzeigt, für jede aufgenommene Bildzahl i (hier i=1,2,...,N/j/k-1,N/j/k) auf Basis der ersten Daten zu schätzen und die Bewertungswerte Zi in Zuordnung zu den dritten Messparametern als zweite Daten zu speichern.
  • 4. Ein vierter Schritt, einen Messparameter, der Daten entspricht, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den zweiten Daten auszuwählen und den ausgewählten Messparameter als optimierten Messparameter zu bestimmen, der zu verwenden ist, wenn die ein oder mehreren Objekte durch den Roboter gehandhabt werden.
  • Mit dieser Konfiguration können Erkennungsergebnisse für ein oder mehrere Objekte für den Fall einer Änderung von Messparametern in andere Bedingungen (zweite Messparameter oder dritte Messparameter) auf Basis von ersten Daten, die im Voraus vor dem tatsächlichen Betrieb des Robotersystems erfasste, grundlegende Daten sind, geschätzt werden, ohne eine tatsächliche Messung mit den geänderten Parametern durchzuführen. Dementsprechend können Messparameter für den Sensor 1 optimiert werden, ohne eine Vormessung für alle Kombinationen von Bedingungen durchzuführen, die als Messparameter erwartet werden können, und die Durchführung einer detaillierten Vormessung ist nur einmal vor dem tatsächlichen Betrieb für jede Art der Werkstücke 5 notwendig, die erwartet wird. Messparameter zur Verwendung beim Messen von Objekten mit der an dem Roboter vorgesehenen Messvorrichtung können also beträchtlich einfacher angepasst und optimiert werden als bei herkömmlicher Technik (beispielsweise mit geringerem Arbeitsaufwand, in kürzerer Zeit und ohne Roboterabhängigkeit). Dementsprechend können die Robustheit während der Objektmessung, die Arbeitseffizienz bei der Objekthandhabung und der Gesamtdurchsatz verbessert werden und infolgedessen Nutzungskomfort und Vielseitigkeit beträchtlich verbessert werden.
  • (2) Insbesondere kann bei der obigen Konfiguration das vorbestimmte Beurteilungskriterium eine Bedingung aufweisen, dass der Bewertungswert Zi in Bezug auf die ein oder mehreren Objekte größer als oder gleich einem Bewertungswert ist, der im Voraus eingestellt wurde. Mit dieser Konfiguration wird durch eine höhere Einstellung des vorbestimmten Bewertungswertes in dem Beurteilungskriterium eine weitere Verbesserung der Robustheit ermöglicht, was vorteilhaft ist, wenn eine Verbesserung der Messgenauigkeit Priorität hat.
  • (3) Außerdem kann das vorbestimmte Beurteilungskriterium eine Bedingung aufweisen, dass der Bewertungswert größer als oder gleich einem Bewertungswert ist, der im Voraus eingestellt wurde, und außerdem eine erforderliche Zeit zumindest für die Messung kurz ist. Mit dieser Konfiguration kann die für die Messung erforderliche Zeit minimiert werden, während ein gewünschter Bewertungswert erfüllt wird, was vorteilhaft ist, wenn eine Verringerung der Messverarbeitungszeit Priorität hat.
  • (4) Außerdem kann das vorbestimmte Beurteilungskriterium eine Bedingung aufweisen, dass der Bewertungswert größer als oder gleich einem Bewertungswert ist, der im Voraus eingestellt wurde, und zudem die Bewegungsgeschwindigkeit V der Messvorrichtung schnell ist. Diese Konfiguration ist vorteilhaft, wenn die Geschwindigkeit V der Bewegung der Messvorrichtung Priorität hat, während auch ein gewünschter Bewertungswert erfüllt wird.
  • (5) Außerdem kann das vorbestimmte Beurteilungskriterium eine Bedingung aufweisen, dass der Bewertungswert größer als oder gleich einem Bewertungswert ist, der im Voraus eingestellt wurde, und außerdem die aufgenommene Bildzahl i in Bezug auf die ein oder mehreren Objekte niedrig ist. Diese Konfiguration ist vorteilhaft, wenn eine Verringerung der aufgenommenen Bildzahl i Priorität hat, während ein gewünschter Bewertungswert erfüllt wird.
  • (6) Des Weiteren kann bei den obigen Konfigurationen eine Verarbeitung zum Aufnehmen von Bildern der ein oder mehreren Objekte mit den ersten Messparametern zumindest einmal und vorzugsweise mehrmals durchgeführt werden, und im Fall einer mehrmaligen Durchführung können Durchschnittswerte der jedes Mal erfassten Bewertungswerte Zi als die ersten Daten gespeichert werden. Mit dieser Konfiguration können Genauigkeit und Zuverlässigkeit der experimentell gewonnenen ersten Daten verbessert werden, und infolgedessen ist eine weitere Verbesserung der Robustheit zur Zeit der Messung der ein oder mehreren Objekte, der Arbeitseffizienz bei der Handhabung der ein oder mehreren Objekte sowie des Gesamtdurchsatzes möglich.
  • (7) Des Weiteren ist eine Konfiguration möglich, in der bei einer Änderung des Roboters, wie bereits beschrieben, wenn in den ersten bis dritten Daten solche enthalten sind, die Messparametern entsprechen, welche der Geschwindigkeit V und dem Zeitintervall T gemäß einer Eigenschaft eines anderen, von dem Roboter verschiedenen Roboters entsprechen, ein Messparameter in Daten, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den ersten bis dritten Daten ausgewählt und als optimierter Messparameter bestimmt wird, der zu verwenden ist, wenn die Objekte durch den anderen Roboter zu handhaben sind. Mit dieser Konfiguration, wie oben beschrieben, kann eine einfache Technik bereitgestellt werden, mit der die Optimierung von Messparametern ohne Abhängigkeit von dem Roboter realisierbar ist.
  • (8) Alternativ ist in ähnlicher Weise eine Konfiguration möglich, bei der, wenn in den ersten Daten oder den zweiten Daten solche enthalten sind, die Messparametern entsprechen, welche der Geschwindigkeit V und dem Zeitintervall T gemäß einer Eigenschaft eines anderen, von dem Roboter verschiedenen Roboters entsprechen, Daten, die einem Messparameter in den entsprechenden Daten zugeordnet sind, als neue erste Daten verwendet werden, der zweite bis vierte Schritt durchgeführt wird, um neue zweite Daten zu gewinnen, und ein Messparameter in Daten, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den neuen zweiten Daten ausgewählt und als optimierter Messparameter bestimmt wird, der zu verwenden ist, wenn die Objekte durch den anderen Roboter zu handhaben sind. Auch mit dieser Konfiguration kann, wie oben beschrieben, eine einfache Technik bereitgestellt werden, mit der die Optimierung von Messparametern ohne Abhängigkeit von dem Roboter realisierbar ist.
  • (9) Ein Beispiel für eine Messparameter-Optimierungsvorrichtung gemäß einem Aspekt der vorliegenden Offenbarung ist außerdem eine Vorrichtung zum Optimieren eines Messparameters zur Verwendung beim Messen von Objekten durch eine an einem Roboter vorgesehene Messvorrichtung, wobei die Vorrichtung zumindest einen Prozessor aufweist und der zumindest eine Prozessor die Schritte des offenbarungsgemäßen Messparameter-Optimierungsverfahrens ausführt.
  • (10) Ein Beispiel für ein Computersteuerprogramm gemäß einem Aspekt der vorliegenden Offenbarung ist außerdem ein Programm, das, zur Durchführung einer Messparameteroptimierung für eine Messung von Objekten durch eine an einem Roboter vorgesehene Messvorrichtung, bewirkt, dass ein Computer, der zumindest einen Prozessor aufweist, die Schritte des offenbarungsgemäßen Messparameter-Optimierungsverfahrens ausführt, also ein Programm zum Bewirken dessen ist, dass ein Computer effektiv als die offenbarungsgemäße Messparameter-Optimierungsvorrichtung wirksam ist.
  • (11) Außerdem weist ein Beispiel für ein Robotersystem gemäß einem Aspekt der vorliegenden Offenbarung einen Roboter, eine an dem Roboter vorgesehene Messvorrichtung und eine Steuervorrichtung auf, die mit dem Roboter und der Messvorrichtung verbunden ist, wobei die Steuervorrichtung zumindest einen Prozessor aufweist und der zumindest eine Prozessor die Schritte des offenbarungsgemäßen Messparameter-Optimierungsverfahrens ausführt. Anders ausgedrückt, ist in dem Robotersystem die offenbarungsgemäße Messparameter-Optimierungsvorrichtung als die Steuervorrichtung wirksam.
  • Es wird darauf hingewiesen, dass „Einheit“ und „Vorrichtung“ in der vorliegenden Offenbarung nicht einfach eine physische Einrichtung bedeuten, sondern auch eine Konfiguration einschließen, bei der die Funktionen der „Einheit“ oder „Vorrichtung“ durch Software realisiert sind. Außerdem können die Funktionen einer „Einheit“ oder „Vorrichtung“ durch zwei oder mehr physische Einrichtungen oder Vorrichtungen realisiert sein, und die Funktionen von zwei oder mehr „Einheiten“ oder „Vorrichtungen“ können durch nur eine physische Einrichtung oder Vorrichtung realisiert sein. Des Weiteren sind „Einheit“ und „Vorrichtung“ Begriffe, die auch als „Einrichtung“ und „System“ ausgedrückt sein können.
  • Erfindungsgemäß können Messparameter für die Messung von Objekten durch eine an einem Roboter angebrachte Messvorrichtung beträchtlich einfacher angepasst und optimiert werden als bei herkömmlicher Technik (beispielsweise mit geringerem Arbeitsaufwand, in kürzerer Zeit und ohne Roboterabhängigkeit). Dementsprechend können die Robustheit während der Objektmessung, die Arbeitseffizienz bei der Objekthandhabung und der Gesamtdurchsatz verbessert werden, und infolgedessen werden Nutzungskomfort und Vielseitigkeit beträchtlich verbessert.
    • 1 ist eine Planansicht, die schematisch ein Beispiel für eine Anwendungsszene für ein Robotersystem zeigt, das eine Steuervorrichtung gemäß einer Ausführungsform aufweist.
    • 2 ist eine Planansicht, die schematisch ein Beispiel für eine Anwendungsszene für das Robotersystem zeigt, das die Steuervorrichtung gemäß der Ausführungsform aufweist.
    • 3 ist eine Planansicht, die schematisch ein Beispiel für eine Hardware-Konfiguration des Robotersystems zeigt, das die Steuervorrichtung gemäß der Ausführungsform aufweist.
    • 4 ist eine Planansicht, die schematisch ein Beispiel für eine Funktionskonfiguration des Robotersystems zeigt, das die Steuervorrichtung gemäß der Ausführungsform aufweist.
    • 5 ist ein Flussdiagramm, das ein Beispiel für eine Verarbeitungsprozedur in dem Robotersystem zeigt, das die Steuervorrichtung gemäß einem Betriebsbeispiel aufweist.
    • 6 ist eine Planansicht, die schematisch ein Konzept der Bewegung eines Sensors 1 in Schritt S501 des Betriebsbeispiels zeigt.
    • 7 ist ein Schaubild, das ein Beispiel für erste Daten in Schritt S502 und erste Daten in Schritt S503 des Betriebsbeispiels in Tabellenformat zeigt.
    • 8 ist ein Schaubild, das ein Beispiel für zweite Daten in Schritt S504 des Betriebsbeispiels in Tabellenformat zeigt.
    • 9 ist ein Schaubild, das ein Beispiel für zweite Daten in Schritt S504 des Betriebsbeispiels in Tabellenformat zeigt.
    • 10 ist ein Schaubild, das ein Beispiel für zweite Daten in Schritt S504 des Betriebsbeispiels in Tabellenformat zeigt.
    • 11 ist ein Schaubild, das in Tabellenformat ein spezifisches Beispiel für zweite Daten zeigt, die durch experimentelles Ausführen der Schritte S501 bis S504 unter Verwendung des Sensors 1 für Werkstücke 5 (Sechskantschrauben) gewonnen sind.
    • 12 ist eine Planansicht eines Beispiels, bei dem, für den in 11 gezeigten Datensatz, Erkennungsergebnisse (Umrisslinien) über ein Bild von Werkstücken 5 gelegt sind, das durch den Sensor 1 aufgenommen ist.
    • 13 ist ein Schaubild, in dem die in 11 dargestellten zweiten Daten in absteigender Reihenfolge nach der Anzahl erkannter Objekte Zi sortiert sind und Daten mit der gleichen Anzahl erkannter Objekte Zi in absteigender Reihenfolge nach der Geschwindigkeit V sortiert sind.
    • 14 ist ein Schaubild, in dem die in 11 dargestellten zweiten Daten in absteigender Reihenfolge nach der Anzahl erkannter Objekte Zi sortiert sind und Daten mit der gleichen Anzahl erkannter Objekte Zi in aufsteigender Reihenfolge der aufgenommenen Bildzahl i sortiert sind.
    • 15 ist ein Flussdiagramm, das ein Beispiel für eine Verarbeitungsprozedur in einer vierten Variante zeigt.
    • 16 ist eine Planansicht, in der Werkstücke 5 mit verschiedenen Formen gemessen sind und Erkennungsergebnisse (Umrisslinien), die durch Bildverarbeitung gewonnen wurden und die Positionen und Ausrichtungen der Werkstücke 5 durch Bildverarbeitung anzeigen, über ein aufgenommenes Bild der Werkstücke 5 gelegt sind.
  • Im Folgenden werden Ausführungsformen gemäß Beispielen der vorliegenden Offenbarung (nachfolgend als die „Ausführungsformen“ bezeichnet) mit Bezug auf die Zeichnungen beschrieben. Es wird darauf hingewiesen, dass die unten beschriebenen Ausführungsformen lediglich Beispiele sind und die Anwendung verschiedener Abwandlungen und Techniken, die unten nicht angegeben sind, nicht ausschließen sollen. Anders ausgedrückt, sind die Beispiele der vorliegenden Offenbarung mit verschiedenen Abwandlungen implementierbar, ohne den Gedanken der vorliegenden Offenbarung zu verlassen. Des Weiteren sind in der Beschreibung der nachfolgenden Zeichnungen gleiche oder ähnliche Teile mit gleichen oder ähnlichen Bezugsziffern bezeichnet, und die Zeichnungen sind schematisch und stimmen nicht unbedingt mit den tatsächlichen Maßen und Verhältnissen überein. Des Weiteren können die Zeichnungen Teile mit voneinander verschiedenen Maßbeziehungen und Verhältnissen aufweisen.
  • 1. Anwendungsbeispiel
  • Zunächst wird ein Beispiel für eine Szene, auf die ein Beispiel der vorliegenden Offenbarung angewandt ist, mit Bezug auf 1 und 2 beschrieben. 1 und 2 sind Planansichten, die schematisch ein Beispiel für eine Anwendungsszene für ein Robotersystem zeigen, das eine Steuervorrichtung gemäß der vorliegenden Ausführungsform aufweist. In einem Robotersystem 100 gemäß der vorliegenden Ausführungsform ist ein Betrieb durchführbar, bei dem Werkstücke 5, die in einem Speicherbehälter 6 wie etwa einer Wanne aufgehäuft sind, durch einen Roboter 10 aus dem Speicherbehälter 6 herausgenommen und in einen anderen Speicherbehälter 7 umgesetzt werden oder dergleichen und dort angeordnet werden (Bewegungsbahn P1 in 2), und/oder bei dem der Roboter 10 nach dem Umsetzen der Werkstücke 5 zu dem Speicherbehälter 6 zurückgeführt wird, um das nächste Werkstück 5 herauszunehmen (Bewegungsverlauf P2 in 2). Es wird darauf hingewiesen, dass die Werkstücke 5 flach auf einen Tisch, eine Plattform oder dergleichen gestapelt sein können, anstatt in dem Speicherbehälter 6 aufgehäuft zu sein. Außerdem bestehen keine besonderen Beschränkungen hinsichtlich der Art der Werkstücke 5, und Beispiele dafür sind unter anderem mechanische Teile eines Kraftfahrzeug-Antriebsstrangsystems (z.B. einer Kraftmaschine oder eines Getriebes), elektronische Teile einer elektrischen Anlage und dergleichen. Außerdem weist das Robotersystem 100 zusätzlich zu dem Roboter 10 einen Sensor 1, der an dem Roboter 10 vorgesehen ist (ein Beispiel für die „Messvorrichtung“ in der vorliegenden Offenbarung), und eine Steuervorrichtung 4 auf, die mit dem Sensor 1 und dem Roboter 10 verbunden ist (ein Beispiel für die „Messparameter-Optimierungsvorrichtung“ in der vorliegenden Offenbarung).
  • Der Sensor 1 ist ein 3D-Sensor, der Messdaten einschließlich Positionsinformationen (beispielsweise dreidimensionalen Positionsinformationen) der Werkstücke 5 erfasst, und ist an dem Vorderende eines Roboterarms 3 des Roboters 10 angeordnet, und wie in 1(A) und 1(B) gezeigt, werden die Werkstücke 5 in einem vorbestimmten Sichtfeld (Winkel) und mit vorbestimmten Messparametern abgebildet. Der Sensor 1 kann beispielsweise ein Distanzsensor, der eine Gruppe von Punkten misst, oder ein Distanzbildsensor sein, in dem ein Distanzsensor und ein zweidimensionaler Sensor kombiniert sind und der ein Distanzbild erfasst. Der Distanzsensor ist ein Sensor, der eine Distanz d als Tiefeninformationen misst. Der zweidimensionale Sensor ist ein Bildsensor, der ein zweidimensionales Bild aufnimmt, und das zweidimensionale Bild unterscheidet sich darin von einem Distanzbild, dass Distanzen d nicht als Pixelwerte enthalten sind. Der Distanzbildsensor kann beispielsweise eine Kamera sein, die ein Distanzbild erfasst, das Distanzen d als Pixelwerte aufweist, indem sie zweidimensionale Bilder der Werkstücke 5 aufnimmt, während die Abbildungsposition des zweidimensionalen Sensors verändert wird, und dann Bildverarbeitung mit stereoskopischen Ansichten durchführt. Alternativ kann der Distanzbildsensor eine Stereokamera sein, die ein Distanzbild erfasst, das Distanzen d als Pixelwerte aufweist, indem sie gleichzeitig Bilder der Werkstücke 5 aus verschiedenen Richtungen aufnimmt.
  • Obwohl es nicht wesentlich ist, kann der Sensor 1 des Weiteren einen Projektor (nicht gezeigt) aufweisen, der die Werkstücke 5 mit einer sogenannten 3D-Beleuchtung, die geeignetes Messlicht aufweist (z.B. Musterlicht oder Abtastlicht, das bei der aktiven Messung verwendet wird) oder mit einer sogenannten 2D-Beleuchtung bestrahlt, die normale Beleuchtung ist. Es bestehen keine besonderen Beschränkungen der Konfiguration eines solchen Projektors, und beispielsweise kann er im Fall der Projektion von Musterlicht eine Konfiguration haben, die eine Laserlichtquelle, eine Mustermaske und eine Linse aufweist. Aus der Laserlichtquelle abgestrahltes Licht wird in Messlicht (Musterlicht) mit einem vorbestimmten Muster umgewandelt, indem eine Mustermaske verwendet wird, in der ein vorbestimmtes Muster gebildet ist, und wird dann durch eine Linse auf die Werkstücke 5 projiziert.
  • Es bestehen keine besonderen Beschränkungen der „vorbestimmten Muster“, und beispielsweise sind die verschiedenen Muster verwendbar, die bei der aktiven Einzelschussmessung verwendet werden. Spezifische Beispiele sind unter anderem: ein sogenanntes linienbasiertes Muster, in dem Linien in zwei Größen in vorbestimmten Intervallen angeordnet sind; ein sogenanntes flächenbasiertes Muster, in dem verschiedene Arten von Einheitsbildern, Einheitsfiguren, geometrischen Formen oder dergleichen, die voneinander unterscheidbar sind, in zwei Dimensionen angeordnet sind (sie können regelmäßig oder zufällig sein, und regelmäßige Teile und zufällige Teile können gemischt oder übereinandergelegt sein); und ein sogenanntes Rastergraph-basiertes Muster, in dem grafische Symbole oder dergleichen in einem Raster aus vertikalen und horizontalen Linien angeordnet sind. Es wird darauf hingewiesen, dass die vorbestimmten Muster beispielsweise jeweils ID-Informationen zur Unterscheidung zwischen Linien oder Einheitsfiguren zur Codierung aufweisen können.
  • Es bestehen auch keine besonderen Beschränkungen hinsichtlich des Verfahrens zum Messen der Werkstücke 5, und möglich sind beispielsweise eine geeignete Auswahl und Verwendung verschiedener aktiver Messverfahren, die die Geradlinigkeit des Lichtes verwenden (z.B. ein Raumcodierungsmuster-Projektionsverfahren auf Basis von Dreiecks-Entfernungsmessung, ein Zeitcodierungsmuster-Projektionsverfahren oder ein Moiré-Topografieverfahren), verschiedener passiver Messverfahren, die die Geradlinigkeit des Lichtes verwenden (z.B. ein Stereokameraverfahren auf Basis von Dreiecks-Distanzmessung, ein Sichtvolumen-Kreuzungsverfahren, ein Faktorzerlegungsverfahren oder ein Tiefe-aus-Fokussierung-Verfahren auf Basis koaxialer Distanzmessung), oder verschiedener aktiver Messverfahren, die die Lichtgeschwindigkeit verwenden (z.B. ein Flugzeitverfahren auf Basis gleichzeitiger Distanzmessung (Flugzeit), oder ein Laser-Abtastverfahren).
  • Beispiele für Messdaten für die Werkstücke 5 sind unter anderem Bilddaten (z.B. 3D-Punktwolkendaten oder Distanzbild), die mit den vorgenannten Messverfahren erfasst sind, und geeignete Daten, die mit 3D-Modelldaten der Werkstücke 5 abgleichbar sind. Beispiele für dreidimensionale Modelldaten der Werkstücke 5 sind hier unter anderem dreidimensionale Koordinatendaten, zweidimensionale Koordinatendaten, die durch Projizieren dreidimensionaler Koordinatendaten in zwei Dimensionen entsprechend verschiedenen Positionen und Ausrichtungen der Werkstücke 5 gewonnen sind, und andere Daten, die einer geeigneten Vorlage oder einem geeigneten Muster entsprechen. Es wird darauf hingewiesen, dass ein Abgleich mit dreidimensionalen Modelldaten bei der Erkennung der Werkstücke 5 nicht wesentlich ist und auch eine Erkennung zum Einsatz kommen kann, bei der keine Modelldaten verwendet werden (sogenannte modusfreie Erkennung).
  • Der Roboter 10 ist beispielsweise ein Knickarmroboter (z.B. ein vertikaler Knickarmroboter oder ein horizontaler Knickarmroboter), der eine Hand 2 zum Handhaben (z.B. Fassen, Ansaugen, Bewegen, Montieren oder Einsetzen) der Werkstücke 5 und einen Roboterarm 3 aufweist, an dessen Vorderende die Hand 2 vorgesehen ist. Verschiedene Gelenke des Roboters 10 sind mit einer Antriebsvorrichtung wie etwa einem Servomotor zum Antreiben des Gelenks und einer Verschiebungs-Detektionsvorrichtung wie etwa einem Codierer zum Detektieren der Verschiebung (Winkelverschiebung) des Gelenks versehen. Des Weiteren operiert der Roboter 10 als Handhabungseinrichtung, die selbstständig operiert, und kann zu verschiedenen Zwecken wie etwa zum Aufnehmen, Montieren, Transportieren, Lackieren, Prüfen, Polieren und Reinigen der Werkstücke 5 verwendet werden.
  • Die Hand 2 ist ein Beispiel für einen Endeffektor und hat einen Greifmechanismus, der zum Greifen und Freigeben (Fassen und Freigeben) einzelner Werkstücke 5 fähig ist. Der Roboterarm 3 hat einen Antriebsmechanismus zum Bewegen der Hand 2 in eine Greifposition (Aufnahmeposition) zum Greifen eines Werkstücks 5 in dem Speicherbehälter 6 und nachfolgenden Bewegen der Hand 2, die das Werkstück 5 gegriffen hält, aus der Greifposition in eine Freigabeposition (Absetzposition) in einem anderen Speicherbehälter 7.
  • Die Steuervorrichtung 4 ist sowohl mit dem Sensor 1 als auch mit dem Roboter 10 verbunden und steuert die Verarbeitung der durch den Sensor 1 durchgeführten Messverarbeitung des Werkstücks 5, der durch die Hand 2 durchgeführten Handhabungsverarbeitung des Werkstücks 5, der Antriebsverarbeitung des Roboters 10 (der Hand 2, des Roboterarms 3 und dergleichen) und auch eine Verarbeitung in Bezug auf verschiedene Operationen und Berechnungen, die in dem Robotersystem 100 erforderlich sind. Außerdem führt die Steuervorrichtung 4 eine Messparameteroptimierung bei einem Messen von Werkstücken 5 durch den Sensor 1 vor dem tatsächlichen Betrieb des Robotersystems 100 durch.
  • Zunächst werden bei dieser Optimierungsverarbeitung (1) erste Messparameter eingestellt, die ein detaillierteres Messen und Bewerten der Positionen und Ausrichtungen von Werkstücken 5 ermöglichen, und erwartete Werkstücke 5 (z.B. Werkstücke 5, die in dem Speicherbehälter 6 aufgehäuft sind) werden mehrmals abgebildet, wobei der Sensor 1 unter den eingestellten Bedingungen bewegt wird. (2) Sodann erfolgt eine Bildverarbeitung unter Verwendung von aufgenommenen Bildern, die aufgenommenen Bildzahlen i, ausgewählt aus den N aufgenommenen Bildern, entsprechen, es werden Bewertungswerte Zi erfasst, die die Genauigkeit der Erkennung der Werkstücke 5 anzeigen (z.B. die Zahl erkannter Werkstücke 5), und die Bewertungswerte Zi werden als erste Daten zusammen mit den ersten Messparametern gespeichert. (3) Es erfolgt dann eine Schätzung von Bewertungswerten Zi, die die Genauigkeit der Erkennung der Werkstücke 5 (z.B. die Zahl erkannter Werkstücke 5) anzeigen, auf Basis der Annahme des Erfassens aufgenommener Bilder der Werkstücke 5 unter Verwendung von zweiten Messparametern, die sich von den ersten Messparametern unterscheiden, mit Ausnahme der Bewegungsgeschwindigkeit des Sensors 1, und dann der Durchführung der gleichen Verarbeitung wie die vorgenannte Bildverarbeitung, und die geschätzten Bewertungswerte Zi werden dann als erste Daten zusammen mit den zweiten Messparametern gespeichert.
  • (4) Sodann erfolgt eine Schätzung von Bewertungswerten Zi, die die Genauigkeit der Erkennung der Werkstücke 5 (z.B. die Zahl erkannter Werkstücke 5) anzeigen, auf Basis der Annahme einer Erfassung aufgenommener Bilder der Werkstücke 5 mit dritten Messparametern, die sich von den ersten Messparametern und den zweiten Messparametern unterscheiden, unter Verwendung der ersten Daten, die in einem oder beiden der obigen Schritte (2) und (3) gewonnen sind, und dann der Durchführung der gleichen Verarbeitung wie die vorgenannte Bildverarbeitung, und die erfassten Bewertungswerte Zi werden dann als zweite Daten zusammen mit den dritten Messparametern gespeichert. (5) Zumindest ein Messparameter, der Daten entspricht, die ein vorbestimmtes Beurteilungskriterium erfüllen (z.B. ist der Bewertungswert ein vorbestimmter Wert oder höher, und außerdem ein Kriterium bezüglich zumindest entweder der Messungszeit, der Bewegungsgeschwindigkeit oder der Anzahl aufgenommener Bilder) wird aus den gewonnen zweiten Daten ausgewählt, und dann bestimmt beispielsweise der Benutzer einen gewünschten Messparameter aus den ausgewählten Messparametern als optimierten Messparameter zur Verwendung in dem tatsächlichen Betrieb des Robotersystems 100.
  • Entsprechend der Steuervorrichtung 4, dem Robotersystem 100, das die Steuervorrichtung 4 aufweist, und dem Messparameter-Optimierungsverfahren, das in dem Robotersystem 100 beim vorliegenden Anwendungsbeispiel implementiert ist, können Erkennungsergebnisse bezüglich Werkstücken 5 bei Änderungen der Messparameter in andere Bedingungen auf Basis der Ergebnisse einer Bildaufnahme und Bildverarbeitung geschätzt werden, die für die Werkstücke 5 durchgeführt ist, und zwar unter Verwendung von ersten Basismessparametern vor dem tatsächlichen Betrieb des Robotersystems 100. Dementsprechend können Messparameter für den Sensor 1 optimiert werden, ohne eine Vormessung für alle Kombinationen von Bedingungen durchzuführen, die als Messparameter erwartet werden können, und die Durchführung einer detaillierten Vormessung ist nur einmal vor dem tatsächlichen Betrieb für jede Art der Werkstücke 5 notwendig, die erwartet wird. Auch bei einer Änderung des Roboters 10 können außerdem durch Nutzung des Parametersatzes, der den ersten Daten und den zweiten Daten entspricht, die im Voraus für einen bestimmten, mit dem Sensor 1 ausgerüsteten Roboter 10 erfasst sind, Messparameter für die Handhabung von Werkstücken 5 durch andere Roboter optimiert werden, ohne eine neue Vormessung durchzuführen.
  • Offenbarungsgemäß können daher Messparameter für den Sensor 1 bei einer Aufgabe, bei welcher verschiedene Arten von Werkstücken 5 durch Robotersysteme 100 gehandhabt werden, die verschiedene Roboter 10 aufweisen, beträchtlich einfacher optimiert werden als bei herkömmlicher Technik (beispielsweise mit geringerem Arbeitsaufwand, in kürzerer Zeit und ohne Roboterabhängigkeit). Dementsprechend können die Robustheit während der Messung der Werkstücke 5, die Arbeitseffizienz bei der Handhabung der Werkstücke 5 und der Gesamtdurchsatz verbessert werden und infolgedessen Nutzungskomfort und Vielseitigkeit beträchtlich verbessert werden.
  • 2. Konfigurationsbeispiel
  • Hardware-Konfiguration
  • Es wird nun ein Beispiel für die Hardware-Konfiguration des Robotersystems 100 gemäß der vorliegenden Ausführungsform mit Bezug auf 3 beschrieben. 3 ist eine Planansicht, die schematisch ein Beispiel für die Hardware-Konfiguration des Robotersystems 100 zeigt, das die Steuervorrichtung 4 gemäß der vorliegenden Ausführungsform aufweist. Auch in dem Beispiel in 3 weist das Robotersystem 100 den Sensor 1, den Roboter 10 mit der Hand 2 und dem Roboterarm 3 sowie die Steuervorrichtung 4 auf, die in 1 und 2 gezeigt sind. Hier weist die Steuervorrichtung 4 eine Steuerungsberechnungseinheit 41, eine Kommunikationsschnittstellen- (communication interface beziehungsweise Kommunikations-I/F-) Einheit 42, eine Speichereinheit 43, eine Eingabeeinheit 44 und eine Ausgabeeinheit 45 auf, und diese Einheiten können über eine Busleitung 46 kommunikationsfähig miteinander verbunden sein.
  • Die Steuerungsberechnungseinheit 41 weist eine CPU (zentrale Verarbeitungseinheit), ein RAM (Speicher mit wahlfreiem Zugriff), ein ROM (Nur-Lese-Speicher) und dergleichen auf, steuert verschiedene Baukomponenten und führt verschiedene Arten von Berechnungen entsprechend der Informationsverarbeitung durch.
  • Die Kommunikations-I/F-Einheit 42 ist ein Kommunikationsmodul zum Durchführen drahtgestützter oder drahtloser Kommunikation mit „Einheiten“ und „Vorrichtungen“, die beispielsweise andere Baukomponenten sind. Die Kommunikations-I/F-Einheit 42 kann jedes Kommunikationsverfahren zur Kommunikation verwenden, und Beispiele dafür sind unter anderem LAN-(Lokalbereichsnetz-) und USB- (universeller serieller Bus) -Technik, und eine geeignete Kommunikationsleitung, die zu der Busleitung 46 äquivalent ist, kann ebenfalls angewandt werden. Der Sensor 1, die Hand 2 und der Roboterarm 3 können so vorgesehen sein, dass sie fähig sind, über die Kommunikations-I/FEinheit 42 mit der Steuerungsberechnungseinheit 41 und dergleichen zu kommunizieren.
  • Die Speichereinheit 43 ist eine Zusatzspeichervorrichtung wie etwa eine Festplatte (HDD) oder eine Festkörperspeicherplatte (SSD) und speichert: verschiedene Arten von Programmen, die durch die Steuerungsberechnungseinheit 41 ausgeführt sind (arithmetische Rechenprogramme zur Ausführung verschiedener Arten der Verarbeitung einschließlich der oben in (1) bis (7) gezeigten Verarbeitung, und ein Steuerprogramm zum Durchführen einer Verarbeitung zum Steuern des Betriebs des Sensors 1, der Hand 2 und des Roboterarms 3), eine Datenbank mit aus dem Sensor 1 ausgegebenen Messdaten, Messparametern, Erkennungsparametern und verschiedenen Arten von Berechnungsparametern, verschiedenen Arten von Berechnungsergebnissen und Berechnungsergebnisdaten, Daten bezüglich Positions-/Ausrichtungs-Erkennungsergebnissen für Werkstücke 5, Daten bezüglich Aufnahmezuständen und Aufnahmeaufzeichnungen für Werkstücke 5, dreidimensionale Modelldaten für Werkstücke 5, Daten bezüglich einer Messfläche, die Werkstücke 5 aufweisen kann, Einstellungsdaten bezüglich der Position und Ausrichtung des Sensors 1, der eine Messung in der Messfläche durchführt, und dergleichen. Dementsprechend sind verschiedene Verarbeitungsfunktionen in dem Funktionskonfigurationsbeispiel, wie später beschrieben, durch die Steuerungsberechnungseinheit 41 realisiert, die die arithmetischen Berechnungsprogramme und das Steuerprogramm ausführt, die in der Speichereinheit 43 gespeichert sind.
  • Die Eingabeeinheit 44 ist eine Schnittstellenvorrichtung zum Empfangen verschiedener Arten von Eingabebetätigungen von einem Benutzer, der das Robotersystem 100 verwendet, und kann beispielsweise durch eine Maus, eine Tastatur, ein Berührungsfeld oder ein Sprachmikrofon realisiert sein. Die Ausgabeeinheit 45 ist eine Schnittstellenvorrichtung zur Benachrichtigung eines Benutzers oder dergleichen, der das Robotersystem 100 verwendet, über verschiedene Arten von Informationen durch Anzeigen, Tonausgabe, Druckausgabe oder dergleichen, und kann beispielsweise durch eine Anzeige, einen Lautsprecher oder einen Drucker realisiert sein.
  • Funktionskonfiguration
  • Es wird nun mit Bezug auf 4 ein Beispiel für die Funktionskonfiguration des Robotersystems 100 beschrieben, das eine Objekterkennungs-Verarbeitungsvorrichtung gemäß der vorliegenden Ausführungsform aufweist. 4 ist eine Planansicht, die schematisch ein Beispiel für die Funktionskonfiguration des Robotersystems 100 zeigt, das die Steuervorrichtung 4 gemäß der vorliegenden Ausführungsform aufweist.
  • Die Steuerungsberechnungseinheit 41 des in 4 gezeigten Robotersystems 100 bringt verschiedene Arten von Programmen (Steuerprogramme, Berechnungsprogramme und dergleichen), die in der Speichereinheit 43 gespeichert sind, in dem RAM zum Einsatz. Die Steuerungsberechnungseinheit 41 interpretiert dann die von der CPU in dem RAM zum Einsatz gebrachten Programme, führt sie aus und steuert verschiedene Baukomponenten. Wie oben beschrieben, kann das Robotersystem 100 gemäß der vorliegenden Ausführungsform dementsprechend einen Betrieb durchführen, bei dem Werkstücke 5, die in dem Speicherbehälter 6 aufgehäuft sind, herausgenommen werden und in einen anderen Speicherbehälter 7 umgesetzt werden oder dergleichen und dort angeordnet werden (Bewegungsbahn P1 in 2), und/oder einen Betrieb durchführen, bei dem der Roboter 10 nach dem Umsetzen der Werkstücke 5 zu dem Speicherbehälter 6 zurückgeführt wird, um das nächste Werkstück 5 herauszunehmen (Bewegungsbahn P2 in 2). Zur Optimierung der Messparameter bei einem Messen von Werkstücken 5 mit dem Sensor 1 vor dem tatsächlichen Betrieb des Robotersystems 100 kann außerdem die Steuerungsberechnungseinheit 41 eine Konfiguration realisieren, die als Funktionseinheiten mit der Fähigkeit zum Ausführen der Verarbeitung der unten gezeigten Schritte eine Sensorsteuereinheit 401, eine Robotersteuereinheit 402, eine Erfassungseinheit 410 für aufgenommene Bilder, eine erste Datenerfassungseinheit 411, eine zweite Datenerfassungseinheit 412, eine dritte Datenerfassungseinheit 413 und eine Optimierungsparameter-Bestimmungseinheit 414 aufweist.
  • In der vorliegenden Ausführungsform ist zwar ein Beispiel beschrieben, bei dem die Funktionen, welche durch die in dem Robotersystem 100 vorgesehene Steuervorrichtung 4 realisiert sind, durch eine Universal-CPU realisiert sind, wird darauf hingewiesen, dass einige oder alle der oben beschriebenen Funktionen durch einen oder mehrere dedizierte Prozessoren realisiert sein können. Des Weiteren können Funktionskonfigurationen der in dem Robotersystem 100 vorgesehenen Steuervorrichtung 4 natürlich je nach Ausführungsform oder Konfigurationsbeispiel gegebenenfalls weggelassen, ersetzt oder hinzugefügt sein. Außerdem kann unter der „Steuervorrichtung“ auch eine allgemeine Informationsverarbeitungsvorrichtung (z.B. ein Computer oder ein Arbeitsplatzrechner) verstanden werden.
  • 3. Betriebsbeispiel
  • Anhand von 5 folgt nun eine Beschreibung des Betriebs des Robotersystems 100 am Beispiel einer Prozedur zur Optimierung eines Messparameters beim Messen von Werkstücken 5 mit dem Sensor 1 vor dem tatsächlichen Betrieb des Robotersystems. 5 ist ein Flussdiagramm, das ein Beispiel für eine Verarbeitungsprozedur in dem Robotersystem 100 zeigt, das die Steuervorrichtung 4 gemäß diesem Betriebsbeispiel aufweist, und zeigt ein Beispiel für eine Verarbeitungsprozedur in einem Verfahren zum Optimieren eines Messparameters des Robotersystems 100. Es wird darauf hingewiesen, dass die unten beschriebene Verarbeitungsprozedur lediglich ein Beispiel ist und die Verarbeitungsschritte innerhalb des Umfangs der technischen Idee der vorliegenden Offenbarung nach Wunsch veränderbar sind. Des Weiteren können in der unten beschriebenen Verarbeitungsprozedur je nach Ausführungsform oder Konfigurationsbeispiel gegebenenfalls Schritte weggelassen, ersetzt oder hinzugefügt sein.
  • Zuerst setzt der Benutzer des Robotersystems 100 das Robotersystem 100 in Betrieb, so dass verschiedene Arten von Programmen (Berechnungsprogramme, Steuerprogramme, Messparameteroptimierung und dergleichen) ausgeführt werden können. Die Steuerungsberechnungseinheit 41 (zumindest ein Prozessor) in der Steuervorrichtung 4 steuert dann den Betrieb des Sensors 1 und des Roboters 10 gemäß der folgenden Verarbeitungsprozedur und führt eine Berechnungsverarbeitung unter Verwendung von Funktionseinheiten in der Steuervorrichtung 4 durch.
  • Schritt S501: erster Schritt
  • In Schritt S501 werden zuerst eine Bewegungsbahn P0 für die Bewegung des Sensors 1 durch den Roboter 10 (dessen Roboterarm 3) sowie eine Bewegungsgeschwindigkeit V, ein Zeitintervall T und ein Gesamtbewegungswinkel θ als erste Messparameter eingestellt. Hier ist 6 eine Planansicht, die schematisch ein Bewegungskonzept des Sensors 1 in Schritt S501 zeigt. Wie in der Figur gezeigt, kann die Bewegungsbahn P0 so eingestellt sein, dass sie einen Bogen bildet, dessen Mittelpunkt an den Koordinaten G0 liegt, die beispielsweise ungefähr der Volumenmittelpunkt von in dem Behälter 6 aufgehäuften Werkstücken 5 sind. Es wird darauf hingewiesen, dass der Bewegungsort des Sensors 1 nicht darauf beschränkt ist, eine Bogenform (eine Form mit konstanter Krümmung) zu bilden, und beispielsweise eine geradlinige Form, eine nichtgeradlinige Form oder eine Form bilden kann, deren Krümmung sich verändert, und die Koordinaten G0 verändert werden können. Des Weiteren sind Werkstücke der gleichen Art, die im tatsächlichen Betrieb das Betriebsziel des Robotersystems 100 ist, als Werkstücke 5 ausgewählt, die hier experimentell verwendet sind.
  • Es bestehen keine besonderen Beschränkungen der Geschwindigkeit V, und es ist ein Einstellen jedes Wertes in einem Geschwindigkeitsbereich möglich, der als die Bewegungsgeschwindigkeit des Sensors 1 realisierbar ist; im Hinblick darauf, die Erfassung einer größeren Zahl detaillierter Bilder zu ermöglichen, ist jedoch das Einstellen einer langsameren Geschwindigkeit günstig. Des Weiteren bestehen keine besonderen Beschränkungen des Zeitintervalls T, und beispielsweise ist das Einstellen jedes Wertes in einem Intervallbereich möglich, der als das Abbildungsintervall des Sensors 1 realisierbar ist; im Hinblick darauf, die Erfassung einer größeren Zahl detaillierter Bilder zu ermöglichen, ist jedoch das Einstellen insbesondere eines minimalen Zeitintervalls günstig. Es bestehen auch keine besonderen Beschränkungen des Gesamtbewegungswinkels θ, und beispielsweise ist das Einstellen eines Winkels möglich, der der maximalen Distanz des Bewegungsbereiches des Sensors 1 entspricht.
  • Die Geschwindigkeit V, das Zeitintervall T und der Gesamtbewegungswinkel θ werden zum Gewinnen einer Anzahl der aufgenommenen Bilder N=θ/V/T bei der Abbildung der Werkstücke 5 unter Verwendung der ersten Messparameter sowie eines Einheitsbewegungswinkels (eines Bewegungswinkels für jedes Zeitintervall T) µ=V×T verwendet, und Bilder der Werkstücke 5 in dem Behälter 6 werden entsprechend einem aus der Sensorsteuereinheit 401 erteilten Befehl aufgenommen, während der Sensor 1 unter solchen Bedingungen entsprechend einem Befehl aus der Robotersteuereinheit 402 in einem Bogen entlang der Bewegungsbahn P0 bewegt ist, wodurch die Aufnahme der N aufgenommenen Bilder erfolgt. Anders ausgedrückt, werden in diesem Schritt, wie in 6 gezeigt, die N aufgenommenen Bilder erfasst, indem eine Bildaufnahme durch den Sensor 1 N-mal durchgeführt wird, während dieser den aufgehäuften Werkstücken 5 in verschiedenen Höhenwinkeln zugewandt ist (bei den Positionen des Sensors 1 P1, P2, ..., PN-1, PN; wobei jedes Paar benachbarter Sensorpositionen den Einheitsbewegungswinkel µ bildet).
  • Schritt S502: zweiter Schritt (1)
  • In Schritt S502 entnimmt die erste Datenerfassungseinheit 411 aufgenommene Bilder sequentiell entsprechend der aufgenommenen Bildzahl i aus den N aufgenommenen Bildern, die gewonnen wurden, führt eine Bildverarbeitung daran durch und erfasst sequentiell Bewertungswerte Zi, die die Genauigkeit der Erkennung der Werkstücke 5 (z.B. die Zahl erkannter Werkstücke 5) anzeigen. Hier ist i=1,2, ..., N-1, N (d.h. i ist eine ganze Zahl von 1 bis N), und bei einem spezifischen Beispiel erfolgt eine Bildverarbeitung (i=1) an dem ersten aufgenommenen Bild (an einer Anfangsposition G1 des Sensors 1), und dann erfolgt eine Bildverarbeitung (i=2) unter Verwendung der ersten und zweiten aufgenommenen Bilder, die an benachbarten Sensorpositionen (der Anfangsposition G1 und der nächsten Position G2 des Sensors 1) aufgenommen sind. Eine solche Verarbeitung wird dann sequentiell wiederholt, bis i=N (die Positionen Gi bis GN des Sensors 1), und der Bewertungswert Zi, der für jede aufgenommene Bildzahl i gewonnen ist, wird den ersten Messparametern zugeordnet und in der Speichereinheit 43 als die ersten Daten gespeichert.
  • Schritt S503: zweiter Schritt (2)
  • In Schritt S503 stellt zuerst die erste Datenerfassungseinheit 411 die Bewegungsbahn P0 für die Bewegung des Sensors 1 durch den Roboter 10 (dessen Roboterarm 3) sowie die Bewegungsgeschwindigkeit V, das Zeitintervall T×j (wobei j eine ganze Zahl von 2 oder mehr ist) und den Gesamtbewegungswinkel θ als zweite Messparameter ein. Anders ausgedrückt, wird bei den zweiten Messparametern das Zeitintervall der durch den Sensor 1 erfolgenden Messung so geändert, dass es ein ganzzahliges Mehrfaches des Zeitintervalls zwischen den ersten Messparametern ist. Es wird darauf hingewiesen, dass in Schritt S503, anstelle einer tatsächlichen Durchführung der Messung mit den zweiten Messparametern, die N aufgenommenen Bilder, die in Schritt S501 gewonnen wurden, zum Schätzen eines Bewertungswertes Zi, der die Genauigkeit der Erkennung der Werkstücke 5 anzeigt (z.B. die Zahl erkannter Werkstücke 5), für jede aufgenommene Bildzahl i auf Basis der Annahme des Erfassens aufgenommener Bilder der Werkstücke 5 unter Verwendung der zweiten Messparameter, und dann der Durchführung der gleichen Verarbeitung wie bei der Bildverarbeitung in Schritt S502, verwendet werden. Der Bewertungswert Zi, der für jede aufgenommene Bildzahl i gewonnen ist, wird dann für jeden Wert von j den zweiten Messparametern zugeordnet und in der Speichereinheit 43 als die ersten Daten gespeichert.
  • Es wird darauf hingewiesen, dass die Verarbeitung in Schritt S502 die gleiche ist wie die Verarbeitung in Schritt S503, wenn j=i, die in Schritt S502 und S503 Daten werden zur einfacheren Beschreibung als „erste Daten“ bezeichnet. Außerdem ist zu beachten, dass bei der Erfassung der ersten Daten die beiden Schritte S502 und S503 nicht unbedingt ausgeführt zu werden brauchen und auch einer der beiden Schritte ausgeführt werden kann. Wenn beide Schritte S502 und S503 ausgeführt werden, kann außerdem einer der Schritte zuerst und der andere Schritt später ausgeführt werden, und bestehen keine besonderen Beschränkungen hinsichtlich der Reihenfolge der Ausführung.
  • In der obigen Beschreibung wird außerdem beschrieben, dass in Schritt S503 die Geschwindigkeit V auf einen konstanten Wert festgelegt ist und das Zeitintervall T geändert wird, um verschiedene Varianten von Bildsätzen zu erzeugen, in denen die aufgenommenen Bilder gleichmäßig ausgedünnt sind, jedoch ist die Erzeugung verschiedener Varianten der Bildsätze, in denen die aufgenommenen Bilder gleichmäßig ausgedünnt sind, auch möglich, indem das Zeitintervall T auf einen konstanten Wert festgelegt ist und die Geschwindigkeit V verändert wird.
  • Hier ist 7 ein Schaubild, das ein Beispiel für die ersten Daten in Schritt S502 (die ersten Daten in dem zweiten Schritt (1) und die ersten Daten in Schritt S503 (zweiter Schritt (2)) in Tabellenformat zeigt. Der in 7(A) gezeigte Datensatz entspricht den in Schritt S502 erfassten ersten Daten, und diese ersten Daten sind ein Beispiel, bei dem gilt: das Zeitintervall T ist 0,01 (Sek.), die Anzahl aufgenommener Bilder N ist 120 und der Einheitsbewegungswinkel µ ist θ/(120-1) zur Zeit der Messung, und es werden die Bewertungswerte Zi (i=1 bis 121) erfasst. Anders ausgedrückt, ist hier der Gesamtbewegungswinkel θ in 119 Abschnitte geteilt, und die Bildaufnahme wird 120-mal durchgeführt.
  • Außerdem entsprechen die in 7(B) bis 7(D) gezeigten Datensätze den ersten Daten, die in Schritt S503 erfasst sind. Der in 7(B) gezeigte Datensatz ist ein Beispiel, bei dem gilt: j ist 2, das Zeitintervall T ist T×2=0,02 (Sek.), die Anzahl aufgenommener Bilder N ist 60, und der Einheitsbewegungswinkel µ ist µ×2 zur Zeit der Messung. Dementsprechend können die Einzeldaten für die Bewertungswerte Zi für die Anzahlen aufgenommener Bilder i=1,3,5,...,117,119 in den ersten Daten, die in Schritt S502 erfasst sind, jeweils als die Bewertungswerte Zi (i=1 bis 60) für die Anzahlen aufgenommener Bilder i zugewiesen sein, wenn j=2.
  • Außerdem ist der in 7(C) gezeigte Datensatz ein Beispiel, bei dem gilt: j ist 4, das Zeitintervall T ist T×4=0,04 (Sek.), die Anzahl aufgenommener Bilder N ist 31, und der Einheitsbewegungswinkel µ ist µ×4 zur Zeit der Messung. Dementsprechend können die Einzeldaten für die Bewertungswerte Zi (i=1 bis 30) für die Anzahlen aufgenommener Bilder i=1,5,9,...,113,117 in den ersten Daten, die in Schritt S502 erfasst sind, jeweils als die Bewertungswerte Zi für die Anzahlen aufgenommener Bilder i zugewiesen sein, wenn j=4. 7(D) zeigt einen verallgemeinerten Datensatz für „j“.
  • Schritt S504: dritter Schritt
  • In Schritt S504 stellt die zweite Datenerfassungseinheit 412 zuerst die Bewegungsbahn P0 für die Bewegung des Sensors 1 durch den Roboter 10 (dessen Roboterarm 3) sowie die Bewegungsgeschwindigkeit V×k (wobei k eine ganze Zahl von 2 oder mehr ist), das Zeitintervall T×j/k und den Gesamtbewegungswinkel θ als dritte Messparameter ein. Anders ausgedrückt, ist die Geschwindigkeit des Sensors 1 in den dritten Messparametern auf das k-fache der Geschwindigkeit des Sensors 1 in den ersten Messparametern eingestellt, und das Zeitintervall der Messung durch den Sensor 1 in den dritten Messparametern ist auf das 1/k-fache des Zeitintervalls der Messung durch den Sensor 1 in den ersten Messparametern eingestellt. Es wird darauf hingewiesen, dass auch in Schritt S504, anstelle der tatsächlichen Durchführung einer Messung mit den dritten Messparametern, die grundlegenden ersten Daten verwendet werden, um einen Bewertungswert Zi, der die Genauigkeit der Erkennung der Werkstücke 5 (z.B. die Zahl erkannter Werkstücke 5) anzeigt, für jede aufgenommene Bildzahl i, auf Basis der Annahme des Erfassens aufgenommener Bilder der Werkstücke 5 unter Verwendung der zweiten Messparameter und dann der Durchführung der gleichen Verarbeitung wie bei der Bildverarbeitung in Schritt S502 zu schätzen. Sodann wird der Bewertungswert Zi, gewonnen für jede aufgenommene Bildzahl i, für jeden Wert von j und Wert von k, den dritten Messparametern zugeordnet und in der Speichereinheit 43 als die zweiten Daten gespeichert.
  • Hier sind 8 bis 10 Schaubilder, die Beispiele für die zweiten Daten in Schritt S504 (dritter Schritt) in Tabellenformat zeigen.
  • Die in 8(A) bis 8(D) gezeigten Datensätze entsprechen 7(A) bis 7(D), wenn die Geschwindigkeit V des Sensors 1 ein Faktor von k=2 ist. Der in 8(A) gezeigte Datensatz ist ein Beispiel, bei dem gilt: k ist 2 und j ist 1, und das Zeitintervall T ist T×1=0,01 (Sek.), die Anzahl aufgenommener Bilder N ist 60, und der Einheitsbewegungswinkel µ ist µ×1×2 zur Zeit der Messung. Dementsprechend können die Einzeldaten für die Bewertungswerte Zi für die Anzahlen aufgenommener Bilder i=1,3,5,...,117,119 in den ersten Daten jeweils als die Bewertungswerte Zi (i=1 bis 60) für die Anzahlen aufgenommener Bilder i zugewiesen sein, wenn k=2 und j=1.
  • Der in 8(B) gezeigte Datensatz ist ein Beispiel, bei dem gilt: k ist 2 und j ist 2, und das Zeitintervall T ist T×2=0,02 (Sek.), die Anzahl aufgenommener Bilder N ist 30, und der Einheitsbewegungswinkel µ ist µ×2×2 zur Zeit der Messung. Dementsprechend können die Einzeldaten für die Bewertungswerte Zi für die Anzahlen aufgenommener Bilder i=1,5,9,...,113,117 in den ersten Daten jeweils als die Bewertungswerte Zi (i=1 bis 30) für die Anzahlen aufgenommener Bilder i zugewiesen sein, wenn k=2 und j=2.
  • Der in 8(C) gezeigte Datensatz ist ein Beispiel, bei dem gilt: k ist 4 und j ist 4, und das Zeitintervall T ist T×4=0,04 (Sek.), die Anzahl aufgenommener Bilder N ist 15 und der Einheitsbewegungswinkel µ ist µ×4×2 zur Zeit der Messung. Dementsprechend können die Einzeldaten für die Bewertungswerte Zi für die Anzahlen aufgenommener Bilder i=1,9,17,...,105,113 in den ersten Daten jeweils als die Bewertungswerte Zi (i=1 bis 15) für die Anzahlen aufgenommener Bilder i zugewiesen sein, wenn k=2 und j=4. 8(D) zeigt einen verallgemeinerten Datensatz für „k=2“ und „j“.
  • Die in 9(A) bis 9(D) gezeigten Datensätze entsprechen 7(A) bis 7 (D), wenn die Geschwindigkeit V des Sensors 1 ein Faktor von k=3 ist. Der in 9(A) gezeigte Datensatz ist ein Beispiel, bei dem gilt: k ist 3 und j ist 1, und das Zeitintervall T ist T×1=0,01 (Sek.), die Anzahl aufgenommener Bilder N ist 40 und der Einheitsbewegungswinkel µ ist µ×1×3 zur Zeit der Messung. Dementsprechend können die Einzeldaten für die Bewertungswerte Zi für die Anzahlen aufgenommener Bilder i=1,4,7,...,115,118 in den ersten Daten jeweils als die Bewertungswerte Zi (i=1 bis 40) für die Anzahlen aufgenommener Bilder i zugewiesen sein, wenn k=3 und j=1.
  • Der in 9(B) gezeigte Datensatz ist ein Beispiel, bei dem gilt: k ist 3 und j ist 2, und das Zeitintervall T ist T×2=0,02 (Sek.), die Anzahl aufgenommener Bilder N ist 20, und der Einheitsbewegungswinkel µ ist µ×2×3 zur Zeit der Messung. Dementsprechend können die Einzeldaten für die Bewertungswerte Zi für die Anzahlen aufgenommener Bilder i=1,7,13,...,115,121 in den ersten Daten jeweils als die Bewertungswerte Zi (i=1 bis 20) für die Anzahlen aufgenommener Bilder i zugewiesen sein, wenn k=3 und j=2.
  • Der in 9(C) gezeigte Datensatz ist ein Beispiel, bei dem gilt: k ist 3 und j ist 4, und das Zeitintervall T ist T×4=0,04 (Sek.), die Anzahl aufgenommener Bilder N ist 10, und der Einheitsbewegungswinkel µ ist µ×4×3 zur Zeit der Messung. Dementsprechend können die Einzeldaten für die Bewertungswerte Zi für die Anzahlen aufgenommener Bilder i=1,13,25,...,97,109 in den ersten Daten jeweils als die Bewertungswerte Zi (i=1 bis 10) für die Anzahlen aufgenommener Bilder i zugewiesen sein, wenn k=3 und j=4. 9(D) zeigt einen verallgemeinerten Datensatz für „k=3“ und „j“. Des Weiteren sind die in 10 (A) bis 10(D) gezeigten Datensätze verallgemeinerte Datensätze für „k“, und insbesondere zeigt 10(D) einen verallgemeinerten Datensatz sowohl für „k“ als auch für „j“.
  • Schritt S505: vierter Schritt
  • In Schritt S505 wählt die Optimierungsparameter-Bestimmungseinheit 414 zumindest einen Messparameter, der Daten entspricht, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den gewonnenen zweiten Daten aus, und dann bestimmt beispielsweise der Benutzer einen gewünschten Messparameter aus den ausgewählten Messparametern als einen optimierten Messparameter zur Verwendung im tatsächlichen Betrieb des Robotersystems 100. Hier zeigt 11 in Tabellenformat ein spezifisches Beispiel für die zweiten Daten, die durch experimentelles Ausführen der Schritte S501 bis S504 unter Verwendung des Sensors 1 für 20 Sechskantschrauben als aufgehäufte Werkstücke 5 mit einem Robotersystem 100 gewonnen sind. Es wird darauf hingewiesen, dass in dieser Figur die Bewegungsgeschwindigkeit V des Sensors 1 als prozentualer Anteil (%) der maximalen Geschwindigkeit gezeigt ist, die durch das Robotersystem 100 realisierbar ist. Streng genommen ist die „erforderliche Zeit H“ in der Figur nicht nur von dem Zeitintervall T und der Zahl der Aufnahmen N abhängig, sondern ist als Gesamtzeit gezeigt, einschließlich der Zeit zum Übertragen der durch den Sensor 1 aufgenommenen Bilder in die Steuerungsberechnungseinheit 41 (den Computer) und der Zeit zum Zusammensetzen von 3D-Punktwolkendaten für mehrere Bilder, jedoch ist hier zur einfacheren Beschreibung die erforderliche Zeit H als Zeitintervall T × aufgenommene Bildzahl i berechnet. Des Weiteren zeigt diese Figur nur Daten, in denen der Bewertungswert Zi, der die Zahl erkannter Werkstücke 5 ist, 17 oder mehr beträgt.
  • Außerdem ist 12 eine Planansicht eines Beispiels für den in 11 gezeigten Datensatz, in dem Erkennungsergebnisse (Umrisslinien) über Bilder von 20 Werkstücken 5 gelegt sind, die durch den Sensor 1 aufgenommen sind. Beispielsweise zeigt 12(A) die Ergebnisse, bei denen Geschwindigkeit V=70%, Intervall T=0,05 (Sek.), aufgenommene Bildzahl i=5 und die Zahl erkannter Werkstücke 5 (Bewertungswert Zi) 19 ist, und „70%_0,05_5_19“, unten in der Figur gezeigt, zeigt die Bedingungen und Ergebnisse an. Es wird darauf hingewiesen, dass dies auch für 12(B) bis 12(D) gilt. Die Zahl der Werkstücke 5, deren Umrisslinien in der Figur erkannt wurden, beträgt außerdem in 12(C) 17, jedoch wurde bestimmt, dass durch Anpassen der Zuverlässigkeit des Erkennungsergebnisses 18 erkannt werden konnten und daher die letztendliche Zahl erkannter Werkstücke 5 (der Bewertungswert Zi) 18 war. Dagegen beträgt in 12(D) die Zahl der Werkstücke 5, deren Umrisslinien in der Figur erkannt wurden, 19, jedoch wurde bestimmt, dass durch Anpassen der Zuverlässigkeit des Erkennungsergebnisses 18 erkannt werden konnten, und die letztendliche Zahl erkannter Werkstücke 5 (der Bewertungswert Zi) betrug daher 18.
  • In Schritt S505 bestehen die vorbestimmten Beurteilungskriterien beispielsweise darin, dass der Bewertungswert Zi für die Werkstücke 5 höher als oder gleich einem vorbestimmten Bewertungswert ZB ist, und in 11 sind die Daten in absteigender Reihenfolge nach dem Bewertungswert Zi sortiert, und bei gleichem Bewertungswert Zi sind die Daten in aufsteigender Reihenfolge nach der erforderlichen Zeit H sortiert. Beispielsweise ist eine Konfiguration möglich, bei der, wenn als vorbestimmter Bewertungswert ZB für die Beurteilung die Anzahl erkannter Objekte von 19 eingestellt ist (Erkennungsrate = 19/20 = 95%), der Benutzer einen gewünschten Messparameter in geeigneter Weise aus den Messparametern auswählen kann, die einem Datensatz mit dem Bewertungswert Zi=19 in 11 entsprechen, und den ausgewählten Messparameter als den optimierten Messparameter zur Verwendung im tatsächlichen Betrieb des Robotersystems 100 bestimmen kann. Dies gilt in ähnlicher Weise, wenn die Anzahl erkannter Objekte von 17 oder 18 als der vorbestimmte Bewertungswert ZB für die Beurteilung eingestellt ist.
  • Schritt S506
  • In Schritt S506 wird das Robotersystem 100 unter Verwendung des optimierten Messparameters, der in Schritt S505 bestimmt wurde, tatsächlich betrieben und eine Handhabungsverarbeitung des Werkstücks 5 durchgeführt.
  • 4. Aktionen und Wirkungen
  • Wie oben beschrieben, können entsprechend dem Beispiel der Steuervorrichtung 4 des Robotersystems 100 gemäß der vorliegenden Ausführungsform und dem Messparameter-Optimierungsverfahren mit der Steuervorrichtung 4 Erkennungsergebnisse für Werkstücke 5 für den Fall einer Änderung von Messparametern in andere Bedingungen (zweite Messparameter oder dritte Messparameter) auf Basis von ersten Daten geschätzt werden, die grundlegende Daten sind, welche im Voraus vor dem tatsächlichen Betrieb des Robotersystems 100 erfasst sind, ohne eine tatsächliche Messung mit den geänderten Parametern durchzuführen. Dementsprechend erübrigt sich die Durchführung einer Vormessung für alle Kombinationen von Bedingungen, die als Messparameter erwartet werden können, und durch nur einmalige Durchführung einer detaillierten Vormessung vor dem tatsächlichen Betrieb können Messparameter oder der Sensor 1 für jede Art der Werkstücke 5 optimiert werden, die erwartet wird.
  • Auch bei einer Änderung des Roboters 10 können außerdem, wenn Bedingungen (insbesondere die Bewegungsgeschwindigkeit V des Sensors 1 und das Zeitintervall T), die den Eigenschaften (mechanischen Parametern) des geänderten Roboters 10 entsprechen, in einem Satz von Parametern der ersten Daten und der zweiten Daten enthalten sind, die im Voraus für den mit dem Sensor 1 ausgerüsteten Roboter 10 erfasst sind, Messparameter für Daten, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den Sätzen erster und zweiter Daten ausgewählt werden, die die Bedingung erfüllen, und als optimierte Messparameter bestimmt werden, die zu verwenden sind, wenn Werkstücke 5 durch den neuen, anderen Roboter zu handhaben sind.
  • Wenn in einem Parametersatz der ersten Daten und der zweiten Daten Bedingungen enthalten sind, die den Eigenschaften des geänderten Roboters 10 entsprechen, kann alternativ ein unter diesen Bedingungen gewonnenes Ergebnis als grundlegende Daten (erste Daten) für den neuen Roboter 10 verwendet werden. Durch die Ausführung einer Verarbeitung ähnlich derjenigen im oben beschriebenen zweiten bis vierten Schritt unter Verwendung der grundlegenden Daten ist dann eine Durchführung von Messparameteroptimierung für das Robotersystem 100, das den neuen Roboter 10 aufweist, ohne erneute Durchführung einer Vormessung möglich.
  • Bei einer Aufgabe, bei der verschiedene Arten von Werkstücken 5 durch Robotersysteme 100 gehandhabt werden, die verschiedene Roboter 10 aufweisen, können daher offenbarungsgemäß Messparameter für den Sensor 1 beträchtlich einfacher optimiert werden als bei herkömmlicher Technik (beispielsweise mit geringerem Arbeitsaufwand, in kürzerer Zeit und ohne Roboterabhängigkeit). Dementsprechend können die Robustheit während der Messung der Werkstücke 5, die Arbeitseffizienz bei der Handhabung der Werkstücke 5 und der Gesamtdurchsatz verbessert werden und infolgedessen Nutzungskomfort und Vielseitigkeit beträchtlich verbessert werden. Außerdem kann, wie in Schritt S505 beschrieben, durch das Einstellen der vorbestimmten Anzahl erkannter Objekte ZB auf einen größeren Wert die Robustheit weiter verbessert werden, was vorteilhaft ist, wenn eine Verbesserung der Messgenauigkeit Priorität hat.
  • 5. Varianten
  • Oben wurden zwar Ausführungsformen als Beispiele für die vorliegende Offenbarung ausführlich beschrieben, jedoch ist die obige Beschreibung in jeder Hinsicht lediglich ein Beispiel für die vorliegende Offenbarung, es können verschiedene Verbesserungen und Abwandlungen vorgenommen werden, ohne den Umfang der vorliegenden Offenbarung zu verlassen, und selbstverständlich können Änderungen wie etwa die folgenden vorgenommen werden. Es wird darauf hingewiesen, dass in den folgenden Beschreibungen gleiche Bezugsziffern für Komponenten verwendet werden, die gleich denen in der obigen Ausführungsform sind, und die Beschreibung von Punkten, die der obigen Ausführungsform ähnlich sind, gegebenenfalls weggelassen ist. Darüber hinaus sind die oben beschriebene Ausführungsform und die folgenden Abwandlungen in geeigneter Weise kombinierbar und konfigurierbar.
  • Bei der oben beschriebenen Ausführungsform ist die Zahl erkannter Werkstücke 5 als der Bewertungswert Zi dargestellt, der die Genauigkeit der Erkennung der Werkstücke 5 anzeigt, jedoch ist die vorliegende Erfindung nicht hierauf beschränkt. Beispielsweise kann die effektive Zahl der dreidimensionalen Punktwolkendaten, die als Ergebnis der Erkennungsverarbeitung des Werkstücks 5 gewonnen sind, als der Bewertungswert Zi verwendet werden. Alternativ kann der Grad der Übereinstimmung zwischen bekannten dreidimensionalen Informationen für die Werkstücke 5 (z.B. dreidimensionalen CAD-Daten (Computer Aided Design; computergestützte Gestaltung)) und Forminformationen, die als Ergebnis der Erkennungsverarbeitung des Werkstücks 5 gewonnen sind, als der Bewertungswert Zi verwendet werden.
  • Bei der oben beschriebenen Ausführungsform ist die Geschwindigkeit des Sensors 1 in den dritten Messparametern auf das k-fache der Geschwindigkeit des Sensors 1 in den ersten Messparametern eingestellt, und das Zeitintervall der Messung durch den Sensor 1 in den dritten Messparametern ist auf das 1/k-fache des Zeitintervalls der Messung durch den Sensor 1 in den ersten Messparametern eingestellt, die vorliegende Erfindung ist jedoch nicht hierauf beschränkt. Beispielsweise sei V1 die Geschwindigkeit des Sensors 1 in den ersten Messparametern, V2 die Geschwindigkeit des Sensors 1 in den dritten Messparametern, T1 das Zeitintervall der Messung durch den Sensor 1 in den ersten Messparametern und T2 das Zeitintervall für die Messung durch den Sensor 1 in den dritten Messparametern. Wenn in diesem Fall V2×T2 ein ganzzahliges Mehrfaches von V1×T1 ist, weisen Verifizierungsergebnisse für die ersten Daten Verifizierungsergebnisse für die zweiten Daten auf, und daher kann das Messparameter-Optimierungsverfahren gemäß der vorliegenden Ausführungsform angewandt werden.
  • Bei der oben beschriebenen Ausführungsform wird angenommen, dass V2 und T2 in der Bewegungsbahn des Sensors 1 immer konstant sind, jedoch ist die vorliegende Erfindung nicht hierauf beschränkt. Beispielsweise kann die Bewegungsbahn des Sensors 1 in Abschnitte geteilt sein, und V2 und T2 können in jedem Abschnitt konstant sein, oder V2 und T2 brauchen in verschiedenen Abschnitten nicht unbedingt gleich zu sein.
  • 5.1. Erste Variante
  • Bei der ersten Variante besteht das vorbestimmte Bestimmungskriterium darin, dass die Anzahl erkannter Objekte, die der Bewertungswert Zi ist, der die Genauigkeit der Erkennung der Werkstücke 5 anzeigt, größer als oder gleich der vorbestimmten Anzahl erkannter Objekte ZB ist und die Bewegungsgeschwindigkeit V des Sensors 1 schneller ist. Hier ist 13 ein Schaubild, in dem die in 11 dargestellten zweiten Daten in absteigender Reihenfolge nach dem Bewertungswert Zi sortiert sind und Daten mit dem gleichen Bewertungswert Zi in absteigender Reihenfolge nach der Geschwindigkeit V sortiert sind. Entsprechend dieser Figur wurde bestätigt, dass es 4 Sätze Messparameter mit der Anzahl erkannter Objekte ZB von 19 und der höchsten Geschwindigkeit V (80%) gibt, 6 Sätze Messparameter mit der Anzahl erkannter Objekte ZB von 18 und der höchsten Geschwindigkeit V (90%) gibt und 1 Satz Messparameter mit der Anzahl erkannter Objekte ZB von 17 und der höchsten Geschwindigkeit V (90%) gibt. Der optimierte Messparameter kann in geeigneter Weise aus solchen Daten entsprechend der gewünschten Anzahl erkannter Objekte ZB ausgewählt sein. Wenn, wie oben beschrieben, das vorbestimmte Bestimmungskriterium die vorbestimmte Anzahl erkannter Objekte ZB für die Werkstücke 5 und außerdem die Bedingung aufweist, dass die Geschwindigkeit V des Sensors 1 schneller ist, ist dies vorteilhaft, wenn die Geschwindigkeit V während der Bewegung des Sensors 1 Priorität hat, während auch die gewünschte Anzahl erkannter Objekte ZB erfüllt wird.
  • 5.2. Zweite Variante
  • Bei der zweiten Variante besteht das vorbestimmte Bestimmungskriterium darin, dass die Anzahl erkannter Objekte, die der Bewertungswert Zi ist, der die Genauigkeit der Erkennung der Werkstücke 5 anzeigt, größer als oder gleich der vorbestimmten Anzahl erkannter Objekte ZB ist und dass die aufgenommene Bildzahl i der Werkstücke 5 niedriger ist. Hier ist 14 ein Schaubild, in dem die in 11 dargestellten zweiten Daten in absteigender Reihenfolge nach der Anzahl erkannter Objekte Zi sortiert sind und Daten mit der gleichen Anzahl erkannter Objekte Zi in aufsteigender Reihenfolge nach der aufgenommenen Bildzahl i sortiert sind. Entsprechend dieser Figur ist in den Messparametern mit der Anzahl erkannter Objekte ZB von 19 und der niedrigsten aufgenommenen Bildzahl i (4) die Geschwindigkeit V des Sensors 1 70%, das Zeitintervall T sind 0,06 Sek., und die aufgenommene Bildzahl i ist 4, und diese können als optimierte Parameter bestimmt sein. Außerdem wurde in 14 bestätigt, dass es 6 Sätze Messparameter mit der Anzahl erkannter Objekte ZB von 18 und der niedrigsten Anzahl aufgenommener Bilder i (4) gibt und 4 Sätze Messparameter mit der Anzahl erkannter Objekte ZB von 17 und der niedrigsten Anzahl aufgenommener Bilder i (3) gibt. Wenn, wie oben beschrieben, das vorbestimmte Bestimmungskriterium die vorbestimmte Anzahl erkannter Objekte ZB für die Werkstücke 5 und außerdem die Bedingung aufweist, dass die aufgenommene Bildzahl i niedriger ist, ist dies vorteilhaft, wenn eine Verringerung der aufgenommenen Bildzahl i Priorität hat, während auch die gewünschte Anzahl erkannter Objekte ZB erfüllt wird.
  • 5.3. Dritte Variante
  • Bei der dritten Variante nimmt der Sensor 1 Bilder von Werkstücken 5 mehrmals unter Verwendung der ersten Messparameter auf, und der Durchschnittswert der Anzahlen erkannter Objekte Zi für die verschiedenen Anzahlen aufgenommener Bilder i wird in Zuordnung zu den ersten Messparametern als die ersten Daten gespeichert. In diesem Fall können die Position/Ausrichtung des Sensors 1, die Bewegungsbahn P0 des Sensors 1, der aufgehäufte Zustand der Werkstücke 5 und dergleichen zufällig geändert werden. Hier ist 15 ein Flussdiagramm, das ein Beispiel für die Verarbeitungsprozedur in der dritten Variante zeigt.
  • Wie in 15 gezeigt, ist insbesondere die Verarbeitung bei der dritten Variante die gleiche wie bei der Verarbeitungsprozedur in dem in 5 gezeigten Betriebsbeispiel, nur dass anstelle des Schritts S502 die Schritte S1501 bis S1503 durchgeführt werden. In Schritt S1501 wird ähnlich wie in Schritt S502 (zweiter Schritt (1)) eine Bildverarbeitung unter Verwendung der N aufgenommenen Bilder durchgeführt, und die Anzahl erkannter Objekte Zi für die Werkstücke 5 wird für jede aufgenommene Bildzahl i erfasst, jedoch erfolgt noch nicht die Verarbeitung des Speicherns der Anzahl erkannter Objekte Zi in Zuordnung zu den ersten Messparametern. Als Nächstes wird in Schritt S1502, wenn eine voreingestellte Zahl der Wiederholungen Q des Schritts S501 noch nicht erreicht wurde (Schritt S1502 ergibt „Nein“), der Schritt S501 wiederholt, und die Anzahl erkannter Objekte Zi für die Werkstücke 5 wird in einer Q-mal durchgeführten Verarbeitung für jede aufgenommene Bildzahl i erfasst. Anders ausgedrückt, werden Q Einzeldaten zu der Anzahl erkannter Objekte Zi für jede Anzahl aufgenommener Bilder erfasst. Wenn die Zahl der Wiederholungen von Schritt S501 Q erreicht hat (Schritt S1502 ergibt „Ja“), wird die Verarbeitung mit Schritt S1503 fortgesetzt, der Durchschnittswert der Q Einzeldaten zu der Anzahl erkannter Objekte Zi wird berechnet, und der Durchschnittswert wird in Zuordnung zu den ersten Messparametern in der Speichereinheit 43 als die ersten Daten gespeichert.
  • Gemäß der dritten Variante kann die Genauigkeit und Zuverlässigkeit der experimentell gewonnenen ersten Daten verbessert werden, und infolgedessen ist eine weitere Verbesserung der Robustheit zur Zeit der Messung der Werkstücke 5, der Arbeitseffizienz bei der Handhabung der Werkstücke 5 sowie des Gesamtdurchsatzes möglich.
  • 5.4. Vierte Variante
  • Die vierte Variante beschreibt ein Beispiel für ein Verfahren, bei dem entsprechend der Beschreibung im Abschnitt „4. Aktionen und Wirkungen“ für das Betriebsbeispiel, wenn der Roboter 10 des Robotersystems 100 geändert wird, ein optimierter Messparameter in dem Robotersystem 100 nach der Änderung des Roboters 10 durch Nutzung der ersten Daten und der zweiten Daten gewonnen wird, die im Voraus für einen mit dem Sensor 1 ausgerüsteten Roboter 10 gewonnen wurden. Wenn insbesondere beispielsweise Bedingungen (insbesondere die Bewegungsgeschwindigkeit V des Sensors 1 und das Zeitintervall T), die den Eigenschaften (mechanischen Parametern) des geänderten Roboters 10 entsprechen, in einem Parametersatz der ersten Daten und der zweiten Daten in dem Betriebsbeispiel enthalten sind, können Messparameter für Daten, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den Sätzen erster und zweiter Daten, die die Bedingungen erfüllen, ausgewählt werden und als optimierte Messparameter bestimmt werden, die zu verwenden sind, wenn Werkstücke 5 nach der Änderung durch den anderen Roboter zu handhaben sind. Dies ermöglicht daher die Bereitstellung eines einfachen Verfahrens, mit dem die Optimierung eines Messparameters ohne Abhängigkeit von dem Roboter 10 realisierbar ist.
  • 5.5. Fünfte Variante
  • Die fünfte Variante beschreibt auch ein Beispiel für ein Verfahren, bei dem entsprechend der Beschreibung im Abschnitt „4. Aktionen und Wirkungen“ für das Betriebsbeispiel, wenn der Roboter 10 des Robotersystems 100 geändert wird, ein optimierter Messparameter in dem Robotersystem 100 nach der Änderung des Roboters 10 durch Nutzung der ersten Daten und der zweiten Daten gewonnen wird, die im Voraus für einen mit dem Sensor 1 ausgerüsteten Roboter 10 gewonnen wurden. Anders ausgedrückt, können beispielsweise, wenn Bedingungen, die den Eigenschaften des geänderten Roboters 10 entsprechen, in einem Parametersatz der ersten Daten und der zweiten Daten in dem Betriebsbeispiel enthalten sind, Ergebnisse unter solchen Bedingungen als grundlegende Daten (erste Daten) für den geänderten Roboter 10 genutzt werden. Durch die Ausführung einer Verarbeitung ähnlich derjenigen im oben beschriebenen zweiten bis vierten Schritt unter Verwendung der grundlegenden Daten ist dann eine Durchführung von Messparameteroptimierung für das Robotersystem 100, das den neuen Roboter 10 aufweist, ohne erneute Durchführung einer Vormessung möglich. Auch mit dieser Konfiguration kann ein einfaches Verfahren bereitgestellt werden, mit dem die Optimierung eines Messparameters ohne Abhängigkeit von dem Roboter 10 realisierbar ist.
  • 5.6. Sechste Variante
  • Des Weiteren ist 16 als sechste Variante eine Planansicht, in der Werkstücke 5 mit einer anderen Form als derjenigen einer Sechskantschraube gemessen werden, und die Erkennungsergebnisse (Umrisslinien) der Positionen und Ausrichtungen der Werkstücke 5, die durch Bildverarbeitung gewonnen sind, sind über ein aufgenommenes Bild gelegt. Auf diese Weise ist auch im Fall verschiedener Arten von Werkstücken 5 durch Anwendung des offenbarungsgemäßen Messparameter-Optimierungsverfahrens eine Verbesserung der Vielseitigkeit bei der Optimierung von Messparametern für verschiedene Arten von Werkstücken 5 möglich.

Claims (10)

  1. Messparameter-Optimierungsverfahren zur Verwendung, wenn ein oder mehrere Objekte (5) durch eine an einem Roboter (10) vorgesehene Messvorrichtung (1) gemessen werden, wobei das Verfahren umfasst: einen ersten Schritt (S501), N (wobei N größer als 1 ist) aufgenommene Bilder der ein oder mehreren Objekte (5) zu erfassen, während bewirkt wird, dass die Messvorrichtung (1) sich mit einer Geschwindigkeit V, einem Zeitintervall T und einem Gesamtbewegungswinkel θ als ersten Messparametern bewegt; einen zweiten Schritt (S502, S503), auf Basis einer Annahme des Erfassens von N/j (wobei j eine ganze Zahl größer als oder gleich 1 ist) aufgenommenen Bildern der ein oder mehreren Objekte (5), während bewirkt wird, dass die Messvorrichtung (1) sich mit der Geschwindigkeit V, einem Zeitintervall T×j und dem Gesamtbewegungswinkel θ als zweiten Messparametern bewegt, und dann der Durchführung einer Bildverarbeitung zum Erkennen von Positionen und Ausrichtungen der ein oder mehreren Objekte (5), einen Bewertungswert Zi, der eine Genauigkeit der Erkennung der ein oder mehreren Objekte (5) anzeigt, für jede aufgenommene Bildzahl i (hier i=1,2,...,N/j-1,N/j) zu schätzen und die Bewertungswerte Zi in Zuordnung zu den zweiten Messparametern als erste Daten zu speichern; einen dritten Schritt (S504), auf Basis einer Annahme des Erfassens von N/j/k (wobei k eine ganze Zahl größer als oder gleich 2 ist) aufgenommenen Bildern der ein oder mehreren Objekte (5), während bewirkt wird, dass die Messvorrichtung (1) sich mit einer Geschwindigkeit V×k, einem Zeitintervall T×j/k und dem Gesamtbewegungswinkel θ als dritten Messparametern bewegt, und dann der Durchführung einer Verarbeitung ähnlich der Bildverarbeitung in dem zweiten Schritt, den Bewertungswert Zi, der eine Genauigkeit der Erkennung der ein oder mehreren Objekte (5) anzeigt, für jede aufgenommene Bildzahl i (hier i=1,2,...,N/j/k-1,N/j/k) auf Basis der ersten Daten zu schätzen und die Bewertungswerte Zi in Zuordnung zu den dritten Messparametern als zweite Daten zu speichern; und einen vierten Schritt (S505), einen Messparameter, der Daten entspricht, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den zweiten Daten auszuwählen und den ausgewählten Messparameter als optimierten Messparameter zu bestimmen, der zu verwenden ist, wenn die ein oder mehreren Objekte (5) durch den Roboter (10) gehandhabt werden (S506).
  2. Verfahren gemäß Anspruch 1, wobei das vorbestimmte Beurteilungskriterium eine Bedingung aufweist, dass der Bewertungswert Zi in Bezug auf die ein oder mehreren Objekte (5) größer als oder gleich einem Bewertungswert ist, der im Voraus eingestellt wurde.
  3. Verfahren gemäß Anspruch 2, wobei das vorbestimmte Beurteilungskriterium eine Bedingung aufweist, dass eine erforderliche Zeit zumindest für die Messung kurz ist.
  4. Verfahren gemäß Anspruch 2 oder 3, wobei das vorbestimmte Beurteilungskriterium eine Bedingung aufweist, dass die Bewegungsgeschwindigkeit V der Messvorrichtung (1) schnell ist.
  5. Verfahren gemäß einem der Ansprüche 2 bis 4, wobei das vorbestimmte Beurteilungskriterium darin besteht, dass die aufgenommene Bildzahl i in Bezug auf die ein oder mehreren Objekte (5) niedrig ist.
  6. Verfahren gemäß einem der Ansprüche 1 bis 5, wobei die Verarbeitung zum Aufnehmen von Bildern der ein oder mehreren Objekte (5) mit den ersten Messparametern mehrmals durchgeführt wird (S501, S1501, S1502) und Durchschnittswerte der jedes Mal erfassten Bewertungswerte Zi als die ersten Daten gespeichert werden (S1503).
  7. Verfahren gemäß einem der Ansprüche 1 bis 6, wobei, wenn Daten, die Messparametern entsprechen, welche der Geschwindigkeit V und dem Zeitintervall T gemäß einer Eigenschaft eines anderen Roboters (10), der sich von dem Roboter (10) unterscheidet, entsprechen, in den ersten Daten oder den zweiten Daten enthalten sind, ein Messparameter in Daten, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den ersten Daten und den zweiten Daten ausgewählt und als optimierter Messparameter bestimmt wird, der zu verwenden ist, wenn die Objekte (5) durch den anderen Roboter (10) zu handhaben sind (S506).
  8. Verfahren gemäß einem der Ansprüche 1 bis 6, wobei, wenn Daten, die Messparametern entsprechen, welche der Geschwindigkeit V und dem Zeitintervall T gemäß einer Eigenschaft eines anderen Roboters (10), der sich von dem Roboter (10) unterscheidet, entsprechen, in den ersten Daten oder den zweiten Daten enthalten sind, Daten, die einem Messparameter in den entsprechenden Daten zugeordnet sind, als neue erste Daten verwendet werden, der zweite bis vierte Schritt (S502, S1501, S1502, S503, S504, S505) durchgeführt wird, um neue zweite Daten zu gewinnen, und ein Messparameter in Daten, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den neuen zweiten Daten ausgewählt und als optimierter Messparameter bestimmt wird, der zu verwenden ist, wenn die Objekte (5) durch den anderen Roboter (10) zu handhaben sind (S506).
  9. Messparameter-Optimierungsvorrichtung (4) zur Verwendung, wenn ein oder mehrere Objekte (5) durch eine an einem Roboter (10) vorgesehene Messvorrichtung (1) gemessen werden, wobei die Messparameter-Optimierungsvorrichtung (4) zumindest einen Prozessor aufweist und der zumindest eine Prozessor ausführt: einen ersten Schritt (S501), N (wobei N größer als 1 ist) aufgenommene Bilder der ein oder mehreren Objekte (5) zu erfassen, während bewirkt wird, dass die Messvorrichtung (1) sich mit einer Geschwindigkeit V, einem Zeitintervall T und einem Gesamtbewegungswinkel θ als ersten Messparametern bewegt; einen zweiten Schritt (S502, S503), auf Basis einer Annahme des Erfassens von N/j (wobei j eine ganze Zahl größer als oder gleich 1 ist) aufgenommenen Bildern der ein oder mehreren Objekte (5), während bewirkt wird, dass die Messvorrichtung (1) sich mit der Geschwindigkeit V, einem Zeitintervall T×j und dem Gesamtbewegungswinkel θ als zweiten Messparametern bewegt, und dann der Durchführung einer Bildverarbeitung zum Erkennen von Positionen und Ausrichtungen der ein oder mehreren Objekte (5), einen Bewertungswert Zi, der eine Genauigkeit der Erkennung der ein oder mehreren Objekte (5) anzeigt, für jede aufgenommene Bildzahl i (hier i=1,2,...,N/j-1,N/j) zu schätzen und die Bewertungswerte Zi in Zuordnung zu den zweiten Messparametern als erste Daten zu speichern; einen dritten Schritt (S504), auf Basis einer Annahme des Erfassens von N/j/k (wobei k eine ganze Zahl größer als oder gleich 2 ist) aufgenommenen Bildern der ein oder mehreren Objekte (5), während bewirkt wird, dass die Messvorrichtung (1) sich mit einer Geschwindigkeit V×k, einem Zeitintervall T×j/k und dem Gesamtbewegungswinkel θ als dritten Messparametern bewegt, und dann der Durchführung einer Verarbeitung ähnlich der Bildverarbeitung in dem zweiten Schritt, den Bewertungswert Zi, der eine Genauigkeit der Erkennung der ein oder mehreren Objekte (5) anzeigt, für jede aufgenommene Bildzahl i (hier i=1,2,...,N/j/k-1,N/j/k) auf Basis der ersten Daten zu schätzen und die Bewertungswerte Zi in Zuordnung zu den dritten Messparametern als zweite Daten zu speichern; und einen vierten Schritt (S505), einen Messparameter, der Daten entspricht, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den zweiten Daten auszuwählen und den ausgewählten Messparameter als optimierten Messparameter zu bestimmen, der zu verwenden ist, wenn die ein oder mehreren Objekte (5) durch den Roboter (10) gehandhabt werden (S506).
  10. Computersteuerprogramm, das, zur Durchführung einer Messparameteroptimierung für eine Messung eines oder mehrerer Objekte (5) durch eine an einem Roboter (10) vorgesehene Messvorrichtung (1), bewirkt, dass ein Computer, der zumindest einen Prozessor aufweist, ausführt: einen ersten Schritt (S501), N (wobei N größer als 1 ist) aufgenommene Bilder der ein oder mehreren Objekte (5) zu erfassen, während bewirkt wird, dass die Messvorrichtung (1) sich mit einer Geschwindigkeit V, einem Zeitintervall T und einem Gesamtbewegungswinkel θ als ersten Messparametern bewegt; einen zweiten Schritt (S502, S503), auf Basis einer Annahme des Erfassens von N/j (wobei j eine ganze Zahl größer als oder gleich 1 ist) aufgenommenen Bildern der ein oder mehreren Objekte (5), während bewirkt wird, dass die Messvorrichtung (1) sich mit der Geschwindigkeit V, einem Zeitintervall T×j und dem Gesamtbewegungswinkel θ als zweiten Messparametern bewegt, und dann der Durchführung einer Bildverarbeitung zum Erkennen von Positionen und Ausrichtungen der ein oder mehreren Objekte (5), einen Bewertungswert Zi, der eine Genauigkeit der Erkennung der ein oder mehreren Objekte (5) anzeigt, für jede aufgenommene Bildzahl i (hier i=1,2,...,N/j-1,N/j) zu schätzen und die Bewertungswerte Zi in Zuordnung zu den zweiten Messparametern als erste Daten zu speichern; einen dritten Schritt (S504), auf Basis einer Annahme des Erfassens von N/j/k (wobei k eine ganze Zahl größer als oder gleich 2 ist) aufgenommenen Bildern der ein oder mehreren Objekte (5), während bewirkt wird, dass die Messvorrichtung (1) sich mit einer Geschwindigkeit V×k, einem Zeitintervall T×j/k und dem Gesamtbewegungswinkel θ als dritten Messparametern bewegt, und dann der Durchführung einer Verarbeitung ähnlich der Bildverarbeitung in dem zweiten Schritt, den Bewertungswert Zi, der eine Genauigkeit der Erkennung der ein oder mehreren Objekte (5) anzeigt, für jede aufgenommene Bildzahl i (hier i=1,2,...,N/j/k-1,N/j/k) auf Basis der ersten Daten zu schätzen und die Bewertungswerte Zi in Zuordnung zu den dritten Messparametern als zweite Daten zu speichern; und einen vierten Schritt (S505), einen Messparameter, der Daten entspricht, die ein vorbestimmtes Beurteilungskriterium erfüllen, aus den zweiten Daten auszuwählen und den ausgewählten Messparameter als optimierten Messparameter zu bestimmen, der zu verwenden ist, wenn die ein oder mehreren Objekte (5) durch den Roboter (10) gehandhabt werden (S506).
DE102021103726.3A 2020-03-13 2021-02-17 Messparameter-Optimierungsverfahren und -vorrichtung sowie Computersteuerprogramm Active DE102021103726B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2020-044682 2020-03-13
JP2020044682 2020-03-13
JP2020097760A JP7450857B2 (ja) 2020-03-13 2020-06-04 計測パラメータの最適化方法及び装置、並びに、コンピュータ制御プログラム
JP2020-097760 2020-06-04

Publications (2)

Publication Number Publication Date
DE102021103726A1 DE102021103726A1 (de) 2021-09-16
DE102021103726B4 true DE102021103726B4 (de) 2022-12-29

Family

ID=77457411

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021103726.3A Active DE102021103726B4 (de) 2020-03-13 2021-02-17 Messparameter-Optimierungsverfahren und -vorrichtung sowie Computersteuerprogramm

Country Status (3)

Country Link
US (1) US11816754B2 (de)
CN (1) CN113386122B (de)
DE (1) DE102021103726B4 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017198306A1 (en) * 2016-05-20 2017-11-23 Abb Schweiz Ag Improved industrial object handling robot
JP6795471B2 (ja) * 2017-08-25 2020-12-02 ファナック株式会社 ロボットシステム
DE102022206274A1 (de) 2022-06-22 2023-12-28 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Steuern eines Roboters zum Manipulieren, insbesondere Aufnehmen, eines Objekts

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008020579B4 (de) 2008-04-24 2014-07-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Verfahren zur automatischen Objektlageerkennung und Bewegung einer Vorrichtung relativ zu einem Objekt
DE102014106210B4 (de) 2014-04-14 2015-12-17 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Probabilistische Personennachführung unter Verwendung der Mehr- Ansichts-Vereinigung
JP2017056546A (ja) 2015-09-14 2017-03-23 ファナック株式会社 ロボットの機構パラメータを校正するために使用される計測装置
DE202017106506U1 (de) 2016-11-15 2018-04-03 Google Llc Einrichtung für tiefes Maschinenlernen zum Robotergreifen
EP3587044A1 (de) 2018-06-28 2020-01-01 Sick Ag Verfahren zum greifen von objekten in einem suchbereich, steuereinheit und positioniersystem
DE102019206444A1 (de) 2019-05-06 2020-11-12 Kuka Deutschland Gmbh Maschinelles Lernen einer Objekterkennung mithilfe einer robotergeführten Kamera

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4234059B2 (ja) 2003-06-06 2009-03-04 三菱電機株式会社 カメラキャリブレーション方法およびカメラキャリブレーション装置
JP5759133B2 (ja) 2010-09-24 2015-08-05 Juki株式会社 形状ベースマッチングパラメータの調整装置および部品実装装置
DE102014210893A1 (de) 2014-06-06 2015-12-17 Siemens Aktiengesellschaft Verfahren zum Betrieb einer Bildaufnahmeeinrichtung mit Touchscreen und Bildaufnahmeeinrichtung
DE102016116702B4 (de) 2015-09-14 2019-01-24 Fanuc Corporation Messsystem zum Kalibrieren der mechanischen Parameter eines Roboters
WO2017117686A1 (en) * 2016-01-08 2017-07-13 4D Space Genius Inc. Robot for automated image acquisition
CN111832702A (zh) 2016-03-03 2020-10-27 谷歌有限责任公司 用于机器人抓取的深度机器学习方法和装置
US11511429B2 (en) 2017-10-31 2022-11-29 Safetics, Inc. Method of improving safety of robot and method of evaluating safety of robot
KR101976358B1 (ko) 2017-10-31 2019-08-28 경희대학교 산학협력단 로봇의 안전성 향상 방법
JP2019158500A (ja) 2018-03-12 2019-09-19 オムロン株式会社 外観検査システム、画像処理装置、撮像装置および検査方法
JP6977634B2 (ja) 2018-03-13 2021-12-08 オムロン株式会社 外観検査装置、外観検査方法及びプログラム
JP7042703B2 (ja) 2018-06-15 2022-03-28 株式会社東芝 情報処理装置、情報処理装置を備える荷降しシステム、及び情報処理プログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008020579B4 (de) 2008-04-24 2014-07-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Verfahren zur automatischen Objektlageerkennung und Bewegung einer Vorrichtung relativ zu einem Objekt
DE102014106210B4 (de) 2014-04-14 2015-12-17 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Probabilistische Personennachführung unter Verwendung der Mehr- Ansichts-Vereinigung
JP2017056546A (ja) 2015-09-14 2017-03-23 ファナック株式会社 ロボットの機構パラメータを校正するために使用される計測装置
DE202017106506U1 (de) 2016-11-15 2018-04-03 Google Llc Einrichtung für tiefes Maschinenlernen zum Robotergreifen
EP3587044A1 (de) 2018-06-28 2020-01-01 Sick Ag Verfahren zum greifen von objekten in einem suchbereich, steuereinheit und positioniersystem
DE102019206444A1 (de) 2019-05-06 2020-11-12 Kuka Deutschland Gmbh Maschinelles Lernen einer Objekterkennung mithilfe einer robotergeführten Kamera

Also Published As

Publication number Publication date
DE102021103726A1 (de) 2021-09-16
US20210283782A1 (en) 2021-09-16
CN113386122A (zh) 2021-09-14
US11816754B2 (en) 2023-11-14
CN113386122B (zh) 2023-12-22

Similar Documents

Publication Publication Date Title
DE102021103726B4 (de) Messparameter-Optimierungsverfahren und -vorrichtung sowie Computersteuerprogramm
DE102014102943B4 (de) Robotersystem mit Funktionalität zur Ortsbestimmung einer 3D- Kiste
DE102015011914B4 (de) Konturlinienmessvorrichtung und Robotersystem
DE102015002760B4 (de) Robotersimulationssystem, das den Prozess des Entnehmens von Werkstücken simuliert
DE112011103794B4 (de) Aufnehmervorrichtung für Werkstücke
DE102016013986B4 (de) Vorrichtung zum messen von positionen und stellungen einer mehrzahl von artikeln sowie die vorrichtung aufweisendes robotersystem
DE102015102740B4 (de) Vorrichtung und Verfahren zum Anordnen von Gegenständen mittels Roboter und Gegenstandübertragungssystem
DE102015101710B4 (de) Verfahren zum Kalibrieren eines beweglichen Greiforgans unter Verwendung einer entfernten Digitalkamera
DE102014212304B4 (de) Informationsverarbeitungsvorrichtung, Informationsverarbeitungsverfahren und Speichermedium
DE102015208584B4 (de) Greifvorrichtung und Greifverfahren
DE102015000587B4 (de) Roboterprogrammiervorrichtung zum Erstellen eines Roboterprogramms zum Aufnehmen eines Bilds eines Werkstücks
DE102018109774B4 (de) Bildverarbeitungssystem, Bildverarbeitungsvorrichtung und Bildverarbeitungsprogramm
DE102017128543B4 (de) Störbereich-einstellvorrichtung für einen mobilen roboter
DE102016122678B4 (de) Werkstückpositions-/-Stellungsberechnungssystem und Handhabungssystem
DE102021107532A1 (de) System und Verfahren zum Anlernen eines Roboters mittels Demonstration durch einen Menschen
DE102013018222A1 (de) Objektaufnahmevorrichtung und Verfahren zum Aufnehmen eines Objekts
DE102020118635A1 (de) 3D-Datenerzeugungsvorrichtung und Robotersteuersystem
DE102019124810A1 (de) Bildverarbeitungsgerät und Bildverarbeitungsverfahren
DE102019212452A1 (de) Interferenzvermeidungsvorrichtung und Robotersystem
DE102017116853A1 (de) System und Verfahren zur automatischen Auswahl von 3D-Ausrichtungsalgorithmen in einem Sehsystem
DE102022130652A1 (de) Anlernen eines roboters durch vorführen mit visualservoing
EP1915239B1 (de) Verfahren zum erzeugen eines umgebungsbildes
DE112017007903B4 (de) Haltepositions- und Orientierungslehreinrichtung, Haltepositions- und Orientierungslehrverfahren und Robotersystem
DE102015214857A1 (de) Verfahren und System zum Erstellen eines dreidimensionalen Modells einer Produktionsumgebung
EP2059905A2 (de) Verfahren zur lagebestimmung von objeckten im dreidimensionalen raum

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final