DE102011011681B4 - Roboter mit einer Lernsteuerfunktion - Google Patents

Roboter mit einer Lernsteuerfunktion Download PDF

Info

Publication number
DE102011011681B4
DE102011011681B4 DE102011011681A DE102011011681A DE102011011681B4 DE 102011011681 B4 DE102011011681 B4 DE 102011011681B4 DE 102011011681 A DE102011011681 A DE 102011011681A DE 102011011681 A DE102011011681 A DE 102011011681A DE 102011011681 B4 DE102011011681 B4 DE 102011011681B4
Authority
DE
Germany
Prior art keywords
learning
robot
control unit
correction value
sensor
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.)
Active
Application number
DE102011011681A
Other languages
English (en)
Other versions
DE102011011681A1 (de
Inventor
Tetsuaki Kato
Masakazu Ichinose
Kiyonori 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 DE102011011681A1 publication Critical patent/DE102011011681A1/de
Application granted granted Critical
Publication of DE102011011681B4 publication Critical patent/DE102011011681B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/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
    • 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/39295Learn position correction values to be added to reference values
    • 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/39298Trajectory learning
    • 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/43Speed, acceleration, deceleration control ADC
    • G05B2219/43203Limitation of speed, permissible, allowable, maximum speed

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

Roboter (100) umfassend:
eine Robotermechanismuseinheit (1) mit einem Sensor (10) zum Erfassen einer Position eines Teils, dessen Position zu steuern ist; und
eine Steuereinheit (2) zum Steuern des Betriebs der Robotermechanismuseinheit (1);
wobei die Steuereinheit (2) umfasst:
eine Normalsteuereinheit (4), der ein Positionsbefehl für eine Sollposition oder eine Sollbahn für das zu steuernde Teil zugeführt wird und die den Betrieb der Robotermechanismuseinheit (1) unter Verwendung des zugeführten Positionsbefehls und eines Lernkorrekturwerts steuert; und
eine Lernsteuereinheit (3) zum Betreiben der Robotermechanismuseinheit (1) nach Maßgabe eines Arbeitsschrittprogramms unter Verwendung des Positionsbefehls und des Lernkorrekturwerts, zum Berechnen eines Sollkorrekturwerts, der eine Differenz ist zwischen einer Position des zu steuernden Teils, die von dem Sensor (10) erfasst wurde, und der Sollposition, und zum Ausführen des Lernvorgangs, um einen neuen Lernkorrekturwert auf Grundlage des vorangegangenen Lernkorrekturwerts und des Sollkorrekturwerts zu berechnen, so dass die Position des zu steuernden Teils der...

Description

  • Fachgebiet der Erfindung
  • Diese Erfindung bezieht sich auf einen Roboter mit einer Lernsteuerfunktion, insbesondere auf einen Roboter, dessen Betriebsgeschwindigkeit unter Verwendung eines an einem Arm des Roboters angebrachten Sensors vergrößert ist.
  • Hintergrund der Erfindung
  • In einem Roboter werden die Position und die Geschwindigkeit eines von einem Servomotor angetriebenen Elements normalerweise durch eine Positionsregelung, eine Geschwindigkeitsregelung und eine Stromregelung derart gesteuert, dass die Position und die Geschwindigkeit des angetriebenen Elements mit der Sollposition und der Sollgeschwindigkeit jeweils übereinstimmen.
  • Selbst bei einer derartigen Regelung der Position, der Geschwindigkeit und des Stroms treten eine Bahnfehler- und eine Positionsvibrationskomponente bei einem Hochgeschwindigkeitsbetrieb des Roboters auf. Ferner macht es der Unterschied in den dynamischen Eigenschaften zwischen dem Motor und dem Arm unmöglich, die Bahnfehler- und die Positionsvibrationskomponente des Arms direkt von einem Motorkodierer zu erfassen. Deshalb ist es zum Messen der Bahnfehler- und der Positionsvibrationskomponente erforderlich, einen Sensor direkt am Arm anzubringen. Als ein Beispiel der Lernsteuerung mit einem angebrachten Sensor wurde eine Lernsteuerung unter Verwendung eines Beschleunigungssensors offenbart (Patentdokument 1).
  • 1 ist ein schematisches Diagramm, das einen Roboter mit der herkömmlichen Lernsteuereinheit zum Ausführen der Lernsteuerung zeigt. Der Roboter 100 ist konfiguriert aus einer Robotermechanismuseinheit 1 und einer Steuereinheit 2 zum Steuern der Robotermechanismuseinheit 1. Die Steuereinheit 2 umfasst eine Lernsteuereinheit 3 zum Ausführen der Lernsteuerung des Roboters und eine Normalsteuereinheit 4 zum direkten Antreiben der Robotermechanismuseinheit 1.
  • Die Robotermechanismuseinheit 1 umfasst einen Beschleunigungssensor 10, einen Arm 11 und einen Abschnitt 12 am vorderen Armende, sowie einen Motor (nicht gezeigt). Der Motor der Robotermechanismuseinheit wird mit einem Signal von der Normalsteuereinheit 4 der Steuereinheit 2 versorgt und treibt den Arm 11 an. Ferner dreht der Robotermechanismuseinheit den vorderen Armendabschnitt 12 in die Sollposition und führt einen Arbeitsschritt aus, wie beispielsweise einen Schweißschritt. Am vorderen Endabschnitt 12 des Arms ist ein Beschleunigungssensor 10 angebracht, der die Raumpositionsdaten (yj(k)) des vorderen Endabschnitts 12 des Arms ermitteln kann. Die Positionsdaten (yj(k)) vom Beschleunigungssensor 12 werden an die Lernsteuereinheit 3 abgegeben und zur Lernsteuerung verwendet. In der vorangehenden Beschreibung bezeichnet der Bezugsbuchstabe j die Anzahl der durchgeführten Versuche, k die Zeit und Ns die Anzahl der Abtastvorgänge bei jedem Versuch. Der Buchstabe yd(k) bezeichnet einen Positionsbefehl, (yj(k)) bezeichnet den in dem vorangehenden Steuerzyklus gesteuerten Wert und ej(k) bezeichnet den Zielkorrekturbetrag, der aus yd(k) und (yj(k)) über einen Filter berechnet wurde. Auch uj(k) bezeichnet den Lernkorrekturwert des vorangehenden Steuerzyklus.
  • Die normale Steuerung 4 umfasst eine Positionssteuereinheit 41, eine Geschwindigkeitssteuereinheit 42, eine Stromsteuereinheit 43, einen Verstärker 44 und ein Differenzierungsmittel 45. Die Positionssteuereinheit 41 empfängt die Positionsbefehlsdaten yd(k), die von der Steuereinheit 2 eingegeben werden und die Positionsinformation beispielsweise des Motors des Robotermechanismus, während sie gleichzeitig die Sollpositionsinformation des vorderen Endabschnitts 12 des Arms der Robotermechanismuseinheit 1 an die Geschwindigkeitssteuereinheit 42 ausgibt. Das Differenzationsmittel 45 empfängt die Motorpositionsinformation, die von dem Robotermechanismus 1 rückgekoppelt wurde und gibt durch Berechnen der Motorgeschwindigkeit die Motorgeschwindigkeit an die Geschwindigkeitssteuereinheit 42 aus.
  • Die Geschwindigkeitssteuereinheit 42 berechnet die Sollmotorgeschwindigkeit unter Verwendung der Positionsinformation von der Positionssteuereinheit 41 und der Motorgeschwindigkeitsinformation von dem Differenziationsmittel 54 und gibt die Sollmotorgeschwindigkeit an die Stromsteuereinheit 43 aus. Die Stromsteuereinheit 43 empfängt den rückgekoppelten Stromwert vom Verstärker 44 und gibt den resultierenden Strom an den Verstärker 44 aus, in dem der in den Motor fließende Strom derart berechnet wird, dass die von der Geschwindigkeitssteuereinheit 42 eingegebene Sollmotorgeschwindigkeit erreicht wird. Der Verstärker 44 berechnet die Sollleistung aufgrund des Stromwerts von der Stromsteuereinheit 43 und führt die Sollleistung dem Motor (nicht gezeigt) der Robotermechanismuseinheit 1 zu.
  • Die Lernsteuereinheit 3 umfasst eine Einmalversuchsverzögerungseinheit W–1 300, einen ersten Speicher 31, eine Lernsteuereinheit L(q) 32, einen Tiefpassfilter Q(q) 33, einen zweiten Speicher 34 und einen dritten Speicher 35. Der erste Speicher 31 erhält einen Sollkorrekturbetrag ej(k) über einen Filter auf Grundlage der Positionssolldaten (yd(k)) für den vorderen Armendabschnitt 12 und die Positionsdaten (yj(k)), die von dem Beschleunigungssensor 10 gemessen wurden und speichert diese, während er gleichzeitig den Sollkorrekturwert ej(k) an die Lernsteuereinheit L(q) 32 ausgibt. Der Sollkorrekturwert ej(k) entspricht den Bahn- und Vibrationsfehlern bezüglich der Sollposition des vorderen Endabschnitts 12 des Arms.
  • Die Lernsteuereinheit L(q) 32 gibt durch Ausführen des darin gespeicherten Arbeitsschrittprogramms den Lernkorrekturwert uj+1(k) aus dem Sollkorrekturwert ej(k) und den vorangegangenen Lernkorrekturwert uj(k) und gibt den Lernkorrekturwert uj+1(k) an den Tiefpassfilter Q(q) 33 ab. Der Lernkorrekturwert uj+1(k), der an den Tiefpassfilter Q(q) 33 eingegeben wird, wird an den zweiten Speicher 34 ausgegeben und in diesem gespeichert, während er gleichzeitig zu den Positionsfehlerdaten hinzuaddiert wird, die von der Positionssteuereinheit 41 der normalen Steuereinheit 4 berechnet werden.
  • Auf Grundlage der so korrigierten Positionsfehlerdaten wird die Robotermechanismuseinheit 1 gesteuert und die Lernsteuerung wird wiederholt. In der Lernsteuerung wird diese Reihe von Vorgängen wiederholt ausgeführt, um den Positionsfehler gegen „0” konvergieren zu lassen. Nach Beendigung der Lernsteuerung wird die Schleife zum Aktualisieren des Lernkorrekturwerts, die in 1 durch die unterbrochene Linie wiedergegeben ist, nicht ausgeführt und der Lernkorrekturwert uj+1(k) wird von dem zweiten Speicher 34 zu der Positionssteuereinheit 41 ausgegeben. Tatsächlich definiert in 1 die durchgezogene Linie den Abschnitt, der von der normalen Steuereinheit 4 ausgeführt wird, um die Robotermechanismuseinheit 1 nach Beendigung der Lernsteuerung in dem Lernbetrieb zu betreiben, der durch die punktierte Linie angezeigt ist.
    Patentdokument 1: JP 2006-172149 A
  • In der herkömmlichen Lernsteuerung wird die Verbesserung hinsichtlich der Bahn- und Vibrationsfehler unter einer bestimmten Bedingung berücksichtigt. Allerdings besteht das Problem darin, dass der Anwendungsbereich relativ eng ist, und dass die Betriebszweckmäßigkeit nicht berücksichtigt wird. Die vorstehend beschriebene herkömmliche Technik, die als ein Beispiel einer Lernsteuerung unter Verwendung eines Sensors beschrieben wurde, das den Anwendungsfall bei einer Werkzeugmaschine darstellt, geht von der Verwendung eines Beschleunigungssensors aus. In dem Fall, in dem der Beschleunigungssensor am Roboter angebracht wird, wird andererseits das Problem hervorgerufen, dass der Bahnfehler und der Positionsfehler nicht an jeder Achse direkt aus den Sensordaten berechnet werden können, obwohl sie aus orthogonalen Koordinaten extrahiert werden können.
  • Ferner wird bei der herkömmlichen vorstehend beschriebenen Technik der normale Hochpassfilter verwendet, um die Bahn- und Vibrationsfehler über den Steuerungssensor zu erhalten. Bei einer Werkzeugmaschine ist das Frequenzband für die Regelung im Bereich von einigen 10 Hz bis einigen 100 Hz oder, in anderen Worten, die Regelung besitzt eine sehr hohe Performanz in diesem Frequenzband und deshalb besteht kein ernsthaftes Problem, selbst in dem Fall, in dem die Daten von mehr als 10 Hz nicht erlernt werden können, um die Versatzdaten zu entfernen. Somit ist der Versatz kein großes Problem. Bei einem industriellen Roboter beträgt das Frequenzband für die Regelung normalerweise einige Hz. Die Regelung wird in einem höheren Frequenzband durchgeführt und die Performanz neigt dazu, von einem Zwischenmodellfehler abhängig zu sein. Deshalb wird der betroffene Teil durch die Lernsteuerung korrigiert. In dem Fall, in dem ein Hochpassfilter von 1 Hz verwendet wird, um den Versatz der Daten von dem Beschleunigungssensor zu entfernen, rotiert die Phase des Bahnfehlers und des Vibrationsfehlers beispielsweise um bis zu 10 Hz und deshalb werden die Bahn- und Vibrationsfehlerdaten in dem zu entfernenden Frequenzband ebenfalls in ungeeigneter Weise verarbeitet, wodurch das Problem hervorgerufen wird, dass die Performanz der Lernsteuerung gestört wird.
  • Ein weiteres Problem liegt in der Schwierigkeit der Einstellung der Lernsteuereinheit. Obwohl verschiedene Einstellverfahren vorgeschlagen wurden, bleiben die Probleme hinsichtlich der Tatsache, dass die Anzahl der Steuereinheiten groß ist, die Stabilität reduziert ist und eine große Menge an Matrixberechnungen erforderlich ist, ungelöst. Unter diesen Umständen wird die Einstellung in den meisten Arbeitsgebieten durch Ausprobieren (Versuchs- und Irrtums-Methode) vorgenommen. Auch die Tatsache, dass sich das Robotersystem nach Maßgabe der Aufstellung des Roboters verändert, vergrößert die Schwierigkeit der Einstellung durch Ausprobieren. Derzeit ist ein Roboter, der eine Lernfunktion zur Vergrößerung der Geschwindigkeit durch automatisches Einstellen der Parameter aufweist, schlicht nicht verfügbar.
  • So zeigt das Dokument US 2009/0222109 A1 einen iterativen Lernsteuerkreis zur Positionskontrolle eines Robotermechanismus, mit dem eine Abweichung von einer ermittelten Sollposition erfasst wird und mittels dem sich der zu steuernde Roboter seiner Sollposition annähert.
  • Ebenso wird im Dokument US 2004/0150363 A1 ein Steuermechanismus offenbart, bei dem Positionsabweichungen eines Servomotors mittels gespeicherter Korrekturdaten ausgeglichen werden und das Resultat dieses Ausgleichs in einem Lernspeicher als Korrekturdatensatz gespeichert wird.
  • Aus dem Dokument US 2006/0082340 A1 ist ein Roboter mit einer Lernsteuereinheit bekannt, die den Lernvorgang wiederholt, um einen neuen Lernkorrekturwert für die Geschwindigkeit unter Verwendung des bisherigen Lernkorrekturwerts zu berechnen, und den neuen Lernkorrekturwert speichert.
  • Ebenso ist aus dem Dokument JP 2001-022423 A ein Roboter mit einer Lernsteuerbzw. Optimierungsroutine bekannt, bei der die Positionsabweichung optimiert wird, während die Geschwindigkeitsübersteuerung mehrere Male vergrößert wird.
  • Das Dokument US 2006/0132078 A1 beschreibt eine Steuerung zur Steuerung einer Position eines angetriebenen Elements zwecks Sollwerteinhaltung, bei der eine Abweichung zur Sollposition mittels einer Lernsteuerung behoben werden kann.
  • Weiterhin zeigt das Dokument JP 06-289918 A ein Lernsteuerverfahren zur Erhöhung der Wiederholungsgenauigkeit eines Roboters bei wiederholter Ausführung eines Arbeitsschrittes unter Berücksichtigung einer auf einen Sollwert bezogenen Geschwindigkeitsabweichung.
  • Abriss der Erfindung
  • Gemäß einem Aspekt der Erfindung ist ein Roboter vorgesehen, umfassend eine Robotermechanismuseinheit mit einem Sensor an einem Teil, dessen Position zu steuern ist und einer Steuereinheit zum Steuern des Betriebs der Robotermechanismuseinheit, wobei die Steuereinheit eine Normalsteuereinheit zum Steuern des Betriebs der Robotermechanismuseinheit und eine Lernsteuereinheit zum Bewirken, dass die Robotermechanismuseinheit nach Maßgabe eines Betriebsschrittprogramms arbeitet und zum Durchführen des Lernbetriebs umfasst, um den Lernkorrekturwert zu berechnen und um zu erreichen, dass die Position des Teils der Robotermechanismuseinheit, der zu steuern und durch den Sensor zu erfassen ist, sich einer Sollbahn oder einer Sollposition nähert, die der Normalsteuereinheit zugeordnet ist, und wobei die Lernsteuereinheit den Lernbetrieb derart ausführt, dass durch Berechnen der maximalen Geschwindigkeitsübersteuerung (englisch: speed override), die in dem Lernbetrieb festgelegt werden kann, und durch Vergrößern der Geschwindigkeitsübersteuerung (speed override) mehrmals bis zum Erreichen der maximalen Geschwindigkeitsübersteuerung der Lernkorrekturwert berechnet wird.
  • Gemäß einem weiteren Aspekt der Erfindung kann die Lernsteuereinheit die maximale Geschwindigkeitsübersteuerung auf Grundlage der maximalen Geschwindigkeit und der maximalen Beschleunigung berechnen, die für die Robotermechanismuseinheit zulässig ist.
  • Gemäß einem weiteren Aspekt der Erfindung kann die Lernsteuereinheit einen Hochpassfilter zum Berechnen der Bahnkurven- und Vibrationsfehler der Robotermechanismuseinheit auf Grundlage der von dem Sensor erfassten Daten umfassen.
  • Gemäß einem weiteren Aspekt der Erfindung berechnet die Lernsteuereinheit bei Bedarf die Position auf jeder Achse, die die Bahnpositions- und Vibrationsfehler enthalten durch eine inverse Kinematik (Bewegungsbeschreibung) der von dem Sensor erfassten Daten zu denjenigen auf den drei Basisachsen.
  • Gemäß einem weiteren Aspekt der Erfindung kann die Lernsteuereinheit die Position und die Neigung des Sensors berechnen, indem veranlasst wird, dass die Robotermechanismuseinheit eine vorbestimmte Operation ausführt.
  • Gemäß einem weiteren Aspekt der Erfindung umfasst die Lernsteuereinheit bedarfsweise ferner einen Speicher zum Behalten des Lernkorrekturwerts.
  • Gemäß einem weiteren Aspekt der Erfindung kann der Sensor ein visueller Sensor, ein Beschleunigungssensor, ein Gyrosensor, ein Inertialsensor und ein Verzerrungs- oder Verformungsanzeiger sein.
  • Gemäß einem weiteren Aspekt der Erfindung kann der Sensor bedarfsweise ferner ein Befestigungsmittel oder vorzugsweise einen Magneten aufweisen, der entfernbar an der Robotermechanismuseinheit als Befestigungsmittel angebracht ist.
  • Gemäß dieser Erfindung führt die Lernsteuereinheit den Lernbetrieb durch, indem sie die maximale Geschwindigkeitsübersteuerung (speed override) berechnet, die in dem Lernbetrieb festgelegt werden kann und während die Geschwindigkeitsübersteuerung mehrere Male erhöht wird bevor die maximale Geschwindigkeitsübersteuerung erreicht wird, den Lernkorrekturwert berechnet, wodurch es möglich wird, die Geschwindigkeit automatisch in dem Lernbetrieb zu steigern.
  • Kurze Beschreibung der Zeichnungen
  • Diese und weitere Merkmale und Vorteile der vorliegenden Erfindung werden besser verständlich, wenn man die folgende detaillierte Beschreibung in Zusammenhang mit den beigefügten Zeichnungen liest, in welchen:
  • 1 ein Diagramm ist, das die Konfiguration des herkömmlichen Roboters zeigt;
  • 2 ein Diagramm ist, das die Konfiguration der Robotermechanismuseinheit und des Sensors des Roboters gemäß einem ersten Ausführungsbeispiel der Erfindung zeigt;
  • 3 ein schematisches Diagramm ist, das die Konfiguration der Robotermechanismuseinheit des Roboters gemäß dem ersten Ausführungsbeispiel der Erfindung zeigt;
  • 4 ein Diagramm ist, das die Position des Sensors in dem globalen Koordinatensystem zeigt;
  • 5 ein Diagramm ist, das die Konfiguration des Roboters gemäß dem ersten Ausführungsbeispiel der Erfindung zeigt;
  • 6 ein Flussdiagramm ist zu Erklärung der Schritte des Vergrößerns der Geschwindigkeit des Betriebs der Robotermechanismuseinheit, welches den Roboter gemäß der vorliegenden Erfindung bildet; und
  • 7 ein Diagramm ist, das ein Beispiel des visuellen Sensors zeigt.
  • Detaillierte Beschreibung der bevorzugten Ausführungsbeispiele
  • Der Roboter gemäß der Erfindung wird nachfolgend mit Bezug auf die Zeichnungen beschrieben. Allerdings ist festzuhalten, dass der technische Rahmen dieser Erfindung nicht auf die nachfolgend beschriebenen Ausführungsbeispiele beschränkt ist und die Erfindung umfasst, die in den beigefügten Ansprüchen und Äquivalenten davon enthalten ist.
  • Gemäß dieser Erfindung wird die Geschwindigkeit eines Arbeitsschritts an einem Bearbeitungspunkt vergrößert. Zunächst ist die Konfiguration der Robotermechanismuseinheit des Roboters gemäß der Erfindung in 2 gezeigt. 2A zeigt eine generelle Konfiguration der Robotermechanismuseinheit und 2B zeigt eine vergrößerte Ansicht einer Pistole mit einem daran angebrachten Sensor. Die Robotermechanismuseinheit ist ein wohlbekannter Robotermanipulator (nachfolgend einfach bezeichnet als „die Robotermechanismuseinheit”), und kann jede beliebige Konfiguration haben, solange diese die Position und Stellung einnehmen kann, in der die Pistole 20 den Arbeitsschritt ausführen kann. Als ein Sensor zum Erfassen der Position der Robotermechanismuseinheit 1 und des Bahn- und/oder Vibrationsfehlers, der zum Zeitpunkt einer Verzögerung der Robotermechanismuseinheit 1 auftreten kann, um dessen Betrieb zu stoppen, ist ein Beschleunigungssensor 10 am vorderen Endabschnitt der Pistole 20 angebracht, der ein Teil bildet, an dem die Position der Robotermechanismuseinheit gesteuert wird. Ein Drei-Achs-Geschwindigkeitssensor kann als Beschleunigungssensor 10 verwendet werden. Der Beschleunigungssensor 10 weist einen Magneten auf und ist austauschbar. Das Gehäuse des Beschleunigungssensors 10 kann als Magnet ausgebildet werden. Obwohl der Beschleunigungssensor 10 in dem Ausführungsbeispiel gemäß der vorstehend beschriebenen Erfindung eingesetzt wird, kann ein visueller Sensor anstelle des Beschleunigungssensors gleichsam verwendet werden. Ein Beispiel, in dem der visuelle Sensor verwendet wird, ist in 7 gezeigt. Der visuelle Sensor 70 weist zwei Kameras auf, d. h. eine erste Kamera 72 und eine zweite Kamera 73 und ist an einer Roboterhand 71 angebracht. Der visuelle Sensor misst die Position eines virtuellen TCP 76 (tool center point, Werkzeugmittelpunkt) auf einer Solllinie 74 unter Verwendung der Kameras 72, 73 und berechnet die Bahn- und die Vibrationsfehler Δx, Δy, Δz entlang jeder der X-, Y-, Z-Achsen, wobei die Vorwärtsrichtung 75 die positive Richtung entlang der X-Achse ist.
  • Nach Anbringen des Beschleunigungssensors 10 wird die Robotermechanismuseinheit betrieben, wie zur Kalibrierung vorgeschrieben, um die Position und die Neigung des Sensors 10 zu berechnen. Die Kalibrierung wird gemäß den nachfolgend beschriebenen Schritten durchgeführt.
  • Zunächst wird die Neigung des Beschleunigungssensors spezifiziert. Wie in 3 gezeigt wird der Betrieb entlang der X-Achse von einem gegebenen Punkt P0 in dem globalen Koordinatensystem durchgeführt und dadurch, dass durch einen gegebenen Punkt P1 hindurchgefahren wird, wobei die entsprechenden Beschleunigungsdaten erfasst werden. Die Beschleunigungsdaten im stationären Zustand am Punkt P0 werden als a0 bezeichnet und die Beschleunigungsdaten im Betrieb am Punkt P1 als a1. Dann kann die Beschleunigung axy, die die Gravitationsbeschleunigung (stationäre Beschleunigung) übersteigt, ausgedrückt werden als a = a1 – a0. Die Standardisierung wird wie folgt definiert:
    Figure 00090001
  • Auf ähnliche Weise wird der Betrieb entlang der Y-Achse von einem Linienpunkt P0 und durch Verlagern durch einen gegebenen Punkt P2 durchgeführt, wobei die entsprechenden Beschleunigungsdaten a2 erfasst werden. In dem Prozess kann die Beschleunigung a, die die Gravitationsbeschleunigung übersteigt (stationäre Beschleunigung) ausgedrückt werden als a = a2 – a0. Die Standardisierung ist wie folgt definiert:
    Figure 00090002
  • Der orthogonale Vektor zu diesen beiden Datensätzen ist gegeben als a = ax·ay und kann wie folgt ausgedrückt werden.
  • Figure 00100001
  • Als ein Ergebnis wird die Matrix Rt zum Transformieren der Stellung in das globale Koordinatensystem aus dem Werkzeugkoordinatensystem wie folgt ausgedrückt. Rt = ⌊axayaz
  • Dann werden die Teile J5 und J6 betrieben, um die Position des Beschleunigungssensors zu spezifizieren. Zunächst, wie in 3 gezeigt, wird das Teil J5 um Δθ1 gedreht. Die in dem Beschleunigungssensorkoordinatensystem gemessenen entsprechenden Beschleunigungsdaten werden mit der Matrix Rt multipliziert. Nimmt man an, dass die Beschleunigungsdaten, die in das globale Koordinatensystem transformiert wurden, gegeben sind als (ϕ ..1x, ϕ ..1y, ϕ ..1z) dann ist die Sensorverlagerung Δϕ1 ausgedrückt als
    Figure 00100002
  • In diesem Fall ist die Versatzgröße Δx in X-Richtung des globalen Koordinatensystems ausgedrückt als Δx = Δϕ1/Δθ1.
  • Wie in 4 gezeigt wird das Teil J6 gedreht um Δθ2. Dann werden die entsprechenden Beschleunigungsdaten, die in den Beschleunigungssensorkoordinatensystem gemessen werden, mit der Matrix Rt multipliziert und die Beschleunigungsdaten, die in das globale Koordinatensystem transformiert wurden, sind gegeben als (ϕ ..2x, ϕ ..2y, ϕ ..2z)
  • Dann wird die Sensorverlagerung Δϕ2 ausgedrückt wie folgt:
    Figure 00100003
  • Die Beziehung zeigt, dass γ = Δϕ22 und die Versatzgröße Δy in Y-Richtung des globalen Koordinatensystems wird berechnet als Δy = γcosθ2 und die Versatzgröße Δz in Z-Richtung des globalen Koordinatensystems als Δz = γsinθ2.
  • Als nächstes wird die Lernsteuereinheit gestaltet. Zu Beginn wird die Frequenzantwort auf das Eingangssignal des Lernkorrekturwerts für jede Achse hinsichtlich der geschätzten Position auf Grundlage des Beschleunigungssensors gemessen. Auch wird der Block der Lernsteuerung wie in 5 gezeigt vorgesehen.
  • Ein schematisches Diagramm des Roboters gemäß einem Ausführungsbeispiel der Erfindung ist in 5 gezeigt. Der Roboter 100 ist aus einer Robotermechanismuseinheit 1 und einer Steuereinheit 2 zum Steuern der Robotermechanismuseinheit 1 aufgebaut. Die Steuereinheit 2 umfasst eine Lernsteuereinheit 3 zum Ausführen der Lernsteuerung des Roboters und eine normale Steuereinheit 4 zum direkten Antreiben der Robotermechanismuseinheit 1.
  • Die Lernsteuereinheit 3 betreibt die Robotermechanismuseinheit 1 gemäß einem Arbeitsschrittprogramm und führt den Lernprozess durch, um den Lernkorrekturwert zu berechnen, so dass die Positionen des Teils der Robotermechanismuseinheit 1, der zu steuern und von dem Beschleunigungssensor 10 zu erfassen ist, erhalten werden, um die der normalen Steuereinheit 4 zugeordneten Sollposition Yd(k) annährend zu erreichen. Die Konfiguration bei anderen Teilen als die Robotersteuereinheit 3 ist ähnlich zu dem des herkömmlichen Roboters, wie in 1 gezeigt, und wird daher nicht näher beschrieben werden. Die Lernsteuereinheit 3 umfasst einen ersten Speicher 31, einen Positionstransformator 35, einen Hochpassfilter 36, einen Inverstransformator IK 37, einen Vorwärtstransformator FK 38, eine Lernsteuereinheit L(q) 32, einen Tiefpassfilter Q(q) 33, einen zweiten Speicher 34, einen dritten Speicher 35 und einen vierten Speicher 39. Die Lernsteuereinheit wird gestaltet, indem eine lineare Matrixungleichung aus dem Ergebnis der Frequenzantwort gelöst wird.
  • Die lineare Matrixungleichung stellt das Problem der Berechnung des Wertes x dar, der unter der folgenden Einschränkung cTx(c ∈ Rm) minimiert.
    Figure 00110001
    wobei Fi eine positive semidefinierte Matrix ist.
  • Nimmt man nun an, dass die Lernsteuereinheit ausgedrückt wird als
    Figure 00120001
    wobei N0 ∈ Z ist und dass die Beziehung vorgibt, dass
    Figure 00120002
  • Dann ist die Bedingung zum Garantieren der Stabilität und einer monotonen Abnahme der Lernsteuereinheit ausgedrückt, wie nachfolgend am Frequenzbereich gezeigt. ||Q(z)(I – L(z)P(z))|| = γ < 1
  • In dieser Gleichung bezeichnet Q(z) einen Tiefpassfilter mit dem Lernband an der Grenzfrequenz, L(z) den Lernsteuerungsfilter und P(z) die Transferfunktion aus dem Eingang des Lernkorrekturwerts zu dem zu steuernden Objekt. Je kleiner der Wert γ ist, desto größer ist die Performanz der Lernsteuereinheit. Das Optimierungsprogramm der Lernsteuereinheit besteht darin, wie die Berechnung des Lernfilters L(z), dem der Minimalwert γ in einem gegebenen Lernsteuerungsfrequenzband zugeordnet ist, ausgeführt wird. Diese Gleichung kann umgeformt werden wie folgt:
    Figure 00120003
    wobei angenommen wird, dass die Beziehung
    Figure 00120004
    vorgibt, dass die Gleichung ausgedrückt als
    Figure 00130001
    erhalten wird.
  • In dieser Gleichung kann Kk ausgedrückt werden durch die Linearität von αk,j und Vj, wobei Vj in derselben Dimension vorliegt wie Lk und für andere Werte als das Element (j, i) immer null ist. Beispielsweise gilt Ny = 2, Nu = 2.
    Figure 00130002
    Ferner
    Figure 00130003
    wobei
  • Figure 00130004
  • Als ein Ergebnis wird diese Gleichung umgeformt als
  • Figure 00130005
  • Berücksichtigt man die ersten und zweiten Terme dieser Gleichung als
    Figure 00130006
    und ist der dritte Term F0, und ist die Gleichung definiert als
    Figure 00140001
  • Dann wird die Gleichung ausgedrückt als
    Figure 00140002
  • Dies ist äquivalent zu der Beschränkung der linearen Matrixungleichung (1) und das Minimierungsproblem führt zu dem Problem, wie CTx zu minimieren ist, d. h. γ2. Dies kann auch als Optimierungsproblem der Lernsteuereinheit interpretiert werden. Somit ist die hinreichende Bedingung für die Stabilität und die monotone Verringerung gegeben als
    Figure 00140003
  • Durch experimentelles Messen von P(ejΩi) und Bestimmen des Lernbandfilters Q(z) kann der Lernfilter L(z) automatisch bestimmt werden.
  • Berücksichtigt man ferner die Robustheit der Lernsteuereinheit, so besteht das Merkmal des Roboters darin, dass dessen System sich mit der Position stark verändert.
  • Nimmt man an in dem Fall, in dem eine gegebene Position bestimmt wird als Referenzposition, dann ist Pn(z) das Lernsystem für die Referenzposition. Dann wird eine willkürliche Position Pm(z) ausgedrückt als Pm(z) = Pn(z) + ΔPm(z), wobei Pm(z) ein Änderungswert des Lernsystems für die Referenzposition ist. In diesem Fall wird die Beschränkung hinsichtlich des Lernbandfilters Q(z) verfügbar, ausgedrückt als
    Figure 00140004
  • Berücksichtigt man, dass die Beziehung
    Figure 00140005
    gilt, dann ist die hinreichende Bedingung für die Stabilität und monotone Abnahme dann erfüllt, wenn die folgende Bedingung für einen beliebigen Integerwert m erfüllt ist. CTxm ≤ 1
  • Durch experimentelles Messen von P(ejΩi) für eine Anzahl m von Positionen, kann die Lernsteuereinheit automatisch im vorangehenden Fall bestimmt werden.
  • Als nächstes werden die Datenverarbeitungsschritte für die Lernsteuereinheit erklärt. Wie in 5 gezeigt, wird die Rückkopplung von den drei Schleifen der Positionssteuerung, der Geschwindigkeitssteuerung und der Stromsteuerung aufgestellt und die Lernsteuerung wird als Schleife außerhalb der Positionssteuerschleife des Rückkopplungsbetriebs ausgebildet. Der Teil, der durch die durchgezogene Linie gezeigt ist, bildet eine wirksame Schleife während des Lernbetriebs und nach Beendigung wird die Schleife, die mit unterbrochener Linie gezeigt ist, wirksam. Buchstabe aj bezeichnet die Daten, die vom Beschleunigungssensor erhalten wurden und der Positionstransformator 35 transformiert die Beschleunigungsdaten aj in Positionsdaten. Während des Lernprozesses werden die Daten hinsichtlich der Vibration, die während eines stationären Betriebs des Roboters auftreten, welcher von dem Beschleunigungssensor 10 erfasst wurde, im ersten Speicher 31 behalten. Der Lernkorrekturwert uj+1(k) wird von dem zweiten Speicher 34 ausgegeben.
  • Nach Beendigung des Betriebs schätzt der Positionstransformator 35 den Bahn-/Vibrationsfehler der orthogonalen Koordinate und unter Verwendung des Hochpassfilters 36, der einen Null-Phasenhochpassfilter darstellt, wird der Bahn-/Vibrationsfehler Δr für eine Abweichung von dem Versatz erhalten. Dieser Bahn-/Vibrationsfehler wird den Positionsdaten r des Sensors zugeführt, die unter Verwendung von FK von Daten hinsichtlich der Motorpositionsrückkopplung (FB) geschätzt wurden, um die Sensorposition in dem orthogonalen Koordinatensystem des Beschleunigungssensors 10 zu schätzen, umfassend die Dynamik des Arms.
  • Durch inverse Transformation der Sensorposition, die vom Sensor hinsichtlich der drei Basisachsen geschätzt wurde, wird die Position an jeder Achse samt der Armdynamik berechnet. Aus dieser Position auf jeder Achse umfassend die Armdynamik wird die Position auf jeder Achse, die nicht die Armdynamik umfasst, d. h. die Motorposition dadurch subtrahiert, um den Sollkorrekturwert auf jeder Achse zu berechnen. In der nachfolgend gezeigten Gleichung bezeichnet Ψj den Sollkorrekturwert auf jeder Achse für den j-ten Versuch, IK die inverse Transformation und θmj die Motorposition auf jeder Achse für den j-ten Versuch. ψj = IK–1(r + Δr) – θmj
  • Durch Eingeben dieses Sollkorrekturwerts für jede Achse an die Lernsteuereinheit wird der Korrekturwert uj+1(k) für den nächsten Versuch berechnet. Vermittels der Lernsteuereinheit L(q) 32, wird der Lernkorrekturwert uj für den vorangehenden Versuch aus dem dritten Speicher 35 hinzuaddiert und der Korrekturwert uj+1 für den nächsten Versuch wird durch den Tiefpassfilter Q(q) 33 berechnet.
  • Als nächstes werden die Schritte der Vergrößerung der Betriebsgeschwindigkeit der Robotermechanismuseinheit in den Lernsteuerungsbetrieb gemäß der Erfindung hinsichtlich 6 erklärt. 6 ist ein Flussdiagramm, das die Schritte der Vergrößerung der Betriebsgeschwindigkeit der Robotermechanismuseinheit zeigt. Um die Betriebsgeschwindigkeit der Robotermechanismuseinheit zu steigern, berechnet die Lernsteuereinheit die maximale Geschwindigkeitsübersteuerung (speed override), die während des Lernvorgangs festgelegt werden kann. Während des Lernbetriebs und während die Geschwindigkeitsübersteuerung mehrere Male vergrößert wird, bevor die maximale Geschwindigkeitsübersteuerung erreicht wird, wird veranlasst, dass der Lernbetrieb den Lernkorrekturwert berechnet. „Lernbetrieb” bedeutet, dass die Robotermechanismuseinheit gemäß einem Arbeitsschrittprogramm betrieben wird und einen Lernvorgang ausführt, um den Lernkorrekturwert zu berechnen, so dass die Position eines Teils der Robotermechanismuseinheit, der zu steuern ist, die von dem Sensor erfasst wird, eine Sollbahn und eine Sollposition näherungsweise annimmt, die der Normalsteuereinheit zugeordnet sind bzw. von dieser vorgegeben werden.
  • Zunächst wird im Schritt S101 die Maximalgeschwindigkeitsübersteuerung, die während des Lernvorgangs festgelegt werden kann, durch die Lernsteuereinheit berechnet. Die Maximalgeschwindigkeitsübersteuerung wird auf Grundlage der Maximalgeschwindigkeit und der Maximalbeschleunigung berechnet, die für die Robotermechanismuseinheit zulässig ist. Zunächst wird die Robotermechanismuseinheit einmal betrieben und die Maximalgeschwindigkeitsübersteuerung, die für jeden Axialmotor hinsichtlich der Maximalbeschleunigung und der Maximalgeschwindigkeit erreicht werden kann, wird aus den Daten bezüglich des ersten Versuchs berechnet.
  • Wie im ersten Schritt wird die Maximalgeschwindigkeitsübersteuerung, die für jeden Axialmotor erlernt werden kann, aus der Perspektive der maximalen Beschleunigung berechnet. Die Gleichung der Bewegung des Roboters wird wie folgt definiert: τ = M(Θ)Θ .. + V(Θ, Θ .) + G(Θ) wobei Θ die Position und Geschwindigkeit des Arms ist.
  • In dieser Gleichung ist M(Θ) die Matrix des Trägheitsausdrucks, V(Θ, Θ .) der Vektor des Geschwindigkeitsausdrucks und G(Θ) der Vektor des Gravitationsausdrucks.
  • Ein großer Drehmomentbetrag wird üblicherweise zur Beschleunigung oder Verzögerung verwendet. Nimmt man an, dass der Drehmomentzuwachs aufgrund der Vergrößerung der Geschwindigkeitsübersteuerung im Wesentlichen resultiert aus M(Θ)Θ .., so ist der Näherungswert der maximalen Geschwindigkeitsübersteuerung ovr_max1,i berechnet aus dem Blickpunkt der Beschleunigung und Verzögerung.
  • Nimmt man an, dass das maximale Drehmoment für den ersten Versuch τmax,i ist, so ist die maximale Drehmomenttoleranz des Motors τp,i und das Drehmoment M(Θ)Θ .. das für die Beschleunigung und Verzögerung verwendet wird, ist τa,i. Dann wird die nachfolgende Gleichung erhalten τa,i = τmax,i – (V(Θ, Θ .) + G(Θ))i.
  • In dem Vorgang wird unter Berücksichtigung, dass over_max1,i, proportional zum Quadrat von τa,1 ist, gilt die Gleichung
    Figure 00170001
    wobei der Index i die i-te Achse angibt.
  • In der vorstehend beschriebenen Weise wird die maximale Übersteuerung ovr_max1,i erhalten hinsichtlich der maximalen Beschleunigung.
  • Auf ähnliche Weise wird die maximale Geschwindigkeitsübersteuerung ovr_max2,i hinsichtlich der maximalen Geschwindigkeit berechnet. Nimmt man an, dass die maximale Geschwindigkeit für den ersten Versuch ωv,i ist und die maximale Geschwindigkeitstoleranz des Motors ωp,i, ist, so wird die nachfolgend gezeigte Gleichung erhalten.
  • Figure 00170002
  • Wie vorstehend beschrieben wird die maximale Geschwindigkeitsübersteuerung ovr_max2,i hinsichtlich der maximalen Geschwindigkeit erhalten. Zusätzlich zu den vorstehend beschriebenen beiden Bedingungen bildet die maximale Geschwindigkeitsübersteuerung unter den Achsen die maximale Geschwindigkeitsübersteuerung, die für die Lernsteuerung nutzbar ist. Somit werden diese Bedingungen gemeinsam ausgedrückt als ovr_max. Dann wird die folgende Formel erhalten:
    Figure 00170003
  • Nimmt man an, dass der Betrag der Geschwindigkeitsübersteuerung, der in einem Schritt angehoben wird, Δ beträgt, so ist die Anzahl n der Schritte unter Verwendung von Δ wie folgt berechnet: n = ceiling( ovr_max – ovr_cur / Δ)
  • Der Lernbetrieb wird ausgeführt durch Vergrößern der Geschwindigkeitsübersteuerung (speed override) auf die maximale Geschwindigkeitsübersteuerung beispielsweise in n Schritten und der Lernkorrekturwert wird somit berechnet. Insbesondere im Schritt S102 wiederholt die Lernsteuereinheit den Lernvorgang einige Male durch Vergrößern der Geschwindigkeitsübersteuerung um einen vorbestimmten Wert und dann, wenn die Vibration konvergiert hat, berechnet sie den Lernkorrekturwert in Schritt S103.
  • Als nächstes bestimmt in Schritt S104 die Lernsteuereinheit, ob die Geschwindigkeitsübersteuerung über die maximale Geschwindigkeitsübersteuerung hinaus vergrößert wurde oder nicht. In dem Fall, in dem die Geschwindigkeitsübersteuerung nicht größer als die maximale Geschwindigkeitsübersteuerung ist, führt die Lernsteuereinheit den Lernbetrieb durch Vergrößern der Geschwindigkeitsübersteuerung um eine vorbestimmten Betrag in Schritt S102 aus. In dem Fall, in dem die Geschwindigkeitsübersteuerung die maximale Geschwindigkeitsübersteuerung überschritten hat, behält andererseits die Lernsteuereinheit den Lernkorrekturwert in einem F-ROM oder in einer Speicherkarte (MC) in Schritt S105.
  • Auf diese Weise werden der Vorgang zum Vergrößern der Geschwindigkeitsübersteuerung und der Vorgang zum Ausführen des Lernprozesses wechselweise wiederholt, bis die Geschwindigkeitsübersteuerung die maximale Geschwindigkeitsübersteuerung erreicht, wodurch die Betriebsgeschwindigkeit auf einem hohen Niveau vergrößert wird. Während des aktuellen Betriebs wird der Lernkorrekturwert durch zugreifen auf den F-ROM oder die Speicherkarte (MC) reproduziert, je nach Fall.
  • In den Ausführungsbeispielen dieser Erfindung, wie vorstehend beschrieben, wird der Beschleunigungssensor als Sensor verwendet, der an der Robotermechanismuseinheit angebracht ist. Nichtsdestotrotz kann auch ein visueller Sensor, ein Gyrosensor, eine Inertialsensor (Drehkreissensor) oder eine Verzerrungsanzeige alternativ verwendet werden.

Claims (9)

  1. Roboter (100) umfassend: eine Robotermechanismuseinheit (1) mit einem Sensor (10) zum Erfassen einer Position eines Teils, dessen Position zu steuern ist; und eine Steuereinheit (2) zum Steuern des Betriebs der Robotermechanismuseinheit (1); wobei die Steuereinheit (2) umfasst: eine Normalsteuereinheit (4), der ein Positionsbefehl für eine Sollposition oder eine Sollbahn für das zu steuernde Teil zugeführt wird und die den Betrieb der Robotermechanismuseinheit (1) unter Verwendung des zugeführten Positionsbefehls und eines Lernkorrekturwerts steuert; und eine Lernsteuereinheit (3) zum Betreiben der Robotermechanismuseinheit (1) nach Maßgabe eines Arbeitsschrittprogramms unter Verwendung des Positionsbefehls und des Lernkorrekturwerts, zum Berechnen eines Sollkorrekturwerts, der eine Differenz ist zwischen einer Position des zu steuernden Teils, die von dem Sensor (10) erfasst wurde, und der Sollposition, und zum Ausführen des Lernvorgangs, um einen neuen Lernkorrekturwert auf Grundlage des vorangegangenen Lernkorrekturwerts und des Sollkorrekturwerts zu berechnen, so dass die Position des zu steuernden Teils der Robotermechanismuseinheit (1), sich der Sollposition annähert; und wobei die Lernsteuereinheit (3) zunächst eine maximale Geschwindigkeitsübersteuerung berechnet, die in dem Lernbetrieb festgelegt werden kann, und den Lernvorgang wiederholt, um den neuen Lernkorrekturwert unter Verwendung des vorangegangenen Lernkorrekturwerts zu berechnen, während die Geschwindigkeitsübersteuerung mehrere Male um vorbestimmte Werte vergrößert wird, bis die maximale Geschwindigkeitsübersteuerung erreicht ist, und den neuen Lernkorrekturwert nach einem Konvergieren der Vibration speichert.
  2. Roboter (100) nach Anspruch 1, wobei die Lernsteuereinheit (3) die maximale Geschwindigkeitsübersteuerung auf Grundlage der maximalen Geschwindigkeit und der maximalen Beschleunigung berechnet, die für die Robotermechanismuseinheit (1) zulässig ist.
  3. Roboter (100) nach Anspruch 1, wobei die Lernsteuereinheit einen Hochpassfilter (36) zum Berechnen der Positionsvibrationskomponente der Robotermechanismuseinheit auf Grundlage der von dem Sensor erfassten Daten umfasst.
  4. Roboter (100) nach Anspruch 1, wobei die Lernsteuereinheit die Position auf jeder Achse umfassend die Positionsvibrationskomponente durch inverse Kinematik der Daten berechnet, die von dem Sensor hinsichtlich der drei Basisachse erfasst wurden.
  5. Roboter (100) nach Anspruch 1, wobei die Lernsteuereinheit bewirkt, dass die Robotermechanismuseinheit einen vorbestimmten Betrieb ausführt, wodurch die Position und die Neigung des Sensors berechnet werden.
  6. Roboter (100) nach Anspruch 1, wobei die Lernsteuereinheit ferner einen Speicher zum Behalten des Lernkorrekturwerts umfasst.
  7. Roboter (100) nach Anspruch 1, wobei der Sensor ein visueller Sensor, ein Beschleunigungssensor, ein Gyrosensor, ein Intertialsensor oder ein Verformungsanzeiger ist.
  8. Roboter (100) nach Anspruch 1, wobei der Sensor ein Befestigungsmittel aufweist, das entfernbar an der Robotermechanismuseinheit angebracht ist.
  9. Roboter (100) nach Anspruch 8, wobei der Sensor einen Magneten als Befestigungsmittel umfasst.
DE102011011681A 2010-02-19 2011-02-18 Roboter mit einer Lernsteuerfunktion Active DE102011011681B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010-035160 2010-02-19
JP2010035160A JP4850956B2 (ja) 2010-02-19 2010-02-19 学習制御機能を備えたロボット

Publications (2)

Publication Number Publication Date
DE102011011681A1 DE102011011681A1 (de) 2011-08-25
DE102011011681B4 true DE102011011681B4 (de) 2013-02-07

Family

ID=44356992

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102011011681A Active DE102011011681B4 (de) 2010-02-19 2011-02-18 Roboter mit einer Lernsteuerfunktion

Country Status (4)

Country Link
US (1) US8271134B2 (de)
JP (1) JP4850956B2 (de)
CN (1) CN102189550B (de)
DE (1) DE102011011681B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019205890B4 (de) 2018-05-09 2022-11-10 Fanuc Corporation Steuerungssystem und Verfahren zum Steuern eines angetriebenen Körpers

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9119655B2 (en) 2012-08-03 2015-09-01 Stryker Corporation Surgical manipulator capable of controlling a surgical instrument in multiple modes
US9921712B2 (en) 2010-12-29 2018-03-20 Mako Surgical Corp. System and method for providing substantially stable control of a surgical tool
JP2012232370A (ja) * 2011-04-28 2012-11-29 Seiko Epson Corp ロボットコントローラー、簡易設置型ロボット、及び簡易設置型ロボットの制御方法
WO2012153629A1 (ja) * 2011-05-12 2012-11-15 株式会社Ihi 運動予測制御装置と方法
JP5480198B2 (ja) * 2011-05-17 2014-04-23 ファナック株式会社 学習制御機能を備えたスポット溶接ロボット
US8886359B2 (en) 2011-05-17 2014-11-11 Fanuc Corporation Robot and spot welding robot with learning control function
US9566710B2 (en) 2011-06-02 2017-02-14 Brain Corporation Apparatus and methods for operating robotic devices using selective state space training
CN103213125B (zh) * 2011-11-04 2016-05-18 范努克机器人技术美国有限公司 具有3d显示的机器人教学装置
JP5792142B2 (ja) * 2011-11-25 2015-10-07 ミネベア株式会社 切削液噴射装置
JP5912627B2 (ja) * 2012-02-14 2016-04-27 川崎重工業株式会社 撮像検査装置ならびにその制御装置および制御方法
CN104470687A (zh) * 2012-07-20 2015-03-25 株式会社安川电机 机器人模拟器、机器人示教装置以及机器人示教方法
JP2014030857A (ja) * 2012-08-01 2014-02-20 Seiko Epson Corp ロボット及び搬送装置
US9226796B2 (en) 2012-08-03 2016-01-05 Stryker Corporation Method for detecting a disturbance as an energy applicator of a surgical instrument traverses a cutting path
US9820818B2 (en) 2012-08-03 2017-11-21 Stryker Corporation System and method for controlling a surgical manipulator based on implant parameters
KR20240093729A (ko) 2012-08-03 2024-06-24 스트리커 코포레이션 로봇 수술을 위한 시스템 및 방법
JP6111563B2 (ja) * 2012-08-31 2017-04-12 セイコーエプソン株式会社 ロボット
US9764468B2 (en) 2013-03-15 2017-09-19 Brain Corporation Adaptive predictor apparatus and methods
US9242372B2 (en) 2013-05-31 2016-01-26 Brain Corporation Adaptive robotic interface apparatus and methods
US9792546B2 (en) 2013-06-14 2017-10-17 Brain Corporation Hierarchical robotic controller apparatus and methods
US9314924B1 (en) * 2013-06-14 2016-04-19 Brain Corporation Predictive robotic controller apparatus and methods
JP5723426B2 (ja) * 2013-09-02 2015-05-27 株式会社カイジョー 駆動機構及び製造装置
US9579789B2 (en) 2013-09-27 2017-02-28 Brain Corporation Apparatus and methods for training of robotic control arbitration
US9597797B2 (en) 2013-11-01 2017-03-21 Brain Corporation Apparatus and methods for haptic training of robots
US9463571B2 (en) 2013-11-01 2016-10-11 Brian Corporation Apparatus and methods for online training of robots
JP5815664B2 (ja) * 2013-12-26 2015-11-17 ファナック株式会社 無線加速度センサを有するロボットシステム
US9358685B2 (en) 2014-02-03 2016-06-07 Brain Corporation Apparatus and methods for control of robot actions based on corrective user inputs
US9186794B2 (en) * 2014-03-04 2015-11-17 Fanuc Corporation Robot controller having function to simplify teaching operation and improve motion performance of robot
US9346167B2 (en) 2014-04-29 2016-05-24 Brain Corporation Trainable convolutional network apparatus and methods for operating a robotic vehicle
US9718187B2 (en) * 2014-06-11 2017-08-01 Canon Kabushiki Kaisha Robot controlling method, robot apparatus, program, recording medium, and method for manufacturing assembly component
US9630318B2 (en) 2014-10-02 2017-04-25 Brain Corporation Feature detection apparatus and methods for training of robotic navigation
US9717387B1 (en) 2015-02-26 2017-08-01 Brain Corporation Apparatus and methods for programming and training of robotic household appliances
JP6063006B1 (ja) 2015-06-30 2017-01-18 ファナック株式会社 学習メモリ切り換え機能を有するサーボ制御システム
JP6219897B2 (ja) 2015-09-28 2017-10-25 ファナック株式会社 最適な加減速を生成する工作機械
JP6174654B2 (ja) 2015-10-15 2017-08-02 ファナック株式会社 センサの位置と向きを算出する機能を備えたロボットシステム
JP6333795B2 (ja) 2015-11-24 2018-05-30 ファナック株式会社 学習による教示作業の簡易化及び動作性能向上機能を備えたロボットシステム
CN105313128A (zh) * 2015-11-30 2016-02-10 马鞍山万普实业发展有限公司 一种具备学习控制功能的汽车点焊机器人
DE102017000063B4 (de) * 2016-01-14 2019-10-31 Fanuc Corporation Robotereinrichtung mit Lernfunktion
DE102016016051B4 (de) 2016-01-15 2024-02-29 Kuka Deutschland Gmbh Roboteranordnung mit Handheld
DE102016000362A1 (de) * 2016-01-15 2017-07-20 Kuka Roboter Gmbh Roboteranordnung mit Handheld
JP7007791B2 (ja) * 2016-07-22 2022-01-25 川崎重工業株式会社 ロボットの運転方法、コンピュータプログラム、及びロボットシステム
CN106313044B (zh) * 2016-09-20 2018-09-14 华南理工大学 一种工业机器人前馈力矩补偿方法
US11202682B2 (en) 2016-12-16 2021-12-21 Mako Surgical Corp. Techniques for modifying tool operation in a surgical robotic system based on comparing actual and commanded states of the tool relative to a surgical site
JP6400750B2 (ja) * 2017-01-26 2018-10-03 ファナック株式会社 学習制御機能を備えた制御システム及び制御方法
JP2018126796A (ja) * 2017-02-06 2018-08-16 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
JP6484265B2 (ja) * 2017-02-15 2019-03-13 ファナック株式会社 学習制御機能を備えたロボットシステム及び学習制御方法
JP6426781B2 (ja) 2017-03-08 2018-11-21 ファナック株式会社 機械システム
JP6717768B2 (ja) * 2017-03-09 2020-07-01 ファナック株式会社 生産ラインにおける運用を考慮した学習制御を行うロボット及びその制御方法
JP6577527B2 (ja) * 2017-06-15 2019-09-18 ファナック株式会社 学習装置、制御装置及び制御システム
CN107363832B (zh) * 2017-06-15 2020-04-28 华南理工大学 一种工业机器人前馈力矩实时计算方法
JP6585666B2 (ja) 2017-07-03 2019-10-02 ファナック株式会社 速度一定が要求されるアプリケーションにおいて学習制御を行うロボット及びその制御方法
JP6564426B2 (ja) * 2017-07-07 2019-08-21 ファナック株式会社 部品供給装置及び機械学習装置
JP7024235B2 (ja) * 2017-07-19 2022-02-24 オムロン株式会社 制御装置、制御装置の制御方法、情報処理プログラム、および記録媒体
JP6622765B2 (ja) * 2017-08-22 2019-12-18 ファナック株式会社 ロボットシステム
JP6564433B2 (ja) 2017-08-29 2019-08-21 ファナック株式会社 ロボットシステム
WO2019049328A1 (ja) * 2017-09-08 2019-03-14 三菱電機株式会社 サーボ制御装置
JP6581162B2 (ja) 2017-09-29 2019-09-25 ファナック株式会社 加工システム及び加工機の制御方法
JP6669715B2 (ja) 2017-11-30 2020-03-18 ファナック株式会社 振動抑制装置
TWI660254B (zh) * 2017-12-20 2019-05-21 湧德電子股份有限公司 軌跡優化系統
CN111670094B (zh) * 2018-02-01 2022-12-06 本田技研工业株式会社 机器人***和机器人的控制方法
JP6705851B2 (ja) 2018-02-22 2020-06-03 ファナック株式会社 振動解析装置および振動解析方法
JP6698733B2 (ja) 2018-04-06 2020-05-27 ファナック株式会社 モータエンコーダ及びセンサを用いて学習制御を行うロボットシステム
JP6875329B2 (ja) 2018-06-26 2021-05-19 ファナック株式会社 学習制御を行うロボットシステム
JP6767436B2 (ja) 2018-07-06 2020-10-14 ファナック株式会社 自動機械及び制御装置
JP6836571B2 (ja) 2018-11-14 2021-03-03 ファナック株式会社 ロボット装置
JP7227018B2 (ja) * 2019-01-30 2023-02-21 ファナック株式会社 学習制御装置、ロボット制御装置およびロボット
JP7044734B2 (ja) * 2019-03-28 2022-03-30 ファナック株式会社 サーボ制御装置
JP7048539B2 (ja) * 2019-04-26 2022-04-05 ファナック株式会社 振動表示装置、動作プログラム作成装置、およびシステム
JP7448317B2 (ja) * 2019-07-16 2024-03-12 ファナック株式会社 ロボットの制御装置
DE102020133335A1 (de) * 2019-12-17 2021-06-17 Fanuc Corporation Werkzeugmaschine und verfahren zum abschätzen von schwingungen
JP7405602B2 (ja) * 2019-12-25 2023-12-26 ファナック株式会社 ノイズ除去装置
WO2021141049A1 (ja) * 2020-01-10 2021-07-15 ファナック株式会社 制御システム
JP7459530B2 (ja) * 2020-01-31 2024-04-02 セイコーエプソン株式会社 教示方法およびロボットシステム
JP7415018B2 (ja) 2020-08-21 2024-01-16 ファナック株式会社 制御装置、ロボット制御装置及び制御方法
TW202237354A (zh) 2021-03-29 2022-10-01 日商發那科股份有限公司 控制裝置
US20240116178A1 (en) * 2022-09-26 2024-04-11 Fanuc Corporation Predictive control method for torque-rate control and vibration suppression

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06289918A (ja) * 1993-04-02 1994-10-18 Nippon Telegr & Teleph Corp <Ntt> ロボットの学習制御方法
JP2001022423A (ja) * 1999-07-08 2001-01-26 Matsushita Electric Ind Co Ltd 搬送ロボットの動作速度・加速度最適化方法
US20040150363A1 (en) * 2003-01-21 2004-08-05 Fanuc Ltd. Servo controller
US20060082340A1 (en) * 2004-10-18 2006-04-20 Fanuc Ltd Robot with learning control function and method for controlling the robot
US20060132078A1 (en) * 2004-12-16 2006-06-22 Fanuc Ltd Controller for machine effecting end
US20090222109A1 (en) * 2008-02-29 2009-09-03 Canon Kabushiki Kaisha Position control apparatus including iterative learning circuit, exposure apparatus, method for manufacturing device, and iterative learning method for use in position control apparatus having iterative learning circuit including learning filter

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167328A (en) * 1995-09-19 2000-12-26 Kabushiki Kaisha Yaskawa Denki Robot language processing apparatus
JP4122652B2 (ja) * 1999-09-27 2008-07-23 松下電器産業株式会社 ロボットの制御装置
US20040243147A1 (en) * 2001-07-03 2004-12-02 Lipow Kenneth I. Surgical robot and robotic controller
JP3733364B2 (ja) * 2003-11-18 2006-01-11 ファナック株式会社 教示位置修正方法
JP2005153047A (ja) 2003-11-21 2005-06-16 Fanuc Ltd ロボットの関節装置。
WO2006093652A2 (en) * 2005-02-25 2006-09-08 Abb Research Ltd. Method of and apparatus for automated path learning
JP2007144623A (ja) * 2007-03-12 2007-06-14 Fanuc Ltd 移動情報測定装置
US8175749B2 (en) * 2008-02-28 2012-05-08 Panasonic Corporation Control apparatus and control method for robot arm, robot, control program for robot arm, and integrated electronic circuit for controlling robot arm

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06289918A (ja) * 1993-04-02 1994-10-18 Nippon Telegr & Teleph Corp <Ntt> ロボットの学習制御方法
JP2001022423A (ja) * 1999-07-08 2001-01-26 Matsushita Electric Ind Co Ltd 搬送ロボットの動作速度・加速度最適化方法
US20040150363A1 (en) * 2003-01-21 2004-08-05 Fanuc Ltd. Servo controller
US20060082340A1 (en) * 2004-10-18 2006-04-20 Fanuc Ltd Robot with learning control function and method for controlling the robot
US20060132078A1 (en) * 2004-12-16 2006-06-22 Fanuc Ltd Controller for machine effecting end
JP2006172149A (ja) * 2004-12-16 2006-06-29 Fanuc Ltd 機械先端点の制御装置
US20090222109A1 (en) * 2008-02-29 2009-09-03 Canon Kabushiki Kaisha Position control apparatus including iterative learning circuit, exposure apparatus, method for manufacturing device, and iterative learning method for use in position control apparatus having iterative learning circuit including learning filter

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019205890B4 (de) 2018-05-09 2022-11-10 Fanuc Corporation Steuerungssystem und Verfahren zum Steuern eines angetriebenen Körpers

Also Published As

Publication number Publication date
JP2011167817A (ja) 2011-09-01
US8271134B2 (en) 2012-09-18
CN102189550A (zh) 2011-09-21
JP4850956B2 (ja) 2012-01-11
CN102189550B (zh) 2014-06-04
US20110208356A1 (en) 2011-08-25
DE102011011681A1 (de) 2011-08-25

Similar Documents

Publication Publication Date Title
DE102011011681B4 (de) Roboter mit einer Lernsteuerfunktion
DE102012104194B4 (de) Roboter und Punktschweissroboter mit lernender Steuerungsfunktion
DE102017009940B4 (de) Robotersteuervorrichtung mit Lernsteuerfunktion
DE102015004475B4 (de) Robotersteuervorrichtung zum Steuern eines Roboters, der gemäß einer aufgebrachten Kraft bewegt wird
DE102015004481B4 (de) Robotersteuervorrichtung zum Steuern eines gemäß einer ausgeübten Kraft bewegten Roboters
DE102018001026B4 (de) Robotersystem mit einer lernenden Steuerungsfunktion und lernendes Steuerungsverfahren
DE102012106771B4 (de) Controller für elektromotor, umfassend eine funktion zum simultanen schätzen von trägheit, reibung und federkonstante
DE102004026814A1 (de) Verfahren und Vorrichtung zum Verbessern der Positioniergenauigkeit eines Handhabungsgeräts
DE102006055917B4 (de) Industrieroboter und Verfahren zum Erkennen eines ungenau parametrierten Robotermodells
DE102016210096B4 (de) Roboter
DE102018210864B3 (de) Verfahren und System zum Regeln eines Roboters
DE102019108804B4 (de) Robotersystem zur durchführung einer lernkontrolle unter verwendung von motorgeber und sensor
DE102018133349A1 (de) Verfahren und Vorrichtung zur Momentschätzung
DE102011014299A1 (de) Verfahren und Mittel zum Steuern einer Automatisierungseinrichtung, insbesodere eines Roboters
DE60016190T2 (de) Vorrichtung und steuerung eines industriellen robotors und verfahren zur programmierung und/ oder einstellung der bewegungen des robotors
DE102019104169A1 (de) Quadrantenbasierte reibungskompensation für eine schätzung der reifenlast in lenkungssystemen
DE112018006220T5 (de) Verwendung eines Unterstützungsmotors eines Servolenkungssystems zum Erzeugen von Testzyklen gemäß einem Schwingungserfassungszyklus
DE112018006219T5 (de) Verwendung eines Unterstützungsmotors eines Servolenkungssystems zum Erzeugen von Testzyklen gemäß einem Krafterfassungszyklus
WO2019224288A1 (de) Richtungsabhängige kollisionsdetektion für einen robotermanipulator
DE102019004545B4 (de) Automatische Maschine und Steuervorrichtung für Automatische Maschine
DE102016009436B4 (de) Robotersteuerung, die ein Rütteln einer Werkzeugspitze bei einem Roboter verhindert, der mit einer Verfahrachse ausgestattet ist
DE19500738C1 (de) Regelanordnung und Regelverfahren für einen motorisch betriebenen Gelenkarm
DE102022126205B4 (de) Robotersystem zum Bewegen einer Nutzlast mit minimalem Schwanken der Nutzlast und erhöhter Positionierungsgenauigkeit
DE102021212817A1 (de) Wiederholte Positionsbestimmung eines beweglichen Teils eines Koordinatenmessgerätes
DE102009040194B4 (de) Verfahren zur Kraftregelung

Legal Events

Date Code Title Description
R012 Request for examination validly filed

Effective date: 20111221

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final

Effective date: 20130508