DE69113024T2 - Verfahren zum festlegen eines koordinatensystems für einen roboter. - Google Patents

Verfahren zum festlegen eines koordinatensystems für einen roboter.

Info

Publication number
DE69113024T2
DE69113024T2 DE69113024T DE69113024T DE69113024T2 DE 69113024 T2 DE69113024 T2 DE 69113024T2 DE 69113024 T DE69113024 T DE 69113024T DE 69113024 T DE69113024 T DE 69113024T DE 69113024 T2 DE69113024 T2 DE 69113024T2
Authority
DE
Germany
Prior art keywords
robot
coordinate system
jig
common
robots
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.)
Expired - Fee Related
Application number
DE69113024T
Other languages
English (en)
Other versions
DE69113024D1 (de
Inventor
F Terawaki
Fumikazu Warashina
A Watanabe
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Application granted granted Critical
Publication of DE69113024D1 publication Critical patent/DE69113024D1/de
Publication of DE69113024T2 publication Critical patent/DE69113024T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4086Coordinate conversions; Other special calculations
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39399Convert position of old, teach to new, changed, actual tool by transform matrix

Landscapes

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

Description

  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zum Festlegen eines Roboter-Koordinatensystems, insbesondere auf ein Roboter-Koordinatensystem-Festlegungsverfahren, welches das Festlegen eines gemeinsamen Koordinatensystems, das von einer Vielzahl von Robotern gemeinsam benutzt wird, die ein Robotersystem bilden, und das Festlegen eines gemeinsamen Koordinatensystems in bezug auf einen Roboter, der im Austausch für einen Roboter in dem Robotersystem installiert wurde, erleichtert.
  • Beim systemumfassenden Steuern einer Vielzahl von Robotern, die ein Robotersystem in einer Fertigungsstraße oder dgl. bilden, wird üblicherweise ein Roboter-Steuerprogramm benutzt, das ein von allen Robotern gemeinsam in Anspruch genommenes Koordinatensystem verwendet. Um den Betrieb der einzelnen Roboter zu steuern, werden Koordinaten-Transformationsmatrizen, die das gemeinsame Koordinatensystem auf Koordinatensysteme beziehen, welche einmalig für die betreffenden Roboter festgelegt wurden, benutzt, um Befehle, die mit Bezug auf das gemeinsam Koordinatensystem dargestellt sind, in solche, die mit Bezug auf die Koordinatensysteme, welche sich auf die einzelnen Roboter beziehen, dargestellt sind, zu transformieren. Zu diesem Zweck werden Koordinaten-Transformationsmatrizen, die auf die betreffenden Roboter bezogen sind, vorbestimmt. In anderen Worten ausgedrückt heiß dies, daß das gemeinsam Koordinatensystem in bezug auf jeden der Roboter festgelegt wird.
  • Beim Festlegen eines gemeinsamen Koordinatensystems in bezug auf jeden der Roboter, die derart eingerichtet sind, daß sie einen gemeinsamen Bewegungsbereich benutzen, wird herkömmlicherweise eine Einspannvorrichtung in dem gemeinsamen Bewegungsbereich plaziert, und den einzelnen Robotern wird direkt eine bekannte Position der Einspannvorrichtung bezogen auf das gemeinsame Koordinatensystem eingelernt, so daß jeder Roboter eine Position und die Orientierung derselben in bezug auf das gemeinsam Koordinatensystem erkennen kann, wodurch ein gemeinsames, auf jeden Roboter bezogenes Koordinatensystem festgelegt ist. Demzufolge müssen die Roboter, um das gemeinsame Koordinatensystem mittels dieses Verfahrens festzulegen, derart positioniert sein, daß sie einen gemeinsamen Bewegungsbereich benutzen. Dieses Erfordernis erlegt der Anordnung der Roboter starke Beschränkungen auf und verhindert eine geeignete Konfiguration des Robotersystems.
  • Im Falle von Robotersystemen, die einen Roboter enthalten, der keinen gemeinsamen Bewegungsbereich mit den anderen Robotern benutzt und auf den demzufolge das zuvor angegebene Verfahren nicht angewendet werden kann, da er erforderlich macht, daß in dem gemeinsamen Bewegungsbereich, der von allen betreffenden Robotern benutzt wird, eine Einspannvorrichtung positioniert wird, wird herkömmlicherweise das Festlegen eines gemeinsamen Koordinatensystems in bezug auf die Roboter unter Benutzung einer speziellen Einspannvorrichtung, die von allen Robotern erreichbar ist, ausgeführt. Dieses Verfahren ist indessen dahingehend mit Nachteilen behaftet, daß eine spezielle Einspannvorrichtung präpariert werden muß.
  • Nachdem das gemeinsame Koordinatensystem einmal durch irgendeines der zuvor genannten Verfahren festgelegt ist, muß, wenn ein Roboter nicht mehr richtig arbeitet und dafür ein Austausch-Roboter installiert wird, das gemeinsame Koordinatensystem in bezug auf diesen Austausch-Roboter festgelegt werden, wobei eine normale Elnspannvorrichtung oder eine spezielle Einspannvorrichtung exakt in derselben Position wie die zuvor benutzte plaziert werden muß, um das gemeinsame Koordinatensystem festzulegen. Es ist indessen schwierig die normale oder spezielle Einspannvorrichtung in exakt derselben Position zu plazieren, und daher muß das gemeinsame Koordinatensystem erneut in bezug auf jeden der Roboter festgelegt werden. Dementsprechend kostet die Neueinrichtung des Robotersystems Arbeit und Zeit.
  • Eine erste Aufgabe der vorliegenden Erfindung besteht darin, ein Roboter-Koordinatensystem-Festlegungsverfahren zu schaffen, das ein leichtes Festlegen eines gemeinsamen Koordinatensystems in bezug auf eine Vielzahl von Robotern gestattet, die ein Robotersystem bilden.
  • Eine zweite Aufgabe der vorliegenden Erfindung besteht darin, ein Roboter-Koordinatensystem-Festlegungsverfahren zu schaffen, das ein leichtes Festlegen eines gemeinsamen Koordinatensystems in bezug auf einen Roboter gestattet, der im Austausch für einen Roboter installiert worden ist, welcher zuvor in einem Robotersystem eingerichtet war.
  • Zur Lösung der ersten Aufgabe sieht die vorliegende Erfindung ein Verfahren zum Festlegen eines Roboter-Koordinatensystems vor, das die folgenden Schritte umfaßt (a) Plazieren einer ersten Einspannvorrichtung in einer ersten Position, die durch einen ersten Roboter direkt erreichbar ist, (b) Plazieren einer zweiten Einspannvorrichtung in einer zweiten Position, die direkt sowohl durch den ersten Roboter als auch durch einen zweiten Roboter, der die erste Einspannvorrichtung nicht direkt erreichen kann, (c) Berechnen durch ein Berechnungsmittel einer Koordinaten-Transformationsmatrix zum Transformieren eines behelfsmäßigen Koordinatensystems, welches der erste Roboter durch Zugreifen auf die zweite Einspannvorrichtung erkannt hat, in ein gemeinsames Koordinatensystem, welches der erste Poboter durch Zugreifen auf die erste Einspannvorrichtung erkannt hat, (d) Transformieren des behelfsmäßigen Koordinatensystems, welches der zweite Roboter durch Zugreifen auf die zweite Einspannvorrichtung erkannt hat, in das gemeinsame Koordinatensytem, das für den zweiten Roboter festzulegen ist, mit Hilfe des Berechnungsmittels und unter Benutzung der Koordinaten-Transformationsmatrix und (e) Festlegen des gemeinsamen Koordinatensystems in bezug auf den zweiten Roboter mit Hilfe vonn Festlegungsmitteln.
  • Zur Lösung der zweiten Aufgabe umfaßt das Verfahren gemäß der vorliegenden Erfindung ferner folgende Schritte: (f) Einrichten eines dritten Roboters im Austausch mit dem zweiten Roboterer, (g) Plazieren einer dritten Einspannvorrichtung in einer dritten Position, die sowohl der erste als auch der dritte Roboter erreichen können, (h) Berechnen durch das Berechnungsmittel einer zweiten Koordinaten- Transformationsmatrix zum Transformieren eines zweiten behelfsmäßigen Koordinatensystems, das der erste Roboter durch Zugreifen auf die dritte Einspannvorrichtung, welche in der dritten Position angeordnet ist, erkannt hat, in das gemeinsame Koordinatensystem, welches der erste Roboter in Schritt (c) erkannt hat, (i) Transformieren durch das Berechnungsmittel und unter Benutzung der zweiten Koordinaten-Transformationsmatrix des zweiten behelfsmäßigen Koordinatensystems, welches der dritte Koboter durch Zugreifen auf die dritte Einspannvorrichtung, die in der dritten Position angeordnet ist, erkannt hat, in das gemeinsame Koordinatensystem, welches in bezug auf den dritten Roboter festzulegen ist, und (e) Festlegen durch die Festlegungsmittel des gemeinsamen Koordinatensystems in bezug auf den dritten Roboter.
  • Wie zuvor angegeben wird gemäß der vorliegenden Erfindung eine Koordinaten-Transformationsmatrix zum Transformieren des behelfsmäßigen Koordinatensystems, das der erste Roboter durch Zugreifen auf die zweite Einspannvorrichtung erkannt hat, welche in der zweiten Position angeordnet ist, die sowohl der erste als auch der zweite Roboter erreichen können, in das gemeinsame Koordinatensystem, welches der erste Roboter durch Zugreifen auf die erste Einspannvorrichtung erkannt hat, die in der ersten Position angeordnet ist, welche nicht durch den zweiten Roboter erreichbar ist, berechnet, und es wird unter Benutzung dieser Koordinaten- Transformatlonsmatrix das behelfsmäßige Koordinatensystem, welches der zweite Roboter durch Zugreifen auf die zweite Einspannvorrichtung erkannt hat, in das gemeinsame Koordinatensystem tranformiert, welches durch den zweiten Roboter zu erkennen ist, wodurch das gemeinsame Koordinatensystem in bezug auf den zweiten Roboter festgelegt ist.
  • Dementsprechend kann, selbst wenn der erste und der zweite Roboter in einer solchen Art und Weise angeordnet sind, daß sich die Bewegungsbereiche derselben nicht einander überlappen, das gemeinsame Koordinatensystem in bezug auf den ersten und den zweiten Roboter unter Benutzung zweier Einspannvorrichtungen festgelegt werden, statt dafür eine spezielle Einspannvorrichtung zu benutzen, die durch beide Roboter erreichbar ist. Folglich erlegt das Festlegen des gemeinsamen Koordinatensystems der Anordnung der Roboter keine Beschränkungen auf, und es können zwei oder mehr Roboter in einem Robotersystem in einer Weise angeordnet werden, die am besten für die Konfiguration des Robotersystems geeignet ist, wodurch das Kobotersystem optimal aufgebaut werden kann.
  • Wenn sich beispielsweise bei dem zweiten Roboter, der einer der Roboter ist, die das Robotersystem bilden, Schwierigkeiten einstellen und demzufolge ein dritter Roboter im Austausch dafür eingerichtet wird, wird eine zweite Koordinaten-Transformationsmatrix zum Transformieren des zweiten behelfsmäßigen Koordinatensystems, das der erste Roboter durch Zugreifen auf die dritte Einspannvorrichtung, die in der dritten Position plaziert ist, welche sowohl durch den ersten als auch den dritten Roboter erreichbar ist, erkannt hat, in das gemeinsame Koordinatensystem, welches bereits durch den ersten Roboter erkannt ist, berechnet, und das zweite behelfsmäßige Koordinatensystem, welches der dritte Roboter durch Zugreifen auf die dritte Einspannvorrichtung erkannt hat, wird in das gemeinsame Koordinatensystem, das durch den dritten Roboter zu erkennen ist, unter Benutzung der zweiten Koordinaten-Transformationsmatrix transformiert, wodurch das gemeinsame Koordinatensystem in bezug auf den dritten Roboter festgelegt ist.
  • Dementsprechend kann das gemeinsame Koordinatensystem in bezug auf den Austausch-Roboter festgelegt werden, wobei die dritte Einspannvorrichtung, welche dieselbe wie die zweite Einspannvorrichtung oder verschieden von der zweiten Einspannvorrichtung sein kann, in der dritten Position plaziert wird, die mit der zweiten Position, in der die zweite Einspannvorrichtung während der vorhergehenden Festlegung des gemeinsam Koordinatensystems plaziert wurde, zusammenfallen oder nicht zusammenfallen kann. Foglich ist es nicht erforderlich, das gemeinsame Koordinatensystem erneut für jeden der Roboter festzulegen, wenn ein Austausch-Roboter anstelle eines der Roboter in dem Robotersystem installiert wird, wodurch das Robotersystem und dementsprechend eine Fertigungsstraße, die das System enthält, schnell und leicht wieder betriebsfähig gemacht werden kann.
  • Fig. 1 zeigt eine schematische Darstellung des Prinzips der Festlegung eines gemeinsamen Koordinatensystems in einem Robotersystem, auf welchem Prinzip beruhend ein Roboter-Koordinatensystem-Festlegungsverfahren gemäß einem Ausführungsbeispiel der vorliegenden Erfindung ausgeführt wird.
  • Fig. 2 zeigt eine schematische Darstellung des Prinzips zur Festlegung eines gemeinsamen Koordinatensystems in bezug auf einen Austausch-Roboter, der in dem Robotersystem eingerichtet wird.
  • Fig. 1 zeigt ein Robotersystem, auf das ein Roboter-Koordinatensystem-Festlegungsverfahren gemäß einem Ausführungsbeispiel der vorliegenden Erfindung angewendet wird und das z. B. in einer Fertigungsstraße eingerichtet ist. Dieses Robotersystem umfaßt einen ersten Roboterkörper 10 und einen zweiten Roboterkörper 20, die in einem Abstand voneinander angeordnet sind.
  • Obgleich nicht im einzelnen gezeigt, umfaßt der erste Roboterkörper 10 z. B. einen Mehrgelenk-Roboter, der einen Drehgelenkträger 11, welcher auf einer am Boden befestigten Basis angeordnet ist und damit durch ein erstes Gelenk verbunden ist, und einen Arm 12 enthält, der erste und zweite Glieder hat. Das erste Glied ist mit dem Drehgelenkträger 11 durch ein zweites Glied verbunden, und das zweite Glied ist mit dem ersten Glied durch ein drittes Gelenk verbunden. Der erste Roboterkörper 10 enthält ferner Servomotoren, die Achsen zugeordnet sind, durch welche der Drehgelenkträger 11 und die ersten und zweiten Glieder jeweils betätigt werden, Impulscodierer, die den betreffenden Servomotoren zum Erfassen eines Drehgelenkwinkels zugeordnet sind, und Augenblickswertregister, denen Ausgangssignale der betreffenden Impulscodierer zugeführt werden und die Daten sichern, welche die augenblicklichen Drehgelenkwinkel repräsentieren. Der zweite Roboterkörper 20 umfaßt einen ähnlichen Mehrgelenk-Roboter. In Fig. 1 bezeichnen die Bezugszeichen 21 u. 22 solche Teile des zweiten Roboterkörpers 20, die dem Drehgelenkträger 11 und dem Arm 12 des ersten Roboterkörpers 10 entsprechen.
  • Das Robotersystem umfaßt ferner erste und zweite Roboter- Steuereinheiten 30 u. 40 zum Steuern des Betriebs der ersten und zweiten Roboterkörper 10 bzw. 20 und ein Sichtsystem 50. Die Roboter-Steuereinheiten 30 u. 40 fungieren jeweils als Berechungsmittel und als Festlegungsmittel zum Festlegen eines im folgenden beschriebenen gemeinsamen Koordinatensystems.
  • Die erste Roboter-Steuereinheit 30 bildet einen ersten Roboter, der als ein Referenz-Roboter im Zusammenwirken mit dem ersten Roboterkörper 10 benutzt wird, und die zweite Roboter-Steuereinheit 40 bildet einen zweiten Roboter, auf welchen bezogen ein Koordinatensystem festzulegen ist, zum Zusammenwirken mit dem zweiten Roboterkörper 20. Das Sichtsystem 50 des Robotersystems enthält elne Kamera 51, die als ein Videosensor beispielsweise zum Erkennen eines Werkstücks oder Arbeitsobjekts in der Fertigungsstraße dient, und eine Videosensor-Steuereinheit 52 zum Gewinnen von Bilddaten durch Unterziehen eines Bildsignals aus der Kamera 51 einer Bildverarbeitung und zum Liefern der gewonnenen Bilddaten an die erste und die zweite Roboter-Steuereinheit 30 bzw. 40.
  • Die erste Roboter-Steuereinheit 30 speichert ein erstes Steuerprogramm zum Steuern des ersten Roboterkörpers, welches unter Benutzung eines gemeinsamen Koordinatensystems X1Y1Z1, das gemeinsam durch die ersten und zweiten Roboterkörper 10 u. 20 in Anspruch genommen wird, erstellt ist, und steuert den Betrieb der Servomotoren, die einzelnen Achsen des ersten Roboterkörpers 10 zugeordnet sind, in Übereinstimmung mit Befehlen, die durch Transformation von Befehlen in dem ersten Steuerprogramm unter Benutzung einer Koordinaten-Transformationsmatrix, die im folgenden erläutert wird, gewonnen sind und demzufolge mit Bezugnahme auf ein erstes Roboter-Koordinatensystem (nicht gezeigt), das dem ersten Roboterkörper 10 zugewiesen ist, dargestellt sind. In ähnlicher Weise steuert die zweite Roboter-Steuereinheit 40 den Betrieb des zweiten Roboterkörpers 20 in Übereinstimmung mit Befehlen, die solchen in einem zweiten Steuerprogramm entsprechen und mit Bezugnahme auf ein zweites Roboter-Koordinatensystem (nicht gezeigt) dargestellt sind. Bei jeder der Roboter Steuereinheiten 30 u. 40 ist ein Bedienungsfeld (nicht gezeigt) vorgesehen, um einen von Hand gesteuerten Roboter-Betrieb zu gestatten.
  • Die folgenden Ausführungen stellen eine Beschreibung einer Prozedur zum Festlegen eines gemeinsamen Koordinatensystems dar, das gemeinsam durch den ersten und den zweiten Roboter in dem Robotersystem, welches die zuvor beschriebene Konfiguration aufweist, in Anspruch genommen wird.
  • Eine Bedienungsperson plaziert eine erste Einspannvorrichtung 61 für das gemeinsame Koordinatensystem in einer ersten Position, die innerhalb des Bewegungsbereichs des Arms 12 des ersten Roboterkörpers 10, jedoch außerhalb des Bewegungsbereichs des Arms 22 des zweiten Roboterkörpers 20 liegt. Das bedeutet, daß die erste Einspannvorrichtung 61 in einer Position plaziert wird, die nur durch den ersten Roboter erreichbar ist. Anschließend plaziert die Bedienungsperson eine zweite Einspannvorrichtung 62 für ein behelfsmäßiges Koordinatensystem in einer Position, die innerhalb des Bewegungsbereichs der Roboterarme 12 u. 22 liegt und demzufolge durch beide Roboter erreichbar ist.
  • Die Bedienungsperson betätigt dann von Hand mittels des Bedienungsfelds der ersten Roboter-Steuereinheit 30 den ersten Roboterkörper 10, um das körperferne Ende des ersten Roboterarms 12 bei einer ersten Narke auf der ersten Einspannvorrichtung 61 zu positionieren, die dem Nullpunkt O1 des gemeinsamen Koordinatensystems X1Y1Z1 entspricht, und betätigt eine vorbestimmte Taste in dem Bedienungsfeld, wobei der Roboterarm in dieser Position gehalten wird, um dem ersten Roboter den Nullpunkt O1 einzulernen. In Reaktion auf diese Einlernoperation liest die erste Roboter-Steuereinheit 30 Gelenkwinkeldaten der einzelnen Achsen des ersten Roboterkörpers 10 aus den betreffenden Augenblickswertregistern aus, wenn das körperferne Ende des Roboterarms 12 in dem Nullpunkt O1 positioniert ist, und speichert dann die Daten in einem Speicher. Danach werden dem ersten Roboter in ähnlicher Weise Punkte A1 u. B1 auf einer X1- bzw. einer Y1-Achse des gemeinsamen Koordinatensystems, die zweiten und dritten Marken auf der ersten Einspannvorrichtung 61 entsprechen, nacheinander eingelernt, und es werden Gelenkwinkeldaten, die auf die Punkte A1 u. B1 bezogen sind, in dem Speicher gespeichert.
  • Die erste Roboter-Steuereinheit 30 erkennt die Beziehung zwischen dem ersten Roboter-Koordinatensystem, das in bezug auf den ersten Roboter festgelegt ist, und dem gemeinsamen Koordinatensystem X1Y1Z1 auf der Grundlage der Gelenkwinkeldaten, welche die drei Punkte O1, A1 u. B1 repräsentieren, und berechnet dann eine Koordinaten-Transformationsmatrix für eine Transformation zwischen dem ersten Roboter- Koordinatensystem und dem gemeinsamen Koordinatensystem. Das bedeutet, daß das gemeinsame Koordinatensystem X1Y1Z1 in bezug auf den ersten Roboter festgelegt wird.
  • Darauffolgend betätigt die Bedienungsperson von Hand den ersten Roboterkörper 10, um das körperferne Ende des ersten Roboterarms 12 fortschreitend bei ersten bis dritten Marken auf der zweiten Einspannvorrichtung 62 zu positionieren, und lernt dem ersten Roboter nacheinander den Nullpunkt O2 und Punkte A2 u. B2 auf den X2- und Y2-Achsen eines behelfsmäßigen Koordinatensystems X2Y2Z2 ein, die jeweils den ersten bis dritten Marken entsprechen. In Reaktion auf die Einlernoperationen speichert die erste Roboter-Steuereinheit 30 Gelenkwinkeldaten, die auf die Punkte O2, A2 u. B2 bezogen sind, in dem Speicher, berechnet dann eine Transformationsmatrix für eine Koordinatentransformation zwischen dem ersten Roboter-Koordinatensystem und dem behelfsmäßigen Koordinatensystem X2Y2Z2 auf der Grundlage der Gelenkwinkeldaten und speichert die berechnete Transformationsmatrix in dem Speicher. Ferner berechnet die Roboter Steuereinheit 30 auf der Grundlage der solchermaßen berechneten Transformationsmatrix und der zuvor berechneten Transformationsmatrix eine Koordinaten-Transformationsmatrix Tl für eine Transformation zwischen dem behelfsmäßigen Koordinatensystem X2Y2Z2 und dem gemeinsamen Koordinatensystem X1Y1Z1, speichert Daten, welche die Koordinaten- Transformationsmatrix Tl repräsentieren, in dem Speicher und liefert gleichzeitig die Daten an die zweite Roboter- Steuereinheit 40. Diese Daten werden in einem Speicher der zweiten Roboter-Steuereinheit 40 gespeichert.
  • Die Bedienungsperson betätigt dann von Hand den zweiten Roboterkörper 20 und positioniert das körperferne Ende des zweiten Roboterarms 22 fortschreitend bei ersten bis dritten Marken auf der zweiten Einspannvorrichtung 62, um dadurch dem zweiten Roboter nacheinander den Nullpunkt O2 und die Punkte A2 u. B2 auf der X2- bzw. der Y2-Achse des behelfsmäßigen Koordinatensystems X2Y2Z2 einzulernen, die jeweils den ersten bis dritten Marken entsprechen. Die zweite Roboter-Steuereinheit 40 speichert Gelenkwinkeldaten, die auf die Punkte O2, A2 u. B2 bezoegen sind, in dem Speicher und berechnet auf der Grundlage der Gelenkwinkeldaten eine Koordinaten-Transformationsmatrix für eine Transformation zwischen dem zweiten Roboter- Koordinatensystem und dem behelfsmäßigen Koordinatensystem X2Y2Z2. Ferner berechnet die Roboter-Steuereinheit 40 auf der Grundlage der Transformationmatrix, die solchermaßen berechnet ist, und der Transformationsmatrix T1 für die Transformation zwischen dem behelfsmäßigen Koordinatensystem X1Y1Z1, das aus dem Speicher ausgelesen ist, eine Koordinaten- Transformationsmatrix für eine Transformation zwischen dem zweiten Roboter-Koordinatensystem und dem gemeinsamen Koordinatensystem X1Y1Z1 und speichert die berechnete Matrix in dem Speicher. Folglich wird das gemeinsame Koordinatensystem X1Y1Z1 in bezug auf den zweiten Roboter festgelegt, der keinen Zugriff auf die erste Einspannvorrichtung 61 hat, und zwar ohne die Benutzung einer speziellen Einspannvorrichtung, auf die sowohl der erste als auch der zweite Roboter zugreifen können, oder eine Änderung der Positionen der Roboter.
  • Nachdem das gemeinsame Koordinatensystem in bezug auf den ersten und den zweiten Roboter festgelegt ist, wird ein Roboterbetrieb durchgeführt. Im Verlaufe eines Langzeitbetriebs können sich bei einem Roboter Schwierigkeiten einstellen. In diesem Fall wird ein Austausch-Roboter eingerichtet, und das gemeinsame Koordinatensystem X1Y1Z1 wird in bezug darauffestgelegt. Beispielsweise muß, falls sich bei dem zweiten Roboterkörper Schwierigkeiten einstellen und, wie in Fig. 2 gezeigt, ein dritter Roboterkörper 70 in einer Position angeordnet wird, die mit der Position, in welcher zweite Roboterkörper eingerichtet worden ist, zusammenfällt oder nicht zusammenfällt, das gemeinsame Koordinatensystem X1Y1Z1 in bezug auf den dritten Roboter festgelegt werden. Der dritte Roboter umfaßt einen dritten Koboterkörper 70 und die zweite Roboter-Steuereinheit 40 wie in dem Fall der ersten und zweiten Roboterkörper 10 u. 20. Die Bezugszeichen 71 u. 72 bezeichnen einen Drehgelenkträger bzw. einen Arm.
  • Beim Festlegen des gemeinsamen Koordinatensystems X1Y1Z1 in bezug auf den dritten Roboter plaziert die Bedienungsperson eine dritte Einspannvorrichtung 63, welche die gleiche wie die zweite Einspannvorrichtung 62 sein kann oder davon verschieden sein kann, in einer dritten Position, auf die sowohl der erste als auch der dritte Roboterkörper 10 und 70 zugreifen können. Die dritte Position kann mit der Position (zweite Position), in welcher die zweite Einspannvorrichtung 62 während des vorhergehenden Festlegens des gemeinsamen Koordinatensystems plaziert wurde, zusammenfallen oder nicht zusammenfallen. Anschließend betätigt die Bedienungsperson den ersten Roboterkörper 10 von Hand und positioniert das körperferne Ende des ersten Roboterarms 12 fortschreitend bei ersten bis dritten Marken auf der dritten Einspannvorrichtung 63, die jeweils dem Nullpunkt O3 und Punkten A3 u. B3 auf X- und Y-Achsen eines zweiten behelfsmäßigen Koordinatensystems X3Y3Z3 entsprechen, das identisch mit dem behelfsmäßigen Koordinatensystem X2Y2Z2 oder von diesem verschieden sein kann, um dadurch dem ersten Roboter nacheinander die drei Punkte O3, A3 u. B3 einzulernen, wobei der Roboterarm in diesen Punkten positioniert ist. In Reaktion auf die Einlernoperationen erfaßt die erste Roboter-Steuereinheit 30 Gelenkwinkeldaten, die jeweils auf die drei Punkte O3, A3 u. B3 bezogen sind, und speichert die erfaßten Daten in dem Speicher.
  • Die erste Roboter-Steuereinheit 30 berechnet dann eine Koordinaten-Transformationsmatrix für eine Transformation zwischen dem ersren Roboter-Koordinatensystem und dem zweiten behelfsmäßigen Koordinatensystem X3Y3Z3 auf der Grundlage der Gelenkwinkeldaten, die auf die drei Punkte O3, A3 u. B3 bezogen sind. Darauffolgend berechnet die erste Roboter Steuereinheit 30 auf der Grundlage der solchermaßen berechneten Transformationsmatrix und der Transformationsmatrix für die Transformation zwischen dem ersten Roboter-Koordinatensystem und dem gemeinsamen Koordinatensystem X1Y1Z1, die während des vorhergehenden Festlegens des gemeinsamen Koordinatensystems berechnet wurde, eine Koordinaten-Transformationsmatrix T2 für eine Transformation zwischen dem zweiten behelfsmäßigen Koordinatensystem X3Y3Z3 und dem gemeinsamen Koordinatensystem X1Y1Z1 und liefert die Daten, welche die Transformationsmatrix T2 repräsentieren, an die zweite Roboter-Steuereinheit 40.
  • Die Bedienungsperson positioniert dann das körperferne Ende des dritten Roboterarms 72 fortschreitend bei den Marken auf der dritten Einspannvorrichtung 63, welche den drei Punkten O3, A3 u. B3 entsprechen, und lernt dem dritten Roboter die drei Punkte O3, A3 u. B3 nacheinander ein, wobei der Roboterarm in den betreffenden Punkten positioniert ist. In Reaktion auf die Einlernoperationen gewinnt die weite Roboter-Steuereinheit 40 aufeinanderfolgend Gelenkwinkeldaten, die auf die drei Punkte O3, A3 u. B3 bezogen sind, und berechnet eine Transformationmatrix für ein Koordinatentransformation zwischen einem dritten Koordinatensystem, das dem dritten Roboter zugewiesen ist, und dem zweiten behelfsmäßigen Koordinatensystem X3Y3Z3. Ferner wird auf der Grundlage dieser Transformationsmatrix und der Transformationsmatrix T2 für die Transformation zwischen dem zweiten behelfsmäßigen Koordinatensystem X3Y3Z3 und dem gemeinsamen Koordinatensystem X1Y1Z1 eine Transformationmatrix für eine Koordinatentransformation zwischen dem dritten Roboter-Koordinatensystem und dem gemeinsamen Koordinatensystem X1Y1Z1 berechnet und in dem Speicher gespeichert. Als Ergebnis wird das gemeinsame Koordinatensystem X1Y1Z1 in bezug auf den dritten Roboter festgelegt. Das bedeutet, daß anders als bei dem herkömmlichen Verfahren, bei dem, wenn ein Austausch-Roboter eingerichtet wird, das gemeinsame Koordinatensystem erneut in bezug auf alle Roboter unter Benutzung einer Einspannvorrichtung für das Festlegen des gemeinsamen Koordinatensystems festgelegt werden nuß, das gemeinsame Koordinatensystem X1Y1Z1 schnell und leicht in bezug auf den Austausch-Roboter festgelegt werden kann. Daher kann eine Fertigungsstraße oder dgl. leicht und schnell wieder betriebsfähig gemacht werden, nachdem wegen einer Roboterstörung ein Austausch-Roboter eingerichtet ist.
  • Die vorliegende Erfindung ist nicht auf das zuvor beschriebene Ausführungsbeispiel beschränkt, und es können verschiedene Modifikationen vorgenommen werden. Beispielsweise kann die Erfindung, obwohl das Ausführungsbeispiel auf ein Robotersystem bezogen beschrieben ist, das zwei Mehrgelenk- Roboter enthält, auf ein Robotersystem angewendet werden, das drei oder mehr Roboter verschiedener Arten enthält. Darüber hinaus werden in dem zuvor beschriebenen Ausführungsbeispiel das gemeinsame Koordinatensystem X1Y1Z1, das behelfsmäßige Koordinatensystem X2Y2Z2 und das zweite behelfsmäßige Koordinatensystem X3Y3Z3 jeweils auf ersten bis dritten Einspannvorrichtungen 61 bis 63 festgelegt, jedoch können sie auf verschiedene Art und Weise festgelegt werden, sofern die Koordinatenpositionen der Einspannvorrichtungen bezogen auf die Koordinatensysteme bekannt und meßbar sind.

Claims (2)

1. Verfahren zum Festlegen eines gemeinsamen Roboter-Koordinatensystems, das von zumindest zwei Robotern gemeinsam zu benutzen ist, mit Schritten zum
(a) Plazieren einer ersten Einspannvorrichtung (61) in einer ersten Position, die durch einen ersten Roboter (10) direkt erreichbar ist, wobei die erste Einspannvorrichtung das gemeinsame Koordinatensystem (X1, Y1, Zl) definiert,
(b) Plazieren einer zweiten Einspannvorrichtung (62) in einer zweiten Position, die direkt sowohl durch den ersten Roboter (10) als auch durch einen zweiten Roboter (20), der die erste Einspannvorrichtung nicht direkt erreichen kann, erreichbar ist, wobei die zweite Einspannvorrichtung ein behelfsmäßiges Koordinatensystem (X2, Y2, Z2) definiert,
(c) Berechnen durch ein Berechnungsmittel einer Koordinaten-Transformationsmatrix (T1) zum Transformieren des behelfsmäßigen Koordinatensystems (X2, Y2, Z2), welches der erste Roboter (10) durch Zugreifen auf die zweite Einspannvorrichtung (62) erkannt hat, in das gemeinsame Koordinatensystem (X1, Y1, Z1), welches der erste Roboter (10) durch Zugreifen auf die erste Einspannvorrichtung (61) erkannt hat,
(d) Transformieren durch das Berechnungsmittel und unter Benutzung der Koordinaten-Transformationsmatrix (T1) des behelfsmäßigen Koordinatensystems (X2, Y2, Z2), welches der zweite Roboter (20) durch Zugreifen auf die zweite Einspannvorrichtung (62) erkannt hat, in das gemeinsame Koordinatensytem (X1, Y1, Z1), das in bezug auf den zweiten Roboter festzulegen ist, und
(e) Festlegen durch Festlegungsmittel des gemeinsamen Koordinatensystems (X1, Y1, Z1) in bezug auf den zweiten Roboter (20).
2. Verfahren nach Anspruch 1, das ferner Schritt umfaßt zum
(f) Einrichten eines dritten Roboters (70) im Austausch mit dem zweiten Roboterer (20),
(g) Plazieren einer dritten Einspannvorrichtung (63) in einer dritten Position, die sowohl der erste als auch der dritte Roboter (10, 70) erreichen können, wobei die dritte Einspannvorrichtung ein zweites behelfsmäßiges Koordinatensystem (X3, Y3, Z3) definiert,
(h) Berechnen durch das Berechnungsmittel einer zweiten Koordinaten-Transformationsmatrix (T2) zum Transformieren des zweiten behelfsmäßigen Koordinatensystems (X3, Y3, Z3), das der erste Roboter (60) durch Zugreifen auf die dritte Einspannvorrichtung (63), welche in der dritten Position angeordnet ist, erkannt hat, in das gemeinsame Koordinatensystem (X1, Y1, Z1), welches der erste Roboter (10) in Schritt (c) erkannt hat,
(i) Transformieren durch das Berechnungsmittel und unter Benutzung der zweiten Koordinaten-Transformationsmatrix (T2) des zweiten behelfsmäßigen Koordinatensystems (X3, Y3, Z3), welches der dritte Roboter (70) durch Zugreifen auf die dritte Einspannvorrichtung (63), die in der dritten Position angeordnet ist, erkannt hat, in das gemeinsame Koordinatensystem (X1, Y1, Z1), welches in bezug auf den dritten Roboter festzulegen ist, und
(e) Festlegen durch die Festlegungsmittel des gemeinsamen Koordinatensystems (X1, Y1, Z1) in bezug auf den dritten Roboter (70).
DE69113024T 1990-11-16 1991-11-15 Verfahren zum festlegen eines koordinatensystems für einen roboter. Expired - Fee Related DE69113024T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2310711A JP2783456B2 (ja) 1990-11-16 1990-11-16 ロボットの座標系設定方式
PCT/JP1991/001566 WO1992009019A1 (en) 1990-11-16 1991-11-15 Method for setting coordinate system of robot

Publications (2)

Publication Number Publication Date
DE69113024D1 DE69113024D1 (de) 1995-10-19
DE69113024T2 true DE69113024T2 (de) 1996-02-01

Family

ID=18008552

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69113024T Expired - Fee Related DE69113024T2 (de) 1990-11-16 1991-11-15 Verfahren zum festlegen eines koordinatensystems für einen roboter.

Country Status (5)

Country Link
US (1) US5333242A (de)
EP (1) EP0511396B1 (de)
JP (1) JP2783456B2 (de)
DE (1) DE69113024T2 (de)
WO (1) WO1992009019A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014204475A1 (de) * 2014-03-11 2015-09-17 Kuka Systems Gmbh Verfahren zum Betreiben eines Roboters
DE102018108728B4 (de) 2017-04-19 2019-09-19 Shinya Hirano Kalibriersystem

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2710407B1 (fr) * 1993-09-20 1995-12-01 Romer Srl Procédé de repérage positionnel pour une machine de mesure tridimensionnelle et dispositif pour la mise en Óoeuvre du procédé.
JP3394322B2 (ja) 1994-05-19 2003-04-07 ファナック株式会社 視覚センサを用いた座標系設定方法
US6243621B1 (en) 1998-03-13 2001-06-05 Fanuc Robotics North America, Inc. Method of determining workpiece positions including coordinated motion
US9517106B2 (en) 1999-09-17 2016-12-13 Intuitive Surgical Operations, Inc. Systems and methods for commanded reconfiguration of a surgical manipulator using the null-space
US6374155B1 (en) 1999-11-24 2002-04-16 Personal Robotics, Inc. Autonomous multi-platform robot system
US6741054B2 (en) 2000-05-02 2004-05-25 Vision Robotics Corporation Autonomous floor mopping apparatus
US6480759B1 (en) 2000-06-23 2002-11-12 Storage Technology Corporation Diagnostic port between independent robots
DE602004019781D1 (de) * 2003-06-20 2009-04-16 Fanuc Robotics America Inc Mehrfach-roboterarm-verfolgung und spiegel-jog
WO2005090010A1 (en) * 2004-03-16 2005-09-29 Abb Ab System of manupulators and method for controlling such a system
DE102004026813A1 (de) * 2004-06-02 2005-12-29 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Steuern von Handhabungsgeräten
US7686451B2 (en) * 2005-04-04 2010-03-30 Lc Technologies, Inc. Explicit raytracing for gimbal-based gazepoint trackers
JP4461159B2 (ja) * 2007-06-14 2010-05-12 ヤマハファインテック株式会社 プリント基板の検査装置および検査方法
CN104334109B (zh) 2012-06-01 2017-06-23 直观外科手术操作公司 用于使用零空间的外科手术操纵器的命令的重新配置的系统和方法
CN104192221B (zh) * 2014-09-26 2016-06-29 哈尔滨工业大学 一种电驱动六足机器人运动控制系统及方法
CN104331075B (zh) * 2014-09-28 2017-02-08 哈尔滨工业大学 六足机器人操纵系统及操纵方法
GB201509341D0 (en) * 2015-05-29 2015-07-15 Cambridge Medical Robotics Ltd Characterising robot environments
US10078330B2 (en) 2016-03-25 2018-09-18 International Business Machines Corporation Coordinating robotic apparatus deliveries
JP2018012188A (ja) * 2016-06-03 2018-01-25 ファナック アメリカ コーポレイション 複数のロボットによる動的レーザタッチセンシング及び動的ユーザ座標系
SG10201708171QA (en) * 2017-10-04 2019-05-30 Arche Information Inc A comprehensive multi-agent robotics management system
KR102015498B1 (ko) * 2018-06-27 2019-10-23 엘지전자 주식회사 복수의 자율주행 청소기 및 그 제어방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62108314A (ja) * 1985-11-07 1987-05-19 Mitsubishi Electric Corp ロボツトのオフラインプログラミング装置
JPS6334606A (ja) * 1986-07-29 1988-02-15 Matsushita Electric Ind Co Ltd 産業用ロボツトの教示方法
JPS63184806A (ja) * 1987-01-28 1988-07-30 Fujitsu Ltd ロボツトによる相対座標系情報テイ−チング方式
JPS6482202A (en) * 1987-09-25 1989-03-28 Yamazaki Mazak Corp Method for controlling coordinates system in machine tool
JP2703767B2 (ja) * 1987-10-05 1998-01-26 株式会社日立製作所 ロボットの教示データ作成方法
JPH01237802A (ja) * 1988-03-18 1989-09-22 Tokico Ltd 工業用ロボットのティーチングデータ変換装置
JPH02262986A (ja) * 1989-03-31 1990-10-25 Kobe Steel Ltd ロボットのオフライン教示方法
JP2652444B2 (ja) * 1989-04-14 1997-09-10 松下電器産業株式会社 ロボットシステム
JPH0736993B2 (ja) * 1989-07-27 1995-04-26 株式会社不二越 産業用ロボットシステム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014204475A1 (de) * 2014-03-11 2015-09-17 Kuka Systems Gmbh Verfahren zum Betreiben eines Roboters
DE102018108728B4 (de) 2017-04-19 2019-09-19 Shinya Hirano Kalibriersystem
US10906183B2 (en) 2017-04-19 2021-02-02 Toyota Jidosha Kabushiki Kaisha Calibration system

Also Published As

Publication number Publication date
EP0511396A4 (en) 1992-12-30
EP0511396A1 (de) 1992-11-04
US5333242A (en) 1994-07-26
DE69113024D1 (de) 1995-10-19
JP2783456B2 (ja) 1998-08-06
EP0511396B1 (de) 1995-09-13
JPH04181405A (ja) 1992-06-29
WO1992009019A1 (en) 1992-05-29

Similar Documents

Publication Publication Date Title
DE69113024T2 (de) Verfahren zum festlegen eines koordinatensystems für einen roboter.
DE69223127T2 (de) Automatische kalibriereinrichtung
DE102015001527B4 (de) Robotersystem, das visuelle Rückmeldung verwendet
DE69216167T2 (de) Gerät zur Steuerung eines Industrieroboters zur Durchführung koordinierter Arbeitsvorgänge unter Verwendung eines Playbackteachingverfahrens und dies-bezügliches Verfahren
DE3854235T2 (de) Automatische einstellung der werkzeugspitze.
DE60008175T2 (de) Verfahren zur automatischen Auswahl von Schweissaneinanderreihen für manuelle Schweisszange und manuelle Schweisszange zur Durchführung des Verfahrens
DE69105476T2 (de) Verfahren zum kalibrieren eines optischen sensors.
DE69603066T2 (de) Vorrichtung und verfahren zum korrigieren der fortbewegungsroute eines roboters
DE69103871T2 (de) Eichsystem für einen optischen sensor.
DE102018009815B4 (de) Bildgebungsvorrichtung umfassend einen Sichtsensor zum Erfassen des Bildes eines Werkstücks
DE3873411T2 (de) Verfahren und geraet zum steuern eines robotersystems.
DE3344633C2 (de)
DE2857141C1 (de) Korrelations-Objektverfolger
DE69024854T2 (de) Verfahren zur Steuerung von Roboterbewegungen
DE68926739T2 (de) Lernverfahren und steuergerät für ein roboter
DE68926292T2 (de) Roboterbetriebsverfahren, das manuell korrigiert werden kann
DE3144843A1 (de) Verfahren zum betreiben eines als schweissroboter arbeitenden manipulators und dementsprechende steuerung
DE102015104582A1 (de) Verfahren zum Kalibrieren eines Roboters an einem Arbeitsbereich und System zum Durchführen des Verfahrens
DE102018007287B4 (de) Roboter-Controller zum Durchführen einer Kalibrierung, Messsystem und Kalibrierverfahren
DE69313590T2 (de) Verfahren zum Steuern des Betriebs eines Roboterarms
DE69316175T2 (de) Verfahren zur manuellen dateneingabe bei roboter
DE69122185T2 (de) Verfahren und Vorrichtung zum Steuern eines Gelenkroboters mit Redundanz
DE3635265C2 (de)
DE10351669A1 (de) Verfahren und Vorrichtung zum Steuern eines Handhabungsgeräts relativ zu einem Objekt
EP1152212B1 (de) Weitgehend selbsttätige Kalibrierung eines Betätigungsarmes eines Roboters

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee