DE602004013107T2 - Vorrichtung zur Korrektur einer gelernten Position - Google Patents

Vorrichtung zur Korrektur einer gelernten Position Download PDF

Info

Publication number
DE602004013107T2
DE602004013107T2 DE602004013107T DE602004013107T DE602004013107T2 DE 602004013107 T2 DE602004013107 T2 DE 602004013107T2 DE 602004013107 T DE602004013107 T DE 602004013107T DE 602004013107 T DE602004013107 T DE 602004013107T DE 602004013107 T2 DE602004013107 T2 DE 602004013107T2
Authority
DE
Germany
Prior art keywords
image sensor
robot
learned
robot unit
mechanical
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
DE602004013107T
Other languages
English (en)
Other versions
DE602004013107D1 (de
Inventor
Kazunori Ban
Katsutoshi Takizawa
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 DE602004013107D1 publication Critical patent/DE602004013107D1/de
Application granted granted Critical
Publication of DE602004013107T2 publication Critical patent/DE602004013107T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4083Adapting programme, configuration
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36504Adapt program to real coordinates, shape, dimension of tool, offset path
    • 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/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/39057Hand eye calibration, eye, camera on hand, end effector

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Technisches Gebiet
  • Die vorliegende Erfindung betrifft eine Vorrichtung zur Korrektur einer gelernten Position für einen Roboter. Insbesondere betrifft die Erfindung eine Vorrichtung zur Korrektur einer gelernten Position, die verwendet wird, um eine gelernte Position eines Bewegungsprogramms für einen Roboter zu korrigieren wenn der Roboter, ein zu bearbeitendes Objekt, oder beide bewegt wird bzw. werden.
  • 2. Stand der Technik
  • Wenn eine Fertigungsanlage verlagert wird, in welcher ein Roboter zum Einsatz kommt, werden häufig der Roboter, ein zu bearbeitendes Objekt (d. h. ein Werkstück), oder beide verlagert. Dies tritt etwa in den folgenden Fällen auf:
    • – Eine in Betrieb befindliche Anlage wird an einen anderen Ort verlegt. Beispielsweise wird die gesamte Fertigungsanlage in eine andere, möglicherweise überseeische, Betriebsstätte verlagert.
    • – Nachdem ein System an einem anderen Platz in Betrieb genommen worden ist, wird das System an die Fertigungsstätte verlegt und dort aufgebaut. Beispielsweise wird eine neue Fertigungsanlage zunächst in einer provisorischen Betriebsstätte in Betrieb genommen, um die Arbeitsweise der Fertigungsanlage durchzugehen. Sodann wird die Anlage an die tatsächliche Fertigungsstätte verlagert.
    • – Aufgrund der Umstrukturierung einer Anlage werden ein Roboter und ein Teil der Werkstücke verlagert. Beispielsweise wird die Anzahl an Fertigungsteilen erhöht oder eine Roboterposition wird verändert, um die Produktivität zu verbessern.
  • Wird die Anlage verlagert, ergibt sich nach der Verlagerung ein Unterschied in den Positionen des Roboters und des Werkstücks. Daher kann ein Bewegungsprogramm für den Roboter, welches vor der Verlagerung der Fertigungsanlage trainiert wurde, nicht so verwendet werden, wie es ist. Die trainierte bzw. gelernte Position muss korrigiert werden. Ein Bediener korrigiert das Bewegungsprogramm, wobei er jede gelernte Position durchgeht indem er diese mit dem Werkstück in Übereinstimmung bringt. Diese Arbeit zur Korrektur des Trainings ist sehr mühsam. Insbesondere bei einer Anlage mit vielen Robotern zum Punktschweißen von Automobilen ist die Anzahl der Schritte dieser Trainings-Korrekturarbeit beim Verlagern der Anlage enorm.
  • Um die Zeit zu verkürzen, die für die Trainings-Korrekturarbeit nach dem Verlagern der Anlage erforderlich ist, werden bisher die folgenden Verfahren verwendet, und zwar entweder unabhängig voneinander oder in Kombination miteinander:
    • – Ein Verfahren unter Verwendung mechanischer Mittel: Abstecklinien, Markierungen, und eine Befestigungsvorrichtung werden verwendet, um Roboter und periphere Vorrichtungen so zu installieren, dass ihre relativen Positionen vor und nach der Verlagerung der Anlage so identisch wie möglich sind.
    • – Eine Programmverlagerung mittels Aufsetzen ("touchup"): Eine Werkzeugspitze ("tool center point", nachfolgend abgekürzt als "TCP") des Roboters wird auf drei oder mehrere Referenzpunkte auf dem Werkstück oder einer den Roboter haltenden Haltevorrichtung aufgesetzt (d. h., der TCP wird exakt mit den Referenzpunkten in Übereinstimmung gebracht). Eine dreidimensionale Position eines jeden Referenzpunktes, Pi (Xi, Yi, Zi) [i = 1, ..., n; n ≥ 3], wird gemessen. Drei oder mehr Referenzpunkte des Werkstückes oder der Haltevorrichtung vor bzw. nach der Verlagerung werden gemessen. Eine Positionsveränderung des Werkstückes oder der Haltevorrichtung zwischen den Positionen vor und nach der Verlagerung wird aus den gemessenen Referenzpunkten gewonnen. Die trainierte bzw. gelernte Position des Roboterprogramms wird entsprechend dieser Positionsveränderung verschoben.
  • In Bezug auf die später zu beschreibende Kalibrierung sind die folgenden Dokumente verfügbar: Roger Y. Tsai und Reimar K. Lenz, "A New Technique for Fully Autonomous and Efficient 3D Robotics Hand/Eye Calibration", IEEE Trans. an Robotics and Automation, Vol. 5, No. 3, 1989, pp. 345–358, und die ungeprüfte Veröffentlichung der japanischen Patentanmeldung Nr. 10-63317 .
  • Bei den obigen Verfahren unter Verwendung mechanischer Mittel beträgt die Genauigkeit in der Position nach der Neueinrichtung üblicherweise einige Zentimeter. Es ist praktisch schwierig, eine höhere Präzision sicherzustellen. Daher ist eine Trainings-Korrekturarbeit unvermeidbar, um den verbleibenden Fehler zu beseitigen. Es ist schwierig, eine dreidimensionale Orientierungsänderung beispielsweise aufgrund von Sinken oder Kippen abzugleichen. Die Genauigkeit einer Senkung oder einer Neigung hängt von der visuellen Beobachtung eines Einrichtungsbedieners ab.
  • Das obige Verfahren der Veränderung des Roboterprogramms mittels Aufsetzens basiert auf Positionsdaten des Werkstücks oder der Haltevorrichtung, welche durch Messen ihrer Positionen vor und nach der Verlagerung mittels des Aufsetzens des Roboters erhalten werden. Allerdings kann in der tatsächlichen Praxis nicht erreicht werden, dass das letztlich erhaltene Programm auf einfache Weise hochgenau arbeitet, weil von den folgenden Fehlern wenigstens einer vorliegt: Ein Einrichtungsfehler des TCP des Roboters und ein Positionsfehler des Aufsetzpunktes auf den Referenzpunkten. Für die TCP-Einrichtung oder das Aufsetzen wird der Roboter manuell mittels "Jog-Feed" oder dergleichen bedient. Der TCP des Roboters wird mit einem Zielpunkt in Übereinstimmung gebracht. In diesem Fall haben die TCP-Einrichtung und die Positionierung unterschiedliche Genauigkeitsgrade, und zwar in Abhängigkeit von der Orientierung des Roboters, wenn die TCP-Einrichtung und die Positionierung ausgeführt werden, oder in Abhängigkeit von den Fähigkeiten des Bedieners. Diesbezüglich ist zu sagen, dass nicht einmal ein erfahrener Bediener hochgenaue Arbeit erreichen kann, da die Positionierung auf visuellen Messungen basierend ausgeführt wird. Daher ist es unabdingbar, jede gelernte Position nach der Verlegung zu korrigieren.
  • Es kostet Zeit, die TCP-Einrichtung und das Aufsetzen korrekt auszuführen. In vielen Fällen unterscheidet sich die insgesamt zur Korrektur gelernter Positionen erforderliche Zeit kaum von der zur Korrektur gelernter Positionen ohne Verlegung durch Aufsetzen erforderlichen Zeit. Daher wird die Verlegung durch Aufsetzen nicht oft verwendet.
  • Obwohl Anforderungen der Benutzer zum Ausführen einer genauen, kurzfristigen Korrektur gelernter Positionen in Bezug auf das Verlegen des Roboters und des Werkstücks bestehen, existiert – wie oben beschrieben – kein praktikables Verfahren, um dies zu erreichen.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Die vorliegende Erfindung wurde gemacht, um die obigen Probleme zu lösen. Eine Aufgabe der vorliegenden Erfindung besteht darin, eine Vorrichtung bereitzustellen, welche auf einfache Weise mit hoher Genauigkeit gelernte Positionen nach einer Verlegung korrigieren kann, und welche die Beanspruchung eines Bedieners reduzieren kann, der das mit der Verlegung zusammenhängende Training korrigiert.
  • Gemäß einem Aspekt der vorliegenden Erfindung wird folgendes vorgeschlagen: Eine Vorrichtung zur Korrektur einer gelernten Position, die eine gelernte Position eines Bewegungsprogramms für einen Roboter korrigiert, der mit einer mechanischen Robotereinheit ausgerüstet ist. Die Vorrichtung zur Korrektur einer gelernten Position weist folgendes auf: einen Speicher, der die gelernte Position des Bewegungsprogramms speichert; einen Bildsensor, der an einem vorgegebenen Teil der mechanischen Robotereinheit vorgesehen ist und der eine Position und Orientierung des Bildsensors relativ zu dem vorgegebenen Teil und eine dreidimensionale Position von jedem von mindestens drei Stellen bzw. Merkmalen misst, die nicht entlang einer geraden Linie an einem Objekt angeordnet sind, welches durch den Roboter zu bearbeiten ist; einen Positionsberechner, der eine dreidimensionale Position von jedem von den mindestens drei Merkmalen gewinnt, und zwar vor bzw. nach einer Veränderung einer Position der mechanischen Robotereinheit in Bezug auf das Objekt, welches zu bearbeiten ist, und basierend auf gemessenen, durch den Bildsensor gewonnenen Daten; und eine Robotersteuerungseinrichtung, welche die gelernte Position des im Speicher gespeicherten Bewegungsprogramms basierend auf einer Veränderung in der vom Positionsberechner gewonnenen relativen Position korrigiert.
  • In diesem Fall weist die mechanische Robotereinheit einen Endeffektor auf, der das Objekt bearbeitet. Der Bildsensor kann an dem Endeffektor angebracht sein.
  • Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird folgendes vorgeschlagen: Eine weitere Vorrichtung zur Korrektur einer gelernten Position, welche eine gelernte Position eines Bewegungsprogramms für einen Roboter korrigiert, der mit einer mechanischen Robotereinheit ausgerüstet ist. Die Vorrichtung zur Korrektur einer gelernten Position beinhaltet: Einen Speicher, der die gelernte Position des Bewegungsprogramms speichert; einen Bildsensor, der an einem vorbestimmten Teil vorgesehen ist, welches nicht zu der mechanischen Robotereinheit gehört, und wobei der Bildsensor eine dreidimensionale Position von jedem von mindestens drei Merkmalen misst, die nicht entlang einer geraden Linie an einem durch den Roboter zu bearbeitenden Objekt angeordnet sind, und der Bildsensor eine dreidimensionale Position von jedem von mindestens drei Stellen bzw. Merkmalen misst, die nicht entlang einer geraden Linie an der mechanischen Robotereinheit angebracht sind; einen Positionsberechner, der eine dreidimensionale Position von jedem von den mindestens drei Merkmalen an dem zu bearbeitenden Objekt und eine dreidimensionale Position von jedem von den mindestens drei Merkmalen an der mechanischen Robotereinheit vor bzw. nach einer Veränderung einer Position der mechanischen Robotereinheit relativ zu dem bearbeitenden Objekt gewinnt, und zwar basierend auf gemessenen Daten, welche vom Bildsensor erhalten werden; und eine Robotersteuerungseinrichtung, welche die gelernte Position des Bewegungsprogramms korrigiert, die im Speicher gespeichert ist, und zwar basierend auf einer Änderung in der relativen Position, die vom Positionsberechner gewonnen wird.
  • In diesem Falle ist der Bildsensor an einer anderen mechanischen Robotereinheit eines zweiten Roboters angebracht, der sich von dem obigen Roboter unterscheidet.
  • Der Bildsensor ist entfernbar an der mechanischen Robotereinheit angebracht und kann von der mechanischen Robotereinheit entfernt werden, wenn der Bildsensor mit der Messung der dreidimensionalen Positionen der mindestens drei Merkmale des Objekts aufhört.
  • Eine Position und Orientierung des Bildsensors relativ zu der mechanischen Robotereinheit kann durch Messung eines Referenzobjekts an einer vorbestimmten Position von einer Mehrzahl verschiedener Punkte aus gewonnen werden, und zwar jedes Mal dann, wenn der Bildsensor an der mechanischen Robotereinheit angebracht ist.
  • Die mindestens drei Stellen bzw. Merkmale des Objekts können charakteristische Gestaltmerkmale sein, die das Objekt aufweist.
  • Alternativ können die mindestens drei Stellen bzw. Merkmale des Objekts Referenzmarkierungen sein, die auf dem Objekt ausgebildet sind.
  • Der Bildsensor kann eine Kamera aufweisen, die eine Bildverarbeitung durchführt, und die Kamera kann eine dreidimensionale Position eines gemessenen Merkmals durch Abbilden des gemessenen Teils bei einer Mehrzahl unterschiedlicher Positionen gewinnen. Diese Kamera kann beispielsweise eine TV-Kamera für industrielle Zwecke sein.
  • Der Bildsensor kann ein dreidimensionaler Bildsensor sein. Der dreidimensionale Bildsensor kann eine Kombination einer TV-Kamera für industrielle Zwecke mit einem Projektor sein.
  • Gemäß jedem der obigen Aspekte der Erfindung misst der an der mechanischen Robotereinheit angebrachte Bildsensor dreidimensionale Positionen einer Mehrzahl spezifischer Stellen bzw. Merkmale an dem zu bearbeitenden Objekt. Basierend auf dreidimensionalen vor bzw. nach der Verlegung gemessenen Positionen wird eine zur Korrektur der gelernten Position erforderliche Koordinatenumwandlung gewonnen. Die gelernte Position des Programms wird korrigiert, indem die Koordinatenumwandlung in die gelernten Positionsdaten des Bewegungsprogramms eingearbeitet wird.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die obigen und weitere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden durch die nachfolgende Beschreibung bevorzugter Ausführungsbeispiele der Erfindung weiter ersichtlich. Hierbei wird Bezug auf die beigefügten Zeichnungen genommen, von denen:
  • 1 ein Blockdiagramm ist, welches in schematischer Form eine Anordnung eines Roboters mit einer Vorrichtung zur Korrektur einer gelernten Position gemäß der vorliegenden Erfindung zeigt;
  • 2 eine Gesamtansicht eines Robotersystems gemäß einer Ausführungsform der vorliegenden Erfindung ist;
  • 3 ein Blockschaltbild einer Robotersteuerungseinrichtung ist;
  • 4 ein Blockschaltbild einer Bildverarbeitungseinheit ist;
  • 5 ein Flussdiagramm ist, welches eine Übersicht über eine Prozedur zur Korrektur einer gelernten Position gemäß der Ausführungsform zeigt;
  • 6 eine Darstellung ist, welche die Kalibrierung eines Bildsensors erläutert;
  • 7 eine Darstellung ist, welche eine Messung von Positionen von Referenzmarkierungen auf einer Haltevorrichtung unter Verwendung eines Bildsensors erläutert;
  • 8 eine Gesamtansicht eines Robotersystems gemäß einer weiteren Ausführungsform der vorliegenden Erfindung ist; und
  • 9 eine Darstellung ist, welche ein Beispiel für Referenzmarkierungen zeigt, die an einer mechanischen Robotereinheit eines zweiten Roboters gebildet sind, der in 8 gezeigt ist.
  • DETAILLIERTE BESCHREIBUNG
  • Nachfolgend wird unter Bezugnahme auf die Zeichnungen eine Vorrichtung zur Korrektur einer gelernten Position gemäß Ausführungsbeispielen der vorliegenden Erfindung erläutert. Wie in 1 gezeigt, ist die Vorrichtung zur Korrektur einer gelernten Position gemäß der vorliegenden Erfindung ausgebildet, um eine gelernte Position eines Bewegungsprogramms für einen Roboter zu korrigieren, wenn entweder der Roboter mit einer mechanischen Robotereinheit, ein durch den Roboter zu bearbeitendes Objekt, oder beide verlagert werden. Die Vorrichtung zur Korrektur einer gelernten Position weist folgendes auf: Einen Speicher, der die gelernte Position des Bewegungsprogramms speichert; einen Bildsensor, der ausgebildet ist, um eine dreidimensionale Position von jedem von mindestens drei Stellen bzw. Merkmalen zu messen, welche nicht entlang einer geraden Linie an dem durch den Roboter zu bearbeitenden Objekt angeordnet sind; einen Positionsberechner, der eine dreidimensionale Position von jedem von den mindestens drei Stellen bzw. Merkmalen vor bzw. nach einer Veränderung einer Position der mechanischen Robotereinheit relativ zu dem zu bearbeitenden Objekt gewinnt, und zwar basierend auf gemessenen Daten, die vom Bildsensor gewonnen wurden; und eine Robotersteuerungseinrichtung, welche die gelernte Position des im Speicher gespeicherten Bewegungsprogramms korrigiert, und zwar basierend auf einer Veränderung in der vom Positionsberechner gewonnenen relativen Position.
  • 2 ist eine Gesamtansicht eines Robotersystems gemäß einem Ausführungsbeispiel der vorliegenden Erfindung. In 2 bezeichnet eine Bezugsziffer 1 ein Beispiel für einen bekannten Roboter. Der Roboter 1 weist eine Robotersteuerungseinrichtung 1a mit einer in 3 gezeigten Systemkonfiguration sowie eine mechanische Robotereinheit 1b auf, dessen Arbeitsweise durch die Robotersteuerungseinrichtung 1a gesteuert wird. Die Robotersteuerungseinrichtung 1a verfügt über eine Haupt-CPU (eine Haupt-Zentralverarbeitungseinheit, "Central Processing Unit", die nachfolgend einfach als CPU bezeichnet wird) 11, einen Bus 17, der mit der CPU 11 verbunden ist, einen Speicher ("storage" oder "memory") 12, der mit dem Bus 17 verbunden ist und aus einem RAM ("Random Access Memory"), einem ROM ("Read-Only Memory") und einem nichtflüchtigen Speicher besteht, eine Trainings- bzw. Trainingskonsole-Schnittstelle 13, eine Ein-/Ausgabe-Schnittstelle 16 für externe Einheiten, eine Servosteuerung 15, und eine Kommunikationsschnittstelle 14.
  • Eine Lern- bzw. Trainingskonsole 18, welches mit der Trainingskonsole-Schnittstelle 13 verbunden ist, kann eine übliche Display- bzw. Anzeigefunktion aufweisen. Ein Bediener bereitet ein Bewegungsprogramm für einen Roboter durch manuelle Bedienung der Trainingskonsole 18 vor und korrigiert und registriert dieses auch durch manuelle Bedienung. Der Bediener stellt weiterhin verschiedene Parameter ein, bedient den Roboter auf Basis des gelernten bzw. trainierten Bewegungsprogramms, und führt Jog-Feeds im manuellen Modus durch. Ein Systemprogramm zur Unterstützung der grundlegenden Funktionalität des Roboters und der Robotersteuerungseinrichtung ist im ROM des Speichers 12 gespeichert. Das Bewegungsprogramm (in diesem Fall zum Punktschweißen) des Roboters, welches gemäß der Applikation und der relevanten, eingestellten Daten trainiert wurde, wird im nichtflüchtigen Speicher des Speichers 12 gespeichert. Ein Programm und Parameter zur Durchführung der für die Korrektur der gelernten Positionsdaten verwendeten, nachfolgend zu beschreibenden Verarbeitung werden ebenfalls in dem nichtflüchtigen Speicher des Speichers 12 gespeichert. Der RAM des Speichers 12 wird für einen Speicherbereich zum temporären Speichern verschiedener von der CPU 11 verarbeiteter Daten verwendet.
  • Die Servosteuerung 15 verfügt über Servosteuerungen #1 bis #n, wobei n eine Gesamtanzahl der Achsen des Roboters ist. Im vorliegenden Fall wird angenommen, dass n gleich 6 ist. Die Servosteuerung 15 empfängt einen Verstellungsbefehl, welcher mittels Bedienungshandlungen (wie etwa einer Pfad-Plan-Vorbereitung, einer Interpolation und einer inversen Transformation basierend auf dem Plan) vorbereitet wurde, um den Roboter zu steuern. Die Servosteuerung 15 gibt Moment("torque")befehle an Servoverstärker A1 bis An aus, und zwar basierend auf dem Verstellungsbefehl und Rückkopplungssignalen, welche von nicht gezeigten Impulskodierern empfangen werden, die zu den Achsen gehören. Basierend auf den Momentbefehlen versorgen die Servoverstärker A1 bis An Servomotoren der entsprechenden Achsen mit Strom, wodurch die Servomotoren getrieben werden. Die Kommunikationsschnittstelle 14 ist mit dem Positionsberechner verbunden, d. h. einer Bildverarbeitungseinheit 2, die in 2 gezeigt ist. Die Robotersteuerungseinrichtung 1a tauscht messungsrelevante Befehle und gemessene Daten (die später geschrieben werden) über die Kommunikationsschnittstelle 14 mit der Bildverarbeitungseinheit 2 aus.
  • Ein Blockdiagramm der Bildverarbeitungseinheit 2 ist in 4 gezeigt. Die Bildverarbeitungseinheit 2 verfügt über eine CPU 20 mit Mikroprozessoren, und verfügt weiterhin über ein ROM 21, eine Bildverarbeitungseinheit 22, eine Kameraschnittstelle 23, eine Monitorschnittstelle 24, eine Ein-/Ausgabe("Input/Output", I/O)-Einheit 25, einen Framespeicher (d. h. einen Bildspeicher) 26, einen nichtflüchtigen Speicher 27, einen RAM 28, und eine Kommunikationsschnittstelle 29. Diese Einheiten sind jeweils über eine Busleitung 30 mit der CPU 20 verbunden.
  • Mit der Kameraschnittstelle 23 ist eine Kamera verbunden, die eine Abbildungseinheit eines Bildsensors 3 darstellt, d. h. in diesem Falle eine CCD("Charge-Coupled Device")-Kamera. Empfängt die Kamera einen Abbildungsbefehl über die Kameraschnittstelle 23, nimmt die Kamera ein Bild auf, und zwar unter Verwendung einer elektronischen Verschlussfunktion, die in die Kamera eingebaut ist. Die Kamera sendet ein aufgenommenes Videosignal über die Kameraschnittstelle 23 an den Framespeicher 26. Der Framespeicher 26 speichert das Videosignal in der Form eines Grauskalensignals. Ein Display, wie etwa ein CRT ("Cathode Ray Tube") oder ein LCD ("Liquid Crystal Display") ist als Monitor 2a (vgl. 2 und 6) mit der Monitorschnittstelle 24 verbunden. Der Monitor 2a stellt je nach Bedarf gegenwärtig mit der Kamera aufgenommene Bilder, im Framespeicher 26 gespeicherte Bilder früherer Zeitpunkte oder durch die Bildverarbeitungseinheit 22 verarbeitete Bilder dar.
  • Die Bildverarbeitungseinheit 22 analysiert das im Framespeicher 26 gespeicherte Videosignal des Werkstücks. Die Bildverarbeitungseinheit 22 erkennt ausgewählte Referenzmarkierungen 6a, 6b und 6c, welche nicht entlang einer geraden Linie angeordnet sind und welche die Positionen von drei Stellen bzw. Markierungen auf einer Haltevorrichtung 5 anzeigen. Basierend auf dieser Erkennung wird eine dreidimensionale Position einer jeden der Markierungen 6a, 6b und 6c gewonnen, wie unten im Detail beschrieben. Ein Programm und Parameter sind im nichtflüchtigen Speicher 27 zu diesem Zweck gespeichert. Der RAM 28 speichert temporär Daten, welche die CPU 20 verwendet, um verschiedene Verarbeitungen durchzuführen. Die Kommunikationsschnittstelle 29 ist mit der Robotersteuerungseinrichtung über die Kommunikationsschnittstelle 14 auf der Seite der Robotersteuerungseinrichtung verbunden.
  • Nachfolgend wird erneut auf 2 Bezug genommen. Ein Endeffektor, wie etwa ein Arbeitswerkzeug 1d (im vorliegenden Beispiel eine Schweißpistole zum Punktschweißen) wird an ein vorderes Ende eines Roboterarms 1c der mechanischen Robotereinheit 1b des Roboters 1 angesetzt. Der Roboter 1 schweißt ein Werkstück 4 (im vorliegenden Beispiel ein zu verschweißendes Metallblech). Das Werkstück 4 wird von der Haltevorrichtung 5 gehalten. Zwischen dem Werkstück 4 und der Haltevorrichtung 5 besteht eine konstante relative positionsbezogene Beziehung zueinander. Diese relative Beziehung ändert sich durch eine Versetzung nicht, wie unten beschrieben. Ein Beispiel für die Haltevorrichtung 5 ist eine Befestigungseinrichtung mit einem Klammermechanismus, der das Metallblech befestigt. Das zu bearbeitende Objekt (nachfolgend nur als Objekt bezeichnet) gemäß der vorliegenden Erfindung ist das Werkstück 4, oder das Werkstück 4 und die Haltevorrichtung 5, wenn die Haltevorrichtung 5 verwendet wird.
  • Das Bewegungsprogramm für den Roboter, der das Schweißen ausführt, wird im Voraus trainiert und ist in der Robotersteuerungseinrichtung 1a gespeichert. Der Bildsensor (d. h., ein Sensorkopf) 3 ist mit der Bildverarbeitungseinheit 2 verbunden. Die Bildverarbeitungseinheit 2 verarbeitet ein vom Bildsensor 3 kommendes Bild und erfasst einen spezifischen Punkt oder eine Position einer charakteristischen Struktur bzw. eines charakteristischen Gestaltmerkmals innerhalb des Sensorbildes. Gemäß dem vorliegenden Ausführungsbeispiel ist der Bildsensor 3 eine CCD-Kamera, welche ein zweidimensionales Bild aufnimmt. Der Bildsensor 3 ist lösbar an einem vorgegebenen Teil angebracht, wie etwa dem Arbeitswerkzeug 1d des Roboters. Dies geschieht durch geeignete Befestigungsmittel, wie etwa Ansaugen bzw. Anziehen durch einen Permanentmagneten oder Klammern unter Verwendung einer Schraubstockfunktion. Der Bildsensor 3 kann nach einer Messung und vor der unten beschriebenen Versetzung vom Arbeitswerkzeug 1d entfernt werden und nach der Versetzung erneut angebracht werden. Alternativ kann das Arbeitswerkzeug 1d mit weiterhin angebrachtem Bildsensor 3 versetzt werden, sofern dieses kein Problem darstellt. Im ersteren Fall kann ein einzelner Bildsensor verwendet werden, um gelernte Positionen einer Mehrzahl von Robotern zu korrigieren. Eine relative Beziehung zwischen einem Koordinatensystem Σf einer mechanischen Schnittstelle eines abschließenden Gliedes des Roboters 1 und einem Referenzkoordinatensystem Σc des Bildsensors kann im voraus oder aber durch Kalibrierung eingestellt werden, wenn der Bildsensor 3 an dem Arbeitswerkzeug 1d angesetzt wird. Wird der Bildsensor 3 nach der Messung und vor der Versetzung abgenommen, wird die Kalibrierung auch nach der Versetzung durchgeführt. Wie nachfolgend kurz erläutert, wird der Bildsensor mit einer bekannten Technik kalibriert.
  • Wie oben beschrieben, kann gemäß der vorliegenden Erfindung die gelernte Position des Bewegungsprogramms für den Schweißroboter auf einfache und genaue Weise vollständig korrigiert werden, wenn eine Position des Roboters 1 sich relativ zu dem Objekt verändert, nachdem der Roboter 1, die Haltevorrichtung 5 oder beide verschoben werden. Zu diesem Zweck wird bei diesem Ausführungsbeispiel eine Verarbeitungsprozedur ausgeführt, die anhand des in 5 gezeigten Flussdiagramms beschrieben wird.
  • In dem in 5 gezeigten Flussdiagramm betrifft die Verarbeitung der Schritte 100 bis 105 die Messung vor der Versetzung. In diesen Schritten wird vor der Versetzung das Messen vorbereitet und dreidimensionale Positionen der drei an der Haltevorrichtung 5 gebildeten Referenzmarkierungen werden gemessen. In Schritt 200 und den nachfolgenden Schritten betrifft die Verarbeitung das Messen nach der Versetzung. In den Schritten 200 bis 205 nach der Versetzung wird das Messen vorbereitet und dreidimensionale Positionen der drei Referenzmarkierungen werden gemessen. In den Schritten 300 bis 302 wird eine Bewegungsdistanz der Haltevorrichtung in Bezug auf den Roboter berechnet, und zwar basierend auf den Markierungspositionen vor und nach der Versetzung. Die gelernte Position des Bewegungsprogramms für den Roboter, die vor der Versetzung trainiert wurde, wird korrigiert. Nachfolgend wird ein Überblick über die Arbeitsweise bei jedem Schritt gegeben. In der nachfolgenden Erläuterung werden Klammern [ ] als Symbol zur Kennzeichnung einer Matrix verwendet.
  • Schritt 100: Der Bildsensor (d. h. die CCD-Kamera) 3 wird an dem Arbeitswerkzeug 1d angesetzt. Wenn der Bildsensor 3 einen Sensorkopf hat, der mit einer Kamera und einem Projektor ausgestattet ist, wird dieser Sensorkopf an dem Arbeitswerkzeug 1d angesetzt. Der Bildsensor 3 ist lösbar angebracht und wird später entfernt (vgl. Schritt 150).
  • Schritt 101: Eine Ansetzungsposition und -orientierung des Sensors werden kalibriert, um eine relative Positions- und Orientierungsbeziehung zwischen dem Koordinatensystem Σf eines abschließenden Gliedes des Roboters und dem Referenzkoordinatensystem Σc des angesetzten Bildsensors (d. h. der Kamera) zu gewinnen. Ein bekanntes Kalibrierungsverfahren kann in geeigneter Weise verwendet werden. 6 zeigt ein Beispiel einer Anordnung, bei der eines der Kalibrierungsverfahren verwendet wird. Zunächst wird ein Referenzobjekt R zur Kalibrierung verwendet, welches eine Mehrzahl von Punkten d beinhaltet, die in einem bekannten Intervall angeordnet sind. Das Referenzobjekt R wird innerhalb eines Arbeitsbereiches des Roboters platziert. Dieses Referenzobjekt R ist eines, welches allgemein zum Kalibrieren des Bildsensors verwendet wird.
  • Der Bediener setzt in einem manuellen Modus wie dem Jog-Feed den Roboter an eine erste Position A1, bei der sich das Referenzobjekt R innerhalb des Gesichtsfeldes des Bildsensors befindet. Der Bediener bedient die Tastatur der Bildverarbeitungseinheit, um die Aufnahme eines Bildes für eine erste Kalibrierung zu befehlen. Die Bildverarbeitungseinheit 2 nimmt ein Bild vom Bildsensor auf. Die Bildverarbeitungseinheit analysiert das Referenzobjekt R zur Kalibrierung und gewinnt Daten einer Position und Orientierung [D1] des Referenzobjektes R aus der Sicht des Sensorkoordinatensystems Σc aus gesehen, und zwar aus den Positionen der Punkte auf dem Bild, der Punktintervalle und einem Punktmuster. Parallel dazu zieht die Bildverarbeitungseinheit eine Position und Orientierung [Al] des Koordinatensystems Σf des abschließenden Gliedes zum Zeitpunkt der Bildaufnahme heran, und zwar über die Kommunikationsschnittstelle von der Robotersteuerungseinrichtung, und speichert [D1] und [A1] im Speicher der Bildverarbeitungseinheit.
  • In gleicher Weise wird der Roboter zu einer anderen Position A2 bewegt, und [D2] und [A2] werden gespeichert. Weiterhin wird der Roboter an eine Position A3 bewegt, die sich nicht auf einer geraden, Al und A2 verbindenden Linie befindet. [D3] und [A3] werden gespeichert. Generell werden [Di] und [Ai] bei drei oder mehreren unterschiedlichen Positionen gewonnen, die sich nicht auf einer geraden Linie befinden. Die Bildverarbeitungseinheit berechnet über eine Mehrzahl von Paaren [Di] und [Ai], die auf diese Weise erhalten werden, eine Position und Orientierung [S] des Sensor-Koordinatensystems Σc relativ zum abschließenden Glied Σf, und speichert das berechnete Ergebnis [S]. Verschiedene Verfahren zum Berechnen von [S] sind bekannt. Aus diesem Grund wird auf eine detaillierte Erläuterung verzichtet (vgl. "A New Technique for Fully autonomous and Efficient 3D-Robotics Hand/Eye Calibration", IEEE Trans. an Robotics and Automation, Vol. 5, No. 3, 1989, pp. 345–358).
  • Verschiedene Verfahren zum Kalibrieren eines dreidimensionalen Bildsensors mit einer Kamera und einem Projektor, die in Kombination miteinander vorliegen, sind ebenfalls bekannt, weshalb auf eine detaillierte Erläuterung verzichtet wird (vgl. beispielsweise die ungeprüfte Veröffentlichung der japanischen Patentanmeldung Nr. 10-63317 ).
  • Bei dem obigen Ausführungsbeispiel wird die Beziehung zwischen dem Koordinatensystem Σf eines abschließenden Gliedes und dem Referenzkoordinatensystem Σc des Bildsensors mittels Kalibrierung eingestellt. Ist eine Kamera-Ansetzbefestigung so ausgebildet, dass der Bildsensor stets in der gleichen Position und Orientierung am abschließenden Glied des Roboters angebracht werden kann, so kann die Kalibrierung übersprungen werden und es kann über eine Eingabeeinheit, wie etwa eine Tastatur, eine im Voraus bekannte Beziehung zwischen Σc und Σf in der Bildverarbeitungseinheit eingestellt werden.
  • Wird die Kalibrierung – wie bei dem vorliegenden Ausführungsbeispiel – jedes Mal ausgeführt, wenn der Bildsensor angesetzt wird, ist keine besondere Genauigkeit beim Ansetzen des Bildsensors am Arbeitswerkzeug zu beachten. Mit anderen Worten, selbst wenn das Ansetzen des Bildsensors am Arbeitswerkzeug einen Fehler aufweist, kann dieser Fehler durch die Kalibration abgefangen werden. Somit ergibt sich ein Vorteil dadurch dass sich der Ansetzungsfehler nicht auf die Genauigkeit der Messung auswirkt. Ist beim Ansetzen keine besonders ausgeprägte Reproduzierbarkeit von Position und Orientierung erforderlich, führt dies zu dem Vorteil, dass ein einfacher Ansetzungsmechanismus verwendet werden kann, wie etwa ein Magnet oder ein Schraubstockmechanismus.
  • Schritte 102, 103, 104 und 105: Nach der Beendigung der Kalibration werden dreidimensionale Positionen der ersten bis dritten Referenzmarkierungen (vgl. 6a bis 6c in 2) gemessen, die auf der das Werkstück 4 haltenden Haltevorrichtung 5 gebildet sind. Die drei Referenzmarkierungen werden an Positionen gewählt, die sich nicht auf einer geraden Linie befinden. Jede dieser Referenzmarkierungen wird als eine Kreis- oder Kreuzform gebildet und wird an dem Werkstück oder der Haltevorrichtung vorbereitet oder angesteckt bzw. angeklebt, wenn das Werkstück oder die Haltevorrichtung kein Merkmal aufweisen, welches der Bildsensor auf einfache Weise erfassen kann, wie etwa bei einem ebenen Blech.
  • Anstelle auf künstliche Weise Referenzmarkierungen vorzusehen, können (soweit vorhanden) gebrauchsfertige Teile mit einer charakteristischen Gestalt bzw. Struktur verwendet werden. Löcher und Ecken bzw. Winkel, deren Positionen mittels Bildverarbeitung auf genaue Weise gewonnen werden können, sind für derartige Teile vorzuziehen. Es bestehen keine besonderen Einschränkungen für diese Teile, solange sie ein Merkmal haben, dessen Position durch den Bildsensor erfasst werden kann. Von den Referenzmarkierungen oder alternativ den charakteristischen Gestalt- bzw. Strukturmerkmalen oder charakteristischen Teile können alle oder ein Teil auf dem Werkstück 4 vorgesehen sein.
  • Wie konkret in 7 gezeigt, bedient der Bediener den Roboter, um den Roboter an eine Position B1 zu bewegen, bei welcher die erste Referenzmarkierung 6a sich im Blickfeld des Bildsensors befindet. Der Bediener gibt über die Tastatur der Bildverarbeitungseinheit die Anweisung, ein Bild aufzunehmen. Die Bildverarbeitungseinheit nimmt durch den Sensor ein Bild auf und erfasst die Position der ersten Referenzmarkierung 6a auf dem Bild. Parallel dazu zieht die Bildverarbeitungseinheit über die Kommunikationsschnittstelle eine Position [B1] des abschließenden Gliedes Σf zum Aufnahmezeitpunkt von der Robotersteuerungseinrichtung heran.
  • Als nächstes setzt der Bediener den Roboter von B1 auf eine Position B1' in einem gewissen Abstand von B1. Basierend auf den Anweisungen des Bedieners nimmt die Bildverarbeitungseinheit das Bild des Sensors auf, erfasst die Position der ersten Referenzmarkierung 6a auf dem Bild und zieht eine Roboterposition [B1'] heran, und zwar in gleicher Weise wie für die Position B1.
  • Die Position des Sensor-Koordinatensystems Σc bei [B1] und [B1'] im Roboter-Koordinatensystem wird aus [B1] und [B1'] gewonnen. Die Position und Orientierung [S] des Sensor-Koordinatensystems Σc relativ zum abschließenden Glied Σf wird durch die Kalibration erhalten. Unter Verwendung dieser Position und der Position der Markierung 6a auf dem Bild, welches bei [B1] und [B1'] erfasst wurde, kann eine dreidimensionale Position P1 (x1, y1, z1) der Markierung 6a im Roboterkoordinatensystem gewonnen werden, und zwar basierend auf einem bekannten Stereosicht-Prinzip. Ist der Bildsensor ein dreidimensionaler Bildsensor unter Verwendung eines Projektors, kann die Position P1 (x1, y1, z1) jeder Referenzmarkierung durch Abbilden bei einer Roboterposition gemessen werden.
  • Die gewonnene Position P1 (x1, y1, z1) wird über die Kommunikationsschnittstelle an die Robotersteuerungseinrichtung übergeben und wird im Speicher innerhalb der Robotersteuerungseinrichtung gespeichert. Die Auflösung eines üblichen Bildsensors liegt zwischen 1/500 bis 1/1000 oder darüber, bezogen auf den Gesichtsfeldbereich. Daher kann der Bildsensor Positionen der Referenzmarkierungen mit einer wesentlich höheren Genauigkeit messen als dies durch visuelle Beobachtung möglich ist.
  • In gleicher Weise versetzt der Bediener den Roboter an Positionen, bei denen sich die zweiten bzw. dritten Referenzmarkierungen 6b und 6c sich innerhalb des Blickfeldes des Sensors befinden. Der Bediener misst dreidimensionale Positionen P2 (x2, y2, z2) und P3 (x3, y3, z3) der zweiten bzw. dritten Markierung und speichert diese dreidimensionale Positionen im Speicher innerhalb der Robotersteuerungseinrichtung. Um den Roboter an die Messungspositionen zu setzen, kann der Bediener den Roboter manuell mittels Jog-Feed versetzen. Alternativ kann ein Roboterbewegungsprogramm zum Messen der Markierungs-Messungspositionen im Voraus vorbereitet werden und jede Messungsposition wird dem Bewegungsprogramm antrainiert. Die gemessenen Positionen der drei Referenzmarkierungen können im Speicher der Bildverarbeitungseinheit gespeichert werden.
  • Schritt 150: Nachdem die Referenzmarkierungen vor der Versetzung gemessen wurden, kann der Bildsensor abgenommen werden. Alternativ ist es nicht erforderlich, den Bildsensor vom Arbeitswerkzeug abzunehmen. Der Roboter 1 und die Haltevorrichtung 5 werden an unterschiedliche Positionen versetzt und werden wieder aufgebaut.
  • Schritte 200 und 201: Nach der Versetzung wird der Bildsensor wieder am vorderen Ende des Roboter-Arbeitswerkzeuges angebracht. Nach demselben Prozess wie vor der Versetzung wird nochmals eine Kalibration ausgeführt. Wurde der Bildsensor am vorderen Ende des Roboter-Arbeitswerkzeugs angesetzt belassen, können diese Schritte übersprungen werden.
  • Schritte 202, 203, 204 und 205: Nach demselben Prozess wie vor der Versetzung werden Positionen der Referenzmarkierungen 6a, 6b und 6c auf der Haltevorrichtung in der Anordnung nach der Versetzung erneut gemessen. Die nach der Versetzung gewonnenen Markierungspositionen P1' (x1', y1', z1'), P2' (x2', y2', z2') und P3' (x3', y3', z3') werden gespeichert. An dieser Stelle im Verfahren werden die Referenz-Markierungspositionen vor der Versetzung P1 (x1, y1, z1), P2 (x2, y2, z2) und P3 (x3, y3, z3) und die Referenz-Markierungspositionen nach der Versetzung P1' (x1', y1', z1'), P2' (x2', y2', z2') und P3' (x3', y3', z3') für die drei Referenzmarkierungen auf der Haltevorrichtung 5 im Speicher der Robotersteuerungseinrichtung gespeichert.
  • Der Bediener bedient die Roboter-Trainingskonsole 18, um das Bewegungsprogramm anzuweisen, welche gelernten Positionen korrigiert werden sollen. Als nächstes weist der Bediener den Speicherbereich an, in dem die Positionen der drei Referenzmarkierungen vor bzw. nach der Versetzung gespeichert sind, und gibt Anweisungen um die gelernten Positionen des Bewegungsprogramms zu korrigieren.
  • Schritt 300: Die Robotersteuerungseinrichtung berechnet aus den Referenzmarkierungs-Positionen P1, P2 und P3 vor der Versetzung eine Matrix [W1], welche die Position und Orientierung der Haltevorrichtung vor der Versetzung ausdrückt.
  • Schritt 301: Die Robotersteuerungseinrichtung berechnet aus den Referenzmarkierungs-Positionen P1', P2' und P3' nach der Versetzung eine Matrix [W2], welche die Position und Orientierung der Haltevorrichtung nach der Versetzung ausdrückt.
  • Diese vor und nach der Versetzung gewonnenen Matrizen stehen in folgender Beziehung zueinander, wobei P die gelernte bzw. Trainingsposition vor der Versetzung und P' die gelernte bzw. Trainingsposition nach der Versetzung angibt: inv[W1] P = inv[W2]P' (1)wobei inv[Wi] eine inverse Matrix von [Wi] ist. Aus dem obigen Ausdruck kann unter Verwendung von W1, W2 und P die gelernte Position P', die nach der Versetzung zu korrigieren ist, wie folgt gewonnen werden: P' = [W2] inv[W1] P. (2)
  • Somit kann die gelernte Position nach der Versetzung gewonnen werden, wenn die Matrix [W2] inv[W1] P mit der gelernten Position P vor der Versetzung auf der linken Seite multipliziert wird. Darauf basierend, wird [W2] inv[W1] P innerhalb der Robotersteuerungseinrichtung berechnet.
  • Schritt 302: Die Koordinatenumwandlung wird unter Verwendung des obigen Ausdrucks (2) an alle gelernten Positionen des zugeordneten Bewegungsprogramms übergeben. Auf diese Weise kann die gelernte Position nach Korrektur der relativen Positionsabweichung zwischen dem Roboter und dem Objekt aufgrund der Versetzung gewonnen werden.
  • Das Anbringen des Bildsensors am Arbeitsroboter mit Endeffektor ist oben erklärt worden. Wie in 8 gezeigt, kann bei einem weiteren Ausführungsbeispiel der vorliegenden Erfindung zusätzlich zum die Arbeit ausführenden Roboter 1 ein zweiter Roboter 1' vorgesehen sein, welcher eine weitere mechanische Robotereinheit 1b' enthält. Die mechanische Robotereinheit 1b' weist den Bildsensor 3 auf, welche dreidimensionale Positionen der Referenzmarkierungen 6a bis 6c oder alternativ dazu charakteristische Strukturen misst. Für diesen Fall ist es notwendig, zusätzlich zu der Position des Objekts die Position der mechanischen Robotereinheit 1b, die das Objekt bearbeitet, zu gewinnen.
  • Für diesen Zweck werden, wie in 9 gezeigt, auf einer Roboterbasis 8 der mechanischen Robotereinheit 1b Referenzmarkierungen 7a bis 7c auf mindestens drei Stellen (genau drei Stellen in diesem Beispiel) gesetzt, die sich nicht auf einer geraden Linie befinden. Diese Positionskoordinaten können vor und nach der Versetzung unter Verwendung des Bildsensors 3 gemessen werden, der an der mechanischen Robotereinheit 1b' angebracht ist. Dies kann in gleicher Weise geschehen wie wenn die drei Referenzmarkierungen 6a bis 6c an der Haltevorrichtung 5 gemessen werden. Vorzugsweise werden die Referenzmarkierungen 7a bis 7c an der mechanischen Robotereinheit 1b an Stellen wie die Roboterbasis 8 gesetzt, die sich nicht bewegen, wenn sich die Orientierung der mechanischen Robotereinheit 1b ändert.
  • Werden die Referenzmarkierungen an Stellen gesetzt, deren Positionen sich mit der Orientierung der mechanischen Robotereinheit 1b ändern, hat die mechanische Robotereinheit 1b vorzugsweise zur Messzeit vor der Versetzung und zur Messzeit nach der Versetzung die gleiche Orientierung. Hat die mechanische Robotereinheit 1b eine unterschiedliche Orientierung, ist es erforderlich, eine Veränderung in der Position des Roboters nach dem Versetzen unter Berücksichtigung des Unterschiedes der Orientierungen zu gewinnen. Dies erfordert eine komplexe Berechnung und kann leicht zu Fehlern führen.
  • Um das Programm zu versetzen, wird eine Position der mechanischen Robotereinheit 1b relativ zu der anderen mechanischen Robotereinheit 1b' berechnet, an welcher der Bildsensor angebracht ist, und zwar basierend auf den drei Referenzmarkierungen 7a bis 7c der mechanischen Robotereinheit 1b. Diese relative Position wird mit demselben Verfahren berechnet wie dasjenige, welches zum Berechnen der Position basierend auf den Referenzmarkierungen 6a bis 6c in dem obigen Ausführungsbeispiel verwendet wurde. Daher wird eine detaillierte Erläuterung dieser Berechnung übersprungen.
  • Eine Position (d. h. eine Matrix) der Haltevorrichtung 5 relativ zur mechanischen Robotereinheit 1b wird unter Verwendung der gewonnenen Position der mechanischen Robotereinheit 1b berechnet. Die gelernte Position wird in Schritt 300 und den nachfolgenden Schritten versetzt, wobei das gleiche Verfahren verwendet wie dasjenige, welches in dem obigen Ausführungsbeispiel verwendet wurde (bei dem der Messroboter und der Roboter, dessen gelernte Positionen korrigiert werden, derselbe ist).
  • Gemäß der vorliegenden Erfindung kann die Anzahl der Schritte der Trainings-Korrekturarbeit aufgrund der Versetzung vorteilhaft aufgrund der nachfolgend beschriebenen Effekte (1) und (2) verringert werden.
    • (1) Der Bildsensor misst Positionen ohne ein Aufsetzverfahren zu verwenden, welches eine Positionierung basierend auf visueller Erkennung beinhaltet. Daher kann eine hochgenaue Messung erreicht werden, wie sie basierend auf visueller Erken nung nicht erreicht werden kann. Da eine visuelle Bestätigung nicht erforderlich ist, hängt die Messung nicht von den Fähigkeiten des Bedieners ab. Da der Bildsensor die Messung automatisch ausführt, wird die Arbeit in kurzer Zeit durchgeführt.
    • (2) Der Bildsensor erkennt die Positionen und Orientierungen des vorderen Endes des Roboterarms und des Bildsensors, indem er von verschiedenen Punkten aus auf ein Referenzobjekt schaut. Daher kann der Bildsensor angebracht werden, wenn es erforderlich ist. Die Position und Orientierung eines Teils, an dem der Bildsensor angebracht ist, erfordert keine hohe Genauigkeit. Daher kann diese Arbeit einfach ausgeführt werden.
  • Nachdem die Erfindung unter Bezugnahme auf spezielle Ausführungsbeispiele beschrieben wurde, die zum Zweck der Erläuterung ausgewählt wurden, sollte es ersichtlich sein, dass durch einen Fachmann zahlreiche Modifikationen an diesen Ausführungsbeispielen vorgenommen werden können, ohne vom grundlegenden Konzept und Bereich der Erfindung abzuweichen.

