DE112021005419T5 - Robotersteuerungsvorrichtung und Robotersystem - Google Patents

Robotersteuerungsvorrichtung und Robotersystem Download PDF

Info

Publication number
DE112021005419T5
DE112021005419T5 DE112021005419.8T DE112021005419T DE112021005419T5 DE 112021005419 T5 DE112021005419 T5 DE 112021005419T5 DE 112021005419 T DE112021005419 T DE 112021005419T DE 112021005419 T5 DE112021005419 T5 DE 112021005419T5
Authority
DE
Germany
Prior art keywords
robot
vibration amount
task
vibration
control device
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
DE112021005419.8T
Other languages
English (en)
Inventor
Satoshi Inagaki
Hajime Suzuki
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 DE112021005419T5 publication Critical patent/DE112021005419T5/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
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • 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/1641Programme controls characterised by the control loop compensation for backlash, friction, compliance, elasticity in the joints
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23KSOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
    • B23K11/00Resistance welding; Severing by resistance heating
    • B23K11/10Spot welding; Stitch welding
    • B23K11/11Spot welding
    • B23K11/115Spot welding by means of two electrodes placed opposite one another on both sides of the welded parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/005Manipulators for mechanical processing tasks
    • 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/39186Flexible joint
    • 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/39195Control, avoid oscillation, vibration due to low rigidity

Landscapes

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

Abstract

