DE102015015094B4 - Kooperationssystem mit Werkzeugmaschine und Roboter - Google Patents

Kooperationssystem mit Werkzeugmaschine und Roboter Download PDF

Info

Publication number
DE102015015094B4
DE102015015094B4 DE102015015094.4A DE102015015094A DE102015015094B4 DE 102015015094 B4 DE102015015094 B4 DE 102015015094B4 DE 102015015094 A DE102015015094 A DE 102015015094A DE 102015015094 B4 DE102015015094 B4 DE 102015015094B4
Authority
DE
Germany
Prior art keywords
coordinate
robot
calibration mark
machine tool
machine
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
DE102015015094.4A
Other languages
English (en)
Other versions
DE102015015094A1 (de
Inventor
Hiroji Nishi
Jun Mizuno
Masahiro Oyamada
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
Priority to JP2014242393A priority Critical patent/JP6126067B2/ja
Priority to JP2014-242393 priority
Application filed by FANUC Corp filed Critical FANUC Corp
Publication of DE102015015094A1 publication Critical patent/DE102015015094A1/de
Application granted granted Critical
Publication of DE102015015094B4 publication Critical patent/DE102015015094B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q17/00Arrangements for observing, indicating or measuring on machine tools
    • B23Q17/24Arrangements for observing, indicating or measuring on machine tools using optics or electromagnetic waves
    • B23Q17/2409Arrangements for indirect observation of the working space using image recording means, e.g. a camera
    • 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
    • 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/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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller

Abstract

Kooperationssystem (10) mit einer Werkzeugmaschine (12) und einem Roboter (14) zum Ausführen einer Tätigkeit in Bezug auf die Werkzeugmaschine, wobei das Kooperationssystem aufweist:
eine Kamera (22), die an einem bewegbaren Teil (20) des Roboters angebracht ist;
zumindest eine Kalibrierungsmarkierung (30, 32) die an einem bewegbaren Teil der Werkzeugmaschine angeordnet ist;
eine erste Markierungskoordinatengewinnungseinrichtung in einer Steuerung (11) der Werkzeugmaschine, welche einen ersten Koordinatenwert der Kalibrierungsmarkierung in einem Maschinenkoordinatensystem gewinnt, welches in Bezug auf die Werkzeugmaschine definiert und in einer Robotersteuerung (16) eingestellt ist, durch Verwenden einer an der Werkzeugmaschine bereitgestellten Messsonde (28), wobei der erste Koordinatenwert in Basiskoordinaten transformiert und an die Robotersteuerung (16) übertragen wird;
eine zweite Markierungskoordinatengewinnungseinrichtung in der Robotersteuerung (16), welche einen zweiten Koordinatenwert der Kalibrierungsmarkierung in einem Roboterkoordinatensystem gewinnt, welches in Bezug auf den Roboter definiert ist, durch Aufnahme der Kalibrierungsmarkierung durch die Kamera; und
eine Koordinatentransformationseinrichtung in der Robotersteuerung (16), welche eine Koordinatentransformation berechnet zum Transformieren eines Roboterkoordinatensystems in das Maschinenkoordinatensystem auf Basis einer Mehrzahl von Sätzen der ersten und zweiten Koordinatenwerte der Kalibrierungsmarkierung.

Description

  • Hintergrund der Erfindung
  • Gebiet der Erfindung
  • Die Erfindung betrifft ein Kooperationssystem, bei dem ein Roboter im Zusammenwirken mit einer Werkzeugmaschine betrieben wird.
  • Zum Stand der Technik
  • Wird ein Roboter in Verbindung mit einer Werkzeugmaschine betrieben, kann er zum Beispiel Arbeiten ausführen, wie den Austausch eines Werkzeuges, die Entfernung von Spänen, die Inspektion des Inneren der Werkzeugmaschine etc. sowie auch die Handhabung eines zu bearbeitenden Gegenstandes. Betrifft die Arbeit des Roboters nur die Handhabung eines Gegenstandes, werden normalerweise mehrere (üblicherweise 3 oder 4) Lehrpunkte („teaching points“) auf dem Gegenstand in der Werkzeugmaschine gewonnen und es wird eine Koordinaten-Transformationsmatrix vom Roboterkoordinatensystem zum Objektkoordinatensystem (oder Maschinen-Koordinatensystem) unter Verwendung der Position eines Werkzeugmittelpunktes des Roboters berechnet.
  • Beispielsweise beschreibt die JP S59-177607 A ein automatisches Programmierverfahren zum automatischen Erzeugen eines Roboterprogrammes aus einem Programm für eine Werkzeugmaschine durch Anschluss der Werkzeugmaschine an einen Roboter und durch eine Konversionsgleichung zwischen einem Koordinatensystem in Bezug auf den Roboter und einem Koordinatensystem in Bezug auf die Werkzeugmaschine.
  • Die JP H05-212652 A beschreibt eine Präzisionsbearbeitungsmaschine mit einer Prozesszone und einer Messzone und mit einer ersten Berechnungseinheit zum Berechnen einer Koordinatentransformationsmatrix auf Basis von Messdaten; einer zweiten Recheneinrichtung zum Konvertieren der Messdaten unter Verwendung der berechneten Transformationsmatrix; einer Beurteilungseinrichtung zum Prüfen der Formgenauigkeit der berechneten Formdaten; einer Korrektureinrichtung zum automatischen korrigieren von MC-Daten; und einer Prozessausführungseinheit zum erneuten Ausführen des Prozesses auf Basis der korrigierten NC-Daten.
  • Die JP H05-324034 A beschreibt ein Verfahren zum Steuern eines Roboters, bei dem ein Übergeordneter Computer einer Werkzeugmaschine zum Ausführen einer NC-Steuerung Bewegungssteuerdaten an eine Robotersteuerung überträgt, sodass der Roboter ein Werkstück oder ein Werkzeug der Werkzeugmaschine bewegt oder austauscht.
  • Die JP 2008-152733 A beschreibt eine Offline-Programmiervorrichtung zum Erzeugen eines Betriebsprogramms, mit dem die Position und Orientierung eines Gegenstandes auf einer Werkzeugmaschine während der Handhabung berechnet werden auf Basis eines Befehls zum Spezifizieren der Position des Gegenstandes in eines Arbeitsprogramms, welches der Werkzeugmaschine aufgegeben ist, und wobei die Position und Orientierung des Roboters während der Handhabung auf Basis eine vorgegebenen Positionsbeziehung berechnet werden.
  • Die JP H11-509928 A beschreibt eine Vorrichtung und ein Verfahren zum Erzeugen eines dreidimensionales Modells eines Gegenstandes unter Verwendung einer Sonde, die an einem Roboter angebracht ist, um so ein Koordinatensystem des Roboters relativ zu einem Roboterkoordinatensystem zu gewinnen. Dieses Dokument beschreibt auch, dass das dreidimensionale Modell des Gegenstandes erzeugt wird durch Gewinnung des Koordinatenwertes des Gegenstandes auf Basis einer Mehrzahl von Bildern die gewonnen werden durch Bewegung einer Kamera, welche am Vorderende des Roboters angebracht ist, und Aufnehmen des Gegenstandes mittels der Kamera.
  • Die JP 2009-279677 A beschreibt eine Robotersteuerung, die eingerichtet ist für eine automatische Korrektur einer Lehrposition durch Bewegung eines Roboters oder eines zu bearbeitenden Gegenstandes derart, dass eine gewünschte Positionsbeziehung gewonnen wird, ohne Kalibrierung einer Messeinrichtung, wie einer Kamera.
  • Im Stand der Technik wird die Koordinatentransformation zwischen einem Roboter Koordinatensystem und einem Maschinenkoordinatensystem hauptsächlich für die Handhabung eines zu bearbeitenden Objektes verwendet. Die JP S59-177607 A beschreibt beispielsweise ein Verfahren, bei dem der Roboter so eingesetzt wird, dass in einfacher Weise ein Handhabungsprogramm für den mit der Werkzeugmaschine zu bearbeitenden Gegenstand erzeugbar ist, und die JP H05-324034 A beschreibt ein Verfahren für eine einfache Befehlsgabe an den Roboter unter Verwendung des übergeordneten Computers derart, dass der Roboter die Handhabung des durch die Werkzeugmaschine zu bearbeitenden Gegenstandes ausführt sowie das Anbringen/Entfernen des Werkzeuges. Obwohl die Koordinatentransformation in den Dokumenten JP S59-177607 A bzw. JP H05-324034 A ausgeführt wird, sind konkrete Verfahren für die Gewinnung einer Einrichtung für die Koordinatentransformation in diesen Dokumenten nicht beschrieben.
  • Gemäß der Lehre nach der JP H05-212652 A wird ein Bearbeitungsbetrag einer Werkzeugmaschine korrigiert durch Verwendung der Differenz zwischen einer gemessenen Oberfläche eines zu bearbeitenden Objektes und einer idealen gekrümmten Fläche, und der Koordinatentransformation von einem entsprechend der Messeinrichtung definierten Koordinatensystem in ein Koordinatensystem, das bei einer vorgegeben Stelle der Werkzeugmaschine definiert ist.
  • Allerdings wird ein konkretes Verfahren für die Gewinnung einer Einrichtung für die Koordinatentransformation vom Koordinatensystem bezüglich der Messeinrichtung in das Koordinatensystem bezüglich der Werkzeugmaschine nicht beschrieben.
  • Gemäß der JP 2008 - 152 733 A wird zur Gewinnung eines Koordinatensystems, das dem Roboter und der Werkzeugmaschine gemeinsam ist, ein Positionsdetektor am Vorderende des Roboters angebracht, ein zu detektierendes Ziel an dem Tisch der Werkzeugmaschine befestigt, die Position des Vorderendes des Roboters fixiert, und die Position des Ziels („target“) wird an 3 verschiedenen Positionen detektiert. Im Einzelnen: zunächst wird eine Referenzposition am Ziel bestimmt und das Ziel wird an der Referenzposition detektiert. Zweitens wird der Tisch in Richtung einer Referenzachse bewegt und das Ziel wird detektiert. Drittens wird das Ziel in Richtung einer anderen Referenzachse beweget und das Ziel detektiert. Auf Basis einer Koordinatentransformationsmatrix, berechnet aus den gewonnen drei Messwerten und einem Simulationsergebnis mittels einer offline-betriebenen Simulationseinrichtung wird der Roboter kalibriert. Bei diesen Verfahren ist es allerdings erforderlich, ein hochpräzises drei-dimensionales CAD-Modell für die Offline-Simulationsvorrichtung anzufertigen. Weiterhin kann ein Positionsfehler zwischen dem realen Roboter und der realen Werkzeugmaschine bei der Berechnung der Offline-Simulationsvorrichtung auftreten.
  • Beim Verfahren gemäß der JP H05-324034 A oder der JP 2008 - 152 733 A ist es erforderlich, einen übergeordneten Rechner oder eine Offline-Simulation einzusetzen, zusätzlich zum Roboter und der Werkzeugmaschine, wodurch die Herstellungskosten hoch sind.
  • Wenn die Aufgabe des Roboters für die Werkzeugmaschine über die Handhabung des zu bearbeitenden Gegenstandes hinaus weitere Vorgänge umfasst, ist es erforderlich, dass der Roboter Zugang zu anderen Bereichen der Werkzeugmaschine hat und auch zum Gegenstand selbst. In einer solchen Situation bestehen vielfältige Einschränkungen hinsichtlich der Anordnung des Roboters.
  • Wenn, wie oben beschrieben, die Aufgaben des Roboters unterschiedliche Arbeiten umfassen, die verschieden sind von der Handhabung des zu bearbeitenden Gegenstandes und wenn diese Arbeiten zu automatisieren sind, dann reicht es nicht, dass der Roboter nur über Koordinateninformationen für Arbeiten nahe dem Gegenstand verfügt.
  • Weitere Werkzeugmaschinen und Roboter umfassende Kooperationssysteme sowie Robotersteuerungssysteme sind aus den Druckschriften JP 2011 - 48 467 A , US 6,681,151 B1 , US 2014/0229005 A1 , US 2014/0012416 A1 und US 2005/0102060 A1 bekannt.
  • Kurzbeschreibung der Erfindung
  • Es ist deshalb ein Ziel der vorliegenden Erfindung ein Kooperationssystem aus Roboter und Werkzeugmaschine bereitzustellen, mit dem eine Koordinaten-Transformationseinrichtung mit hoher Genauigkeit und einfachem Aufbau ermöglicht ist, mit der ein Roboter-Koordinatensystem, welches in Bezug auf den Roboter definiert ist, in ein Maschinen-Koordinatensystem transformierbar ist, welches in Bezug auf eine vorgegebene Position der Werkzeugmaschine definiert ist.
  • Gemäß der Erfindung wird ein Kooperationssystem einschließlich einer Werkzeugmaschine und eines Roboters bereitgestellt zur Ausführung von Arbeiten in Bezug auf die Werkzeugmaschine, wobei das Kooperationssystem folgendes aufweist: eine an einem bewegbaren Teil des Roboters angebrachte Kamera; zumindest eine Kalibrierungsmarkierung, die an einem bewegbaren Teil der Werkezugmaschine angeordnet ist; eine erste Markierungskoordinatengewinnungseinrichtung in einer Steuerung der Werkzeugmaschine, welche einen ersten Koordinatenwert der Kalibrierungsmarkierung in einem Maschinenkoordinatensystem gewinnt, welches in Bezug auf die Werkzeugmaschine definiert und in einer Robotersteuerung eingestellt ist, durch Verwenden einer an der Werkzeugmaschine bereitgestellten Messsonde, wobei der erste Koordinatenwert in Basiskoordinaten transformiert und an die Robotersteuerung übertragen wird; eine zweite Markierungskoordinatengewinnungseinrichtung in der Robotersteuerung, welche einen zweiten Koordinatenwert der Kalibrierungsmarkierung in einem Roboterkoordinatensystem gewinnt, welches in Bezug auf den Roboter definiert ist, durch Aufnahme der Kalibrierungsmarkierung mittels der Kamera; und eine Koordinaten-Transformationseinrichtung in der Robotersteuerung welche eine Koordinatentransformation berechnet zum Transformieren eines Roboterkoordinatensystems in das Maschinenkoordinatensystem auf Basis einer Mehrzahl von Sätzen der ersten und zweiten Koordinatenwerte der Kalibrierungsmarkierung.
  • Bei einem bevorzugten Ausführungsbeispiel gewinnt die erste Markierungskoordinatengewinnungseinrichtung mehrere erste Koordinatenwerte der Kalibrierungsmarkierung in dem Maschinenkoordinatensystem, jeweils in Bezug auf eine Mehrzahl von Positionen des bewegbaren Teils der Werkzeugmaschine, wobei die zweite Markierungskoordinatengewinnungseinrichtung eine Mehrzahl zweiter Koordinatenwerten der Kalibrierungsmarkierung im Roboterkoordinatensystem gewinnt durch Aufnahme der Kalibrierungsmarkierung in jeweils mehreren Positionen des bewegbaren Teils der Werkzeugmaschine.
  • Bei einem bevorzugten Ausführungsbeispiel wird der Roboter automatisch so gesteuert, dass eine Positionsbeziehung zwischen der Kamera und der Kalibrierungsmarkierung bestimmt wird, in welcher die Kamera die Position der Kalibrierungsmarkierung ermitteln (messen) kann.
  • Figurenliste
  • Obige sowie weitere Ziele, Merkmale und Vorteile der Erfindung werden noch deutlicher aus der nachfolgenden Beschreibung bevorzugter Ausführungsbeispiele mit Bezug auf die Figuren:
    • 1 zeigt schematisch den Aufbau eines Kooperationssystems gemäß einem ersten Ausführungsbeispiel der Erfindung;
    • 2 zeigt einen Zustand des Kooperationssystems gemäß 1, wobei jedes Koordinatensystem definiert ist;
    • 3 ist ein Flussdiagramm eines Beispiels eines Verfahrens gemäß dem ersten Ausführungsbeispiel;
    • 4 zeigt einen Zustand des Kooperationssystems gemäß 1, in dem die Position einer zweiten Kalibrierungsmarkierung durch eine Sonde gemessen wird;
    • 5 zeigt einen Zustand des Kooperationssystems gemäß 2, in dem die Position der zweiten Kalibrierungsmarkierung mit einer Kamera ermittelt wird;
    • 6 ist eine Ansicht eines Zustandes des Kooperationssystems gemäß 1, in dem die Position einer ersten Kalibrierungsmarkierung mit der Kamera ermittelt wird;
    • 7 erläutert ein Verfahren zum Berechnen der Differenz (des Versatzes) zwischen der ersten Kalibrierungsmarkierung und einem Werkzeugmittelpunkt;
    • 8 zeigt einen Zustand des Kooperationssystems gemäß 1, in dem die Position der zweiten Kalibrierungsmarkierung mit der Kamera ermittelt wird;
    • 9 erläutert ein Verfahren zum Berechnen einer Koordinatentransformationsmatrix von einem Roboterkoordinatensystem in ein Maschinenkoordinatensystem gemäß dem ersten Ausführungsbeispiel;
    • 10 zeigt schematisch den Aufbau eines Kooperationssystems gemäß einem zweiten Ausführungsbeispiel der Erfindung;
    • 11 zeigt einen Zustand des Kooperationssystems gemäß 10, in dem jedes Koordinatensystem definiert ist;
    • 12 erläutert ein Verfahren zum Berechnen einer Koordinatentransformationsmatrix auf einem Roboterkoordinatensystem in ein Maschinenkoordinatensystem gemäß dem zweiten Ausführungsbeispiel;
    • 13 zeigt schematisch den Aufbau eines Kooperationssystems gemäß einem dritten Ausführungsbeispiel der Erfindung;
    • 14 erläutert ein Verfahren zum Berechnen einer Koordinatentransformationsmatrix aus einem Roboterkoordinatensystem in ein Maschinenkoordinatensystem gemäß dem dritten Ausführungsbeispiel;
    • 15 zeigt schematisch den Aufbau eines Kooperationssystems gemäß einem vierten Ausführungsbeispiel der Erfindung;
    • 16 zeigt einen Zustand des Kooperationssystems gemäß 15, in dem jedes Koordinatensystem definiert ist;
    • 17 zeigt als Flussdiagramm ein Beispiel des Verfahrens gemäß dem vierten Ausführungsbeispiel;
    • 18 erläutert ein Verfahren zum Berechnen einer Koordinatentransformationsmatrix aus einem Roboterkoordinatensystem in ein Maschinenkoordinatensystem gemäß dem vierten Ausführungsbeispiel;
    • 19 zeigt schematisch den Aufbau eines Kooperationssystems gemäß einem fünften Ausführungsbeispiel der Erfindung;
    • 20 zeigt einen Zustand des Kooperationssystems gemäß 19, in dem jedes Koordinatensystem definiert;
    • 21A ist eine Stirnansicht einer Spannvorrichtung mit einer Kalibrierungsmarkierung, welche beim fünften Ausführungsbeispiel verwendet wird;
    • 21B ist eine Seitenansicht der Spannvorrichtung mit der Kalibrierungsmarkierung, wie sie beim fünften Ausführungsbeispiel eingesetzt wird; und
    • 22 zeigt einen Zustand des fünften Ausführungsbeispiels, in welchem die Position der Kalibrierungsmarkierung mit der Kamera ermittelt wird.
  • Beschreibung von Einzelheiten
  • Nachfolgend werden bevorzugte Ausführungsbeispiele mit Bezug auf die Figuren näher beschrieben. Darin bedeutet der Begriff „Koordinatentransformationseinrichtung“ eine Transformationsmatrix oder eine Rotationsmatrix zum Ausführen einer Koordinatentransformation, wie weiter unten näher beschrieben ist.
  • Die Koordinatentransformationsmatrix kann eine Vektor- oder eine Skalargröße aufweisen zum Definieren der obigen Matrix, oder eine Rechenvorschrift aufweisen zum Ausführen einer Rechnung, die gleichwertig ist der Koordinatentransformation unter Verwendung der obigen Matrix.
  • Hier bedeutet der Begriff „Kalibrierungsmarkierung“ einen Aufdruck oder ein Merkmal, wie eine Marke oder Kerbe, welche an einer vorgegebenen Stelle einer Werkzeugmaschine angeordnet oder geformt sind, wobei der Aufdruck oder das Merkmal geeignet sind, durch eine an einem Roboter angebrachte Kamera detektiert zu werden. Durch Aufnahme der Kalibrierungsmarkierung mit einer Kamera kann die Position (ein Messwert) der Kalibrierungsmarkierung in einem Roboterkoordinatensystem gewonnen werden.
  • In den unten erläuterten Ausführungsbeispielen wird eine Funktion einer ersten Markierungskoordinatengewinnungseinrichtung durch eine Steuerung der Werkzeugmaschine bereitgestellt und Funktionen einer zweiten Markierungskoordinatengewinnungseinrichtung und einer Koordinatentransformationseinrichtung werden durch eine Robotersteuerung bereitgestellt. Jedoch ist die Erfindung nicht auf einen solchen Aufbau beschränkt.
  • 1 zeigt schematisch den Aufbau eines Kooperationssystems gemäß einem ersten Ausführungsbeispiel der Erfindung. Das Kooperationssystem 10 hat eine Werkzeugmaschine 12, welche durch eine Steuerung 11, wie eine numerische Steuerung, gesteuert wird; einen Roboter 14, der eingerichtet ist zur Ausführung einer Operation (Tätigkeit) in Bezug auf die Werkzeugmaschine 12, wie z.B. die Handhabung eines mit der Werkzeugmaschine 12 zu bearbeitenden Gegenstandes; und eine Robotersteuerung 16, die eingerichtet ist zur Steuerung der Bewegung des Roboters 14. Das Kooperationssystem 10 hat eine Funktion zum Einstellen eines Maschinenkoordinatensystems in der Robotersteuerung 16, wie weiter unten näher beschrieben wird.
  • Beispielsweise ist der Roboter 14 ein mehrgelenkiger Roboter mit sechs Achsen und hat als bewegbares Teil einen Arm 18 oder eine Hand 20, die am vorderen Ende des Armes 18 angebracht ist, und eine Kamera 22 ist am bewegbaren Abschnitt (vorzugsweise dem Vorderende einer Hand 20) angebracht. Die Steuerung 11 der Werkzeugmaschine 12 kann getrennt von einem Gehäuse der Werkzeugmaschine 12 angeordnet sein oder auch integral in das Gehäuse einer Robotersteuerung 16 eingeschlossen sein.
  • Die Werkzeugmaschine 12 hat eine Spindel 24, die eingerichtet ist, ein Werkzeug zu halten und um eine Mittelachse zu rotieren (in den Figuren steht die Achse im Allgemeinen in Vertikalrichtung), und welche in Richtung der Mittelachse bewegbar ist; und ein bewegbares Teil 26 (in der Figur ein Tisch, auf dem ein mit der Werkzeugmaschine 12 zu bearbeitendes Werkstück (Gegenstand) montiert werden kann), welches zumindest in einer Ebene senkrecht zur Richtung der Mittelachse der Spindel 24 bewegbar ist. Das an der Spindel 24 befestigte Werkzeug kann ersetzt werden durch eine Messsonde 28 (beispielsweise eine Kontakt-Sonde) und eine erste Kalibrierungsmarkierung 80 ist an einem Abschnitt der Spindel 24 nahe der Messsonde 28 angebracht. Eine zweite Kalibrierungsmarkierung 32 ist auf dem Tisch 26 vorgesehen.
  • Beim ersten Ausführungsbeispiel gelten die nachfolgenden Definitionen bzw. Bedingungen (a1) bis (a6).
    • (a1) Gemäß 2 ist ein (Maschinen-)Koordinatensystem in Bezug auf die Werkzeugmaschine 12 definiert als {M} und ein (Roboter-)Koordinatensystem in Bezug auf den Roboter 14 wird mit {R} bezeichnet.
    • (a2) Zwar sind sowohl das Maschinenkoordinatensystem {M} als auch das Roboterkoordinatensystem {R} ein orthogonales (cartesisches) Koordinatensystem mit drei Achsen (x, y, z), die zueinander orthogonal stehen, jedoch kann das Koordinatensystem {M} und/oder {R} auch ein Polarkoordinatensystem sein. Beim Maschinenkoordinatensystem {M} gemäß 2 steht die X-Achse senkrecht zur Zeichnungsebene, die Y-Achse erstreckt sich rechts-links (horizontal) und die Z-Achse erstreckt sich nach oben und unten, also in vertikaler Richtung. Beim Roboterkoordinatensystem {R} erstreckt sich die X-Achse in Richtung rechts-links (horizontal), die Y-Achse erstreckt sich senkrecht zur Zeichnungsebene und die Z-Achse erstreckt sich nach oben-unten, also in vertikaler Richtung.
    • (a3) Der Ursprung des Maschinenkoordinatensystems {M} liegt am Tisch 26 fest. Bezüglich der Position des Ursprunges (x, y, z) wird die Stelle an der linken hinteren Ecke des Tisches 26, aus Sicht des Roboters 14, als (x, y) = (0, 0) definiert und die z-Koordinate des Ursprunges ist Null (z=0) wenn der Werkzeugmittelpunkt (TCP) des Werkzeuges (nicht dargestellt) an der Spindel 24 in der Werkzeug-Austauschposition ist. Die Position des Ursprunges und die Richtungen der Bezugsachsen sind aber nicht auf dieses Beispiel beschränkt.
    • (a4) Das Maschinenkoordinatensystem {M}, das Roboterkoordinatensystem {R} und das Kamerakoordinatensystem, welches mit Bezug auf die Kamera 22 definiert ist, werden vorab kalibriert. Die Positionsbeziehung zwischen dem Roboterkoordinatensystem {R} und dem Kamerakoordinatensystem (eine Koordinatentransformationseinrichtung) ist vorab bekannt oder wird berechnet.
    • (a5) Gemäß 2 ist ein maschinenbasiertes Koordinatensystem {B} mit Bezug auf eine vorgegebene Position der Werkzeugmaschine (beispielsweise der Tisch 26) definiert, um die Berechnung zu vereinfachen. Wie 2 beispielhaft zeigt, hat das maschinenbasierte Koordinatensystem {B} (nachfolgend auch einfach als Basiskoordinatensystem bezeichnet) als Ursprung den Schnittpunkt zwischen der Mittelachse der Spindel 24 und einer (oberen) Fläche des Tisches 26 und die Richtung jeder Referenzachse (x, y, z) des Basiskoordinatensystems {B} fällt mit der Richtung der zugeordneten jeweiligen Achse des Maschinenkoordinatensystems {M} zusammen. Mit anderen Worten: das Basiskoordinatensystem {B} wird gewonnen durch Translation des Maschinenkoordinatensystems {M}.
    • (a6) Die Messsonde 28 und die erste Kalibrierungsmarkierung 30 können gleichzeitig eingesetzt werden.
  • Nunmehr wird mit Bezugnahme auf die 1 bis 10 und die obigen Definitionen bzw. Bedingungen ein Verfahren zum Gewinnen einer Koordinatentransformationsmatrix T für eine Koordinatentransformation vom Roboterkoordinatensystem {R} in das Basiskoordinatensystem {B} in einem Kooperationssystem 10 näher beschrieben.
  • Zunächst werden entsprechend 1 die Werkzeugmaschine 12 und der Roboter 14 in vorgegebenen Positionen angeordnet (Schritt S11 in 3). Dann wird eine erste Kalibrierungsmarkierung 30 an der Spindel 24 angebracht und eine zweite Kalibrierungsmarkierung 32 am Tisch 26 (oder einem bewegbaren Teil der Werkzeugmaschine 12) (Schritt S12 in 3).
  • Sodann wird gemäß 4 die Position der zweiten, am Tisch 26 angebrachten Kalibrierungsmarkierung 32 mit der Messsonde 28 an der Spindel 24 der Werkzeugmaschine 12 vermessen (im Einzelnen: die Sonde 28 und/oder der Tisch 26 werden so bewegt, dass die Sonde in Kontakt kommt mit der zweiten Kalibrierungsmarkierung 32). Mit dieser Messung wird eine Position MPMA1 (oder ein erster Koordinatenwert) der zweiten Kalibrierungsmarkierung 32 im Maschinenkoordinatensystem {M} gewonnen.
  • Sodann wird gemäß 5 die zweite Kalibrierungsmarkierung 32 mit der am Roboter 14 angebrachten Kamera 22 aufgenommen, nachdem die Spindel 24 nach oben bewegt ist (im Einzelnen: der Roboter 14 wird so gesteuert, dass die zweite Kalibrierungsmarkierung 32 im Aufnahmefeld der Kamera 22 angeordnet ist und die Position der Markierung 32 mit hinreichender Genauigkeit vermessbar ist). Mit diesem Verfahren wird eine Position R PMA1 (oder ein zweiter Koordinatenwert) bezüglich der zweiten Kalibrierungsmarkierung 32 im Roboterkoordinatensystem {R} gewonnen.
  • Sodann werden - weil die Koordinatentransformationsmatrix T vom Roboterkoordinatensystem {R} zum Basiskoordinatensystem {B} unbekannt ist - unter Verwendung des Roboters 14 die x- und y-Komponenten eines Versatzes M POFF1 = (PxOFF1 , PyOFF1 , PzOFF1 ) auf Basis des Maschinenkoordinatensystems {M} (vgl. 2) aus der Position des Werkzeugmittelpunktes (TCP) zum Mittelpunkt der ersten Kalibrierungsmarkierung 30 gemessen. Nachfolgend soll die Prozedur im Einzelnen erläutert werden.
  • Wie 6 zeigt, wird, nachdem die Spindel 24 in eine beliebige Position bewegt ist, die erste Kalibrierungsmarkierung 30 mit der Kamera 22 aufgenommen, um so eine erste Position RPu1 im Roboterkoordinatensystem {R} zu messen (zu gewinnen). Wenn sodann die Spindel 24 in eine andere beliebige Position bewegt ist, wird die erste Kalibrierungsmarkierung 30 mit der Kamera 22 aufgenommen, um so eine zweite Position RPu2 im Roboterkoordinatensystem {R} zu messen (zu gewinnen). Mit dieser ersten Position RPu1 und zweiten Position RPu2 (entsprechend einer Gleichung) wird eine gerade Linie (eine Z"-Achse in der Zeichnung), welche durch diese Positionen im Roboterkoordinatensystem {R} verläuft, gewonnen.
  • Sodann wird entsprechend 7 eine Ebene S1 im Roboterkoordinatensystem {R} berechnet derart, dass die Ebene S1 senkrecht steht auf der geraden Linie (Z"-Achse), welche durch die erste Position RPu1 und die zweite Position RPu2 geht und welche die Position RPMA1 der zweiten Kalibrierungsmarkierung 32 im Roboterkoordinatensystem {R} enthält. Sodann wird ein Schnittpunkt zwischen der Ebene S1 und der durch die erste Position RPu1 und die zweite Position RPu2 gehenden geraden Linie als Punkt RPd1 definiert. Die Kamera 22 wird so bewegt, dass sie den Punkt RPd1 aufnehmen kann (vorzugsweise wird der Punkt RPd1 im Zentrum des Aufnahmefeldes der Kamera 22 angeordnet).
  • Sodann wird der Tisch 26 so bewegt, dass der Punkt RPd1 und der Mittelpunkt der zweiten Kalibrierungsmarkierung 32 einander überlappen. In dieser Stufe kann die Bewegungsrichtung des Tisches 26 nicht eindeutig bestimmt werden, weil die Koordinatentransformationsmatrix T noch nicht gewonnen ist. Diesbezüglich ist der Abstand zwischen der Position MPMA1 der zweiten Kalibrierungsmarkierung 32 im Maschinenkoordinatensystem {M} und des Punktes RPd1 im Roboterkoordinatensystem {R} sehr kurz. Deshalb kann bei Aufnahme der zweiten Kalibrierungsmarkierung 32 mit der Kamera 22 nach Bewegung des Tisches 26 von den x- und y-Koordinaten der Position MPMA1 um eine kleine Strecke beurteilt werden, ob der Mittelpunkt der zweiten Kalibrierungsmarkierung 32 sich an den Punkt RPd1 im Roboterkoordinatensystem {R} annähert. Auf diese Weise kann durch Bewegung des Tisches 26 in eine willkürliche Position und Vermessung der Änderung der Position der zweiten Kalibrierungsmarkierung 32 mittels der Kamera 22 ein Änderungsbetrag der Messposition und der Bewegungsrichtung des Tisches 26 genau korrigiert werden und der Tisch 26 kann so bewegt werden, dass die mit der Kamera 22 gewonnene Messposition der zweiten Kalibrierungsmarkierung 32 mit dem Punkt RPd1 zusammenfällt.
  • Wenn entsprechend 7 die Messposition der zweiten Kalibrierungsmarkierung 32, wie mit der Kamera 22 gewonnen, mit dem Punkt RPd1 zusammenfällt, wird die Position des Werkzeugmittelpunktes im Maschinenkoordinatensystem {M} als der Punkt MPT1 definiert. Durch Berechnung des Abstandes zwischen dem Punkt MPT1 und der Position MPMA1 der zweiten Kalibrierungsmarkierung 32 werden die x- und y-Komponenten (PxOFF1 , PyOFF1 ) des obigen Versatzes MPOFF1 gewonnen.
  • Sodann wird entsprechend 8 in der Werkzeugmaschine 12 das bewegbare Teil (in diesem Fall der Tisch 26) in eine willkürliche Position gebracht (Schritt S13 in 3). Dabei überlappt der Mittelpunkt der zweiten Kalibrierungsmarkierung 32 nicht die Mittelachse der Spindel 24. An dieser Stelle wird unter Verwendung des Koordinatenwertes MPMA1 der zweiten Kalibrierungsmarkierung 32 im Maschinenkoordinatensystem {M} die Position der zweiten Kalibrierungsmarkierung 32 im Maschinenkoordinatensystem {M} in einen Koordinatenwert im Basiskoordinatensystem {B} transformiert und es wird so ein transformierter Koordinatenwert BPM2 gewonnen. Mit einem geeigneten Hilfsmittel wird der Koordinatenwert BPM2 zur Robotersteuerung 16 übertragen.
  • Sodann wird der Roboter 14 durch die Robotersteuerung 16 so betätigt, dass der Abstand zwischen der am Tisch 26 angebrachten zweiten Kalibrierungsmarkierung 32 und der am Vorderende des Roboters 14 angebrachten Kamera 22 passend wird und die Position der zweiten Kalibrierungsmarkierung 32 mit hinreichender Genauigkeit gemessen (gewonnen) werden kann. Danach wird die zweite Kalibrierungsmarkierung 32 mit der Kamera 22 aufgenommen und es wird die Position (bzw. der Messwert) RPM2 der zweiten Kalibrierungsmarkierung 32 im Roboterkoordinatensystem {R} gewonnen (Schritt S14 in 3).
  • Eine gerade Linie (7), welche durch die erste Position RPu1 und die zweite Position RPu2 der ersten Kalibrierungsmarkierung 30 im Roboterkoordinatensystem {R} geht, wird als vorläufige Z"-Achse definiert und eine Ebene S2 wird so berechnet, dass die Ebene S2 senkrecht steht zur Z"-Achse und die Position RPM2 enthält. Sodann wird ein Schnittpunkt der Ebene S2 mit der Z"-Achse als Ursprung definiert und eine Richtung vom Ursprung zum Punkt RPu1 wird als +Z-Richtung definiert.
  • Sodann wird gemäß 9 eine vorläufige X'-Achse so definiert, dass deren positive Richtung sich von dem Ursprung der Ebene S2 zur Position RPM2 der zweiten Kalibrierungsmarkierung 32 erstreckt, und es wird ein vorläufiges Koordinatensystem {B'} definiert durch die X'-Achse, eine Y'-Achse, welche sich orthogonal zur X'-Achse in der Ebene S2 erstreckt, und eine Z'-Achse, welche sich senkrecht sowohl zur X'- als auch zur Y'-Achse erstreckt. Damit kann eine Koordinatentransformationsmatrix T' vom Roboterkoordinatensystem {R} in das Koordinatensystem {B'} gewonnen werden. Das Verfahren zur Definition des Koordinatensystems {B'} ist aber nicht auf das obige Verfahren beschränkt.
  • Sodann wird ein Positionsvektor so berechnet, dass dieser dem Abstand zwischen den x- und y-Komponenten der Position BPM2 der zweiten Kalibrierungsmarkierung 32 im Basiskoordinatensystem {B} und den x- und y-Komponenten (PxOFF1 , PyOFF1 ) des obigen Versatzes MPOFF1 entspricht. Weiterhin wird eine Rotationstransformationsmatrix BR berechnet zum Drehen des Positionsvektors um einen Winkel θ derart, dass der Positionsvektor mit der +X-Richtung des Basiskoordinatensystems {B} überlappt.
  • Gemäß 9 ist dabei die Z'-Achse im vorläufigen Koordinatensystem {B'} parallel zur geraden Linie (Z"-Achse), welche durch die erste Position RPu1 und die zweite Position RPu2 der ersten Kalibrierungsmarkierung 30 geht. Eine Koordinatentransformationsmatrix T" wird auf Basis der Koordinatentransformationsmatrix T' und der Rotationstransformationsmatrix BR berechnet und ein Koordinatensystem {B"} wird gewonnen durch Transformation des Roboterkoordinatensystems {B} unter Verwendung der Koordinatentransformationsmatrix T". Eine x-y-Ebene des Koordinatensystems {B"} überlappt mit einer Ebene des Basiskoordinatensystems {B} und das Koordinatensystem {B"} und das Basiskoordinatensystem {B} sind parallel. Eine Translationsdistanz zwischen den Koordinatensystemen {B"} und {B} wird durch die x- und y-Komponenten des Koordinatenwertes BPM2 angegeben. Deshalb kann unter Verwendung des Koordinatenwertes BPM2 eine Koordinatentransformationsmatrix T'" für eine Paralleltranslation vom Koordinatensystem {B"} zum Basiskoordinatensystem {B} gewonnen werden.
  • Mit Obigem kann die Koordinatentransformationsmatrix T vom Roboterkoordinatensystem {R} zum Basiskoordinatensystem {B} auf Basis der Koordinatentransformationsmatrix T" berechnet werden (d.h. der Koordinatentransformationsmatrix T und der Rotationstransformationsmatrix BR) und auch die Koordinatentransformationsmatrix T"' (Schritt S15 in 3). Da das Basiskoordinatensystem {B} und das Maschinenkoordinatensystem {M} parallel sind, kann nach Berechnung der Transformationsmatrix T eine Koordinatentransformationsmatrix vom Roboterkoordinatensystem {R} in das Maschinenkoordinatensystem {M} leicht berechnet werden.
  • Beim ersten Ausführungsbeispiel wird die Koordinatentransformationsmatrix T mit folgenden Parametern gewonnen: den Messwerten bezüglich zweier willkürlicher Positionen der ersten Kalibrierungsmarkierung 30 an der Spindel 24 im Roboterkoordinatensystem {R}; dem Betrag des Versatzes der x- und y-Komponenten von einer der beiden obigen willkürlichen Positionen in Bezug auf die Mittelachse (bzw. Z-Achse) der Spindel; und einem Messwert der zweiten Kalibrierungsmarkierung 32 am Tisch 26 in dem Roboterkoordinatensystem {R} und dem Basiskoordinatensystem {B}. Wie oben erläutert, reicht es aus, dass die willkürliche eine Position des Tisches 26 bestimmt wird und damit der zugängliche Bereich für den Roboter 14 vergrößert wird. Weiterhin reicht es, dass die erste Kalibrierungsmarkierung 30 an der Spindel 24 fixiert ist und damit kann das System hinsichtlich der Freiheitsgrade verbessert werden.
  • Nunmehr wird mit Bezug auf die 10 bis 12 ein zweites Ausführungsbeispiel der Erfindung näher erläutert.
  • Gemäß 10 ist der Aufbau des Kooperationssystems gemäß dem zweiten Ausführungsbeispiel gleich dem ersten Ausführungsbeispiel mit Ausnahme, dass die erste Kalibrierungsmarkierung 30 durch eine Messsonde, wie die Messsonde 28 gemäß dem ersten Ausführungsbeispiel, ersetzt ist. Deshalb haben die Komponenten beim zweiten Ausführungsbeispiel Bezugszeichen entsprechend denen beim ersten Ausführungsbeispiel und insoweit erübrigt sich eine wiederholte Beschreibung.
  • Dem zweiten Ausführungsbeispiel liegen die folgenden Definitionen bzw. Bedingungen (b1) bis (b7) zugrunde. Die Bedingungen (b1) bis (b5) entsprechen im Wesentlichen den Bedingungen (a1) bis (a5) des ersten Ausführungsbeispieles.
    • (b1) Entsprechend 11 wird ein (Maschinen-)Koordinatensystem mit Bezug auf die Werkzeugmaschine 12 mit {M} bezeichnet und ein (Roboter-)Koordinatensystem mit Bezug auf den Roboter 14 wird als {R} bezeichnet.
    • (2) Zwar sind sowohl das Maschinenkoordinatensystem {M} als auch das Roboterkoordinatensystem {R} ein orthogonales (cartesisches) Koordinatensystem mit drei Achsen (x, y, z), die zueinander senkrecht stehen, jedoch kann es sich bei dem Koordinatensystem {M} und/oder {R} auch um ein Polar-Koordinatensystem handeln. Beim Maschinenkoordinatensystem {M} gemäß 11 steht die X-Achse senkrecht zur Zeichnungsebene, die Y-Achse erstreckt sich von links nach rechts (horizontal), und die Z-Achse erstreckt sich nach oben und unten (vertikal). Im Roboterkoordinatensystem {R} erstreckt sich die X-Achse von rechts nach links (horizontal), die Y-Achse steht senkrecht zur Zeichnungsebene, und die Z-Achse erstreckt sich nach oben und unten (vertikal).
    • (b3) Der Ursprung des Maschinenkoordinatensystems {M} ist am Tisch 26 festgelegt. Bezüglich der Position des Ursprungs (x, y, z) wird die Stelle links an der hinteren Ecke des Tisches 26, gesehen aus Richtung des Roboters 14 (12), als (x, y) = (0, 0) definiert und die z-Koordinaten des Ursprunges liegt bei Null (z=0), wenn ein Werkzeugmittelpunkt (TCP) des Werkzeuges (nicht dargestellt) an der Spindel 24 in einer Werkzeugaustauschposition angeordnet ist. Die Position des Ursprungs und die Richtung der Bezugsachsen ist aber nicht auf das vorstehende Beispiel beschränkt.
    • (b4) Das Maschinenkoordinatensystem {M}, das Roboterkoordinatensystem {R} und das Kamerakoordinatensystem, definiert mit Bezug auf die Kamera 22, werden vorab kalibriert. Die Positionsbeziehung zwischen dem Roboterkoordinatensystem {R} und dem Kamerakoordinatensystem (eine Koordinatentransformationseinrichtung) ist vorab bekannt oder berechnet.
    • (b5) Gemäß 11 ist ein Maschinen-Basiskoordinatensystem {B} in Bezug auf eine vorgegebene Position der Werkzeugmaschine (beispielsweise des Tisches 26) definiert, um die Berechnung zu erleichtern. Wie in 11 beispielhaft dargestellt, hat das Maschinen-Basiskoordinatensystem (nachfolgend der Einfachheit halber: Basiskoordinatensystem) {B} seinen Ursprung im Schnittpunkt zwischen der Mittelachse der Spindel 24 und einer (oberen) Oberfläche des Tisches 26, und die Richtung jeder der Referenzachsen (x, y, z) des Basiskoordinatensystems {B} fällt zusammen mit der entsprechenden Achse des Maschinenkoordinatensystems {M}. Mit anderen Worten: das Basiskoordinatensystem {B} wird gewonnen durch Translation des Maschinenkoordinatensystems {M}.
    • (b6) Die erste Kalibrierungsmarkierung 30 kann an der Spindel 24 in gleicher Weise wie das Werkzeug angebracht werden und der Mittelpunkt der Markierung wird auf der Achse der Spindel positioniert.
    • (b7) Die erste Kalibrierungsmarkierung 30 kann durch die Messsonde ersetzt werden.
  • Nunmehr wird mit Bezug auf die 10 bis 12 entsprechend den obigen Definitionen bzw. Bedingungen ein Verfahren näher erläutert zur Gewinnung einer Koordinatentransformationsmatrix T für eine Koordinatentransformation vom Roboterkoordinatensystem {R} in das Basiskoordinatensystem {B} im Kooperationssystem 10 gemäß dem zweiten Ausführungsbeispiel.
  • Zunächst wird ähnlich wie beim ersten Ausführungsbeispiel die Messsonde an der Spindel 24 der Werkzeugmaschine 12 angebracht und die Position der zweiten Kalibrierungsmarkierung 32 am Tisch 26 wird mit der Messsonde vermessen. Mit dieser Messung wird die Position MPMA1 der zweiten Kalibrierungsmarkierung 32 im Maschinenkoordinatensystem {M} gewonnen. Danach wird die Messsonde durch die erste Kalibrierungsmarkierung 30 ersetzt.
  • Ähnlich wie in 6 wird nach Bewegen der Spindel 24 in eine willkürliche Position die erste Kalibrierungsmarkierung 30 mit der am Roboter 14 angeordneten Kamera 22 aufgenommen, um so eine erste Position RPu1 im Roboterkoordinatensystem {R} zu vermessen (zu gewinnen) (der Begriff „Messen“ ist in dieser Anmeldung allgemein zu verstehen als zu erhalten, zu gewinnen, zu detektieren o.dgl.). Nachdem die Spindel 24 in eine andere willkürliche Position bewegt ist, wird die erste Kalibrierungsmarkierung 30 mit der Kamera 22 aufgenommen, um eine zweite Position RPu2 im Roboterkoordinatensystem {R} zu messen (im Einzelnen: der Roboter 14 wird so gesteuert, dass die erste Kalibrierungsmarkierung 30 im Aufnahmefeld der Kamera 22 angeordnet ist und so die Position der Markierung 30 mit hinreichender Genauigkeit gemessen werden kann). Nachdem dann die Spindel 24 in eine weitere willkürliche Position bewegt ist, wird die erste Kalibrierungsmarkierung 30 mit der Kamera 22 aufgenommen, um eine zweite Position RPu2 im Roboterkoordinatensystem {R} zu vermessen (zu gewinnen).
  • Sodann wird, ähnlich wie in 8, der Tisch 26 in eine willkürliche Position bewegt. Dabei überlappt das Zentrum der zweiten Kalibrierungsmarkierung 32 nicht mit der Mittelachse der Spindel 24. An dieser Stelle wird unter Verwendung des Koordinatenwertes MPMA1 der zweiten Kalibrierungsmarkierung 32 im Maschinenkoordinatensystem {M} die Position der zweiten Kalibrierungsmarkierung 32 im Maschinenkoordinatensystem {M} berechnet und in einen Koordinatenwert im Basiskoordinatensystem {B} transformiert und ein transformierter Koordinatenwert BPM2 wird gewonnen. Der Koordinatenwert BPM2 wird in geeigneter Weise in die Robotersteuerung 16 übertragen.
  • Sodann wird der Roboter 14 durch die Robotersteuerung 16 so bewegt, dass der Abstand zwischen der zweiten, am Tisch 26 angebrachten Kalibrierungsmarkierung 32 und der am Vorderende des Roboters 14 angebrachten Kamera 22 passend wird und die Position der zweiten Kalibrierungsmarkierung 32 mit hinreichender Genauigkeit gemessen werden kann. Dann wird die zweite Kalibrierungsmarkierung 32 mit der Kamera 22 aufgenommen und die Position (bzw. der Messwert) RPM2 der zweiten Kalibrierungsmarkierung 32 im Roboterkoordinatensystem {R} wird gewonnen.
  • Eine gerade Linie, welche durch die erste Position RPu1 und die zweite Position RPu2 der ersten Kalibrierungsmarkierung 30 geht, wird als Z-Achse definiert und eine Ebene S wird so berechnet, dass sie senkrecht steht zur Z-Achse und die Position RPM2 enthält. Sodann wird der Schnittpunkt zwischen der Ebene S und der Z-Achse als Ursprung definiert und eine Richtung vom Ursprung zum Punkt RPu1 wird definiert als +Z-Richtung.
  • Sodann wird gemäß 12 eine vorläufige X'-Achse so definiert, dass deren positive Richtung sich vom Ursprung in der Ebene S zur Position RPM2 der zweiten Kalibrierungsmarkierung 32 erstreckt, und ein vorläufiges Koordinatensystem {B'} wird definiert durch die X'-Achse, eine Y'-Achse, welche sich in der Ebene S und senkrecht zur X'-Achse erstreckt und eine Z'-Achse, die senkrecht steht zu sowohl der X'- als auch der Y'-Achse. Damit kann eine Koordinatentransformationsmatrix T' vom Roboterkoordinatensystem {R} in das Koordinatensystem {B'} gewonnen werden. Das Verfahren zur Definition des Koordinatensystems {B'} ist aber nicht auf die obige Methode beschränkt.
  • Weiterhin wird auf Basis der x- und y-Komponenten der Position SPM2 der zweiten Kalibrierungsmarkierung 32 im Basiskoordinatensystem {B} eine Rotationstransformationsmatrix BR zum Rotieren dieser Position um einen Winkel θ berechnet, so dass die Position mit der +X-Richtung des Basiskoordinatensystems {B} überlappt.
  • Wie 12 hierzu zeigt, verläuft die Z'-Achse des vorläufigen Koordinatensystems {B'} parallel zur Z-Achse des Basiskoordinatensystems {B}. Deshalb kann eine Koordinatentransformationsmatrix T vom Roboterkoordinatensystem {R} in das Basiskoordinatensystem {B} berechnet werden auf Basis der Koordinatentransformationsmatrix T und der Rotationstransformationsmatrix BR.
  • Beim zweiten Ausführungsbeispiel wird die Koordinatentransformationsmatrix T mit folgenden Parametern (Größen) gewonnen: die Messwerte zweier willkürlicher Positionen der ersten Kalibrierungsmarkierung 30 an der Spindel 24 im Roboterkoordinatensystem {R} und ein Messwert der zweiten Kalibrierungsmarkierung 32 am Tisch 26 in sowohl dem Roboterkoordinatensystem {R} und dem Basiskoordinatensystem {B}. Wie oben erläutert, reicht es aus, eine willkürliche Position am Tisch 26 zu vermessen und somit kann der zugängliche Bereich für den Roboter 14 vergrößert werden. Beim zweiten Ausführungsbeispiel ist es nicht erforderlich, die Größe des Versatzes wie beim ersten Ausführungsbeispiel zu berücksichtigen, wohingegen es erforderlich ist, die erste Kalibrierungsmarkierung 30 so zu gestalten, dass sie an der Spindel 24 „als Werkzeug“ anbringbar ist.
  • Nunmehr wird ein drittes Ausführungsbeispiel der Erfindung mit Bezug auf die 13 und 14 näher beschrieben.
  • Wie 13 zeigt, kann der Aufbau des Kooperationssystems gemäß dem dritten Ausführungsbeispiel den ersten und zweiten Ausführungsbeispielen entsprechen mit Ausnahme, dass die erste Kalibrierungsmarkierung nicht verwendet wird. Deshalb haben Komponenten des dritten Ausführungsbeispiels die gleichen Bezugszeichen wie die Komponenten entsprechender Bauteile des ersten Ausführungsbeispiels und eine wiederholte Beschreibung erübrigt sich.
  • Beim dritten Ausführungsbeispiel gelten die folgenden Definitionen bzw. Bedingungen (c1) bis (c5). Die Bedingungen (c1) bis (c5) entsprechen im Wesentlichen den Bedingungen (a1) bis (a5) des ersten Ausführungsbeispiels.
    • (c1) Entsprechend 14 wird ein (Maschinen-)Koordinatensystem mit Bezug auf eine Werkzeugmaschine 12 mit {M} bezeichnet und ein (Roboter-)Koordinatensystem mit Bezug auf den Roboter 14 wird mit {R} bezeichnet.
    • (c2) Zwar ist sowohl das Maschinenkoordinatensystem {M} als auch das Roboterkoordinatensystem {R} ein orthogonales (cartesisches) Koordinatensystem mit drei Achsen (x, y, z), die zueinander senkrecht stehen, jedoch kann das Koordinatensystem {M} und/oder {R} auch ein Polarkoordinatensystem sein. Entsprechend 14 erstreckt sich im Maschinenkoordinatensystem {M} die X-Achse nach oben bzw. unten (vertikal), die Y-Achse erstreckt sich nach links bzw. rechts (horizontal) und die Z-Achse erstreckt sich senkrecht zur Zeichnungsebene. Im Roboterkoordinatensystem {R} erstreckt sich die X-Achse nach links bzw. rechts (horizontal), die Y-Achse nach oben bzw. unten (vertikal) und die Z-Achse senkrecht zur Zeichnungsebene.
    • (c3) Der Ursprung des Maschinenkoordinatensystems {M} ist am Tisch 26 festgelegt. Für die Position des Ursprungs (x, y, z) wird eine Stelle in der hinteren linken Ecke des Tisches 26, aus Sicht vom Roboter 14, definiert (14) als (x, y) = (0, 0), und die z-Koordinate des Ursprunges ist Null (z=0), wenn ein Werkzeugmittelpunkt (TCP) des Werkzeuges (nicht dargestellt) an der Spindel 24 in einer Werkzeug-Austauschposition ist. Die Position des Ursprunges und die Richtungen der Bezugsachsen sind aber nicht auf das obige Beispiel eingeschränkt.
    • (c4) Sowohl das Maschinenkoordinatensystem {M}, das Roboterkoordinatensystem {R} als auch ein Kamerakoordinatensystem mit Bezug auf die Kamera 22 sind vorab kalibriert. Auch ist die Positionsbeziehung zwischen dem Roboterkoordinatensystem {R} und dem Kamerakoordinatensystem (eine Koordinatentransformationseinrichtung) vorab bekannt oder berechnet.
    • (c5) Entsprechend 14 wird ein Maschinen-Basiskoordinatensystem {B} definiert mit Bezug auf eine vorgegebene Position der Werkzeugmaschine 12 (beispielsweise des Tisches 26), um die Berechnung zu vereinfachen. Wie 14 beispielhaft darstellt, hat das Maschinen-Basiskoordinatensystem (nachfolgend der Einfachheit halber als Basiskoordinatensystem bezeichnet) {B} seinen Ursprung an dem Schnittpunkt zwischen der Mittelachse der Spindel 24 und einer (oberen) Fläche des Tisches 26 und die Richtung der jeweiligen Bezugsachsen (x, y, z) des Basiskoordinatensystems {B} fällt mit den entsprechenden Richtungen der Achsen im Maschinenkoordinatensystem {M} zusammen. Mit anderen Worten: das Basiskoordinatensystem {B} wird gewonnen durch Translation des Maschinenkoordinatensystems {M}.
  • Nunmehr wird auf Basis der obigen Definitionen und Bedingungen ein Verfahren erläutert zum Gewinnen einer Koordinatentransformationsmatrix T für eine Koordinatentransformation vom Roboterkoordinatensystem {R} in das Basiskoordinatensystem {B}, gemäß dem dritten Ausführungsbeispiel eines Kooperationssystems 10.
  • Zunächst wird ähnlich wie beim ersten Ausführungsbeispiel die Position der zweiten Kalibrierungsmarkierung 32 am Tisch 26 mit der Messsonde 28 an der Spindel 24 der Werkzeugmaschine 12 gemessen. Mit dieser Messung wird eine Position MPMA1 der zweiten Kalibrierungsmarkierung 32 im Maschinenkoordinatensystem {M} gewonnen.
  • Sodann wird der Tisch 26 in eine willkürliche Position bewegt. Dabei überlappt der Mittelpunkt der zweiten Kalibrierungsmarkierung 32 nicht die Mittelachse der Spindel 24. An dieser Stelle wird unter Verwendung des Koordinatenwertes MPMA1 der zweiten Kalibrierungsmarkierung 32 im Maschinenkoordinatensystem {M} die Position der zweiten Kalibrierungsmarkierung 32 im Maschinenkoordinatensystem {M} berechnet und in einen Koordinatenwert im Basiskoordinatensystem {B} transformiert und so wird ein transformierter Koordinatenwert BPM1 gewonnen. Der Koordinatenwert BPM1 wird zur Robotersteuerung 16 übertragen.
  • Sodann wird mit der Robotersteuerung 16 der Roboter 14 so betrieben, dass der Abstand zwischen der zweiten Kalibrierungsmarkierung 32 am Tisch 26 und der Kamera 22 am Vorderende des Roboters 14 passend wird und die Position der zweiten Kalibrierungsmarkierung 32 kann mit hinreichender Genauigkeit gemessen werden. Sodann wird die zweite Kalibrierungsmarkierung 32 mit der Kamera 22 aufgenommen und die Position (bzw. der Messwert) RPM1 der zweiten Kalibrierungsmarkierung 32 im Roboterkoordinatensystem {R} wird gewonnen.
  • Mit obigem Verfahren wird ein Satz von Positionen der zweiten Kalibrierungsmarkierung 32 im Roboterkoordinatensystem {R} und im Basiskoordinatensystem {B} gewonnen (d.h. ein Positionssatz ( BPM1 , RPM1 ) wird gewonnen). Entsprechend 14 wird das Verfahren zum Gewinnen des Positionssatzes zweimal ausgeführt mit Änderung der Position des Tisches 26, so dass zwei Sätze von Positionen der zweiten Kalibrierungsmarkierung 32 gewonnen werden (d.h. Positionssätze) ( BPM2 , RPM2 ) und ( BPM3, RPM3 )).
  • Basierend auf den drei Koordinaten ( RPM1, RPM2, RPM3 ) der zweiten Kalibrierungsmarkierung 32 im Roboterkoordinatensystem {R}, wie oben gewonnen, kann eine Ebene definiert werden. Eine Achse senkrecht zu dieser Ebene verläuft parallel zur Z-Achse des Basiskoordinatensystems {B} und eine Richtung auf eine der drei Koordinaten ( BPM1 , BPM2, BPM3 ) im Basiskoordinatensystem {B} wird als +Z-Richtung definiert.
  • Sodann wird entsprechend 14 eine vorläufige X'-Achse so definiert, dass deren positive Richtung von einer willkürlichen Position, die als Ursprung der obigen Ebene bestimmt ist, (in diesem Falle die Position RPM1 ) zur Position RPM2 verläuft, und ein vorläufiges Koordinatensystem {B'} wird definiert durch die X'-Achse, eine Y'-Achse, die sich in der durch die drei Koordinaten im Roboterkoordinatensystem {R} definierten Ebene erstreckt und orthogonal ist zur X'-Achse, sowie durch eine Z'-Achse definiert, die senkrecht steht zu sowohl der X'- als auch der Y'-Achse. Damit kann eine Koordinatentransformationsmatrix T für eine Koordinatentransformation vom Roboterkoordinatensystem {R} in das Koordinatensystem {B'} gewonnen werden. Die Z-Achse des Basiskoordinatensystems {B} und die Z'-Achse des vorläufigen Koordinatensystems {B'} sind parallel und die positiven Richtungen dieser Achsen entsprechen einander. Das Verfahren zur Definition des Koordinatensystems {B'} ist nicht auf das Obige beschränkt.
  • Sodann wird ein Abstand (bzw. ein Vektor) von de Position BPM1 zur Position BPM2 berechnet und eine Rotationstransformationsmatrix BR' wird so berechnet, dass der Vektor mit einer geraden Linie zusammenfällt, welche die positive Richtung der X-Achse im Basiskoordinatensystem {B} darstellt. Mit der Koordinatentransformationsmatrix T' und der Rotationstransformationsmatrix BR' wird eine Koordinatentransformationsmatrix T" für die Koordinatentransformation vom Roboterkoordinatensystem {R} in das vorläufige Koordinatensystem {B"} gewonnen.
  • Das Koordinatensystem {B"} und das Basiskoordinatensystem {B} sind parallel und ein Translationsabstand und dessen Richtung zwischen den Koordinatensystemen {B"} und {B} wird auf Basis des Koordinatenwertes BPM1 berechnet. Deshalb kann unter Verwendung des Koordinatenwertes BPM1 und der Koordinatentransformationsmatrix T" eine Koordinatentransformationsmatrix T gewonnen werden für eine Paralleltranslation vom Roboterkoordinatensystem {R} in das Basiskoordinatensystem {B}.
  • Beim dritten Ausführungsbeispiel wird also die Koordinatentransformationsmatrix T gewonnen unter Verwendung der drei Messwerte (oder der Sätze von Positionen) der zweiten Kalibrierungsmarkierung 32 am Tisch 26 in dem Roboterkoordinatensystem {R} und dem Basiskoordinatensystem {B}. Da beim dritten Ausführungsbeispiel die erste Kalibrierungsmarkierung an der Spindel 24 nicht erforderlich ist, ist es auch nicht erforderlich, die Kamera 22 nahe an die Spindel heranzubringen, um die Markierung zu erfassen. Auf diese Weise kann der Zugangsbereich für den Roboter 14 vergrößert werden.
  • Nunmehr wird ein viertes Ausführungsbeispiel der Erfindung mit Bezug auf die 15 bis 18 näher beschrieben. Entsprechend 15 hat ein Kooperationssystem 40 nach dem vierten Ausführungsbeispiel eine Werkzeugmaschine 42, wie ein Bearbeitungszentrum; einen Roboter 44, der eingerichtet ist, eine Tätigkeit in Bezug auf die Werkzeugmaschine 42 auszuführen, wie die Handhabung eines mit der Werkzeugmaschine 42 zu bearbeitenden Gegenstandes; und eine Robotersteuerung, die eingerichtet ist, die Bewegung des Roboters 44 zu steuern. Die Robotersteuerung ist nicht dargestellt; sie ist mit der Werkzeugmaschine 42 oder einer Steuerung derselben verbunden.
  • Bei dem Roboter 44 kann es sich beispielsweise um einen mehrgelenkigen Roboter handeln mit sechs Achsen und einem bewegbaren Abschnitt, wie einem Arm 46 oder einer Hand 48, die am Vorderende des Armes 46 angebracht ist, und mit einer Kamera 50, die am bewegbaren Teil angebracht ist (vorzugsweise am Vorderende der Hand 48). Der Roboter 44 ist an einer Gerüstachse 52 angebracht, die an der Werkzeugmaschine 42 angeordnet ist und der Roboter 44 ist entlang der Gerüstachse 52 bewegbar.
  • Die Werkzeugmaschine 42 hat eine Spindel 54, die eingerichtet ist, ein Werkzeug einzuspannen und um eine Mittelachse zu rotieren (in der Figur verläuft die Achse im Allgemeinen vertikal); und ein bewegbares Teil oder einen Tisch 56, auf dem ein Gegenstand (bzw. ein Werkstück), welches mit der Werkzeugmaschine 42 zu bearbeiten ist, montiert werden kann. Zumindest drei Kalibrierungsmarkierungen sind an unterschiedlichen Positionen (vorzugsweise festgelegten Positionen) an der Werkzeugmaschine 42 angebracht. Beim dargestellten Ausführungsbeispiel ist ein Innenbereich der Werkzeugmaschine 42 in einen Bearbeitungsbereich mit einer Spindel 54 und einen Roboterbetriebsbereich einschließlich eines Arbeitstisches unterteilt, wo der Roboter 44 betrieben wird, und zwar unter Verwendung einer Abtrennung 60 zur Vermeidung des Versprühens von Schneidöl oder von Spänen aus dem Bearbeitungsbereich. An verschiedenen Positionen (in der Figur an der oberen Fläche und an Seitenflächen) der Trenneinrichtung 60 sind eine erste Kalibrierungsmarkierung 62 und eine zweite Kalibrierungsmarkierung 64 angebracht (ausgeformt). Weiterhin ist eine dritte Kalibrierungsmarkierung 66 am Arbeitstisch 58 vorgesehen.
  • Beim vierten Ausführungsbeispiel gelten die folgenden Definitionen bzw. Bedingungen (d1) bis (d6). Die Bedingungen (d1) bis (d5) entsprechen im Wesentlichen den Bedingungen (a1) bis (a5) beim ersten Ausführungsbeispiel.
    • (d1) Mit Bezug auf 16 wird ein (Maschinen-)Koordinatensystem mit Bezug auf die Werkzeugmaschine 42 als {M} bezeichnet und ein (Roboter-)Koordinatensystem mit Bezug auf den Roboter 44 wird mit {R} bezeichnet.
    • (d2) Das Maschinenkoordinatensystem {M} und das Roboterkoordinatensystem {R} können ein orthogonales (cartesisches) Koordinatensystem mit drei Achsen (x, y, z) sein, welche zueinander senkrecht stehen. Andererseits kann das Koordinatensystem {M} und/oder {R} ein Polarkoordinatensystem sein. Beim Maschinenkoordinatensystem {M} nach 16 erstreckt sich die X-Achse in Richtung links-rechts (horizontal), die Y-Achse erstreckt sich senkrecht zur Zeichnungsebene und die Z-Achse erstreckt sich in Richtung oben/unten (vertikal). Beim Roboterkoordinatensystem {R} erstreckt sich die X-Achse rechts/links (horizontal), die Y-Achse steht senkrecht zur Zeichnungsebene und die Z-Achse erstreckt sich nach oben/unten (vertikal).
    • (d3) Der Ursprung des Maschinenkoordinatensystems {M} ist am Tisch 56 festgelegt. Die Position des Ursprungs (x, y, z) wird auf die Stelle am linken hinteren Ende des Tisches 56, aus Sicht des Roboters 44, gelegt mit (x, y) = (0, 0) und die Z-Koordinate des Ursprunges ist Null (z=0), wenn der Werkzeugmittelpunkt (TCP) des Werkzeuges (nicht dargestellt) an der Spindel 54 in einer Werkzeugaustauschstellung ist.
    • (d4) Das Maschinenkoordinatensystem {M}, das Roboterkoordinatensystem {R} und das in Bezug auf die Kamera 50 definierte Kamerakoordinatensystem sind vorab kalibriert. Auch die Positionsbeziehung zwischen dem Roboterkoordinatensystem {R} und dem Kamerakoordinatensystem (eine Koordinatentransformationseinrichtung) ist im Voraus bekannt oder berechnet.
    • (d5) Entsprechend 16 ist ein Maschinen-Basiskoordinatensystem {B} in Bezug auf eine vorgegebene Position der Werkzeugmaschine 42 (beispielsweise des Tisches 56) definiert, um die Berechnung zu vereinfachen. Wie beispielhaft in 16 dargestellt ist, hat das Maschinen-Basiskoordinatensystem (nachfolgend einfach als Basiskoordinatensystem bezeichnet) {B} seinen Ursprung im Schnittpunkt zwischen der Mittelachse der Spindel 54 und einer (oberen) Fläche des Tisches 56 und die Richtung jeder der Bezugsachsen (x, y, z) des Basiskoordinatensystems {B} fällt mit der zugeordneten Achse des Maschinenkoordinatensystems {M} zusammen. Mit andere Worten: das Basiskoordinatensystem {B} wird erhalten durch Translation des Maschinenkoordinatensystems {M}.
    • (d6) Im Basiskoordinatensystem {B} sind die Positionen (Koordinatenwerte) der drei Kalibrierungsmarkierungen an der Werkzeugmaschine 42 vorab bekannt. Dabei sind die Koordinatenvektoren der ersten, zweiten und dritten Kalibrierungsmarkierungen vom Ursprung des Basiskoordinatensystems {B} durch BPM1 , BPM2 bzw. BPM3 gegeben.
  • Nunmehr wird auf Grundlage der obigen Definitionen und Bedingungen ein Verfahren mit Blick auf die 15 bis 18 näher erläutert zur Gewinnung einer Koordinatentransformationsmatrix T für eine Koordinatentransformation vom Roboterkoordinatensystem {R} in das Basiskoordinatensystem {B} im Kooperationssystem 40.
  • Zunächst werden entsprechend 15 die Werkzeugmaschine 42 und der Roboter 44 an vorgegebenen Positionen angeordnet (Schritt S21 in 17) und sodann werden erste, zweite und dritte Kalibrierungsmarkierungen 62, 64 bzw. 66 an den vorgegebenen Positionen (in diesem Falle Trenneinrichtung 60 und Arbeitstisch 58) der Werkzeugmaschine 42 ausgeformt oder angebracht (Schritt S22 in 17).
  • Da die Koordinatenwerte BPM1 , BPM2 und BPM3 der drei Kalibrierungsmarkierungen im Basiskoordinatensystem {B} vorab bekannt sind, kann ein vorläufiges Koordinatensystem {B'} definiert werden unter Verwendung der Koordinatenwerte und sodann wird eine Koordinatentransformationsmatrix TB vom vorläufigen Koordinatensystem {B'} in das Roboterkoordinatensystem berechnet. In diesem Falle kann gemäß 16 das vorläufige Koordinatensystem {B'} definiert werden durch Angabe einer Ebene durch die drei Punkte BPM1 , BPM2 und PM3 und durch Einsetzen der Position BPM1 als erste Kalibrierungsmarkierung 62 als Ursprung des Koordinatensystems {B'}, so dass das Koordinatensystem {B'} eine vorläufige X'-Achse aufweist, die sich entlang der Ebene in einer Richtung erstreckt, die der Richtung vom Ursprung zur Position BPM3 entgegengesetzt ist, und mit einer vorläufigen Z'-Achse, die sich entlang der Ebene und senkrecht zur X'-Achse erstreckt, sowie einer vorläufigen Y'-Achse, die senkrecht steht zur X'- und zur Z'-Achse. Das Verfahren zur Definition des Koordinatensystems {B'} ist aber nicht auf das obige Verfahren beschränkt. Beispielsweise kann ein anderes vorläufiges Koordinatensystem definiert werden mit Ursprung entsprechend der Position BPM2 oder BPM3 .
  • Sodann wird entsprechend 18 die erste Kalibrierungsmarkierung 62 mit der Kamera 50 am Roboter 44 aufgenommen (im Einzelnen: der Roboter 44 wird so gesteuert, dass die erste Kalibrierungsmarkierung 62 im Aufnahmefeld der Kamera 50 angeordnet ist). Damit wird die Position RPM1 der ersten Kalibrierungsmarkierung 62 im Roboterkoordinatensystem {R} gewonnen. In ähnlicher Weise wird die zweite Kalibrierungsmarkierung 64 mit der Kamera 50 aufgenommen, um die Position RPM2 der zweiten Kalibrierungsmarkierung 64 im Roboterkoordinatensystem {R} zu gewinnen, und die dritte Kalibrierungsmarkierung 66 wird mit der Kamera 50 aufgenommen, um die Position RPM3 der dritten Kalibrierungsmarkierung 66 im Roboterkoordinatensystem {R} zu erhalten (Schritt S23 in 17).
  • Unter Verwendung der drei Koordinatenwerte ( RPM1 , RPM2 , RPM3 ) der drei Kalibrierungsmarkierungen im Roboterkoordinatensystem {R}, wie mit der Kamera 50 gewonnen, wird eine Koordinatentransformationsmatrix TR vom Roboterkoordinatensystem {R} in das vorläufige Koordinatensystem {B'} berechnet. Mit der Koordinatentransformationsmatrix TR und der oben beschriebenen Koordinatentransformationsmatrix RB wird eine Koordinatentransformationsmatrix R vom Roboterkoordinatensystem {R} in das Basiskoordinatensystem {B} berechnet (Schritt S24 in 17). Mit anderen Worten: es gilt (T = TR(TB)-1 („(TB)-1“ ist die inverse Matrix von TB ).
  • Beim vierten Ausführungsbeispiel sind zumindest drei Kalibrierungsmarkierungen so angeordnet, dass ihre Positionen in einem Koordinatensystem, welches in Bezug auf eine vorgegebene Position der Werkzeugmaschine definiert ist, vorab bekannt sind, wodurch ein dem Roboter und der Werkzeugmaschine gemeinsames Koordinatensystem einfach gewonnen werden kann durch Messung der Kalibrierungsmarkierungen unter Verwendung der Kamera des Roboters. In Abhängigkeit von den Positionen der Kalibrierungsmarkierungen ist es nicht erforderlich, den Roboter nahe an die Spindel oder den Arbeitstisch der Werkzeugmaschine heranzubewegen. Deshalb kann der Bewegungsbereich des Roboters passend entsprechend dem Inhalt der Arbeit des Roboters bestimmt werden (beispielsweise kann der Roboter nur in einem Arbeitsbereich betätigt werden, welcher durch die Trenneinrichtung gegeben ist), wodurch der zugängliche Bereich für den Roboter vergrößert werden kann.
  • Nunmehr wird ein fünftes Ausführungsbeispiel der Erfindung mit Blick auf die 19 bis 22 näher erläutert. Entsprechend 19 hat ein Kooperationssystem 70 gemäß dem fünften Ausführungsbeispiel eine Werkzeugmaschine 72 (in der Zeichnung eine numerisch gesteuerte Drehbank) und einen Roboter 74, der eingerichtet ist, eine Tätigkeit mit Bezug auf die Werkzeugmaschine 72 auszuführen, wie die Handhabung eines von der Werkzeugmaschine 72 zu bearbeitenden Gegenstandes. Der Roboter 74 ist beispielsweise ein mehrgelenkiger Roboter mit sechs Achsen und hat eine bewegliche Komponente, wie einen Arm 76 oder eine Hand 78 am vorderen Ende des Armes, und eine Kamera 80 ist an der bewegbaren Komponente des Roboters angebracht (vorzugsweise am Vorderende der Hand 78). Eine (nicht dargestellte) Robotersteuerung ist mit der NC-Drehbank 72 verbunden.
  • Die Werkzeugmaschine 72 hat einen Unterbau 82; einen Spindelstock 84 auf dem Unterbau 82; eine Spindel 88, die drehbar im Spindelstock 84 angeordnet ist (drehbar um eine horizontale Achse in der Figur) und mit einem Spannfutter 86 zum Einspannen eines Werkzeuges; einen Reitstock 90 auf dem Unterbau 82; ein Kreuzsupport 92, der in Bezug auf den Unterbau 82 bewegbar ist; und einen Werkzeug-Ablagerevolver 94, der auf dem Kreuzsupport 92 angeordnet ist. Beim fünften Ausführungsbeispiel ist der Roboter 74 auf dem Spindelstock 84 montiert und eine Messsonde 96 ist (insbesondere abnehmbar) am Werkzeug-Aufnahmerevolver 94 wie ein Werkzeug angebracht. Eine Markierungsspannvorrichtung 98 mit zumindest drei Kalibrierungsmarkierungen („Marker“) kann am Spannfutter 86 befestigt sein.
  • Beim fünften Ausführungsbeispiel gelten die folgenden Definitionen bzw. Bedingungen (e1) bis (e5).
    • (e1) Entsprechend 20 ist ein (Maschinen-)Koordinatensystem {M} definiert in Bezug auf die numerisch gesteuerte (NC) Drehbank 72 und ein (Roboter-Koordinatensystem {R} ist in Bezug auf den Roboter 74 definiert.
    • (e2) Der Ursprung des Maschinenkoordinatensystems {M} ist auf der Mittelachse der Spindel 88 festgelegt und die Orientierung des Maschinenkoordinatensystems {M} entspricht JIS B6310. In 20 entspricht die Aufwärtsrichtung der positiven Richtung der X-Achse im Maschinenkoordinatensystem {M}.
    • (e3) Das Maschinenkoordinatensystem {M}, das Roboterkoordinatensystem {R} und das in Bezug auf die Kamera 80 definierte Kamerakoordinatensystem sind vorab kalibriert. Die Positionsbeziehung zwischen dem Roboterkoordinatensystem {R} und dem Kamerakoordinatensystem (eine Koordinatentransformationseinrichtung) ist vorab bekannt oder berechnet.
    • (e4) Entsprechend den 21a und 21b hat eine Befestigungsvorrichtung 98 für Markierungen („Marker“) eine Zylinderform und erste, zweite und dritte Kalibrierungsmarkierungen (Marker) 100, 102 und 104 sind in unterschiedlichen Winkellagen auf dem gleichen Umfangskreis des zylindrischen Körpers der Markierungsspannvorrichtung 98 angeordnet bzw. ausgeformt. Die Winkelbeziehung zwischen den drei Markierungen kann willkürlich gesetzt werden, sie entspricht beim dargestellten Ausführungsbeispiel drei gleichen Intervallen (Abstand zwischen den Markierungen also 120 Grad).
    • (e5) Die Positionsbeziehung zwischen den drei Markierungen 100, 102 und 104 auf der Markierungsspannvorrichtung 98 ist vorab bekannt, z.B. durch Messung oder dergleichen.
  • Nunmehr wird unter Zugrundelegung der obigen Definitionen bzw. Bedingungen nun ein Verfahren zur Gewinnung einer Koordinatentransformationsmatrix T näher beschrieben, mit der eine Koordinatentransformation ausführbar ist aus dem Roboter-koordinatensystem {R} in das Maschinenkoordinatensystem {M} im Kooperationssystem 70.
  • Zunächst wird entsprechend 20 die Markierungsaufnahmevorrichtung 98 am Spannfutter 86 der NC-Drehbank 72 angebracht und sodann wird die Spindel 88 mit geringer Geschwindigkeit vorgeschoben, bis das Zentrum einer der Markierungen auf der Vorrichtung 98 (in diesem Falle ist dies die erste Kalibrierungsmarkierung 100) in Kontakt kommt mit einem Vorderende des Werkzeuges (oder einer Messsonde 96). Sodann wird unter Verwendung der Messsonde 96 am Werkzeug-Aufnahmerevolver 94 die Position (bzw. der Koordinatenwert) der ersten Kalibrierungsmarkierung 100 in einer Z-X-Ebene des Maschinenkoordinatensystems {M} gemessen. Da die Positionsbeziehungen zwischen den ersten, zweiten und dritten Markierungen bekannt ist, können die Positionen (Koordinatenwerte) der zweiten und dritten Markierungen 102 und 104 durch Messung der Position der ersten Kalibrierungsmarkierung 100 und mit den Positionsbeziehungen zwischen den Markierungen berechnet werden.
  • Auf Basis der drei Koordinatenwerte (der drei Kalibrierungsmarkierungen), die in Bezug auf das Maschinenkoordinatensystem {M} gewonnen worden sind, wird ein vorläufiges Koordinatensystem {M'} definiert und es wird eine Koordinatentransformationsmatrix TM für die Koordinatentransformation von dem Maschinenkoordinatensystem {M} in das Koordinatensystem {M'} berechnet. Da das Verfahren zur Definition des Koordinatensystems {M'} dem Verfahren zur Definition des vorläufigen Koordinatensystems {B'} beim dritten oder vierten Ausführungsbeispiel entspricht, kann auf wiederholte Beschreibung insoweit verzichtet werden.
  • Sodann wird entsprechend 22 der Werkzeug-Aufnahmerevolver 94 (oder der Kreuzsupport 92) von der Spindel 88 weggezogen und der Roboter 74 wird so gesteuert, dass der Abstand zwischen der ersten Kalibrierungsmarkierung 100 und der am Vorderende des Roboters 74 angebrachten Kamera 80 passend wird und die Position der ersten Kalibrierungsmarkierung 100 mit hinreichender Genauigkeit gemessen werden kann. Sodann wird die erste Kalibrierungsmarkierung 100 mit der Kamera 80 aufgenommen und die Position (bzw. der Messwert) der ersten Kalibrierungsmarkierung 100 im Roboterkoordinatensystem {R} wird gewonnen. In ähnlicher Weise werden die Positionen der zweiten und dritten Kalibrierungsmarkierungen 102 und 104 im Roboterkoordinatensystem {R} mit der Kamera 80 vermessen.
  • Die drei Kalibrierungsmarkierungen an der Markierungsaufnahme 98 können dort unter willkürlichen Winkelabständen angebracht werden, solange nur die drei Markierungen auf dem gleichen Umfangskreis mit Bezug auf die Mittelachse der Spindel 88 angeordnet sind. Vorzugsweise sind die Winkelintervalle zwischen den drei Markierungen so, dass die Kamera 88 am Roboter 74 in einfacher Weise die Position einer jeden Markierung messen kann.
  • Basierend auf den drei Koordinatenwerten (der drei Kalibrierungsmarkierungen), die mit Bezug auf das Roboterkoordinatensystem {R} gewonnen worden sind, wird eine Koordinatentransformationsmatrix TR für die Koordinatentransformation vom Roboterkoordinatensystem {R} in das Koordinatensystem {M'} berechnet.
  • Unter Verwendung der Koordinatentransformationsmatrix TM und der Koordinatentransformationsmatrix TR , wie oben beschrieben, wird eine Koordinatentransformationsmatrix T vom Roboterkoordinatensystem {R} in das Maschinenkoordinatensystem {M} berechnet. Mit anderen Worten: (T = TR(TM )-1 (wobei "(TM )-1 die inverse Matrix von TM ist).
  • Beim fünften Ausführungsbeispiel wird die Spannvorrichtung mit den Kalibrierungsmarkierungen eingesetzt, um die drei Koordinatenwerte im Maschinenkoordinatensystem {M} und die entsprechenden drei Koordinatenwerte im Roboterkoordinatensystem {R} zu gewinnen, womit die Koordinatentransformationsmatrix für die Transformation vom Roboter zur Werkzeugmaschine (bzw. hier der Drehbank) gewonnen wird. Da dies bedeutet, dass der Roboter nicht nur das Koordinatensystem des Gegenstandes (des Werkstückes), welcher zu bearbeiten ist, gewinnt, kann der Roboter auch Tätigkeiten ausführen außer der Handhabung des Gegenstandes, wie eine Prüfung der Verfügbarkeit der Drehbank, Reinigung von Spänen etc.
  • Ist die NC-Drehbank 72 ein Bearbeitungszentrum, kann die Markierungsaufnahmevorrichtung 98 nur eine Kalibrierungsmarkierung aufweisen, da das Bearbeitungszentrum eine Funktion hat zum Indexieren der Spindel (bzw. eine C-Achsen-Vorschubfunktion). Im Einzelnen: eine Kalibrierungsmarkierung wird mit einer Messsonde 96 vermessen (im Maschinenkoordinatensystem {M}) und durch die Kamera 80 aufgenommen (im Roboterkoordinatensystem {R}, und sodann wird der C-Achsen-Vorschub ausgeführt (oder eine Rotation um die Z-Achse). Entsprechend dem Betrag des Vorschubes beim C-Achsen-Vorschub wird die Position der Kalibrierungsmarkierung im Maschinenkoordinatensystem {M} berechnet und die Kalibrierungsmarkierung mit der Kamera 80 vermessen. Weiterhin wird ein sekundärer C-Achsen-Vorschub ausgeführt und sodann entsprechend dem Betrag des Vorschubes dabei die Position der Kalibrierungsmarkierung im Maschinenkoordinatensystem {M} berechnet und die Kalibrierungsmarkierung mit der Kamera 80 vermessen. Damit werden drei Sätze von Koordinatenwerten der Kalibrierungsmarkierung gewonnen, wobei jeder Satz den Koordinatenwert im Maschinenkoordinatensystem {M} und den Koordinatenwert im Roboterkoordinatensystem {R} enthält, womit dann die Koordinatentransformationsmatrix T berechnet werden kann.
  • Bei jedem der oben beschriebenen Ausführungsbeispiele kann die Robotersteuerung den Roboter automatisch so steuern, dass die Positionsbeziehung zwischen der Kamera und der Kalibrierungsmarkierung für die Vermessung der Position derselben an die Kamera angepasst ist. Im Einzelnen: soll der Roboter so gesteuert werden, dass der Abstand zwischen der Kalibrierungsmarkierung und der Kamera des Roboters passend wird, kann die Kalibrierungsmarkierung mit der Kamera aufgenommen werden, bevor der Roboter betätigt wird (d.h. der Roboter wird in einer Anfangsposition angeordnet), und der Roboter kann dann unter Verwendung der aufgenommenen Information so gesteuert werden, dass er automatisch sich der Kalibrierungsmarkierung nähert. Beispielsweise kann hierfür die Technik benutzt werden, wie sie in der JP 2009-279677 A beschrieben ist. Damit kann eine Abfolge von Bewegungen zum Vermessen der Position der Kalibrierungsmarkierung im Roboterkoordinatensystem automatisiert werden, wodurch der Arbeitsaufwand für die Bedienungsperson reduziert ist.
  • Mit der vorliegenden Erfindung kann die Koordinatentransformationseinrichtung vom Roboterkoordinatensystem, definiert in Bezug auf den Roboter, zum Maschinenkoordinatensystem, definiert mit Bezug auf eine vorgegebene Position der Werkzeugmaschine, mit hoher Genauigkeit und mit einem einfachen Aufbau gewonnen werden. Damit kann das Roboterprogramm zum Ausführen unterschiedlicher Tätigkeiten einschließlich der Handhabung des Werkstückes in Bezug auf die Werkzeugmaschine in einfacher Weise erzeugt werden. Der zugängliche Bereich für den Roboter kann vergrößert werden und ein nicht-linearer Formfehler, welcher bei einer Offline-Simulation nicht erfasst werden kann, kann reduziert werden.
  • Mit der Erfindung wird ein Koordinatensystem gewonnen, das dem Roboter und der Werkzeugmaschine gemeinsam ist. Wenn deshalb der Roboter und die Werkzeugmaschine jeweils zugeordnete drei-dimensionale CAD-Modelle haben, kann geprüft werden, ob eine Störung zwischen dem Roboter und der Werkzeugmaschine auftritt, und zwar durch Gewinnung von Informationen bezüglich der Werkzeugmaschine beim Betrieb des Roboters. Da dabei der Roboter über den Positionszustand des Gegenstandes in der Werkzeugmaschine informiert werden kann, kann sich eine Bewegung des Roboters in eine sichere Position beim Betrieb der Werkzeugmaschine erübrigen und dies ermöglicht einen Einsatz der Werkzeugmaschine ohne Wartezeit bezüglich einer Bewegung des Roboters, wobei die Effizienz des Kooperationssystems verbessert werden kann. Da für den Roboter ein drei-dimensionales CAD-Modell verwendet werden kann, kann die Werkzeugmaschine mit der am Roboter angebrachten Kamera automatisch inspiziert werden, wenn in der Werkzeugmaschine eine Regelwidrigkeit auftritt.

Claims (3)

  1. Kooperationssystem (10) mit einer Werkzeugmaschine (12) und einem Roboter (14) zum Ausführen einer Tätigkeit in Bezug auf die Werkzeugmaschine, wobei das Kooperationssystem aufweist: eine Kamera (22), die an einem bewegbaren Teil (20) des Roboters angebracht ist; zumindest eine Kalibrierungsmarkierung (30, 32) die an einem bewegbaren Teil der Werkzeugmaschine angeordnet ist; eine erste Markierungskoordinatengewinnungseinrichtung in einer Steuerung (11) der Werkzeugmaschine, welche einen ersten Koordinatenwert der Kalibrierungsmarkierung in einem Maschinenkoordinatensystem gewinnt, welches in Bezug auf die Werkzeugmaschine definiert und in einer Robotersteuerung (16) eingestellt ist, durch Verwenden einer an der Werkzeugmaschine bereitgestellten Messsonde (28), wobei der erste Koordinatenwert in Basiskoordinaten transformiert und an die Robotersteuerung (16) übertragen wird; eine zweite Markierungskoordinatengewinnungseinrichtung in der Robotersteuerung (16), welche einen zweiten Koordinatenwert der Kalibrierungsmarkierung in einem Roboterkoordinatensystem gewinnt, welches in Bezug auf den Roboter definiert ist, durch Aufnahme der Kalibrierungsmarkierung durch die Kamera; und eine Koordinatentransformationseinrichtung in der Robotersteuerung (16), welche eine Koordinatentransformation berechnet zum Transformieren eines Roboterkoordinatensystems in das Maschinenkoordinatensystem auf Basis einer Mehrzahl von Sätzen der ersten und zweiten Koordinatenwerte der Kalibrierungsmarkierung.
  2. Kooperationssystem gemäß Anspruch 1, dadurch gekennzeichnet, dass die erste Markierungskoordinatengewinnungseinrichtung mehrere erste Koordinatenwerte der Kalibrierungsmarkierung im Maschinenkoordinatensystem entsprechend einer Mehrzahl von Positionen des bewegbaren Teiles der Werkzeugmaschine gewinnt, und dass die zweite Markierungskoordinatengewinnungseinrichtung mehrere zweite Koordinatenwerte der Kalibrierungsmarkierung im Roboterkoordinatensystem durch Aufnahme der Kalibrierungsmarkierung in den mehreren Positionen des bewegbaren Teils der Werkzeugmaschine gewinnt.
  3. Kooperationssystem gemäß Anspruch 1 oder 2, dadurch gekennzeichnet, dass der Roboter automatisch so gesteuert wird, dass er eine Positionsbeziehung zwischen der Kamera und der Kalibrierungsmarkierung bestimmt, in welcher die Kamera die Position der Kalibrierungsmarkierung vermessen kann.
DE102015015094.4A 2014-11-28 2015-11-20 Kooperationssystem mit Werkzeugmaschine und Roboter Active DE102015015094B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014242393A JP6126067B2 (ja) 2014-11-28 2014-11-28 工作機械及びロボットを備えた協働システム
JP2014-242393 2014-11-28

Publications (2)

Publication Number Publication Date
DE102015015094A1 DE102015015094A1 (de) 2016-06-02
DE102015015094B4 true DE102015015094B4 (de) 2018-11-15

Family

ID=55967992

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015015094.4A Active DE102015015094B4 (de) 2014-11-28 2015-11-20 Kooperationssystem mit Werkzeugmaschine und Roboter

Country Status (4)

Country Link
US (1) US9895810B2 (de)
JP (1) JP6126067B2 (de)
CN (1) CN105643369B (de)
DE (1) DE102015015094B4 (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10179407B2 (en) * 2014-11-16 2019-01-15 Robologics Ltd. Dynamic multi-sensor and multi-robot interface system
JP6181687B2 (ja) * 2015-03-13 2017-08-16 ファナック株式会社 加工により発生した切粉を除去可能な加工機システム
US9857786B2 (en) * 2015-03-31 2018-01-02 Recognition Robotics, Inc. System and method for aligning a coordinated movement machine reference frame with a measurement system reference frame
JP2016221645A (ja) * 2015-06-02 2016-12-28 セイコーエプソン株式会社 ロボット、ロボット制御装置およびロボットシステム
EP3147086B1 (de) * 2015-09-22 2020-11-04 Airbus Defence and Space GmbH Automatisieren von roboteroperationen im flugzeugbau
JP6333871B2 (ja) * 2016-02-25 2018-05-30 ファナック株式会社 入力画像から検出した対象物を表示する画像処理装置
US10551821B2 (en) * 2016-06-30 2020-02-04 Seiko Epson Corporation Robot, robot control apparatus and robot system
DE102016213663A1 (de) * 2016-07-26 2018-02-01 Siemens Aktiengesellschaft Verfahren zum Steuern eines Endelementes einer Werkzeugmaschine und eine Werkzeugmaschine
AT519176B1 (de) 2016-10-14 2019-02-15 Engel Austria Gmbh Robotersystem
JP6922204B2 (ja) * 2016-12-09 2021-08-18 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
JP2018094648A (ja) * 2016-12-09 2018-06-21 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
JP6464204B2 (ja) * 2017-01-17 2019-02-06 ファナック株式会社 オフラインプログラミング装置及び位置パラメータ補正方法
CN106926277A (zh) * 2017-03-07 2017-07-07 深圳华用科技有限公司 一种用于工业机器人定位的一体化智能相机
JP6880982B2 (ja) * 2017-04-21 2021-06-02 セイコーエプソン株式会社 制御装置およびロボットシステム
WO2018209592A1 (zh) * 2017-05-17 2018-11-22 深圳配天智能技术研究院有限公司 一种机器人的运动控制方法、机器人及控制器
JP6490154B2 (ja) 2017-06-21 2019-03-27 ファナック株式会社 ワイヤ放電システムおよび相対位置算出方法
JP2019040264A (ja) * 2017-08-22 2019-03-14 ファナック株式会社 工作機械とロボットの連携システム
CN107953333B (zh) * 2017-12-20 2021-04-20 深圳大学 一种机械手末端工具标定的控制方法及系统
US11002529B2 (en) 2018-08-16 2021-05-11 Mitutoyo Corporation Robot system with supplementary metrology position determination system
US10751883B2 (en) * 2018-08-16 2020-08-25 Mitutoyo Corporation Robot system with supplementary metrology position coordinates determination system
US10871366B2 (en) 2018-08-16 2020-12-22 Mitutoyo Corporation Supplementary metrology position coordinates determination system for use with a robot
WO2020051748A1 (zh) * 2018-09-10 2020-03-19 深圳配天智能技术研究院有限公司 标定方法及标定装置
US10913156B2 (en) 2018-09-24 2021-02-09 Mitutoyo Corporation Robot system with end tool metrology position coordinates determination system
JPWO2020090042A1 (ja) * 2018-10-31 2021-06-10 株式会社ソニー・インタラクティブエンタテインメント トラッカーのキャリブレーション装置、トラッカーのキャリブレーション方法及びプログラム

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59177607A (en) * 1983-03-28 1984-10-08 Fanuc Ltd Automatic programming method
JPH05212652A (ja) * 1992-02-05 1993-08-24 Toyoda Mach Works Ltd オンマシン計測装置を搭載した精密加工機
JPH05324034A (ja) * 1992-05-20 1993-12-07 Meidensha Corp ロボットの制御方法
JPH11509928A (ja) * 1995-07-26 1999-08-31 ジェームス クランプトン,ステファン スキャニング装置および方法
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
US20050102060A1 (en) * 2003-11-06 2005-05-12 Fanuc Ltd Device for correcting positional data of robot
JP2008152733A (ja) * 2006-12-20 2008-07-03 Fanuc Ltd ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体
JP2009279677A (ja) * 2008-05-20 2009-12-03 Fanuc Ltd 計測装置を用いてロボットの位置教示を行うロボット制御装置
JP2011048467A (ja) * 2009-08-25 2011-03-10 Fanuc Ltd 加工システム
US20140012416A1 (en) * 2011-03-24 2014-01-09 Canon Kabushiki Kaisha Robot control apparatus, robot control method, program, and recording medium
US20140229005A1 (en) * 2013-02-14 2014-08-14 Canon Kabushiki Kaisha Robot system and method for controlling the same

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08229774A (ja) * 1995-03-02 1996-09-10 Toshiba Mach Co Ltd 工作機械の変形補正加工法
DE50002092D1 (de) * 1999-06-26 2003-06-12 Kuka Schweissanlagen Gmbh Verfahren und vorrichtung zum kalibrieren von robotermessstationen, manipulatoren und mitgeführten optischen messeinrichtungen
US6873880B2 (en) * 2001-12-26 2005-03-29 Lockheed Martin Corporation Machine for performing machining operations on a workpiece and method of controlling same
EP2290486A1 (de) * 2009-08-28 2011-03-02 Renishaw plc Kalibrierungsverfahren für Werkzeugmaschine
DE102010054393A1 (de) * 2010-12-07 2012-06-14 Chiron-Werke Gmbh & Co. Kg Verfahren zur Bestimmung der Position eines Werkzeuges
JP6415190B2 (ja) * 2014-09-03 2018-10-31 キヤノン株式会社 ロボット装置、ロボット制御プログラム、記録媒体、およびロボット装置の制御方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59177607A (en) * 1983-03-28 1984-10-08 Fanuc Ltd Automatic programming method
JPH05212652A (ja) * 1992-02-05 1993-08-24 Toyoda Mach Works Ltd オンマシン計測装置を搭載した精密加工機
JPH05324034A (ja) * 1992-05-20 1993-12-07 Meidensha Corp ロボットの制御方法
JPH11509928A (ja) * 1995-07-26 1999-08-31 ジェームス クランプトン,ステファン スキャニング装置および方法
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
US20050102060A1 (en) * 2003-11-06 2005-05-12 Fanuc Ltd Device for correcting positional data of robot
JP2008152733A (ja) * 2006-12-20 2008-07-03 Fanuc Ltd ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体
JP2009279677A (ja) * 2008-05-20 2009-12-03 Fanuc Ltd 計測装置を用いてロボットの位置教示を行うロボット制御装置
JP2011048467A (ja) * 2009-08-25 2011-03-10 Fanuc Ltd 加工システム
US20140012416A1 (en) * 2011-03-24 2014-01-09 Canon Kabushiki Kaisha Robot control apparatus, robot control method, program, and recording medium
US20140229005A1 (en) * 2013-02-14 2014-08-14 Canon Kabushiki Kaisha Robot system and method for controlling the same

Also Published As

Publication number Publication date
CN105643369A (zh) 2016-06-08
DE102015015094A1 (de) 2016-06-02
CN105643369B (zh) 2018-04-10
US20160151915A1 (en) 2016-06-02
US9895810B2 (en) 2018-02-20
JP2016101640A (ja) 2016-06-02
JP6126067B2 (ja) 2017-05-10

Similar Documents

Publication Publication Date Title
DE102015015094B4 (de) Kooperationssystem mit Werkzeugmaschine und Roboter
DE112016002797B4 (de) Kalibriervorrichtung und robotersystem mit einer solchen kalibriervorrichtung
DE102016008284A1 (de) Zum erhalten des werkstücknullpunkts ausgebildete werkzeugmaschinensteuerung und werkstücknullpunkt-festlegungsverfahren
DE102017110035A1 (de) Werkzeugmaschine
DE102014104170A1 (de) Numerisch gesteuerte Werkzeugmaschine und Spindelfehler-Kompensierverfahren hierzu
EP1702727A2 (de) Fertigungseinrichtung mit einer Biegepresse, einer Handhabungsvorrichtung und einer Kalibriereinrichtung
DE60209513T2 (de) Verfahren zur automatischen korrektur von systematischen fehlern von mess- und bearbeitungsmaschinen und vorrichtung dafür
DE102017209178B4 (de) Verfahren zur Ermittlung der Raumlage eines bewegten Koordinatensystems, eines Messpunkts seines Sensors oder eines Arbeitspunktes eines Werkzeugs bei einem Roboter
DE102017206568A1 (de) Positionsmessverfahren für ein Objekt bei einer Bearbeitungsmaschine und Positionsmesssystem derselben
DE102018202322B4 (de) Robotersystem, Robotersteuervorrichtung und Robotersteuerverfahren
WO2017055637A1 (de) Verfahren und vorrichtung zur vermessung einer numerisch gesteuerten werkzeugmaschine
EP2663963B1 (de) Vorrichtung und verfahren zum erfassen der lage eines objekts in einer werkzeugmaschine
DE102015103633A1 (de) Bearbeitungs-Spannvorrichtung zur drehbaren Halterung eines Werkstücks relativ zu einem Werkzeug einer Werkzeugmaschine und Bearbeitungssystem
DE102011014299A1 (de) Verfahren und Mittel zum Steuern einer Automatisierungseinrichtung, insbesodere eines Roboters
DE102019001207A1 (de) Kollaborativer Roboter und Verfahren zum Betreiben eines kollaborativen Roboters und Verwendung zum Bearbeiten eines Werkstücks
DE102018129355A1 (de) Werkzeugmaschine
EP3221094A1 (de) Verfahren und system zur korrektur einer bearbeitungsbahn eines robotergeführten werkzeugs
DE102004020004A1 (de) Verfahren zur Einmessung des Koordinatensystems einer Kamera eines Roboters gegenüber dem Koordinatensystem des Roboters oder umgekehrt
DE102017126243A1 (de) System und verfahren zum kompensieren von mehrachsigen fertigungssystemen
DE102007016502B4 (de) Messverfahren und Messsystem zum Vermessen von Werkzeugen
EP2216697A1 (de) Werkzeugmaschine und Verfahren zur Vermeidung einer Kollision bei einer Werkzeugmaschine
EP3441200A1 (de) Referenzierverfahren und vorrichtung für industrieroboter
DE102015104587A1 (de) Verfahren zum Kalibrieren eines Roboters an einem Arbeitsbereich und System zum Durchführen des Verfahrens
AT518176B1 (de) Verfahren zum Betreiben einer CNC-Maschine
DE102006005990A1 (de) Werkstückvermessung für 3-D Lageerkennung in mehreren Multi-Roboter-Stationen

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