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
Links
- 238000000034 method Methods 0.000 title claims description 16
- 230000009466 transformation Effects 0.000 claims description 47
- 239000011159 matrix material Substances 0.000 claims description 34
- 230000001131 transforming effect Effects 0.000 claims description 11
- 230000004044 response Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical 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/408—Numerical 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/4086—Coordinate conversions; Other special calculations
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39399—Convert 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).
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)
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)
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)
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 | 株式会社不二越 | 産業用ロボットシステム |
-
1990
- 1990-11-16 JP JP2310711A patent/JP2783456B2/ja not_active Expired - Fee Related
-
1991
- 1991-11-15 EP EP91919643A patent/EP0511396B1/de not_active Expired - Lifetime
- 1991-11-15 US US07/910,171 patent/US5333242A/en not_active Expired - Lifetime
- 1991-11-15 WO PCT/JP1991/001566 patent/WO1992009019A1/ja active IP Right Grant
- 1991-11-15 DE DE69113024T patent/DE69113024T2/de not_active Expired - Fee Related
Cited By (3)
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 |