Bereitgestellt wird eine Robotersteuerungsvorrichtung, die in der Lage ist, ein Schwingungsausmaß eines Roboters vermittels maschinellem Lernen auf Grundlage einer kleinen Anzahl von Operationen zu verringern. Eine Robotersteuerungsvorrichtung gemäß einem Aspekt der vorliegenden Erfindung, die zur Durchführung einer Aufgabe in Bezug auf ein Zielobjekt, das von einem Roboter in Bewegung versetzt wird, den Betrieb des Roboters auf Grundlage eines Betriebsprogramms steuert, das eine Vielzahl von Durchgangspunkten verwendet, um einen Bewegungspfad vorzugeben, der einen oder mehrere Aufgabenabschnitte enthält, in denen die Aufgabe durchgeführt werden soll, wobei die Robotersteuerungsvorrichtung aufweist: eine Sollwert-Erzeugungseinheit, welche derart konfiguriert ist, dass sie auf Grundlage des Betriebsprogramms einen Sollwert erzeugt, der einen Zustand des Roboters für jeden Zeitpunkt anweist; eine Antriebseinheit, die derart konfiguriert ist, dass sie den Roboter gemäß dem Sollwert antreibt; eine Schwingungsausmaß-Erlangungseinheit, die derart konfiguriert ist, dass sie für jeder Zeitpunkt ein Schwingungsausmaß des Roboters erlangt, der von der Antriebseinheit angetrieben wird; eine Schwingungsausmaß-Extraktionseinheit, die derart konfiguriert ist, dass sie auf Grundlage des Betriebsprogramms das Schwingungsausmaß für einen Zeitpunkt, der dem Aufgabenabschnitt entspricht, aus den Schwingungsausmaßen extrahiert, die durch die Schwingungsausmaß-Erlangungseinheit erlangt werden; und eine Sollwert-Korrektureinheit, die derart konfiguriert ist, dass sie auf Grundlage des Schwingungsausmaßes, das durch die Schwingungsausmaß-Extraktionseinheit extrahiert wird, den Sollwert korrigiert.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft eine Robotersteuerungsvorrichtung und ein Robotersystem.
  • TECHNISCHER HINTERGRUND
  • Systeme wie etwa Roboterschweißsysteme, bei denen ein Referenzpunkt, der die Position eines beförderten Objekts wie eines Werkstücks oder eines Werkzeugs darstellt, das von einer Roboterspitze gehalten wird, dazu gebracht wird, sich entlang eines vordefinierten Pfads zu bewegen, um dadurch eine gewünschte Operation durchzuführen, werden weit verbreitet eingesetzt. In einem solchen Robotersystem wird der Roboter derart betrieben, dass das Spitzenende des Roboters gemäß einem Betriebsprogramm, welches den gewünschten Pfad durch eine Vielzahl von Durchgangspunkten darstellt, die Vielzahl von Durchgangspunkten der Reihe nach durchläuft.
  • Da der Roboter in seiner mechanischen Struktur über eine, wenn auch geringe, Elastizität verfügt, werden in Verbindung mit dem Betrieb des Roboters Schwingungen erzeugt. Wenn der Betrieb durch den Roboter beschleunigt wird, um Arbeitseffizienz zu verbessern, nehmen die Schwingungen bzw. Vibrationen des Roboters zu. Dementsprechend wurde vorgeschlagen, tatsächliche Schwingungen bei Betrieb eines Roboters zu messen und vermittels maschinellem Lernen auf Grundlage dieses Messwerts die Zeit für die Beschleunigung/Verzögerung des Roboters derart zu korrigieren, dass es möglich ist, die Schwingungen des Roboters zu unterbinden (siehe zum Beispiel Patentdokument 1).
  • Patentdokument 1: Japanische ungeprüfte Patentanmeldung, Veröffentlichungsnummer 2019-147197
  • OFFENBARUNG DER ERFINDUNG
  • Durch die Erfindung zu lösende Probleme
  • Um die Schwingungen eines Roboters vermittels maschinellem Lernen ausreichend zu unterbinden, ist es notwendig, einen Schritt, um den Roboter in Betrieb zu nehmen und die tatsächlich auftretenden Schwingungen zu bestätigen, sowie einen Schritt, um einen Sollwert derart zu korrigieren, dass die bestätigten Schwingungen aufgehoben werden, zu wiederholen. Im Falle des Ausführens von verschiedenen Betriebsprogrammen in demselben Robotersystem, zum Beispiel in einem Fall, in dem ein Roboter in einer Fertigungsstraße zur Herstellung einer Vielzahl von Produkten in kleinen Mengen eingesetzt wird, ist es notwendig, den Betrieb zum Zweck des maschinellen Lernens für jedes Betriebsprogramm zu wiederholen. Die Anzahl von Wiederholungen für das maschinelle Lernen, die erforderlich ist, damit Schwingungen innerhalb eines zulässigen Bereichs liegen, steigt mit zunehmender Betriebsgeschwindigkeit des Roboters. Dementsprechend wird in einem Fall, in dem die erforderliche Anzahl von Wiederholungen eines Betriebsprogramms gering ist, eine Zeitverringerung aufgrund einer Erhöhung der Betriebsgeschwindigkeit des Roboters leider durch die für das maschinelle Lernen erforderliche Zeit ausgeglichen.
  • In Anbetracht der tatsächlichen Umstände ist es ein Ziel der vorliegenden Erfindung, eine Robotersteuerungsvorrichtung und ein Robotersystem bereitzustellen, die in der Lage sind, maschinelles Lernen auf Grundlage einer kleinen Anzahl von Operationen zu verwenden, um die Schwingungen eines Roboters zu verringern.
  • Mittel zur Lösung der Probleme
  • Eine Robotersteuerungsvorrichtung gemäß einem Aspekt der vorliegenden Erfindung ist eine Robotersteuerungsvorrichtung, die zur Durchführung einer Aufgabe in Bezug auf ein Zielobjekt, das von einem Roboter in Bewegung versetzt wird, den Betrieb des Roboters auf Grundlage eines Betriebsprogramms steuert, das eine Vielzahl von Durchgangspunkten verwendet, um einen Bewegungspfad vorzugeben, der einen oder mehrere Aufgabenabschnitte enthält, in denen die Aufgabe durchgeführt werden soll. Die Robotersteuerungsvorrichtung weist auf: eine Sollwert-Erzeugungseinheit, die auf Grundlage des Betriebsprogramms einen Sollwert erzeugt, der einen Zustand des Roboters für jeden Zeitpunkt anweist; eine Antriebseinheit, die den Roboter gemäß dem Sollwert antreibt; eine Schwingungsausmaß-Erlangungseinheit, welche derart konfiguriert ist, dass sie für jeden Zeitpunkt ein Schwingungsausmaß des Roboters erlangt, der durch die Antriebseinheit angetrieben wird; eine Schwingungsausmaß-Extraktionseinheit, die auf Grundlage des Betriebsprogramms das Schwingungsausmaß für einen Zeitpunkt, der dem Aufgabenabschnitt entspricht, aus den Schwingungsausmaßen extrahiert, die durch die Schwingungsausmaß-Erlangungseinheit erlangt wurden; und eine Sollwert-Korrektureinheit, die auf Grundlage des Schwingungsausmaßes, das durch die Schwingungsausmaß-Extraktionseinheit extrahiert wird, den Sollwert korrigiert.
  • Wirkungen der Erfindung
  • Durch die vorliegende Erfindung ist es möglich, ein Robotersystem bereitzustellen, das in der Lage ist, Schwingungen gemäß maschinellem Lernen auf Grundlage einer kleinen Anzahl von Operationen zu verringern.
  • Figurenliste
    • 1 ist eine schematische Ansicht, welche die Konfiguration eines Robotersystems gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
    • 2 ist eine schematische Ansicht, die einen Bewegungspfad für ein Zielobjekt in einem Fall des Durchführens von Punktschweißen unter Verwendung des Robotersystems in 1 veranschaulicht;
    • 3 ist eine schematische Ansicht, die einen Bewegungspfad für ein Zielobjekt in einem Fall des Durchführens von Laserschweißen unter Verwendung des Robotersystems in 1 veranschaulicht;
    • 4 ist eine schematische Ansicht, welche Bereiche zeigt, in denen Schwingungsausmaße für den Bewegungspfad in 2 extrahiert werden;
    • 5 ist eine schematische Ansicht, welche Bereiche zeigt, in denen Schwingungsausmaße für den Bewegungspfad in 3 extrahiert werden;
    • 6 ist ein Steuerblockdiagramm, das einen Ablauf zur Sollwertkorrektur in dem Robotersystem aus 1 veranschaulicht; und
    • 7 ist ein Graph, der Änderung für Positionen eines Zielobjekts in dem Robotersystem aus 1 veranschaulicht.
  • BEVORZUGTE AUSFÜHRUNGSFORM DER ERFINDUNG
  • Nachfolgend werden Ausführungsformen der vorliegenden Erfindung unter Bezugnahme auf die Zeichnungen beschrieben. 1 ist eine schematische Ansicht, die eine Konfiguration eines Robotersystems 1 gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht.
  • Das Robotersystem 1 gemäß der vorliegenden Ausführungsform ist versehen mit einem Roboter 10; einem Zielobjekt 20, das von einem Spitzenende des Roboters 10 gehalten und von dem Roboter 10 in Bewegung versetzt wird, einem Schwingungsdetektor 30, der einen Wert erfasst, der sich auf ein Schwingungsausmaß (Abweichung zwischen einer theoretischen Position und einer tatsächlichen Position für ein Spitzenende) für den Roboter 10 bezieht, und einer Robotersteuerungsvorrichtung 40, die den Roboter 10 steuert.
  • Als der Roboter 10 wird typischerweise ein vertikaler Knickarmroboter wie der veranschaulichte Roboter verwendet. In der folgenden Beschreibung wird der Roboter 10 als vertikaler Knickarmroboter beschrieben, aber der Roboter 10 kann zum Beispiel auch ein skalarer Roboter, ein Parallelgelenkroboter oder ein Roboter für kartesische Koordinaten sein.
  • Der Roboter 10 umfasst eine Vielzahl von Gliedern, die durch Gelenke verbunden sind, und definiert eine Winkelposition für eine Antriebsachse für jedes Gelenk gemäß einem Sollwert, der von der Robotersteuerungsvorrichtung 40 eingegeben wird, wodurch ein Zielobjekt 20 in einem Weltkoordinatensystem positioniert wird (normalerweise ein Koordinatensystem für einen Raum, in dem der Basisabschnitt des Roboters 10 befestigt ist). Antriebsmechanismen für die Glieder und Gelenke in dem Roboter 10 können sich geringfügig elastisch verformen und in Verbindung mit dem Betrieb durch den Roboter 10 das Auftreten von Schwingungen bzw. Vibrationen verursachen. Schwingungen bzw. Vibrationen des Roboters 10 erzeugen ein gewisses Schwingungsausmaß in dem Zielobjekt 20.
  • Es ist angedacht, dass das Zielobjekt 20 unter anderem eine Vorrichtung ist, die verschiedene Operationen wie zum Beispiel Bearbeitung oder Messung durchführt, oder ein Werkstück ist, das einer Operation unterzogen werden soll, und kann ein Halter sein, der diese hält. Bei dem in 1 dargestellten Zielobjekt 20 handelt es sich zum Beispiel um einen Schweißkopf, der Punktschweißen durch Einklemmen eines Werkstücks und Anlegen eines Schweißstroms durchführt.
  • Der Schwingungsdetektor 30 detektiert einen Wert, der zur Berechnung eines Schwingungsausmaßes verwendet werden kann, wie etwa die Beschleunigung oder eine Position in dem Weltkoordinatensystem für das Spitzenende des Roboters 10 oder das Zielobjekt 20. In dem veranschaulichten Beispiel ist der Schwingungsdetektor 30 derart an der Spitze des Roboters 10 befestigt, dass er sich nicht relativ zu dem Zielobjekt 20 bewegt; der Schwingungsdetektor 30 kann jedoch auch unbeweglich in dem Weltkoordinatensystem installiert sein.
  • Um eine Aufgabe in Bezug auf das Zielobjekt 20 durchzuführen, das durch den Roboter 10 in Bewegung versetzt wird, steuert die Robotersteuerungsvorrichtung 40 den Betrieb durch den Roboter 10 auf Grundlage eines Betriebsprogramms, das eine Vielzahl von Durchgangspunkten verwendet, um einen Bewegungspfad vorzugeben, der einen oder mehrere Aufgabenabschnitte enthält, die zur Durchführung der Aufgabe dienen. Insbesondere führt die Robotersteuerungsvorrichtung 40 Antriebsstrom an jede Antriebsachse des Roboters 10 zu, um den Roboter 10 zu veranlassen, gemäß dem Betriebsprogramm zu arbeiten.
  • Die Robotersteuerungsvorrichtung 40 kann zum Beispiel dadurch realisiert werden, dass ein oder mehrere Computergeräte, die unter anderem über Speicher, eine CPU und eine Eingabe-/Ausgabeschnittstelle aufweisen, veranlasst werden, ein entsprechendes Steuerprogramm auszuführen. Es wird angemerkt, dass jede unten beschriebene Komponente in der Robotersteuerungsvorrichtung 40 durch ihre Funktion kategorisiert wird und nicht eine Komponente sein muss, die eindeutig in einer physischen Konfiguration und Programmstruktur klassifiziert werden kann.
  • Die Robotersteuerungsvorrichtung 40 ist mit einer Programmspeichereinheit 41, einer Sollwert-Erzeugungseinheit 42, einer Sollwert-Speichereinheit 43, einer Antriebseinheit 44, einer Schwingungsausmaß-Erlangungseinheit 45, einer Schwingungsausmaß-Extraktionseinheit 46 und einer Sollwert-Korrektureinheit 47 versehen.
  • Die Programmspeichereinheit 41 speichert ein Betriebsprogramm. In dem Robotersystem 1 kann zum Beispiel ein Betriebsprogramm zur Durchführung von Punktschweißen auf einem Bewegungspfad, wie in 2 dargestellt, wie folgt geschrieben werden.
  • (Beispiel eines Punktschweißprogramms)
  • Figure DE112021005419T5_0001
  • Ähnlich wie herkömmlich umfasst das beispielhaft dargestellte Betriebsprogramm Befehlstext, der Durchgangspunkte für den Roboter 10 angibt, sowie Befehlstext, der einen Startpunkt und einen Endpunkt für das Lernen angibt. Es ist möglich, einen Befehl, der die Ausführung einer Aufgabe in Bezug auf das Zielobjekt 20 anweist, in einen Befehlstext zu schreiben, der einen Durchgangspunkt für den Roboter 10 angibt. In dem beispielhaft dargestellten Betriebsprogramm bezeichnet „POSITION[n]“ den n-ten Durchgangspunkt an, der in einer Tabelle definiert ist, die Durchgangspunkte separat definiert. Ein Startpunkt und ein Endpunkt für einen Aufgabenabschnitt zur tatsächlichen Durchführung einer Aufgabe in Bezug auf ein Zielobjekt können jeweils durch einen Durchgangspunkt gekennzeichnet werden. Zur Vereinfachung wird „POSITION[n]“ in den Zeichnungen als „p[n]“ dargestellt.
  • Die Robotersteuerungsvorrichtung 40 gemäß der vorliegenden Ausführungsform ist derart konfiguriert, dass es möglich ist, verschiedene Aufgabentypen in Befehlstext zu schreiben, der einen Startpunkt für das Lernen angibt. Anhand eines geschriebenen Aufgabentyps wird unterschieden, ob es sich um eine Aufgabe handelt, die an einem einzigen Durchgangspunkt ausgeführt wird, wie beim Punktschweißen, oder ob es sich um eine Aufgabe handelt, die an einem Durchgangspunkt begonnen und an einem anderen Durchgangspunkt beendet wird, wie zum Beispiel bei der Laserbearbeitung. Bei dem beispielhaft dargestellten Betriebsprogramm ist „PUNKT“ am Ende des Befehlstextes, der den Startpunkt für das Lernen in der sechsten Zeile angibt, ein Schalter, der anzeigt, dass der Aufgabeninhalt Punktschweißen ist und ein Aufgabenabschnitt nur ein Durchgangspunkt ist, d.h., der Startpunkt und der Endpunkt für den Aufgabenabschnitt sind derselbe. In diesem Arbeitsprogramm bedeutet „SPOT [S=1]“ in den Zeilen 7, 9 und 11, dass Punktschweißen an einem Durchgangspunkt durchgeführt werden soll, der in dieser Zeile angegeben werden kann.
  • Als Nächstes wird ein Arbeitsprogramm für den Fall beispielhaft dargestellt, bei dem das Zielobjekt 20 ein Laserkopf zur Bildung einer linearen Nut durch kontinuierliche Bestrahlung eines Werkstücks mit einem Laser ist und Laserbearbeitung in einem Bewegungspfad durchgeführt wird, wie er zum Beispiel in 3 dargestellt ist.
  • (Beispiel eines Laserbearbeitungsprogramm)
  • Figure DE112021005419T5_0002
  • In dem beispielhaften Betriebsprogramm ist „LASERBEARBEITUNG“ am Ende des Befehlstextes, der den Startpunkt für das Lernen angibt, in der dritten Zeile ein Schalter, der angibt, dass der Aufgabeninhalt Laserbearbeitung ist, der Aufgabenabschnitt an einem Durchgangspunkt beginnt, für den ein Befehl geschrieben wird, der einen Startpunkt für die Laserbestrahlung angibt, und an einem Durchgangspunkt endet, für den ein Befehl geschrieben wird, der einen Endpunkt für die Laserbestrahlung angibt. Im obigen Betriebsprogramm ist „AUSFÜHREN[1] = EIN“ in den Zeilen 4, 11 und 19 ein Befehl zur Anweisung des Beginns der Laserbestrahlung an einem Durchgangspunkt, der in die nächste Zeile geschrieben wird, und „AUSFÜHREN[1] = AUS“ in den Zeilen 8, 16 und 23 ein Befehl zur Anweisung des Endes der Laserbestrahlung an einem Durchgangspunkt, der in die vorherige Zeile geschrieben wird.
  • Auf Grundlage eines Betriebsprogramms erzeugt die Sollwert-Erzeugungseinheit 42 einen Sollwert, um einen Zustand für jeden Zeitpunkt des Roboters 10 anzuweisen. Insbesondere werden Positionen, die von den jeweiligen Antriebsachsen in dem Roboter 10 eingenommen werden sollen, für jeden Zeitpunkt berechnet, wenn das Zielobjekt 20 dazu veranlasst wird, sich entlang einer in das Betriebsprogramm geschriebenen Route zu bewegen.
  • Die Sollwert-Speichereinheit 43 speichert einen Sollwert, der von der Sollwert-Erzeugungseinheit 42 berechnet wird. Ein in der Sollwert-Speichereinheit 43 gespeicherter Sollwert kann durch die Sollwert-Korrektureinheit 47 aktualisiert werden.
  • Die Antriebseinheit 44 treibt den Roboter 10 gemäß einem in der Sollwert-Speichereinheit 43 gespeicherten Sollwert an. Damit die jeweiligen Antriebsachsen in dem Roboter 10 die durch einen Sollwert bezeichneten Winkelpositionen erreichen können, werden insbesondere die Drehgeschwindigkeiten der Antriebsachsen und die dafür erforderlichen Antriebsströme berechnet, und die berechneten Antriebsströme werden den jeweiligen Achsen in dem Roboter 10 zugeführt.
  • Basierend auf einem Detektionswert des Schwingungsdetektors 30 erlangt die Schwingungsausmaß-Erlangungseinheit 45 ein Schwingungsausmaß für jeden Zeitpunkt in dem durch die Antriebseinheit 44 angetriebenen Roboter 10. Insbesondere in einem Fall, bei dem der Schwingungsdetektor 30 die Position des Spitzenendes des Roboters 10 oder des Zielobjekts 20 in einem Weltkoordinatensystem detektiert, kann die Schwingungsausmaß-Erlangungseinheit 45 derart konfiguriert werden, dass sie ein Schwingungsausmaß aus der Differenz zwischen einem Detektionswert des Schwingungsdetektors 30 und einer Position berechnet, die aus einem Sollwert von der Robotersteuerungsvorrichtung 40 berechnet wird. Zudem kann in einem Fall, in dem der Schwingungsdetektor 30 die Beschleunigung des Spitzenendes des Roboters 10 oder des Zielobjekts 20 detektiert, die Schwingungsausmaß-Erlangungseinheit 45 derart konfiguriert sein, dass sie ein Schwingungsausmaß aus der Differenz zwischen einem Detektionswert des Schwingungsdetektors 30 und einer Beschleunigung berechnet, die aus einem Sollwert der Robotersteuerungsvorrichtung 40 berechnet wird.
  • Basierend auf einem Betriebsprogramm extrahiert die Schwingungsausmaß-Extraktionseinheit 46 ein Schwingungsausmaß für eine Zeit, die einem Aufgabenabschnitt entspricht, aus den Schwingungsausmaßen, die durch die Schwingungsausmaß-Erlangungseinheit 45 erlangt werden. Hier wird ein „Zeitpunkt, der einem Aufgabenabschnitt entspricht“ bevorzugt auf einen Zeitpunkt eingestellt, der zu einem vorbestimmten eingestellten Bereich gehört, in dem der Gesamtbereich des Aufgabenabschnitts und der Endpunkt des Aufgabenabschnitts beide zu dem Startpunkt des Aufgabenabschnitts passen, mit anderen Worten ein Zeitpunkt, der zu einem eingestellten Bereich unmittelbar vor dem Aufgabenabschnitt gehört. Der „eingestellte Bereich“ ist ein Bereich, von dem angenommen wird, dass er Schwingungen des Roboters 10 an dem Startpunkt des Aufgabenabschnitts stark beeinflusst, und auf Grundlage einer vorab festgelegten Regel definiert wird. Insbesondere kann der Sollbereich als Reaktion auf geschätzte Schwingungen des Roboters 10 eingestellt werden, zum Beispiel auf einen festen Zeitbereich, einen festen Bewegungsdistanzbereich, oder einen Zeitbereich proportional zu einer Bewegungsgeschwindigkeit. Es sollte beachtet werden, dass der eingestellte Bereich auf „null“ gesetzt werden kann, d.h. derart eingestellt wird, dass ein Bereich für die Extraktion eines Schwingungsausmaßes einem Aufgabenabschnitt entspricht.
  • 4 veranschaulicht durch dicke Linien die Bereiche, in denen Schwingungsausmaße für den Bewegungspfad in 2 extrahiert werden, und 5 veranschaulicht durch dicke Linien Bereiche, in denen Schwingungsausmaße für den Bewegungspfad in 3 extrahiert werden. Auf diese Weise extrahiert die Schwingungsausmaß-Extraktionseinheit 46 nur Schwingungsausmaße für einen Aufgabenabschnitt des Durchführens einer Aufgabe in Bezug auf das Zielobjekt 20 und einen unmittelbar davor liegenden Sollbereich und ignoriert Schwingungsausmaße für Abschnitte, in denen keine Aufgabe durchgeführt wird, mit Ausnahme von Sollbereichen, die unmittelbar vor Aufgabenabschnitten liegen.
  • Ein Betriebsprogramm wird typischerweise erstellt, um die Geschwindigkeit und Beschleunigung des Zielobjekts 20 zu begrenzen, um die Aufgabe in Bezug auf das Zielobjekt 20 in einem Aufgabenabschnitt genau auszuführen; um jedoch die Zykluszeit während eines Aufgabenabschnitts zu verkürzen, wird ein Betriebsprogramm ohne Begrenzung der Geschwindigkeit und Beschleunigung erstellt. Wenn ein solches Betriebsprogramm befolgt wird, ist es wahrscheinlich, dass die Schwingungen aufgrund der elastischen Verformung des Roboters 10 zunehmen, wobei die Beschleunigung des Roboters 10 unmittelbar nach Beginn der Bewegung von dem Endpunkt eines Aufgabenabschnitts hin zu dem Startpunkt eines nachfolgenden Aufgabenabschnitts ein Maximum erreicht.
  • Die Sollwert-Korrektureinheit 47 verwendet maschinelles Lernen auf Grundlage des von der Schwingungsausmaß-Extraktionseinheit 46 extrahierten Schwingungsausmaßes, um einen Sollwert derart zu korrigieren, dass das Schwingungsausmaß des Roboters 10 abnimmt. Die Sollwert-Korrektureinheit 47 behandelt ein Schwingungsausmaß für einen Zeitpunkt, an dem Extraktion durch die Schwingungsausmaß-Extraktionseinheit 46 nicht durchgeführt wurde, als Null. Mit anderen Worten korrigiert die Sollwert-Korrektureinheit 47 einen Sollwert, um nur ein Schwingungsausmaß zu verringern, welches die Genauigkeit einer Aufgabe in Bezug auf das Zielobjekt 20 beeinflussen kann, für einen Aufgabenabschnitt und einen eingestellten Bereich, der unmittelbar davor liegt. Im Gegensatz dazu führt die Sollwert-Korrektureinheit 47 keine Kompensation eines Schwingungsausmaßes in einem Bereich durch, in dem es keinen Einfluss auf die Genauigkeit einer Aufgabe in Bezug auf das Zielobjekt 20 unmittelbar nach dem Beginn der Bewegung vom Endpunkt eines Aufgabenabschnitts zum Startpunkt des nachfolgenden Aufgabenabschnitts gibt und in dem ein Schwingungsausmaß wahrscheinlich groß werden wird. Es wird angemerkt, dass Korrektur eines Sollwerts vermittels maschinellem Lernen auf Grundlage des Schwingungsausmaßes mit einem allgemein bekannten Verfahren durchgeführt werden kann.
  • Wenn Kompensation für Schwingungen durchgeführt wird, während Beschleunigung des Roboters 10 hoch ist, ist es möglich, dass ein Überschwingen auftritt und eine Schwingungsausmaß zunimmt, wenn Beschleunigung des Roboters 10 abgenommen hat. Die Sollwert-Korrektureinheit 47 kann eine Schwingung zulassen, während derartige Beschleunigung des Roboters 10 hoch ist, und somit kann verhindert werden, dass ein Anstieg in dem Schwingungsausmaß aufgrund von Überschwingen bei der Kompensation einer Schwingungsausmaß innerhalb eines Aufgabenabschnitts auftritt. Es wird angemerkt, dass, während das Zielobjekt 20 von einem Aufgabenabschnitt zu dem nachfolgenden Aufgabenabschnitt bewegt wird und keine Aufgabe durchgeführt wird, selbst wenn eine Abweichung zwischen der tatsächlichen Position des Roboters 10 und einer durch ein Betriebsprogramm geplanten Position auftritt, es keinen Einfluss auf ein Ergebnis der Aufgabe gibt.
  • 6 ist eine Steuerblockansicht, die den Ablauf der Sollwertkorrektur in dem Robotersystem 1 veranschaulicht. Auf diese Weise werden, nachdem einige Detektionswerte des Schwingungsdetektors 30 durch die Schwingungsausmaß-Extraktionseinheit 46 maskiert wurden, Sollwerte durch die Sollwert-Korrektureinheit 47 korrigiert, wodurch es möglich ist, maschinelles Lernen auf Grundlage einer kleinen Anzahl von Operationen zu verwenden, um die Schwingungen des Roboters 10 in einem Aufgabenabschnitt effektiv zu verringern.
  • 7 veranschaulicht grafisch ein Beispiel für zeitliche Veränderungen der Position des Zielobjekts 20 beim Punktschweißen mit dem Robotersystem 1. Die Figur veranschaulicht Positionsänderung aufgrund von unkorrigierten Sollwerten gemäß einem Betriebsprogramm, Positionsänderung aufgrund von Sollwerten, die zur Verringerung von Schwingungen für alle Abschnitte gemäß der dreimaligen Durchführung eines Betriebs korrigiert wurden, und Positionsänderung aufgrund von Sollwerten, die zur Verringerung von Schwingungen nur für Aufgabenabschnitte und Einstellabschnitte gemäß der dreimaligen Durchführung eines Betriebs korrigiert wurden. In diesem Beispiel beträgt eine Zeit für einen Aufgabenabschnitt (ein Durchgangspunkt zur Durchführung von Punktschweißen) 1,5 Sekunden und eine Zeit für den Startpunkt eines eingestellten Bereichs 0,7 Sekunden.
  • Wie dargestellt werden, nachdem die Schwingungsausmaß-Extraktionseinheit 46 für die Extraktion von Schwingungsausmaßen nur für Aufgabenabschnitte und eingestellten Abschnitte verwendet wurde, Sollwerte korrigiert, wodurch es möglich ist, Schwingungen zu einem Zeitpunkt, an dem Punktschweißen durchgeführt wird, erheblich zu unterbinden.
  • Obwohl oben eine Ausführungsform für ein Robotersystem gemäß der vorliegenden Offenbarung beschrieben wurde, ist der Schutzumfang der vorliegenden Offenbarung nicht auf die oben beschriebene Ausführungsform beschränkt. Ferner sind die in der oben beschriebenen Ausführungsform dargelegten Wirkungen lediglich eine Auflistung der bevorzugten Wirkungen, die von dem Robotersystem gemäß der vorliegenden Offenbarung ausgehen. Die Wirkungen des Robotersystems gemäß der vorliegenden Offenbarung sind nicht auf die in der oben beschriebenen Ausführungsform dargelegten Wirkungen beschränkt.
  • Bezugszeichenliste
  • 1
    Robotersystem
    10
    Roboter
    20
    Zielobjekt
    30
    Schwingungsdetektor
    40
    Robotersteuerungsvorrichtung
    41
    Programmspeichereinheit
    42
    Sollwerterzeugungseinheit
    43
    Sollwertspeichereinheit
    44
    Antriebseinheit
    45
    Schwingungsausmaß-Erlangungseinheit
    46
    Schwingungsausmaß-Extraktionseinheit
    47
    Sollwert-Korrektureinheit
  • 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 2019147197 [0004]

Claims (5)

  1. Robotersteuerungsvorrichtung, die, um eine Aufgabe in Bezug auf ein Zielobjekt durchzuführen, das von einem Roboter in Bewegung versetzt wird, einen Betrieb des Roboters auf Grundlage eines Betriebsprogramms steuert, das eine Vielzahl von Durchgangspunkten verwendet, um einen Bewegungspfad vorzugeben, der einen oder mehrere Aufgabenabschnitte enthält, in denen die Aufgabe durchgeführt werden soll, wobei die Robotersteuerungsvorrichtung aufweist: eine Sollwert-Erzeugungseinheit, die derart konfiguriert ist, dass sie auf Grundlage des Betriebsprogramms einen Sollwert erzeugt, der einen Zustand des Roboters für jeden Zeitpunkt anweist; eine Antriebseinheit, die derart konfiguriert ist, dass sie den Roboter gemäß dem Sollwert antreibt; eine Schwingungsausmaß-Erlangungseinheit, die derart konfiguriert ist, dass sie für jeden Zeitpunkt ein Schwingungsausmaß des Roboters erlangt, der von der Antriebseinheit angetrieben wird; eine Schwingungsausmaß-Extraktionseinheit, die derart konfiguriert ist, dass sie auf Grundlage des Betriebsprogramms das Schwingungsausmaß für einen Zeitpunkt, der dem Aufgabenabschnitt entspricht, aus den Schwingungsausmaßen extrahiert, die von der Schwingungsausmaß-Erlangungseinheit erlangt werden; und eine Sollwert-Korrektureinheit, die derart konfiguriert ist, dass sie auf Grundlage des durch die Schwingungsausmaß-Extraktionseinheit extrahierten Schwingungsausmaßes den Sollwert korrigiert.
  2. Robotersteuerungsvorrichtung nach Anspruch 1, wobei ein Startpunkt und ein Endpunkt des Aufgabenabschnitts jeweils durch einen der Durchgangspunkte vorgegeben werden.
  3. Robotersteuerungsvorrichtung nach Anspruch 1 oder 2, wobei ein Startpunkt und ein Endpunkt des Aufgabenabschnitts durch einen Befehl vorgegeben werden, der in das Betriebsprogramm geschrieben wird und der eine Ausführung der Aufgabe anweist.
  4. Robotersteuerungsvorrichtung nach einem der Ansprüche 1 bis 3, wobei die Schwingungsausmaß-Extraktionseinheit das Schwingungsausmaß für einen Zeitpunkt extrahiert, der zu einem vorbestimmten eingestellten Bereich gehört, in dem ein Gesamtbereich des Aufgabenabschnitts und ein Endpunkt des Aufgabenabschnitts beide zu einem Startpunkt des Aufgabenabschnitts passen.
  5. Robotersystem, aufweisend: eine Robotersteuerungsvorrichtung nach einem der Ansprüche 1 bis 4; einen Roboter, der von der Robotersteuerungsvorrichtung gesteuert wird; und einen Schwingungsdetektor, welcher derart konfiguriert ist, dass er einen Wert detektiert, der sich auf ein Schwingungsausmaß des Roboters bezieht.
DE112021005419.8T 2020-12-21 2021-12-14 Robotersteuerungsvorrichtung und Robotersystem Pending DE112021005419T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2020-211689 2020-12-21
JP2020211689 2020-12-21
PCT/JP2021/046108 WO2022138337A1 (ja) 2020-12-21 2021-12-14 ロボット制御装置及びロボットシステム

Publications (1)

Publication Number Publication Date
DE112021005419T5 true DE112021005419T5 (de) 2023-08-31

Family

ID=82159696

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021005419.8T Pending DE112021005419T5 (de) 2020-12-21 2021-12-14 Robotersteuerungsvorrichtung und Robotersystem

Country Status (6)

Country Link
US (1) US20230364789A1 (de)
JP (1) JP7460800B2 (de)
CN (1) CN116615316A (de)
DE (1) DE112021005419T5 (de)
TW (1) TW202225872A (de)
WO (1) WO2022138337A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019147197A (ja) 2018-02-26 2019-09-05 Ntn株式会社 パラレルリンク機構を用いた作業装置およびその制御方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5438175B2 (ja) * 2012-07-09 2014-03-12 ファナック株式会社 制振制御ロボットシステム
JP7048539B2 (ja) * 2019-04-26 2022-04-05 ファナック株式会社 振動表示装置、動作プログラム作成装置、およびシステム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019147197A (ja) 2018-02-26 2019-09-05 Ntn株式会社 パラレルリンク機構を用いた作業装置およびその制御方法

Also Published As

Publication number Publication date
JP7460800B2 (ja) 2024-04-02
WO2022138337A1 (ja) 2022-06-30
US20230364789A1 (en) 2023-11-16
CN116615316A (zh) 2023-08-18
JPWO2022138337A1 (de) 2022-06-30
TW202225872A (zh) 2022-07-01

Similar Documents

Publication Publication Date Title
DE102015107436B4 (de) Lernfähige Bahnsteuerung
EP2418555B1 (de) Verfahren zur Offline-Programmierung eines NC-gesteuerten Manipulators
DE102019007720B4 (de) Robotervorrichtung
DE102015015093B4 (de) Roboterprogrammiervorrichtung zum Instruieren eines Roboters für eine Bearbeitung
DE102018107864B4 (de) Offline-Programmiervorrichtung und -verfahren mit der Funktion zur Erzeugung eines Programms zur Detektion einer Werkstückposition mittels eines Kontaktsensors
DE112008003800T5 (de) Numerische Steuerverfahren und Vorrichtung dafür
DE102019205651B3 (de) Verfahren und System zum Ausführen von Roboterapplikationen
DE102014224193B9 (de) Verfahren und Vorrichtung zur Fehlerhandhabung eines Roboters
DE3806966A1 (de) Steuersystem
DE102018214272B4 (de) Robotersystem
DE102014012868A1 (de) Datenerlangungsvorrichtung zur Erlangung der Ursache des Anhaltens einer Antriebsachse und von darauf bezogenen Informationen
DE102019118637A1 (de) Automatische pfadgenerierungsvorrichtung
DE102019000890B4 (de) Robotersystem zum Ausführen einer Lernsteuerung basierend auf Bearbeitungsergebnissen und diesbezügliches Steuerverfahren
DE102014226787B3 (de) Sicherer Roboter mit Bahnfortschrittsvariablen
DE112016006372T5 (de) Steuerung und fördersystem
DE102018004444B4 (de) Steuervorrichtung mit Bewertungsprogramm und Parameteroptimierungsverfahren
DE102014118899B4 (de) Roboter, Robotersteuerungsverfahren und Robotersteuerungsprogramm
DE102016210097B4 (de) Roboter
DE112021005419T5 (de) Robotersteuerungsvorrichtung und Robotersystem
DE102019007382A1 (de) Numerische Steuerung
DE102016009436A1 (de) Robotersteuerung, die ein Rütteln einer Werkzeugspitze bei einem Roboter verhindert, der mit einer Verfahrachse ausgestattet ist
EP2037341B1 (de) Programmiersystem
DE102020103852B4 (de) Erzeugen und Optimieren eines Steuerprogramms für einen Robotermanipulator
WO2019096637A1 (de) Qualitätssicherung eines prozesses
DE102017011342A1 (de) Betreiben eines Roboters

Legal Events

Date Code Title Description
R012 Request for examination validly filed