Claims (13)

  1. Vorrichtung zur Korrektur einer gelernten Position, die eine gelernte Position eines Bewegungsprogrammes für einen Roboter (1) korrigiert, der mit einer mechanischen Robotereinheit (1b) ausgerüstet ist, wobei die Vorrichtung folgendes aufweist: einen Speicher (12), der die gelernte Position des Bewegungsprogrammes speichert; einen Bildsensor (3), der eine dreidimensionale Position von jedem von mindestens drei Merkmalen (6a, 6b, 6c) misst, die nicht entlang einer geraden Linie an einem Objekt (4, 5) angeordnet sind, welches durch den Roboter (1) zu bearbeiten ist; einen Positionsberechner (2), der eine dreidimensionale Position von jedem von den mindestens drei Merkmalen (6a, 6b, 6c) gewinnt, und zwar jeweils vor und nach einer Veränderung einer Position der mechanischen Robotereinheit (1b) in Bezug auf das Objekt (4, 5), welches zu bearbeiten ist, und basierend auf gemessenen, durch den Bildsensor (3) vor und nach der Veränderung gewonnenen Daten; und eine Robotersteuerungseinrichtung (1a), welche die gelernte Position des im Speicher (12) gespeicherten Bewegungsprogramms und zwar basierend auf einer Veränderung in der vom Positionsberechner (2) gewonnenen relativen Position korrigiert.
  2. Vorrichtung zur Korrektur einer gelernten Position nach Anspruch 1, wobei der Bildsensor (3) an einem vorbestimmten Teil der mechanischen Robotereinheit (1b) vorgesehen ist und eine Position und Orientierung des Bildsensors (3) relativ zu dem vorbestimmten Teil misst, und wobei der Positionsberechner die dreidimensionale Position von jedem von den mindestens drei Merkmalen (6a, 6b, 6c) durch Verwendung der Position und Orientierung des Bildsensors (3) relativ zu dem vorbestimmten Teil gewinnt.
  3. Vorrichtung zur Korrektur einer gelernten Position nach Anspruch 2, wobei die mechanische Robotereinheit (1b) einen Endeffektor (1d) aufweist, der das Objekt (4, 5) bearbeitet, und wobei der Bildsensor (3) an dem Endeffektor (1d) angebracht ist.
  4. Vorrichtung zur Korrektur einer gelernten Position nach Anspruch 2, wobei der Bildsensor (3) entfernbar an der mechanischen Robotereinheit (1b) angebracht ist und von der mechanischen Robotereinheit (1b) entfernt werden kann, wenn der Bildsensor (3) mit der Messung der dreidimensionalen Positionen der mindestens drei Merkmale (6a, 6b, 6c) des Objekts (4, 5) aufhört.
  5. Vorrichtung zur Korrektur einer gelernten Position nach Anspruch 2, wobei eine Position und Orientierung des Bildsensors (3) relativ zu der mechanischen Robotereinheit (1b) durch Messung eines Referenzobjekts (R) an einer vorbestimmten Position von einer Mehrzahl verschiedener Punkte aus gewonnen wird, und zwar jedes Mal dann, wenn der Bildsensor (3) an der mechanischen Robotereinheit (1b) angebracht wird.
  6. Vorrichtung zur Korrektur einer gelernten Position nach Anspruch 1, wobei der Bildsensor (3) an einem vorbestimmten Teil vorgesehen ist, welches nicht zu der mechanischen Robotereinheit (1b) gehört, und wobei der Bildsensor (3) eine dreidimensionale Position von jedem von mindestens drei Merkmalen (7a, 7b, 7c) misst, die nicht entlang einer geraden Linie an der mechanischen Robotereinheit (1b) angeordnet sind; und wobei der Positionsberechner (2) eine dreidimensionale Position von jedem von den mindestens drei Merkmalen (7a, 7b, 7c) der mechanischen Robotereinheit (1b) gewinnt, und zwar jeweils vor und nach der Veränderung der Position der mechanischen Robotereinheit (1b) in Bezug auf das Objekt (4, 5), welches zu bearbeiten ist.
  7. Vorrichtung zur Korrektur einer gelernten Position nach Anspruch 6, wobei der Bildsensor (3) an einer weiteren mechanischen Robotereinheit (1b') eines zweiten, vom Roboter (1) verschiedenen Roboters (1') angebracht ist.
  8. Vorrichtung zur Korrektur einer gelernten Position nach Anspruch 7, wobei der Bildsensor (3) entfernbar an der mechanischen Robotereinheit (1b') des zweiten Roboters (1') angebracht ist und von der mechanischen Robotereinheit (1b') des zweiten Roboters (1') entfernt werden kann, wenn der Bildsensor (3) mit der Messung der dreidimensionalen Positionen der mindestens drei Merkmale (6a, 6b, 6c) des Objekts (4, 5) aufhört.
  9. Vorrichtung zur Korrektur einer gelernten Position nach Anspruch 7, wobei eine Position und Orientierung des Bildsensors (3) relativ zu der mechanischen Robotereinheit (1b') des zweiten Roboters (1') durch Messung eines Referenzobjekts (R) an einer vorbestimmten Position von einer Mehrzahl verschiedener Punkte aus gewonnen wird, und zwar jedes Mal dann, wenn der Bildsensor (3) an der mechanischen Robotereinheit (1b') des zweiten Roboters (1') angebracht wird.
  10. Vorrichtung zur Korrektur einer gelernten Position nach einem der Ansprüche 1–9, wobei die mindestens drei Merkmale (6a, 6b, 6c) des Objekts (4, 5) charakteristische Gestaltmerkmale des Objekts (4, 5) sind.
  11. Vorrichtung zur Korrektur einer gelernten Position nach einem der Ansprüche 1–9, wobei die mindestens drei Merkmale (6a, 6b, 6c) des Objekts (4, 5) auf dem Objekt (4, 5) ausgebildete Referenzmarkierungen sind.
  12. Vorrichtung zur Korrektur einer gelernten Position nach einem der Ansprüche 1–9, wobei der Bildsensor (3) eine Kamera ist, die eine Bildverarbeitung durchführt, und wobei die Kamera eine dreidimensionale Position eines gemessenen Merkmals durch Abbilden des gemessenen Teils bei einer Mehrzahl unterschiedlicher Positionen gewinnt.
  13. Vorrichtung zur Korrektur einer gelernten Position nach einem der Ansprüche 1–9, wobei der Bildsensor (3) ein dreidimensionaler Bildsensor ist.
