DE112021005036T5 - Trainingsvorrichtung zur Angabe des Trainingspunkts durch direkten Trainingsbetrieb, Robotersteuerungsvorrichtung und Computerprogramm für Trainingsvorrichtung - Google Patents

Trainingsvorrichtung zur Angabe des Trainingspunkts durch direkten Trainingsbetrieb, Robotersteuerungsvorrichtung und Computerprogramm für Trainingsvorrichtung Download PDF

Info

Publication number
DE112021005036T5
DE112021005036T5 DE112021005036.2T DE112021005036T DE112021005036T5 DE 112021005036 T5 DE112021005036 T5 DE 112021005036T5 DE 112021005036 T DE112021005036 T DE 112021005036T DE 112021005036 T5 DE112021005036 T5 DE 112021005036T5
Authority
DE
Germany
Prior art keywords
robot
teaching
command
direct
teaching point
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.)
Pending
Application number
DE112021005036.2T
Other languages
English (en)
Inventor
Shintaro Niimura
Gou Inaba
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 DE112021005036T5 publication Critical patent/DE112021005036T5/de
Pending legal-status Critical Current

Links

Images

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/1656Programme controls characterised by programming, planning systems for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • 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/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • 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/409Numerical 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 using manual data input [MDI] or by using control panel, e.g. controlling functions with the panel; characterised by control panel details or by setting parameters
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/06Programme-controlled manipulators characterised by multi-articulated arms
    • 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/39438Direct programming at the console
    • 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/39443Portable, adapted to handpalm, with joystick, function keys, display

Landscapes

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

Abstract

