[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

DE102017002608A1 - Positioniersystem unter Verwendung eines Roboters - Google Patents

Positioniersystem unter Verwendung eines Roboters Download PDF

Info

Publication number
DE102017002608A1
DE102017002608A1 DE102017002608.4A DE102017002608A DE102017002608A1 DE 102017002608 A1 DE102017002608 A1 DE 102017002608A1 DE 102017002608 A DE102017002608 A DE 102017002608A DE 102017002608 A1 DE102017002608 A1 DE 102017002608A1
Authority
DE
Germany
Prior art keywords
robot
movement amount
amount
feature
default
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.)
Granted
Application number
DE102017002608.4A
Other languages
English (en)
Other versions
DE102017002608B4 (de
Inventor
Yuutarou Takahashi
Shouta TAKIZAWA
Fumikazu Warashina
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
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
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102017002608A1 publication Critical patent/DE102017002608A1/de
Application granted granted Critical
Publication of DE102017002608B4 publication Critical patent/DE102017002608B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • 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/1641Programme controls characterised by the control loop compensation for backlash, friction, compliance, elasticity in the joints
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39008Fixed camera detects reference pattern held by end effector
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39024Calibration of manipulator
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39039Two cameras detect same reference on workpiece to define its position in space
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39045Camera on end effector detects reference pattern
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39192Compensate thermal effects, expansion of links

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Multimedia (AREA)
  • Manipulator (AREA)

Abstract

Ein Positioniersystem, das einen Roboter verwendet, das in der Lage ist, einen Fehlerfaktor des Roboters zu eliminieren, sodass eine Wärmedehnung oder ein Zahnspiel eliminiert werden kann, und das ein Positionieren des Roboters mit einer Genauigkeit ausführt, die höher als die dem Roboter eigene Positionsgenauigkeit ist. Das Positioniersystem umfasst einen Roboter mit einem beweglichen Arm, optische Merkmalsabschnitte, die an einer Roboterhand bereitgestellt sind, und Visionssensoren, die an festen Positionen außerhalb des Roboters positioniert sind und dazu eingerichtet sind, die Merkmalsabschnitte zu erfassen. Die Hand ist dazu eingerichtet, ein Objekt, auf dem die Merkmalsabschnitte ausgebildet sind, zu greifen, und die Visionssensoren sind positioniert und eingerichtet, um die jeweiligen Merkmalsabschnitte zu erfassen.

Description

  • ALLGEMEINER STAND DER TECHNIK
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft ein Positioniersystem unter Verwendung eines Roboters und betrifft insbesondere eine Technik zum Verwenden eines Roboters als eine hochgenaue Positioniervorrichtung durch Nutzung einer optischen Rückmeldung unter Verwendung eines Visionssensors.
  • 2. Beschreibung des Standes der Technik
  • Ein herkömmlicher Industrieroboter kann durch ein Einlern-Wiedergabe-Verfahren gesteuert werden, wodurch der Roboter eine eingelernte Bewegung präzise wiederholen kann. Wenn ein solcher Roboter verwendet wird, um ein Objekt zu greifen und es an einen vorbestimmten Platz zu fördern, kann daher der Roboter als eine Positioniervorrichtung betrachtet werden.
  • Als ein relevantes Dokument des Standes der Technik offenbart JP 3702257 B eine Roboter-Handhabungsvorrichtung, die einen Roboter als eine Positioniervorrichtung verwendet, wobei selbst dann, wenn eine Position eines durch eine Roboterhand gegriffenen Objekts falsch ausgerichtet ist, das Objekt durch Messen und Korrigieren der Fehlausrichtung unter Verwendung eines Visionssensors präzise positioniert werden kann.
  • Des Weiteren offenbart JP 2015-150636 A ein Robotersystem, das umfasst: einen durch ein Programm gesteuerten Roboter zum Ausführen eines vorbestimmten Arbeitsvorgangs in Bezug auf ein Objekt, das sich an einer ersten Objektposition auf einer Ebene befindet; einen ersten Roboterpositions-Speicherteil zum Speichern einer Position eines Vorderendes eines Arms, der eine vorbestimmte Positionsbeziehung relativ zu der ersten Objektposition aufweist; einen Sollzustands-Datenspeicherteil zum Speichern eines Merkmalsbetrags des Objekts auf einem Bild einer Kamera; einen Roboterbewegungs-Berechnungsteil zum Berechnen eines Bewegungsbetrags des Roboters aus einer beliebigen Ausgangsposition, sodass ein Merkmalsbetrag des an einer zweiten Objektposition befindlichen Objekts mit dem Merkmalsbetrag der Sollzustandsdaten übereinstimmt; und einen Korrekturdaten-Berechnungsteil zum Berechnen von Korrekturdaten des Programms basierend auf einer Differenz zwischen der ersten Roboterposition und einer zweiten Roboterposition, wenn das Vorderende des Arms basierend auf dem Bewegungsbetrag bewegt wird.
  • Im Allgemeinen ist ein Roboter eine aus Metall usw. bestehende Konstruktion, und daher wird eine Arm und/oder ein Untersetzungsgetriebe desselben aufgrund einer Änderung einer Umgebungstemperatur thermisch ausgedehnt oder zusammengezogen, wodurch dessen Abmessung verändert wird. Da das Untersetzungsgetriebe ein Zahnspiel aufweist, kann eine Stoppstellung des Roboters abhängig von einem Bewegungspfad in Richtung auf eine Sollposition einen Fehler aufweisen. Des Weiteren ist der Betrag des Zahnspiels aufgrund einer zeitlichen Änderung, wie Abnutzung, nicht konstant. Wenn außerdem der Roboter das Positionieren eines elastischen Teils ausführt, während der elastische Körper verformt wird, kann die Position des Objekts oder der elastische Körper aufgrund einer externen Kraft von dem elastischen Körper von einer beabsichtigten Position abweichen.
  • In vielen herkömmlichen Positioniervorrichtungen oder -Verfahren wird der Fehler aufgrund der thermischen Verformung, des Zahnspiels, der zeitlichen Änderung oder der externen Kraft, wie oben beschrieben, nicht berücksichtigt. Andererseits ist es schwierig, einen Roboter herzustellen, der keine derartigen Fehler aufweist, und es ist schwierig, solche Fehler durch Analysieren der Fehler vollständig zu korrigieren.
  • JP 3702257 B offenbart zum Beispiel eine Roboterhandhabungsvorrichtung, die einen Roboter als eine Positioniervorrichtung verwendet, wobei selbst dann, wenn eine Position eines durch eine Roboterhand gegriffenen Objekts falsch ausgerichtet ist, das Objekt durch Messen und Korrigieren der Fehlausrichtung unter Verwendung eines Visionssensors präzise positioniert werden kann.
  • Obwohl des Weiteren in JP 2015-150636 A der Roboter als eine Positioniervorrichtung verwendet wird, ist es nicht beabsichtigt, einen Fehlerfaktor, wie etwa Wärmedehnung, zu eliminieren und eine präzise Positionierung auszuführen. Andererseits wird beabsichtigt, einen Arbeitsvorgang entlang eines komplizierten Bewegungspfads mühelos auszuführen, indem eine optische Rückmeldung verwendet wird, ohne dass die Bedienperson ein Roboter-Koordinatensystem berücksichtigt oder erkennt, während der Roboter nicht als die Positioniervorrichtung verwendet wird.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Es ist eine Aufgabe der vorliegenden Erfindung, ein Positioniersystem unter Verwendung eines Roboters bereitzustellen, das in der Lage ist, einen Fehlerfaktor des Roboters, wie eine Wärmeausdehnung, zu eliminieren oder mit dem ein Zahnspiel eliminiert werden kann, und eine Positionierung des Roboters mit einer Genauigkeit auszuführen, die höher als eine dem Roboter eigene Positionsgenauigkeit ist.
  • Ein Aspekt der vorliegenden stellt ein Positionssystem bereit, das umfasst: einen Roboter mit einem beweglichen Arm; einen optischen Merkmalsabschnitt, der an einem von einem Vorderende des Arms oder einer festen Position außerhalb des Roboters bereitgestellt ist; mehrere Visionssensoren, die an dem anderen von dem Vorderende des Arms oder der festen Position außerhalb des Roboters bereitgestellt sind und dazu eingerichtet sind, den optischen Merkmalsabschnitt zu erfassen; einen Merkmalsbetrags-Detektionsteil, der dazu eingerichtet ist, einen Merkmalsbetrag, der mindestens eines von einer Position, einer Stellung und einer Größe des optischen Merkmalsabschnitts umfasst, auf einem durch die mehreren Visionssensoren erfassten Bild zu detektieren; einen Solldaten-Speicherteil, der dazu eingerichtet ist, den durch den Merkmalsbetrags-Detektionsteil detektierten Merkmalsbetrag als einen ersten Merkmalsbetrag zu speichern, während das Vorderende des Arms an einer vorbestimmten Vorgabeposition positioniert ist; ein Roboterbewegungsbetrags-Berechnungsteil, der eingerichtet ist, um: den Merkmalsabschnitt unter Verwendung der Visionssensoren zu einem Zeitpunkt zu erfassen, der sich von dem, zu dem der erste Merkmalsbetrag detektiert wird, unterscheidet, während das Vorderende des Arms an der oder nahe bei der vorbestimmten Vorgabeposition positioniert ist, um einen durch den Merkmalsbetrags-Detektionsteil detektierten zweiten Merkmalsbetrag zu erhalten; und einen ersten Vorgabebewegungsbetrag des Roboters basierend auf einer Differenz zwischen dem zweiten Merkmalsbetrag und dem in dem Solldaten-Speicherteil gespeicherten ersten Merkmalsbetrag so zu berechnen, dass der zweite Merkmalsbetrag mit dem ersten Merkmalsbetrag in Bezug auf alle Visionssensoren übereinstimmt; einen Vorgabebewegungsbetrags-Anpassungsteil, der dazu eingerichtet ist, einen zweiten Vorgabebewegungsbetrag basierend auf dem ersten Vorgabebewegungsbetrag und einem aus mechanischen Eigenschaften des Roboter bestimmten Parameter zu berechnen; und einen Bewegungsanweisungsteil, der dazu eingerichtet ist, das Vorderende des Arms basierend auf dem zweiten Vorgabebewegungsbetrag anzutreiben, wobei Vorgabebewegungsbetrags-Anpassungsteil und der Bewegungsanweisungsteil dazu eingerichtet sind, die Berechnung des zweiten Vorgabebewegungsbetrags und das Antreiben des Vorderendes des Arms basierend auf dem zweiten Vorgabebewegungsbetrag zu wiederholen, bis der erste Vorgabebewegungsbetrag gleich groß oder kleiner als ein vorbestimmter Schwellenwert ist.
  • In einer bevorzugten Ausführungsform ist der Vorgabebewegungsbetrags-Anpassungsteil eingerichtet, um: den ersten Vorgabebewegungsbetrag als den zweiten Vorgabebewegungsbetrag einzusetzen, wenn der erste Vorgabebewegungsbetrag gleich groß oder höher als der aus den mechanischen Eigenschaften des Roboters bestimmte Parameter ist; und den zweiten Vorgabebewegungsbetrag als einen Wert einzusetzen, der durch Multiplizieren des ersten Vorgabebewegungsbetrags mit einem Koeffizienten erhalten wird, der niedriger als Eins ist, wenn der erste Vorgabebewegungsbetrag kleiner als der Parameter ist, der aus den mechanischen Eigenschaften des Roboters bestimmt wird.
  • In einer weiteren bevorzugten Ausführungsform ist der Vorgabebewegungsbetrag-Anpassungsteil eingerichtet, um:
    einen durch die Bewegung des Roboters erzeugten Bewegungsbetrag eines jeden beweglichen Teils des Roboters basierend auf dem ersten Vorgabebewegungsbetrag zu berechnen; und den zweiten Vorgabebewegungsbetrag basierend auf dem Bewegungsbetrag jedes beweglichen Teils zu berechnen.
  • In einer weiteren bevorzugten Ausführungsform ist der Vorgabebewegungsbetrag-Anpassungsteil eingerichtet, um: eine Leistungsverschlechterung des Roboters aufgrund einer zeitlichen Änderung einer Arbeitssituation des Roboters zu schätzen; den aus den mechanischen Eigenschaften des Roboters bestimmten Parameter basierend auf der Schätzung anzupassen; und den zweiten Vorgabebewegungsbetrag basierend auf dem ersten Vorgabebewegungsbetrag und dem angepassten Parameter zu berechnen.
  • In dem Positioniersystem können die mehreren Visionssensoren einen Merkmalsabschnitt erfassen. Ansonsten können in dem Positioniersystem die mehreren Visionssensoren jeweils mehrere Merkmalsabschnitte erfassen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die obengenannten und andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden durch die folgende Beschreibung von deren bevorzugten Ausführungsformen mit Bezug auf die beigefügten Zeichnungen deutlicher werden, wobei:
  • 1 eine Ansicht ist, die eine schematische Ausgestaltung eines Positioniersystems gemäß einer ersten Ausführungsform der vorliegenden Erfindung zeigt;
  • 2 eine Ansicht ist, die beispielhaft eine Hand eines in dem Positioniersystem von 1 umfassten Roboters und ein durch die Hand gegriffenes Objekt zeigt;
  • 3 ein Funktionsblockschaltbild des Positioniersystems von 1 ist;
  • 4 ein Ablaufdiagramm ist, das ein Beispiel eines Ablaufs zeigt, wenn das Positioniersystem von 1 in Betrieb gesetzt wird;
  • 5 ein Ablaufdiagramm ist, das ein Beispiel eines Vorgangs ist, wenn das Positioniersystem von 1 betrieben wird;
  • 6 eine Ansicht ist, die beispielhaft ein Bild eines Merkmalsabschnitts zeigt, in dem die Merkmalsposition beim Speichern von Solldaten durch eine gestrichelte Linie angezeigt wird und derselbe Merkmalsabschnitt zum aktuellen Zeitpunkt durch eine durchgezogene Linie angezeigt wird;
  • 7 eine Ansicht ist, die ein Beispiel zum Berechnen eines Vorgabebewegungsbetrags, wenn ein Fehlerbereich aufgrund eines Spiels vorhanden ist, erklärt; und
  • 8 eine Ansicht ist, die eine schematische Ausgestaltung eines Positioniersystems gemäß einer zweiten Ausführungsform der vorliegenden Erfindung zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • 1 zeigt eine schematische Ausgestaltung eines Positioniersystems (oder eines Robotersystems) 5 gemäß einer ersten Ausführungsform der vorliegenden Erfindung. Das Positioniersystem 5 umfasst einen Roboter 10 mit einem beweglichen Arm 6; einen an einem Vorderende (in der dargestellten Ausführungsform, einer Hand 11) des Arms 6 angeordneten optischen Merkmalsabschnitt; und mehrere (in der dargestellten Ausführungsform, zwei) Visionssensoren 12a und 12b, die an einem festen Platz außerhalb des Roboters 10 angeordnet sind und dazu eingerichtet sind, den Merkmalsabschnitt zu erfassen. Der Roboter 10 ist beispielsweise ein Mehrgelenkroboter mit sechs Achsen, und der Roboter 10 kann ein herkömmlicher Roboter sein.
  • Wie in 2 gezeigt ist die Hand 11 des Roboters 10 dazu eingerichtet, ein Objekt 13 zu greifen, auf dem Merkmalsabschnitte 13a und 13b ausgebildet sind. In diesem nicht eingeschränkten Beispiel ist der erste Visionssensor 12a dazu positioniert und eingerichtet, einen ersten Merkmalsabschnitt 13a zu erfassen, und der zweite Visionssensor 12b ist dazu positioniert und eingerichtet, einen zweiten Merkmalsabschnitt 13b zu erfassen. Ansonsten können Merkmalsabschnitte 13a und 13b direkt auf der Hand 11 ausgebildet werden. Die Form des Merkmalsabschnitts kann eine beliebige Form sein, solange ein durch Erfassen des Merkmalsabschnitts erhaltenes Bild angepasst wird, um verarbeitet zu werden. Bevorzugt ist der Merkmalsabschnitt ein Kreis, der in sich ein Fadenkreuz usw. umfasst, sodass die Position, die Stellung (oder der Drehwinkel) und die Größe (umgekehrt proportional zu dem Abstand zwischen dem Visionssensor und dem Merkmalsabschnitt) des Merkmalabschnitts durch die Bildverarbeitung detektiert werden können.
  • Der Roboter 10 ist mit einer Robotersteuerung 15 verbunden, die dazu eingerichtet ist, einen Roboter 10 zu steuern, und ist numerisch gesteuert, um sich an eine durch eine Robotersteuerung 15 bestimmte beliebige Position zu bewegen. Jeder der Visionssensoren 12a und 12b kann eine lichtempfangende Vorrichtung sein, die eine Funktion aufweist, ein Bild (des obengenannten Merkmalsabschnitts) zu erfassen, und durch die Visionssensoren 12a und 12b erfasste Bilder können an einen mit den Visionssensoren 12a und 12b verbundenen Bildprozessor 14 übertragen werden.
  • Die 3 ist ein Funktionsblockschaltbild des Positionssystems 5. Der Bildprozessor 14 weist einen Merkmalsbetrags-Detektionssteil 16 auf, der dazu eingerichtet ist, Merkmalsabschnitte 13a und 13b aus den jeweiligen durch die Visionssensoren 12a und 12b erfassten Bildern zu detektieren, und einen Merkmalsbetrag (oder einen Merkmalsparameter), der mindestens eines von einer Position, einer Stellung und einer Größe eines jeden der optischen Merkmalsabschnitte 13a und 13b umfasst, auf den jeweiligen Bildern zu detektieren. Des Weiteren kann der Bildprozessor 14 mit einer Robotersteuerung 15 über ein Kommunikationskabel oder durch Funk verbunden sein, um einen Befehl von der Robotersteuerung 15 zu empfangen und/oder ein Ergebnis der Bildverarbeitung zu übertragen. Obwohl der Bildprozessor 14 als eine von der Robotersteuerung 15 in den 1 und 3 getrennte Vorrichtung (z. B. ein Personal-Computer) beschrieben wird, kann der Bildprozessor 14 in der Robotersteuerung 15 als ein Prozessor usw. integriert sein.
  • In dieser Ausführungsform ist es, bevor ein Ablauf wie nachfolgend beschrieben ausgeführt wird, nicht nötig, die Visionssensoren 12a und 12b zu kalibrieren. Mit anderen Worten, es ist nicht nötig, vorab eine Positionsausrichtung zwischen einem Sensor-Koordinatensystem der Visionssensoren und einem Roboter-Koordinatensystem des Roboters 10 auszuführen. Selbstverständlich kann die Kalibrierung vorab ausgeführt werden, aber selbst in diesem Fall ist es ausreichend, dass nur eine Richtung und ein Maßstab des Roboter-Koordinatensystems relativ zu dem Sensor-Koordinatensystem in der Kalibrierung abgeklärt werden.
  • Wie in 3 gezeigt, weist die Robotersteuerung auf: einen Solldaten-Speicherteil 17, der dazu eingerichtet ist, den durch den Merkmalsbetrags-Detektionsteil 16 detektierten Merkmalsbetrag als einen ersten Merkmalsbetrag (oder Solldaten) zu speichern, während die Hand 11 an einer vorbestimmten Vorgabeposition positioniert ist; ein Roboterbewegungsbetrags-Berechnungsteil 18, der eingerichtet ist, um: die Merkmalsabschnitte 13a und 13b unter Verwendung der Visionssensoren 12a beziehungsweise 12b zu einem Zeitpunkt zu erfassen, der sich von dem, zu dem der erste Merkmalsbetrag detektiert wird, unterscheidet, während die Hand 11 an der oder nahe bei der vorbestimmten Vorgabeposition positioniert ist, um einen durch den Merkmalsbetrags-Detektionsteil 16 detektierten zweiten Merkmalsbetrag zu erhalten; und einen ersten Vorgabebewegungsbetrag des Roboters 10 basierend auf einer Differenz zwischen dem zweiten Merkmalsbetrag und dem in dem Solldaten-Speicherteil 17 gespeicherten ersten Merkmalsbetrag so zu berechnen, dass der zweite Merkmalsbetrag mit dem ersten Merkmalsbetrag in Bezug auf alle Visionssensoren übereinstimmt; einen Vorgabebewegungsbetrags-Anpassungsteil 19, der dazu eingerichtet ist, einen zweiten Vorgabebewegungsbetrag basierend auf dem ersten Vorgabebewegungsbetrag und einem aus mechanischen Eigenschaften des Roboters 10 bestimmten Parameter (wie nachfolgend erklärt) zu berechnen; und einen Bewegungsanweisungsteil 20, der dazu eingerichtet ist, die Hand 11 (oder den Roboter 10) basierend auf dem zweiten Vorgabebewegungsbetrag anzutreiben. Außerdem sind der Vorgabebewegungsbetrags-Anpassungsteil 19 und der Bewegungsanweisungsteil 20 dazu eingerichtet, die Berechnung des zweiten Vorgabebewegungsbetrags und das Antreiben der Hand 11 basierend auf dem zweiten Vorgabebewegungsbetrag zu wiederholen, bis der erste Vorgabebewegungsbetrag gleich groß oder kleiner als ein vorbestimmter Schwellenwert ist.
  • Nachfolgend wird ein Vorgang in einem Positioniersystem 5 mit Bezug auf die Ablaufdiagramme der 4 und 5 erklärt.
  • Die 4 ist ein Ablaufdiagramm, das den Vorgang zeigt, wenn das das Positioniersystem 5 umfassende Robotersystem in Betrieb gesetzt wird. Zuerst wird der Roboter 10 zu einer vorbestimmten Vorgabeposition (oder bestimmten Position 1) bewegt (Schritt S101). Dann werden die Visionssensoren 12a und 12b so positioniert, dass die auf der Hand 11 oder auf dem durch die Hand 11 gegriffenen Objekt angeordneten Merkmalsabschnitte 13a und 13b innerhalb von Sichtfeldern der Visionssensoren 12a beziehungsweise 12b positioniert sind (Schritt S102). Diesbezüglich ist es bevorzugt, dass jeder Visionssensor so positioniert und orientiert ist, dass eine optische Achse eines jeden Visionssensors im Allgemeinen senkrecht zu der Oberfläche des zu erfassenden Merkmalsabschnitts positioniert ist, wobei jedoch die vorliegende Erfindung als solches nicht beschränkt ist. Des Weiteren ist es bevorzugt, dass die Merkmalsabschnitte 13a und 13b am hauptsächlichen Zentrum der Sichtfelder der Visionssensoren 12a beziehungsweise 12b positioniert sind, wobei jedoch die vorliegende Erfindung als solches nicht beschränkt ist.
  • Als Nächstes werden die Merkmalsabschnitte 13a und 13b jeweils durch die Visionssensoren 12a und 12b erfasst, um Bilder der Merkmalsabschnitte zu erhalten, und die Bilder der Merkmalsabschnitte 13a und 13b werden als Modelldaten eingelernt (Schritt S103). Diesbezüglich hängt ein Informationstyp, der als Modelldaten gespeichert werden soll, von einem Algorithmus der Bildverarbeitung zum Detektieren der Merkmalsabschnitte 13a und 13b aus den Bildern ab. In dieser Ausführungsform kann ein beliebiger Algorithmus der Bildverarbeitung verwendet werden, beispielsweise kann ein herkömmliches Verfahren, wie ein Schablonenabgleich unter Verwendung von normierter Korrelation oder einen generalisierten Hough-Transformation unter Verwendung von Kanteninformation, verwendet werden. Wenn der Schablonenabgleich durch normierte Korrelation verwendet wird, entspricht die Schablone den Modelldaten.
  • Abschließend werden durch Verwenden der eingelernten Modelldaten die Merkmalsabschnitte 13a und 13b aus den Bildern detektiert, und ein erster Merkmalsbetrag, der mindestens eines von der Position, der Stellung und der Größe der detektierten jeweiligen Merkmalsabschnitte auf den Bildern umfasst, wird als Solldatenwert im Solldaten-Speicherteil 17 gespeichert (Schritt S104). Wenn beispielsweise der Schablonenabgleich als der Algorithmus der Bildverarbeitung verwendet wird, werden die Mittenposition, der Drehwinkel und das Vergrößerungs-/Verkleinerungsverhältnis mit dem höchsten Grad an Übereinstimmung als die Solldaten gespeichert. Als solches speichert der Sollspeicherteil 17 den ersten Merkmalsbetrag mit Bezug auf beide Merkmalsabschnitte 13a und 13b. Außerdem speichert die Robotersteuerung 15 die Position des Roboters 10 in der Steuerung, wenn das Speichern der Solldaten als Vorgabeposition 1 in einem angemessenen Speicher gespeichert wird.
  • Als Nächstes ist 5 ein Ablaufdiagramm, das den Vorgang zeigt, wenn das das Positioniersystem 5 umfassende Robotersystem betrieben wird. Zuerst wird in Schritt S201 der Roboter 10 an eine Position bewegt, die zu einem Zeitpunkt, ab dem die Zieldaten in Schritt S104 von 4 gespeichert werden (d. h., wenn der erste Merkmalsbetrag detektiert wird), dieselbe wie oder nahe der wie oben beschrieben Vorgabeposition 1 ist. Diesbezüglich bedeutet der Ausdruck „(die Position) nahe der Vorgabeposition” eine Position, die nicht präzise mit der Vorgabeposition 1 übereinstimmt, sondern an der Position sind die Merkmalsabschnitte 13a und 13b in den jeweiligen Sichtfeldern der Visionssensoren 12a und 12b positioniert, und die Stellung des Roboters 10 ist dieselbe wie die Stellung des Roboters 10, wenn die Solldaten gespeichert werden.
  • Selbst wenn der Roboter 10 präzise an oder nahe an die Vorgabeposition 1 in der Steuerung bewegt wird, kann es sein, dass der Roboter 10 aufgrund eines Fehlerfaktors in Bezug auf jeden Abschnitt des Roboters 10, wie eine Wärmeverformung aufgrund einer Temperaturänderung, einer Auswirkung eines Zahnspiels, einer zeitlichen Änderung aufgrund einer Abnutzung und einer Auswirkung einer externen Kraft (wenn ein elastisches Objekt positioniert wird, während das Objekt verformt wird, wird der Roboter einer externen Kraft ausgesetzt) usw., nicht genau an die Position (bestimmte Position 1) bewegt wird, die tatsächlich der Vorgabeposition 1 entspricht.
  • Als Nächstes werden die Merkmalsabschnitte 13a und 13b jeweils durch die Visionssensoren 12a und 12b erfasst, um Bilder der Merkmalsabschnitte zu erhalten, und die Merkmalsabschnitte 13a und 13b werden aus den Bildern detektiert (Schritt S202). Dasselbe Mittel oder Verfahren wie in Schritt S104 kann als der Algorithmus der Bildverarbeitung verwendet werden, um einen zweiten Merkmalsbetrag (oder den aktuellen Merkmalsbetrag) zu berechnen, der mindestens eines von der Position, der Stellung und der Größe jedes Merkmalsabschnitts auf dem Bild umfasst.
  • Als Nächstes wird in Schritt S203 ein erster Vorgabebewegungsbetrag des Roboters berechnet, aufgrund dessen der Roboter 10 an eine Position bewegt wird, an der der zweite (aktuelle) Merkmalsbetrag mit dem als Zieldatenwert gespeicherten ersten Merkmalsbetrag übereinstimmt. Ein konkretes Beispiel des Vorgangs in Schritt S203 wird nachfolgend beschrieben.
  • Als Nächstes wird beurteilt, ob die aktuelle Roboterposition die bestimmte Position 1 erreicht oder nicht (Schritt S204). Konkret wird der in Schritt S203 berechnete erste Vorgabebewegungsbetrag mit einem vorbestimmten Schwellenwert verglichen, und dann, wenn der erste Vorgabebewegungsbetrag gleich groß wie oder kleiner als der Schwellenwert ist, kann beurteilt werden, dass der Roboter 10 die bestimmte Position 1 erreicht hat. Wenn beispielsweise der Schwellenwert auf 0,5 m eingestellt ist, kann beurteilt werden, dass der Roboter 10 die bestimmte Position 1 erreicht hat, wenn der erste Vorgabebewegungsbetrag kleiner als 0,5 mm ist. Diesbezüglich ist es bevorzugt, dass der Schwellenwert so bestimmt wird, dass der Roboter an der Sollposition mit einer Genauigkeit positioniert werden kann, die höher als die Positionsgenauigkeit ist, mit der der Roboter selbst ausgestattet ist.
  • Wenn der Roboter in Schritt S205 die bestimmte Position 1 nicht erreicht, wird durch Anpassen des in Schritt S203 berechneten ersten Vorgabebewegungsbetrags ein zweiter Vorgabebewegungsbetrag berechnet, und dann wird der Roboter 10 basierend auf den zweiten Vorgabebewegungsbetrag bewegt (Schritt S206). Danach kehrt der Vorgang zu Schritt S202 zurück und derselbe Ablauf wird wiederholt. Ein konkretes Beispiel des Ablaufs in Schritt S206 wird nachfolgend erklärt.
  • Wenn andererseits beurteilt wird, dass der Roboter 10 die bestimmte Position 1 in Schritt S204 erreicht hat, kann davon ausgegangen werden, dass der Roboter 10 präzise positioniert ist und daher die Vorgangs- und Bewegungsreihe abgeschlossen ist.
  • Nachfolgend werden zwei konkrete Beispiele von Berechnungsverfahren in Schritt S203 erklärt, in denen der erste Vorgabebewegungsbetrag basierend auf dem aus dem Bild und dem als Solldatenwert im Solldatenspeicher 17 gespeicherten ersten Merkmalsbetrag erhaltenen aktuellen (zweiten) Merkmalsbetrag berechnet wird, damit die Position des Roboters 10 mit der bestimmten Position 1 übereinstimmt. Obwohl diese Verfahren den Visionssensor 12a betreffen, gilt dasselbe auch für den Visionssensor 12b, und daher wird eine Erklärung des Visionssensor 12b weggelassen.
  • Das erste Beispiel ist ein Verfahren zum Ausrichten des Sensor-Koordinatensystems auf das Roboter-Koordinatensystems (d. h. Kalibration). Als ein Beispiel eines Dokuments, das eine Einzelheit der Kalibration des Visionssensor beschreibt, kann „Roger Y. Tsai, „An efficient and accurate camera calibration technique for 3D machine vision", Proc. Computer Vision and Pattern Recognition '86, Seiten 368–374, 1986” verwendet werden.
  • 6 veranschaulicht, dass in Schritt S203 das Bild des Merkmalsabschnitts 13a beim Speichern der Solldaten (Schritt S104) durch eine gestrichelte Linie 21 angezeigt wird und das Bild des Merkmalsabschnitt 13a zur aktuellen Zeit (Schritt S202) durch eine durchgezogene Linie 22 angezeigt wird. Wenn diesbezüglich die Position des Merkmalsabschnitts auf dem Sensor-Koordinatensystem als (u, v) dargestellt wird, entspricht ein Wert Δu einer Positionsdifferenz des Bildes in der Längsrichtung, und ein Wert Δv entspricht einer Positionsdifferenz des Bildes in der Querrichtung. Durch Kalibrieren des Sensors 12a unter Verwendung des in dem obengenannten Dokument beschriebenen Verfahrens kann die Position (u, v) auf dem Sensor-Koordinatensystem des Visionssensors 12a in die Position (x, y, z) auf dem Roboter-Koordinatensystem des Roboters 10 umgewandelt werden.
  • Im Einzelnen werden die aktuelle Position (u, v) des Merkmalsabschnitts 13a auf dem Bild und die als die Zieldatenwert gespeicherte Position (u0, v0) des Merkmalsabschnitts 13a auf dem Bild in die Position (x, v, z) beziehungsweise die Position (x0, y0, z0) auf dem Koordinatensystem des Roboters 10 umgewandelt. Wenn in diesem Fall ein zu berechnender Vorgabebewegungsbetrag des Roboters als (Δx, Δy, Δz) dargestellt wird, können Δx, Δy, Δz durch die folgenden Gleichungen (1), (2) beziehungsweise (3) definiert werden. Δx = x0 – x (1) Δy = y0 – y (2) Δz = z0 – z (3)
  • Mittels der Gleichungen (1) bis (3) kann der Vorgabebewegungsbetrag (Δx, Δy, Δz) des Roboters 10 berechnet werden, durch den die Position des Roboters 10 mit der bestimmten Position 1 übereinstimmt.
  • Das zweite Beispiel ist ein Verfahren unter Verwendung einer Jacobi-Matrix. In diesem Verfahren wird der Vorgabebewegungsbetrag des Roboters zum Angleichen der Roboterposition an die bestimmte Position 1 basierend auf einer Differenz zwischen dem zweiten Merkmalsbetrag des detektierten Merkmalsabschnitts 13a und dem als Zieldatenwert gespeicherten ersten Merkmalsbetrag berechnet. Wenn, wie in 6 veranschaulicht, die Position des Merkmalsabschnitts auf dem Visionssensor-Koordinatensystem als (u, v) dargestellt ist, entspricht der Wert Δu der Positionsdifferenz des Bildes in der Längsrichtung und der Wert Δv entspricht einer Positionsdifferenz des Bildes in der Querrichtung, wie oben beschrieben.
  • Im zweiten Beispiel wird ein Merkmalsbetrag einer sichtbaren Größe auf dem Bild als „s” dargestellt. Beispielsweise kann bei dem Schablonenabgleich die Größe der Schablone als 100% (= 1,0) bestimmt werden. Wenn in diesem Fall die sichtbare Größe des Objekts größer als die Schablone ist, dann ist „s” höher als 1,0, und wenn andererseits die sichtbare Größe des Objekts kleiner als die Schablone ist, dann ist „s” kleiner als 1.
  • Wenn, als Nächstes, der als der Solldatenwert gespeicherte erste Merkmalsbetrag als (u0, v0, s0) dargestellt wird und der in Schritt S202 erhaltene zweite Merkmalsbetrag als (u1, v1, s1) dargestellt wird, dann kann eine Differenz zwischen den Merkmalsbeträgen durch die folgenden Gleichungen (4) bis (6) definiert werden. Da diesbezüglich der Merkmalsbetrag „s” der sichtbaren Größe auf dem Bild umgekehrt proportional zu dem Abstand zwischen dem Visionssensor 12a und der Oberseite des Objekts 13 mit dem darauf befindlichen Merkmalsabschnitt 13a ist, wird ein Kehrwert von „s” verwendet, um einen zu dem Abstand proportionalen Wert zu erhalten. Δu = u1 – u0 (4) Δv = v1 – v0 (5)
    Figure DE102017002608A1_0002
  • Wenn dann der zu berechnende Vorgabebewegungsbetrag des Roboters als (Δx, Δy, Δz) dargestellt wird, dann wird die Jacobi-Matrix durch die folgende Gleichung (7) definiert.
  • Figure DE102017002608A1_0003
  • Als Nächstes wird ein Verfahren zum Berechnen der Jacobi-Matrix erklärt. Zuerst wird, wenn der Merkmalsabschnitt 13a am oder nahe am Zentrum des Bildes positioniert ist, die Position des Roboters an diesem Punkt als eine Ursprungsposition bestimmt. Dann wird der Merkmalsabschnitt 13a aus dem durch den Visionssensor erhaltenen Bild detektiert, während der Roboter 10 an der Ursprungsposition positioniert ist, und der erhaltene Merkmalsbetrag wird als (u0, v0, s0) dargestellt. Als Nächstes wird der Roboter 10 von der Ursprungsposition um eine Strecke „m” in der X-Richtung des wie in 1 veranschaulichten orthogonalen Koordinatensystems bewegt, der Merkmalsabschnitt 13a wird aus dem durch den Visionssensor 12a nach der Bewegung erhaltenen Bild detektiert, und der erhaltene Merkmalsbetrag wird als (ux, vx, sx) dargestellt. In ähnlicher Weise wird der Roboter 10 von der Ursprungsposition um eine Strecke „m” in der Y-Richtung des orthogonalen Koordinatensystems bewegt, der Merkmalsabschnitt 13a wird aus dem durch den Visionssensor 12a nach der Bewegung erhaltenen Bild detektiert, und der erhaltene Merkmalsbetrag wird als (uy, vy, sy) dargestellt. Des Weiteren wird der Roboter 10 von der Ursprungsposition um eine Strecke „m” in der Z-Richtung des orthogonalen Koordinatensystems bewegt, der Merkmalsabschnitt 13a wird nach der Bewegung aus dem durch den Visionssensor 12a erhaltenen Bild detektiert, und der erhaltene Merkmalsbetrag wird als (uz, vz, sz) dargestellt. Außerdem ist das Koordinatensystem zum Darstellen des Vorgabebewegungsbetrags nicht auf das wie in 1 gezeigte orthogonale Koordinatensystem beschränkt und es kann stattdessen ein anderes Koordinatensystem verwendet werden.
  • Basierend auf dem obengenannten Detektionsergbebnis des Merkmalsabschnitts 13a nach dem Bewegen des Roboters in der X-, Y- und Z-Richtung und dem Detektionsergebnis des Merkmalsabschnitts 13a an der Ursprungsposition können Δu, Δv und Δs durch die folgenden Gleichungen (8) bis (16) definiert werden.
  • Figure DE102017002608A1_0004
  • Figure DE102017002608A1_0005
  • Durch Einsetzen der Gleichungen (8) bis (16) in die Gleichung (7), werden die folgenden Gleichungen (17) und (18) zum Berechnen der Jacobi-Matrix J erhalten.
  • Figure DE102017002608A1_0006
  • Nachdem die Jacobi-Matrix J berechnet ist, kann durch Einsetzen eines beliebigen Merkmalsbetrags (u, v, s) des Merkmalsabschnitts 13a in die Gleichung (7) der Vorgabebewegungsbetrag (Δx, Δy, Δz) des Roboters, durch den die Position des Roboters 10 mit der bestimmten Position 1 übereinstimmt, berechnet werden.
  • Da sich der Roboter 10 schrittweise der bestimmte Position 1 annähert ist es nicht notwendig, den Vorgabebewegungsbetrag präzise zu berechnen. Daher ist es vorteilhaft, das Verfahren unter Verwendung der Jacobi-Matrix auf diese Ausführungsform anzuwenden.
  • Nachfolgend wird ein Beispiel eines Berechnungsverfahrens in Schritt S205 von 5 erklärt, in dem der zweite Vorgabebewegungsbetrag durch Anpassen des in Schritt S203 erhaltenen ersten Vorgabebewegungsbetrags basierend auf einem aus mechanischen Eigenschaften des Roboters 10 bestimmten Parameter berechnet wird. In diesem Beispiel wird ein Zahnspiel als die mechanische Eigenschaft des Roboters 10 berücksichtigt.
  • Im Allgemeinen ist das Spiel in jedem beweglichen Teil des Roboters 10 vorhanden und kann abhängig von der auf den Roboter ausgeübten Schwerkraft schwanken. Daher ist es aufgrund des Zahnspiels schwierig, einen am Vorderende (Hand 11) des Roboters 10 aufgetretenen Fehler geometrisch zu berechnen. Angesichts des oben genannten Hintergrunds wird zuerst durch Berücksichtigen des Zustands jedes beweglichen Teils des Roboters 10 und der Stellung des Roboters 10 ein Fehlerbereich der Position des Vorderendes des Arms des Roboters 10 aufgrund des Spiels zusammengefasst berechnet. Der berechnete Fehlerbereich entspricht dem durch die mechanischen Eigenschaften des Roboters bestimmten Parameter. In diesem Beispiel wird der Parameter als ein erster Parameter bezeichnet.
  • Als Nächstes berechnet der Vorgabebewegungsbetrags-Anpassungsteil 19 basierend auf dem obengenannten ersten Parameter und dem in Schritt S203 berechneten ersten Vorgabebewegungsbetrag den zweiten Vorgabebewegungsbetrag (Schritt S205). Konkret wird, wenn der erste Vorgabebewegungsbetrag nicht innerhalb des Fehlerbereichs des Vorderendes des Arms liegt, der erste Vorgabebewegungsbetrag als der zweite Vorgabebewegungsbetrag bestimmt. Wenn andererseits der erste Vorgabebewegungsbetrag nicht innerhalb des Fehlerbereichs des Vorderendes des Arms liegt, wird ein durch Multiplizieren des ersten Vorgabebewegungsbetrags mit einem Koeffizienten, der kleiner als Eins ist, als der zweite Vorgabebewegungsbetrag bestimmt, sodass das Vorderende des Arms des Roboters 10 bewegt wird, während dessen Bewegungsbetrag begrenzt wird. Eine Einzelheit des Schritts S205 wird nachfolgend erklärt.
  • Die 7 erklärt ein Beispiel zum Berechnen des zweiten Vorgabebewegungsbetrags, wenn aufgrund des Zahnspiels ein bestimmter Fehler vorliegt. Wenn der Roboter 10 bewegt wird, greifen im Allgemeinen mehrere Zahnräder ineinander ein und werden um einen dem Vorgabebewegungsbetrag entsprechenden Winkel (Betrag) gedreht. In dem Beispiel von 7 greifen in einem beweglichen Teil des Roboters 10 die Zahnräder A und B ineinander ein, und das Zahnrad B wird entgegen dem Uhrzeigersinn gedreht (oder angetrieben), indem das Zahnrad im Uhrzeigersinn gedreht (oder angetrieben) wird.
  • Wenn der erste Vorgabebewegungsbetrag größer als der erste Parameter ist (wenn beispielsweise der erste Bewegungsbetrag das Zahnrad B von der aktuellen Position B1 zur Position B3 gedreht werden soll), kann das Zahnrad A um den Vorgabebewegungsbetrag gedreht werden, während es mit dem Zahnrad B in Eingriff ist. Daher kann der erste Vorgabebewegungsbetrag, ohne geändert zu werden, als der zweite Vorgabebewegungsbetrag bestimmt werden.
  • Wenn andererseits der erste Vorgabebewegungsbetrag kleiner als der erste Parameter ist (zum Beispiel, wenn der erste Vorgabebewegungsbetrag das Zahnrad B von der aktuellen Position B1 zur Position B2 relativ nahe zur Position B1 drehen soll) kann das Zahnrad B die Position B2 überlaufen, wenn das Zahnrad B um den Vorgabebewegungsbetrag gedreht wird, während es im vollen Eingriff mit dem Zahnrad A ist, wodurch der Roboter nicht präzise an der bestimmten Position 1 positioniert werden kann. Daher kann in einem solchen Fall durch Setzen des zweiten Vorgabebewegungsbetrags auf den Wert, der durch Multiplizieren des ersten Vorgabebewegungsbetrags mit dem Koeffizienten, der kleiner als Eins ist, erhaltenen wird, das Zahnrad B schrittweise um eine kleine Strecke bewegt werden, wodurch das Zahnrad B von der Position B1 zu B2 ohne Überlaufen von B2 gedreht werden kann.
  • Durch Bewegen des Vorderendes des Arms des Roboters 10 durch das obengenannte Verfahren kann sich die Roboterposition effizient der bestimmten Position 1 annähern.
  • Obwohl das Zahnspiel in dem Beispiel von 7 erklärt wird, ist die vorliegende Erfindung als solche nicht eingeschränkt. Beispielsweise kann das Positioniersystem der Ausführungsform in ähnlicher Weise auf ein System zum Korrigieren eines mechanischen Spiels, wie einen Totgang, des Roboters angewendet werden.
  • Als ein weiterer Vorgang kann in Schritt S205 der Vorgabebewegungsbetrags-Anpassungsteil 19 einen durch Bewegen des Roboters 10 erzeugten Bewegungsbetrag eines jeden beweglichen Teils des Roboters 10 basierend auf dem ersten Vorgabebewegungsbetrag berechnen und kann dann den zweiten Vorgabebewegungsbetrag basierend auf dem berechneten Bewegungsbetrag eines jeden beweglichen Teils berechnen. Konkret kann der Bewegungsbetrag (Drehung) eines jeden beweglichen Teils basierend auf der Differenz (oder Verschiebung) (Schritt S202) des Vorderendes des Arms des Roboters 10 berechnet werden, und der zweite Vorgabebewegungsbetrag für das Vorderende des Roboterarms kann durch inverses Umwandeln des Bewegungsbetrags nach Multiplizieren des Bewegungsbetrags mit einem notwendigen Koeffizienten berechnet werden.
  • Als noch ein weiterer Vorgang kann in Schritt S205 der Vorgabebewegungsbetrags-Anpassungsteil 19: eine Leistungsverschlechterung des Roboters 10 aufgrund einer zeitlichen Änderung von einer Arbeitssituation des Roboters schätzen; den aus den mechanischen Eigenschaften des Roboters 10 bestimmten Parameter basierend auf der Schätzung anpassen; und den zweiten Vorgabebewegungsbetrag basierend auf dem ersten Vorgabebewegungsbetrag und dem angepassten Parameter berechnen. Konkret kann ein Vergrößerungsbetrags des Zahnspiel aufgrund der zeitlichen Änderung aus den periodisch gespeicherten Daten usw. geschätzt werden, der erste Parameter kann um den geschätzten Vergrößerungsbetrag geändert werden, und der zweite Vorgabebewegungsbetrag kann basierend auf dem ersten Vorgabebewegungsbetrag und dem geänderten ersten Parameter berechnet werden.
  • In dieser Ausführungsform ist das Ziel des Positionierens abhängig davon, was als Merkmalsbetrag des Merkmalsabschnitts 13a verwendet wird, unterschiedlich. Wenn beispielsweise die Position auf dem Bild als der Merkmalsbetrag verwendet wird, kann die Position auf einer Ebene, auf der der Merkmalsabschnitt 13a angeordnet ist, bestimmt werden. Wenn die Stellung auf dem Bild als der Merkmalsbetrag verwendet wird, kann der Drehwinkel auf der Ebene bestimmt werden. Wenn des Weiteren die Größe auf dem Bild als der Merkmalsbetrag verwendet wird, kann die Höhe ab der Ebene in einer senkrechten Richtung derselben bestimmt werden.
  • Der Vorgang wie in Schritt S203 und S205 kann in Bezug auf den Visionssensor 12b, ähnlich wie beim Visionssensor 12a, ausgeführt werden. Dann werden die in dem Solldaten-Speicherteil 17 gespeicherten zwei Sätze von (ersten) Merkmalsbeträgen der Merkmalsabschnitte 13a und 13b jeweils mit den zwei Sätzen der aktuellen (zweiten) Merkmalsbeträge 13a und 13b verglichen, um Unterschiede zwischen ihnen zu erhalten, und der erste Vorgabebewegungsbetrag des Roboters 10 wird basierend auf den Unterschieden berechnet.
  • Der erste Vorgabebewegungsbetrag (Δx, Δy, Δz) des Roboters 10 wird durch die folgenden Gleichungen (19) bis (21) dargestellt, wobei der aus dem Merkmalsbetrag des Merkmalsabschnitts 13a berechnete erste Bewegungsbetrag als (Δxa, Δya, Δza) dargestellt wird und der aus dem Merkmalsbetrag des Merkmalsabschnitts 13b berechnete erste Bewegungsbetrag als (Δxb, Δyb, Δzb) dargestellt wird. Δx = Δxa (19) Δy = Δya (20) Δz = Δzb (21)
  • Die Gleichungen (19) bis (21) entsprechen einem Verfahren zum Berechnen des ersten Vorgabebewegungsbetrags, wenn die Visionssensoren 12a und 12b wie in 1 angeordnet sind. Mit anderen Worten, das Positionieren des Roboters 10 in der X- und Y-Richtung wird durch Verwenden des Visionssensors 12a und des Merkmalsabschnitts 13a ausgeführt, und die Positionierung des Roboters 10 in der Z-Richtung wird durch Verwenden des Visionssensors 12b und des Merkmalsabschnitts 13b ausgeführt.
  • In dem Beispiel von 1 ist die Detektionsrichtung des Visionssensors 12a rechtwinklig zur X-Y-Ebene und somit kann eine hochempfindliche Messung in der X- und Y-Richtung ausgeführt werden. Da des Weiteren die Detektionsrichtung des Visionssensors 12b rechtwinklig zur Y-Z-Ebene ist, kann eine hochempfindliche Messung in der Y- und Z-Richtung ausgeführt werden. Als solches kann durch Verwenden der mehreren Visionssensoren eine hochempfindliche Messung in allen X-, Y- und Z-Richtungen ausgeführt werden. Die vorliegende Erfindung ist jedoch nicht auf ein solches Beispiel beschränkt, und die Sensoren können sich an den anderen Position befinden und/oder können so ausgerichtet sein, dass sie die anderen Stellungen darstellen, sodass eine hochempfindliche Messung in allen Richtungen ausgeführt werden kann.
  • Die 8 zeigt eine schematische Konfiguration eines Positionssystems (oder eines Robotersystems) gemäß einer zweiten Ausführungsform der vorliegenden Erfindung. Obwohl die Grundkonfiguration der zweiten Ausführungsform dieselbe sein kann wie die erste Ausführungsform, unterscheidet sich die zweite Ausführungsform von der ersten Ausführungsform dadurch, dass die Visionssensoren 12a und 12b auf der Hand 11 des Roboters 10 angeordnet sind und die Merkmalsabschnitte 13a und 13b an festen Positionen außerhalb des Roboters 10 angeordnet sind.
  • Die zweite Ausführungsform unterscheidet sich von der ersten Ausführungsform dadurch, dass in Schritt S102 des Vorgangs zum Hochfahren des Robotersystems (4) die Merkmalsabschnitte 13a und 13b (nicht die Visionssensoren 12a und 12b) so positioniert werden, dass die Merkmalsabschnitte 13a und 13b durch die Visionssensoren 12a beziehungsweise 12b erfasst werden. Da der andere Vorgang der zweiten Ausführungsform derselbe wie bei der ersten Ausführungsform sein kann, wird auf eine ausführliche Erklärung desselben verzichtet.
  • In allen der obengenannten Ausführungsformen werden die mehreren Merkmalsabschnitte jeweils durch mehrere Visionssensoren erfasst. Ein Merkmal kann jedoch von unterschiedlichen Position oder Winkeln aus erfasst werden, indem die mehreren Visionssensoren verwendet werden. Konkret können zwei Visionssensoren als eine Stereokamera verwendet werden, und ein Merkmalsabschnitt kann durch die Stereokamera gemessen werden.
  • In der obengenannten Ausführungsform ist der optische Merkmalsabschnitt am Vorderende des Roboterarms angeordnet, und der Merkmalsabschnitt wird durch die an den festen Plätzen außerhalb des Roboters angeordneten Visionssensoren gemessen. Alternativ sind die Visionssensoren am Vorderende des Roboterarms positioniert, und der an dem festen Platz außerhalb des Roboters angeordnete optische Merkmalsabschnitt wird durch die Visionssensoren gemessen. Als Nächstes wird, während der Roboter an der bestimmten Position positioniert ist, die Position des auf jedem Bild eines jeden Visionssensors betrachteten Merkmalsabschnitts als der Solldatenwert gespeichert. Wenn die Position des auf dem aktuellen Bild des Visionssensors betrachteten Merkmalsabschnitts dieselbe wie die in den Solldaten gespeicherte Position ist, kann davon ausgegangen werden, dass der Roboter physisch an der bestimmten Position positioniert ist. Daher kann durch Steuern des Roboters derart, dass die Position des auf dem Bild des Visionssensors betrachtete Merkmalsposition dieselbe wie die als Solldatenwert gespeicherte Position ist, das Vorderende des Roboterarms an der bestimmten Position positioniert werden.
  • In vielen Fällen wird der Roboterarm über ein Untersetzungsgetriebe angetrieben, und das Untersetzungsgetriebe weist ein Zahnspiel auf. In diesem Fall wird selbst dann, wenn der Vorgabebewegungsbetrag präzise berechnet ist, sodass die Position des auf dem Bild des Visionssensors betrachteten Merkmalsabschnitts dieselbe wie die als Solldatenwert gespeicherte Position ist, das Vorderende des Roboterarms nicht immer um den Vorgabebewegungsbetrag physisch bewegt. Daher kann das Vorderende des Roboterarms durch Anpassen des Vorgabebewegungsbetrags basierend auf dem aus den mechanischen Eigenschaften des Roboters, wie der Breite (dem Bereich) des Zahnspiels, bestimmten Parameter präzise an der bestimmten Position positioniert werden, ohne das Vorderende des Roboterarms durch den unangepassten Vorgabebewegungsbetrag zu bewegen.
  • Des Weiteren kann durch Wiederholen der oben genannten Steuerung (d. h. Berechnen des Bewegungsbetrags des Vorderendes des Roboterarms derart, dass die Position des auf dem Bild des Visionssensors betrachteten Merkmalsabschnitts dieselbe wie die als Solldatenwert gespeicherte Position ist; Anpassen des berechneten Bewegungsbetrags durch den aus der mechanischen Eigenschaft des Roboters bestimmten Parameter; und tatsächliches Bewegen des Roboters basierend auf dem angepassten Bewegungsbetrag), bis der berechnete Vorgabebewegungsbetrag gleich groß wie oder kleiner als ein vorbestimmter Schwellenwert wird, das Vorderende des Roboterarms sich schrittweise der bestimmten Position annähern. Da sich der Roboter schrittweise der bestimmten Position annähern kann, ist es nicht notwendig, dass der berechnete Vorgabebewegungsbetrag ein präziser Wert ist. Dies bedeutet, dass selbst dann, wenn der Visionssensor nicht genau kalibriert ist, der Roboter an der bestimmten Position mit der Genauigkeit positioniert werden, die höher als die dem Roboter eigene Positioniergenauigkeit ist, und dass der Roboter als ein hochgenaues Positioniersystem verwendet werden kann, ohne von verschiedenen Fehlerfaktoren des Roboters abzuhängen.
  • Gemäß der vorliegenden Erfindung können durch Nutzen der optischen Rückmeldung und Anpassen des Bewegungsbetrags durch den aus den mechanischen Eigenschaften des Roboters bestimmten Parameter die Fehlerfaktoren des Roboters (wie Wärmeverformung aufgrund einer Temperaturänderung, eine Auswirkung eines Zahnspiels, falsche Positionsausrichtung aufgrund einer externen Kraft und eine zeitliche Änderung aufgrund von Abnutzung) reduziert oder eliminiert werden, ohne davon abzuhängen, ob die Kalibrierung ausgeführt wird oder nicht, während eine Bedienperson keine Nachbesserung berücksichtigen muss. Daher kann der Roboter als ein hochgenaues Positioniersystem mit der Genauigkeit, die höher als die dem Roboter eigene Positioniergenauigkeit ist, verwendet werden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 3702257 B [0003, 0007]
    • JP 2015-150636 A [0004, 0008]
  • Zitierte Nicht-Patentliteratur
    • Roger Y. Tsai, „An efficient and accurate camera calibration technique for 3D machine vision”, Proc. Computer Vision and Pattern Recognition '86, Seiten 368–374, 1986 [0042]

Claims (6)

  1. Positioniersystem, umfassend: einen Roboter (10) mit einem beweglichen Arm (6); einen optischen Merkmalsabschnitt (13a, 13b), der an einem von einem Vorderende des Arms oder einer festen Position außerhalb des Roboters bereitgestellt ist; mehrere Visionssensoren (12a, 12b), die an dem anderen von dem Vorderende des Arms oder der festen Position außerhalb des Roboters bereitgestellt sind und dazu eingerichtet sind, den optischen Merkmalsabschnitt zu erfassen; einen Merkmalsbetrags-Detektionsteil (16), der dazu eingerichtet ist, einen Merkmalsbetrag, der mindestens eines von einer Position, einer Stellung und einer Größe des optischen Merkmalsabschnitts umfasst, auf einem durch die mehreren Visionssensoren erfassten Bild zu detektieren; einen Solldaten-Speicherteil (17), der dazu eingerichtet ist, den durch den Merkmalsbetrags-Detektionsteil detektierten Merkmalsbetrag als einen ersten Merkmalsbetrag zu speichern, während das Vorderende des Arms an einer vorbestimmten Vorgabeposition positioniert ist; einen Roboterbewegungsbetrags-Berechnungsteil (18), der eingerichtet ist, um: den Merkmalsabschnitt unter Verwendung der Visionssensoren zu einem Zeitpunkt zu erfassen, der sich von dem, zu dem der erste Merkmalsbetrag detektiert wird, unterscheidet, während das Vorderende des Arms an der oder nahe bei der vorbestimmten Vorgabeposition positioniert ist, um einen durch den Merkmalsbetrags-Detektionsteil detektierten zweiten Merkmalsbetrag zu erhalten; und einen ersten Vorgabebewegungsbetrag des Roboters basierend auf einer Differenz zwischen dem zweiten Merkmalsbetrag und dem in dem Solldaten-Speicherteil gespeicherten ersten Merkmalsbetrag so zu berechnen, dass der zweite Merkmalsbetrag mit dem ersten Merkmalsbetrag in Bezug auf alle Visionssensoren übereinstimmt; einen Vorgabebewegungsbetrags-Anpassungsteil (19), der dazu eingerichtet ist, einen zweiten Vorgabebewegungsbetrag basierend auf dem ersten Vorgabebewegungsbetrag und einem aus mechanischen Eigenschaften des Roboters bestimmten Parameter zu berechnen; und einen Bewegungsanweisungsteil (20), der dazu eingerichtet ist das Vorderende des Arms basierend auf dem zweiten Vorgabebewegungsbetrag anzutreiben, wobei der Vorgabebewegungsbetrags-Anpassungsteil und der Bewegungsanweisungsteil dazu eingerichtet sind, die Berechnung des zweiten Vorgabebewegungsbetrags und das Antreiben des Vorderendes des Arms basierend auf dem zweiten Vorgabebewegungsbetrag zu wiederholen, bis der erste Vorgabebewegungsbetrag gleich groß oder kleiner als ein vorbestimmter Schwellenwert ist.
  2. Positioniersystem nach Anspruch 1, dadurch gekennzeichnet, dass der Vorgabebewegungsbetrags-Anpassungsteil eingerichtet ist, um: den ersten Vorgabebewegungsbetrag als den zweiten Vorgabebewegungsbetrag einzusetzen, wenn der erste Vorgabebewegungsbetrag gleich groß oder höher als der aus den mechanischen Eigenschaften des Roboters bestimmte Parameter ist; und den zweiten Vorgabebewegungsbetrag als einen Wert einzusetzen, der durch Multiplizieren des ersten Vorgabebewegungsbetrags mit einem Koeffizienten erhalten wird, der niedriger als Eins ist, wenn der erste Vorgabebewegungsbetrag kleiner als der Parameter ist, der aus den mechanischen Eigenschaften des Roboters bestimmt wird.
  3. Positioniersystem nach Anspruch 1, dadurch gekennzeichnet, dass der Vorgabebewegungsbetrags-Anpassungsteil eingerichtet ist, um: einen durch die Bewegung des Roboters erzeugten Bewegungsbetrag eines jeden beweglichen Teils des Roboters basierend auf dem ersten Vorgabebewegungsbetrag zu berechnen; und den zweiten Vorgabebewegungsbetrag basierend auf dem Bewegungsbetrag jedes beweglichen Teils zu berechnen.
  4. Positioniersystem nach Anspruch 1, dadurch gekennzeichnet, dass der Vorgabebewegungsbetrags-Anpassungsteil eingerichtet ist, um: eine Leistungsverschlechterung des Roboters aufgrund einer zeitlichen Änderung einer Arbeitssituation des Roboters zu schätzen; den aus den mechanischen Eigenschaften des Roboters bestimmten Parameter basierend auf der Schätzung anzupassen; und den zweiten Vorgabebewegungsbetrag basierend auf dem ersten Vorgabebewegungsbetrag und dem angepassten Parameter zu berechnen.
  5. Positioniersystem nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die mehreren Visionssensoren einen Merkmalsabschnitt erfassen.
  6. Positioniersystem nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die mehreren Visionssensoren jeweils mehrere Merkmalsabschnitte erfassen.
DE102017002608.4A 2016-03-25 2017-03-17 Positioniersystem unter Verwendung eines Roboters Active DE102017002608B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016062884A JP6430986B2 (ja) 2016-03-25 2016-03-25 ロボットを用いた位置決め装置
JP2016-062884 2016-03-25

Publications (2)

Publication Number Publication Date
DE102017002608A1 true DE102017002608A1 (de) 2017-09-28
DE102017002608B4 DE102017002608B4 (de) 2020-10-29

Family

ID=59814602

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017002608.4A Active DE102017002608B4 (de) 2016-03-25 2017-03-17 Positioniersystem unter Verwendung eines Roboters

Country Status (4)

Country Link
US (1) US10525598B2 (de)
JP (1) JP6430986B2 (de)
CN (1) CN107225569B (de)
DE (1) DE102017002608B4 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3260244A1 (de) * 2016-06-20 2017-12-27 Canon Kabushiki Kaisha Verfahren zur steuerung einer robotervorrichtung, robotervorrichtung und verfahren zur herstellung eines artikels
CN109176505A (zh) * 2018-08-10 2019-01-11 厦门大学 一种基于球杆仪的六轴关节工业机器人空间误差标定方法
DE102019101005B4 (de) * 2018-01-25 2020-09-17 Fanuc Corporation Objektfördersystem

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6333871B2 (ja) * 2016-02-25 2018-05-30 ファナック株式会社 入力画像から検出した対象物を表示する画像処理装置
CN108972572B (zh) * 2017-05-31 2022-10-28 精工爱普生株式会社 控制装置、机器人以及控制方法
AU2018346698A1 (en) 2017-10-06 2020-04-23 Advanced Solutions Life Sciences, Llc End effector calibration assemblies, systems, and methods
JP6734253B2 (ja) * 2017-12-20 2020-08-05 ファナック株式会社 ワークを撮像する視覚センサを備える撮像装置
JP6933167B2 (ja) * 2018-03-14 2021-09-08 オムロン株式会社 ロボットの制御装置
JP6740288B2 (ja) * 2018-07-13 2020-08-12 ファナック株式会社 物体検査装置、物体検査システム、及び検査位置を調整する方法
JP7431216B2 (ja) * 2018-08-16 2024-02-14 株式会社ミツトヨ ロボットと共に使用される位置合わせセンサを含む補足計測位置座標決定システム
US10871366B2 (en) * 2018-08-16 2020-12-22 Mitutoyo Corporation Supplementary metrology position coordinates determination system for use with a robot
JP7000361B2 (ja) 2019-01-24 2022-01-19 ファナック株式会社 追随ロボットおよび作業ロボットシステム
JP7326911B2 (ja) * 2019-06-20 2023-08-16 オムロン株式会社 制御システムおよび制御方法
JP7249221B2 (ja) * 2019-07-09 2023-03-30 株式会社日立製作所 センサ位置姿勢キャリブレーション装置及びセンサ位置姿勢キャリブレーション方法
US11679508B2 (en) 2019-08-01 2023-06-20 Fanuc Corporation Robot device controller for controlling position of robot
JP7306937B2 (ja) * 2019-09-25 2023-07-11 ファナック株式会社 ロボットに支持された部材の位置を調整するロボット装置の制御装置
JP7520608B2 (ja) 2020-07-08 2024-07-23 株式会社Subaru ロボットハンド位置検出システム
JP2022059951A (ja) * 2020-10-02 2022-04-14 日本電産サンキョー株式会社 産業用ロボット
CN115266723A (zh) * 2021-04-30 2022-11-01 泰科电子(上海)有限公司 自校正式检查系统和使用其对物品进行检查的方法
CN115847492B (zh) * 2023-02-16 2024-04-26 三维信技测量技术(苏州)有限公司 一种工业机器人视觉传感器测量装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3702257B2 (ja) 2002-08-23 2005-10-05 ファナック株式会社 ロボットハンドリング装置
JP2015150636A (ja) 2014-02-13 2015-08-24 ファナック株式会社 ビジュアルフィードバックを利用したロボットシステム

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51121722A (en) * 1975-04-18 1976-10-25 Fujitsu Ltd Control system for motor stop position
US6317953B1 (en) * 1981-05-11 2001-11-20 Lmi-Diffracto Vision target based assembly
EP0114505B1 (de) * 1982-12-28 1987-05-13 Diffracto Ltd. Einrichtung und Verfahren zum Kalibrieren eines Roboters
US4753569A (en) * 1982-12-28 1988-06-28 Diffracto, Ltd. Robot calibration
JPS6212483A (ja) * 1985-05-30 1987-01-21 Nachi Fujikoshi Corp 自動車窓ガラスの自動取付装置
JPH0785202B2 (ja) * 1986-07-14 1995-09-13 株式会社杉山電機製作所 回転位置検出制御装置
JPH0285709A (ja) * 1988-09-22 1990-03-27 Hitachi Ltd 多関節ロボットを用いた物体計測方法と計測装置
JPH02110489U (de) * 1989-02-17 1990-09-04
JP2919135B2 (ja) * 1991-10-09 1999-07-12 川崎重工業株式会社 ロボットの位置補正方法
JPH05233065A (ja) * 1992-02-20 1993-09-10 Matsushita Electric Ind Co Ltd 精密位置決め装置
US5572102A (en) * 1995-02-28 1996-11-05 Budd Canada Inc. Method and apparatus for vision control of welding robots
JPH0970780A (ja) * 1995-09-06 1997-03-18 Fanuc Ltd ロボットのツール形状補正方式
DE19826395A1 (de) * 1998-06-12 1999-12-23 Amatec Gmbh Verfahren zum Erfassen und Kompensieren von kinematischen Veränderungen eines Roboters
JP2000052178A (ja) * 1998-08-10 2000-02-22 Amada Eng Center Co Ltd 駆動装置のガタ防止方法および装置
JP4090666B2 (ja) * 1999-10-05 2008-05-28 三菱電機株式会社 数値制御システムおよびそれに用いられる位置指令値補正装置
WO2002049410A2 (en) 2000-12-15 2002-06-20 Cyberoptics Corporation Board align image acquisition device with improved interface
US6681151B1 (en) * 2000-12-15 2004-01-20 Cognex Technology And Investment Corporation System and method for servoing robots based upon workpieces with fiducial marks using machine vision
DE10242710A1 (de) 2002-09-13 2004-04-08 Daimlerchrysler Ag Verfahren zum Herstellen eines Verbindungsbereiches auf einem Werkstück
DE10345743A1 (de) 2003-10-01 2005-05-04 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Bestimmen von Position und Orientierung einer Bildempfangseinrichtung
JP4220920B2 (ja) 2004-03-08 2009-02-04 ファナック株式会社 視覚センサ
DE102004024378B4 (de) 2004-05-17 2009-05-20 Kuka Roboter Gmbh Verfahren zur robotergestützten Vermessung von Objekten
DE102008019435B4 (de) 2008-04-17 2012-06-06 Aicon Metrology Gmbh Verfahren zum berührungslosen Vermessen dreidimensionaler, komplex geformter Bauteile
US9492927B2 (en) * 2009-08-15 2016-11-15 Intuitive Surgical Operations, Inc. Application of force feedback on an input device to urge its operator to command an articulated instrument to a preferred pose
US9457473B2 (en) * 2012-06-20 2016-10-04 Irobot Corporation Suspended robot systems and methods for using same
CN102773524A (zh) 2012-08-01 2012-11-14 西北工业大学 一种基于机器视觉找正的制孔方法
JP6164970B2 (ja) * 2013-08-07 2017-07-19 キヤノン株式会社 ロボット制御方法、ロボットシステム、プログラム、記録媒体及び部品の製造方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3702257B2 (ja) 2002-08-23 2005-10-05 ファナック株式会社 ロボットハンドリング装置
JP2015150636A (ja) 2014-02-13 2015-08-24 ファナック株式会社 ビジュアルフィードバックを利用したロボットシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Roger Y. Tsai, „An efficient and accurate camera calibration technique for 3D machine vision", Proc. Computer Vision and Pattern Recognition '86, Seiten 368–374, 1986

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3260244A1 (de) * 2016-06-20 2017-12-27 Canon Kabushiki Kaisha Verfahren zur steuerung einer robotervorrichtung, robotervorrichtung und verfahren zur herstellung eines artikels
US10702989B2 (en) 2016-06-20 2020-07-07 Canon Kabushiki Kaisha Method of controlling robot apparatus, robot apparatus, and method of manufacturing article
DE102019101005B4 (de) * 2018-01-25 2020-09-17 Fanuc Corporation Objektfördersystem
CN109176505A (zh) * 2018-08-10 2019-01-11 厦门大学 一种基于球杆仪的六轴关节工业机器人空间误差标定方法

Also Published As

Publication number Publication date
JP6430986B2 (ja) 2018-11-28
CN107225569B (zh) 2020-04-10
CN107225569A (zh) 2017-10-03
JP2017170599A (ja) 2017-09-28
US10525598B2 (en) 2020-01-07
DE102017002608B4 (de) 2020-10-29
US20170274534A1 (en) 2017-09-28

Similar Documents

Publication Publication Date Title
DE102017002608A1 (de) Positioniersystem unter Verwendung eines Roboters
DE102016116702B4 (de) Messsystem zum Kalibrieren der mechanischen Parameter eines Roboters
DE102010032840B4 (de) Vorrichtung und Verfahren zum Messen der Position eines Werkzeugmittelpunktes eines Roboters
DE102016011653B4 (de) Robotersystem mit Kamera zum Aufnehmen eines Bildes einer Zielmarke
DE102015001527B4 (de) Robotersystem, das visuelle Rückmeldung verwendet
DE102013021917B4 (de) Robotersystemanzeigevorrichtung
EP2227356B1 (de) Verfahren und system zum hochpräzisen positionieren mindestens eines objekts in eine endlage im raum
DE102017217142B4 (de) Gleichzeitige kinematische und Hand-Augen-Kalibrierung
DE602005003147T2 (de) Messsystem
DE102016114337B4 (de) System und verfahren zum verknüpfen von koordinatenräumen maschinellen sehens in einer umgebung angeleiteten zusammenbaus
DE102016012065B4 (de) Robotersystem mit Funktion zum Berechnen von Position und Ausrichtung eines Sensors
DE19930087C5 (de) Verfahren und Vorrichtung zur Regelung der Vorhalteposition eines Manipulators eines Handhabungsgeräts
DE102016212694A1 (de) Verfahren zur Orientierung eines Industrieroboters und Industrieroboter
DE102016119605A1 (de) Kalibrierungssystem und Kalibrierungsverfahren zur Kalibrierung der mechanischen Parameter des Handgelenksteils eines Roboters
DE102011050640A1 (de) Verfahren und Vorrichtung für die Wiederherstellung von Roboterlagedaten
EP2269783A1 (de) Kalibrierungsverfahren für ein Messsystem
DE102019131284B4 (de) Robotersystem und Koordinatenumwandlungsverfahren
DE102020124356A1 (de) Steuerung einer Robotervorrichtung zum Einstellen der Position eines vom Roboter gestützten Gegenstandes
DE102016116811A1 (de) Auslenkungsmesssystem zum Messen der Auslenkung eines Gelenkroboters
DE112019005484T5 (de) Automatische Kalibrierung für ein Kamera-Robotersystem mit Werkzeugoffsets
DE102018121481A1 (de) Entfernungsmesssystem und Entfernungsmessverfahren
DE102018007287B4 (de) Roboter-Controller zum Durchführen einer Kalibrierung, Messsystem und Kalibrierverfahren
DE102018103474A1 (de) Ein system und verfahren zur objektabstandserkennung und positionierung
DE102006005990B4 (de) Werkstückvermessung für 3-D Lageerkennung in mehreren Multi-Roboter-Stationen
WO2024184832A1 (de) Verfahren und anordnung zur kompensation nicht-geometrischer fehlereinflüsse auf eine roboterabsolutgenauigkeit mittels eines laser-sensor-systems

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