-
{Technisches Gebiet}
-
Die vorliegende Erfindung betrifft ein Robotersystem und ein Koordinatenumwandlungsverfahren.
-
{Stand der Technik}
-
Herkömmlich ist ein Robotersystem bekannt, welches einen Roboter, welcher dafür geeignet ist, Aufgaben an einem Objekt durchzuführen, welches sich durch eine Transfereinrichtung bewegt, eine Robotersteuerung, welche dafür geeignet ist, den Roboter zu steuern, ein Sichtsystem, welches dafür geeignet ist, von der Robotersteuerung gesteuert zu werden, und eine Messeinheit umfasst, welche dafür geeignet ist, einen Bewegungsbetrag des von der Transfereinrichtung bewegten Objekts zu messen, wobei die Position des Objekts innerhalb eines von dem Sichtsystem gewonnenen Bildes erfasst wird und der Roboter auf der Grundlage der Position, welche erfasst worden ist, und des von der Messeinheit gemessenen Bewegungsbetrags gesteuert wird (siehe zum Beispiel PTL 1).
-
{Literaturliste}
-
{Patentliteratur}
-
[PTL 1]
Japanische Patentveröffentlichung Nr. 4022843
-
{Kurzdarstellung der Erfindung}
-
{Technisches Problem}
-
Das vorstehend beschriebene Sichtsystem ist zur Steuerung von Robotern ausgelegt, von einem Roboterhersteller entwickelt und ist dementsprechend auf die Steuerung von Robotern spezialisiert. Im Allgemeinen werden eine Robotersteuerung und ein Sichtsystem so gefertigt, dass sie miteinander kompatibel sind, und sind durch ein Sichtsystem erzielte Information, Daten usw. dafür geeignet, in einer Robotersteuerung verwendet zu werden. Außerdem sind Programme zur Kalibrierung in der Robotersteuerung und auch in dem Sichtsystem gespeichert und wird die Kalibrierung in einer halbautomatischen oder automatischen Weise unter Verwendung einer Kalibriervorrichtung durchgeführt, welche ein Punktemuster oder beliebiges anderes ähnliches Element aufweist.
-
Die Abstände des Punktemusters sind bekannt. Daraus ergibt sich, dass bei der vorstehend genannten Kalibrierung zum Beispiel die Position der Kamera in Bezug auf die Kalibriervorrichtung durch die Steuereinheit des Sichtsystems auf der Grundlage des durch die feste Kamera des Sichtsystems gewonnenen Bildes des Punktemusters identifiziert wird. Außerdem wird die Position der Kalibriervorrichtung in dem Roboterkoordinatensystem durch die Robotersteuereinheit identifiziert, indem ein an einem distalen Ende des Roboters vorgesehenes vorgegebenes Werkzeug mit mehreren Stellen des Punktemusters in Kontakt gebracht wird. Zusätzlich werden verschiedene Verfahren durchgeführt, um interne Parameter, wie beispielsweise Linsenverzeichnung, zu gewinnen. Derartige Verfahren werden in einer halbautomatischen oder automatischen Weise durchgeführt, und die Robotersteuereinheit erkennt das Koordinatensystem des Sichtsystems, und es wird der Robotersteuereinheit ermöglicht, die Positionsdaten von jedem Objekt in dem Roboterkoordinatensystem auf der Grundlage der Daten aus dem Sichtsystem genau zu erkennen.
-
Es sollte festgestellt werden, dass, während ein Fall einer festen Kamera hier genannt worden ist, das gleiche auf einen Fall zutrifft, bei dem die Kamera an einem Roboterarm befestigt ist. In diesem Fall wird die Position der Kamera ebenfalls unter Verwendung der Position des Roboters zum Zeitpunkt des Abbildens identifiziert werden.
-
Indessen kann zum Beispiel ein Sensorsystem, welches von einem Hersteller oder dergleichen von hoch präzisen Messinstrumenten mit einer Betriebsleistung, welche größer als die von Prüfeinrichtungen und Robotern ist, hergestellt wird, in einigen Fällen eine Funktionalität aufweisen, welche über derjenigen des vorstehend beschriebenen Sichtsystems liegt. Daraus ergibt sich, dass es Bedarf nach einer Nachführsteuerung von Robotern unter Verwendung eines Sensorsystems gegeben hat. Ein Sensor und eine Sensorsteuerung eines Sensorsystems sind jedoch nicht zur Steuerung von Robotern ausgelegt. Dies gilt auch für einen Fall, bei dem das Sensorsystem dafür angepasst ist, für andere Anwendungen als die Prüfung verwendet zu werden. Ein derartiges Sensorsystem weist Spezifikationen und Schnittstellen für dessen Anwendung auf, und die in dem Sensor und der Sensorsteuerung des Sensorsystems durchgeführten Verfahren sind ebenfalls auf die vorstehend beschriebene Anwendung spezialisiert. Daraus ergibt sich, dass das Sensorsystem keine zur Steuerung eines Roboters geeignete Information, Daten usw. bereitstellen kann und das Sensorsystem die Position des Sensors (externe Parameter) unter Verwendung einer bei der Steuerung des Roboters verwendeten Kalibriervorrichtung nicht identifizieren kann. Da es nicht möglich ist, ein Programm zu verwenden, welches die komplizierte Kalibrierung, wie sie vorstehend beschrieben wurde, durchführt, wird normalerweise das Einsetzen eines Sichtsystems zur Verwendung bei der Steuerung eines Roboters in Betracht gezogen.
-
In Hinblick auf die vorstehend beschriebenen Umstände ist es erwünscht, ein Robotersystem und ein Koordinatenumwandlungsverfahren bereitzustellen, welche imstande sind, eine Kalibrierung zwischen einem Roboter und einem Sensorsystem, welches von Herstellern oder dergleichen von Prüfeinrichtungen und hoch präzisen Messinstrumenten hergestellt wird, in Bezug auf von dem Roboter durchgeführten Aufgaben auszuführen.
-
{Lösung des Problems}
-
Ein Robotersystem eines ersten Aspekts umfasst ein Sensorsystem; einen Roboter; und eine Robotersteuerung, welche den Roboter steuert, wobei die Robotersteuerung ein Roboterkoordinatensystem erkennt, welches ein Koordinatensystem des Roboters ist, jedoch ein Koordinatensystem des Sensorsystems nicht erkennt; und die Robotersteuerung eine Matrixerstellungsverarbeitung vornimmt, um eine Umwandlungsmatrix zu erstellen, welche eine Koordinatenumwandlung vornimmt, in einer eine X-Achse und eine Y-Achse umfassenden Ebene, auf einen Satz von durch das Sensorsystem gewonnenen Positionskoordinaten auf der Grundlage von jedem Satz von Positionskoordinaten einer Mehrzahl von durch das Sensorsystem gewonnenen Objekten oder Punkten und jedem Satz von Positionskoordinaten in einer X-Achsenrichtung und einer Y-Achsenrichtung in dem Roboterkoordinatensystem, wobei der Satz von Positionskoordinaten in dem Roboterkoordinatensystem der Mehrzahl von Objekten oder Punkten entspricht.
-
Ein Koordinatenumwandlungsverfahren eines zweiten Aspekts ist ein Koordinatenumwandlungsverfahren zum Umwandeln eines Satzes von durch ein Sensorsystem erfassten Positionskoordinaten in einen Satz von Positionskoordinaten in einem durch eine Robotersteuerung erkannten Roboterkoordinatensystem, wobei das Verfahren umfasst: Erstellen einer Umwandlungsmatrix, welche eine Koordinatenumwandlung vornimmt, in einer eine X-Achse und eine Y-Achse umfassenden Ebene, auf einen Satz von durch das Sensorsystem gewonnenen Positionskoordinaten auf der Grundlage von jedem Satz von Positionskoordinaten einer Mehrzahl von durch das Sensorsystem gewonnenen Objekten oder Punkten und jedem Satz von Positionskoordinaten in einer X-Achsenrichtung und einer Y-Achsenrichtung in dem der Mehrzahl von Objekten oder Punkten entsprechenden Roboterkoordinatensystem; und Umwandeln der durch das Sensorsystem erfassten Positionskoordinaten unter Verwendung der Umwandlungsmatrix.
-
{Vorteilhafte Wirkungen der Erfindung}
-
Gemäß der vorstehend beschriebenen Aspekte wird es ermöglicht, eine Kalibrierung zwischen einem Roboter und einem Sensorsystem, welches von Herstellern oder dergleichen von Prüfeinrichtungen und hoch präzisen Messinstrumenten hergestellt wird, in Bezug auf von dem Roboter durchgeführten Aufgaben auszuführen.
-
Figurenliste
-
- {1} 1 ist eine Darstellung, welche eine Konfiguration eines Robotersystems einer ersten Ausführungsform darstellt, welche ein Erfassungssystem verwendet.
- [2] 2 ist ein Blockdiagramm einer Steuereinheit des Erfassungssystems der ersten Ausführungsform.
- [3] 3 ist eine erklärende Darstellung, welche die Bewegung eines durch das Erfassungssystem der ersten Ausführungsform erfassten Objekts beschreibt.
- {4} 4 ist ein Flussdiagramm, welches ein Kalibrierbeispiel unter Verwendung des Erfassungssystems der ersten Ausführungsform darstellt.
- {5} 5 ist ein Flussdiagramm, welches ein modifiziertes Beispiel der Kalibrierung unter Verwendung des Erfassungssystems der ersten Ausführungsform darstellt.
- [6] 6 ist eine erklärende Darstellung, welche die Bewegung eines durch ein Erfassungssystem einer zweiten Ausführungsform erfasstes Objekt beschreibt.
- {7} 7 ist ein Flussdiagramm, welches ein Kalibrierbeispiel unter Verwendung des Erfassungssystems der zweiten Ausführungsform darstellt.
- {8} 8 ist ein Flussdiagramm, welches ein Kalibrierbeispiel unter Verwendung des Erfassungssystems der zweiten Ausführungsform darstellt.
- {9} 9 ist ein Flussdiagramm, welches ein modifiziertes Kalibrierbeispiel unter Verwendung des Erfassungssystems der zweiten Ausführungsform darstellt.
- [10] 10 ist eine erklärende Darstellung, welche die Bewegung eines anderen durch ein Erfassungssystem einer zweiten Ausführungsform erfasstes Objekt beschreibt.
- {11} 11 ist eine Darstellung, welche eine Konfiguration eines Robotersystems eines modifizierten Beispiels darstellt, bei welchem die Erfassungssysteme der ersten und zweiten Ausführungsform verwendet werden.
-
{Beschreibung von Ausführungsformen}
-
Ein Robotersystem gemäß einer ersten Ausführungsform wird nunmehr nachstehend mit Bezug auf die Zeichnungen beschrieben.
-
Das Robotersystem dieser Ausführungsform umfasst, wie es in 1 dargestellt ist, eine Transfereinrichtung (Bewegungsmittel) 10 als Bewegungsmittel, welches Artikel (Objekte) O bewegt; ein Sensorsystem 20; einen Roboter 30; und eine Robotersteuerung 40, welche den Roboter 30 steuert. Die Transferrichtung der Transfereinrichtung 10 fällt mit einer X-Achsenrichtung eines Roboter-Koordinatensystems 201, welches ein Koordinatensystem des Roboters 30 ist, zusammen, eine Richtung senkrecht zu einer Transferfläche der Transfereinrichtung 10 fällt mit einer Z-Achsenrichtung des Roboterkoordinatensystems 201 zusammen und eine Y-Achsenrichtung des Roboterkoordinatensystems 201 ist derart definiert, dass sie mit einer Breitenrichtung parallel zu einer Breite der Transfereinrichtung 10 zusammenfällt. Bei dieser Ausführungsform ist die Z-Achsenrichtung eine vertikale Richtung.
-
Falls die Objekte O Werkstücke sind, führt der Roboter 30 Aufgaben, wie beispielsweise Entladeaufgaben und Bearbeitungsaufgaben, an jedem Objekt O aus. Die Objekte O können in einem einzigen Werkstück ausgebildete Löcher sein. In diesem Fall führt der Roboter 30 Aufgaben, wie beispielsweise Bearbeitung und Anbringung einer Komponente an jedem Objekt O, aus.
-
Die Transfereinrichtung 10 umfasst eine Messeinheit 10a, wie beispielsweise einen Impulsgeber, welche imstande ist, einen Bewegungsbetrag der Objekte O, welche weitergeleitet werden, zu erfassen. Die Messeinheit 10a ist zum Beispiel in einem Motor 10b vorgesehen, welcher die Transfereinrichtung 10 antreibt. Alternativ kann eine Rolle an einem Ende des Impulsgebers vorgesehen sein, und die Rolle kann gegen eine Förderbandfläche gedrückt sein. Die Messeinheit 10a ist mit der Robotersteuerung 40 verbunden und die Erfassungsergebnisse, welche durch die Messeinheit 10a erfasst werden, werden ständig an die Robotersteuerung 40 gesendet.
-
Das Sensorsystem 20 ist zum Beispiel ein System zum Ausführen einer Prüfung der Objekte O, welche von der Transfereinrichtung 10 weitergeleitet werden. Das Sensorsystem 20 umfasst einen Sensor 21, eine Verarbeitungseinheit 22, welche durch den Sensor 21 gewonnene Daten verarbeitet, und eine Ermittlungseinheit 23, welche eine Ermittlung unter Verwendung der Daten ausführt, welche durch die Verarbeitungseinheit 22 gewonnen und verarbeitet worden sind. Die Verarbeitungseinheit 22 und die Ermittlungseinheit 23 sind zum Beispiel in einer Sensorsteuerung 24 vorgesehen.
-
Es sollte festgestellt werden, dass die Verarbeitungseinheit 22 und die Ermittlungseinheit 23 in dem Sensor 21 eingebaut sein können.
-
Der Sensor 21, welcher zum Beispiel eine zweidimensionale Kamera, dreidimensionale Kamera, dreidimensionaler Abstandssensor usw. ist, sollte imstande sein, Daten zur Erfassung der Position des Objekts O zu gewinnen. Bei dieser Ausführungsform ist der Sensor 21 über der Transfereinrichtung 10 angeordnet und verläuft die optische Achse des Sensors 21 parallel zur Z-Achse. Mit anderen Worten ist der Sensor 21 derart angeordnet, dass seine optische Achse im Wesentlichen senkrecht zu der Transferfläche der Transfereinrichtung 10 ist.
-
Die Sensorsteuerung 24 weist einen Prozessor, wie beispielsweise eine CPU, eine Speichereinheit, wie beispielsweise nicht flüchtiger Speicher, ROM und RAM-Einheiten, eine Eingabeeinheit, wie beispielsweise eine Tastatur und dergleichen, eine Anzeigeeinheit usw. auf und ist mit der Robotersteuerung 40 verbunden. Die Verarbeitungseinheit 22 und die Ermittlungseinheit 23 werden durch den Prozessor konfiguriert, welcher auf der Grundlage von in der Speichereinheit gespeicherten Programmen arbeitet.
-
Die vorstehend genannte Prüfung kann eine beliebige geeignete Prüfung sein, die Verarbeitungseinheit 22 erstellt die verarbeiteten Daten, indem bekannte Bildverarbeitung durchgeführt wird, und die Ermittlungseinheit 23 führt eine bestanden/nicht bestanden Beurteilung als Teil von zum Beispiel einer Komponentenprüfung oder Produktprüfung an jedem Objekt O auf der Grundlage der Daten, welche verarbeitet worden sind, aus.
-
Die Verarbeitungseinheit 22 oder die Ermittlungseinheit 23 erfasst zumindest die Positionen der Objekte O unter Verwendung der Daten, welche verarbeitet oder nicht verarbeitet worden sind. Es sollte festgestellt werden, dass die Verarbeitungseinheit 22 oder die Ermittlungseinheit 23 die Positionen und Ausrichtungen der Objekte erfassen können.
-
Außerdem kann die für jedes Objekt O zu erfassende Position eine Position des Objekts O in den durch den Sensor 21 gewonnenen Daten oder eine Position des Objekts O in den Daten sein, welche verarbeitet worden sind.
-
Während der Roboter 30 nicht auf einen Roboter einer bestimmten Bauart beschränkt ist, ist der Roboter 30 dieser Ausführungsform ein Vertikal-Gelenk-Roboter, welcher Servomotoren 31 umfasst (siehe 3), welche einzeln mehrere bewegliche Teile antreiben. Es sollte festgestellt werden, dass die mehreren beweglichen Teile einen Arm 30a des Roboters 30 bilden. Die Servomotoren 31 weisen jeweils eine Betriebsposition-Erfassungseinrichtung auf, welche die Betätigungsposition davon erfasst, und die Betriebsposition-Erfassungseinrichtung ist als Beispiel ein Impulsgeber. Der erfasste Wert, welcher durch die Betätigungsposition-Erfassungseinrichtung erfasst wird, wird an die Robotersteuerung 40 übertragen. Der Roboter 30 kann auch ein Horizontal-Gelenk-Roboter, ein Mehrgelenksroboter, usw. sein.
-
Die Robotersteuerung 40 umfasst gemäß einem Beispiel, wie es in 3 dargestellt ist, einen Prozessor 41, wie beispielsweise eine CPU, eine Anzeigeeinrichtung 42, eine Speichereinheit 43, welche eine nicht flüchtige Speichereinheit, eine ROM-Einheit, eine RAM-Einheit usw. aufweist, eine Vielzahl von Servosteuerungen 44, welche jeweils den Servomotoren 31 des Roboters 30 entspricht, und eine Eingabeeinheit 45, wie beispielsweise eine Bedientafel.
-
Ein Systemprogramm 43a ist in der Speichereinheit 43 gespeichert, und das Systemprogramm 43a ist für die Basisfunktionen der Robotersteuerung 40 verantwortlich. Ein Tätigkeitsprogramm 43b und ein Folgesteuerprogramm 43c sind in der Speichereinheit 43 gespeichert, und der Prozessor 41 steuert die einzelnen Servomotoren 31 des Roboters 30 und ein an dem distalen Ende des Roboters 30 vorgesehenes Werkzeug T auf der Grundlage dieser Programme, mittels derer der Roboter 30 Aufgaben an den Objekten O, welche durch die Transfereinrichtung 10 weitergeleitet werden, durchführt. Außerdem ist ein Kalibrierprogramm 23b in der Speichereinheit 43 gespeichert.
-
Bei dieser Ausführungsform ist ein Erfassungsbereich AR1 durch den Sensor 21 auf einer stromaufwärtigen Seite in der Transferrichtung der Transfereinrichtung 10 in Bezug auf einen Arbeitsbereich AR2 des Roboters 30 angeordnet, und der Erfassungsbereich AR1 und der Arbeitsbereich AR2 überlappen einander nicht. Der Arbeitsbereich AR2 ist kein Bereich, in welchem sich der Roboter 30 bewegen darf, sondern ein Bereich, in welchem der Roboter 30 die vorstehend genannte Aufgabe ausführt. Es sollte festgestellt werden, dass der Erfassungsbereich AR1 und der Arbeitsbereich AR2 teilweise einander überlappen können.
-
Die Robotersteuerung 40 ist zum Steuern des Roboters 30 ausgelegt, und daraus ergibt sich, dass die Robotersteuerung 40 das Roboterkoordinatensystem 201 erkennt, welches das Koordinatensystem des Roboters 30 ist. Die Robotersteuerung 40 erkennt die Positionen und Ausrichtungen der einzelnen beweglichen Teile des Arms 30a des Roboters 30 und des Werkzeugs T in dem Roboterkoordinatensystem 201 und steuert die einzelnen Servomotoren 31 und das Werkzeug T an dem distalen Ende des Roboters 30.
-
Um die Positionsdaten, welche die Position von jedem durch das Sensorsystem 20 zur Steuerung des Roboters 30 erfassten Objekts O angeben, ist es hier notwendig, eine Kalibrierung durchzuführen, um eine Zuordnung zwischen dem Sensorkoordinatensystem 202 des Sensorsystems 20 und dem Roboterkoordinatensystem 201 zu definieren, jedoch weist das Sensorsystem 20 keine derartige Funktion auf.
-
Als Vergleichsbeispiel wird nunmehr ein Sichtsystem zur Verwendung bei der Steuerung des Roboters 30 beschrieben. Das Sichtsystem wird von einem Roboterhersteller hergestellt, welcher den Roboter 30 und die Robotersteuerung 40 herstellt und auf die Steuerung des Roboters 30 spezialisiert ist. Im Allgemeinen werden eine Robotersteuerung 40 und das Sichtsystem derart erstellt, dass sie miteinander kompatibel sind, und sind durch das Sichtsystem erzielte Information, Daten usw. zur Verwendung in der Robotersteuerung 40 geeignet. Außerdem ist ein Programm zur Kalibrierung in der Robotersteuerung 40 und dem Sichtsystem gespeichert und wird eine Kalibrierung in einer halbautomatischen oder automatischen Weise unter Verwendung einer ein Punktemuster aufweisenden Kalibriervorrichtung durchgeführt.
-
Die Abstände des Punktemusters sind bekannt. Daraus ergibt sich, dass bei der vorstehend genannten Kalibrierung zum Beispiel die Position der Kamera in Bezug auf die Kalibriervorrichtung durch die Steuereinheit des Sichtsystems auf der Grundlage des durch die Kamera des Sichtsystems gewonnenen Bildes des Punktemusters identifiziert wird. Außerdem wird die Position der Kalibriervorrichtung in dem Roboterkoordinatensystem 201 durch die Robotersteuerung 40 identifiziert, indem ein an einem distalen Ende des Roboters 30 vorgesehenes vorgegebenes Werkzeug mit mehreren Stellen des Punktemusters in Kontakt gebracht wird. Zusätzlich werden verschiedene Verfahren durchgeführt, wie beispielsweise die Definition einer Zuordnung zwischen den Maßstäben der beiden Systeme, Aufhebung der Linsenverzeichnung und dergleichen. Derartige Verfahren werden in einer halbautomatischen oder automatischen Weise durchgeführt, und die Robotersteuerung 40 erkennt das Koordinatensystem des Sichtsystems, und es wird der Robotersteuerung 40 ermöglicht, die Positionsdaten von jedem Objekt O in dem Roboterkoordinatensystem 201 auf der Grundlage der Daten aus dem Sichtsystem zu erkennen.
-
Währenddessen wird das Sensorsystem 20 von einem auf dessen Herstellung spezialisierten Unternehmen hergestellt, und der Sensor 21 und die Sensorsteuerung 24 werden zur Prüfung und nicht zur Steuerung des Roboters 30 verwendet. Dies gilt auch für einen Fall, bei dem das Sensorsystem 20 bei anderen Anwendungen als der Prüfung verwendet wird. Das Sensorsystem 20 dieser Bauart umfasst geeignete Spezifikationen und Schnittstellen, welche für dessen Anwendungen geeignet sind, und die in dem Sensor 21 und der Sensorsteuerung 24 des Sensorsystems 20 durchgeführte Verarbeitung ist ebenfalls auf die vorstehend genannten Anwendungen spezialisiert. Daraus ergibt sich, dass das Sensorsystem 20 Information, Daten usw., welche für die Steuerung des Roboters 30 geeignet sind, nicht bereitstellen kann. Außerdem kann das Sensorsystem 20 die Position des Sensors 21 unter Verwendung einer Kalibriervorrichtung zur Verwendung bei der Steuerung des Roboters 30 nicht identifizieren. In einer Situation, in der ein Programm, welches eine wie vorstehend beschriebene ausgereifte Kalibrierung durchführt, nicht verwendet werden kann, wird in normalen Fällen der Einsatz eines Sichtsystems zur Verwendung bei der Steuerung eines Roboters in Betracht gezogen.
-
Das Sensorsystem 20 und der Sensor 21, welche auf spezifische Anwendungen, wie beispielsweise Prüfung, spezialisiert sind, können in einigen Fällen Funktionen aufweisen, welche jenen des zur Steuerung des Roboters 30 vorgesehenen Sichtsystems überlegen sind. Derartige Fälle können zum Beispiel einen Fall, bei dem der Sensor 21 ein Hochgeschwindigkeitssensor und/oder ein hoch präziser Sensor ist, einen Fall, bei dem die Verarbeitung in der Verarbeitungseinheit 22 eine Verarbeitung mit hoher Geschwindigkeit und/oder hoher Präzision ist, und beliebige andere passende Fälle umfassen. Bei dieser Ausführungsform wird eine Kalibrierung zur Verwendung von Ergebnissen des Sensorsystems 20 bei der Steuerung des Roboters 30 ausgeführt.
-
Es sollte festgestellt werden, dass es ein Sensorsystem 20 geben kann, welches imstande ist, interne Parameter, wie beispielsweise Linsenverzeichnung, und Lagebeziehung in Bezug auf den Roboter 30 abzuleiten. Es ist jedoch nicht dazu eingerichtet, um die Koordinatensysteme unter Verwendung gemessener Werte, welche durch die Messeinheit 10a gemessen werden, anzupassen, und der Arbeitsbereich des Roboters 30 befindet sich in den meisten Fällen innerhalb des Bereichs des Sichtfeldes.
-
Es sollte auch bei dieser Ausführungsform festgestellt werden, dass in einen Zustand gelangt werden kann, in welchem interne Parameter und externe Parameter des Sensorsystems 20 unter Verwendung eines Werkzeugs ermittelt werden, welches als zugeordnetes Werkzeug von einem auf die Herstellung des Sensorsystems 20 spezialisierten Unternehmen bereitgestellt wird. Diese Ausführungsform ist effizient, da die Beziehung zwischen den Erfassungsergebnissen des Sensorsystems 20 und dem Roboterkoordinatensystem 201 bei dieser Ausführungsform zu ermitteln ist. Es sollte festgestellt werden, dass, falls die Erfassungsergebnisse bereits in die Millimetereinheiten des Sensorsystems 20 umgewandelt worden sind, der in dieser Ausführungsform zu ermittelnde Maßstab dann idealerweise einen Wert nahe Eins annehmen wird.
-
(Kalibrierbeispiel 1)
-
Die Kalibrierung wird nunmehr mit Bezug auf ein Flussdiagramm von 4 beschrieben. Zuerst werden zwei Objekte O in einem Erfassungsbereich AR1 auf der Transfereinrichtung 10, welche gestoppt ist, platziert (Schritt S1-1). Falls die Objekte O Werkstücke sind, werden die beiden Objekte O auf der Transfereinrichtung 10 innerhalb des Erfassungsbereiches AR1 platziert. Es sollte festgestellt werden, dass die beiden Objekte O zwei Gewindelöcher sein können, welche in einem einzigen Werkstück vorgesehen sind, oder zwei auf einer einzelnen Platte vorgesehene Kennzeichen sein können. Es sollte auch festgestellt werden, dass die Objekte O für die Kalibrierung von Objekten, an welchen der Roboter 30 eine Aufgabe durchführt, verschieden sein können. In diesem Fall sollte die Position in der Z-Achsenrichtung des Objekts für die Kalibrierung vorzugsweise der Position in der Z-Achsenrichtung des Objekts entsprechen, an welchem die Aufgabe des Roboters 30 durchgeführt wird. Außerdem muss ein Merkmal nicht notwendigerweise an einem Werkstück vorgesehen sein. Zwei Werkstücke können verwendet werden. An diesem Punkt ist es ferner bevorzugt so, dass die beiden Objekte an dem Förderer mit einem Band befestigt sind, so dass sich das relative Verhältnis zwischen diesen beiden Werkstücken nicht ändert.
-
Anschließend wird eines der beiden Objekte O in einem Zustand platziert, in welchem seine Position durch das Sensorsystem 20 nicht erfasst wird (Schritt S1-2), wird ein Befehl zur Anweisung zur Erfassung der Position des Objekts O in diesem Zustand von der Robotersteuerung 40 an das Sensorsystem 20 übertragen (Schritt S1-3) und empfängt die Robotersteuerung 40 ein Erfassungsergebnis P0 der ersten Position von dem Sensorsystem 20 (Schritt S1-4).
-
Anschließend wird das andere Objekt O in einem Zustand platziert, in welchem seine Position durch das Sensorsystem 20 nicht erfasst wird (Schritt S1-5), wird ein Befehl zur Anweisung zur Erfassung der Position des Objekts O in diesem Zustand von der Robotersteuerung 40 an das Sensorsystem 20 übertragen (Schritt S1-6) und empfängt die Robotersteuerung 40 ein Erfassungsergebnis P1 der zweiten Position von dem Sensorsystem 20 (Schritt S1-7).
-
In den Schritten S1-2 und S1-5 wird ein Zustand verwirklicht, in welchem die Positionen der Objekte O nicht erfasst werden, indem zum Beispiel das Objekt O mit einem Tuch verborgen wird.
-
Anschließend werden die beiden Objekte O durch die Transfereinrichtung 10 bewegt, bis sie sich innerhalb des Arbeitsbereiches AR2 befinden, und die Transfereinrichtung 10 wird gestoppt (Schritt S1-8). Zusätzlich wird ein Ende (Abtastabschnitt) des an den Roboter 30 angebrachten Werkzeugs mit einer vorgegebenen Position des anderen Objekts O in Kontakt gebracht (Schritt S1-9) und wird die Position des Endes des Werkzeugs an diesem Punkt (der Satz von Positionskoordinaten Q0 in dem Roboterkoordinatensystem 201) in der Speichereinheit 43 der Robotersteuerung 40 gespeichert (Schritt S1-10). Es sollte festgestellt werden, dass der Abtastabschnitt das abgelegene Ende des Roboters 30 sein kann.
-
Außerdem wird das Ende des Werkzeugs des Roboters 30 (Abtastabschnitt) mit einer vorgegebenen Position des einen Objekts O in Kontakt gebracht (Schritt S1-11) und wird die Position des Endes des Werkzeugs an diesem Punkt (der Satz von Positionskoordinaten Q1 in dem Roboterkoordinatensystem 201) in der Speichereinheit 43 der Robotersteuerung 40 gespeichert (Schritt S1-12). Die vorstehend genannten vorgegebenen Positionen sind vorzugsweise Positionen, welche den Positionen entsprechen, welche von dem Sensorsystem 20 erfasst worden sind.
-
Anschließend wird eine Umwandlungsmatrix zum Bestimmen einer Position (Xa, Ya), welche in dem Roboterkoordinatensystem 201 dargestellt ist, der Position eines durch das Sensorsystem 20 erfassten beliebigen geeigneten Punktes Pa erstellt (Schritt S1-13).
-
Die Umwandlungsmatrix wird durch die Robotersteuerung 40 auf der Grundlage des Kalibrierprogramms 43d und zum Beispiel gemäß dem folgenden Verfahren erstellt.
-
Zuerst wird ein Einheitsvektor auf der Grundlage der Beziehung zwischen den Positionen der Punkte P0 und P1 erstellt, welche durch das Sensorsystem 20 erfasst worden sind, d. h. der Satz von Positionskoordinaten, welcher den Punkt P0 beschreibt, welcher in dem Sensorkoordinatensystem 202 erfasst worden ist, und der Satz von Positionskoordinaten, welcher den Punkt P1 beschreibt, welcher in dem Sensorkoordinatensystem 202 erfasst worden ist, und wird ein Sensor-X-Y-Koordinatensystem, welches diesem Einheitsvektor entspricht, festgelegt. Das Sensor-X-Y-Koordinatensystem ist zum Beispiel in einer Ebene ausgelegt, welche parallel zu der X-Achse und der Y-Achse des Sensorkoordinatensystems 202 liegt.
-
Als ein Beispiel werden auf der Grundlage der Beziehung zwischen dem Satz von Positionskoordinaten, welcher den Punkt P0 beschreibt, welcher in dem Sensorkoordinatensystem 202 erfasst worden ist, und dem Satz von Positionskoordinaten, welcher den Punkt P1 beschreibt, welcher in dem Sensorkoordinatensystem 202 erfasst worden ist, der Einheitsvektor der X-Achse und der Einheitsvektor der Y-Achse erstellt, wobei der Punkt P0 als Ursprung verwendet wird, und wird das Sensor-X-Y-Koordinatensystem, welches den Einheitsvektoren entspricht, definiert. Ein bestimmter geeigneter Punkt Pa des Sensorsystems 20 wird in die Koordinaten in dem vorstehend beschriebenen Sensor-X-Y-Koordinatensystem umgewandelt.
-
Außerdem wird ein Roboter-X-Y-Koordinatensystem, welches dem Sensor-X-Y-Koordinatensystem entspricht, in dem Roboterkoordinatensystem 201 auf der Grundlage der Beziehung zwischen dem Satz von Positionskoordinaten des Punktes Q0 in dem Roboterkoordinatensystem 201 und dem Satz von Positionskoordinaten des Punktes Q1 festgelegt und wird der Satz von Positionskoordinaten des in dem Roboterkoordinatensystem 201 dargestellten Punktes Qa derart ermittelt, dass er dem Punkt Pa entspricht. Der Satz der Positionskoordinaten des Punktes Qa berücksichtigt den Maßstab „s“ (mm/Pixel), welcher sich aus der Lagebeziehung zwischen den Punkten P0 und P1 und der Lagebeziehung zwischen den Punkten Q0 und Q1 ableitet. Das Roboter-X-Y-Koordinatensystem ist zum Beispiel in einer Ebene festgelegt, welche parallel zu der X-Achse und der Y-Achse des Roboterkoordinatensystems 201 liegt. Die Definition der Zuordnung wird hier durch zusätzliche Verwendung des durch die Messeinheit 10a gemessenen Bewegungsbetrags durchgeführt.
-
Das Roboter-X-Y-Koordinatensystem, welches dem vorstehend beschriebenen Sensor-X-Y-Koordinatensystem entspricht, wird zum Beispiel mit dem als Ursprung verwendeten Punkt Q0 auf der Grundlage der Beziehung zwischen dem Satz von Positionskoordinaten des Punktes Q0 und dem Satz von Positionskoordinaten des Punktes Q1 in dem Roboterkoordinatensystem 201 definiert. Durch Zusammensetzen des Roboter-X-Y-Koordinatensystems mit dem in dem vorstehend beschriebenen Sensor-X-Y-Koordinatensystem dargestellten Punkt Pa wird es ermöglicht, eine Koordinatenposition (Xa, Ya) in dem Roboter-X-Y-Koordinatensystem des Punktes Pa zu ermitteln. Der Maßstab „s“ pro Pixel leitet sich aus der Lagebeziehung zwischen den Punkten P0 und P1 und der Lagebeziehung zwischen den Punkten Q0 und Q1 ab. Außerdem wird der durch die Messeinheit 10a gemessene Bewegungsbetrag verwendet.
-
Anschließend kann die Umwandlungsmatrix zum Umwandeln des Satzes von Positionskoordinaten des in dem Sensorkoordinatensystem 202 dargestellten Punktes Pa in den Satz von Positionskoordinaten des in dem Roboterkoordinatensystem 201 dargestellten Punktes Qa unter Verwendung der Zuordnungsbeziehung zwischen dem Satz von Positionskoordinaten des Punktes Pa und dem Satz von Positionskoordinaten des Punktes QA, welche ermittelt worden ist, ermittelt werden.
-
Es sollte festgestellt werden, dass es auch möglich ist, die Umwandlungsmatrix analytisch durch Tuschieren dreier Punkte unter Verwendung des folgenden Ausdrucks (
1) ohne Verwendung des vorstehend beschriebenen Schemas zu ermitteln, d. h. das Schema der Reduzierung der Abtastpunkte auf zwei unter Verwendung der Beziehung in Hinblick auf die Anordnung der Objekte
O und Einschränkungen auf die Bewegungsrichtung. Außerdem wird es ferner ermöglicht, die Umwandlungsmatrix durch Schemata, wie beispielsweise ein Verfahren der kleinsten Quadrate, numerisch zu bestimmen, indem drei oder mehr Punkte abgetastet werden.
{Mathematischer Ausdruck 1}
-
Es ist festzustellen, dass H ein mathematischer Ausdruck für die Drehbewegung und T ein mathematischer Ausdruck für translatorische Bewegung ist.
-
(Kalibrierbeispiel 2)
-
Die Kalibrierung wird nunmehr mit Bezug auf ein Flussdiagramm von 5 beschrieben. Zuerst werden in der gleichen Weise wie im Kalibrierbeispiel 1 zwei Objekte O in einem Erfassungsbereich AR1 auf der Transfereinrichtung 10, welche gestoppt ist, platziert (Schritt S2 -1).
-
Anschließend schaut die Bedienperson auf das durch den Sensor 21 gewonnene Bild oder dessen Daten, welche in der Anzeigeeinheit des Sensorsystems 20 oder beliebigen anderen Anzeigeeinrichtungen verarbeitet worden sind, und entscheidet über die erste und zweite Position in dem Sensor-X-Y-Koordinatensystem 202, mit welcher das Werkzeug des Roboters 30 in Kontakt gebracht werden soll (Schritt S2-2), und dadurch werden die Sätze von Positionskoordinaten des ersten Punktes P0 und des zweiten Punktes P1 unter Verwendung des Sensorsystems 20 erlangt. In einem Fall zum Beispiel, bei dem die Position eines Mauszeigers, welcher auf der Anzeigeeinrichtung des Sensorsystems 20 erscheint, auf der gleichen Anzeigeeinrichtung angezeigt wird, werden die Sätze von Positionskoordinaten der Punkte P0 und P1 gewonnen, indem der Mauszeiger zu den Punkte P0 und P1 bewegt wird. Es ist bevorzugt so, dass der erste Punkt P0 und der zweite Punkt P1 einer Höhe der durch den Roboter 30 vorgenommenen Aufgabe entspricht.
-
Anschließend gibt die Bedienperson die Positionskoordinaten des ersten Punktes P0 und des zweiten Punktes P1 in die Robotersteuerung 40 unter Verwendung der Eingabeeinheit 45 ein (Schritt S2-3). Es sollte festgestellt werden, dass in Schritt S2-3 der Satz von Positionskoordinaten des ersten Punktes P0 und der Satz von Positionskoordinaten des zweiten Punktes P1 , über welche in Schritt S2-2 entschieden worden ist, von dem Sensorsystem 20 an die Robotersteuerung 40 übertragen werden können.
-
Anschließend werden die Schritte S2-4 bis S2-9, welche die gleichen oder ähnlich wie die Schritte S1-8 bis S1-13 von Kalibrierbeispiel 1 sind, durchgeführt und wird die Umwandlungsmatrix zum Ermitteln der in dem Roboterkoordinatensystem 201 dargestellten Position (Xa, Ya) der Position eines durch das Sensorsystem 20 erfassten beliebigen geeigneten Punktes Pa erstellt.
-
Wenn die Umwandlungsmatrix, welche erstellt worden ist, verwendet wird, können die Positionskoordinaten, welche durch das Sensorsystem 20 erfasst worden sind, in die Positionskoordinaten in dem Roboterkoordinatensystem umgewandelt werden. Mit anderen Worten ist die Kalibrierung, um die Zuordnung zwischen dem Sensorkoordinatensystem 202 und dem Roboterkoordinatensystem 201 zu definieren, abgeschlossen.
-
Es sollte festgestellt werden, dass die vorstehend beschriebene Umwandlungsmatrix darauf abgestimmt ist, um die Koordinatenumwandlung durchzuführen, welche als ein Beispiel eine Drehung um die senkrecht zur X-Achse und Y-Achse stehende Z-Achse umfasst. Außerdem führt die Umwandlungsmatrix dieser Ausführungsform keine Koordinatenumwandlung durch, welche eine Drehung um die X-Achse oder die Y-Achse umfasst. Daraus ergibt sich, dass es ermöglicht wird, die Kalibrierung in Hinblick auf mehrere Objekte O, deren Positionen sich in der Z-Achsenrichtung nicht wesentlich voneinander unterscheiden, ohne weiteres und zuverlässig durchzuführen.
-
Nachdem die Kalibrierung ausgeführt worden ist, wie es vorstehend beschrieben wurde, steuert die Robotersteuerung 40 den Roboter 30 und das Werkzeug T, um eine vorgegebene Aufgabe an jedem Objekt O unter Verwendung von mindestens den durch das Sensorsystem 20 gewonnenen Positionsdaten jedes Objekts O und der durch die Messeinheit 10a gewonnenen Bewegungsbeträge der durch die Transfereinrichtung 10 bewegten Objekte O.
-
Da bei dieser Ausführungsform die Robotersteuerung 40 die Position des an dem distalen Ende des Roboters 30 vorgesehenen Abtastabschnitts erkennt, werden die Positionen der Objekte O in dem Roboterkoordinatensystem 201 gewonnen, indem der Abtastabschnitt mit den Objekten O in Kontakt gebracht wird. Außerdem kann die Umwandlungsmatrix zum Ausführen der Koordinatenumwandlung in der Ebene, welche die X-Achse und Y-Achse enthält, auf der Grundlage der Sätze von Positionskoordinaten der durch das Sensorsystem 20 erfassten oder gewonnenen Objekte O und der durch den Kontakt mit dem Abtastabschnitt gewonnenen Sätze von Positionskoordinaten der Objekte O in der X-Achsenrichtung und der Y-Achsenrichtung in dem Roboterkoordinatensystem 201 erstellt werden. Da die Umwandlungsmatrix ohne Verwendung aufwändiger Verfahren erstellt werden kann, wird es auf diese Weise ermöglicht, ohne weiteres und zuverlässig eine Kalibrierung zwischen dem Sensorsystem 20 und dem Roboter 30 durchzuführen, welche von einem Hersteller einer Prüfeinrichtung, einem Hersteller eines hoch präzisen Messinstruments oder einem beliebigen anderen passenden Unternehmen hergestellt werden.
-
Bei dieser Ausführungsform führt die Umwandlungsmatrix außerdem eine Koordinatenumwandlung aus, welche eine Drehung um die senkrecht zur X-Achse und Y-Achse stehende Z-Achse umfasst.
-
Insbesondere führt die Umwandlungsmatrix die Koordinatenumwandlung aus, welche Drehung um die Z-Achse umfasst, und führt keine Koordinatenumwandlung aus, welche eine Drehung um die X-Achse und die Y-Achse umfasst. In diesem Fall wird es ermöglicht, Kalibrierung ohne weiteres und zuverlässig durchzuführen, um an den mehreren Objekten O, deren Positionen sich in der Z-Achsenrichtung nicht wesentlich voneinander unterscheiden, durch den Roboter 30 eine Aufgabe durchzuführen.
-
Außerdem wird bei dieser Ausführungsform die Umwandlungsmatrix unter Verwendung der Sätze von Positionskoordinaten mehrerer Objekte O erstellt, welche durch das Sensorsystem 20 erfasst oder gewonnen wurden; der Sätze von Positionskoordinaten, welche gewonnen wurden, indem der Abtastabschnitt mit den mehreren Objekten O in Kontakt gebracht wird, welche durch die Transfereinrichtung 10 bewegt worden sind, nachdem die Sätze von Positionskoordinaten durch das Sensorsystem 20 gewonnen worden sind; und des durch die Messeinheit 10a gemessenen Bewegungsbetrags.
-
Der Erfassungsbereich des Sensorsystems 20, welches von einem Hersteller einer Prüfeinrichtung, einem Hersteller eines hoch präzisen Messinstruments oder einem beliebigen anderen geeigneten Unternehmen hergestellt wird, ist in vielen Fällen von dem Arbeitsbereich des Roboters 30 verschieden. Gemäß diesem Aspekt ist es selbst in einem Fall, bei dem der Erfassungsbereich und der Arbeitsbereich voneinander verschieden sind, möglich, die Umwandlungsmatrix zu erstellen, welche die Positionskoordinaten, welche durch das Sensorsystem 20 erfasst worden sind, in die Positionskoordinaten in dem Roboterkoordinatensystem 201 unter Verwendung des durch die Messeinheit 10a gemessenen Bewegungsbetrags umwandelt.
-
Außerdem werden bei dieser Ausführungsform zwei Objekte O bei der Kalibrierung verwendet.
-
Dieses Robotersystem ist imstande, praktisch eine genaue Kalibrierung auszuführen, um Aufgaben an den mehreren Objekten O, deren Positionen sich in der Z-Achsenrichtung nicht wesentlich voneinander unterscheiden, durch den Roboter 30 durchzuführen, auch wenn zwei Objekte O bearbeitet werden sollen. Da zwei Objekte bei der Kalibrierung verwendet werden, kann die benötigte Zeit, um die Kalibrierung auszuführen, verkürzt werden. Dies ermöglicht es, die Kalibrierung gemäß den Arten, Größen usw. der Objekte O, an welchen der Roboter 30 die Aufgaben durchführt, entsprechend auszuführen, wenn die Arten, Größen usw. häufig wechseln.
-
Es sollte festgestellt werden, dass bei dem Robotersystem dieser Ausführungsform die Robotersteuerung 40 auf der Grundlage von Eingaben in die Eingabeeinheit 45 erkennen kann, ob das Sensor-X-Y-Koordinatensystem 202 des Sensorsystems 20 ein rechtshändiges Koordinatensystem oder ein linkshändiges Koordinatensystem ist.
-
Gemäß dieser Konfiguration kann die Robotersteuerung 40 ohne weiteres und zuverlässig auf die Positionserfassung des Sensorsystems 20 angepasst werden, unabhängig davon, ob das Sensorsystem 20 das rechtshändige Koordinatensystem oder das linkshändige Koordinatensystem einsetzt.
-
Außerdem ist es gemäß dieser Ausführungsform bevorzugt so, dass die Größenschwankung in der Z-Achsenrichtung der mehreren Objekte O klein ist. Dieses Robotersystem ist dazu eingerichtet, um die Umwandlungsmatrix zum Ausführen der Koordinatenumwandlung in der Ebene, welche die X-Achse und die Y-Achse umfasst, zu erstellen und, in einem Fall, bei dem die Größenschwankung der mehreren Objekte O in der Z-Achsenrichtung in Bezug zueinander gering sind, kann die Robotersteuerung 40 zuverlässiger auf die Positionserfassung des Sensorsystems 20 angepasst werden.
-
Es sollte festgestellt werden, dass es bei den Ausführungsformen auch möglich ist, als das Bewegungsmittel, welches das Objekt O bewegt, anstelle der Transfereinrichtung 10 einen Roboter, welcher das Objekt O bewegt, einen sich bewegenden Rollwagen, welcher das darauf angeordnete Objekt O infolge der Bewegung desselben sich bewegenden Rollwagens bewegt, oder beliebige andere passende Einheiten zu verwenden. Falls ein Roboter verwendet wird, wird anstelle des gemessenen Wertes der Messeinheit 10a ein erfasster Wert, welcher durch die Betriebsposition-Erfassungseinrichtung jedes Servomotors des Roboters erfasst wird, als der Messwert des Bewegungsbetrags des Objekts O verwendet. In einem Fall, bei dem ein sich bewegender Rollwagen verwendet wird, wird anstelle der Messeinheit 10a ein erfasster Wert eines Impulsgebers eines Motors, welcher einen Bestückungsrollwagen antreibt, als der Messwert des Bewegungsbetrags des Objekts O verwendet.
-
Außerdem können anstelle der Messeinheit 10a ein an der Transfereinrichtung 10 vorgesehenes Kennzeichen, der Bewegungsbetrag des Objekts O oder dergleichen durch einen Sensor, wie beispielsweise eine zweidimensionale Kamera, erfasst werden. In diesem Fall fungiert der Sensor, wie beispielsweise eine zweidimensionale Kamera, als Messeinheit.
-
Außerdem kann bei der vorstehend beschriebenen Ausführungsform der Sensor 21 durch den Roboter 30 oder einen anderen Roboter getragen werden. Auch in diesem Fall kann die Umwandlungsmatrix durch das gleiche Verfahren wie jenes, welches vorangehend beschrieben wurde, erstellt werden. Es sollte festgestellt werden, dass auch in diesem Fall die optische Achse des Sensors 21 vorzugsweise parallel zur Z-Achse verläuft. Die Position des Sensors 21 kann auf der Grundlage von Betriebsinformation des Roboters 30 oder des anderen Roboters ermittelt werden.
-
Ein Robotersystem gemäß einer zweiten Ausführungsform wird nunmehr nachstehend mit Bezug auf die Zeichnungen beschrieben.
-
Die zweite Ausführungsform stellt ein weiteres Kalibrierbeispiel zur Verwendung der Ergebnisse des Sensorsystems 20 bei der Steuerung des in der ersten Ausführungsform erläuterten Roboters 30 dar, deren anderen Merkmale die gleichen wie jene der ersten Ausführungsform sind. Auch bei der zweiten Ausführungsform werden die Transfereinrichtung (Bewegungsmittel) 10, das Sensorsystem 20, der Roboter 30 und die Robotersteuerung 40 verwendet, welche die gleichen wie jene der ersten Ausführungsform sind. Die gleichen Merkmale wie jene der ersten Ausführungsform sind mit den gleichen Bezugszeichen versehen, wobei deren Erläuterungen entfallen.
-
Bei der zweiten Ausführungsform wird, wie es zum Beispiel in 6 dargestellt ist, ein Werkstück W auf der Transfereinrichtung 10 platziert, und es werden die Profile, Durchgangslöcher, Kennzeichen usw., welche an einem Ende und dem anderen Ende in Y-Achsenrichtung des Werkstücks W vorgesehen sind, als die Objekte O erfasst. Die Verarbeitungseinheit 22 oder die Ermittlungseinheit 23 der Sensorsteuerung 24 erfasst zumindest die Positionen der Objekte O. Es sollte festgestellt werden, dass die Verarbeitungseinheit 22 oder die Ermittlungseinheit 23 die Positionen und Ausrichtungen der Objekte O erfassen können.
-
Bei der zweiten Ausführungsform wird eine Kalibrierung zur Verwendung der Ergebnisse des Sensorsystems 20 bei der Steuerung des Roboters 30 gemäß dem folgenden Verfahren ausgeführt. Gegenstände, welche nicht ausdrücklich erläutert werden, sind in der gleichen Weise wie bei der ersten Ausführungsform zu behandeln, und modifizierte Beispiele werden ähnlich wie bei der ersten Ausführungsform ebenfalls übernommen.
-
(Kalibrierbeispiel 1)
-
Die Kalibrierung wird nunmehr mit Bezug auf ein Flussdiagramm von 7 und 8 beschrieben. Zuerst werden zwei Objekte O, welche in der Y-Achsenrichtung voneinander entfernt sind, in einem Erfassungsbereich AR1 auf der Transfereinrichtung 10, welche gestoppt ist, angeordnet (Schritt S3-1). Es ist auch möglich, das in 10 gezeigte Werkstück W zu verwenden. In diesem Fall befinden sich die beiden in der X-Achsenrichtung miteinander ausgerichteten Objekte O an einem Ende in der Y-Achsenrichtung und sollten eines von ihnen und ein an dem anderen Ende in der Y-Achsenrichtung angeordnetes Objekt O in dem Erfassungsbereich AR1 angeordnet sein.
-
Anschließend wird eines der beiden in der Y-Achsenrichtung voneinander entfernten Objekte O in einem Zustand platziert, in welchem seine Position durch das Sensorsystem 20 nicht erfasst wird (Schritt S3-2), wird ein Befehl zur Anweisung zur Erfassung der Position des Objekts O von der Robotersteuerung 40 an das Sensorsystem 20 in diesem Zustand übertragen (Schritt S3-3) und empfängt die Robotersteuerung 40 das Erfassungsergebnis Po der ersten Position von dem Sensorsystem 20 (Schritt S3-4).
-
Anschließend wird das andere Objekt O in einem Zustand platziert, in welchem seine Position durch das Sensorsystem 20 nicht erfasst wird (Schritt S3-5), wird ein Befehl zur Anweisung zur Erfassung der Position des Objekts O von der Robotersteuerung 40 an das Sensorsystem 20 in diesem Zustand übertragen (Schritt S3-6) und empfängt die Robotersteuerung 40 das Erfassungsergebnis P1 der zweiten Position von dem Sensorsystem 20 (Schritt S3-7).
-
Anschließend werden die Objekte O durch die Transfereinrichtung 10 innerhalb des Erfassungsbereiches AR1 bewegt (Schritt S3-8). In diesem Zustand wird zum Beispiel ein Objekt O in einem Zustand platziert, in dem seine Position durch das Sensorsystem 20 nicht erfasst wird (Schritt S3-9), wird ein Befehl zur Anweisung zur Erfassung der Position des Objekts O von der Robotersteuerung 40 an das Sensorsystem 20 in diesem Zustand übertragen (Schritt S3-10) und empfängt die Robotersteuerung 40 das Erfassungsergebnis P2 der dritten Position von dem Sensorsystem 20 (Schritt S3-11).
-
Anschließend werden die Objekte O durch die Transfereinrichtung 10 bewegt, bis sie sich innerhalb des Arbeitsbereiches AR2 befinden, und die Transfereinrichtung 10 wird gestoppt (Schritt S3-12). Zusätzlich wird das Ende (Abtastabschnitt) des an den Roboter 30 angebrachten Werkzeugs mit einer vorgegebenen Stelle des anderen Objekts O in Kontakt gebracht (Schritt S3-13) und wird die Position des Endes des Werkzeugs an diesem Punkt (die Positionskoordinaten Q0 in dem Roboterkoordinatensystem 201) in der Speichereinheit 43 der Robotersteuerung 40 gespeichert (Schritt S3-14).
-
Außerdem wird das Ende des Werkzeugs des Roboters 30 (Abtastabschnitt) mit einer vorgegebenen Stelle des einen Objekts O in Kontakt gebracht (Schritt S3-15) und wird die Position des Endes des Werkzeugs an diesem Punkt (die Positionskoordinaten Q1 in dem Roboterkoordinatensystem 201) in der Speichereinheit 43 der Robotersteuerung 40 gespeichert (Schritt S3-16).
-
Anschließend wird eine Umwandlungsmatrix zum Ermitteln einer in dem Roboterkoordinatensystem 201 dargestellten Position (Xa, Ya) der Position eines durch das Sensorsystem 20 erfassten beliebigen geeigneten Punktes Pa erstellt (Schritt S3-17). An diesem Punkt werden auch die Sätze von Positionskoordinaten der Punkte P0 und P1 in die Sätze von Positionskoordinaten der Punkte Q0 , Q1 in dem Roboterkoordinatensystem 201 umgewandelt.
-
Außerdem berechnet die Robotersteuerung
40 die Positionskoordinaten
Q2 des Erfassungsergebnisses
P2 in dem Roboterkoordinatensystem
201 unter Verwendung der Umwandlungsmatrix und ermittelt, ob die Differenz zwischen den Positionen der Punkte
Q0 und
Q2 in der X-Achsenrichtung, welche die Transferrichtung des Roboterkoordinatensystems
201 ist, in einen vorgegebenen Referenzbereich fällt oder nicht (Schritt
S3-18). Es wird zum Beispiel ermittelt, ob ein Ermittlungskoeffizient
A des folgenden Ausdrucks (
2) in den Referenzbereich fällt oder nicht:
{Mathematischer Ausdruck 2}
-
Es ist festzustellen, dass X0 die Position des Punktes Q0 in der X-Achsenrichtung ist und X2 die Position des Punktes Q2 in der X-Achsenrichtung ist. Der Referenzbereich ist zum Beispiel ein Bereich, welcher 0 überschreitet. Der Referenzbereich kann entsprechend spezifiziert werden.
-
Durch Schritt S3-18 kann die Robotersteuerung 40 die Zuordnung zwischen der X-Achsenrichtung des Sensorkoordinatensystems 202 und der X-Achsenrichtung des Roboterkoordinatensystems 201 definieren. Mit anderen Worten wird es der Robotersteuerung 40 ermöglicht, ohne Eingabe durch eine Bedienperson oder dergleichen zu ermitteln, ob das Koordinatensystem ein linkshändiges Koordinatensystem oder ein rechtshändiges Koordinatensystem ist.
-
Es sollte festgestellt werden, dass in Schritt S3-8 bis S3-11 die Robotersteuerung 40 das Erfassungsergebnis P2 der Position des anderen in 10 dargestellten Objekts O von dem Sensorsystem 20 empfangen kann, ohne das Objekt O durch die Transfereinrichtung 10 zu bewegen. Im Fall von 10 unterscheidet sich die Position des anderen Objekts O von der ersten Position in der X-Achsenrichtung, welche die Transferrichtung der Transfereinrichtung 10 ist.
-
(Kalibrierbeispiel 2)
-
Die Kalibrierung wird nunmehr mit Bezug auf ein Flussdiagramm von 9 beschrieben. Zuerst werden in der gleichen Weise wie im Kalibrierbeispiel 1 zwei Objekte O in dem Erfassungsbereich AR1 auf der Transfereinrichtung 10, welche gestoppt ist, platziert (Schritt S4-1).
-
Anschließend schaut die Bedienperson auf das durch den Sensor 21 gewonnene Bild oder dessen Daten, welche in der Anzeigeeinheit des Sensorsystems 20 oder beliebiger anderer Anzeigeeinrichtung oder dergleichen verarbeitet worden sind, und entscheidet über die Positionen in dem Sensorkoordinatensystem 202 des ersten Objekts O, des zweiten Objekts O und des dritten Objekts O an dem Werkstück W, mit welchen das Werkzeug des Roboters 30 in Kontakt gebracht werden soll (Schritt S4-2), und erlangt die Sätze von Positionskoordinaten des ersten Punktes P0 , des zweiten Punktes P1 und des dritten Punktes P2 unter Verwendung des Sensorsystems 20. Der Punkt P2 unterscheidet sich in seiner Position von dem Punkt P0 in der Transferrichtung der Transfereinrichtung 10. Es sollte festgestellt werden, dass der Satz von Positionskoordinaten des dritten Punktes P2 erlangt werden kann, nachdem die Objekte O durch die Transfereinrichtung 10 bewegt worden sind.
-
Anschließend werden die Schritte S4-4 bis S4-9, welche die gleichen oder ähnlich wie die Schritte S3-12 bis S3-17 von Kalibrierbeispiel 1 sind, durchgeführt und es wird die Umwandlungsmatrix zum Ermitteln der in dem Roboterkoordinatensystem 201 dargestellten Position (Xa, Ya) der Position eines durch das Sensorsystem 20 erfassten bestimmten geeigneten Punktes Pa erstellt.
-
Außerdem wird in der gleichen Weise wie Schritt S3-18 von Kalibrierbeispiel 1 der Satz von Positionskoordinaten Q2 des Erfassungsergebnisses P2 des dritten Objektes O in dem Roboterkoordinatensystem 201 berechnet und es wird ermittelt, ob die Differenz zwischen den Positionen der Punkte Q0 und Q2 in der X-Achsenrichtung, welche die Transferrichtung des Roboterkoordinatensystems 201 ist, in einen vorgegebenen Referenzbereich fällt oder nicht (Schritt S4-10).
-
Bei der zweiten Ausführungsform, falls zum Beispiel eine Zuordnung zwischen der X-Achsenrichtung des Sensorkoordinatensystems 202 und der Transferrichtung der Transfereinrichtung 10 definiert wird, wird dann die Differenz als ein positiver Wert gegeben, welcher einem Wert entspricht, der durch Subtraktion des X-Wertes der Positionskoordinaten des Punktes Q0 von dem X-Wert der Positionskoordinaten des Punktes Q2 (die Positionskoordinaten, welche dem zweiten Satz von Positionskoordinaten entsprechen) gewonnen wird. Demzufolge wird die Tatsache, dass die X-Achsenrichtung des Sensorkoordinatensystems 202 mit der X-Achsenrichtung des Roboterkoordinatensystems 201 übereinstimmt, durch die Robotersteuerung 40 auf der Grundlage der Differenz zwischen den Positionen von Q0 und Q2 erkannt.
-
Es sollte festgestellt werden, dass die Transferrichtung der Transfereinrichtung 10 bei dieser Ausführungsform der X-Achsenrichtung des Roboterkoordinatensystems 201 und der X-Achsenrichtung des Sensorkoordinatensystems 202 entspricht. Falls die Transferrichtung der X-Achsenrichtung des Roboterkoordinatensystems 201 und der X-Achsenrichtung des Sensorkoordinatensystems 202 entspricht, kann dann indessen in einigen Fällen in Abhängigkeit von den Einrichtungskonfigurationen die Transferrichtung der Y-Achsenrichtung des Roboterkoordinatensystems 201 und der Y-Achsenrichtung des Sensorkoordinatensystems 202 entsprechen.
-
Bei der zweiten Ausführungsform ist die Richtung, in welcher die Transfereinrichtung 10 die Objekte O bewegt, die X-Achsenrichtung des Roboterkoordinatensystems 201. Wenn diese Konfiguration verwendet wird, kann ein zweiter Satz von Positionskoordinaten, welcher sich lediglich durch die Position in der Transferrichtung unterscheidet, ohne weiteres und zuverlässig durch Bewegen des Objekts O durch die Transfereinrichtung 10 gewonnen werden.
-
Die folgenden Aspekte der Erfindung werden aus den vorstehenden Ausführungsformen abgeleitet.
-
Das Robotersystem des ersten Aspekts umfasst ein Sensorsystem; einen Roboter; und eine Robotersteuerung, welche dazu eingerichtet ist, den Roboter zu steuern, wobei die Robotersteuerung ein Roboterkoordinatensystem erkennt, welches ein Koordinatensystem des Roboters ist, jedoch ein Koordinatensystem des Sensorsystems nicht erkennt; und die Robotersteuerung Matrixerstellungsverarbeitung ausführt, um eine Umwandlungsmatrix zu erstellen, welche Koordinatenumwandlung in einer eine X-Achse und Y-Achse umfassenden Ebene auf Sätze von durch das Sensorsystem gewonnenen Positionskoordinaten auf der Grundlage von Sätzen von Positionskoordinaten einer Mehrzahl von durch das Sensorsystem gewonnenen Objekten oder Punkten und Sätzen von Positionskoordinaten in einer X-Achsenrichtung und einer Y-Achsenrichtung in dem Roboterkoordinatensystem ausführt, welches dem Roboterkoordinatensystem der Mehrzahl von Objekten oder Punkten entspricht.
-
Gemäß diesem Aspekt kann die Umwandlungsmatrix, welche die Koordinatenumwandlung in einer Ebene ausführt, welche eine X-Achse und Y-Achse umfasst, auf der Grundlage der Sätze von Positionskoordinaten der Objekte, welche durch das Sensorsystem erfasst worden sind, und der Sätze von Positionskoordinaten der Objekte in der X-Achsenrichtung und der Y-Achsenrichtung in dem Roboterkoordinatensystem erstellt werden. Da die Umwandlungsmatrix ohne Einbeziehung aufwändiger Verfahren erstellt werden kann, wird es auf diese Weise ermöglicht, ohne weiteres und zuverlässig die Kalibrierung zwischen dem Roboter und dem Sensorsystem durchzuführen, welches von einem Hersteller einer Prüfeinrichtung, einem Hersteller eines hoch präzisen Messinstruments oder einem beliebigen anderen passenden Unternehmen hergestellt wird.
-
Gemäß dem vorstehend beschriebenen Aspekt erstellt vorzugsweise die Robotersteuerung die Umwandlungsmatrix auf der Grundlage der Sätze von Positionskoordinaten der Mehrzahl von Objekten oder Punkten und Sätzen der Positionskoordinaten in dem Roboterkoordinatensystem der Mehrzahl von Objekten oder Punkten, welche gewonnen werden, indem ein an einem distalen Ende des Roboters vorgesehener Abtastabschnitt mit Positionen in Kontakt gebracht wird, welche der Mehrzahl von Objekten oder Punkten entspricht.
-
Gemäß diesem Aspekt können, da die Robotersteuerung die Position des an dem distalen Ende des Roboters vorgesehenen Abtastabschnitts erkennt, die Positionen der Objekte in dem Roboterkoordinatensystem gewonnen werden, indem der Abtastabschnitt mit der Mehrzahl von Objekten in Kontakt gebracht wird. Aufgrund dessen kann die Umwandlungsmatrix ohne Einbeziehung von ausgereiften Verfahren oder Aufgaben erstellt werden.
-
Gemäß dem vorstehend beschriebenen Aspekt erstellt vorzugsweise die Robotersteuerung die Umwandlungsmatrix auf der Grundlage der Sätze von Positionskoordinaten der Mehrzahl von Objekten oder Punkten und den Sätzen von Positionskoordinaten in dem Roboterkoordinatensystem der Mehrzahl von Objekten oder Punkten, welche auf der Grundlage von Erfassungsdaten eines Sensors gewonnen werden, wobei eine Zuordnung von Koordinatensystemen in Bezug auf den Roboter definiert wird.
-
Gemäß diesem Aspekt können die Sätze von Positionskoordinaten der Mehrzahl von Objekten oder Punkten in dem Roboterkoordinatensystem ohne viel Zeit und Mühe auf der Grundlage der Erfassungsdaten des Sensors gewonnen werden, wobei die Zuordnung zwischen den Koordinatensystemen definiert wird. Aufgrund dessen kann die Umwandlungsmatrix ohne Einbeziehung von ausgereiften Verfahren oder Aufgaben erstellt werden.
-
Gemäß dem vorstehend beschriebenen Aspekt führt vorzugsweise die Umwandlungsmatrix eine Koordinatenumwandlung aus, welche eine Drehung um eine senkrecht zu der X-Achse und der Y-Achse stehende Z-Achse umfasst.
-
Als ein Beispiel wird es in einem Fall, bei dem die Umwandlungsmatrix die Koordinatenumwandlung ausführt, welche eine Drehung um die Z-Achse umfasst, und die Koordinatenumwandlung ausführt, welche keine Drehung um die X-Achse und die Y-Achse umfasst, ermöglicht, eine Kalibrierung ohne weiteres und zuverlässig auszuführen, um Aufgaben durch den Roboter an mehreren Objekten, deren Positionen sich in der Z-Richtung nicht wesentlich voneinander unterscheiden, auszuführen.
-
Das vorstehend beschriebene Robotersystem umfasst vorzugsweise ein Bewegungsmittel, welches dazu eingerichtet ist, um das Objekt zu bewegen, und eine Messeinheit, welche dazu eingerichtet ist, um einen Bewegungsbetrag des Objekts, welches durch das Bewegungsmittel bewegt wird, zu messen, wobei die Robotersteuerung die Umwandlungsmatrix bei der Matrixerstellungsverarbeitung unter Verwendung der Sätze von Positionskoordinaten der Mehrzahl von durch das Sensorsystem gewonnenen Objekten oder Punkten; der Sätze von Positionskoordinaten, welche gewonnen werden, indem der Abtastabschnitt mit Positionen in Kontakt gebracht wird, welche der Vielzahl von durch das Bewegungsmittel bewegten Objekten oder Punkten entsprechen, nachdem die Sätze von Positionskoordinaten durch das Sensorsystem gewonnen worden sind; und des durch die Messeinheit gemessenen Bewegungsbetrags erstellt.
-
Ein Erfassungsbereich eines von einem Hersteller einer Prüfeinrichtung, einem Hersteller eines hoch präzisen Messinstruments oder einem beliebigen anderen geeigneten Unternehmen hergestellten Sensorsystems unterscheidet sich in vielen Fällen von dem Arbeitsbereich des Roboters. Gemäß diesem Aspekt wird es, selbst wenn der Erfassungsbereich und der Arbeitsbereich voneinander verschieden sind, ermöglicht, eine Umwandlungsmatrix zu erstellen, welche die durch das Sensorsystem erfassten Positionskoordinaten in die Positionskoordinaten in dem Roboterkoordinatensystem unter Verwendung des durch die Messeinheit gemessenen Bewegungsbetrags umwandelt.
-
Gemäß dem vorstehend beschriebenen Aspekt sind vorzugsweise zwei Objekte oder Punkte beteiligt.
-
Das vorstehend beschriebene Robotersystem ist imstande, praktisch eine genaue Kalibrierung auszuführen, um Aufgaben an mehreren Objekten, deren Positionen sich in der Z-Achsenrichtung nicht wesentlich voneinander unterscheiden, durchzuführen, auch wenn zwei Objekte beteiligt sind. Da zwei Objekte bei der Kalibrierung verwendet werden, kann die benötigte Zeit, um die Kalibrierung auszuführen, verkürzt werden. Dies ermöglicht es, die Kalibrierung gemäß den Arten, Größen usw. der Objekte, an welchen der Roboter die Aufgaben durchführt, entsprechend auszuführen, wenn die Arten, Größen usw. häufig wechseln.
-
Gemäß dem vorstehend beschriebenen Aspekt ist vorzugsweise ein Bewegungsmittel, welches dazu eingerichtet ist, um das Objekt zu bewegen, vorgesehen, wobei die Robotersteuerung einen durch das Sensorsystem gewonnenen zweiten Satz von Positionskoordinaten empfängt, wobei der zweite Satz von Positionskoordinaten Positionen identifiziert, welche in einer Bewegungsrichtung des Bewegungsmittels in Bezug auf die durch das Sensorsystem gewonnenen Positionskoordinaten zueinander verschieden sind; Koordinatenumwandlung an mindestens einem der Sätze von Positionskoordinaten und dem zweiten Satz von Positionskoordinaten unter Verwendung der Umwandlungsmatrix durchführt; und Ermittlungsverarbeitung durchführt, um zu ermitteln, ob eine Differenz in der Position in der X-Achsenrichtung zwischen dem Satz von Positionskoordinaten und dem der Koordinatenumwandlung unterzogenen zweiten Satz von Positionskoordinaten gleich oder kleiner als ein Referenzwert ist.
-
Falls zum Beispiel ein Wert, der durch Subtraktion des X-Wertes der Positionskoordinaten von einem der aus einer Vielzahl von Sätzen der Positionskoordinaten ausgewählten Positionskoordinaten, nachdem er der Umwandlung durch die Umwandlungsmatrix unterworfen worden ist, von dem X-Wert der Positionskoordinaten des zweiten Satzes von Positionskoordinaten, nachdem er der Umwandlung durch die Umwandlungsmatrix unterworfen worden ist, zum Beispiel Null als der Referenzwert überschreitet, dann folgt daraus, dass die X-Achsenrichtung des Koordinatensystems des Sensorsystems zum Beispiel mit der X-Achsenrichtung des rechtshändigen Roboterkoordinatensystems übereinstimmt. Falls im Gegensatz dazu die Transferrichtung der Transfereinrichtung 10 (die nach rechts gerichtete Richtung in 6) in dem Koordinatensystem des Sensorsystems eine Richtung von negativer Bewegung in der X-Achsenrichtung ist, dann wird der sich aus der Subtraktion ergebende Wert kleiner als Null sein. Demzufolge wird es ermöglicht, ohne weiteres und zuverlässig die Robotersteuerung an die Positionserfassung des Sensorsystems anzupassen, unabhängig davon, ob das Sensorsystem ein rechtshändiges Koordinatensystem oder ein linkshändiges Koordinatensystem einsetzt.
-
Gemäß dem vorstehend beschriebenen Aspekt ist die X-Achsenrichtung vorzugsweise die Richtung des durch das Bewegungsmittel bewegten Objekts.
-
In diesem Fall wird es ermöglicht, schnell und zuverlässig den zweiten Satz von Positionskoordinaten zu gewinnen, dessen Position sich von den ausgewählten Positionskoordinaten nur in der Bewegungsrichtung durch das Bewegungsmittel unterscheidet, indem das Objekt oder der Punkt durch die Transfereinrichtung bewegt wird und das Objekt oder der Punkt, welcher durch das Sensorsystem bewegt worden ist, erfasst wird.
-
Das vorstehend beschriebene Robotersystem umfasst vorzugsweise eine Eingabeeinheit, durch welche eine Eingabe in die Robotersteuerung gemacht wird, wobei die Robotersteuerung auf der Grundlage der Eingabe an der Eingabeeinheit erkennt, ob das Koordinatensystem des Sensorsystem ein rechtshändiges Koordinatensystem oder ein linkshändiges Koordinatensystem ist.
-
Gemäß dieser Konfiguration wird es ermöglicht, ohne weiteres und zuverlässig die Robotersteuerung an die Positionserfassung des Sensorsystems anzupassen, unabhängig davon, ob das Sensorsystem ein rechtshändiges Koordinatensystem oder ein linkshändiges Koordinatensystem einsetzt.
-
Das vorstehend beschriebene Robotersystem umfasst vorzugsweise ein Bewegungsmittel, welches dazu eingerichtet ist, um das Objekt zu bewegen, wobei der Roboter dazu eingerichtet ist, um eine vorgegebene Aufgabe an den Objekten durchzuführen, und die Objekte eine geringe Schwankung bei deren Abmessungen in einer senkrecht zu der X-Achse und der Y-Achse verlaufenden Z-Achsenrichtung aufweisen.
-
Da das vorstehend beschriebene Robotersystem die Umwandlungsmatrix erstellt, welche die Koordinatenumwandlung in einer Ebene ausführt, welche die X-Achse und die Y-Achse umfasst, wird es ermöglicht, zuverlässiger die Robotersteuerung an die Positionserfassung des Sensorsystem anzupassen, falls die Abmessungsschwankungen der mehreren Objekte in der Z-Achsenrichtung gering sind.
-
Ein Koordinatenumwandlungsverfahren des zweiten Aspekts ist ein Koordinatenumwandlungsverfahren zum Umwandeln von durch ein Sensorsystem erfassten Positionskoordinaten in einen Satz von Positionskoordinaten in einem durch eine Robotersteuerung erkannten Roboterkoordinatensystem, wobei das Verfahren umfasst: Erstellen einer Umwandlungsmatrix, zum Ausführen einer Koordinatenumwandlung in einer eine X-Achse und Y-Achse umfassenden Ebene auf durch das Sensorsystem gewonnene Positionskoordinaten auf der Grundlage von Sätzen von Positionskoordinaten einer Mehrzahl von durch das Sensorsystem gewonnenen Objekten oder Punkten und Sätzen von Positionskoordinaten in einer X-Achsenrichtung und einer Y-Achsenrichtung in dem Roboterkoordinatensystem der Mehrzahl von Objekten oder Punkten, welche gewonnen werden, indem ein an einem distalen Ende des durch die Robotersteuerung gesteuerten Roboters vorgesehener Abtastabschnitt mit Positionen in Kontakt gebracht wird, welche den Objekten oder Punkten entsprechen; und Umwandeln der durch das Sensorsystem erfassten Positionskoordinaten unter Verwendung der Umwandlungsmatrix.
-
Es sollte festgestellt werden, dass, während die Positionskoordinaten des Objekts O in dem Roboterkoordinatensystem 201 gewonnen werden, indem in der ersten Ausführungsform und der zweiten Ausführungsform das Ende des Werkzeugs, welches der Abtastabschnitt ist, mit dem Objekt in Kontakt gebracht wird, ein anderes Schema zum Ermitteln der Position des Objekts O in dem Roboterkoordinatensystem 201 verwendet werden kann. Zum Beispiel können Erfassungsdaten, welche die Erfassung der Positionen der Objekte O ermöglichen, durch einen Sensor gewonnen werden, dessen Koordinatensystem ausgeführt ist, um dem Roboterkoordinatensystem 201 zu entsprechen, und können die Sätze von Positionskoordinaten der Objekte O auf der Grundlage der Erfassungsdaten gewonnen werden.
-
Insbesondere ist, wie es in 11 dargestellt ist, ein Sensor 50, welcher eine Kamera ist, zum Beispiel an dem distalen Ende des Arms 30a des Roboters 30 angebracht und erlangt die Robotersteuerung 40 die Sätze von Positionskoordinaten der Objekte O auf der Grundlage der durch den Sensor 50 gewonnenen Bilddaten. Der Sensor 50 ist eine zweidimensionale Kamera, eine dreidimensionale Kamera, ein dreidimensionaler Abstandssensor usw.
-
Der Sensor 50 kann zum Beispiel in Schritten S1-9 und S1-11 Erfassungsdaten gewinnen, welche ein Bild sind, welches das Objekt O umfasst, und die Robotersteuerung 40 kann den Satz von Positionskoordinaten des Objekts O auf der Grundlage der Erfassungsdaten des Sensor 50 ermitteln. In diesem Fall werden in Schritten S1-10 und S1-12 die Sätze von Positionskoordinaten der Objekte O, welche auf der Grundlage der Erfassungsdaten des Sensors 50 gewonnen worden sind, in der Speichereinheit 43 gespeichert. Dies gilt auch für Schritte S2-5 bis S2-8, Schritte S3-13 bis S3-16 und Schritte S4-5 bis S4-8.
-
Es sollte festgestellt werden, dass der Sensor 50 nicht an dem Roboter 30 sondern an einem Rahmen oder dergleichen befestigt sein kann. In diesem Fall werden die gleichen Wirkungen wie jene, welche vorstehend beschrieben worden sind, erzielt werden, falls die Zuordnung zwischen dem Koordinatensystem des Sensors 50 und dem Roboterkoordinatensystem 201 definiert wird.
-
Bezugszeichenliste
-
- 10
- Transfereinrichtung (Bewegungsmittel)
- 10a
- Messeinheit
- 10b
- Motor
- 20
- Sensorsystem
- 21
- Sensor
- 22
- Verarbeitungseinheit
- 23
- Ermittlungseinheit
- 24
- Sensorsteuerung
- 30
- Roboter
- 30a
- Arm
- 31
- Servomotor
- 40
- Robotersteuerung
- 41
- Prozessor
- 42
- Anzeigeeinrichtung
- 43
- Speichereinheit
- 43a
- Systemprogramm
- 43b
- Betriebsprogramm
- 43c
- Folgesteuerprogramm
- 43d
- Kalibrierprogramm
- 44
- Servosteuerung
- 45
- Eingabeeinheit
- 50
- Sensor
- 201
- Roboterkoordinatensystem
- 202
- Sensorkoordinatensystem
- W
- Werkstück
- O
- Objekt