DE602004013107T 2003-11-18 2004-11-17 Vorrichtung zur Korrektur einer gelernten Position Active DE602004013107T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003388160A JP3733364B2 (ja) 2003-11-18 2003-11-18 教示位置修正方法
JP2003388160 2003-11-18

Publications (2)

Publication Number Publication Date
DE602004013107D1 DE602004013107D1 (de) 2008-05-29
DE602004013107T2 true DE602004013107T2 (de) 2009-07-02

Family

ID=34431547

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004013107T Active DE602004013107T2 (de) 2003-11-18 2004-11-17 Vorrichtung zur Korrektur einer gelernten Position

Country Status (4)

Country Link
US (2) US20050107920A1 (de)
EP (1) EP1533671B1 (de)
JP (1) JP3733364B2 (de)
DE (1) DE602004013107T2 (de)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE202010008191U1 (de) 2010-07-30 2010-11-04 Walter Maschinenbau Gmbh Vorrichtung zum Einlernen einer Greifeinrichtung
DE102011008174A1 (de) * 2011-01-10 2012-07-12 EngRoTec - Solutions GmbH Verfahren und Vorrichtung zum Verbinden zweier Formteile zu einem Bauteil, wie einer Tür oder einer Haube einer Fahrzeugkarosse
DE102007056773B4 (de) * 2007-11-23 2015-08-13 Kuka Roboter Gmbh Verfahren zum automatischen Bestimmen eines virtuellen Arbeitspunktes
DE102012104194B4 (de) * 2011-05-17 2015-10-15 Fanuc Corporation Roboter und Punktschweissroboter mit lernender Steuerungsfunktion
DE112010000775B4 (de) * 2009-02-12 2016-03-17 Kyoto University Industrierobotersystem
DE102015000589B4 (de) * 2014-01-23 2016-07-14 Fanuc Corporation Datenerzeugungsvorrichtung für einen visuellen Sensor und ein Erfassungssimulationssystem
US9517563B2 (en) 2014-02-13 2016-12-13 Fanuc Corporation Robot system using visual feedback
WO2018019550A1 (de) * 2016-07-26 2018-02-01 Siemens Aktiengesellschaft Verfahren zum steuern eines endelementes einer werkzeugmaschine und eine werkzeugmaschine
DE102017123877B4 (de) 2016-10-14 2019-09-19 Engel Austria Gmbh Robotersystem
US10889003B2 (en) 2017-02-20 2021-01-12 Kabushiki Kaisha Yaskawa Denki Robot system, robot controller, and method for controlling robot
DE102015104587B4 (de) 2015-03-26 2022-04-28 Pi4_Robotics Gmbh Verfahren zum Kalibrieren eines Roboters an einem Arbeitsbereich und System zum Durchführen des Verfahrens
DE102021112768A1 (de) 2021-05-18 2022-11-24 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Vorrichtung und Verfahren zum Bolzenschweißen an einem Karosseriebauteil einer Kraftfahrzeugkarosserie
DE102021114268A1 (de) 2021-06-02 2022-12-08 Bayerische Motoren Werke Aktiengesellschaft Robotervorrichtung eingerichtet zur Ermittlung einer Infrastrukturobjektlage eines vorbestimmten Infrastrukturobjekts und Verfahren
DE102021114265A1 (de) 2021-06-02 2022-12-08 Bayerische Motoren Werke Aktiengesellschaft Robotervorrichtung eingerichtet zur Ermittlung einer Zielobjektlage eines vorbestimmten Zielobjekts und Verfahren
DE102021114264A1 (de) 2021-06-02 2022-12-08 Bayerische Motoren Werke Aktiengesellschaft Robotervorrichtung eingerichtet zur Ermittlung einer Interaktionsmaschinenlage zumindest eines Elements einer vorbestimmten Interaktionsmaschine und Verfahren
DE102019131284B4 (de) 2018-11-27 2023-11-02 Fanuc Corporation Robotersystem und Koordinatenumwandlungsverfahren
DE102009041734B4 (de) 2009-09-16 2023-11-02 Kuka Roboter Gmbh Vermessung eines Manipulators

