-
Die vorliegende Erfindung betrifft ein aus einem Roboter und Peripherievorrichtungen gebildeten Robotersystem, und betrifft insbesondere ein Robotersystem, das die Betriebsgeschwindigkeit eines Roboters erhöht und die Betriebseffizienz des Systems durch Lernen verbessert.
-
In Produktionsstätten haben Produktionslinien, die ein aus einem Roboter und Peripherievorrichtungen gebildetes System umfassen, Sollzykluszeiten. Um die Sollzykluszeiten zu erreichen, führen Lehrbediener unter Nutzung der Erfahrung und des Wissens des Bedieners durch Ausprobieren einen Lehrvorgang aus, wie z.B. das Konzipieren der Konfiguration von Lehrprogrammen, um den Roboter zu betreiben oder zweckmäßige Stellungen zu lehren.
-
In diesem Fall wird eine Betriebsgeschwindigkeit abhängig von Techniken des Bedieners erhöht, wobei die Betriebseffizienz verschlechtert wird und eine beträchtliche Zeit benötigt wird. Um dieses Problem zu lösen, wird ein Verfahren zum Erhöhen der Betriebsgeschwindigkeit ohne Abhängigkeit von Techniken des Bedieners durch Wiederholung des Lernens desselben Betriebsvorgangs vorgeschlagen (siehe beispielsweise die ungeprüfte Japanische Patentschrift (Kokai) mit der Nr.
JP 2011- 167 817 A , nachfolgend als „Patentdokument 1“ bezeichnet).
-
Die in Patentdokument 1 beschriebene Erfindung erfordert einen zusätzlichen Sensor zu dem Roboter zur präzisen Schwingungsunterdrückung. Zudem ist es in dem Fall des Betriebsvorgangs, in dem sich die Position und Stellung eines Werkstücks entsprechend eines Zustands des Werkstücks ändert, schwierig, in willkürlichen Positionen zu lernen.
-
Als Antwort auf dieses Problem ist ein Verfahren bekannt, in dem ein virtuelles Werkstück in willkürlichen Positionen angeordnet und bearbeitet wird, um den Betriebsvorgang in den willkürlichen Positionen zu lernen. Da jedoch das Werkstück nicht tatsächlich vorhanden ist, kann dieses Verfahren eine auf den Roboter und dergleichen ausgeübte Belastung nicht korrekt lernen. Zudem kann der Betriebsvorgang in ungenutzten Positionen gelernt werden, es sei denn das virtuelle Werkstück wird unter Berücksichtigung eines Anordnungszustands des Werkstücks auf einer aktuellen Produktionslinie angeordnet.
-
Die Druckschrift
DE 10 2015 002 348 A1 offenbart eine Robotersteuerung mit einer Funktion, einen Lehrvorgang zu vereinfachen und die Bewegungsfähigkeit des Roboters zu verbessern. Die Druckschrift
US 8 972 057 B1 offenbart ein Verfahren zum Planen eines Roboterpfads innerhalb eines begrenzten Konfigurationsraums. Die Druckschrift
US 2014 / 0 012 419 A1 offenbart eine Robotersteuerungsvorrichtung, die einen Roboterarm derart steuert, dass er einer vorbestimmten Trajektorie folgt. Die Druckschrift
JP 2014 - 170 469 A offenbart eine Arbeitsplatzplanungsvorrichtung, die einen beschränkten Arbeitsplatz einer Arbeitsanfrage unter Berücksichtigung der Größe eines Arbeitsobjekts zuweist. Die Druckschrift
JP 2013 - 182 348 A offenbart eine Produktionsplanerstellungsvorrichtung, die einen Produktionsplan unter Berücksichtigung der tatsächlichen Artikel erstellt.
-
Die vorliegende Erfindung zielt darauf ab, ein Robotersystem bereitzustellen, das den Betrieb eines Roboters durch Lernen selbst in dem Betriebsfall, in dem sich eine Position und eine Stellung in einem vorbestimmten Betriebsbereich ändern, mühelos beschleunigen kann, ohne dass das Wissen einer Lehrtätigkeit oder die Verwendung einer spezifischen Vorrichtung, wie etwa ein Sensor zur Schwingungsunterdrückung, erforderlich ist.
-
Um die obengenannte Aufgabe zu erreichen stellt die vorliegende Erfindung ein Robotersystem bereit, das einen Detektor zum Detektieren der Position und Stellung eines in einem vorbestimmten Betriebsbereich vorhandenen zu bearbeitenden Werkstücks, einen Roboter zum Ausführen eines vorbestimmten Betriebsvorgangs an dem Werkstück basierend auf Informationen über die detektierten Position und Stellung, und eine Robotersteuervorrichtung zum Steuern des Roboters umfasst. Die Robotersteuervorrichtung umfasst einen Bereichsteiler zum Aufteilen des Betriebsbereichs in mehrere Bereiche durch eine vorbestimmte Auflösung; einen Bereichsbestimmer zum Bestimmen, in welchem der mehreren Bereiche das Werkstück vorhanden ist; eine Lernsteuerung zum Lernen eines Betriebsbeschleunigungsverhältnisses, um den Betriebsvorgang durch Ändern der Geschwindigkeit oder Beschleunigung Bereich für Bereich, in dem das Werkstück vorhanden ist, zu beschleunigen; einen Speicher zum Speichern der Position des Bereichs, in dem das Werkstück vorhanden ist, und des Betriebsbeschleunigungsverhältnisses des Bereichs; und eine Steuerung zum Bestimmen, ob der Betriebsvorgang in dem Bereich, in dem das Werkstück vorhanden ist, schon gelernt wurde oder nicht. Wenn der Betriebsvorgang schon gelernt wurde, steuert die Steuerung den Roboter, um den Betriebsvorgang an dem neuen Werkstück unter Verwendung des gelernten Betriebsbeschleunigungsverhältnisses auszuführen. Wenn der Betriebsvorgang nicht gelernt wurde, veranlasst die Steuerung die Lernsteuerung dazu, das Betriebsbeschleunigungsverhältnis zu lernen.
-
In einer bevorzugten Ausführungsform umfasst der durch den Roboter ausgeführte Betriebsvorgang einen Greifvorgang, durch den der Roboter das in dem Betriebsbereich angeordnete Werkstück greift, und ein Ablegevorgang, in dem der Roboter das gegriffene Werkstück in einen Werkstück-Fertigstellungsbereich ablegt.
-
In einer weiteren bevorzugten Ausführungsform ändert die Lernsteuerung eine Priorität des Betriebsvorgangs von jedem der mehreren Bereiche gemäß einem Lernzustand.
-
In noch einer weiteren bevorzugten Ausführungsform berechnet die Lernsteuerung das Betriebsbeschleunigungsverhältnis basierend auf einer zulässigen Last eines Motors zum Antreiben jeder Achse des Roboters und einer Last des Motors während der Ausführung eines Betriebsmusters, und der Speicher speichert das Betriebsbeschleunigungsverhältnis zusammen mit Betriebsinformationen, die mindestens eines von der Geschwindigkeit und der Beschleunigung vor dem Lernen des Betriebsvorgangs umfassen.
-
In noch einer weiteren bevorzugten Ausführungsform berechnet die Lernsteuerung das Betriebsbeschleunigungsverhältnis basierend auf einer Differenzinformation zwischen einem Sollwert an einen Motor zum Antreiben jeder Achse des Roboters und einem Feedbackwert von dem Motor während der Ausführung eines Betriebsmusters, und der Speicher speichert das Betriebsbeschleunigungsverhältnis zusammen mit den Betriebsinformationen, die mindestens eines von der Geschwindigkeit und der Beschleunigung vor dem Lernen des Betriebsvorgangs umfassen.
-
In noch einer weiteren bevorzugten Ausführungsform ruft die Lernsteuerung einen gelernten Betriebsvorgang ab, der einem zu bearbeitenden Betriebsvorgang ähnelt, bevor der Betriebsvorgang ausgeführt wird. Wenn der gelernte Betriebsvorgang vorhanden ist, wird ein Betriebsbeschleunigungsverhältnis basierend auf einem dem gelernten Betriebsvorgang zugeordneten Betriebsbeschleunigungsverhältnis und einer Differenz zwischen Informationen zu dem Betriebsvorgang vor der Ausführung und Informationen zu dem gelernten Betriebsvorgang korrigiert. Die Steuerung beschleunigt den Betriebsvorgang unter Verwendung des korrigierten Betriebsbeschleunigungsverhältnisses.
-
Die Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden Beschreibung von Ausführungsformen im Zusammenhang mit den beigefügten Zeichnungen ersichtlicher, wobei
- 1 ein schematisches Schaubild ist, das die gesamte Konfiguration eines Robotersystems gemäß einer ersten Ausführungsform der vorliegenden Erfindung zeigt;
- 2 ein schematisches Schaubild ist, das die gesamte Konfiguration eines weiteren Robotersystems gemäß der ersten Ausführungsform der vorliegenden Erfindung zeigt;
- 3 ein Blockschaltbild einer Roboter-Steuervorrichtung ist, die in dem Robotersystem gemäß der ersten Ausführungsform der vorliegenden Erfindung umfasst ist;
- 4 ein Ablaufdiagramm ist, das den Betriebsablauf des Robotersystems gemäß der ersten Ausführungsform der vorliegenden Erfindung zeigt;
- 5 eine Zeichnung eines Bilds von aufgeteilten Betriebsbereichen in dem Robotersystem gemäß der ersten Ausführungsform der vorliegenden Erfindung ist;
- 6 ein Ablaufdiagramm ist, das den Betriebsablauf eines Robotersystems gemäß einer zweiten Ausführungsform der vorliegenden Erfindung zeigt;
- 7 ein Ablaufdiagramm ist, das den Betriebsablauf eines Robotersystems gemäß einer dritten Ausführungsform der vorliegenden Erfindung zeigt;
- 8 ein Ablaufdiagramm ist, das den Betriebsablauf eines Robotersystems gemäß einer vierten Ausführungsform der vorliegenden Erfindung zeigt; und
- 9 ein Ablaufdiagramm ist, das den Betriebsablauf eines Robotersystems gemäß einer fünften Ausführungsform der vorliegenden Erfindung zeigt.
-
Ein Robotersystem gemäß der vorliegenden Erfindung wird nachfolgend mit Bezug auf die Zeichnungen beschrieben.
-
Beschrieben wird ein Robotersystem gemäß einer ersten Ausführungsform der vorliegenden Erfindung. Die 1 ist ein schematisches Schaubild, das eine Gesamtkonfiguration des Robotersystems gemäß der ersten Ausführungsform der vorliegenden Erfindung zeigt. Ein Robotersystem 101 gemäß der ersten Ausführungsform der vorliegenden Erfindung umfasst einen Detektor 6, einen Roboter 3 und eine Robotersteuervorrichtung 7. Der Roboter 3 ist beispielsweise ein sechsachsiger Knickarmroboter mit Roboterarmen 31 und einer an einem distalen Ende des Roboterarms 31 befestigten Hand 4.
-
Der Detektor 6 detektiert die Position und Stellung eines zu bearbeitenden Werkstücks 2, das in einem vorbestimmten Betriebsbereich 1 vorhanden ist. Die Robotersteuervorrichtung 7 berechnet einen Korrekturbetrag, um die Betriebsvorgänge des Roboters 3 (die Position und Stellung des Roboters zu jedem Minuten-Zeitintervall) basierend auf einem Detektionsergebnis durch den Detektor 6 zu korrigieren. Als ein Beispiel des Detektors 3 gibt es einen visuellen Sensor, der eine Kamera verwendet, die einen Teil oder die Gesamtheit des Betriebsbereichs 1 abbilden kann.
-
Der Roboter 3 führt die vorbestimmten Betriebsvorgänge an dem Werkstück 2 basierend auf den Informationen der detektierten Position und Stellung aus. Als ein Beispiel umfassen die Betriebsvorgänge des Roboters 3 einen Greifvorgang, durch den der Roboter 3 das in dem Betriebsbereich 1 angeordnete Werkstück 2 greift, und einen Ablegevorgang durch den der Roboter 3 das gegriffene Werkstück 2 in einem Betriebsfertigstellungsbereich 5 ablegt. Insbesondere greift der Roboter 3 das Werkstück 2, das in dem Betriebsbereich 1 in einer unbestimmten Position und Stellung abgelegt ist, mit der an dem Roboter 3 befestigten Hand 4 und legt das Werkstück in dem vorbestimmten Bereich 5 ab.
-
Die Robotersteuervorrichtung 7 steuert den Roboter 3. Die Robotersteuervorrichtung 7 kann ein Betriebsbeschleunigungsverhältnis lernen, um den Betriebsvorgang durch Ändern der Geschwindigkeit oder Beschleunigung relativ zu dem ausgeführten Betriebsvorgang zu beschleunigen.
-
Die 2 ist ein schematisches Schaubild, das die Gesamtkonfiguration eines weiteren Robotersystems gemäß der ersten Ausführungsform der vorliegenden zeigt. In dem in 2 gezeigten Robotersystem umfassen die Betriebsvorgänge eines Roboters 3 einen Greifvorgang, durch den der Roboter 13 ein in einem Betriebsbereich angeordnetes Werkstück 12 greift, und einen Ablegevorgang, durch den der Roboter 13 das gegriffene Werkstück 12 in einem Betriebsfertigstellungsbereich 19 ablegt. Insbesondere greift der Roboter 13 das Werkstück 12, das auf einem Zuführförderer 11 läuft, mit einer an dem Roboter 13 befestigten Hand 14 in einem Zuführförderer-Betriebsbereich 18 und legt das Werkstück 12 in einem Auswurfförderer-Betriebsbereich 19 auf einen Auswurfförderer 15. Ein Detektor 16 ist in dem Zuführförderer 11 und dem Auswurfförderer 15 vorgesehen, um die Position und Stellung des Werkstücks 12 nach Bedarf zum Zeitpunkt des Greifens und Ablegens zu detektieren und die Betriebsvorgänge des Roboters 13 zu korrigieren. In dem Beispiel von 2 wird nur ein Detektor bereitgestellt, es kann jedoch ein Detektor jeweils in dem Zuführförderer 11 und dem Auswurfförderer 15 bereitgestellt werden. Als Beispiele des Detektors gibt es einen visuellen Sensor und einen Messgeber. In diesem Robotersystem kann ein Beschleunigungsverhältnis gelernt werden, um den Betriebsvorgang durch Ändern von Geschwindigkeit oder Beschleunigung relativ zu dem ausgeführten Betriebsvorgang zu beschleunigen.
-
Die 3 ist ein Blockschaltbild der in dem Robotersystem 101 gemäß der ersten Ausführungsform der vorliegenden Erfindung umfassten Robotersteuervorrichtung 7. Die Robotersteuervorrichtung 7 umfasst einen Bereichsteiler 21, einen Bereichsbestimmer 22, eine Lernsteuerung 23, einen Speicher 24 und eine Steuerung 25, die mit einem Bus 30 verbunden sind. Es wird angemerkt, dass eine Robotersteuervorrichtung 17 dieselbe Konfiguration wie die Robotersteuervorrichtung 7 aufweist.
-
Der Bereichsteiler 21 teilt den Betriebsbereich 1 durch eine vorbestimmte Auflösung in mehrere Bereiche auf. Ein Beispiel des Aufteilens des Betriebsbereichs 1 wird später beschrieben.
-
Der Bereichsbestimmer 22 bestimmt, in welchem der mehreren Bereiche das Werkstück 2 vorhanden ist.
-
Die Lernsteuerung 23 lernt das Betriebsbeschleunigungsverhältnis Bereich für Bereich, in dem das Werkstück vorhanden ist, um den Betriebsvorgang durch Ändern von Geschwindigkeit oder Beschleunigung zu beschleunigen.
-
Der Speicher 24 speichert die Position des Bereichs, in dem das Werkstück 2 vorhanden ist und das Betriebsbeschleunigungsverhältnis von jedem Bereich.
-
Die Steuerung 25 bestimmt, ob der Betriebsvorgang in dem Bereich, in dem ein neues Werkstück vorhanden ist, bereits gelernt wurde. Wenn der Betriebsvorgang bereits gelernt wurde, steuert die Steuerung 25 den Roboter 3, um den Betriebsvorgang an dem neuen Werkstück unter Verwendung des gelernten Betriebsbeschleunigungsverhältnisses auszuführen. Wenn der Betriebsvorgang nicht gelernt wurde, veranlasst die Steuerung 25 die Lernsteuerung 23 dazu, das Betriebsbeschleunigungsverhältnis zu lernen.
-
In den 1 und 2 steuern die Robotersteuervorrichtungen 7 und 17 Motoren (vorzugsweise Servomotoren) jeweils zum Antreiben einer Achse der Roboter 3 und 13, um die Hände 4 und 14 der Robotersysteme 101 beziehungsweise 102 zu bewegen. Betriebsinformationen, die mindestens eines von Geschwindigkeit, Beschleunigung, Drehmoment und Fehler eines jeden Motors während des Betriebs umfassen, welche vorübergehend beim Lernen erforderlich sind, werden in einem flüchtigen Speicher (nicht gezeigt) des Speichers 24 gespeichert. Vorbestimmte Toleranzwerte von Geschwindigkeit, Beschleunigung, Drehmoment, Fehler und dergleichen eines jeden Motors werden in einem ROM (nicht gezeigt) des Speichers 24 gespeichert. Lerndaten, wie das in einem Lernprozess berechnete Betriebsbeschleunigungsverhältnis, werden in einem nichtflüchtigen Speicher des Speichers 24 gespeichert.
-
Die 4 ist ein Ablaufdiagramm, das den Betriebsablauf dieser Ausführungsform in dem Robotersystem von 1 oder 2 zeigt. Wenn das Lernen in Schritt S1 gestartet wird, wird der Betriebsbereich (der Betriebsbereich 1 in 1 und die Betriebsbereiche 18 und 19 in 2) durch eine vorbestimmte Auflösung in mehrere Bereiche aufgeteilt.
-
In Schritt S2 wird vor dem Starten eines aktuellen Betriebsvorgangs bestimmt, welchem der mehreren in Schritt S1 aufgeteilten Bereiche ein zu bearbeitender Bereich entspricht. Dann wird in Schritt S3 bestimmt, ob der zu bearbeitende Bereich bereits gelernt wurde oder nicht, das heißt, ob ein in diesem Bereich auszuführender Betriebsvorgang noch nicht gelernt wurde oder bereits gelernt wurde. Wenn bestimmt wird, dass der Betriebsvorgang noch nicht gelernt wurde, wird in Schritt S4 das Betriebsbeschleunigungsverhältnis basierend auf dem ausgeführten Betriebsvorgang gelernt. Wenn andererseits bestimmt wird, dass der Betriebsvorgang bereits gelernt wurde, wird der Betriebsvorgang in Schritt S5 basierend auf dem gelernten Betriebsbeschleunigungsverhältnis beschleunigt.
-
In Schritt S6 wird der Fortschritt des Lernens basierend auf einem Verhältnis zwischen nicht gelernten Betriebsvorgängen und gelernten Betriebsvorgängen oder dergleichen bestimmt. Wenn eine vorbestimmte Bedingung erfüllt wird, ist das Lernen abgeschlossen. Wenn die vorbestimmte Bedingung nicht erfüllt wird, geht der Betriebsablauf zurück zu Schritt S2 und das Lernen wird fortgesetzt.
-
Die 5 ist eine Zeichnung eines Beispiels des Aufteilens eines Betriebsbereichs 100 für den Greifvorgang und eines Betriebsbereichs 200 für den Ablegevorgang, wobei die Bereichsaufteilungsauflösung 100 mm beträgt und die Größe eines jeden der Betriebsbereiche 100 und 200 200 mm x 100 mm in der wie in 2 gezeigten Konfiguration beträgt. Beispielsweise ist der Betriebsbereich 100 in einen „Bereich A“ und einen „Bereich B“ aufgeteilt, während der Betriebsbereich 200 in einen „Bereich a“ und einen „Bereich b“ aufgeteilt ist.
-
In diesem Fall wird das Lernen unter der Bedingung ausgeführt, dass es vier Greifvorgänge und vier Ablegevorgänge gibt, das heißt, insgesamt acht Betriebsvorgänge zwischen dem „Bereich A und Bereich a“, zwischen dem „Bereich A und Bereich b“, zwischen dem „Bereich B und Bereich a“ und dem „Bereich B und Bereich b“. Beispielsweise betriff einer der Ablegevorgänge einen Betriebsvorgang nachdem ein Werkstück im „Bereich A“ gegriffen ist, bis das Werkstück im „Bereich a“ abgelegt wird. Im Gegensatz dazu betrifft einer der Greifvorgänge einen Betriebsvorgang nachdem das Werkstück in dem „Bereich a“ abgelegt ist, bis ein weiteres Werkstück aus dem „Bereich A“ gegriffen wird.
-
Durch Ausführen der Betriebsvorgänge zwischen den Bereichen werden zulässige Betriebsbeschleunigungsverhältnisse gelernt. Beispielsweise werden die Betriebsbeschleunigungsverhältnisse für den Betriebsvorgang des Greifens eines Werkstücks im „Bereich A“ und den Betriebsvorgang des Ablegens des Werkstücks im „Bereich b“ gelernt, und der Bereich des Greifens des Werkstücks, der Bereich des Ablegens des Werkstücks und die Betriebsbeschleunigungsverhältnisse werden gespeichert. Wenn als ein Ergebnis ein im „Bereich A“ vorhandenes neues Werkstück in den „Bereich b“ bewegt wird, können die Betriebsvorgänge unter Verwendung der bereits gespeicherten Betriebsbeschleunigungsverhältnisse beschleunigt werden, wodurch ein Beschleunigen des Betriebsvorgangs ohne eine Wiederholung des Lernens ermöglicht wird.
-
Wie oben beschrieben kann das Robotersystem gemäß der ersten Ausführungsform die Betriebsbeschleunigungsverhältnisse lernen, um die Betriebsvorgänge durch Ändern von Geschwindigkeit oder Beschleunigung relativ zu den ausgeführten Betriebsvorgängen zu beschleunigen.
-
Als Nächstes wird ein Robotersystem gemäß einer zweiten Ausführungsform der vorliegenden Erfindung beschrieben. Der Unterschied zwischen dem Robotersystem gemäß der zweiten Ausführungsform der vorliegenden Erfindung und der ersten Ausführungsform besteht darin, dass die Lernsteuerung 23 die Priorität des Betriebsvorgangs von jedem der mehreren Bereiche gemäß seinem Lernzustand ändert. Die übrige Konfiguration des Robotersystems gemäß der zweiten Ausführungsform ist dieselbe wie diejenige des Robotersystems gemäß der ersten Ausführungsform, sodass deren ausführliche Beschreibung weggelassen wird.
-
Der Betriebsablauf eines Lernverfahrens des Robotersystems gemäß der zweiten Ausführungsform wird nachfolgend mit Bezug auf ein Ablaufdiagramm von 6 beschrieben. Wenn das Lernen in Schritt S101 gestartet wird, werden die Betriebsbereiche durch eine vorbestimmte Auflösung in mehrere Bereiche aufgeteilt.
-
Im Schritt S102 werden den Bereichen Betriebsvorgangs-Prioritäten gemäß einem Lernzustand von jedem Bereich zugeordnet. Beispielsweise sind in dem in 2 gezeigten System die Betriebsbereiche wie in 5 gezeigt aufgeteilt. Wenn in den Betriebsvorgängen des Greifens eines Werkstücks 12 in dem „Bereich B“ und dem Ablegen des Werkstücks 12 auf den Auswurfsförderer 15 der Ablegevorgang „vom Bereich B zum Bereich b“ schon gelernt wurde, während der Ablegevorgang „vom Bereich B zum Bereich a“ nicht gelernt wurde, wird dem Ablegevorgang „vom Bereich B zum Bereich a“ eine Priorität zugeordnet. Somit werden die Betriebsvorgänge in absteigender Folge der Notwendigkeit des Lernens effizient ausgeführt.
-
Im Schritt S103 wird vor dem Starten eines aktuellen Betriebsvorgangs bestimmt, welchem der mehreren in Schritt S101 aufgeteilten Bereiche ein zu bearbeitender Bereich entspricht. Dann wird in Schritt S104 bestimmt, ob der zu bearbeitende Bereich bereits gelernt wurde oder nicht, das heißt, ob der in diesem Bereich auszuführende Betriebsablauf nicht gelernt wurde oder bereits gelernt wurde. Wenn bestimmt wird, dass der Betriebsablauf nicht gelernt wurde, wird in Schritt S105 das Betriebsbeschleunigungsverhältnis basierend auf dem ausgeführten Betriebsablauf gelernt. Wenn andererseits bestimmt wird, dass der Betriebsablauf bereits in Schritt S104 gelernt wurde, wird der Betriebsablauf in Schritt S106 basierend auf dem gelernten Betriebsbeschleunigungsverhältnis beschleunigt.
-
In Schritt S107 wird der Fortschritt des Lernens basierend auf einem Verhältnis zwischen nicht gelernten Betriebsvorgängen und gelernten Betriebsvorgängen oder dergleichen bestimmt. Wenn eine vorbestimmte Bedingung erfüllt ist, wird das Lernen abgeschlossen. Beispielsweise wird die Bedingung derart bestimmt, dass das Lernen abgeschlossen ist, wenn 70% aller Betriebsvorgänge zwischen den mehreren Bereichen bereits gelernt wurden. Wenn die vorbestimmte Bedingung nicht erfüllt ist, geht der Betriebsablauf zu Schritt S102 zurück und das Lernen wird fortgesetzt.
-
Wie oben beschrieben ermöglicht gemäß dem Robotersystem der zweiten Ausführungsform das Verwenden des Verfahrens der vorliegenden Erfindung dem Roboter, die Betriebsvorgänge mit hoher Effizienz in absteigender Folge der Notwendigkeit des Lernens auszuführen.
-
Als Nächstes wird ein Robotersystem gemäß einer dritten Ausführungsform der vorliegenden Erfindung beschrieben. Der Unterschied zwischen dem Robotersystem gemäß der dritten Ausführungsform der vorliegenden Erfindung und dem Robotersystem gemäß der ersten Ausführungsform besteht darin, dass die Lernsteuerung 23 das Betriebsbeschleunigungsverhältnis basierend auf einer zulässigen Last des Motors zum Antreiben jeder Achse des Roboters 3 oder 13 und einer Last des Motors während der Ausführung eines Betriebsmusters berechnet, und der Speicher 24 speichert das Betriebsbeschleunigungsverhältnis zusammen mit Betriebsinformationen, die mindestens eines von einer Geschwindigkeit und einer Beschleunigung vor dem Lernen umfassen. Die übrige Konfiguration des Robotersystems gemäß der dritten Ausführungsform ist dieselbe wie diejenige des Robotersystems gemäß der ersten Ausführungsform, sodass deren ausführliche Beschreibung weggelassen wird.
-
Der Betriebsablauf eines Lernverfahrens des Robotersystems gemäß der dritten Ausführungsform wird nachfolgend mit Bezug auf ein Ablaufdiagramm von 7 beschrieben. In Schritt S201 wird ein Lernvorgang, der als unvollständig bestimmt wird, durch das in der ersten Ausführungsform beschriebene Verfahren ausgeführt.
-
In Schritt S202 werden eine zulässige Last (maximale Motordrehzahl und Drehmoment) des Motors zum Antreiben jeder Achse des Roboters 3 oder 13, das heißt, eine maximale Motordrehzahl ω_maxj und ein maximales Motordrehmoment τ_maxj jeder Achse während des Betriebsvorgangs aufgezeichnet. Hierbei gibt „j“ die Nummer jeder Achse an. In dem Falle des sechsachsigen Knickarmroboters ist beispielsweise j = 1 bis 6.
-
Nach Abschluss des Betriebsvorgangs wird ein Maximalwert
amax des Betriebsbeschleunigungsverhältnisses α (a ≥ 1,0), der zu diesem Betriebsmuster einstellbar ist, basierend auf der gespeicherten maximalen Motordrehzahl und dem maximalen Motordrehmoment berechnet (Schritt
S204). Hierbei wird die Beziehung zwischen der abgelaufenen Zeit t, die für den Betriebsvorgang vor der Beschleunigung erforderlich ist, und einem Motor-Sollwinkel θ durch die folgende Gleichung (1) dargestellt:
-
Das Betriebsbeschleunigungsverhältnis a ist ein Index für den Betriebsvorgang, um die folgende Gleichung (2) zu erfüllen:
-
Unter Berücksichtigung, dass eine Motordrehzahl proportional zu α ist und ein Motordrehmoment proportional zum Quadrat von α ist, wird der Maximalwert
αmax des zulässigen Betriebsbeschleunigungsverhältnisses wie folgt berechnet.
wobei (ω_alw
j und τ_alw
j eine zulässige Last des Motors für jede Achse, das heißt, eine zulässige Motordrehzahl beziehungsweise ein zulässiges Motordrehmoment darstellen.
-
In Schritt S205 wird das durch die obenstehende Gleichung berechnete Betriebsbeschleunigungsverhältnis in Zuordnung zu dem ausgeführten Betriebsmuster gespeichert.
-
Das Lernverfahren, das das Robotersystem gemäß der dritten Ausführungsform der vorliegenden Erfindung verwendet, ermöglicht eine Beschleunigung des Betriebsvorgangs, während eine Last auf einen Robotermechanismus innerhalb eines zulässigen Werts begrenzt wird.
-
Als Nächstes wird eine vierte Ausführungsform der vorliegenden Erfindung beschrieben. Der Unterschied zwischen dem Robotersystem gemäß der vierten Ausführungsform der vorliegenden Erfindung und dem Robotersystem gemäß der ersten Ausführungsform besteht darin, dass die Lernsteuerung 23 das Betriebsbeschleunigungsverhältnis basierend auf einer Differenzinformation zwischen einem Sollwert an den Motor zum Antreiben jeder Achse des Motors und einem Feedbackwert des Motors während der Ausführung eines Betriebsmusters berechnet, und der Speicher 24 speichert das Betriebsbeschleunigungsverhältnis zusammen mit der Betriebsinformation, die mindestens eines von einer Geschwindigkeit und einer Beschleunigung vor dem Lernen des Betriebsvorgangs umfasst. Die übrige Konfiguration des Robotersystems gemäß der vierten Ausführungsform ist dieselbe wie diejenige des Robotersystems gemäß der ersten Ausführungsform, sodass deren ausführliche Beschreibung weggelassen wird.
-
Der Betriebsablauf des Lernverfahrens des Robotersystems gemäß der vorliegenden Erfindung wird mit Bezug auf ein Ablaufdiagramm von 8 beschrieben.
-
Als erstes wird in Schritt S301 ein Lernvorgang, von dem bestimmt wird, dass er unvollständig ist, durch das in der ersten Ausführungsform beschriebene Verfahren ausgeführt.
-
Wenn jedoch das Lernen im Gange ist, wird in Schritt S302 der Betriebsvorgang basierend auf einem aufgezeichneten Betriebsbeschleunigungsverhältnis beschleunigt.
-
Im Schritt S303 wird ein Maximalwert eines Fehlers zwischen einem Motor-Sollwinkel jeder Achse, d.h. dem Sollwert und einem aktuellen Wert, d.h. dem Feedbackwert während der Ausführung des Betriebsvorgangs aufgezeichnet.
-
In Schritt S304 wird nach Abschluss des Betriebsvorgangs das Betriebsbeschleunigungsverhältnis gemäß dem Betrag des aufgezeichneten Winkelfehlers erhöht oder verringert (Schritt S305). Wenn, als ein Beispiel von Schritt S305, der Maximalwert des Winkelfehlers während des Betriebsvorgangs kleiner als tol_err1j relativ zu den zulässigen Winkelfehlern tol_err1j und tol_err2j ist (tol_err1j ≤ tol_err2j), wird das Betriebsbeschleunigungsverhältnis durch einen vorbestimmten Betrag erhöht. Wenn der Maximalwert des Winkelfehlers während des Betriebsvorgangs gleich groß oder größer als tol_err2j ist, wird das Betriebsbeschleunigungsverhältnis durch einen vorbestimmten Betrag verringert.
-
In Schritt S306 wird das wie oben berechnete Betriebsbeschleunigungsverhältnis in Zuordnung zu Informationen über das Betriebsmuster gespeichert, das heißt, zu Betriebsinformationen, die mindestens eines von einer Geschwindigkeit und einer Beschleunigung vor dem Lernen des Betriebsvorgangs umfassen.
-
Gemäß dem Lernverfahren, das das Robotersystem der vierten Ausführungsform der vorliegenden Erfindung verwendet, wird das Betriebsbeschleunigungsverhältnis bestimmt, sodass der Fehler zwischen dem Motor-Sollwinkel und dem aktuellen Winkel jeder Achse während des Betriebsvorgangs begrenzt wird, wodurch ein Beschleunigen des Betriebsvorgangs ermöglicht wird, während eine Motorschwingung innerhalb eines zulässigen Werts begrenzt wird.
-
Als Nächstes wird ein Robotersystem gemäß einer fünften Ausführungsform der vorliegenden Erfindung beschrieben. Der Unterschied zwischen dem Robotersystem der fünften Ausführungsform der vorliegenden Erfindung und dem Robotersystem gemäß der ersten Ausführungsform besteht darin, dass die Lernsteuerung 23 einen gelernten Betriebsvorgang, der einem auszuführenden Betriebsvorgang ähnelt, vor Ausführung des Betriebsvorgangs aus vergangenen gelernten Daten abruft. Wenn der ähnliche gelernte Betriebsvorgang vorhanden ist, wird ein Betriebsbeschleunigungsverhältnis basierend auf einem dem gelernten ähnlichen Betriebsvorgang zugeordneten Betriebsbeschleunigungsverhältnis und einer Differenz zwischen Informationen zu dem Betriebsvorgang vor der Ausführung und Informationen zu dem gelernten Betriebsvorgang korrigiert. Die Steuerung 25 beschleunigt den Betriebsvorgang unter Verwendung des korrigierten Betriebsbeschleunigungsverhältnisses. Die übrige Konfiguration des Robotersystems gemäß der fünften Ausführungsform ist dieselbe wie diejenige des Robotersystems gemäß der ersten Ausführungsform, sodass deren ausführliche Beschreibung weggelassen wird. Der Betriebsablauf des Robotersystems gemäß der fünften Ausführungsform der vorliegenden Erfindung wird mit Bezug auf ein Ablaufdiagramm von 9 beschrieben.
-
Beim Lernen durch das Robotersystem gemäß der fünften Ausführungsform der vorliegenden Erfindung werden eine Maximalgeschwindigkeit „v“ und eine Maximalbeschleunigung „a“ vor der Beschleunigung zusammen mit einem Betriebsbeschleunigungsverhältnis α gespeichert. Die Maximalgeschwindigkeit „v“ und eine Maximalbeschleunigung „a“ sind Werte, die zum Zeitpunkt der Planung eines Betriebsvorgangs berechnet werden und vor der aktuellen Ausführung des Betriebsvorgangs bekannt sind.
-
Nach dem Lernen und vor der Ausführung des Betriebsvorgangs (nachfolgend als „Reproduktionsvorgang“ bezeichnet) wird in Schritt S401 abgerufen, ob ein dem Reproduktionsvorgang ähnlicher Betriebsvorgang bereits aus vergangenen gelernten Daten gelernt wurde. Der Betriebsvorgang (nachfolgend als „gelernter Betriebsvorgang“ bezeichnet), der dem Reproduktionsvorgang ähnelt, betrifft einen Betriebsvorgang, dessen Werkstückbereiche dieselben sind oder sich in der Nähe von denjenigen des Reproduktionsvorgangs befinden.
-
Wenn der gelernte Betriebsvorgang vorhanden ist werden in Schritt S402 das Betriebsbeschleunigungsverhältnis amax und die Maximalgeschwindigkeit „v“ und die Maximalbeschleunigung „a“ vor der Beschleunigung, die dem gelernten Betriebsvorgang zugeordnet sind, erhalten.
-
Die Maximalgeschwindigkeit und Maximalbeschleunigung vor der Beschleunigung sind nicht immer die gleichen zwischen dem gelernten Betriebsvorgang und dem Reproduktionsvorgang. Somit können aufgrund dieser Differenz, wenn der Reproduktionsvorgang unter Verwendung des Betriebsbeschleunigungsverhältnisses αmax beschleunigt wird, eine Motordrehzahl, ein Motordrehmoment, ein Winkelfehler und dergleichen ihre zulässigen Werte beträchtlich überschreiten. Um diesen Effekt zu verhindern, wird in Schritt S403 das Betriebsbeschleunigungsverhältnis αmax des gelernten Betriebsvorgangs auf ein Betriebsbeschleunigungsverhältnis αmax' für den Reproduktionsvorgang unter Berücksichtigung der Differenz der Maximalgeschwindigkeit und Maximalbeschleunigung vor der dem Beschleunigen zwischen dem gelernten Betriebsvorgang und dem Reproduktionsvorgang korrigiert.
-
Wenn V und A die Maximalgeschwindigkeit beziehungsweise Maximalbeschleunigung des Reproduktionsvorgangs vor dem Beschleunigen darstellen, wird α'
max wie folgt berechnet.
-
Basierend auf der obengenannten Gleichung wird das Betriebsbeschleunigungsverhältnis korrigiert, um die Maximalgeschwindigkeit und Maximalbeschleunigung des Reproduktionsvorgangs während dem Beschleunigen nahe an die Geschwindigkeit und Beschleunigung des gelernten Betriebsvorgangs während dem Beschleunigen zu bringen.
-
Dann wird in Schritt S404 der Betriebsvorgang unter Verwendung des korrigierten Betriebsbeschleunigungsverhältnisses α'max beschleunigt.
-
Wie oben beschrieben kann gemäß dem Robotersystem der fünften Ausführungsform der Betriebsvorgangs basierend auf Informationen über das Lernen oder einen anderen ähnlichen Betriebsvorgang auch dann beschleunigt werden, wenn der Betriebsvorgang noch nicht ausgeführt wurde.
-
Die Verwendung des Robotersystems gemäß den Ausführungsformen der vorliegenden Erfindung ermöglicht dem Roboter, die Betriebsvorgänge mit hoher Effizienz in absteigender Folge der Häufigkeit der tatsächlichen Verwendung zu lernen.