Eine Anzeigeeinheit dieser Robotersteuerungsvorrichtung zeigt ein Betriebsprogramm an, das einen direkten Trainingsbetriebsbefehl vor der Aufzeichnung einer Positionsinformation eines Trainingspunktes umfasst. Wenn ein Arbeiter einen direkten Trainingsbetrieb durch Auswählen eines direkten Trainingsbetriebsbefehls startet, stellt eine Trainingspunkt-Einstelleinheit einen Trainingspunkt auf der Basis der Position und der Haltung eines Roboters ein, die während einer Periode erfasst wurden, in der der Arbeiter Bestandteile des Roboters bewegt hat. Eine Befehlserzeugungseinheit erzeugt einen Roboter-Betriebsbefehl, in dem die Positionsinformation des von der Trainingspunkt-Einstelleinheit eingerichteten Trainingspunkts aufgezeichnet sind.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft eine Einlernvorrichtung, eine Robotersteuerung und ein Computerprogramm der Einlernvorrichtung, die einen Einlernpunkt durch einen direkten Einlernbetrieb einlernen.
  • STAND DER TECHNIK
  • Ein Robotergerät, das einen Roboter und ein Arbeitswerkzeug umfasst, wird auf der Basis eines Betriebsprogramms betrieben. In das Betriebsprogramm ist ein Betriebsbefehl zum Antreiben des Roboters oder des Arbeitswerkzeugs mit einer Befehlsanweisung geschrieben. Beispiele für die Befehlsanweisung der Robotervorrichtung umfassen eine Befehlsanweisung zum linearen Bewegen eines Werkzeugmittelpunkts des Roboters, eine Befehlsanweisung zum krummlinigen Bewegen des Werkzeugmittelpunkts und eine Befehlsanweisung zum Betrieb des Arbeitswerkzeugs.
  • Das Betriebsprogramm kann von einem Benutzer erzeugt werden, der ein Programmierhandgerät bedient. Beispielsweise stellt der Benutzer den Roboter auf eine gewünschte Position und Orientierung ein, indem er das Programmierhandgerät bedient, und der Benutzer lehrt die Position und die Orientierung des Roboters als Einlernpunkt. Das Betriebsprogramm kann auf der Basis einer Mehrzahl solcher Einlernpunkte erzeugt werden.
  • Aus dem Stand der Technik ist bekannt, dass ein Benutzer zum Einlernen eines Einlernpunkts einen an einem Handgelenk o. ä. eines Roboters befestigten Griff betätigt und direkt eine Position und eine Orientierung des Roboters verändert. Der Benutzer lehrt eine gewünschte Position und Orientierung des Roboters als Einlernpunkt ein. Ein Betrieb, bei dem der Benutzer einen Einlernpunkt durch direkte Änderung der Position und der Orientierung des Roboters einlernt, wird als direkter Einlernbetrieb bezeichnet.
  • Beim direkten Einlernbetrieb ist eine Steuerung zur Erfassung einer Position und einer Orientierung eines Roboters zu einer vorgegebenen Abtastzeit während einer Periode, in der ein Benutzer die Position und die Orientierung des Roboters ändert, bekannt (z. B. JP 2009-072833 A ). Es ist auch eine Steuerung zum Hinzufügen eines Befehls für einen Roboter zum Warten oder zum Ändern eines Arbeitszustands, nachdem ein Einlernpunkt durch Ändern der Position und der Orientierung des Roboters festgelegt wurde, bekannt (z. B. JP 2018-176288 A ).
  • [ZITIERLISTE]
  • [PATENTLITERATUR]
    • [PTL 1] JP 2009-072833 A
    • [PTL 2] JP 2018-176288 A
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • [TECHNISCHES PROBLEM]
  • Bei einem direkten Einlernbetrieb, wenn eine Mehrzahl von Einlernpunkten zusammen gespeichert werden, ist ein großer Arbeitsaufwand erforderlich, wie z. B. die Einstellung von Parametern zur Bestimmung der Anzahl und des Intervalls der Einlernpunkte und Vorgänge zum Starten oder Stoppen von Einlernpunkten. Ein Gerät nach dem Stand der Technik hat das Problem, dass die Bildschirme für diese Vorgänge nicht organisiert sind, so dass die Vorgänge kompliziert werden. Ein Einlernpunkt, der eingelernt wird, dient als Betriebsprogramm eines Roboters, aber das Verständnis der Beziehung zwischen jeder Einstellung und jedem Betrieb und einer Mehrzahl von Einlernpunkten, die dem Betriebsprogramm hinzugefügt werden, kann schwierig sein.
  • Beim direkten Einlernbetrieb verändert der Benutzer die Position und die Orientierung des Roboters, indem er die Komponente des Roboters bewegt. Daher ist die Feineinstellung der Position und Orientierung des Roboters schwierig. Beim direkten Einlernbetrieb wird eine grobe Position und Orientierung des Roboters festgelegt. Nach dem Speichern von Einlernpunkten müssen die Position und die Orientierung des Roboters feinjustiert werden. Ein Betriebsbefehl des Betriebsprogramms umfasst viele Betriebsbefehle ein, wie z. B. einen Betriebsbefehl, der vom Benutzer erzeugt wird, der den Roboter mit dem Programmierhandgerät bedient, zusätzlich zu einem Betriebsbefehl, der durch den direkten Einlernbetrieb erzeugt wird. Die einfache Betrachtung des Betriebsbefehls hat das Problem, dass es schwierig ist, einen Betriebsbefehl zu bestimmen, der Einlernpunkte umfasst, die durch den direkten Einlernbetrieb eingestellt wurden.
  • Wenn beispielsweise eine Trajektorie des Roboters erzeugt wird, kann der direkte Einlernbetrieb mehrfach durchgeführt werden. Der direkte Einlernbetrieb kann in einigen Abschnitten wiederholt werden, nachdem die Trajektorie des Roboters erzeugt wurde. In diesem Fall wird ein Betriebsbefehl in einem Abschnitt, in dem der direkte Einlernbetrieb durchgeführt wurde, gelöscht. Es besteht jedoch das Problem, dass Zeit benötigt wird, um einen Betriebsbefehl, der Einlernpunkte umfasst, die durch den direkten Einlernbetrieb definiert wurden, von anderen zu unterscheiden.
  • Auf diese Weise wird im einschlägigen Stand der Technik die Arbeit erschwert und der Arbeitsaufwand erhöht, um den direkten Einlernbetrieb durchzuführen. Dies führt zu dem Problem, dass die Erzeugung eines Betriebsprogramms Zeit erfordert.
  • [LÖSUNG DES PROBLEMS]
  • Ein erster Aspekt der vorliegenden Offenbarung ist eine Einlernvorrichtung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen. Die Einlernvorrichtung umfasst ein Anzeigeteil, das konfiguriert ist, ein Betriebsprogramm anzuzeigen. Die Einlernvorrichtung umfasst eine Einlernpunkt-Einstelleinheit, die konfiguriert ist, als einen Einlernpunkt eine Position und eine Orientierung des Roboters einzustellen, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt. Die Einlernvorrichtung umfasst eine Befehlserzeugungseinheit, die konfiguriert ist, einen in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts zu erzeugen. Das Anzeigeteil zeigt ein Betriebsprogramm an, das einen Betriebsbefehl für das direkte Einlernen, bevor eine Positionsinformation des Einlernpunkts aufgezeichnet wird, enthält. Wenn der Benutzer einen direkten Einlernvorgang durch Auswählen des Betriebsprogramms für direktes Einlernen beginnt, stellt die Einlernpunkt-Einstelleinheit einen oder mehrere Einlernpunkt(e) auf der Basis der Position und der Orientierung des Roboters ein und die Befehlserzeugungseinheit erzeugt einen Betriebsbefehl des Roboters, bei dem eine Positionsinformation des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts aufgezeichnet wird.
  • Ein zweiter Aspekt der vorliegenden Offenbarung ist eine Einlernvorrichtung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen. Die Einlernvorrichtung umfasst ein Anzeigeteil, das konfiguriert ist, ein Betriebsprogramm anzuzeigen. Die Einlernvorrichtung umfasst eine Einlernpunkt-Einstelleinheit, die konfiguriert ist, als einen Einlernpunkt eine Position und eine Orientierung des Roboters einzustellen, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt. Die Einlernvorrichtung umfasst eine Befehlserzeugungseinheit, die konfiguriert ist, einen in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts zu erzeugen. Die Befehlserzeugungseinheit erzeugt einen Betriebsbefehl für das direkte Einlernen, der eine Mehrzahl von Betriebsbefehlen des Roboters umfasst, auf der Basis einer Mehrzahl der durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkte. Das Anzeigeteil zeigt den Betriebsbefehl für das direkte Einlernen, der durch eine Befehlsanweisung oder ein Befehlsdiagramm konfiguriert ist, an.
  • Ein dritter Aspekt der vorliegenden Offenbarung ist ein Computerprogramm einer Einlernvorrichtung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen. Das Computerprogramm veranlasst einen Computer, eine Anzeigefunktion zum Anzeigen eines Betriebsprogramms auf einem Anzeigeteil auszuführen. Das Computerprogramm veranlasst den Computer, eine Einlernpunkt-Einstellfunktion zum Einstellen einer Position und einer Orientierung des Roboters, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt, als Einlernpunkt auszuführen. Das Computerprogramm veranlasst den Computer, eine Befehlserzeugungsfunktion zum Erzeugen eines in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts auszuführen. Die Anzeigefunktion umfasst eine Funktion zum Anzeigen eines Betriebsprogramms auf dem Anzeigeteil, das einen Betriebsbefehl für das direkte Einlernen, bevor eine Positionsinformation des Einlernpunkts aufgezeichnet wird, enthält. Wenn der Benutzer einen direkten Einlernvorgang durch Auswählen des Betriebsprogramms für direktes Einlernen beginnt, veranlasst das Computerprogramm den Computer, die Einlernpunkt-Einstellfunktion zum Einstellen eines Einlernpunkts oder mehrerer Einlernpunkte und die Befehlserzeugungsfunktion zum Erzeugen des Betriebsbefehls des Roboters auszuführen, bei dem eine Positionsinformation des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts aufgezeichnet wird.
  • Ein vierter Aspekt der vorliegenden Offenbarung ist Computerprogramm einer Einlernvorrichtung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen. Das Computerprogramm veranlasst einen Computer, eine Anzeigefunktion zum Anzeigen eines Betriebsprogramms auf einem Anzeigeteil auszuführen. Das Computerprogramm veranlasst den Computer, eine Einlernpunkt-Einstellfunktion zum Einstellen einer Position und einer Orientierung des Roboters, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt, als Einlernpunkt auszuführen. Das Computerprogramm veranlasst den Computer, eine Befehlserzeugungsfunktion zum Erzeugen eines in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts auszuführen. Die Befehlserzeugungsfunktion umfasst eine Funktion zum Erzeugen eines Betriebsbefehls zum direkten Einlernen, der eine Mehrzahl von Betriebsbefehlen des Roboters umfasst, auf der Basis einer Mehrzahl der durch die Einlernpunkt-Einstellfunktion eingestellten Einlernpunkte. Die Anzeigefunktion umfasst eine Funktion zum Anzeigen des Betriebsbefehls zum direkten Einlernen, der durch eine Befehlsanweisung oder ein Befehlsdiagramm konfiguriert ist.
  • Ein fünfter Aspekt der vorliegenden Offenbarung ist eine Robotersteuerung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen. Die Robotersteuerung umfasst eine Einlernpunkt-Einstelleinheit, die konfiguriert ist, als einen Einlernpunkt eine Position und eine Orientierung des Roboters einzustellen, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt. Die Robotersteuerung umfasst eine Befehlserzeugungseinheit, die konfiguriert ist, einen in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts zu erzeugen. Die Robotersteuerung ist konfiguriert, ein Anzeigeteil zu veranlassen, ein Betriebsprogramm anzuzeigen, das einen Betriebsbefehl für das direkte Einlernen, bevor eine Positionsinformation des Einlernpunkts aufgezeichnet wird, enthält. Wenn der Benutzer einen direkten Einlernvorgang durch Auswählen des Betriebsprogramms für direktes Einlernen beginnt, stellt die Einlernpunkt-Einstelleinheit einen oder mehrere Einlernpunkt(e) auf der Basis der Position und der Orientierung des Roboters ein und die Befehlserzeugungseinheit erzeugt einen Betrieb des Roboters, bei dem eine Positionsinformation des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts aufgezeichnet wird.
  • Ein sechster Aspekt der vorliegenden Offenbarung ist eine Robotersteuerung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen. Die Robotersteuerung umfasst eine Einlernpunkt-Einstelleinheit, die konfiguriert ist, als einen Einlernpunkt eine Position und eine Orientierung des Roboters einzustellen, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt. Die Robotersteuerung umfasst eine Befehlserzeugungseinheit, die konfiguriert ist, einen in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts zu erzeugen. Die Befehlserzeugungseinheit erzeugt einen Betriebsbefehl für das direkte Einlernen, der eine Mehrzahl von Betriebsbefehlen des Roboters umfasst, auf der Basis einer Mehrzahl der durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkte. Die Robotersteuerung ist konfiguriert, ein Anzeigeteil zu veranlassen, den Betriebsbefehl für das direkte Einlernen, der durch eine Befehlsanweisung oder ein Befehlsdiagramm konfiguriert ist, anzuzeigen.
  • [VORTEILHAFTE WIRKUNG DER ERFINDUNG]
  • Gemäß einem Aspekt der vorliegenden Offenbarung ist es möglich, eine Einlernvorrichtung, eine Robotersteuerung und ein Computerprogramm der Einlernvorrichtung bereitzustellen, die auf einfache Weise ein Betriebsprogramm durch das Einlernen eines Einlernpunkts durch einen direkten Einlernbetrieb erzeugen können.
  • Figurenliste
    • 1 ist eine schematische Ansicht eines Robotergeräts gemäß einer Ausführungsform.
    • 2 ist ein Blockdiagramm des Robotergeräts.
    • 3 ist ein Bild, das ein erstes Betriebsprogramm umfasst, das auf einem Anzeigeteil in dieser Ausführungsform angezeigt wird.
    • 4 ist ein weiteres Bild des ersten Betriebsprogramms.
    • 5 ist ein Bild eines Prozesses zum Anordnen von Symbolen in einem Programmanzeigebereich bei der Erzeugung des ersten Betriebsprogramms.
    • 6 ist ein Bild nach dem Anordnen von Symbolen in dem Programmanzeigebereich.
    • 7 ist ein Bild zur Erläuterung eines ersten Prozesses eines direkten Einlernbetriebs bei der Erzeugung des ersten Betriebsprogramms.
    • 8 ist ein Bild zur Erläuterung eines zweiten Prozesses des direkten Einlernbetriebs bei der Erzeugung des ersten Betriebsprogramms.
    • 9 ist ein Bild zur Erläuterung eines dritten Prozesses des direkten Einlernbetriebs beim Erzeugen des ersten Betriebsprogramms.
    • 10 ist ein Bild, das einen vierten Prozess des direkten Einlernbetriebs bei der Erzeugung des ersten Betriebsprogramms beschreibt.
    • 11 ist ein Bild eines weiteren Symbols für das direkte Einlernen in dieser Ausführungsform.
    • 12 ist ein Bild eines zweiten Betriebsprogramms, das auf dem Anzeigeteil in dieser Ausführungsform angezeigt wird.
    • 13 ist ein Bild während einer Periode, in der ein direkter Einlernbetrieb beim Erzeugen des zweiten Betriebsprogramms durchgeführt wird.
    • 14 ist ein Bild einer Mehrzahl von Befehlsanweisungen für einen Roboter, die in einer Befehlsanweisung für das direkte Einlernen enthalten sind.
    • 15 ist ein Bild zum Ändern einer Befehlsanweisung für den Roboter, die in der Befehlsanweisung für das direkte Einlernen enthalten ist.
    • 16 ist ein Bild, das eine Trajektorie des Roboters auf der Basis der Befehlsanweisung für das direkte Einlernen zeigt.
  • BESCHREIBUNG VON AUSFÜHRUNGSFORMEN
  • Eine Einlernvorrichtung, eine Robotersteuerung und ein Computerprogramm der Einlernvorrichtung zum Einlernen eines Einlernpunkts eines Roboters in einer Ausführungsform werden unter Bezugnahme auf die 1 bis 16 beschrieben. In der vorliegenden Ausführungsform wird ein direkter Einlernbetrieb von einem Benutzer durchgeführt, der einen Einlernpunkt durch direktes Betreiben eines Roboters einlernt.
  • 1 ist eine schematische Ansicht eines Robotergeräts in der vorliegenden Ausführungsform. Ein Robotergerät 8 umfasst eine Hand 2 als ein Arbeitswerkzeug (Endeffektor) und einen Roboter 1, der eine Position und eine Orientierung der Hand 2 ändert. Der Roboter 1 gemäß der vorliegenden Ausführungsform ist ein Gelenkroboter, der eine Mehrzahl von Gelenken umfasst.
  • Der Roboter 1 umfasst ein Basisteil 14, das an einer Installationsfläche befestigt ist, und eine Drehbasis 13, die von dem Basisteil 14 getragen wird. Die Drehbasis 13 ist so geformt, dass sie sich in Bezug auf das Basisteil 14 dreht. Der Roboter 1 umfasst einen oberen Arm 11 und einen unteren Arm 12. Der untere Arm 12 ist über das Gelenk drehbar an der Drehbasis 13 gelagert. Der obere Arm 11 ist über ein Gelenk drehbar an dem unteren Arm 12 gelagert. Außerdem dreht sich der obere Arm 11 um eine Drehachse, die parallel zur Erstreckungsrichtung des oberen Arms 11 verläuft.
  • Der Roboter 1 umfasst ein Handgelenk 15, das mit einem Endabschnitt des oberen Arms 11 gekoppelt ist. Das Handgelenk 15 ist über ein Gelenk drehbar an dem oberen Arm 11 gelagert. Das Handgelenk 15 umfasst einen Flansch 16, der drehbar ausgebildet ist. Die Hand 2 ist an dem Flansch 16 befestigt. Der Roboter 1 der vorliegenden Ausführungsform ist so konfiguriert, dass er eine Mehrzahl von Komponenten wie das Basisteil 14, die Drehbasis 13 und den unteren Arm 12 umfasst. Der Roboter 1 gemäß der vorliegenden Ausführungsform umfasst sechs Antriebswellen, ist aber nicht auf diese Konfiguration beschränkt. Es kann jeder beliebige Roboter eingesetzt werden, der in der Lage ist, das Arbeitswerkzeug zu bewegen.
  • Die Hand 2 der vorliegenden Ausführungsform ist ein Arbeitswerkzeug zum Greifen und Freigeben eines Werkstücks. Die Hand 2 ergreift das Werkstück durch Schlie-ßen von einander zugewandten Klauenteilen. Das Arbeitswerkzeug ist nicht auf die Hand beschränkt, die das Werkstück ergreift. Jedes beliebige Arbeitswerkzeug kann in Reaktion auf eine Aufgabe, die von einem Robotergerät ausgeführt wird, an einem Roboter angebracht werden. Wenn das Robotergerät z. B. Lichtbogenschweißen durchführt, kann ein Schweißbrenner an dem Roboter angebracht werden.
  • 2 ist ein Blockdiagramm, das das Robotergerät der vorliegenden Ausführungsform zeigt. Unter Bezugnahme auf 1 und 2 umfasst der Roboter 1 eine Roboterantriebsvorrichtung, die eine Position und eine Orientierung des Roboters 1 ändert. Die Roboterantriebsvorrichtung umfasst einen Roboterantriebsmotor 19, der die Komponente des Roboters 1 antreibt. Die Hand 2 umfasst eine Handantriebsvorrichtung zum Antreiben der Hand 2. Die Handantriebsvorrichtung umfasst eine Druckpumpe, ein Ventil oder ähnliches zum Antreiben von Klauenteilen der Hand 2.
  • Das Robotergerät 8 umfasst eine Robotersteuerung 4 zur Steuerung des Roboters 1 und der Hand 2. Die Robotersteuerung 4 umfasst einen Steuerungskörper 5. Der Steuerungskörper 5 umfasst eine arithmetische Verarbeitungsvorrichtung (Computer), die eine zentral Verarbeitungseinheit (Central Processing Unit, CPU) als Prozessor enthält. Die arithmetische Verarbeitungsvorrichtung umfasst einen Random Access Speicher (Random Access Memory, RAM) und einen Read Only Speicher (Read Only Memory, ROM) oder ähnliches, die über einen Bus mit der CPU verbunden sind. Ein Betriebsprogramm 32 enthält einen Betriebsbefehl zum Antreiben des Roboters 1 und der Hand 2. Das Robotergerät 8 wird auf der Basis eines Betriebsprogramms gesteuert und transportiert ein Werkstück.
  • Die arithmetische Verarbeitungsvorrichtung in der Robotersteuerung 4 umfasst ein Speicherteil 42, das eine vordefinierte Information speichert. Das Speicherteil 42 speichert eine Information, die sich auf die Steuerung des Roboters 1 und der Hand 2 bezieht. Das Betriebsprogramm 32 ist in dem Speicherteil 42 gespeichert. Das Speicherteil 42 kann durch ein nicht-transitorisches Speichermedium gebildet sein. Zum Beispiel kann das Speicherteil 42 durch ein Speichermedium gebildet sein, das eine Information speichern kann, wie z.B. ein flüchtiger Speicher, ein nichtflüchtiger Speicher, ein magnetisches Speichermedium, ein optisches Speichermedium oder ähnliches.
  • Die Robotersteuerung 4 umfasst eine Betriebssteuerungseinheit 43, die ein Befehlssignal überträgt. Die Betriebssteuerungseinheit 43 entspricht einem Prozessor, der gemäß dem Betriebsprogramm 32 angetrieben wird. Die Betriebssteuerungseinheit 43 ist so ausgebildet, dass sie eine in dem Speicherteil 42 gespeicherte Information auslesen kann. Der Prozessor dient als Betriebssteuerungseinheit 43, indem er das Betriebsprogramm 32 liest und die in dem Betriebsprogramm 32 definierte Steuerung durchführt.
  • Die Betriebssteuerungseinheit 43 überträgt ein Befehlssignal an ein Roboterantriebsteil 45 zum Antreiben des Roboters 1. Das Roboterantriebsteil 45 umfasst eine elektrische Schaltung zum Antreiben des Roboterantriebsmotors 19. Das Roboterantriebsteil 45 versorgt den Roboterantriebsmotor 19 auf der Basis des Befehlssignals mit Strom. Die Betriebssteuerungseinheit 43 überträgt auch ein Befehlssignal an ein Handantriebsteil 44 zum Antreiben der Hand 2. Das Handantriebsteil 44 umfasst eine elektrische Schaltung zum Antreiben der Handantriebsvorrichtung. Das Handantriebsteil 44 versorgt die Handantriebsvorrichtung auf der Basis des Befehlssignals mit Strom.
  • Die Robotersteuerung 4 umfasst ein Programmierhandgerät 49, das zum manuellen Antreiben des Roboters 1 ausgebildet ist. Das Programmierhandgerät 49 umfasst ein Anzeigeteil 50 mit einer Anzeigefunktion zum Anzeigen einer Information, die die Steuerung des Robotergeräts 8 betrifft, und ein Eingabeteil 51 mit einer Eingabefunktion, mit der der Benutzer eine beliebige Information eingibt. Das Anzeigeteil 50 kann durch ein Anzeigefeld, wie z.B. ein Flüssigkristallanzeigefeld, gebildet sein. Das Anzeigeteil 50 zeigt das Betriebsprogramm 32, ein Bild des Roboters 1 oder dergleichen an. Das Eingabeteil 51 kann durch eine Eingabevorrichtung wie eine Tastatur und einen Drehknopf gebildet sein. Der Benutzer kann die Position und die Orientierung des Roboters 1 manuell einstellen, indem er das Eingabeteil 51 bedient.
  • Das Anzeigeteil kann ein Touchpanel-Anzeigefeld umfassen. In diesem Fall kann der Benutzer das Robotergerät 8 durch Drücken einer auf dem Anzeigefeld angezeigten Taste bedienen. Das heißt, das Touchpanel-Anzeigefeld dient als Anzeigeteil und als Eingabeteil. Das Programmierhandgerät kann auch ein mobiles Endgerät wie z. B. ein Tablet umfassen. Die Robotersteuerung 4 umfasst in der vorliegenden Ausführungsform das Programmierhandgerät 49, ist aber nicht auf diese Konfiguration beschränkt. Das Programmierhandgerät kann getrennt von der Robotersteuerung angeordnet sein, und das Programmierhandgerät kann mit der Robotersteuerung verbunden sein.
  • Der Roboter 1 umfasst einen Positionsdetektor 18 als Zustandsdetektor zur Erfassung der Position und der Orientierung des Roboters 1. Der Positionsdetektor 18 der vorliegenden Ausführungsform ist an dem Roboterantriebsmotor 19 angebracht, der einer Antriebswelle einer Komponente, beispielsweise eines Arms, entspricht. Der Positionsdetektor 18 ist beispielsweise so ausgebildet, dass er einen Drehwinkel erfasst, wenn der Roboterantriebsmotor 19 antreibt.
  • In dem Robotergerät 8 der vorliegenden Ausführungsform ist ein Weltkoordinatensystem 91 festgelegt. In dem in 1 dargestellten Beispiel befindet sich ein Ursprung des Weltkoordinatensystems 91 auf der Basis 14 des Roboters 1. Das Weltkoordinatensystem 91 wird auch als Referenzkoordinatensystem des Roboters bezeichnet. Das Weltkoordinatensystem 91 ist ein Koordinatensystem, in dem eine Position des Ursprungs festgelegt ist und die Richtungen der Koordinatenachsen ebenfalls festgelegt sind.
  • In dem Robotergerät 8 ist ein Werkzeugkoordinatensystem 92 mit einem an einer beliebigen Position des Arbeitswerkzeugs festgelegten Ursprung festgelegt. Der Ursprung des Werkzeugkoordinatensystems 92 der vorliegenden Ausführungsform ist auf den Werkzeugmittelpunkt festgelegt. Wenn die Position und die Orientierung des Roboters 1 geändert werden, ändern sich auch die Position des Ursprungs und die Richtung des Werkzeugkoordinatensystems 92. Zum Beispiel entspricht die Position des Roboters 1 einer Position des Werkzeugmittelpunkts (Position des Ursprungs des Werkzeugkoordinatensystems 92). Die Orientierung des Roboters 1 entspricht auch der Richtung des Werkzeugkoordinatensystems 92 in Bezug auf das Weltkoordinatensystem 91.
  • 3 zeigt ein Bild, das ein erstes Betriebsprogramm in der vorliegenden Ausführungsform darstellt. 3 zeigt ein Bild 73, das auf dem Anzeigeteil 50 des Programmierhandgeräts 49 angezeigt wird. Das Bild 73 umfasst einen Trajektorieanzeigebereich 73a zum Anzeigen der Trajektorie der Position des Roboters 1. In dem Trajektorieanzeigebereich 73a wird ein Bild 81 des Roboters in einer perspektivischen Ansicht angezeigt. In dem Trajektorieanzeigebereich 73a kann die Trajektorie der Position des Roboters 1 während einer Periode angezeigt werden, in der Einlernpunkte durch den direkten Einlernbetrieb erfasst werden. Alternativ kann in dem Trajektorieanzeigebereich 73a die Trajektorie der Position des Roboters 1 in dem Betriebsprogramm angezeigt werden.
  • Das Bild 73 umfasst einen Programmanzeigebereich 73b zum Anzeigen eines Betriebsprogramms und einen Informationsanzeigebereich 73c zum Anzeigen einer Information, die das Betriebsprogramm betrifft. Ein erstes Betriebsprogramm 32 ist in dem Programmanzeigebereich 73b angezeigt. Das Betriebsprogramm enthält Betriebsbefehle für das Robotergerät 8. Die Betriebsprogramme umfassen zum Beispiel einen Betriebsbefehl des Roboters, einen Betriebsbefehl des Arbeitswerkzeugs und einen Betriebsbefehl einer Hilfsvorrichtung. Die Hilfsvorrichtung ist eine Vorrichtung, die um den Roboter herum angeordnet ist. Ein Beispiel für eine Hilfsvorrichtung kann einen Positionierer zum Drehen eines Werkstücks umfassen.
  • In dem ersten Betriebsprogramm 32 werden die Betriebsbefehle des Roboters 1 in den Symbolen 86a, 86b und 86g als Befehlsdiagramme erzeugt. Bei den Symbolen 86a, 86b und 86g handelt es sich um Hauptsymbole, die Hauptbetriebsbefehle des ersten Betriebsprogramms 32 anzeigen. Die Mehrzahl von Symbolen 86a, 86b und 86g werden auf einer Zeitleiste 73s in einer Reihe angezeigt. Beim Antreiben des Roboters 1 werden die jeweiligen Betriebsbefehle in der Reihenfolge entlang der Zeitleiste 73s ausgeführt, wie durch einen Pfeil 100 angezeigt.
  • Das Symbol 86a entspricht einem Betriebsbefehl zum Ändern der Position und der Orientierung des Roboters 1, so dass sich die Position des Roboters 1 linear bewegt. Das Symbol 86b entspricht einem Betriebsbefehl zum Ändern der Position und der Orientierung des Roboters 1, so dass sich die Position des Roboters 1 in einer kurvenförmigen Weise bewegt. In jedem der Symbole 86a und 86b ist ein Einlernpunkt definiert. Das erste Betriebsprogramm 32 umfasst ferner das Symbol 86g als Betriebsbefehl, der durch den direkten Einlernbetrieb erzeugt wird. In der vorliegenden Ausführungsform wird das durch den direkten Einlernbetrieb erzeugte Symbol als Symbol für das direkte Einlernen bezeichnet.
  • Der Informationsanzeigebereich 73c zeigt eine Registerkarte 73d zum Auswählen von Symbolen beim Erzeugen eines Betriebsprogramms und eine Registerkarte 73e zum Anzeigen einer Detailinformation zu jedem Symbol an. Durch Auswählen der Registerkarte 73e zum Anzeigen der Detailinformation wird eine für jedes Symbol definierte Betriebsbedingung zum Antreiben des Roboters 1 angezeigt. In diesem Beispiel ist das Symbol 86a, das das dem ersten Einlernpunkt entsprechende Symbol ist, bezeichnet, und die Registerkarte 73e wird ausgewählt.
  • In dem Informationsanzeigebereich 73c zeigt ein Einlernpunkt-Informationsbereich 73n das Koordinatensystem an, das zur Definition der Position und der Orientierung des Roboters verwendet wird, sowie Koordinatenwerte der Position und der Orientierung des Roboters an dem Einlernpunkt. In einem Betriebsinformationsbereich 73t des Informationsanzeigebereichs 73c werden eine Bewegungsgeschwindigkeit (Bewegungsgeschwindigkeit des Werkzeugmittelpunkts) und ein Betriebsformat des Roboters 1 definiert. Hier wird das Betriebsformat gewählt, bei dem die Trajektorie des Roboters durch den ersten Einlernpunkt führt.
  • Der Benutzer kann Elemente auswählen, die in dem Einlernpunkt-Informationsbereich 73n und dem Betriebsinformationsbereich 73t enthalten sind, und jedes der Elemente einstellen oder ändern. Zum Beispiel werden in dem Einlernpunkt-Informationsbereich 73n die Position und die Orientierung des Roboters durch die Koordinatenwerte des Weltkoordinatensystems 91 angegeben. Der Benutzer kann die Position und die Orientierung des Roboters an dem Einlernpunkt durch Eingeben von Koordinatenwerten einstellen oder ändern.
  • In dem Beispiel des Bildes 73 in 3 werden in dem Informationsanzeigebereich 73c ferner Tasten 73p, 73q und 73r angezeigt. Die Taste 73q ist eine Taste zur Umwandlung des in dem Einlernpunkt-Informationsbereich 73n angezeigten Koordinatensystems. Das Koordinatensystem, das die Position und die Orientierung des Roboters 1 angibt, kann geändert werden. Die Taste 73r ist eine Taste zum Antreiben des Roboters 1, so dass sich die Position und die Orientierung des Roboters an dem Einlernpunkt befinden, der dem ausgewählten Symbol 86a entspricht. Der Benutzer kann die aktuelle Position und Orientierung des Roboters durch Drücken dieser Taste überprüfen.
  • Die Taste 73p ist eine Taste zum Ändern und Speichern der Position und der Orientierung des Roboters an dem Einlernpunkt. Der Benutzer kann die Position und die Orientierung des Roboters an dem Einlernpunkt durch Betätigen des Eingabeteils 51 des Programmierhandgeräts 49 einstellen. Wenn sich der Roboter 1 in der gewünschten Position und Orientierung befindet, werden die Position und die Orientierung des Roboters 1 durch Drücken der Taste 73p fixiert. Die veränderte Position und Orientierung des Roboters 1 werden in dem Speicherteil 42 gespeichert.
  • In dem Betriebsprogramm der vorliegenden Ausführungsform kann ein Betriebsbefehl für das direkte Einlernen in einer Befehlsanweisung oder einem Befehlsdiagramm dargestellt werden. In dem ersten Betriebsprogramm 32 ist der Betriebsbefehl für das direkte Einlernen in dem Symbol 86g dargestellt. Das Symbol 86g entspricht einem Betriebsbefehl des Roboters auf der Basis einer Mehrzahl von Einlernpunkten, die während der Periode des direkten Einlernbetriebs eingestellt werden. Das Symbol 86g als Betriebsbefehl für das direkte Einlernen umfasst eine Mehrzahl von Betriebsbefehlen, wie z. B. lineare Bewegung oder kurvenförmige Bewegung. Das heißt, das Symbol 86g zeigt insgesamt eine Mehrzahl von Betriebsbefehlen für den Roboter an.
  • 4 zeigt ein Bild des ersten Betriebsprogramms, wenn ein Symbol für das direkte Einlernen erweitert ist. Das Anzeigeteil 50 kann den Betriebsbefehl für das direkte Einlernen in Reaktion auf eine Betätigung des Eingabeteils 51 durch den Benutzer erweitern und anzeigen. Das Anzeigeteil 50 zeigt eine Mehrzahl von Betriebsbefehlen des Roboters an, die in dem Betriebsbefehl für das direkte Einlernen umfasst sind. Wenn der Benutzer zweimal hintereinander auf das Symbol 86g drückt, erweitert sich das Anzeigeteil 50 und zeigt das Symbol 86g an. In der vorliegenden Ausführungsform wird die Form des Symbols 86g von einer viereckigen Form zu einer U-Form verformt. Dann wird die Mehrzahl von Symbolen 86b des Roboters, die den durch den direkten Einlernbetrieb eingelernten Einlernpunkten entsprechen, in einem durch das Symbol 86g bezeichneten Bereich angezeigt. Die Symbole 86b, die von dem Symbol 86g umgeben sind, sind Hilfssymbole. Wie weiter unten beschrieben wird, können durch Auswählen eines Symbols 86b aus der Mehrzahl von Symbolen 86b und Auswählen der Registerkarte 73e, die eine Detailinformation anzeigt, eine Detailinformation eines Betriebsbefehls einschließlich des durch den direkten Einlernbetrieb erzeugten Einlernpunkts angezeigt werden.
  • In den 3 und 4 werden Symbole als Betriebsbefehle zum Ändern der Position und der Orientierung des Roboters angezeigt, aber die Betriebsbefehle sind nicht auf diese Konfiguration beschränkt. Das Betriebsprogramm kann Symbole für beliebige Betriebsbefehle zur Steuerung des Robotergeräts umfassen. So kann das Betriebsprogramm beispielsweise ein Symbol für einen Betriebsbefehl zum Antreiben des Arbeitswerkzeugs oder einen Betriebsbefehl eines anderen Hilfsgeräts als den Roboter und das Arbeitswerkzeug umfassen. Das Befehlsdiagramm ist nicht auf ein Symbol beschränkt, es kann auch ein Block verwendet werden.
  • Als nächstes wird ein Verfahren zum Erzeugen des ersten Betriebsprogramms 32 der vorliegenden Ausführungsform beschrieben. Das Robotergerät 8 umfasst in der vorliegenden Ausführungsform eine Einlernvorrichtung, mit der der Benutzer einen direkten Einlernbetrieb durchführt. Beim direkten Einlernbetrieb lernt der Benutzer einen Einlernpunkt ein, indem er den Roboter 1 direkt bedient. Der Benutzer verändert die Position und die Orientierung des Roboters 1 durch Schieben oder Ziehen der Komponenten des Roboters 1. Zum Beispiel kann der Benutzer die Position und die Orientierung des Roboters ändern, indem er den Oberarm 11 oder das Handgelenk 15 des Roboters direkt schiebt.
  • Gemäß 2 dient die Robotersteuerung 4 der vorliegenden Ausführungsform als Einlernvorrichtung. Die Robotersteuerung 4 kann das Betriebsprogramm 32 zum Antreiben des Roboters 1 und der Hand 2 erzeugen. Das Speicherteil 42 speichert ein Erzeugungsprogramm 46 zum Erzeugen des Betriebsprogramms 32 durch den direkten Einlernbetrieb. Das Erzeugungsprogramm 46 entspricht einem Computerprogramm der Einlernvorrichtung zum Durchführen des direkten Einlernbetriebs.
  • Die Robotersteuerung 4 umfasst eine Betriebsprogrammerzeugungseinheit 61, die eine Betriebsprogrammerzeugungsfunktion zum Erzeugen oder Ändern des Betriebsprogramms 32 hat. Beim direkten Einlernbetrieb, wenn der Benutzer eine Kraft auf die Komponente des Roboters 1 ausübt, führt die Betriebsprogrammerzeugungseinheit 61 eine Steuerung der Änderung der Position und der Orientierung des Roboters 1 durch, so dass sich die Komponente des Roboters 1 in die Richtung bewegt, in der die Kraft ausgeübt wird.
  • Der Roboter 1 umfasst einen Kraftsensor 22, mit dem der Benutzer die auf eine Komponente des Roboters 1 ausgeübte Kraft erfasst. Der Kraftsensor 22 ist so konfiguriert, dass er beispielsweise einen Drehmomentsensor umfasst, der für jede Antriebswelle des Roboters 1 angeordnet ist. Alternativ kann der Kraftsensor 22 durch sechsachsige Kraftsensoren konfiguriert sein, die jeweils in dem Basisteil 14, der Drehbasis 13, dem unteren Arm 12, dem oberen Arm 11 und dem Handgelenk 15 des Roboters 1 vorgesehen sind. Aus der Ausgabe des Kraftsensors 22 können eine Kraftgröße, eine Drehmomentgröße, eine Richtung, in der die Kraft aufgebracht wird, und eine Richtung, in der das Drehmoment aufgebracht wird, berechnet werden.
  • Die Betriebsprogrammerzeugungseinheit 61 umfasst eine Krafterfassungseinheit 62, die eine Krafterfassungsfunktion zum Erfassen der Größen und der Richtungen der Kraft und des Drehmoments hat, die durch den Benutzer auf die Komponente aufgebracht werden. Die Krafterfassungseinheit 62 empfängt die Ausgabe des Kraftsensors 22. Die Krafterfassungseinheit 62 erfasst auf der Basis der Ausgabe des Kraftsensors 22 die Größe und Richtung einer auf den Roboter 1 ausgeübten externen Kraft. Die Krafterfassungseinheit 62 bestimmt ferner eine Komponente des Roboters 1, auf die die externe Kraft ausgeübt wird.
  • Die Betriebsprogrammerzeugungseinheit 61 umfasst eine Antriebsbefehlseinheit 63, die eine Antriebsbefehlsfunktion zum Erzeugen eines Befehlssignals zum Antreiben des Roboters 1 auf der Basis der Größe und Orientierung der von der Krafterfassungseinheit 62 erfassten externen Kraft aufweist. Die Antriebsbefehlseinheit 63 erzeugt ein Befehlssignal zum Antreiben des Roboters 1, so dass sich die Komponente in die Richtung bewegt, in der der Benutzer eine Kraft ausübt. Dabei kann die Antriebsbefehlseinheit 63 auf der Basis der Größe der vom Benutzer ausgeübten Kraft einen Befehl für die Drehzahl des Roboterantriebsmotors 19 erzeugen. Die Antriebsbefehlseinheit 63 überträgt ein Befehlssignal zum Antreiben des Roboterantriebsmotors 19 an die Betriebssteuerungseinheit 43. Die Betriebssteuerungseinheit 43 treibt den Roboter 1 auf der Basis des Befehlssignals von der Antriebsbefehlseinheit 63 während einer Periode an, in der der direkte Einlernbetrieb durchgeführt wird.
  • Auf diese Weise kann der Benutzer den Roboter 1 direkt betreiben und die Position und die Orientierung des Roboters verändern, um Einlernpunkte zu erzeugen. Beim direkten Einlernbetrieb der vorliegenden Ausführungsform schiebt und zieht der Benutzer die Komponente des Roboters 1, der direkte Einlernbetrieb ist jedoch nicht auf diese Konfiguration beschränkt. Es kann jeder Mechanismus verwendet werden, der in der Lage ist, den direkten Einlernbetrieb durchzuführen. So kann beispielsweise ein vom Benutzer ergriffener Griff über einen Kraftsensor an dem Handgelenk befestigt sein. Eine vom Benutzer ausgeübte externe Kraft wird von dem Kraftsensor erfasst. Der Benutzer kann die Position und die Orientierung des Roboters durch Bewegen des Handgriffs verändern.
  • Die Betriebsprogrammerzeugungseinheit 61 umfasst eine Zustandserfassungseinheit 66, die eine Zustandserfassungsfunktion zum Erfassen der Position und der Orientierung des Roboters 1 aufweist. Die Zustandserfassungseinheit 66 erfasst die Position und die Orientierung des Roboters 1 auf der Basis der Ausgabe des Positionsdetektors 18 während einer Periode, in der der Benutzer die Komponente des Roboters 1 bewegt. Die Betriebsprogrammerzeugungseinheit 61 umfasst eine Einlernpunkt-Einstelleinheit 67, die eine Einlernpunkt-Einstellfunktion hat, um die Position und die Orientierung des Roboters 1, die von der Zustandserfassungseinheit 66 erfasst wurden, als Einlernpunkt einzustellen. Die Einlernpunkt-Einstelleinheit 67 stellt einen Einlernpunkt oder mehrere Einlernpunkte auf der Basis der Position und der Orientierung des Roboters 1 ein. Die Betriebsprogrammerzeugungseinheit 61 umfasst eine Befehlserzeugungseinheit 68, die eine Befehlserzeugungsfunktion zum Erzeugen eines Betriebsbefehls, der in dem Betriebsprogramm 32 umfasst ist, auf der Basis des von der Einlernpunkt-Einstelleinheit 67 eingestellten Einlernpunkts aufweist. Die Betriebsprogrammerzeugungseinheit 61 umfasst eine Anzeigesteuerungseinheit 69, die eine Anzeigesteuerfunktion zum Steuern eines auf dem Anzeigeteil 50 des Programmierhandgeräts 49 angezeigten Bilds aufweist.
  • Die Betriebsprogrammerzeugungseinheit 61 entspricht einem Prozessor, der auf der Basis des Erzeugungsprogramms 46 angetrieben wird. Der Prozessor liest das Erzeugungsprogramm 46 und führt eine in dem Erzeugungsprogramm 46 definierte Steuerung aus, wodurch er als die Betriebsprogrammerzeugungseinheit 61 dient. In ähnlicher Weise entsprechen die Zustandserfassungseinheit 66, die Einlernpunkt-Einstelleinheit 67, die Befehlserzeugungseinheit 68, die Anzeigesteuerungseinheit 69, die Krafterfassungseinheit 62 und die Antriebsbefehlseinheit 63 jeweils einem auf der Basis des Erzeugungsprogramms 46 angetriebenen Prozessor. Der Prozessor dient als jede Einheit, indem er die in dem Betriebsprogramm 46 definierte Steuerung durchführt. Die Betriebssteuerungseinheit 43 entspricht ebenfalls einem Prozessor, der auf der Basis des Betriebsprogramms 46 angetrieben wird.
  • 5 zeigt ein Bild zur Erläuterung eines Prozesses zum Erzeugen des ersten Betriebsprogramms in der vorliegenden Ausführungsform. 5 zeigt das Bild 73, wenn die Erzeugung des Betriebsprogramms gestartet wird. Der Programmanzeigebereich 73b befindet sich in einem Zustand, in dem kein Betriebsprogramm angezeigt wird.
  • Zunächst wählt der Benutzer in dem Informationsanzeigebereich 73c die Registerkarte 73d zur Programmierung aus. Der Informationsanzeigebereich 73c zeigt Symbole an, die verschiedenen Arten von Betriebsbefehlen entsprechen. Der Betriebsbefehl umfasst Befehle, die sich auf den Betrieb des Roboters 1 beziehen, wie die Symbole 86a und 86b. Die Symbole 86a und 86b entsprechen jeweils einem Betrieb des Roboters 1. Der Betriebsbefehl umfasst das Symbol 86g für die Durchführung des direkten Einlernbetriebs.
  • Das Symbol 86c zeigt einen Betriebsbefehl zur Verzweigung eines Betriebs in Abhängigkeit von einer vordefinierten Bedingung an. Ein Symbol 86d zeigt einen Betriebsbefehl zur Wiederholung desselben Betriebs in einer vordefinierten Anzahl von Malen an. Auf diese Weise umfasst der Betriebsbefehl ein Symbol zur Steuerung eines Betriebs des Roboters 1. Ein Symbol 86e ist ein Betriebsbefehl für die Hand 2 zur Durchführung eines Betriebs zum Greifen eines Werkstücks. Ein Symbol 86f ist ein Betriebsbefehl für die Hand 2 zur Durchführung eines Betriebs zum Freigeben des gegriffenen Werkstücks. Auf diese Weise umfasst der Betriebsbefehl ein Symbol für die Durchführung eines Betriebs des Arbeitswerkzeugs. Der Betriebsbefehl umfasst ferner ein Symbol für den Aufruf eines anderen Programms, eines Symbols, etc. für das vorübergehende Anhalten des Roboters etc.
  • Der Benutzer wählt ein gewünschtes Symbol aus, das in dem Informationsanzeigebereich 73c angezeigt wird. Hier wählt der Benutzer das Symbol 86a aus. Der Benutzer ordnet das Symbol 86a auf der Zeitleiste 73s an, wie durch einen Pfeil 101 angezeigt. Der Benutzer ordnet Symbole, die den Betriebsbefehlen des Roboters 1 oder der Hand 2 entsprechen, in einer Reihe auf der Zeitleiste 73s an.
  • 6 zeigt ein Bild, bei dem eine Mehrzahl von Symbolen in dem Programmanzeigebereich angeordnet sind. In 6 sind das Symbol 86a, das Symbol 86b, das Symbol 86g für das direkte Einlernen, das Symbol 86b und das Symbol 86a in einer Reihenfolge von links angeordnet. In diesem Zustand sind für die jeweiligen Symbole 86a, 86b und 86g keine spezifischen Betriebsbedingungen für den Roboter 1 und die Hand 2 festgelegt. Beispielsweise sind Positionsinformationen wie Koordinatenwerte eines Einlernpunkts und eine Bewegungsgeschwindigkeit nicht aufgezeichnet. Das Anzeigeteil 50 zeigt auf diese Weise das erste Betriebsprogramm 32 an, das den Betriebsbefehl für den direkten Einlernbetrieb, bevor die Positionsinformationen des Einlernpunkts aufgezeichnet werden, enthält.
  • Für die Symbole 86a und 86b, die einen einzelnen Betriebsbefehl des Roboters 1 anzeigen, kann der Betriebszustand des Roboters 1 durch Auswählen der Registerkarte 73e eingestellt werden, die eine Detailinformation wie oben beschrieben anzeigt (siehe 3). Ferner kann, wenn der Betriebsbefehl des Arbeitswerkzeugs oder der Hilfsvorrichtung in dem Betriebsprogramm angeordnet ist, der Betriebszustand des Arbeitswerkzeugs oder der Betriebszustand der Hilfsvorrichtung durch Auswählen der Registerkarte 73e eingestellt werden.
  • Als nächstes wird die Steuerung zum Erzeugen der Betriebsbefehle des Roboters beschrieben, die in dem Symbol 86g zum direkten Einlernen umfasst sind. In der Einlernvorrichtung der vorliegenden Ausführungsform kann ein direkter Einlernbetrieb durch Auswählen des Symbols 86g des ersten Betriebsprogramms 32 in dem Programmanzeigebereich 73b und durch Ausführen eines vorbestimmten Betriebs gestartet werden. Wenn der Benutzer beispielsweise das Symbol 86g eine bestimmte Zeitspanne drückt, zeigt die Anzeigesteuerungseinheit 69 ein Bild an, das den Beginn des direkten Einlernbetriebs anzeigt. Auf diese Weise kann der direkte Einlernbetrieb durchgeführt werden, wenn der Betriebsbefehl für das direkte Einlernen in dem ersten Betriebsprogramm 32 ausgewählt wird.
  • 7 zeigt ein Bild des Beginns des direkten Einlernbetriebs. In dem Programmanzeigebereich 73b ist nur das Symbol 86g für das direkte Einlernen angezeigt. Der Informationsanzeigebereich 73c zeigt eine Information, wie z. B. eine Bedingung für die Durchführung des direkten Einlernbetriebs an. In diesem Beispiel zeigt der Informationsanzeigebereich 73c einen Geschwindigkeitseinstellbereich 73f an, der die Bewegungsgeschwindigkeit der Position (Werkzeugmittelpunkt) des Roboters in einem zu erzeugenden Betriebsbefehl des Roboters einstellt. Der Benutzer kann die Bewegungsgeschwindigkeit der Position des Roboters einstellen, indem er eine Taste betätigt, die neben dem Geschwindigkeitseinstellbereich 73f angeordnet ist.
  • Ein Intervallbezeichnungsbereich 73h ist in dem Informationsanzeigebereich 73c angezeigt. In der vorliegenden Ausführungsform erfasst die Zustandserfassungseinheit 66 die Position und die Orientierung des Roboters 1 für jedes vordefinierte Intervall während einer Periode, in der der Benutzer die Position und die Orientierung des Roboters 1 ändert. Anschließend stellt die Einlernpunkt-Einstelleinheit 67 die erfasste Position und Orientierung des Roboters als Einlernpunkt ein. In diesem Beispiel wird ein Einlernpunkt für jedes Zeitintervall erzeugt, das in dem Intervallbezeichnungsbereich 73h bezeichnet ist.
  • Der Informationsanzeigebereich 73c zeigt einen Formatbezeichnungsbereich 73i an, der ein Betriebsformat des Roboters 1 in einem zu erzeugenden Betriebsbefehl des Roboters bezeichnet. Hier wird ein Befehl zum Bewegen des Werkzeugmittelpunkts in einer kurvenförmigen Weise ausgewählt, so dass die Trajektorie des Roboters 1 in der Nähe eines Einlernpunkts verläuft. Dieser Befehl entspricht einem Betriebsbefehl durch das Symbol 86b. Die Befehlserzeugungseinheit 68 erzeugt neben der Mehrzahl von Symboltypen das Symbol 86b. Andere Betriebsformate des Roboters 1 umfassen ein Format, in dem sich der Werkzeugmittelpunkt linear bewegt, so dass er dem Symbol 86a entspricht. Andere Betriebsformate umfassen auch ein Format, bei dem die Trajektorie des Roboters 1 durch eine Spline-Kurve erzeugt wird. Auf diese Weise kann der Benutzer im Voraus einen Betriebszustand des Roboters bestimmen, wenn ein Betriebsbefehl des Roboters durch das direkte Einlernen erzeugt wird.
  • Der Informationsanzeigebereich 73c zeigt einen Antriebsinformationsbereich 73g zum Anzeigen des aktuellen Antriebszustands des Roboters 1 an. 7 zeigt ein Bild, bevor der direkte Einlernbetrieb durchgeführt wird. Daher zeigt der Informationsanzeigebereich 73g an, dass keine Einlernpunkte zum Erzeugen der Trajektorie eingelernt sind.
  • Der Informationsanzeigebereich 73c zeigt eine Taste 73j, die zum Starten des Einlernens der Einlernpunkte benutzt wird, und eine Taste 73k, die zum Beenden des Einlernens der Einlernpunkte benutzt wird, an. Der Benutzer startet den direkten Einlernbetrieb durch das Drücken der Taste 73j.
  • 8 zeigt ein Bild während einer Periode, in der der direkte Einlernbetrieb durchgeführt wird. Der Benutzer ergreift eine beliebige Komponente des Roboters 1 und verändert die Position und die Orientierung des Roboters, so dass sich die Position des Roboters entlang einer gewünschten Trajektorie bewegt. Dabei erkennt die Krafterfassungseinheit 62 auf der Basis der Ausgabe des Kraftsensors 22 eine auf den Roboter 1 aufgebrachte externe Kraft. Die Antreibsbefehlseinheit 63 steuert den Roboter 1 so, dass er der Betätigung des Roboters 1 durch den Benutzer folgt.
  • Der Antriebsinformationsbereich 73g zeigt an, dass der Einlernpunkt des Roboters 1 eingelernt wird. Die Zustandserfassungseinheit 66 erfasst die Position und die Orientierung des Roboters auf der Basis der Ausgabe des Positionsdetektors 18. Bei diesem Prozess erfasst die Zustandserfassungseinheit 66 die Position und die Orientierung des Roboters für jedes Zeitintervall, das in dem Intervallbereich 73h bestimt ist. Anschließend stellt die Einlernpunkt-Einstelleinheit 67 die von der Zustandserfassungseinheit 66 erfasste Position und Orientierung des Roboters 1 als Einlernpunkt ein. Die Befehlserzeugungseinheit 68 erzeugt das Symbol 86b als Betriebsbefehl für jeden Einlernpunkt. Die Befehlserzeugungseinheit 68 verknüpft eine Information über die Position und die Orientierung des Roboters 1 mit jedem Symbol 86b und speichert sie in dem Speicherteil 42.
  • In dem Trajektorieanzeigebereich 73a zeigt die Anzeigesteuerungseinheit 69 ein Bild 82 der Trajektorie des Werkzeugmittelpunkts des Roboters 1 an. Die Anzeigesteuerungseinheit 69 zeigt das Bild 82 der Trajektorie an, die auf der Basis der Position und der Orientierung des Roboters 1 berechnet wurde, die von der Zustandserfassungseinheit 66 erfasst wurden.
  • 9 zeigt ein Bild nach Beendigung des Einlernens der Einlernpunkte. Wenn die Position und die Orientierung des Roboters 1 eine Zielposition und -orientierung erreichen, drückt der Benutzer die Taste 73k, um das Einlernen zu beenden. Damit ist das Einlernen der Einlernpunkte in einem Abschnitt beendet. Der Antriebsinformationsbereich 73g des Informationsanzeigebereichs 73c zeigt an, dass das Einlernen der Einlernpunkte beendet ist. Der Trajektorieanzeigebereich 73a zeigt das Bild 82 der durch den direkten Einlernbetrieb erzeugten Trajektorie an. Hier kann durch Drücken der Taste 73j, die zum Starten des Einlernens verwendet wird, ein Einlernpunkt hinzugefügt werden, indem der direkte Einlernbetrieb erneut durchgeführt wird.
  • Nachdem das Einlernen der Einlernpunkte in einem Abschnitt beendet ist, beendet der Benutzer den direkten Einlernbetrieb. In diesem Beispiel zeigt die Anzeigesteuerungseinheit 69 das in 6 gezeigte Bild 73 an, wenn der Benutzer das Symbol 86g eine bestimmte Zeitspanne drückt. Da die Einlernpunkte eingelernt werden, umfasst das Symbol 86g eine Mehrzahl von Betriebsbefehlen des Roboters. Auf diese Weise kann das erste Betriebsprogramm 32 erzeugt werden, indem die Betriebsbedingungen des Roboters mit Symbolen als den jeweiligen Betriebsbefehlen verknüpft werden.
  • Als nächstes wird ein Verfahren zum Überprüfen und Ändern einer Mehrzahl von Betriebsbefehlen des Roboters beschrieben, die in dem Symbol 86g als Betriebsbefehl umfasst sind. Bei dem direkten Einlernbetrieb kann die ungefähre Position und Orientierung des Roboters bestimmt werden. Die Bestimmung einer genauen Position und Orientierung des Roboters 1 kann jedoch schwierig sein. Eine Feineinstellung der Position und der Orientierung des Roboters kann an jedem der Einlernpunkte vorgenommen werden, nachdem die Einlernpunkte eingestellt wurden.
  • 10 zeigt ein Bild, wenn ein Symbol des Roboters, das in dem Symbol für das direkte Einlernen umfasst ist, ausgewählt wird. Wie oben beschrieben, erweitert sich durch zweimaliges aufeinanderfolgendes Drücken des in dem ersten Betriebsprogramm 32 umfassten Symbols 86g die Anzeigesteuerungseinheit 69 und zeigt das Symbol 86g an.
  • Das durch den direkten Einlernbetrieb erzeugte Symbol 86g umfasst eine Mehrzahl von Symbolen 86b. In dem Bild 73 in 7 zum Starten des Einlernens der Einlernpunkte wird in dem Formatbezeichnungsbereich 73i ein Steuerformat zur Steuerung des Antriebs einer jeden Antriebswelle ausgewählt. Zu diesem Zweck erzeugt die Befehlserzeugungseinheit 68 die Symbole 86b, die die Steuerung der Bewegung der Position des Roboters 1 in einer kurvenförmigen Weise durchführen. Ferner wird auf der Basis der Bestimmung eines Intervalls in dem Intervallbestimmungsbereich 73h ein Symbol 86b pro Sekunde erzeugt. In diesem Beispiel werden sechs Symbole 86b erzeugt.
  • Als nächstes wählt der Benutzer ein Symbol 86b in dem Programmanzeigebereich 73b aus. In dem in 10 veranschaulichten Beispiel wird neben der Mehrzahl von Symbolen 86b, die in dem Symbol 86g zum direkten Einlernen umfasst sind, das zweite Symbol 86b ausgewählt. Wenn der Benutzer die Registerkarte 73e zum Anzeigen einer Detailinformation auswählt, zeigt der Informationsanzeigebereich 73c eine Detailinformation des zweiten Symbols 86b an.
  • Der Informationsanzeigebereich 73c zeigt einen Auswahlbereich 73m an, der zum Auswählen eines Einlernpunkts benutzt wird. Durch Drücken einer Taste, die neben dem Auswahlbereich 73m angeordnet ist, kann ein Symbol 86b aus der Mehrzahl von Symbolen 86b, die in dem Symbol 86g zum direkten Einlernen umfasst sind, ausgewählt werden, um die Detailinformation anzuzeigen.
  • Ähnlich wie der in 3 veranschaulichte Informationsanzeigebereich 73c wird der Einlernpunkt-Informationsbereich 73n angezeigt. Der Einlernpunkt-Informationsbereich 73n zeigt die Position und die Orientierung des Roboters 1 an dem Einlernpunkt an, der von der Einlernpunkt-Einstelleinheit 67 eingestellt wurde. Der Benutzer kann die Position und die Orientierung des Roboters 1 ändern, indem er die in dem Einlernpunkt-Informationsbereich 73n angezeigten Koordinatenwerte ändert.
  • In diesem Beispiel des Informationsanzeigebereichs wird, ähnlich wie in dem in 3 veranschaulichten Informationsanzeigebereich 73c, die Taste 73q zum Ändern des in dem Einlernpunkt-Informationsbereich 73n angezeigten Koordinatensystems angezeigt. Die Taste 73p zum Ändern und Speichern der Position und der Orientierung des Roboters 1 an dem Einlernpunkt wird ebenfalls angezeigt. Die Taste 73r zum Antreiben des Roboters 1 wird ebenfalls angezeigt, um die Position und die Orientierung des Roboters 1 an dem Einlernpunkt zu erreichen, der dem ausgewählten Symbol 86b entspricht. Der Benutzer kann diese Tasten 73p, 73q und 73r verwenden, wenn er die Position und die Orientierung des Roboters an dem Einlernpunkt ändert. Darüber hinaus kann in dem Informationsanzeigebereich 73c von 10, ähnlich wie in dem in 3 veranschaulichten Informationsanzeigebereich 73c, auch der Betriebsinformationsbereich 73t zum Ändern der Bewegungsgeschwindigkeit und des Betriebsformats des Werkzeugmittelpunkts ausgebildet sein.
  • In dem Trajektoriebild 82, das in dem Trajektorieanzeigebereich 73a angezeigt wird, wird ein Bild 85 des Einlernpunkts angezeigt, der dem ausgewählten Symbol 86b entspricht, und eine Taste 84 wird an der Position des Einlernpunkts angezeigt. Die Taste 84 umfasst Pfeile, die eine Mehrzahl von Richtungen anzeigen. Der Benutzer kann einen Pfeil in eine gewünschte Richtung drücken und die Position des Roboters 1 in die Richtung des gedrückten Pfeils bewegen. Mit anderen Worten, die Position des Einlernpunkts kann verschoben werden. In dem Trajektorieanzeigebereich 73a ist auch eine Taste 83 angezeigt. Bei der Taste 83 handelt es sich um eine Taste zum Durchführen einer Feineinstellung der Position des Roboters 1. Der Benutzer kann einen in die Taste 83 enthaltenen Pfeil drücken und die Position des Roboters leicht in Richtung des gedrückten Pfeils verschieben.
  • Der Trajektorieanzeigebereich 73a kann auch eine Taste zum Ändern der Orientierung des Roboters anzeigen. Wie oben beschrieben, können die Position und die Orientierung des Roboters durch Betätigen einer Taste geändert werden, die in einem Bild der Trajektorie des Roboters angezeigt wird.
  • Der Benutzer kann ein Symbol auswählen, das einem Einlernpunkt in dem Auswahlbereich 73m entspricht, und die Position und die Orientierung des Roboters, die in jedem Betriebsbefehl des Roboters enthalten sind, überprüfen oder ändern. Nach Abschluss der Überprüfung oder Änderung eines Einlernpunkts kann der Benutzer einen anderen Einlernpunkt auswählen und den ausgewählten Einlernpunkt überprüfen oder ändern. Auf diese Weise können die Position und die Orientierung des Roboters für durch den direkten Einlernbetrieb erzeugte Symbolen geändert werden. Darüber hinaus kann der Benutzer die Registerkarte 73d für die Programmierung auswählen und ein neues Symbol zu einem Abschnitt hinzufügen, der durch das Symbol 86g für das direkte Einlernen gekennzeichnet ist.
  • In der Einlernvorrichtung der vorliegenden Ausführungsform zeigt das Anzeigeteil 50 das erste Betriebsprogramm 32 an, das das Symbol 86g als den Betriebsbefehl für das direkte Einlernen umfasst. Das Symbol 86g befindet sich zu diesem Zeitpunkt in einem Zustand, bevor die Positionsinformation des Einlernpunkts aufgezeichnet wird. Der Benutzer startet den direkten Einlernbetrieb, indem er das Symbol 86g für das direkte Einlernen auswählt. Die Befehlserzeugungseinheit 68 erzeugt das Symbol 86g, in dem die Positionsinformation des Einlernpunkts aufgezeichnet ist. Da der direkte Einlernbetrieb auf diese Weise aus dem ersten Betriebsprogramm 32 gestartet werden kann, kann der Benutzer den direkten Einlernbetrieb leicht durchführen. Der Benutzer braucht nicht viele Bilder zu wechseln, um den direkten Einlernbetrieb durchzuführen, und ein Betriebsprogramm kann leicht erzeugt werden.
  • Die Befehlserzeugungseinheit 68 erzeugt ferner Symbole 86b als eine Mehrzahl von Betriebsbefehlen des Roboters 1 auf der Basis einer Mehrzahl von Einlernpunkten. Die Befehlserzeugungseinheit 68 erzeugt auch ein Symbol für das direkte Einlernen 86g, das die Mehrzahl von Symbolen 86b des Roboters umfasst. Das Anzeigeteil 50 zeigt das Symbol für das direkte Einlernen 86g an.
  • Auf diese Weise kann der Betriebsbefehl für das direkte Einlernen der vorliegenden Ausführungsform in einem Betriebsbefehl angezeigt werden. Daher kann der Benutzer beim Betrachten eines Betriebsprogramms leicht einen Abschnitt bestimmen, bei dem der direkte Einlernbetrieb durchgeführt wird. Der Benutzer kann einen Abschnitt, der durch den direkten Einlernbetrieb eingelernt wird, leicht erstellen oder löschen. Es kann zum Beispiel sein, dass alle Betriebsbefehle des Roboters in einem Abschnitt, in dem der direkte Einlernbetrieb durchgeführt wird, geändert werden müssen. In diesem Fall kann der Benutzer ein Symbol für das direkte Einlernen löschen, ohne die Betriebsbedingungen jedes einzelnen Symbols des Roboters ändern zu müssen. Danach kann der Benutzer durch den direkten Einlernbetrieb ein neues Symbol für das direkte Einlernen erzeugen. Auf diese Weise erzeugt der Benutzer auf einfache Weise ein Betriebsprogramm.
  • Wenn einer direkter Einlernbetrieb durchgeführt wird, können viele Symbole erzeugt werden, die den Einlernpunkten entsprechen. Dies kann dazu führen, dass ein Betriebsprogramm sehr lang wird und die Sichtbarkeit leidet. Durch die Anzeige eines Symbols für das direkte Einlernen, das eine Mehrzahl von Symbolen des Roboters enthält, kann verhindert werden, dass ein Betriebsprogramm zu lang wird.
  • Wenn der Benutzer einen Betrieb zur Erweiterung eines Symbols für das direkte Einlernen eines Betriebsprogramms durchführt, erweitert das Anzeigeteil das Symbol für das direkte Einlernen und zeigt eine Mehrzahl von Symbolen des Roboters an, die in dem Symbol für das direkte Einlernen enthalten sind. Durch die Verwendung dieser Konfiguration kann eine Detailinformation eines jeden durch den direkten Einlernbetrieb erzeugten Symbols überprüft oder geändert werden.
  • Das Erzeugungsprogramm 46 als Computerprogramm der vorliegenden Ausführungsform kann eine arithmetische Verarbeitungsvorrichtung veranlassen, als die Betriebsprogrammerzeugungseinheit 61 zu dienen, um die Erzeugung eines Betriebsprogramms wie oben beschrieben zu erleichtern. Insbesondere kann das Erzeugungsprogramm 46 einen Computer veranlassen, mindestens eine der folgenden Funktionen auszuführen: die Eingabefunktion des Eingabeteils 51; die Anzeigefunktion des Anzeigeteils 50; die Zustandserfassungsfunktion der Zustandserfassungseinheit 66; die Einlernpunkt-Einstellfunktion der Einlernpunkt-Einstelleinheit 67; die Befehlserzeugungsfunktion der Befehlserzeugungseinheit 68; und die Anzeigesteuerfunktion der Anzeigesteuerungseinheit 69.
  • In der obigen Ausführungsform ist das Symbol 86g in dem ersten Betriebsprogramm 32 so verformt, dass es die Symbole 86b für eine Mehrzahl von Operationen des Roboters anzeigt, ist aber nicht auf diese Konfiguration beschränkt. Ein Symbol für das direkte Einlernen kann so geformt sein, dass es immer eine Mehrzahl von Symbolen des Roboters ohne Verformung anzeigt.
  • 11 zeigt ein Bild, das ein weiteres Symbol für das direkte Einlernen zeigt. 11 zeigt ein Bild, wenn der Benutzer die Änderung der Position und der Orientierung des Roboters beendet hat. Der Antriebsinformationsbereich 73g des Informationsanzeigebereichs 73c zeigt an, dass das Einlernen der Einlernpunkte beendet ist. Ein Symbol für das direkte Einlernen 86h zeigt nicht die Mehrzahl von Symbolen 86b des Roboters insgesamt an, sondern eine Mehrzahl von Symbolen 86b des Roboters, die durch den direkten Einlernbetrieb in einer Reihe erzeugt wurden. Außerdem wird in jedem der Mehrzahl von Symbolen 86b die Nummer in der Reihenfolge ihrer Erzeugung angezeigt. Hier werden sechs Symbole des Roboters durch den direkten Einlernbetrieb erzeugt. Auf diese Weise kann das Symbol für das direkte Einlernen eine Mehrzahl von Symbolen, die Operationen des Roboters anzeigen, nicht bezeichnen oder nicht zusammenfassen.
  • In dem ersten Betriebsprogramm 32 wird jeder Betriebsbefehl als ein Symbol angezeigt, das ein Befehlsdiagramm darstellt. Daher kann der Benutzer einen Betriebsbefehl für das direkte Einlernen leicht finden. Zum Beispiel kann der Benutzer ein Symbol für das direkte Einlernen leicht in einer Mehrzahl von Symbolen finden, indem er die Symboldiagramme betrachtet. Dies erleichtert das Erzeugen eines Betriebsprogramms.
  • Als nächstes wird ein zweites Betriebsprogramm in der vorliegenden Ausführungsform beschrieben. In dem zweiten Betriebsprogramm wird der Betriebsbefehl eines Betriebsprogramms durch eine Befehlsanweisung gebildet. Die Konfiguration einer Robotersteuerung, die als Einlernvorrichtung dient, ist ähnlich wie die der Robotersteuerung 4, die das erste Betriebsprogramm erzeugt (siehe 2). Die Anzeigeteuerungseinheit 69 zeigt auf dem Anzeigeteil 50 ein zweites Betriebsprogramm 33 anstelle des ersten Betriebsprogramms 32 an.
  • 12 zeigt ein Bild, das das zweite Betriebsprogramm in der vorliegenden Ausführungsform anzeigt. Ein Bild 75 umfasst einen Titelbereich 75a zum Anzeigen des Namens eines Bilds, einen Programmanzeigebereich 75b zum Anzeigen des zweiten Betriebsprogramms 33 und einen Tastenbereich 75c zum Anzeigen von Tasten, die verwendet werden, wenn der Benutzer einen Betrieb durchführt. In dem zweiten Betriebsprogramm 33 ist ein Betriebsbefehl durch eine Befehlsanweisung gebildet. In dem zweiten Betriebsprogramm 33 ist eine Befehlsanweisung in einer Zeile beschrieben. Wenn das zweite Betriebsprogramm 33 und das erste Betriebsprogramm 32 miteinander verglichen werden, entspricht ein Symbol in dem ersten Betriebsprogramm 32 einer Befehlsanweisung.
  • Jede Befehlsanweisung in der ersten Zeile, der zweiten Zeile, der vierten Zeile und der fünften Zeile des zweiten Betriebsprogramms 33 bezeichnet einen Betriebsbefehl des Roboters 1. Ein Symbol L zeigt einen Befehl zur linearen Bewegung der Position des Roboters an. Das Symbol L entspricht dem Betriebsbefehl in dem Symbol 86a des ersten Betriebsprogramms 32 (siehe 3). Ein Symbol J zeigt einen Befehl zum Bewegen der Position des Roboters in einer kurvenförmigen Weise durch das Antreiben der Antriebswellen des Roboters 1 an. Das Symbol J entspricht dem Symbol 86b des ersten Betriebsprogramms 32 (siehe 3). In jeder Befehlsanweisung wird ein Einlernpunkt unter Verwendung des Symbols P angezeigt. Hier sind P[1], P[2], P[3] und P[4] als Einlernpunkte eingestellt. Die Position und die Orientierung des Roboters 1 an jedem Einlernpunkt werden in Verbindung mit der Befehlsanweisung gespeichert.
  • Jede Befehlsanweisung zeigt die Bewegungsgeschwindigkeit der Position des Roboters an. Zum Beispiel zeigt die Befehlsanweisung in der ersten Zeile an, dass die Bewegungsgeschwindigkeit der Position (Werkzeugmittelpunkt) des Roboters 100 mm/s beträgt. Die Befehlsanweisung in der zweiten Zeile zeigt an, dass jede Antriebswelle mit 100 % der maximalen Geschwindigkeit einer jeden Antriebswelle angetrieben wird. Ein Symbol FINE zeigt an, dass der Roboter mit hoher Genauigkeit in Bezug auf den Einlernpunkt angetrieben wird. Das heißt, die Position und die Orientierung des Roboters 1 werden so verändert, dass die jeweiligen Einlernpunkte durchfahren werden. Ein Symbol CNT ist eine Variable, die die Glätte einer Kurve anzeigt. Das Symbol CNT zeigt eine Variable einer Strecke an, die von dem Einlernpunkt entfernt sein kann.
  • Das zweite Betriebsprogramm 33 umfasst, ähnlich wie das erste Betriebsprogramm 32, einen Betriebsbefehl für das direkte Einlernen in der dritten Zeile. Ein Symbol MG zeigt den Betriebsbefehl für das direkte Einlernen an. Hier ist definiert, dass eine Befehlsanweisung erzeugt wird, so dass die Bewegungsgeschwindigkeit des Werkzeugmittelpunkts 100 mm/sec beträgt. Ein Symbol INTERVALL zeigt ein Zeitintervall zum Erfassen eines Einlernpunkts an. Hier wird das Zeitintervall so beschrieben, dass der Einlernpunkt mit einer Rate von einem pro Sekunde erfasst wird. Mit anderen Worten: Jede Sekunde wird eine Befehlsanweisung erzeugt. Das Symbol J in dieser Zeile bestimmt, dass ein Befehl zum Bewegen der Position des Roboters 1 in einer kurvenförmigen Weise durch Antreiben einer jeden Antriebswelle des Roboters erzeugt wird. Die Befehlsanweisung in der dritten Zeile entspricht dem Symbol 86g für das direkte Einlernen in dem ersten Betriebsprogramm 32 (siehe 3).
  • In dem zweiten Betriebsprogramm 33 umfasst der Betriebsbefehl für das direkte Einlernen, ähnlich wie in dem ersten Betriebsprogramm 32, eine Mehrzahl von Betriebsbefehlen des Roboters 1. Das Anzeigeteil 50 kann einen Betriebsbefehl für das direkte Einlernen anzeigen, der durch eine Befehlsanweisung gebildet ist. Ferner kann der Benutzer einen direkten Einlernbetrieb von der in dem zweiten Betriebsprogramm 33 enthalten Befehlsanweisung für das direkte Einlernen starten.
  • Der Benutzer erzeugt die in 12 veranschaulichte Befehlsanweisung für das direkte Einlernen durch Betätigung des Eingabeteils 51. In diesem Stadium befindet sich die Befehlsanweisung für das direkte Einlernen in einem Zustand, in dem die Positionsinformation des Einlernpunkts noch nicht aufgezeichnet ist. Der Benutzer wählt die Befehlsanweisung für das direkte Einlernen in dem Programmanzeigebereich 75b aus. Wenn der Benutzer dann eine Taste 75d für den Beginn des Einlernens drückt, die in dem Tastenbereich 75c angezeigt wird, wird der direkte Einlernbetrieb gestartet.
  • 13 zeigt ein Bild während einer Periode, in der der direkte Einlernbetrieb durchgeführt wird. Der Programmanzeigebereich 75b zeigt ein Bild 75f an, um darauf hinzuweisen, dass der direkte Einlernbetrieb durchgeführt wird. Der Benutzer ändert die Position und die Orientierung des Roboters 1 in eine Zielposition bzw. eine Zielorientierung, indem er die Komponente des Roboters 1 bewegt. Die Zustandserfassungseinheit 66 erfasst eine Position und eine Orientierung des Roboters für jedes bestimmte Zeitintervall. Die Einlernpunkt-Einstelleinheit 67 stellt einen Einlernpunkt auf der Basis der Position und der Orientierung des Roboters ein, die von der Zustandserfassungseinheit 66 erfasst wurden. Dann erzeugt die Befehlserzeugungseinheit 68 entsprechend der Befehlsanweisung für das direkte Einlernen eine Mehrzahl von Befehlsanweisungen des Roboters. Anschließend erzeugt die Befehlserzeugungseinheit 68 einen Betriebsbefehl des Roboters, in dem die Positionsinformation des Einlernpunkts aufgezeichnet ist. Jede Befehlsanweisung des Roboters wird in dem Speicherteil 42 in Verbindung mit der Befehlsanweisung für das direkte Einlernen gespeichert.
  • Das Bild 75f zeigt eine Taste 75g, die zum Beenden des Einlernens der Einlernpunkte verwendet wird, und eine Taste 75h, die zum Abbrechen des Einlernens der Einlernpunkte verwendet wird. Wenn die Änderung der Position und der Orientierung des Roboters beendet ist, drückt der Benutzer die Taste 75g, um das Einlernen der Einlernpunkte zu beenden. Die Taste 75h ist eine Taste zum Abbrechen des gerade durchgeführten Einlernens. Durch Drücken der Taste 75h werden bereits erzeugte Einlernpunkte und Betriebsbefehle des Roboters gelöscht, und der direkte Einlernbetrieb wird beendet.
  • Wenn die Position und die Orientierung des Roboters eingelernt sind und der direkte Einlernbetrieb beendet ist, kehrt der Prozess zu dem in 12 gezeigten Bild 75 zurück. Der Benutzer überprüft dann die durch den direkten Einlernbetrieb erzeugte Befehlsanweisung des Roboters. Alternativ dazu kann der Benutzer die Befehlsanweisung des Roboters ändern. In dem zweiten Betriebsprogramm 33 wird die Befehlsanweisung für das direkte Einlernen, die eine Mehrzahl von Befehlsanweisungen des Roboters enthält, ebenso wie im ersten Betriebsprogramm in einer Befehlsanweisung angezeigt. Wenn der Benutzer einen Befehl zur Erweiterung des Betriebsbefehls für das direkte Einlernen eingibt, zeigt das Anzeigeteil 50 die Mehrzahl von Befehlsanweisungen des Roboters an, die in dem Betriebsbefehl für das direkte Einlernen enthalten sind. Der Benutzer wählt dann die Befehlsanweisung für das direkte Einlernen in der dritten Zeile aus und drückt die Taste 75e in dem Tastenbereich 75c, um die Trajektorie einzustellen. Damit kann eine Mehrzahl von Betriebsbefehlen, die in dem Betriebsbefehl für das direkte Einlernen enthalten sind, angezeigt werden.
  • 14 zeigt ein Bild, in dem die Mehrzahl von Befehlsanweisungen des Roboters, die in der Befehlsanweisung für das direkte Einlernen enthalten sind, angezeigt werden. Der Programmanzeigebereich 75b zeigt eine Information 33a der Befehlsanweisungen des Roboters an, die in dem Betriebsbefehl für das direkte Einlernen enthalten sind. Hier umfasst die Befehlsanweisung für das direkte Einlernen sechs Befehlsanweisungen des Roboters. In jeder Befehlsanweisung wird ein Betriebsbefehl zum Antreiben einer jeden Achse gemäß der Trajektorie der Befehlsanweisung für das direkte Einlernen in der in 12 gezeigten dritten Zeile erzeugt.
  • Mit der Anzeige in 14 kann der Benutzer den Betriebszustand des Roboters in jeder Befehlsanweisung des Roboters ändern. Hier hat der Benutzer die Befehlsanweisung des Roboters in der zweiten Zeile ausgewählt. Der Benutzer drückt eine Taste 75j in dem Tastenbereich 75c zur Positionseinstellung.
  • 15 zeigt ein Bild, wenn der Benutzer die Befehlsanweisung des Roboters auswählt und die Taste für die Positionseinstellung drückt. Die Anzeigesteuerungseinheit 69 zeigt den Betriebszustand des Roboters an dem ausgewählten zweiten Einlernpunkt an. Der Programmanzeigebereich 75b zeigt die Information 33a des Betriebsbefehls des Roboters an, der in den aktuellen Betriebsbefehl für das direkte Einlernen enthalten ist. Der Programmanzeigebereich 75b zeigt auch eine Information 33b über die Position und die Orientierung des Roboters an, die in einem Benutzerkoordinatensystem eingestellt sind.
  • Der Benutzer kann die Information 33b über die Position und die Orientierung des Roboters ändern, indem er das Eingabeteil 51 betätigt und entsprechende Koordinatenwerte eingibt. Alternativ kann der Benutzer bei Betätigung der im Tastenbereich 75c angezeigten Taste 75g zum Einlernen der Position die durch die Betätigung des Programmierhandgeräts 49 geänderte Position und Orientierung des Roboters 1 in der Information 33b überschreiben. Dies kann wie folgt durchgeführt werden. Der Benutzer stellt die Position und die Orientierung des Roboters 1 ein, indem er das Eingabeteil 51 des Programmierhandgeräts 49 betätigt. Jeder Koordinatenwert der Position und der Orientierung in der Information 33b wird verändert. Wenn sich der Roboter in einer gewünschten Position und Orientierung befindet, wird der aktuelle Koordinatenwert durch Drücken der Taste 75g zur Speicherung gespeichert.
  • Auch in dem zweiten Betriebsprogramm 33 kann, ähnlich wie in dem ersten Betriebsprogramm 32, nach dem Einlernen des Einlernpunkts durch den direkten Einlernbetrieb die Position und die Orientierung des Roboters an dem Einlernpunkt feineingestellt werden. Die Einstellung oder Änderung solcher detaillierten Betriebsbedingungen kann für jede Befehlsanweisung des Roboters durchgeführt werden. Ferner kann unter Bezugnahme auf die 14 und 15 durch Drücken einer Taste 75k zur Trajektorieanzeige, die in dem Tastenbereich 75c angezeigt wird, das Bild der Trajektorie des Roboters angezeigt werden.
  • 16 zeigt ein Bild, in dem die Trajektorie des Roboters dargestellt ist. Hier zeigt der Programmanzeigebereich 75b das Bild 81 des Roboters und das Bild 82 der Trajektorie an. Der Programmanzeigebereich 75b zeigt außerdem das Bild 85 des in 14 ausgewählten zweiten Einlernpunkts an. Auf diese Weise kann auch in dem zweiten Betriebsprogramm die Trajektorie des Roboters in dem Bild überprüft werden. Darüber hinaus können, wie in dem Bild 73 von 10 gezeigt, die Tasten 83 und 84 zur Einstellung der Position und der Orientierung des Roboters angezeigt werden. Der Programmanzeigebereich 75b kann so ausgebildet sein, dass die Position und die Orientierung des Roboters durch Betätigung einer Taste eingestellt werden kann, die auf einem Bild angezeigt wird, das den Roboter umfasst.
  • Auf diese Weise kann der Betriebsbefehl des Roboters, der in dem Betriebsbefehl für das direkte Einlernen enthalten ist, geändert werden. Darüber hinaus kann die Information 33a über den Betriebsbefehl des Bilds 75 in 15 so gebildet werden, dass das Betriebsformat des Roboters, das durch das Symbol L oder das Symbol J definiert ist, und die Bewegungsgeschwindigkeit des Roboters geändert werden können.
  • Die Zustandserfassungseinheit 66 der Einlernvorrichtung der vorliegenden Ausführungsform erfasst die Position und die Orientierung des Roboters in Bezug auf den Einlernpunkt für jedes vordefinierte Zeitintervall, ist aber nicht auf diese Konfiguration beschränkt. Die Zustandserfassungseinheit kann die Position und die Orientierung des Roboters in beliebigen Intervallen erfassen. Zum Beispiel kann die Zustandserfassungseinheit die Position und die Orientierung des Roboters für jede vordefinierte Bewegungsdistanz der Position des Roboters erfassen. Das heißt, die Zustandserfassungseinheit kann die Position und die Orientierung des Roboters jedes Mal erfassen, wenn sich der Werkzeugmittelpunkt um eine vordefinierte Strecke bewegt.
  • Die Einlernpunkt-Einstelleinheit der vorliegenden Ausführungsform stellt alle Positionen und Orientierungen des Roboters als Einlernpunkte ein, die von der Zustandserfassungseinheit erfasst wurden, ist aber nicht auf diese Konfiguration beschränkt. Die Einlernpunkt-Einstelleinheit kann einige der Positionen und Orientierungen des Roboters aus einer Mehrzahl von Positionen und Orientierungen des Roboters auswählen und Einlernpunkte erzeugen. Die Einlernpunkt-Einstelleinheit kann einen oder mehrere Einlernpunkte einstellen.
  • In dem Betriebsprogramm ist es beispielsweise bevorzugt, dass die Anzahl der Betriebsbefehle, wie z.B. Befehlsdiagramme oder Befehlsanweisungen, gering ist. Angesichts dessen berechnet die Einlernpunkt-Einstelleinheit die Trajektorie des Roboters, die für alle von der Zustandserfassungseinheit erfassten Einlernpunkte erzeugt wird, und die Trajektorie des Roboters, die für einige der Einlernpunkte erzeugt wird. Die Einlernpunkt-Einstelleinheit kann einige Einlernpunkte so auswählen, dass ein Fehler (Abstand) zwischen den beiden Trajektorien kleiner als ein vordefinierter Bestimmungswert ist. Mit anderen Worten, die Einlernpunkt-Einstelleinheit kann einige der Einlernpunkte löschen, so dass ein Fehler der Trajektorie des Roboters innerhalb eines vorgegebenen Bereichs liegt. Die Befehlserzeugungseinheit kann Betriebsbefehle erzeugen, die den von der Einlernpunkt-Einstelleinheit ausgewählten Einlernpunkten entsprechen.
  • In der vorliegenden Ausführungsform hat die arithmetische Verarbeitungseinrichtung des Steuerungskörpers 5 die Funktionen der Betriebsprogrammerzeugungseinheit 61 und des Speicherteils 42, das das Erzeugungsprogramm 46 speichert, ist aber nicht auf diese Konfiguration beschränkt. Das Programmierhandgerät kann die arithmetische Verarbeitungseinrichtung umfassen und die Funktion der Betriebsprogrammerzeugungseinheit und die Funktion des Speicherteils, das das Erzeugungsprogramm speichert, haben. Alternativ kann zusätzlich zu dem Steuerungskörper und dem Programmierhandgerät eine arithmetische Verarbeitungseinrichtung mit der Robotersteuerung verbunden werden, und die arithmetische Verarbeitungseinrichtung kann die Funktion der Betriebsprogrammerzeugungseinheit und die Funktion des Speicherteils, das das Erzeugungsprogramm speichert, haben.
  • In jeder der oben beschriebenen Steuerungen kann die Reihenfolge der Schritte in geeigneter Weise geändert werden, soweit die Funktion und die Wirkung nicht verändert werden.
  • Die oben beschriebenen Ausführungsformen können in geeigneter Weise kombiniert werden. In jeder der obigen Zeichnungen sind gleiche oder ähnliche Teile mit den gleichen Bezugsziffern bezeichnet. Es ist zu beachten, dass die oben beschriebenen Ausführungsformen Beispiele sind und die Erfindung nicht einschränken. Ferner schließen die Ausführungsformen Modifikationen der in den Ansprüchen veranschaulichten Ausführungsformen ein.
  • Bezugszeichenliste
  • 1
    Roboter
    4
    Robotersteuerung
    32
    Erstes Betriebsprogramm
    33
    Zweites Betriebsprogramm
    42
    Speicherteil
    43
    Betriebsteuerungseinheit
    46
    Erzeugungsprogramm
    49
    Programmierhandgerät
    50
    Anzeigeteil
    51
    Eingabeteil
    61
    Betriebsprogrammerzeugungseinheit
    67
    Einlernpunkt-Einstelleinheit
    68
    Befehlserzeugungseinheit
    73
    Bild
    75
    Bild
    86a bis 86h
    Symbol
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 2009072833 A [0005]
    • JP 2018176288 A [0005]

