DE102018100420A1 - Offline-Programmierungseinrichtung und Positionsparameterkorrekturverfahren - Google Patents

Offline-Programmierungseinrichtung und Positionsparameterkorrekturverfahren Download PDF

Info

Publication number
DE102018100420A1
DE102018100420A1 DE102018100420.6A DE102018100420A DE102018100420A1 DE 102018100420 A1 DE102018100420 A1 DE 102018100420A1 DE 102018100420 A DE102018100420 A DE 102018100420A DE 102018100420 A1 DE102018100420 A1 DE 102018100420A1
Authority
DE
Germany
Prior art keywords
coordinate system
robot
change
parameter
offline
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.)
Granted
Application number
DE102018100420.6A
Other languages
English (en)
Other versions
DE102018100420B4 (de
Inventor
Tatsuya Oumi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102018100420A1 publication Critical patent/DE102018100420A1/de
Application granted granted Critical
Publication of DE102018100420B4 publication Critical patent/DE102018100420B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • B25J9/046Revolute coordinate type
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4083Adapting programme, configuration
    • 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/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/425Teaching successive positions by numerical control, i.e. commands being entered to control the positioning servo of the tool head or end effector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36503Adapt program to real coordinates, software orientation

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Fuzzy Systems (AREA)
  • Evolutionary Computation (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

Es ist möglich, die für einen Arbeiter erforderlichen Mannstunden zum Korrigieren eines Positionsparameters zu vermindern, wenn ein Koordinatensystem geändert wird, das als Referenz für einen Roboter dient. Bereitgestellt wird eine Offline-Programmiereinrichtung, die, während sie offline ist, ein Programm zum Betreiben eines Roboters erzeugt, wobei, wenn ein Koordinatensystem geändert wird, das als Referenz für den Roboter dient, ein Positionsparameter, der auf der Grundlage eines Koordinatensystems vor der Änderung erzeugt wird, automatisch auf der Grundlage des Koordinatensystems vor der Änderung und eines Koordinatensystems nach der Änderung korrigiert wird, sodass absolute Positionen des Positionsparameters vor und nach der Änderung gleich zueinander werden.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft eine Offline-Programmiereinrichtung, die, während sie offline ist, ein Roboterbetriebsprogramm erzeugt, und ein Positionsparameterkorrekturverfahren.
  • Allgemeiner Stand der Technik
  • Im Stand der Technik ist hinsichtlich einer Offline-Programmiereinrichtung bekannt, dass ein Programm mit Referenz auf ein Referenzkoordinatensystem erzeugt wird, das im Voraus festgelegt wird (siehe beispielsweise Patentliteratur 1).
  • Entgegenhaltungsliste
  • Patentliteratur
  • [PTL 1] Japanische nicht geprüfte Patentanmeldung, Veröffentlichung Nr. Hei 3-251378
  • Kurzdarstellung der Erfindung
  • Technische Aufgabe
  • Tatsächlich gibt es jedoch Fälle, in denen ein Programm betrieben werden muss, das unter Verwendung eines bestimmten Referenzkoordinatensystems als Referenz erzeugt wird, indem ein anderes Referenzkoordinatensystem als Referenz verwendet wird.
  • Beispielsweise wird in einem Stadium, in dem ein Robotersystem in einer Offline-Programmiereinrichtung untersucht wird, in dem Fall, in dem es einen Standort gibt, der nicht unter Verwendung des eingesetzten Roboters erreicht werden kann, oder in dem Fall, in dem eine Zykluszeit vermindert werden muss, die Installationsstelle des Roboters oder das Modell des Roboters geändert. In dem Fall, in dem ein Referenzkoordinatensystem, das als Referenz für ein Benutzerkoordinatensystem dient, das von einem Benutzer oder einem Roboterbetriebsprogramm definiert ist, ein Koordinatensystem ist, das in einem Roboter festgelegt ist, mit anderen Worten ein Roboterkoordinatensystem, wird die Position des Referenzkoordinatensystems in Zusammenhang mit der Änderung an der Installationsstelle eines solchen Roboters oder einer Änderung dessen Modells geändert. Daher ist es notwendig, einen Positionsparameter wie das Benutzerkoordinatensystem oder einen Teachpunkt, der von dem Betriebsprogramm umfasst ist, gemäß der Position des Referenzkoordinatensystems manuell zu korrigieren.
  • Insbesondere sei beispielsweise angenommen, dass das Robotermodell von einem Roboter A zu einem Roboter B, gezeigt in 6, geändert wird. Es wird angenommen, dass ein Ursprung OA eines Referenzkoordinatensystems für den Roboter A bei Z = 450 mm in einem Weltkoordinatensystem (auf die Erde bezogenes Koordinatensystem) positioniert ist, und dass ein Ursprung OB eines Referenzkoordinatensystems für den Roboter B bei Z = 525 mm in dem Weltkoordinatensystem positioniert ist. Selbst wenn der Roboter B installiert ist, ist beim Ändern des Robotermodells, sodass die XY-Position des Ursprung OA des Referenzkoordinatensystems für den Roboter A in dem Weltkoordinatensystem vor der Modelländerung mit der XY-Position des Ursprungs OB des Referenzkoordinatensystems für den Roboter B in dem Weltkoordinatensystem nach der Modelländerung ausgerichtet wird, die Z-Position des Ursprungs OB des Referenzkoordinatensystems für den Roboter B in dem Weltkoordinatensystem 75 mm über der Z-Position des Ursprungs OA des Referenzkoordinatensystems für den Roboter A in dem Weltkoordinatensystem. Daher endet, wenn das Betriebsprogramm, das in dem Roboter A betrieben wird, in dem Roboter B ohne Veränderung ausgeführt wird, der Roboter B damit, an einer Position betrieben zu werden, die um 75 mm im Vergleich zu der beabsichtigten Position nach oben verschoben ist. Daher ist es notwendig, den Teachpunkt in dem Programm manuell zu korrigieren.
  • In dem Fall, in dem das Benutzerkoordinatensystem mit Bezug auf das Referenzkoordinatensystem für den Roboter A festgelegt wird, ist es ähnlich notwendig, das Benutzerkoordinatensystem manuell zu korrigieren.
  • Weil ein großer Betrag von Mannstunden erforderlich ist, um eine solche Korrektur eines Positionsparameters auszuführen, ist dies eine beträchtliche Belastung für den Benutzer gewesen.
  • Die vorliegende Erfindung ist angesichts der zuvor beschriebenen Umstände gemacht worden, und es ist eine ihrer Aufgaben, eine Offline-Programmiereinrichtung und ein Positionsparameterkorrekturverfahren bereitzustellen, mit denen es möglich ist, die Mannstunden zu vermindern, die erforderlich sind, damit ein Benutzer einen Positionsparameter korrigiert, wenn ein Koordinatensystem, das als Referenz für einen Roboter dient, geändert wird.
  • Lösung der Aufgabe
  • Um die zuvor beschriebene Aufgabe zu erfüllen, stellt die vorliegende Erfindung die folgenden Lösungen bereit.
  • Ein erster Gesichtspunkt der vorliegenden Erfindung ist eine Offline-Programmiereinrichtung, die, während sie offline ist, ein Programm zum Betreiben eines Roboters erzeugt, wobei, wenn ein Koordinatensystem geändert wird, das als Referenz für den Roboter dient, ein Positionsparameter, der auf der Grundlage eines Koordinatensystems vor der Änderung erzeugt wird, automatisch auf der Grundlage des Koordinatensystems vor der Änderung und eines Koordinatensystems nach der Änderung korrigiert wird, sodass absolute Positionen des Positionsparameters vor und nach der Änderung gleich zueinander werden.
  • Mit dieser Ausgestaltung ist es möglich, wenn das Koordinatensystem geändert wird, das als Referenz für den Roboter dient, weil ein Positionsparameter, der auf der Grundlage eines Koordinatensystems vor der Änderung erzeugt wurde, automatisch auf der Grundlage des Koordinatensystems vor der Änderung und eines Koordinatensystems nach der Änderung korrigiert wird, sodass absolute Positionen des Positionsparameters vor und nach der Änderung gleich zueinander werden, die für einen Benutzer zum Ausführen der Korrektur des Positionsparameters erforderlichen Mannstunden zu vermindern.
  • Es ist zu beachten, dass ein Positionsparameter ein Parameter ist, der sich auf Positionen eines Roboters bezieht, und Positionskoordinatendaten wie einen Teachpunkt oder Ähnliches in einem Roboterbetriebsprogramm, Positionskoordinatendaten, die in einem Benutzerkoordinatensystem umfasst sind, das von dem Benutzer definiert ist, usw. umfasst.
  • Zusätzlich ist eine absolute Position definiert als eine Position, die auf einem Weltkoordinatensystem basiert, das ein auf die Erde bezogenes Koordinatensystem ist.
  • Ein zweiter Gesichtspunkt der vorliegenden Erfindung ist eine Offline-Programmiereinrichtung, die, während sie offline ist, ein Programm zum Betreiben eines Roboters erzeugt, wobei die Offline-Programmiereinrichtung umfasst: ein Matrixberechnungsmodul, das eine Umrechnungsmatrix berechnet, mittels der, wenn ein Koordinatensystem geändert wird, das als Referenz für den Roboter dient, das Koordinatensystem vor der Änderung in ein Koordinatensystem nach der Änderung umgewandelt wird; ein Parameterauswahlmodul, das einen Positionsparameter auswählt, auf den die Umwandlungsmatrix angewandt wird; und ein Parameterkorrekturmodul, das den ausgewählten Positionsparameter durch Anwenden der Umwandlungsmatrix darauf korrigiert.
  • Mit dieser Ausgestaltung berechnet, wenn das Koordinatensystem geändert wird, das als Referenz für den Roboter dient, das Matrixberechnungsmodul die Umwandlungsmatrix, mit der das Koordinatensystem vor der Änderung in das Koordinatensystem nach der Änderung umgewandelt wird. Zusätzlich wählt das Parameterauswahlmodul den Positionsparameter aus, auf den die Umwandlungsmatrix angewandt wird. Dann korrigiert das Parameterkorrekturmodul den ausgewählten Positionsparameter, indem er die Umwandlungsmatrix darauf anwendet.
  • Dadurch ist es möglich, wenn ein Koordinatensystem geändert wird, das als Referenz für den Roboter dient, weil der Positionsparameter automatisch korrigiert wird, sodass absolute Positionen des Positionsparameters vor und nach der Änderung gleich zueinander werden, die für einen Benutzer zum Ausführen der Korrektur des Positionsparameters erforderlichen Mannstunden zu vermindern.
  • Die Offline-Programmiereinrichtung gemäß einem der zuvor beschriebenen Gesichtspunkte wendet möglicherweise eine Ausgestaltung an, in der das Koordinatensystem, das als Referenz für den Roboter dient, geändert wird, wenn das Modell des Roboters geändert wird.
  • Die Offline-Programmiereinrichtung gemäß einem beliebigen der zuvor beschriebenen Gesichtspunkte wendet möglicherweise eine Ausgestaltung an, in der der Positionsparameter Positionsdaten umfasst, die als Referenz in dem Betriebsprogramm dienen.
  • Ein dritter Gesichtspunkt der vorliegenden Erfindung ist ein Positionsparameterkorrekturverfahren in einer Offline-Programmiereinrichtung, die, während sie offline ist, ein Programm zum Betreiben eines Roboters erzeugt, wobei, wenn ein Koordinatensystem geändert wird, das als Referenz für den Roboter dient, ein Positionsparameter, der auf der Grundlage eines Koordinatensystems vor der Änderung erzeugt wird, automatisch auf der Grundlage des Koordinatensystems vor der Änderung und eines Koordinatensystems nach der Änderung korrigiert wird, sodass absolute Positionen des Positionsparameters vor und nach der Änderung gleich zueinander werden.
  • Ein vierter Gesichtspunkt der vorliegenden Erfindung ist ein Positionsparameterkorrekturverfahren in einer Offline-Programmiereinrichtung, die, während sie offline ist, ein Programm zum Betreiben eines Roboters erzeugt, wobei das Positionsparameterkorrekturverfahren umfasst: einen Schritt des Berechnens einer Umwandlungsmatrix, mit der, wenn ein Koordinatensystem geändert wird, das als Referenz für den Roboter dient, das Koordinatensystem vor der Änderung in ein Koordinatensystem nach der Änderung umgewandelt wird; einen Schritt des Auswählens eines Positionsparameters, auf den die Umwandlungsmatrix angewandt wird; und einen Schritt des Korrigierens des ausgewählten Positionsparameters durch Anwenden der Umwandlungsmatrix darauf.
  • Vorteilhafte Wirkungen der Erfindung
  • Die vorliegende Erfindung bietet dahingehend einen Vorteil, dass es möglich ist, die für einen Benutzer erforderlichen Mannstunden zu vermindern, um eine Korrektur eines Betriebsprogramm auszuführen, wenn ein Koordinatensystem geändert wird, das als Referenz für einen Roboter dient.
  • Figurenliste
    • 1 ist eine Abbildung, die schematisch die Ausgestaltung einer Offline-Programmiereinrichtung gemäß einer ersten Ausführungsform der vorliegenden Erfindung zeigt.
    • 2 ist eine Abbildung, die schematisch die Ausgestaltung einer Offline-Programmiereinrichtung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung zeigt.
    • 3 ist eine Abbildung, die schematisch die Ausgestaltung einer Offline-Programmiereinrichtung gemäß einer dritten Ausführungsform der vorliegenden Erfindung zeigt.
    • 4 ist eine Abbildung, die schematisch die Ausgestaltung einer Offline-Programmiereinrichtung gemäß einer vierten Ausführungsform der vorliegenden Erfindung zeigt.
    • 5 ist ein Flussdiagramm, das die Verarbeitung zeigt, die von der Offline-Programmiereinrichtung von 1 ausgeführt wird.
    • 6 ist eine Abbildung zum Erklären des Referenzkoordinatensystems, das individuell für unterschiedliche Roboter festgelegt ist.
  • Beschreibung der Ausführungsformen
  • Wie in 1 bis 4 gezeigt, sind in einigen Ausführungsformen gemäß der vorliegenden Erfindung ein Speichermodul 11, ein Matrixberechnungsmodul 13 und ein Parameterkorrekturmodul 15 vorgesehen. Wie in 1 und 3 gezeigt, ist in einigen Ausführungsformen gemäß der vorliegenden Erfindung ein Parameterauswahlmodul 14 zusätzlich zu dem Speichermodul 11, dem Matrixberechnungsmodul 13 und dem Parameterkorrekturmodul 15 vorgesehen. In einer beispielhaften Ausführungsform, die in 2 gezeigt ist, ist ein Modelländerungsmodul 12 zusätzlich zu dem Speichermodul 11, dem Matrixberechnungsmodul 13 und dem Parameterkorrekturmodul 15 vorgesehen. In einer beispielhaften Ausführungsform, die in 3 gezeigt ist, ist das Parameterauswahlmodul 14 zusätzlich zu dem Speichermodul 11, dem Matrixberechnungsmodul 13 und dem Parameterkorrekturmodul 15 vorgesehen.
  • Eine Offline-Programmiereinrichtung 1 gemäß einer ersten Ausführungsform der vorliegenden Erfindung wird nachfolgend mit Bezug auf die Zeichnungen ausführlich beschrieben.
  • Als Bauteile, die miteinander über einen Bus verbunden sind, obgleich er nicht in den Figuren gezeigt ist, ist die Offline-Programmiereinrichtung 1 dieser Ausführungsform vorgesehen mit: einer CPU (Central Processing Unit - Zentraleinheit); einer Hauptspeichereinrichtung wie einem ROM (Read Only Memory - Nur-Lesespeicher), einem RAM (Random Access Memory - Lese-Schreibspeicher) oder Ähnlichem; einer Hilfsspeichereinrichtung wie einem Festplattenlaufwerk oder Ähnlichem; einer Eingabeeinrichtung wie einer Tastatur, einer Maus, einem Touchscreen oder Ähnlichem; einer Ausgabeeinrichtung wie einem Bildschirm oder Ähnlichem; und einer externen Schnittstelle, die verschiedene Daten mit externer Ausrüstung wie einer Robotersteuereinrichtung oder Ähnlichem kommuniziert. Mit anderen Worten ist die Offline-Programmiereinrichtung 1 dieser Ausführungsform mit einem Computer vorgesehen. Die Hilfsspeichereinrichtung speichert verschiedene Programme, und verschiedene Verarbeitungstypen werden von der CPU ausgeführt, die die Programme von der Hilfsspeichereinrichtung an die Hauptspeichereinrichtung wie das RAM oder Ähnliches ausliest und die Programme ausführt.
  • Wie in 1 gezeigt, ist die Offline-Programmiereinrichtung 1 gemäß dieser Ausführungsform als funktionale Blöcke, die von der CPU auszuführen sind, vorgesehen mit: dem Speichermodul 11; dem Modelländerungsmodul 12; dem Matrixberechnungsmodul 13; dem Parameterauswahlmodul 14; und dem Parameterkorrekturmodul 15.
  • Der Modelländerungsmodul 12 ist mit dem Speichermodul 11 und dem Matrixberechnungsmodul 13 verbunden. Das Matrixberechnungsmodul 13 ist mit dem Speichermodul 11, dem Modelländerungsmodul 12, dem Parameterauswahlmodul 14 und dem Parameterkorrekturmodul 15 verbunden. Das Parameterauswahlmodul 14 ist mit dem Speichermodul 11, dem Matrixberechnungsmodul 13 und dem Parameterkorrekturmodul 15 verbunden. Das Parameterkorrekturmodul 15 ist mit dem Speichermodul 11, dem Matrixberechnungsmodul 13 und dem Parameterauswahlmodul 14 verbunden.
  • Das Speichermodul 11 besteht aus Abschnitten der zuvor beschriebenen Hauptspeichereinrichtung und Hilfsspeichereinrichtung, und ist ausgestaltet, Referenzkoordinatensysteme, die für individuelle Modelle des Roboters festgelegt sind, ein Benutzerkoordinatensystem, das von einem Benutzer definiert wird, ein Roboterbetriebsprogramm (nachfolgend als Roboterprogramm bezeichnet) und so weiter zu speichern. Es ist zu beachten, dass die Referenzkoordinatensysteme so festgelegt sind, dass beispielsweise ein Überschneiden zwischen der Mitte einer Drehachse, die eine erste Achse des Roboters ist, und einer horizontalen Ebene, umfassend die Mitte einer Drehachse, die eine zweite Achse des Roboters ist, als ihr Ursprung dient, wie in 6 gezeigt.
  • Nach Empfangen einer Modelländerungsanweisung von dem Benutzer ändert das Modelländerungsmodul 12 das Modell des Roboters, der ein Roboterprogramm ausführt, das in dem Speichermodul 11 gespeichert ist, und gibt eine Benachrichtigung an das Matrixberechnungsmodul 13 aus, die angibt, dass eine Modelländerung stattgefunden hat.
  • Nach Empfangen der Benachrichtigung von dem Modelländerungsmodul 12 berechnet das Matrixberechnungsmodul 13 eine Umwandlungsmatrix zum Ausführen einer homogenen Transformation auf der Grundlage des Referenzkoordinatensystems, das für das Modell des Roboters vor der Modelländerung festgelegt wurde, die in dem Speichermodul 11 gespeichert ist, und dem Referenzkoordinatensystem, das für das Modell des Roboters nach der Modelländerung festgelegt wurde, die in dem Speichermodul 11 von dem Modelländerungsmodul 12 gespeichert ist. Zusätzlich gibt das Matrixberechnungsmodul 13 an das Parameterauswahlmodul 14 eine Benachrichtigung aus, die angibt, dass die Umwandlungsmatrix berechnet worden ist, und überträgt die berechnete Umwandlungsmatrix an das Parameterkorrekturmodul 15.
  • Nach Empfangen der Benachrichtigung von dem Matrixberechnungsmodul 13, zeigt das Parameterauswahlmodul 14 Listen der Roboterprogramme und der Benutzerkoordinatensysteme an, die in dem Speichermodul 11 auf dem Bildschirm gespeichert sind, und fordert den Benutzer auf, einen Positionsparameter wie Positionsdaten auszuwählen, die in einem Roboterprogramm oder einem Benutzerkoordinatensystem, auf das die Umwandlungsmatrix angewandt wird, die von dem Matrixberechnungsmodul 13 berechnet wird, umfasst sind. Zusätzlich gibt das Parameterauswahlmodul 14 eine Benachrichtigung über das Roboterprogramm und/oder das Benutzerkoordinatensystem, das von dem Benutzer ausgewählt wurde, an das Parameterkorrekturmodul 15 aus.
  • Das Parameterkorrekturmodul 15 wendet die Umwandlungsmatrix, die von dem Matrixberechnungsmodul 13 berechnet wurde, auf den Positionsparameter an, wie den Teachpunkt des Roboterprogramms und/oder das Benutzerkoordinatensystem, das in dem Parameterauswahlmodul 14 ausgewählt wurde, und korrigiert den Positionsparameter, sodass der Positionsparameter, in dem das Referenzkoordinatensystem für den Roboter vor der Modelländerung als Referenz dient, in den Positionsparameter umgewandelt wird, in dem das Referenzkoordinatensystem für den Roboter nach der Modelländerung als Referenz dient. Mit anderen Worten wird der Positionsparameter automatisch korrigiert, sodass die absoluten Positionen des Positionsparameters vor und nach der Modelländerung gleich zueinander werden. Zusätzlich speichert das Parameterkorrekturmodul 15 das Roboterprogramm und/oder das Benutzerkoordinatensystem, umfassend den korrigierten Positionsparameter, in dem Speichermodul 11.
  • Als nächstes wird ein Positionsparameterkorrekturverfahren dieser Ausführungsform, das von der so konfigurierten Offline-Programmiereinrichtung 1 ausgeführt wird, mit Bezug auf 1 und 5 beschrieben. Nachfolgend wird das Verfahren in Bezug auf ein Beispiel beschrieben, in dem das Robotermodell von einem Roboter A zu einem Roboter B von 6 geändert wird.
  • Zunächst wird in dem Modelländerungsmodul 12 gemäß der Modelländerungsanweisung, die von dem Benutzer eingegeben wird, die das Ändern des Robotermodells von dem Roboter A zu dem Roboter B anweist, das Ziel, für das das Roboterprogramm, das in dem Speichermodul 11 gespeichert ist, ausgeführt wird, von dem Roboter A zu dem Roboter B (Schritt S1 in 5) geändert.
  • Es ist zu beachten, dass es bevorzugt ist, obgleich die Modelländerungsanweisung von dem Benutzer mittels eines beliebigen Verfahrens gegeben werden kann, beispielsweise ein Verfahren einzusetzen, in dem in der Offline-Programmiereinrichtung eine Liste, umfassend alle Modelle des Roboters, angezeigt wird, wenn der Benutzer eine „Robotermodelländerung“-Schaltfläche drückt, und das Robotermodell geändert wird, wenn der Benutzer das zu verwendende Robotermodell nach der Änderung auswählt, und eine „OK“-Schaltfläche drückt.
  • Als nächstes wird, nach Empfangen von dem Modelländerungsmodul 12 der Benachrichtigung, die angibt, dass das Robotermodell von dem Roboter A zu dem Roboter B geändert worden ist, in dem Matrixberechnungsmodul 13 bestimmt, ob ein Referenzkoordinatensystem ΣA für den Roboter A vor der Modelländerung, das in dem Speichermodul 11 gespeichert wurde, unterschiedlich zu einem Referenzkoordinatensystem ΣB für den Roboter B nach der Modelländerung ist, das in dem Speichermodul 11 gespeichert ist (Schritt S2 von 5). In dem Fall, in dem bestimmt wird, dass das Referenzkoordinatensystem ΣA und das Referenzkoordinatensystem ΣB identische Koordinatensysteme sind, wird die Verarbeitung beendet.
  • In dem Fall, in dem bestimmt wird, dass das Referenzkoordinatensystem ΣA und das Referenzkoordinatensystem ΣB unterschiedliche Koordinatensysteme sind, wird in dem Matrixberechnungsmodul 13 eine Umwandlungsmatrix BTA zum Herbeiführen der Umwandlung von dem Referenzkoordinatensystem ΣB zu dem Referenzkoordinatensystem ΣA berechnet (Schritt S3 von 5). In dem Fall des Beispiels, das in 6 gezeigt ist, wird die Umwandlungsmatrix BTa durch den Ausdruck (1) dargestellt.
  • T B A = [ R B A P B A 0 1 ] = [ 1 0 0 0 0 1 0 0 0 0 1 75 0 0 0 1 ]
    Figure DE102018100420A1_0001
  • Hier stellt BRA eine Rotationsmatrix des Referenzkoordinatensystems ΣA in Bezug auf das Referenzkoordinatensystem ΣB dar, und BPA stellt einen Positionsvektor des Referenzkoordinatensystems ΣA in Bezug auf das Referenzkoordinatensystem ΣB dar.
  • Als nächstes wählt der Benutzer nach Empfangen einer Benachrichtigung, die angibt, dass die Umwandlungsmatrix BTA berechnet worden ist, in dem Parameterauswahlmodul 14 ein Roboterprogramm oder ein Benutzerkoordinatensystem aus, auf das die berechnete Umwandlungsmatrix BTA angewandt wird (Schritt S4 in 5).
  • Auf diese Weise ist es möglich zu verhindern, indem der Benutzer aufgefordert wird, das Roboterprogramm oder das Benutzerkoordinatensystem, auf das die Umwandlungsmatrix BTA angewandt wird, ausdrücklich auszuwählen, dass die Umwandlungsmatrix BTA auf einen Positionsparameter angewandt wird, auf den ihre Anwendung nicht erfolgen sollte. Weil die Umwandlungsmatrix BTA nicht auf einen Positionsparameter angewandt werden sollte, in dem das Referenzkoordinatensystem für den Roboter A, welches der Roboter vor der Modelländerung ist, nicht festgelegt ist, sodass es als dessen Referenz dient, wird beispielsweise verhindert, dass Roboterprogramme und Benutzerkoordinatensysteme, umfassend solch einen Positionsparameter, ausgewählt werden.
  • Es ist zu beachten, dass es beim Auffordern des Benutzers, den Positionsparameter auszuwählen, bevorzugt ist, Listen der Roboterprogramme und der Benutzerkoordinatensysteme auf dem Bildschirm anzuzeigen, und dem Benutzer zu erlauben, ein Roboterprogramm oder ein Benutzerkoordinatensystem auszuwählen, das als ein Korrekturziel von den aufgelisteten Posten dient. Alternativ wird der Benutzer möglicherweise zuerst abgefragt, ob der Positionsparameter zu korrigieren ist oder nicht, und die zuvor beschriebenen Listen werden möglicherweise in dem Fall angezeigt, in dem der Benutzer eine Antwort wiedergibt, die angibt, dass die Korrektur ausgeführt werden wird, und die Verarbeitung wird möglicherweise in dem Fall beendet, in dem der Benutzer eine Antwort wiedergibt, die angibt, dass die Korrektur nicht auszuführen ist.
  • Als nächstes wird in dem Parameterkorrekturmodul 15, durch Anwenden der Umwandlungsmatrix BTA, die von dem Matrixberechnungsmodul 13 berechnet wird, auf den Positionsparameter, der in dem Roboterprogramm umfasst ist, und das Benutzerkoordinatensystem, das in dem Parameterauswahlmodul 14 ausgewählt wurde, der Positionsparameter korrigiert (Schritt S5 von 5). Insbesondere wird, wie in Ausdruck (2) angegeben, durch Multiplizieren eines Punkts, der von einem Vektor Ar basierend auf dem Referenzkoordinatensystem ΣA von der Umwandlungsmatrix BTA ausgedrückt wird, ein Punkt, der von einem Vektor Br basierend auf dem Referenzkoordinatensystem ΣB ausgedrückt wird, erhalten.
  • [ r B 1 ] = T B A [ r A 1 ]
    Figure DE102018100420A1_0002
  • Wie zuvor beschrieben worden ist, ist es mit dieser Ausführungsform möglich, weil es möglich ist, den Positionsparameter automatisch umzuwandeln, wie den Teachpunkt, der in dem Roboterprogramm, dem Benutzerkoordinatensystem oder Ähnlichem, das von dem Benutzer ausgewählt wird, umfasst ist, die Mannstunden zu vermindern, die für den Benutzer erforderlich sind, um den Positionsparameter zu korrigieren.
  • Wie zuvor beschrieben worden ist, sind, obgleich die erste Ausführungsform der vorliegenden Erfindung ausführlich mit Bezug auf die Zeichnungen beschrieben worden ist, spezifische Ausgestaltungen nicht auf diese Ausführungsform begrenzt, und Veränderungen der Ausgestaltung oder Ähnliches innerhalb eines Bereichs, der nicht von dem Geltungsbereich der vorliegenden Erfindung abweicht, sind ebenfalls umfasst.
  • Obgleich die zuvor beschriebene erste Ausführungsform in Bezug auf das Beispiel beschrieben worden ist, in dem das Referenzkoordinatensystem geändert wird, wenn das Robotermodell geändert wird, ist sie nicht darauf begrenzt. Beispielsweise ist es in dem Fall zulässig, in dem nur die Montageposition eines Roboters des gleichen Modells geändert wird, ohne das Robotermodell zu ändern, eine Ausgestaltung anzuwenden, in der wie in einer dritten Ausführungsform, die in 3 gezeigt ist, oder einer vierten Ausführungsform, die in 4 gezeigt ist, das Matrixberechnungsmodul 13 möglicherweise direkt eine Anweisung zum Ändern des Referenzkoordinatensystems von dem Benutzer erhält, anstatt die Modelländerungsanweisung von dem Benutzer, und möglicherweise die Umwandlungsmatrix auf der Grundlage dieser Anweisung zum Ändern des Referenzkoordinatensystems berechnet. In diesem Fall umfasst die Anweisung zum Ändern des Referenzkoordinatensystems möglicherweise eine relative Positionsbeziehung zwischen dem Referenzkoordinatensystem vor der Änderung und dem Referenzkoordinatensystem nach der Änderung.
  • Obgleich angenommen wird, dass die zuvor beschriebene erste Ausführungsform mit dem Parameterauswahlmodul 14 vorgesehen ist, wird zusätzlich möglicherweise in dem Fall, in dem ein Roboterprogramm oder ein Benutzerkoordinatensystem, umfassend den Positionsparameter, auf den die Umwandlungsmatrix angewandt werden sollte, im Voraus festgelegt wird, mit anderen Worten in dem Fall, in dem ein Positionsparameter, der auf der Grundlage des Referenzkoordinatensystems erzeugt wird, bevor die Änderung bereits bekannt ist, wie in einer zweiten Ausführungsform, die in 2 gezeigt ist, oder der vierten Ausführungsform, die in 4 gezeigt ist, eine Ausgestaltung angewandt, in der das Parameterauswahlmodul 14 nicht vorgesehen ist. In diesem Fall wird die Umwandlungsmatrix in dem Parameterkorrekturmodul 15 möglicherweise auf alle Positionsparameter angewandt, die auf der Grundlage des Referenzkoordinatensystems vor der Änderung erzeugt werden.
  • Bezugszeichenliste
  • 1
    Programmiereinrichtung
    11
    Speichermodul
    12
    Modelländerungsmodul
    13
    Matrixberechnungsmodul
    14
    Parameterauswahlmodul
    15
    Parameterkorrekturmodul

Claims (6)

  1. Offline-Programmiereinrichtung, die, während sie offline ist, ein Programm zum Betreiben eines Roboters erzeugt, wobei, wenn ein Koordinatensystem geändert wird, das als Referenz für den Roboter dient, ein Positionsparameter, der auf der Grundlage eines Koordinatensystems vor der Änderung erzeugt wird, automatisch auf der Grundlage des Koordinatensystems vor der Änderung und eines Koordinatensystems nach der Änderung korrigiert wird, sodass absolute Positionen des Positionsparameters vor und nach der Änderung gleich zueinander werden.
  2. Offline-Programmiereinrichtung, die, während sie offline ist, ein Programm zum Betreiben eines Roboters erzeugt, wobei die Offline-Programmiereinrichtung umfasst: ein Matrixberechnungsmodul, das eine Umwandlungsmatrix berechnet, mittels der, wenn ein Koordinatensystem geändert wird, das als Referenz für den Roboter dient, das Koordinatensystem vor der Änderung in ein Koordinatensystem nach der Änderung umgewandelt wird; ein Parameterauswahlmodul, das einen Positionsparameter auswählt, auf den die Umwandlungsmatrix angewandt wird; und ein Parameterkorrekturmodul, das den ausgewählten Positionsparameter korrigiert, indem er die Umwandlungsmatrix darauf anwendet.
  3. Offline-Programmiereinrichtung nach Anspruch 1 oder 2, wobei das Koordinatensystem, das als Referenz für den Roboter dient, geändert wird, wenn das Modell des Roboters geändert wird.
  4. Offline-Programmiereinrichtung nach einem beliebigen der Ansprüche 1 bis 3, wobei der Positionsparameter Positionsdaten umfasst, die als Referenz in dem Betriebsprogramm dienen.
  5. Positionsparameterkorrekturverfahren in einer Offline-Programmiereinrichtung, die, während sie offline ist, ein Programm zum Betreiben eines Roboters erzeugt, wobei, wenn ein Koordinatensystem geändert wird, das als Referenz für den Roboter dient, ein Positionsparameter, der auf der Grundlage eines Koordinatensystems vor der Änderung erzeugt wird, automatisch auf der Grundlage des Koordinatensystems vor der Änderung und eines Koordinatensystems nach der Änderung korrigiert wird, sodass absolute Positionen des Positionsparameters vor und nach der Änderung gleich zueinander werden.
  6. Positionsparameterkorrekturverfahren in einer Offline-Programmiereinrichtung, die, während sie offline ist, ein Programm zum Betreiben eines Roboters erzeugt, wobei das Positionsparameterkorrekturverfahren umfasst: einen Schritt zum Berechnen einer Umwandlungsmatrix, mit der, wenn ein Koordinatensystem, das als Referenz für den Roboter dient, geändert wird, das Koordinatensystem vor der Änderung in ein Koordinatensystem nach der Änderung umgewandelt wird; einen Schritt des Auswählens eines Positionsparameters, auf den die Umwandlungsmatrix angewandt wird; und einen Schritt des Korrigierens des ausgewählten Positionsparameters durch Anwenden der Umwandlungsmatrix darauf.
DE102018100420.6A 2017-01-17 2018-01-10 Offline-Programmierungseinrichtung und Positionsparameterkorrekturverfahren Active DE102018100420B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017006069A JP6464204B2 (ja) 2017-01-17 2017-01-17 オフラインプログラミング装置及び位置パラメータ補正方法
JP2017-006069 2017-01-17

Publications (2)

Publication Number Publication Date
DE102018100420A1 true DE102018100420A1 (de) 2018-07-19
DE102018100420B4 DE102018100420B4 (de) 2022-02-17

Family

ID=62716561

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018100420.6A Active DE102018100420B4 (de) 2017-01-17 2018-01-10 Offline-Programmierungseinrichtung und Positionsparameterkorrekturverfahren

Country Status (4)

Country Link
US (1) US10406691B2 (de)
JP (1) JP6464204B2 (de)
CN (1) CN108326837A (de)
DE (1) DE102018100420B4 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210334336A1 (en) * 2018-09-03 2021-10-28 Keio University Function generation device, function generation method, and storage medium
CN109877828B (zh) * 2019-01-18 2020-11-27 广东拓斯达科技股份有限公司 机器点位调试方法、装置、计算机设备和存储介质
CN110487233B (zh) * 2019-07-30 2021-06-15 东莞长盈精密技术有限公司 校正机器人用户坐标系的方法及***
CN112091966A (zh) * 2020-07-27 2020-12-18 一重集团大连核电石化有限公司 参数驱动马鞍形机器人轨迹离线生成方法
JP2022100660A (ja) * 2020-12-24 2022-07-06 セイコーエプソン株式会社 ロボットの制御プログラムを作成する処理をプロセッサーに実行させるコンピュータープログラム、並びに、ロボットの制御プログラムを作成する方法及びシステム
CN112904790A (zh) * 2020-12-29 2021-06-04 武汉思德立科技有限公司 一种通用性自动化设备的可编程控制装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4456961A (en) 1982-03-05 1984-06-26 Texas Instruments Incorporated Apparatus for teaching and transforming noncoincident coordinate systems
JPH0789287B2 (ja) * 1985-11-07 1995-09-27 三菱電機株式会社 ロボットのプログラミング方法
JPS63259703A (ja) 1987-04-17 1988-10-26 Hitachi Ltd 教示デ−タ変換機能を有する産業用ロボツト
JPH01283603A (ja) 1988-05-11 1989-11-15 Fanuc Ltd ロボットオフラインティーチング方式
JPH03251378A (ja) 1990-02-28 1991-11-08 Fanuc Ltd ロボットのキャリブレーション方式
JPH0519840A (ja) * 1991-07-12 1993-01-29 Fanuc Ltd オフライン検証方式
JP2702320B2 (ja) * 1991-07-26 1998-01-21 川崎重工業株式会社 ロボットの制御装置
JPH0619522A (ja) 1992-06-29 1994-01-28 Hitachi Constr Mach Co Ltd ロボット制御装置
KR930703635A (ko) 1991-11-26 1993-11-30 오까다 하지메 로보트 제어장치
JPH0695730A (ja) 1992-09-11 1994-04-08 Amada Co Ltd ロボットの姿勢制御方法
GB9424707D0 (en) * 1994-12-07 1995-02-01 Robot Simulations Ltd Control of industrial robots
JP3541510B2 (ja) 1995-07-28 2004-07-14 日産自動車株式会社 ロボット制御装置
JPH1083208A (ja) 1996-09-05 1998-03-31 Matsushita Electric Ind Co Ltd ロボット間相対位置演算機構
JPH11110026A (ja) * 1997-10-01 1999-04-23 Honda Motor Co Ltd ロボットのティーチングデータ変換装置およびその方法
KR100345150B1 (ko) * 2000-09-29 2002-07-24 현대자동차주식회사 레이저 측정기를 이용한 로봇 위치 보정 방법
JP5971842B2 (ja) 2012-03-26 2016-08-17 株式会社ダイヘン ロボット制御装置
CN105073349B (zh) 2013-03-19 2017-05-10 松下知识产权经营株式会社 机器人***的控制方法以及机器人***
JP6360301B2 (ja) * 2013-12-25 2018-07-18 川崎重工業株式会社 動作プログラム作成方法およびロボットの制御方法
JP6126067B2 (ja) 2014-11-28 2017-05-10 ファナック株式会社 工作機械及びロボットを備えた協働システム
CN104729407B (zh) 2015-03-26 2018-02-02 北京星航机电装备有限公司 机器人基坐标系与世界坐标系之间关系的自动确定方法
JP6676286B2 (ja) * 2015-05-12 2020-04-08 キヤノン株式会社 情報処理方法、および情報処理装置
CN105066831A (zh) 2015-09-09 2015-11-18 大族激光科技产业集团股份有限公司 一种单一或多机器人***协同工作坐标系的标定方法
CN106182018A (zh) 2016-07-30 2016-12-07 福州大学 一种基于工件三维图形的磨抛工业机器人离线编程方法
JP2018020412A (ja) * 2016-08-04 2018-02-08 セイコーエプソン株式会社 シミュレーション装置、ロボット制御装置およびロボット

Also Published As

Publication number Publication date
US20180200890A1 (en) 2018-07-19
JP6464204B2 (ja) 2019-02-06
US10406691B2 (en) 2019-09-10
JP2018114576A (ja) 2018-07-26
CN108326837A (zh) 2018-07-27
DE102018100420B4 (de) 2022-02-17

Similar Documents

Publication Publication Date Title
DE102018100420B4 (de) Offline-Programmierungseinrichtung und Positionsparameterkorrekturverfahren
DE102015000587B4 (de) Roboterprogrammiervorrichtung zum Erstellen eines Roboterprogramms zum Aufnehmen eines Bilds eines Werkstücks
DE102018008395B4 (de) Robotereinlernvorrichtung zum melden oder korrigieren einer positionsabweichung von einlernpunkten oder einer einlernlinie
DE102016012779B4 (de) Offline-Roboterprogrammiervorrichtung
DE102012021374B4 (de) Roboterprogrammiervorrichtung
DE102013113165A1 (de) Kalibrierungsverfahren für Robotersystem
DE112017002498B4 (de) Robotervorgang-auswertungseinrichtung, robotervorgang-auswertungsverfahren und robotersystem
DE102017211641B4 (de) Roboter-Schwerpunktanzeigevorrichtung, Roboter-Steuerungsvorrichtung und Roboter-Simulationsvorrichtung
DE102017003943A1 (de) Zellensteuervorrichtung zum Optimieren von Bewegungen eines Produktionssystems, das Industriemaschinen umfasst
DE10352815B4 (de) Simulationsverfahren für eine Bearbeitung eines Werkstücks durch eine Werkzeugmaschine und korrespondierender Rechner
EP2453326B1 (de) Verfahren und System zur Bedienung einer Maschine aus der Automatisierungstechnik
DE102015004483A1 (de) Robotersteuerung und Robotersystem zum Bewegen eines Roboters als Reaktion auf eine Kraft
DE102016004264A1 (de) System zur digitalen Unterstützung eines Arbeitsprozesses
DE68926614T2 (de) Automatisches sollwert-bereitstellungsverfahren für ein sichtsensorsystem
DE102019117877A1 (de) Roboterprogrammgenerierungsvorrichtung
DE102009020307A1 (de) Simulator für eine Sichtprüfungsvorrichtung
EP2977148A1 (de) Verfahren und vorrichtung zum steuern eines roboters
EP3760390A1 (de) Durchführen einer vorgegebenen aufgabe mithilfe wenigstens eines roboters
DE112016007339T5 (de) Simulationsvorrichtung
DE102017216093B4 (de) Verfahren zur Parametrierung eines robotischen Manipulators
DE102016122811B4 (de) Controller, der Mittel zur Bestätigung in Vorbereitung auf Synchronbetrieb beim Lehren von Daten beinhaltet
DE112018000136B4 (de) Vorrichtung zur Auswahl einer Elektromotorleistung, Leistungsauswahlverfahren und Leistungsauswahlprogramm
DE102020005645A1 (de) Robotersystem
DE3855103T2 (de) Verfahren zur verbesserung eines bildelementes
DE102020123255A1 (de) Robotersteuervorrichtung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final