Families Citing this family (94)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3819883B2 (ja) * 2003-08-27 2006-09-13 ファナック株式会社 ロボットプログラム位置修正装置
JP4137909B2 (ja) * 2005-04-13 2008-08-20 ファナック株式会社 ロボットプログラム補正装置
JP2006346790A (ja) * 2005-06-15 2006-12-28 Toyota Motor Corp ロボットと干渉判別方法と干渉判別装置
JP2007090481A (ja) * 2005-09-28 2007-04-12 Fanuc Ltd ロボットシミュレーション装置
US20070075048A1 (en) * 2005-09-30 2007-04-05 Nachi-Fujikoshi Corp. Welding teaching point correction system and calibration method
DE102005048136B4 (de) * 2005-10-06 2010-01-21 Kuka Roboter Gmbh Verfahren zum Bestimmen eines virtuellen Tool-Center-Points
JP4174517B2 (ja) 2006-03-13 2008-11-05 ファナック株式会社 教示位置修正装置および教示位置修正方法
JP2007319938A (ja) * 2006-05-30 2007-12-13 Toyota Motor Corp ロボット装置及び物体の三次元形状の取得方法
US8560047B2 (en) 2006-06-16 2013-10-15 Board Of Regents Of The University Of Nebraska Method and apparatus for computer aided surgery
JP4221014B2 (ja) 2006-06-20 2009-02-12 ファナック株式会社 ロボット制御装置
JP4267005B2 (ja) 2006-07-03 2009-05-27 ファナック株式会社 計測装置及びキャリブレーション方法
KR101340990B1 (ko) * 2006-12-15 2013-12-13 엘지디스플레이 주식회사 기판 로딩 장치
SG152090A1 (en) * 2007-10-23 2009-05-29 Hypertronics Pte Ltd Scan head calibration system and method
CN101559568B (zh) * 2008-04-16 2013-04-24 鸿富锦精密工业(深圳)有限公司 机床
DE102008021624A1 (de) * 2008-04-30 2008-12-18 Daimler Ag Verfahren zum Einrichten eines Messpunktes für einen Sensor
JP2009279663A (ja) * 2008-05-19 2009-12-03 Kawada Kogyo Kk ロボット用位置同定方法および装置
DE102008039428B4 (de) 2008-08-23 2021-07-08 Carl Zeiss Fixture Systems Gmbh Vorrichtung zur Bildung von Referenzmarkierungen im Objektfeld einer optischen Längenmesseinrichtung
JP5272617B2 (ja) * 2008-09-26 2013-08-28 株式会社Ihi ロボット装置及びロボット装置の制御方法
WO2010091086A1 (en) * 2009-02-03 2010-08-12 Fanuc Robotics America, Inc. Method of controlling a robotic tool
JP5549129B2 (ja) 2009-07-06 2014-07-16 セイコーエプソン株式会社 位置制御方法、ロボット
JP4763074B2 (ja) 2009-08-03 2011-08-31 ファナック株式会社 ロボットのツール先端点の位置の計測装置および計測方法
JP4850956B2 (ja) * 2010-02-19 2012-01-11 ファナック株式会社 学習制御機能を備えたロボット
JP5715809B2 (ja) 2010-03-29 2015-05-13 株式会社ダイヘン ロボットの作業プログラム作成方法、ロボットの作業プログラム作成装置、及びロボット制御システム
US9393694B2 (en) * 2010-05-14 2016-07-19 Cognex Corporation System and method for robust calibration between a machine vision system and a robot
JP5418915B2 (ja) * 2010-05-20 2014-02-19 株式会社安川電機 ロボット、状態呈示装置及び状態呈示方法並びにロボットの教示方法
US9731419B2 (en) * 2010-08-03 2017-08-15 Praxair S.T. Technology, Inc. System and method for programming robots
JP5480198B2 (ja) * 2011-05-17 2014-04-23 ファナック株式会社 学習制御機能を備えたスポット溶接ロボット
JP5383756B2 (ja) * 2011-08-17 2014-01-08 ファナック株式会社 学習制御機能を備えたロボット
US9498231B2 (en) 2011-06-27 2016-11-22 Board Of Regents Of The University Of Nebraska On-board tool tracking system and methods of computer assisted surgery
US11911117B2 (en) 2011-06-27 2024-02-27 Board Of Regents Of The University Of Nebraska On-board tool tracking system and methods of computer assisted surgery
CN103764061B (zh) 2011-06-27 2017-03-08 内布拉斯加大学评议会 工具承载的追踪系统和计算机辅助外科方法
CN102909728B (zh) * 2011-08-05 2015-11-25 鸿富锦精密工业(深圳)有限公司 机器人工具中心点的视觉校正方法
JP2013099815A (ja) * 2011-11-08 2013-05-23 Fanuc Ltd ロボットプログラミング装置
DE102011086941B4 (de) * 2011-11-23 2016-01-21 Kuka Roboter Gmbh Industrieroboter
JP5912627B2 (ja) * 2012-02-14 2016-04-27 川崎重工業株式会社 撮像検査装置ならびにその制御装置および制御方法
JP5628873B2 (ja) * 2012-08-31 2014-11-19 ファナック株式会社 パラレルリンクロボット
US9233470B1 (en) 2013-03-15 2016-01-12 Industrial Perception, Inc. Determining a virtual representation of an environment by projecting texture patterns
US10105149B2 (en) 2013-03-15 2018-10-23 Board Of Regents Of The University Of Nebraska On-board tool tracking system and methods of computer assisted surgery
JP5713047B2 (ja) * 2013-04-18 2015-05-07 株式会社安川電機 移動ロボット、移動ロボットの位置決めシステム、及び、移動ロボットの位置決め方法
KR101459479B1 (ko) * 2013-07-01 2014-11-07 현대자동차 주식회사 올인원 지그리스 프로젝션 로딩 시스템 및 이를 이용한 차체 부품 조립 방법
JP5970434B2 (ja) * 2013-08-30 2016-08-17 株式会社神戸製鋼所 教示データ作成システムおよびプログラム
WO2015079740A1 (ja) * 2013-11-28 2015-06-04 三菱電機株式会社 ロボットシステムおよびロボットシステムの制御方法
WO2015165062A1 (en) * 2014-04-30 2015-11-05 Abb Technology Ltd Method for calibrating tool centre point for industrial robot system
EP3146397A1 (de) 2014-05-20 2017-03-29 Par Systems, Inc. Adaptives fertigungssystem
JP6466661B2 (ja) * 2014-07-03 2019-02-06 川崎重工業株式会社 ロボットの教示点変換方法、装置、及びロボットセル
US9327406B1 (en) 2014-08-19 2016-05-03 Google Inc. Object segmentation based on detected object-specific visual cues
CN104476549B (zh) * 2014-11-20 2016-04-27 北京卫星环境工程研究所 基于视觉测量的机械臂运动路径补偿方法
TWI577484B (zh) * 2014-11-20 2017-04-11 財團法人工業技術研究院 三維雷射加工裝置及定位誤差校正方法
GB201509341D0 (en) 2015-05-29 2015-07-15 Cambridge Medical Robotics Ltd Characterising robot environments
US10016892B2 (en) * 2015-07-23 2018-07-10 X Development Llc System and method for determining tool offsets
WO2017033361A1 (ja) * 2015-08-25 2017-03-02 川崎重工業株式会社 ロボットシステム及びその運転方法
JP6407826B2 (ja) 2015-09-03 2018-10-17 ファナック株式会社 座標系設定方法、座標系設定装置、及び座標系設定装置を備えたロボットシステム
DE102016116702B4 (de) * 2015-09-14 2019-01-24 Fanuc Corporation Messsystem zum Kalibrieren der mechanischen Parameter eines Roboters
KR20180015774A (ko) * 2015-09-25 2018-02-14 두산로보틱스 주식회사 로봇 제어 방법 및 장치
US9751211B1 (en) * 2015-10-08 2017-09-05 Google Inc. Smart robot part
DE202015105595U1 (de) * 2015-10-21 2016-01-14 Fft Produktionssysteme Gmbh & Co. Kg Absolutes robotergestütztes Positionsverfahren
JP6812095B2 (ja) * 2015-10-22 2021-01-13 キヤノン株式会社 制御方法、プログラム、記録媒体、ロボット装置、及び物品の製造方法
FR3043004B1 (fr) * 2015-10-29 2017-12-22 Airbus Group Sas Procede d'orientation d'un effecteur portant un outil d'assemblage par rapport a une surface
DE102015222164A1 (de) 2015-11-11 2017-05-11 Kuka Roboter Gmbh Verfahren und Computerprogramm zur Erzeugung einer grafischen Benutzerschnittstelle eines Manipulatorprogramms
DE102015222168B4 (de) 2015-11-11 2024-02-22 Kuka Roboter Gmbh Verfahren und computerprogramm zur korrektur von fehlern eines manipulatorsystems
DE102015222167A1 (de) * 2015-11-11 2017-05-11 Kuka Roboter Gmbh Verfahren zum vereinfachten ändern von applikationsprogrammen zur steuerung einer industrieanlage
JP6348097B2 (ja) 2015-11-30 2018-06-27 ファナック株式会社 ワーク位置姿勢算出装置およびハンドリングシステム
US9757859B1 (en) * 2016-01-21 2017-09-12 X Development Llc Tooltip stabilization
US9744665B1 (en) 2016-01-27 2017-08-29 X Development Llc Optimization of observer robot locations
US10059003B1 (en) 2016-01-28 2018-08-28 X Development Llc Multi-resolution localization system
EP3437083B1 (de) * 2016-03-28 2023-07-19 ABB Schweiz AG Verfahren, system und vorrichtung zur bestimmung von suchparametern für schweissnahtpunktkalibrierung
CN107538486B (zh) * 2016-06-29 2020-12-01 沈阳新松机器人自动化股份有限公司 一种关节力控制平台装置、方法及相关装置
JP6500852B2 (ja) * 2016-07-11 2019-04-17 株式会社安川電機 ロボットシステム、ロボットの制御方法、ロボットコントローラ
CN108000499B (zh) * 2016-10-27 2020-07-31 达明机器人股份有限公司 机器人视觉坐标的编程方法
JP6922204B2 (ja) * 2016-12-09 2021-08-18 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
CN106737683A (zh) * 2017-01-11 2017-05-31 吉林省凯迪科技有限公司 校正工业机器人离线编程在现场中的误差的方法
JP6964989B2 (ja) * 2017-02-09 2021-11-10 キヤノン株式会社 制御方法、ロボットシステム、物品の製造方法、プログラム、及び記録媒体
CN110636923B (zh) * 2017-05-17 2023-03-21 深圳配天智能技术研究院有限公司 一种机器人的运动控制方法、机器人及控制器
JP6572262B2 (ja) 2017-06-06 2019-09-04 ファナック株式会社 教示位置修正装置および教示位置修正方法
JP6457587B2 (ja) * 2017-06-07 2019-01-23 ファナック株式会社 ワークの動画に基づいて教示点を設定するロボットの教示装置
JP6568172B2 (ja) 2017-09-22 2019-08-28 ファナック株式会社 キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法
JP6626065B2 (ja) * 2017-10-31 2019-12-25 ファナック株式会社 教示点又は教示線の位置ずれを警告又は修正するロボット教示装置
US11534252B2 (en) 2017-11-16 2022-12-27 Intuitive Surgical Operations, Inc. Master/slave registration and control for teleoperation
EP3713508A4 (de) 2017-11-21 2021-01-20 Intuitive Surgical Operations, Inc. Systeme und verfahren zur master/werkzeug-registrierung und zur steuerung für intuitive bewegung
JP7080068B2 (ja) * 2018-02-16 2022-06-03 日本電産サンキョー株式会社 ロボットの位置情報復元方法
JP7097722B2 (ja) 2018-03-20 2022-07-08 日本電産サンキョー株式会社 ロボットの位置情報復元方法
CN108582069A (zh) * 2018-04-17 2018-09-28 上海达野智能科技有限公司 机器人拖动示教系统和方法、存储介质、操作系统
CN109002008A (zh) * 2018-04-23 2018-12-14 西安工业大学 一种基于单目视觉的十字滑台自动校准系统
CN110682285A (zh) * 2018-07-06 2020-01-14 康硕电子(苏州)有限公司 机械手臂校正系统以及校正方法
WO2020024178A1 (zh) * 2018-08-01 2020-02-06 深圳配天智能技术研究院有限公司 一种手眼标定方法、系统及计算机存储介质
CN112384339B (zh) 2018-10-22 2024-05-14 直观外科手术操作公司 用于主机/工具配准和控制以进行直观运动的系统和方法
CN109590181A (zh) * 2018-11-15 2019-04-09 株洲飞鹿高新材料技术股份有限公司 一种基于双目视觉的工件喷涂方法、喷涂装置及喷涂系统
JP7337495B2 (ja) * 2018-11-26 2023-09-04 キヤノン株式会社 画像処理装置およびその制御方法、プログラム
CN109579766B (zh) * 2018-12-24 2020-08-11 苏州瀚华智造智能技术有限公司 一种产品外形自动检测方法及系统
US11623339B1 (en) * 2019-05-16 2023-04-11 Amazon Technologies, Inc. Portable robotic manipulation systems
CN114800460B (zh) * 2021-01-18 2023-12-22 泰科电子(上海)有限公司 机器人操纵器和使用机器人操纵器制造产品的方法
CN113102882B (zh) * 2021-06-16 2021-08-24 杭州景业智能科技股份有限公司 几何误差补偿模型的训练方法和几何误差补偿方法
JPWO2023012894A1 (de) * 2021-08-03 2023-02-09
CN116619395B (zh) * 2023-07-26 2023-12-22 深圳优艾智合机器人科技有限公司 一种机械臂的控制方法、移动机器人及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59189415A (ja) * 1983-04-13 1984-10-27 Hitachi Ltd 工業用ロボツトの動作教示方法および装置
US5374830A (en) * 1984-10-12 1994-12-20 Sensor Adaptive Machines, Inc. Target based determination of robot and sensor alignment
US5297238A (en) * 1991-08-30 1994-03-22 Cimetrix Incorporated Robot end-effector terminal control frame (TCF) calibration method and device
JP3012463B2 (ja) * 1993-12-22 2000-02-21 松下電工株式会社 組立装置
US6321137B1 (en) * 1997-09-04 2001-11-20 Dynalog, Inc. Method for calibration of a robot inspection system
AU742980B2 (en) * 1999-10-13 2002-01-17 Kawasaki Jukogyo Kabushiki Kaisha Random work arranging device
CA2369845A1 (en) * 2002-01-31 2003-07-31 Braintech, Inc. Method and apparatus for single camera 3d vision guided robotics
EP1472052A2 (de) * 2002-01-31 2004-11-03 Braintech Canada, Inc. Verfahren und vorrichtung für 3d-sicht geführte roboter mit einer kamera

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007056773B4 (de) * 2007-11-23 2015-08-13 Kuka Roboter Gmbh Verfahren zum automatischen Bestimmen eines virtuellen Arbeitspunktes
DE112010000775B4 (de) * 2009-02-12 2016-03-17 Kyoto University Industrierobotersystem
US9393691B2 (en) 2009-02-12 2016-07-19 Mitsubishi Electric Corporation Industrial robot system including action planning circuitry for temporary halts
DE102009041734B4 (de) 2009-09-16 2023-11-02 Kuka Roboter Gmbh Vermessung eines Manipulators
US8688269B2 (en) 2010-07-30 2014-04-01 Walter Maschinenbau Gmbh Apparatus for teaching a gripping device
DE202010008191U1 (de) 2010-07-30 2010-11-04 Walter Maschinenbau Gmbh Vorrichtung zum Einlernen einer Greifeinrichtung
DE102011008174A1 (de) * 2011-01-10 2012-07-12 EngRoTec - Solutions GmbH Verfahren und Vorrichtung zum Verbinden zweier Formteile zu einem Bauteil, wie einer Tür oder einer Haube einer Fahrzeugkarosse
DE102012104194B4 (de) * 2011-05-17 2015-10-15 Fanuc Corporation Roboter und Punktschweissroboter mit lernender Steuerungsfunktion
DE102015000589B4 (de) * 2014-01-23 2016-07-14 Fanuc Corporation Datenerzeugungsvorrichtung für einen visuellen Sensor und ein Erfassungssimulationssystem
US9519736B2 (en) 2014-01-23 2016-12-13 Fanuc Corporation Data generation device for vision sensor and detection simulation system
US9517563B2 (en) 2014-02-13 2016-12-13 Fanuc Corporation Robot system using visual feedback
DE102015001527B4 (de) 2014-02-13 2019-02-28 Fanuc Corporation Robotersystem, das visuelle Rückmeldung verwendet
DE102015104587B4 (de) 2015-03-26 2022-04-28 Pi4_Robotics Gmbh Verfahren zum Kalibrieren eines Roboters an einem Arbeitsbereich und System zum Durchführen des Verfahrens
CN109789551A (zh) * 2016-07-26 2019-05-21 西门子公司 用于控制机床端部元件的方法以及机床
CN109789551B (zh) * 2016-07-26 2022-07-08 西门子公司 用于控制机床端部元件的方法以及机床
US11498219B2 (en) 2016-07-26 2022-11-15 Siemens Aktiengesellschaft Method for controlling an end element of a machine tool, and a machine tool
WO2018019550A1 (de) * 2016-07-26 2018-02-01 Siemens Aktiengesellschaft Verfahren zum steuern eines endelementes einer werkzeugmaschine und eine werkzeugmaschine
DE102017123877B4 (de) 2016-10-14 2019-09-19 Engel Austria Gmbh Robotersystem
US10889003B2 (en) 2017-02-20 2021-01-12 Kabushiki Kaisha Yaskawa Denki Robot system, robot controller, and method for controlling robot
DE102018202322B4 (de) * 2017-02-20 2021-02-11 Kabushiki Kaisha Yaskawa Denki Robotersystem, Robotersteuervorrichtung und Robotersteuerverfahren
DE102019131284B4 (de) 2018-11-27 2023-11-02 Fanuc Corporation Robotersystem und Koordinatenumwandlungsverfahren
DE102021112768A1 (de) 2021-05-18 2022-11-24 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Vorrichtung und Verfahren zum Bolzenschweißen an einem Karosseriebauteil einer Kraftfahrzeugkarosserie
DE102021112768B4 (de) 2021-05-18 2023-03-23 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Vorrichtung und Verfahren zum Bolzenschweißen an einem Karosseriebauteil einer Kraftfahrzeugkarosserie
DE102021114268A1 (de) 2021-06-02 2022-12-08 Bayerische Motoren Werke Aktiengesellschaft Robotervorrichtung eingerichtet zur Ermittlung einer Infrastrukturobjektlage eines vorbestimmten Infrastrukturobjekts und Verfahren
DE102021114265A1 (de) 2021-06-02 2022-12-08 Bayerische Motoren Werke Aktiengesellschaft Robotervorrichtung eingerichtet zur Ermittlung einer Zielobjektlage eines vorbestimmten Zielobjekts und Verfahren
DE102021114264A1 (de) 2021-06-02 2022-12-08 Bayerische Motoren Werke Aktiengesellschaft Robotervorrichtung eingerichtet zur Ermittlung einer Interaktionsmaschinenlage zumindest eines Elements einer vorbestimmten Interaktionsmaschine und Verfahren