Claims (9)

  1. Einlernvorrichtung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen, wobei die Einlernvorrichtung umfasst: ein Anzeigeteil, das konfiguriert ist, ein Betriebsprogramm anzuzeigen; eine Einlernpunkt-Einstelleinheit, die konfiguriert ist, als einen Einlernpunkt eine Position und eine Orientierung des Roboters einzustellen, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt; und eine Befehlserzeugungseinheit, die konfiguriert ist, einen in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts zu erzeugen, wobei das Anzeigeteil ein Betriebsprogramm anzeigt, das einen Betriebsbefehl für das direkte Einlernen, bevor eine Positionsinformationen des Einlernpunkts aufgezeichnet wird, enthält, und wenn der Benutzer einen direkten Einlernvorgang durch Auswählen des Betriebsprogramms für direktes Einlernen beginnt, die Einlernpunkt-Einstelleinheit einen oder mehrere Einlernpunkt(e) auf der Basis der Position und der Orientierung des Roboters einstellt und die Befehlserzeugungseinheit einen Betrieb des Roboters erzeugt, bei dem eine Positionsinformation des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts aufgezeichnet wird.
  2. Einlernvorrichtung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen, wobei die Einlernvorrichtung umfasst: ein Anzeigeteil, das konfiguriert ist, ein Betriebsprogramm anzuzeigen; eine Einlernpunkt-Einstelleinheit, die konfiguriert ist, als einen Einlernpunkt eine Position und eine Orientierung des Roboters einzustellen, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt; und eine Befehlserzeugungseinheit, die konfiguriert ist, einen in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts zu erzeugen, wobei die Befehlserzeugungseinheit einen Betriebsbefehl für das direkte Einlernen, der eine Mehrzahl von Betriebsbefehlen des Roboters umfasst, auf der Basis einer Mehrzahl der durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkte erzeugt, und das Anzeigeteil den Betriebsbefehl für das direkte Einlernen, der durch eine Befehlsanweisung oder ein Befehlsdiagramm konfiguriert ist, anzeigt.
  3. Einlernvorrichtung nach Anspruch 2, die ferner ein Eingabeteil umfasst, das konfiguriert ist, dem Benutzer zu ermöglichen, eine auf dem Anzeigeteil angezeigte Information zu betätigen, wobei das Anzeigeteil den Betriebsbefehl für das direkte Einlernen in Reaktion auf eine Betätigung des Eingabeteils durch den Benutzer erweitert und die Mehrzahl von Betriebsbefehlen des Roboters anzeigt, die in dem Betriebsbefehl für das direkte Einlernen umfasst sind.
  4. Einlernvorrichtung nach Anspruch 3, wobei die Befehlserzeugungseinheit ausgebildet ist, in der Lage zu sein, die Position und die Orientierung des Roboters, die in dem Betriebsbefehl des Roboters umfasst sind, in Reaktion auf die Betätigung des Eingabeteils durch den Benutzer zu ändern.
  5. Einlernvorrichtung nach einem der Ansprüche 1 bis 4, wobei das Anzeigeteil den Betriebsbefehl in dem Betriebsprogramm mit einem Symbol als Befehlsdiagramm anzeigt.
  6. Computerprogramm einer Einlernvorrichtung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen, wobei das Computerprogramm einen Computer veranlasst, auszuführen: eine Anzeigefunktion zum Anzeigen eines Betriebsprogramms auf einem Anzeigeteil; eine Einlernpunkt-Einstellfunktion zum Einstellen einer Position und einer Orientierung des Roboters, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt, als Einlernpunkt; und eine Befehlserzeugungsfunktion zum Erzeugen eines in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts, wobei die Anzeigefunktion eine Funktion zum Anzeigen eines Betriebsprogramms auf dem Anzeigeteil umfasst, das einen Betriebsbefehl für das direkte Einlernen, bevor eine Positionsinformationen des Einlernpunkts aufgezeichnet wird, enthält, und wenn der Benutzer einen direkten Einlernvorgang durch Auswählen des Betriebsprogramms für direktes Einlernen beginnt, das Computerprogramm einen Computer veranlasst, die Einlernpunkt-Einstellfunktion zum Einstellen eines Einlernpunkts oder mehrerer Einlernpunkte und die Befehlserzeugungsfunktion zum Erzeugen des Betriebsbefehls des Roboters auszuführen, bei dem eine Positionsinformation des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts aufgezeichnet wird.
  7. Computerprogramm einer Einlernvorrichtung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen, wobei das Computerprogramm einen Computer veranlasst, auszuführen: eine Anzeigefunktion zum Anzeigen eines Betriebsprogramms auf einem Anzeigeteil; eine Einlernpunkt-Einstellfunktion zum Einstellen einer Position und einer Orientierung des Roboters, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt, als Einlernpunkt; und eine Befehlserzeugungsfunktion zum Erzeugen eines in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts, wobei die Befehlserzeugungsfunktion eine Funktion zum Erzeugen eines Betriebsbefehls zum direkten Einlernen, der eine Mehrzahl von Betriebsbefehlen des Roboters umfasst, auf der Basis einer Mehrzahl der durch die Einlernpunkt-Einstellfunktion eingestellten Einlernpunkte umfasst, und die Anzeigefunktion eine Funktion zum Anzeigen des Betriebsbefehls zum direkten Einlernen umfasst, der durch eine Befehlsanweisung oder ein Befehlsdiagramm konfiguriert ist.
  8. Robotersteuerung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen, wobei die Robotersteuerung umfasst: eine Einlernpunkt-Einstelleinheit, die konfiguriert ist, als einen Einlernpunkt eine Position und eine Orientierung des Roboters einzustellen, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt; und eine Befehlserzeugungseinheit, die konfiguriert ist, einen in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts zu erzeugen, wobei die Robotersteuerung konfiguriert ist, ein Anzeigeteil zu veranlassen, ein Betriebsprogramm anzuzeigen, das einen Betriebsbefehl für das direkte Einlernen, bevor eine Positionsinformationen des Einlernpunkts aufgezeichnet wird, enthält, und wobei wenn der Benutzer einen direkten Einlernvorgang durch Auswählen des Betriebsprogramms für direktes Einlernen beginnt, die Einlernpunkt-Einstelleinheit einen oder mehrere Einlernpunkt(e) auf der Basis der Position und der Orientierung des Roboters einstellt und die Befehlserzeugungseinheit einen Betrieb des Roboters erzeugt, bei dem eine Positionsinformation des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts aufgezeichnet wird.
  9. Robotersteuerung, die zur Durchführung eines direkten Einlernvorgangs konfiguriert ist, um es einem Benutzer zu ermöglichen, einen Einlernpunkt durch direktes Betreiben eines Roboters einzulernen, wobei die Robotersteuerung umfasst: eine Einlernpunkt-Einstelleinheit, die konfiguriert ist, als einen Einlernpunkt eine Position und eine Orientierung des Roboters einzustellen, die während einer Periode erfasst werden, in der der Benutzer eine Komponente des Roboters bewegt; und eine Befehlserzeugungseinheit, die konfiguriert ist, einen in dem Betriebsprogramm enthaltenen Betriebsbefehl auf der Basis des durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkts zu erzeugen, wobei die Befehlserzeugungseinheit einen Betriebsbefehl für das direkte Einlernen, der eine Mehrzahl von Betriebsbefehlen des Roboters umfasst, auf der Basis einer Mehrzahl der durch die Einlernpunkt-Einstelleinheit eingestellten Einlernpunkte erzeugt, und die Robotersteuerung konfiguriert ist, ein Anzeigeteil zu veranlassen, den Betriebsbefehl für das direkte Einlernen, der durch eine Befehlsanweisung oder ein Befehlsdiagramm konfiguriert ist, anzuzeigen.
DE112021005036.2T 2020-11-30 2021-11-24 Trainingsvorrichtung zur Angabe des Trainingspunkts durch direkten Trainingsbetrieb, Robotersteuerungsvorrichtung und Computerprogramm für Trainingsvorrichtung Pending DE112021005036T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2020-198890 2020-11-30
JP2020198890 2020-11-30
PCT/JP2021/043032 WO2022114016A1 (ja) 2020-11-30 2021-11-24 直接教示操作にて教示点を教示する教示装置、ロボット制御装置、および教示装置のコンピュータプログラム

Publications (1)

Publication Number Publication Date
DE112021005036T5 true DE112021005036T5 (de) 2023-07-13

Family

ID=81756012

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021005036.2T Pending DE112021005036T5 (de) 2020-11-30 2021-11-24 Trainingsvorrichtung zur Angabe des Trainingspunkts durch direkten Trainingsbetrieb, Robotersteuerungsvorrichtung und Computerprogramm für Trainingsvorrichtung

Country Status (6)

Country Link
US (1) US20240001543A1 (de)
JP (2) JP7208443B2 (de)
CN (1) CN116669914A (de)
DE (1) DE112021005036T5 (de)
TW (1) TW202223568A (de)
WO (1) WO2022114016A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024009484A1 (ja) * 2022-07-07 2024-01-11 ファナック株式会社 制御装置及び制御方法
WO2024134902A1 (ja) * 2022-12-23 2024-06-27 ファナック株式会社 ロボットの姿勢を調整する装置、方法、及びコンピュータプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009072833A (ja) 2007-09-18 2009-04-09 Yaskawa Electric Corp ロボットの直接教示装置
JP2018176288A (ja) 2017-04-03 2018-11-15 ファナック株式会社 ロボットの教示装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08249026A (ja) * 1995-03-10 1996-09-27 Fanuc Ltd ロボットを含むシステムのプログラミング方法
JPH08276388A (ja) * 1995-04-05 1996-10-22 Nippon Telegr & Teleph Corp <Ntt> ロボット教示装置
JP2007242054A (ja) 1995-09-19 2007-09-20 Yaskawa Electric Corp ロボット言語処理装置
JP2007054906A (ja) 2005-08-23 2007-03-08 Koyama:Kk 多関節型ロボット
DE102014216514B3 (de) * 2014-08-20 2015-09-10 Kuka Roboter Gmbh Verfahren zum Programmieren eines Industrieroboters und zugehöriger Industrieroboter
JP6763846B2 (ja) 2017-11-24 2020-09-30 ファナック株式会社 ロボットの教示操作を行う教示装置および教示方法
JP7483321B2 (ja) 2018-02-13 2024-05-15 キヤノン株式会社 制御装置、制御方法、ロボットシステム、物品の製造方法、表示装置、プログラム及び記録媒体
JP6498366B1 (ja) 2018-07-10 2019-04-10 三菱電機株式会社 教示装置
JP2020049569A (ja) 2018-09-25 2020-04-02 株式会社デンソーウェーブ ロボットのプログラム作成支援装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009072833A (ja) 2007-09-18 2009-04-09 Yaskawa Electric Corp ロボットの直接教示装置
JP2018176288A (ja) 2017-04-03 2018-11-15 ファナック株式会社 ロボットの教示装置