Also Published As

Publication number Publication date
US20080300723A1 (en) 2008-12-04
JP3733364B2 (ja) 2006-01-11
EP1533671B1 (de) 2008-04-16
JP2005149299A (ja) 2005-06-09
US20050107920A1 (en) 2005-05-19
DE602004013107D1 (de) 2008-05-29
EP1533671A1 (de) 2005-05-25

Similar Documents

Publication Publication Date Title
DE602004013107T2 (de) Vorrichtung zur Korrektur einer gelernten Position
DE102018112820B4 (de) Teach-Positionskorrekturvorrichtung und Teach-Positionskorrekturverfahren
DE102010032840B4 (de) Vorrichtung und Verfahren zum Messen der Position eines Werkzeugmittelpunktes eines Roboters
DE602005003147T2 (de) Messsystem
DE102015001527B4 (de) Robotersystem, das visuelle Rückmeldung verwendet
EP2435217B1 (de) Verfahren und system zum hochpräzisen positionieren mindestens eines objekts in eine endlage im raum
EP2227356B1 (de) Verfahren und system zum hochpräzisen positionieren mindestens eines objekts in eine endlage im raum
DE69105476T2 (de) Verfahren zum kalibrieren eines optischen sensors.
EP2874764B1 (de) Biegepresse mit winkelerfassungsvorrichtung sowie verfahren zur ermittlung des biegewinkels
DE102011050640B4 (de) Vorrichtung und Verfahren zum Wiederherstellen der Positionsinformation von Robotern
DE102016009438A1 (de) Robotersystem mit Sichtsensor und einer Vielzahl von Robotern
DE3854235T2 (de) Automatische einstellung der werkzeugspitze.
EP1875991A2 (de) Messsystem und Kalibrierungsverfahren
DE102017111543B4 (de) Robotersteuerungsvorrichtung und ein Verfahren zur Steuerung eines Roboters
WO2001000370A1 (de) Verfahren und vorrichtung zum kalibrieren von robotermessstationen, manipulatoren und mitgeführten optischen messeinrichtungen
DE102018007287B4 (de) Roboter-Controller zum Durchführen einer Kalibrierung, Messsystem und Kalibrierverfahren
DE102014117346B4 (de) Roboter, Robotersteuerungsverfahren und Robotersteuerungsprogramm zur Werkstückkorrektur
DE68926292T2 (de) Roboterbetriebsverfahren, das manuell korrigiert werden kann
DE102008060052A1 (de) Verfahren und Vorrichtung zur Kompensation einer kinematischen Abweichung
DE10351669B4 (de) Verfahren und Vorrichtung zum Steuern eines Handhabungsgeräts relativ zu einem Objekt
DE112016002353T5 (de) Montagevorrichtung und Montageverfahren für einen Zahnradmechanismus
DE19931676C2 (de) Verfahren zum Vermessen von Werkstücken und Bearbeitungsstation
DE102015104582A1 (de) Verfahren zum Kalibrieren eines Roboters an einem Arbeitsbereich und System zum Durchführen des Verfahrens
DE102021209178A1 (de) Verfahren und Vorrichtung zum Bestimmen von Relativposen und zur Kalibrierung bei einem Koordinatenmessgerät oder Roboter
EP3441200A1 (de) Referenzierverfahren und vorrichtung für industrieroboter

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
R082 Change of representative

Ref document number: 1533671

Country of ref document: EP

Representative=s name: WUESTHOFF & WUESTHOFF PATENT- UND RECHTSANWAELTE,