Also Published As

Publication number Publication date
CN116669914A (zh) 2023-08-29
TW202223568A (zh) 2022-06-16
JP7208443B2 (ja) 2023-01-18
JPWO2022114016A1 (de) 2022-06-02
WO2022114016A1 (ja) 2022-06-02
JP2023024890A (ja) 2023-02-17
US20240001543A1 (en) 2024-01-04

Similar Documents

Publication Publication Date Title
DE102018009023B4 (de) Einlernvorrichtung zum Ausführen von Robotereinlernvorgängen und Einlernverfahren
DE102018107231B4 (de) Robotereinlernvorrichtung
DE102018116053B4 (de) Robotersystem und Roboterlernverfahren
DE102019009313B4 (de) Robotersteuerung, Verfahren und Computerprogramm unter Verwendung von erweiterter Realität und gemischter Realität
DE69735269T2 (de) Steuerverfahren zum schrittbetrieb eines roboters
DE112016004725B4 (de) Verfahren zum Teach-ln eines Roboters und Roboterarmsteuervorrichtung
DE60309409T2 (de) System zur Programmierung eines Roboters oder eines ähnlichen Automaten mit einem tragbaren Progammierungsterminal
DE102018009025A1 (de) Robotersteuervorrichtung zum Einstellen eines Bewegungskoordinatensystems
DE69925204T2 (de) Robotersteuerung
DE102010036499B4 (de) Werkzeugvektor-Anzeigevorrichtung für eine Werkzeugmaschine mit Drehachse
EP2546711B2 (de) Verfahren zum Programmieren eines Roboters
DE102015107436B4 (de) Lernfähige Bahnsteuerung
DE112021005036T5 (de) Trainingsvorrichtung zur Angabe des Trainingspunkts durch direkten Trainingsbetrieb, Robotersteuerungsvorrichtung und Computerprogramm für Trainingsvorrichtung
DE102015011830B4 (de) Robotersystem zum Einstellen eines Bewegungsüberwachungsbereichs eines Roboters
DE102018009024B4 (de) Einlerngerät zum Ausführen eines Einlernvorgangs für einen Roboter
EP3098034B1 (de) Auswahl eines gerätes oder eines objektes mit hilfe einer kamera
DE3686539T2 (de) System zum feststellen von rechtwinkligen koordinaten eines durch einen roboter bearbeiteten werkstueckes.
DE2526504B2 (de) Verfahren zur Erstellung eines Programms für die rechnergeführte Steuerung der Arbeitsfunktionen und der Bewegung eines Roboterarmes und Vorrichtung zur Durchführung des Verfahrens
DE68926614T2 (de) Automatisches sollwert-bereitstellungsverfahren für ein sichtsensorsystem
DE102008035507A1 (de) Steuerung für einen Robotor mit einem Roboterkörper und eine zusätzliche Einrichtung, die zusätzliche Operationsachsen liefert
DE3103194A1 (de) Programmiersystem fuer eine automatische naehmaschine
DE102018004673A1 (de) Robotersystem, das eine Geschwindigkeit anzeigt
DE102020112049A1 (de) Roboterbedienvorrichtung, roboter und roboterbedienungsverfahren
DE102020122847A1 (de) Steuersystem, steuerapparatur und roboter
DE112022000322T5 (de) Einlernvorrichtung

Legal Events

Date Code Title Description
R012 Request for examination validly filed