-
Hintergrund der Erfindung
-
1. Gebiet der Erfindung
-
Die vorliegende Erfindung bezieht sich auf eine Robotersteuervorrichtung, die eine Fehlbeurteilung im Rahmen einer Beurteilung, ob ein Roboter mit einem Hindernis kollidiert hat, verhindern kann.
-
2. Beschreibung des verwandten Standes der Technik
-
Manche herkömmlichen Roboterkontrollvorrichtungen sind mit einem Kollisionsbeurteilungsteil versehen, um einzuschätzen, ob ein sich bewegender Teil eines Roboters mit einem Hindernis kollidiert hat. Ein Kollisionsbeurteilungsteil einer herkömmlichen Robotersteuervorrichtung schätzt ein Störmoment, das auf einen sich bewegenden Teil eines Roboters angelegt ist, auf Basis einer Drehzahl und eines Antriebsmoments usw. eines Servomotors und vergleicht den geschätzten Wert des Störmoments mit einem vordefinierten Schwellenwert, um zu beurteilen, ob eine Kollision des sich bewegenden Teils vorliegt. In diesem Zusammenhang berechnet das Verfahren zur Kollisionserkennung gemäß
JP H04-242406 A das Störmoment, das durch einen Kontakt und eine Kollision mit einem Hindernis bedingt ist, durch Subtrahieren eines Reibungsmoments, das auf die Wirkung der Schwerkraft zurückzuführen ist, vom Störmoment, das von einem Beobachter geschätzt wird.
-
In dieser Hinsicht ist bekannt, dass sich das Antriebsmoment eines Servomotors um eine Gewichtsmenge eines Werkstücks verändert, und zwar in Abhängigkeit davon, ob der Roboter ein Werkstück greift. Um ein Störmoment genau zu schätzen, ist es daher erforderlich, unter den diversen Parametern, die für eine Schätzwertberechnung verwendet werden, auf einen numerischen Wert eines Parameters zu wechseln, der sich auf das Gewicht des Werkstücks bezieht, und zwar in Abhängig davon, ob der Roboter ein Werkstück greift. Darüber hinaus sei angemerkt, dass sogar wenn der Roboter ein Werkstück greift, die Last des Werkstücks ggf. nicht vollständig auf den Roboter übertragen wird. Dieser Punkt wird in Bezug auf die Beispiele eines Roboters zum Heben eines auf einem Tisch platzierten Werkstücks erläutert. In diesem Fall wird die Last des Werkstücks, sogar wenn der Roboter ein Werkstück greift, überhaupt nicht auf den Roboter übertragen oder nur ein Teil der Last des Werkstücks wird durch eine Hand auf den Roboter übertragen, solange das Werkstück die Reaktionskraft vom Tisch aufnimmt. Im Fall, dass das Werkstück vom Roboter angehoben wird und die Oberfläche des Tischs verlässt, wird danach die gesamte Last des Werkstücks durch die Hand auf den Roboter übertragen.
-
Daher ist es beim herkömmlichen Verfahren zur Kollisionsbeurteilung schwierig, die Störung genau zu beurteilen, die an den Roboter während des Zeitraums angelegt ist, wenn der Roboter das Werkstück greift, bis zum Zeitpunkt, an dem das Werkstück den Tisch verlässt. Im Fall, dass der Roboter ein Werkstück auf einem Tisch platziert, ist es gleichermaßen schwierig, die Störung genau zu beurteilen, die auf den Roboter während des Zeitraums angelegt ist, wenn das Werkstück den Tisch berührt, bis zum Zeitpunkt, an dem der Roboter das Werkstück loslässt. Wie oben erläutert, ist es beim herkömmlichen Verfahren zur Kollisionserkennung schwierig, die Störung genau zu schätzen, die auf den Roboter während des Zeitraums angelegt ist, wenn ein Zustandsübergang von einem zum anderen des Zustands im Gange ist, wobei die Last des Werkstücks nicht auf den Roboter übertragen wird, und des Zustands, wobei die gesamte Last des Werkstücks auf den Roboter übertragen wird. Daher ist das herkömmliche Verfahren für Fehlbeurteilungen im Rahmen der Beurteilung, ob der Roboter während des Zeitraums, in dem der obige Zustandsübergang im Gange ist, mit einem Hindernis kollidiert hat, anfällig.
-
In dieser Hinsicht ist ein Verfahren zum Beurteilen von Kollisionen bekannt, das unter Verwendung eines separaten Schwellenwerts, der für jeden Bereich im Arbeitsraum des Roboters eingestellt ist, beurteilt, ob eine Kollision vorliegt.
JP H11-291190 A beispielsweise schlägt ein Verfahren zum Beurteilen von Kollisionen vor, das einen Schwellenwert zum Beurteilen eines Schweißzustands durch Schweißelektroden in dem Bereich verwendet, in dem ein Schweißroboter einen Schweißprozess durchführt, und das einen weiteren Schwellenwert verwendet, um eine Kollision eines Arm- oder Endeffektors in anderen Bereichen zu beurteilen. Darüber hinaus schlägt
JP 2013-169609 A ein Verfahren zum Beurteilen von Kollisionen vor, das einen größeren Schwellenwert für die Kollisionsbeurteilung verwendet, wenn ein erwarteter Wert eines Motormoments, der anhand einer Position, Drehzahl, Beschleunigung usw. eines Servomotors bewertet wird, einen vordefinierten Wert übersteigt, und
JP 2001-353687 A schlägt ein Verfahren zum Beurteilen von Kollisionen vor, das einen Schwellenwert für die Kollisionsbeurteilung verwendet, der gemäß einer Betriebsgeschwindigkeit des Roboters variabel ist. Sogar wenn diese Verfahren zum Beurteilen von Kollisionen verwendet werden, ist es immer noch nicht möglich, eine Fehlbeurteilung während des Zeitraums, in dem der Zustandsübergang im Gange ist, zu verhindern.
-
Ferner offenbart das Dokument
DE 10 2011 003 374 A1 eine numerisch gesteuerte Werkzeugmaschine mit einer Vorrichtung zur Kollisionsüberwachung. Diese Vorrichtung umfasst einen Kollisionssensor, ein Kollisionserkennungsmittel zum Erkennen einer Kollision von Maschinenteilen der Werkzeugmaschine, wenn ein von dem Kollisionssensor erfasster Messwert einen Kollisionsgrenzwert überschreitet, und ein Signalausgabemittel zur Ausgabe eines Signals zum Anhalten einer Komponente der Werkzeugmaschine, wenn das Kollisionserkennungsmittel eine Kollision erkennt. Der Kollisionsgrenzwert wird mittels einer Einrichtung an der Werkzeugmaschine festgelegt.
-
Das Dokument
US 2011/0270444 A1 betrifft ein System zum Bewerten eines Erfolgs oder eines Fehlers einer Tätigkeit eines Roboters. Das System umfasst eine Positionsbefehlserzeugungseinheit, eine Kontaktpositionserkennungseinheit sowie eine Bewertungseinheit, die einen Erfolg oder eine Fehler der Tätigkeit des Roboters bewertet, anhand eines Vergleichs einer berechneten Kontaktposition des Roboters mit einem vorbestimmten Bereich.
-
Das Dokument
JP 2013-43 232 A offenbart eine Vorrichtung und ein Verfahren zum Kontrollieren einer Überlastung eines Roboters. Dazu wird ein Schwellenwert einer auf den Roboter wirkenden äußeren Kraft für jede Bewegung des Roboters abgespeichert und der Roboter wird gestoppt, wenn eine gemessene äußere Kraft während eines Ausführens einer Bewegung des Roboters diesen Schwellenwert übersteigt.
-
Das Dokument
JP 2012-232 384 A offenbart eine Kontrollvorrichtung für einen Roboter. Die Kontrollvorrichtung erfasst eine auf einen Endeffektor des Roboters wirkende Kraft und eine Position des Endeffektors und ermittelt einen Erfolg oder einen Fehler einer Tätigkeit des Roboters anhand einer Beziehung zwischen der erfassten Kraft und der erfassten Position des Endeffektors.
-
Das Dokument
JP 2008-183 680 A betrifft eine Maschinensteuerungseinheit, die dazu eingerichtet ist, einen Kollisionserkennungsschwellenwert gemäß eines Zustands einer zugehörigen Maschine automatisch zu erneuern.
-
Ferner offenbart das Dokument
JP 2006-123 012 A ein Robotersteuerungsverfahren zum Vermeiden einer fehlerhaften Kollisionserkennung während eines Roboterbetriebs. Das Robotersteuerungsverfahren umfasst ein Kollisionserkennungsverfahren zum Berechnen einer Abweichung zwischen einer gemessenen aktuellen Motorstromstärke und einer berechneten Motorstromstärke, wobei die berechnete Motorstromstärke unter Berücksichtigung eines Lastschwerpunkts einer an einem Roboterarm angebrachten Last veränderbar ist.
-
Es besteht der Bedarf an einer Robotersteuervorrichtung, die eine Fehlbeurteilung im Rahmen der Beurteilung, ob ein Roboter mit einem Objekt kollidiert hat, verhindern kann, sogar während des Zeitraums, wenn ein Zustandsübergang von einem zum anderen des Zustands im Gange ist, wobei die Last des Werkstücks nicht auf den Roboter übertragen wird, und des Zustands, wobei die gesamte Last des Werkstücks auf den Roboter übertragen wird, auf den anderen.
-
Kurzdarstellung der Erfindung
-
Es ist eine Aufgabe der vorliegenden Erfindung, eine verbesserte Robotersteuervorrichtung bereitzustellen, die Fehlbeurteilungen durch eine Kollisionsbeurteilung vermeidet.
-
Diese Aufgabe wird gelöst durch eine Robotersteuervorrichtung mit den Merkmalen des Anspruchs 1.
-
Gemäß einem ersten Aspekt der vorliegenden Erfindung wird eine Robotersteuervorrichtung zum Steuern eines Roboters bereitgestellt, der mit einer Hand versehen ist, die ein Werkstück greifen kann, umfassend einen Störschätzteil, der einen geschätzten Wert einer Störung bewertet, die auf den Roboter angelegt ist, einen Übergangserkennungsteil, der das Auftreten eines Zustandsübergangs zwischen einem Zustand, wobei eine Last des Werkstücks nicht auf dem Roboter übertragen wird, und einem Zustand, bei dem die gesamte Last des Werkstücks durch die Hand auf den Roboter übertragen wird, erkennt, einen Bereichsdefinierungsteil, der einen Bereich definiert, der einen Roboter und eine Hand zum Zeitpunkt des Beginns des Zustandsübergangs, der vom Übergangserkennungsteil erkannt wird, in einem Zustandsraum umfasst, der den Zustand des Roboters und der Hand ausdrückt, einen Positionsbeurteilungsteil, der beurteilt, ob der Roboter und die Hand sich innerhalb des Bereichs befinden, der vom Bereichsdefinierungsteil definiert ist, und einen Kollisionsbeurteilungsteil, der den geschätzten Wert und einen vordefinierten Schwellenwert vergleicht, um zu beurteilen, ob der Roboter mit einem Hindernis kollidiert hat, wobei der Kollisionsbeurteilungsteil den geschätzten Wert mit einem ersten Schwellenwert vergleicht, wenn der Roboter und die Hand sich innerhalb des Bereichs befinden, und den geschätzten Wert mit einem zweiten Schwellenwert vergleicht, der sich vom ersten Schwellenwert unterscheidet, wenn der Roboter und die Hand sich außerhalb des Bereichs befinden.
-
Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird eine Robotersteuervorrichtung des ersten Aspekts bereitgestellt, wobei der Störschätzteil zumindest eines von einer Drehzahl und einem Drehmoment eines Servomotors verwendet, der den Roboter antreibt, um den geschätzten Wert zu bewerten.
-
Gemäß einem dritten Aspekt der vorliegenden Erfindung wird eine Robotersteuervorrichtung des ersten oder zweiten Aspekts bereitgestellt, wobei der Störschätzteil einen Parameterwert verwendet, der eine Masse eines Werkstücks ausdrückt, der von einem Betriebsprogramm des Roboters erfasst wird, um den geschätzten Wert zu bewerten.
-
Gemäß einem vierten Aspekt der vorliegenden Erfindung wird eine Robotersteuervorrichtung nach einem der ersten bis dritten Aspekte bereitgestellt, wobei der Kollisionsbeurteilungsteil den geschätzten Wert und den zweiten Schwellenwert unabhängig vom Ergebnis des Positionsbeurteilungsteils vergleicht, nachdem sich der Roboter und die Hand von innerhalb des Bereichs nach außerhalb bewegt haben.
-
Gemäß einem fünften Aspekt der vorliegenden Erfindung wird eine Robotersteuervorrichtung nach einem der ersten bis vierten Aspekte bereitgestellt, wobei die Form des Bereichs unter Berücksichtigung der Richtung ermittelt wird, in die sich die Hand nach Greifen des Werkstücks bewegt.
-
Diese und andere Ziele, Merkmale und Vorteile der vorliegenden Erfindung gehen unter Bezugnahme auf die ausführliche Beschreibung einer veranschaulichenden Ausführungsform der vorliegenden Erfindung besser hervor, die in den beiliegenden Zeichnungen gezeigt ist.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Blockschaubild, das die Konfiguration eines Robotersystems zeigt, das eine Robotersteuervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung enthält.
-
2 ist eine Seitenansicht, die das Erscheinungsbild eines Roboters von 1 zeigt.
-
3 ist ein Ablaufplan, der eine Routine eines veranschaulichenden Werkstückbeförderungsprozesses gemäß einem Robotersystem von 1 zeigt.
-
4 ist ein Graph, der ein Beispiel für eine zeitliche Veränderung eines geschätzten Werts eines Störmoments zeigt, der von einem Störschätzteil in 1 berechnet wird.
-
5 ist eine Seitenansicht, die den Zustand des Roboters und eines Werkstücks zum Zeitpunkt zeigt, wenn Schritt S302 in 3 abgeschlossen ist.
-
6 ist eine Seitenansicht, die den Zustand des Roboters und eines Werkstücks zum Zeitpunkt zeigt, wenn Schritt S304 in 3 abgeschlossen ist.
-
7 ist eine Seitenansicht, die den Zustand des Roboters und eines Werkstücks zum Zeitpunkt zeigt, wenn Schritt S306 in 3 abgeschlossen ist.
-
8 ist eine Seitenansicht, die den Zustand des Roboters und eines Werkstücks zum Zeitpunkt zeigt, wenn Schritt S307 in 3 abgeschlossen ist.
-
9 ist eine Seitenansicht, die den Zustand des Roboters und eines Werkstücks zum Zeitpunkt zeigt, wenn Schritt S309 in 3 abgeschlossen ist.
-
10 ist eine Seitenansicht, die den Zustand des Roboters und eines Werkstücks in der Mitte der Ausführung von Schritt S310 in 3 zeigt.
-
11 ist ein Ablaufplan, der eine Routine eines weiteren Werkstückbeförderungsprozesses gemäß einem Robotersystem von 1 zeigt.
-
12 ist eine Seitenansicht, die den Zustand des Roboters und eines Werkstücks zum Zeitpunkt zeigt, wenn Schritt S1110 in 11 abgeschlossen ist.
-
13 ist eine Seitenansicht, die den Zustand des Roboters und eines Werkstücks zum Zeitpunkt zeigt, wenn Schritt S1111 in 11 abgeschlossen ist.
-
14 ist eine erste Seitenansicht, die eine Modifikation eines Schwellenwertwechselbereichs zusammen mit einem Roboter und einem Werkstück zeigt.
-
15 ist eine zweite Seitenansicht, die eine Modifikation eines Schwellenwertwechselbereichs zusammen mit einem Roboter und einem Werkstück zeigt.
-
Ausführliche Beschreibung von Ausführungsformen
-
Im Folgenden wird die bevorzugte Ausführungsform der vorliegenden Erfindung werden unter Bezugnahme auf die Zeichnungen ausführlich erläutert. In den Zeichnungen sind gleiche Komponentenelemente mit gleichen Bezeichnungen ausgewiesen. Man bemerke, dass die folgende Erläuterung den technischen Umfang der Erfindungen, die in den Ansprüchen beschrieben sind, oder die Bedeutung von Ausdrücken usw. nicht einschränkt.
-
Unter Bezugnahme auf die 1 bis 15 wird eine Robotersteuervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung erläutert. 1 ist ein Blockschaubild, das die Konfiguration eines Robotersystems S zeigt, das eine veranschaulichende Robotersteuervorrichtung 1 der vorliegenden Ausführungsform enthält. Das Robotersystem S des vorliegenden Beispiels ist ein Automatisierungssystem, das diverse Werkstücke durch den Betrieb eines Roboters befördert. Der Prozess, mit dem das Robotersystem S des vorliegenden Beispiels ein Werkstück befördert, wird nachstehend manchmal als ”Werkstückbeförderungsprozess” bezeichnet. Wie in 1 gezeigt, enthält des Robotersystem S des vorliegenden Beispiels einen Roboter R, der einen Arm A und eine Hand H umfasst. Die Robotersteuervorrichtung 1 des vorliegenden Beispiels hat die Funktion, den Betrieb der diversen Teile des Roboters 2 zu steuern. Darüber hinaus hat die Robotersteuervorrichtung 1 des vorliegenden Beispiels eine Störschätzfunktion, um einen Schätzwert der Störung zu berechnen, die an einen sich bewegenden Teil des Roboters R angelegt ist, einen Kollisionsbeurteilungsteil, um zu beurteilen, sich ein sich bewegender Teil des Roboters R mit einem Hindernis kollidiert hat, usw.
-
2 ist eine Seitenansicht, die das Erscheinungsbild des Roboters 2 von 1 zeigt. Wie in 2 gezeigt, ist der Roboter 2 des vorliegenden Beispiels ein vertikaler gelenkiger Roboter, der einen Arm A, der durch eine Mehrzahl von in Reihe verbundenen Verbindungen L gebildet ist, und eine Hand H umfasst, die am Stirnseitenteil des Arms A angebracht ist. Die Anzahl von Achsen des Roboters 2 ist nicht nur auf das veranschaulichte Beispiel beschränkt. Wie in 2 gezeigt, umfasst die Hand H des vorliegenden Beispiels ein Paar von Greifern G, G, die ein zu beförderndes Werkstück W greifen können. Nachstehend wird ein vordefinierter Teil jedes Greifers G, der eine Kontaktfläche mit dem Werkstück W beinhaltet, manchmal als ”Kontaktteil C” jedes Greifers G bezeichnet. Es kann jedoch nur die Kontaktfläche jedes Greifers G mit dem Werkstück W als ”Kontaktteil C” jedes Greifers G bezeichnet werden. Darüber hinaus arbeitet der Roboter 2 des vorliegenden Beispiels gemäß einem produzierten Betriebsprogramm PG, um ein Werkstück W, das von der Hand H ergriffen ist, von einer ersten Position in eine zweite Position in einem vordefinierten Arbeitsraum zu befördern. Hier ist die erste Position im Arbeitsraum des Roboters 2 z. B. eine Oberfläche eines Tischs T, der im Arbeitsraum angebracht ist, während die zweite Position z. B. eine Oberfläche eines weiteren Tischs ist, der im Arbeitsraum angebracht ist.
-
Unter erneuter Bezugnahme auf 1 ist der Arm A des Roboters 2 des vorliegenden Beispiels mit einer Anzahl von Servomotors 21 versehen, die der Anzahl von Achsen entspricht. Jeder Servomotor 21 hat einen integrierten Sensor, z. B. einen Drehgeber (nicht gezeigt). Der Sensor jedes Servomotors 21 erzeugt Feedbackinformationen jedes Servomotors 21, die eine Drehrichtung, einen Drehwinkel und eine Drehzahl beinhalten, und überträgt diese an den Störschätzteil 12 der Robotersteuervorrichtung 1. Darüber hinaus ist die Hand H des vorliegenden Beispiels mit einem Antriebsteil 22 versehen, der das Paar von Greifern G, G antreibt, so dass das Paar von Greifern G, G sich in eine Richtung hin zu einander und in ein Richtung weg voneinander bewegt. Der Antriebsteil 22 des vorliegenden Beispiels verwendet Fluiddruck, z. B. hydraulischen oder pneumatischen Druck, um das Paar von Greifern G, G anzutreiben.
-
Es wird nun auf 1 Bezug genommen, wobei die Robotersteuervorrichtung 1 des vorliegenden Beispiels einen Speicherteil 10, einen Parametererfassungsteil 11, einen Störschätzteil 12, einen Übergangserkennungsteil 13, einen Bereichsdefinierungsteil 14, einen Positionsbeurteilungsteil 15, einen Kollisionsbeurteilungsteil 16, einen Betriebsanweisungserzeugungsteil 17 usw. Diese Teile der Robotersteuervorrichtung 1 werden nachstehend ausführlich erläutert. Der Speicherteil 10 des vorliegenden Beispiels ist eine Speichervorrichtung, die einen ROM (Nur-Lese-Speicher) und einen RAM (Direktzugriffsspeicher) usw. beinhaltet. Das Speicherteil 10 des vorliegenden Beispiels speichert ein Betriebsprogramm PG des Roboters, das vorab produziert wurde, und auch den später erläuterten ersten Schwellenwert v1 und zweiten Schwellenwert v2 usw.
-
Des Weiteren hat der Parametererfassungsteil 11 des vorliegenden Beispiels die Funktion, einen numerischen Wert eines Parameters, der sich auf das Werkstück W bezieht, unter diversen Parametern zu erfassen, die für die Schätzwertberechnung der Störung verwendet werden, die an einen sich bewegenden Teil des Roboters 2 angelegt ist. Der obige Parameter, der sich auf das Werkstück W bezieht, wird nachstehend manchmal als ”Werkstückparameter” bezeichnet. Der Werkstückparameter beinhaltet zumindest das Gewicht des Werkstücks W. Bei Bedarf kann der Werkstückparameter auch den Masseschwerpunkt des Werkstücks W und die Trägheitsmatrix usw. beinhalten. Wie in 1 gezeigt, wird der numerische Wert, der vom Parametererfassungsteil 11 erfasst wird, an den Störschätzteil 12 übertragen. Man bemerke, dass der numerische Wert des Werkstückparameters auch über diverse Eingabevorrichtungen vom Benutzer eingegeben werden kann, anstatt vom Betriebsprogramm PG erfasst zu werden. In diesem Fall kann der numerische Wert des Werkstückparameters in Form von diversen Signalen eingegeben werden. Beispielsweise kann der Zustand, wobei die Hand H kein Werkstück W greift, in Form von Masse 0, Masseschwerpunkt 0 und Trägheitsmatrix 0 eingegeben werden.
-
Des Weiteren hat der Störschätzteil 12 des vorliegenden Beispiels die Funktion, den geschätzten Wert einer Verteilung, die auf den Roboter angelegt ist, auf Basis des numerischen Wert des Werkstückparameters, der vom Parametererfassungsteil 11 erfasst wird, von Feedbackinformationen, die von integrierten Sensor des Servomotors 1 oder einem anderen Detektor erfasst werden, des numerischen Werts eines dynamischen Parameters der Verbindung L des Roboters 2 usw. zu berechnen. Die obigen Feedbackinformationen beinhalten zumindest eines der Drehzahl und des Antriebsmoments des Servomotors 21. Die obigen Feedbackinformationen können jedoch beliebige Informationen sein, die für die Schätzwertberechnung einer Störung nützlich sind. Der obige dynamische Parameter kann z. B. auch die Positionsbeziehung der Verbindungen des Roboters 2, der Masse, des Masseschwerpunkts, der Trägheitsmatrix usw. beinhalten. Wie in 1 gezeigt, wird der geschätzte Wert der Störung, der vom Störschätzteil 12 berechnet wird, an den Kollisionsbeurteilungsteil 16 übertragen.
-
Des Weiteren hat der Übergangserkennungsteil 13 des vorliegenden Beispiels die Funktion, die Tatsache zu erkennen, dass ein Zustandsübergang von einem zum anderen des Zustands im Gange ist, wobei die Last des Werkstücks W nicht auf den Roboter 2 übertragen wird, und des Zustands, wobei die gesamte Last des Werkstücks W durch die Hand H auf den Roboter übertragen wird. Ein Beispiel für den ersteren Zustand ist der Zustand, wobei die Hand H des Roboters 2 ein Werkstück W greift, das auf der Oberfläche des Tischs T platziert ist, wobei aber keine Kraft von der Hand H nach oben auf das Werkstück W in vertikaler Richtung wirkt (siehe z. B. 7). Darüber hinaus ist ein Beispiel für den letzteren Zustand der Zustand, wobei die Hand H des Roboters 2 das Werkstück W greift und das Werkstück W von der Oberfläche des Tischs T in vertikaler Richtung nach oben beabstandet ist (siehe z. B. 8).
-
Der Übergangserkennungsteil 13 des vorliegenden Beispiels analysiert das Betriebsprogramm PG, um die Tatsache zu erkennen, dass der obige Zustandsübergang erfolgt ist, und erzeugt sodann Daten, die die Beginnzeit und die Position des obigen Zustandsübergangs zeigen. Wie in 1 gezeigt, werden die vom Übergangserkennungsteil 13 erzeugten Daten an den Bereichsdefinierungsteil 14 übertragen. Man bemerke, dass der Übergangserkennungsteil 13 auch ein Signal analysieren kann, das vom Benutzer über diverse Eingabevorrichtungen eingegeben wird, um das Auftreten des obigen Zustandsübergangs zu erkennen, anstatt das Betriebsprogramm PG zu analysieren. Darüber hinaus kann der Übergangserkennungsteil 13 auch den numerischen Wert des Werkstückparameters analysieren, der in den Störschätzteil 12 eingegeben wurde, um das Auftreten des obigen Zustandsübergangs zu erkennen.
-
Des Weiteren hat der Bereichsdefinierungsteil 14 des vorliegenden Beispiels die Funktion, den später erläuterten Schwellenwertwechselbereich R in einem Raum zu definieren, der einen Zustand des Roboters 2 und der Hand H ausdrückt. Der obige Raum wird nachstehend manchmal als Zustandsraum bezeichnet. Der Zustandsraum des vorliegenden Beispiels ist für gewöhnlich ein Koordinatenraum, der die 3D-Position der Hand H zeigt. Der Zustandsraum des vorliegenden Beispiels kann neben den Dimensionen eines 3D-Raums oder statt der Dimensionen eines 3D-Raums jedoch auch die Dimension der Zeit oder die Dimensionen der Drehwinkel um die diversen Achsen des Roboters 2, die Dimension der beweglichen Position eines Greifers G der Hand H und Dimensionen aller anderen Variablen beinhalten, die einen Zustand des Roboters 2 und der Hand H definieren können. Darüber hinaus ist der Schwellenwertwechselbereich R des vorliegenden Beispiels ein Teilbereich des Zustandsraums des Roboters 2 und der Hand H, der den Roboter 2 und die Hand H zu jenem Zeitpunkt umfasst, an dem der obige Zustandsübergang beginnt. Der Schwellenwertwechselbereich R des vorliegenden Beispiels ist für gewöhnlich ein 3D-Raum, der den 3D-Raum umfasst, den die Kontaktteile C der Greifer G der Hand H zu jenem Zeitpunkt belegen, an dem der obige Zustandsübergang beginnt. Ein typisches Beispiel für einen solchen Schwellenwertwechselbereich R ist in den 6 bis 10 usw. gezeigt. Um einen Vergleich der Position des Schwellenwertwechselbereichs R und der aktuellen Position der Hand H zu erleichtern, verwendet der Bereichsdefinierungsteil 14 vorzugsweise einen Zustand der Hand H, die Position eines willkürlichen Punkts der Hand H, die durch ein orthogonales 3D-Koordinatensystem ausgedrückt ist, das in Bezug auf die Basis B des Roboters 2 fest ist, um den Schwellenwertwechselbereich R zu definieren. Der Bereichsdefinierungsteil 14 kann jedoch eine Position, die durch jeden Achsenwinkel des Roboters 2 ausgedrückt ist, als Zustand der Hand H verwenden. Darüber hinaus kann der Bereichsdefinierungsteil 14, wenn der Roboter 2 eine Bahnverfolgung durchführt, d. h., wenn der Roboter 2 so arbeitet, dass er ein Werkstück W verfolgt, das sich auf einem Förderer befindet, die Position eines willkürlichen der Hand H verwenden, die durch ein orthogonales 3D-Koordinatensystem ausgedrückt ist, das in Bezug auf das Werkstück W fest und in Bezug auf den Roboter 2 beweglich ist. Darüber hinaus kann der Bereichsdefinierungsteil 14 auch einen Schwellenwertwechselbereich im Zustandsraum definieren, der neben den Dimensionen des Raums die Dimension der Zeit beinhaltet. In diesem Fall beispielsweise kann der Bereichsdefinierungsteil 14 einen Schwellenwertwechselbereich R definieren, der z. B. nach Ablauf einer vordefinierten Zeit verschwindet.
-
Wie später in Bezug auf den Positionsbeurteilungsteil 15 und den Kollisionsbeurteilungsteil 16 erläutert, wird beim vorliegenden Beispiel der Schwellenwert, der für die Beurteilung einer Kollision des Roboters 2 verwendet wird, in Abhängigkeit davon gewechselt, ob die Kontaktteile C, C der Greifer G, G der Hand H innerhalb des Schwellenwertwechselbereichs R angeordnet sind. Die Form des Schwellenwertwechselbereichs R ist nicht nur auf das in den 6 bis 10 usw. gezeigte Beispiel beschränkt. Um eine einfachere Beurteilung des später erläuterten Positionsbeurteilungsteils 15 zu ermöglichen, hat der Schwellenwertwechselbereich R vorzugsweise eine rationalisierte Halbkugel- oder Kastenform. Daten, die sich auf die Form des Schwellenwertwechselbereichs R beziehen, können vorab im Speicherteil 10 usw. gespeichert werden. Anstatt eine vordefinierte Form des Schwellenwertwechselbereichs R im Zustandsraum der Roboters 2 und der Hand H zu definieren, kann der Bereichsdefinierungsteil 14 jedoch auch eine Form des Schwellenwertwechselbereichs R unter Berücksichtigung des Bewegungswegs der Hand H nach Greifen des Werkstücks W definieren (siehe 14 und 15). In diesem Fall analysiert der Bereichsdefinierungsteil 14 das Betriebsprogramm PG, um den Bewegungsweg der Hand H zu spezifizieren. Darüber hinaus kann der Bereichsdefinierungsteil 14 auch eine Form des Schwellenwertwechselbereichs R gemäß der Ausweisung durch den Benutzer über eine Benutzeroberfläche definieren. Wie in 1 gezeigt, werden die Daten, die sich auf den Schwellenwertwechselbereich R beziehen, der vom Bereichsdefinierungsteil 14 definiert wird, an den Positionsbeurteilungsteil 15 übertragen.
-
Des Weiteren hat der Positionsbeurteilungsteil 15 des vorliegenden Beispiels sie Funktion, zu beurteilen, ob der Roboter 2 und die Hand H derzeit innerhalb des Schwellenwertwechselbereichs R im obigen Zustandsraum angeordnet sind. Insbesondere kann der Positionsbeurteilungsteil 15 des vorliegenden Beispiels beurteilen, ob die Kontaktteile C, C der Greifer G, G der Hand H sich zum aktuellen Zeitpunkt innerhalb des Schwellenwertwechselbereichs R befinden. Dabei kann der Positionsbeurteilungsteil 15 ein beliebiges orthogonales 3D-Koordinatensystem verwenden, das in Bezug auf die Basis B des Roboters 2 fest ist, um die Positionen der Punkte der Hand H und die Positionen der Punkte des Schwellenwertwechselbereichs R zu vergleichen. Darüber hinaus beurteilt der Positionsbeurteilungsteil 15, ob die Kontaktteile C, C der Greifer G, G innerhalb des Schwellenwertwechselbereichs R angeordnet sind, auf Basis der Ergebnisse des Vergleichs zwischen diesen Positionen. Dabei kann der Positionsbeurteilungsteil 15 auf Informationen zurückgreifen, die sich auf den Drehwinkel beziehen, die von einem einem Sensor des Servomotors 21 erfasst werden, um die aktuelle Position der H zu spezifizieren. Der Positionsbeurteilungsteil 15 kann jedoch auch anderen Informationen, die die aktuelle Position der Hand anzeigen, von einem Sensor des Servomotors 21 oder einem weiteren Detektor erfassen. Man bemerke, dass das vom Positionsbeurteilungsteil 15 verwendete Beurteilungsverfahren nicht auf das obige Verfahren beschränkt ist und ein optimales Beurteilungsverfahren gemäß der Form, dem Layout usw. des Schwellenwertwechselbereichs R ausgewählt werden kann. Wie in 1 gezeigt, werden die Ergebnisse der Beurteilung durch den Positionsbeurteilungsteil 15 an den Kollisionsbeurteilungsteil 16 übertragen.
-
Des Weiteren hat der Kollisionsbeurteilungsteil 16 des vorliegenden Beispiels die Funktion, den geschätzten Wert der Störung, der vom Störschätzteil 12 berechnet wird, und einen vordefinierten Schwellenwert zu vergleichen, um zu beurteilen, ob der Roboter 2 mit einer Art Hindernis kollidiert hat. Dabei beurteilt der Kollisionsbeurteilungsteil 16 des vorliegenden Beispiels, ob eine Kollision vorliegt, indem er den geschätzten Wert der Störung und den ersten Schwellenwert vergleicht, wenn sich der Roboter 2 und die Hand H derzeit innerhalb des Schwellenwertwechselbereichs R im obigen Zustandsraum befinden. Andererseits beurteilt der Kollisionsbeurteilungsteil 16 des vorliegenden Beispiels, ob eine Kollision vorliegt, indem er den geschätzten Wert der Störung und den zweiten Schwellenwert vergleicht, der sich vom ersten Schwellenwert unterscheidet, wenn sich der Roboter 2 und die Hand H derzeit nicht innerhalb des Schwellenwertwechselbereichs R im obigen Zustandsraum befinden. Insbesondere vergleicht der Kollisionsbeurteilungsteil 16 des vorliegenden Beispiels den geschätzten Wert der Störung und den ersten Schwellenwert v1, um zu beurteilen, ob eine Kollision vorliegt, wenn die Kontaktteile C, C der Greifer G, G der Hand H sich innerhalb des Schwellenwertwechselbereichs R befinden (siehe 7 und 8). Andererseits vergleicht der Kollisionsbeurteilungsteil 16 den geschätzten Wert der Störung und den zweiten Schwellenwert v2, der sich vom ersten Schwellenwert v1 unterscheidet, um zu beurteilen, ob eine Kollision vorliegt, wenn die Kontaktteile C, C der beiden Greifer G, G sich nicht innerhalb des Schwellenwertwechselbereichs R befinden, d. h., wenn die Kontaktteile C, C eines oder beider Greifer G, G zumindest teilweise außerhalb des Schwellenwertwechselbereichs R angeordnet sind (siehe 9 und 10). Der erste Schwellenwert v1 und der zweite Schwellenwert v2 werden vorab im Speicherteil 10 usw. gespeichert. Diese Schwellenwerte v1, v2 können konstante numerische Werte sein oder können numerische Werte sein, die sich in Abhängigkeit der Posituren und Geschwindigkeiten der Bewegung von diversen Teilen des Roboters 2 verändern. Wie in 1 gezeigt, wird das Ergebnis der Beurteilung durch den Positionsbeurteilungsteil 16 an den Betriebsanweisungserzeugungsteil 17 übertragen.
-
Auf diese Weise wechselt der Kollisionsbeurteilungsteil 16 des vorliegenden Beispiels den Schwellenwert, der für die Kollisionsbeurteilung verwendet wird, in Abhängigkeit davon, ob sich der Roboter 2 und die Hand H derzeit innerhalb des Schwellenwertwechselbereichs R im Zustandsraum befinden. Wenn geeignete Schwellenwerte für eine Kollisionsbeurteilung während des Zeitraums, wenn der obige Zustandsübergang im Gange ist, bzw. für eine Kollisionsbeurteilung während anderer Zeiträume experimentell festgestellt werden, der erstere Schwellenwert als erster Schwellenwert v1 im Speicherteil 10 gespeichert und der letztere Schwellenwert als zweiter Schwellenwert v2 in Speicherteil 10 gespeichert wird, ist es daher möglich, eine Fehlbeurteilung darüber, ob der Roboter 2 mit einem Hindernis während des Zeitraums, wenn der Zustandsübergang im Gange ist, zu verhindern. Der somit erhaltene erste Schwellenwert v1 zweite Schwellenwert v2 sind im Graphen von 4 veranschaulicht. Die relative Größenordnung des ersten Schwellenwerts v1 und des zweiten Schwellenwerts v2 ist jedoch nicht nur auf das Beispiel in der Figur beschränkt. Auf obige Weise ist es gemäß der Robotersteuervorrichtung 1 der vorliegenden Ausführungsform möglich, eine Fehlbeurteilung des Kollisionsbeurteilungsteils 16 während des Zeitraums, wenn der Zustandsübergang im Gange ist, zu verhindern.
-
Unter erneuter Bezugnahme auf 1 hat der Betriebsanweisungserzeugungsteil 17 des vorliegenden Beispiels die Funktion, eine Betriebsanweisung eines Roboters 2 zu erzeugen, die dem Ergebnis der Beurteilung des Kollisionsbeurteilungsteils 16 entspricht. Insbesondere erzeugt der Betriebsanweisungserzeugungsteil 17, wenn er ein Beurteilungsergebnis empfängt, dass der geschätzte Wert einer Störung ein Schwellenwert oder höher ist, eine Betriebsanweisung zum Stoppen der Beförderung des Werkstücks W oder eine Betriebsanweisung zum Vermeiden eines Hindernisses, um das Werkstück W zu befördern. Andererseits erzeugt der Betriebsanweisungserzeugungsteil 17, wenn er ein Beurteilungsergebnis empfängt, dass der geschätzte Wert einer Störung geringer als der Schwellenwert ist, eine Betriebsanweisung zum Fortsetzen der Beförderung eines Werkstücks W gemäß dem Betriebsprogramm PG. Wie in 1 gezeigt, wird die Betriebsanweisung, die vom Betriebsanweisungserzeugungsteil 17 erzeugt wird, an den Servomotor 21 des Arms A und den Antriebsteil 22 der Hand H des Roboters 2 übertragen.
-
Es wird nun ein Werkstückbeförderungsprozess gemäß dem Robotersystem von 1 erläutert. 3 ist ein Ablaufplan, der die Routine eines veranschaulichenden Werkstückbeförderungsprozesses gemäß dem Robotersystem S von 1 veranschaulichen sollte. Wie in 3 gezeigt, beginnt der Störschätzteil 12 der Robotersteuervorrichtung 1 bei S301 das Schätzen der Störung, die an den Roboter 2 angelegt ist. Insbesondere beginnt der Störschätzteil 12 bei S301 die Schätzwertberechnung des Störmoments, das an den Servomotor 21 des Roboters 2 angelegt ist. Nach diesem Schritt führt der Störschätzteil 12 die Schätzwertberechnung des Störmoments über einen vordefinierten Zeitraum wiederholt durch. 4 ist ein Graph, der ein Beispiel für die zeitliche Veränderung C41 des geschätzten Werts (Td) des Störmoments zeigt, wie vom Störschätzteil 12 berechnet. Der Graph von 4 zeigt die zeitliche Veränderung C42 des Schwellenwerts, der vom Kollisionsbeurteilungsteil 16 für eine Kollisionsbeurteilung verwendet wird.
-
Der Störschätzteil 12 des vorliegenden Beispiels kann den geschätzten Wert (Td) des Störmoments durch Subtrahieren eines Beschleunigungsmoments (Ta) und eines Reibungsmoments (Tf) vom Antriebsmoment (T0) des Servomotors 21 berechnen. Das heißt, dass der Störschätzteil 12 die folgende Formel (1) verwenden kann, um den geschätzten Wert (Td) des Störmoments zu berechnen. Td = T0 – Ta – Tf (1)
-
Hier ist das Beschleunigungsmoment (Ta) das Drehmoment, das auf die Trägheit eines sich bewegenden Teils des Roboters 2 zurückzuführen ist, während das Reibungsmoment (Tf) das Drehmoment ist, das der Reibungskraft zuzuschreiben ist, die auf den sich bewegenden Teil des Roboters 2 wirkt. Der Graph von 4 zeigt den absoluten Wert des geschätzten Werts (Td) des Störmoments.
-
Wie aus 4 hervorgeht, ist der Graph des geschätzten Werts (Td) des Störmoments während des Zeitraums vor dem Zeitpunkt t4 und des Zeitraums ab dem Zeitpunkt t5 im Allgemeinen konstant, bildet jedoch zwischen dem Zeitpunkt t4 und dem Zeitpunkt t5 eine steile Spitze. Der Grund für die Bildung einer solchen Spitze ist nachstehend erläutert. Zunächst drückt der Zeitpunkt t4 im Graphen von 4 den Zeitpunkt aus, wenn die Greifer G, G der Hand H das Werkstück W auf dem Tisch T greifen. Zu diesem Zeitpunkt jedoch gibt es keine Kraft, die von den Greifern G, G der Hand H nach oben auf das Werkstück W in vertikale Richtung wirkt. Das heißt, dass die Last des Werkstücks W zu diesem Zeitpunkt nicht auf den Roboter 2 übertragen wird. Nichtsdestotrotz befindet der Störschätzteil 12 des vorliegenden Beispiels, dass die gesamte Last des Werkstücks W über die Hand H auf den Roboter 2 übertragen wird, während er den geschätzten Wert (Td) des Störmoments berechnet, ab dem Zeitpunkt t4. Insbesondere verwendet der Störschätzteil 12 des vorliegenden Beispiels das Beschleunigungsmoment (Ta), das anhand der Gesamtmasse des Roboters 2 und des Werkstücks W erhalten wird, um den geschätzten Wert (Td) des Störmoments zu berechnen, ab dem Zeitpunkt t4 (siehe obige Formel (1)). Daher leitet sich der geschätzte Wert (Td) des Störmoments größtenteils vom Störmoment ab, das während des Zeitraums, wenn die Hand H das Werkstück W greift, d. h. Zeitpunkt t4, bis zum Zeitpunkt, wenn das Werkstück W den Tisch T verlässt, tatsächlich an den Servomotor 21 angelegt ist. Folglich bildet der Graph der zeitlichen Veränderung C41 des geschätzten Werts (Td) des Störmoments eine steile Spitze zwischen dem Zeitpunkt t4 und dem Zeitpunkt t5.
-
Es wird erneut nun auf 3 Bezug genommen, wobei der Roboter 2 bei S302 die Hand H in Bezug auf das Werkstück W anordnet, das auf dem Tisch T platziert ist. 5 ist eine Seitenansicht, die den Zustand des Roboters 2 und eines Werkstücks W zum Zeitpunkt zeigt, wenn Schritt S302 abgeschlossen ist. Wie aus 5 hervorgeht, wird die Hand H bei Schritt S302 in Bezug auf das Werkstück W so angeordnet, dass die Kontaktteile C, C des Paars von Greifern G, G den Seitenflächen des Werkstücks W zugewandt sind. Der Zeitpunkt, wenn Schritt S302 abgeschlossen ist, entspricht dem Zeitpunkt t1 im Graphen von 4. Wie aus 4 hervorgeht, wird während es gewissen Zeitraums, der den Zeitpunkt t1 beinhaltet, ein vordefinierter zweiter Schwellenwert v2 für die Kollisionsbeurteilung durch den Kollisionsbeurteilungsteil 16 verwendet. Danach erkennt der Übergangserkennungsteil 13 der Robotersteuervorrichtung 1 bei Schritt S303 den Zustandsübergang von einem Zustand zum anderen, wobei die Last des Werkstücks W nicht auf den Roboter 2 übertragen wird, zum Zustand, wobei die gesamte Last des Werkstücks W durch die Hand H auf den Roboter 2 übertragen wird.
-
Danach definiert der Bereichsdefinierungsteil 14 der Robotersteuervorrichtung 1 bei Schritt S304 eine vordefinierte Form des Schwellenwertwechselbereichs R im Arbeitsraum des Roboters 2. 6 ist eine Seitenansicht, die den Roboter 2 und ein Werkstück W zum Zeitpunkt zeigt, wenn Schritt S304 abgeschlossen ist. Wie aus 6 hervorgeht, hat der Schwellenwertwechselbereich R, der in Schritt S304 definiert wird, eine Halbkugelform, die praktisch auf dem Tisch T platziert ist, so dass der Raum umfasst ist, den das Werkstück W auf dem Tisch T belegt. Der Zeitpunkt, wenn Schritt S304 abgeschlossen ist, entspricht dem Zeitpunkt t2 im Graphen von 4. Danach wechselt der Kollisionsbeurteilungsteil 16 der Robotersteuervorrichtung 1 bei Schritt S305 den zweiten Schwellenwert v2, der bis jetzt für eine Kollisionsbeurteilung verwendet wurde, auf den ersten Schwellenwert v1, der größer als der zweite Schwellenwert v2 ist. Der Zeitpunkt, wenn Schritt S305 abgeschlossen ist, entspricht dem Zeitpunkt t3, der im Wesentlichen dem Zeitpunkt t2 im Graphen von 4 gleicht.
-
Danach greift die Hand H bei Schritt S306 das Werkstück W mit dem Paar von Greifern G, G. 7 ist eine Seitenansicht, die den Zustand des Roboters 2 und eines Werkstücks W zum Zeitpunkt zeigt, wenn Schritt S306 abgeschlossen ist. Der Zeitpunkt, wenn Schritt S306 abgeschlossen ist, entspricht dem Zeitpunkt t4 im Graphen von 4. Wie oben erläutert, wird die Last des Werkstücks W zu diesem Zeitpunkt nicht auf den Roboter 2 übertragen. Danach hebt der Roboter 2 das Werkstück W bei Schritt S307 in vertikaler Richtung. 8 ist eine Seitenansicht, die den Roboter 2 und ein Werkstück W zum Zeitpunkt zeigt, wenn Schritt S307 abgeschlossen ist. Wie aus 8 hervorgeht, verlässt das Werkstück W zum Zeitpunkt, wenn Schritt S307 abgeschlossen ist, die Oberfläche des Tischs T und daher wird die gesamte Last des Werkstücks W durch die Hand H auf den Roboter 2 übertragen. Der Zeitpunkt, wenn Schritt S307 abgeschlossen ist, entspricht dem Zeitpunkt t5 des Graphen von 4.
-
Danach beurteilt der Positionsbeurteilungsteil 15 der Robotersteuervorrichtung 1 bei Schritt S308, ob die Kontaktteile C, C der Greifer G, C der Hand H die Grenze des Schwellenwertwechselbereichs R passiert haben. Darüber hinaus wird der später erläuterte Schritt S309 ausgeführt, wenn ein oder beide Kontaktteile C, C der Greifer G, G die Grenze des Schwellenwertwechselbereichs R zumindest teilweise passiert haben (Schritt S308, JA). Wenn kein Kontaktteil C, C der Greifer G, G die Grenze des Schwellenwertwechselbereichs R passiert hat (Schritt S308, NEIN), wird andererseits die gleiche Beurteilung wiederholt durchgeführt. Danach wechselt der Kollisionsbeurteilungsteil 16 der Robotersteuervorrichtung 1 bei Schritt S306 den ersten Schwellenwert v1, der bis jetzt für die Kollisionsbeurteilung verwendet wurde, auf den zweiten Schwellenwert v2. 9 ist eine Seitenansicht, die den Roboter 2 und ein Werkstück W zum Zeitpunkt zeigt, wenn Schritt S309 abgeschlossen ist. Der Zeitpunkt, wenn Schritt S309 abgeschlossen ist, entspricht dem Zeitpunkt t6 des Graphen von 4. Danach überträgt der Roboter 2 bei Schritt S310 das Werkstück W in die oben erwähnte zweite Position. 10 ist eine Seitenansicht, die den Roboter 2 und ein Werkstück W in der Mitte der Ausführung von Schritt S310 zeigt. Der Zeitpunkt, der in 10 gezeigt ist, entspricht dem Zeitpunkt t7 im Graphen von 4.
-
Wie oben erläutert, wird der Schwellenwert für eine Kollisionsbeurteilung gemäß einer Robotersteuervorrichtung 1 der vorliegenden Ausführungsform in Abhängigkeit davon, ob die Kontaktteile C, C der beiden Greifer G, G der Hand H sich innerhalb des Schwellenwertwechselbereichs R befinden, gewechselt. Daher ist es möglich, eine Fehlbeurteilung darüber, ob der Roboter 2 mit einem Hindernis kollidiert hat, sogar während des Zeitraums, wobei ein Zustandsübergang vom Zustand, wobei die Last des Werkstücks W nicht auf den Roboter 2 übertragen wird (siehe 7), in den Zustand im Gange ist, wobei die gesamte Last des Werkstücks W über die Hand auf den Roboter 2 übertragen wird (siehe 8), zu verhindern. Das heißt, dass es gemäß der Robotersteuervorrichtung 1 der vorliegenden Ausführungsform möglich ist, eine Fehlbeurteilung darüber, ob der Roboter 2 mit einem Hindernis kollidiert hat, sogar während des Zeitraums, wenn der Zustandsübergang im Gange ist, zu verhindern. Man bemerke, dass der Roboter 2 bei dem in den 5 bis 10 usw. veranschaulichten Beispiel so betrieben wird, dass er das Werkstück W hebt, das auf dem Tisch T platziert ist. Die Robotersteuervorrichtung 1 der vorliegenden Ausführungsform kann unter Verwendung einer ähnlichen Routine jedoch auch beurteilen, ob eine Kollision des Roboters 2 vorhanden ist, sogar wenn der Roboter 2 so betrieben wird, dass er ein Werkstück W, das von der Hand H ergriffen ist, auf einem Tisch T platziert.
-
Es wird nun eine Modifikation eines Werkstückbeförderungsprozesses gemäß dem Robotersystem S von 1 erläutert. 11 ist ein Ablaufplan, der eine Routine eines weiteren Werkstückbeförderungsprozesses gemäß dem Robotersystem S von 1 zeigt. Wie aus einem Vergleich der 3 und 11 hervorgeht, ähnelt die Routine von Schritt S1101 bis Schritt S1109 in 11 der Routine von Schritt S201 bis Schritt S209 in 3. Darüber hinaus ähneln die Zustände des Roboters 2 und des Werkstücks W zum Zeitpunkt, wenn die Schritte S1102, S1104, S1106, S1107 und S1109 in 11 abgeschlossen sind, den Zuständen, die in 5, 6, 7, 8 und 9 gezeigt sind. Darüber hinaus entsprechen die Zeitpunkte, wenn die Schritte S1102, S1104, S1105, S1106, S1107 und S1109 in 11 abgeschlossen sind, den Zeitpunkten t1, t2, t3, t4, t5 und t6 im Graphen von 4. Daher wird nachstehend nur die Routine von Schritt S1110 bis S1111 in 11 erläutert.
-
Wie in 11 gezeigt, löscht der Bereichsdefinierungsteil 14 der Robotersteuervorrichtung 1 bei Schritt S1110 den Schwellenwertwechselbereich R, der bereits bei Schritt S1104 definiert wurde, aus dem Arbeitsraum. 12 ist eine Seitenansicht, die den Roboter 2 und ein Werkstück W zum Zeitpunkt zeigt, wenn Schritt S1110 abgeschlossen ist. Danach überträgt der Roboter 2 bei Schritt S1111 das Werkstück W bis in die oben erwähnte zweite Position. 13 ist eine Seitenansicht, die den Roboter 2 und ein Werkstück W in der Mitte der Ausführung von Schritt S1111 zeigt. Wenn ein oder beide Kontaktteile C, C der Greifer G, G die Grenze des Schwellenwertwechselbereichs R zumindest teilweise passieren (Schritt S1108, JA), wird auf diese Weise beim vorliegenden Beispiel der erste Schwellenwert v1, der bis jetzt für eine Kollisionsbeurteilung verwendet wurde, auf den zweiten Schwellenwert v2 gewechselt (siehe Schritt S1109) und der Schwellenwertwechselbereich R, der bereits in Schritt S1104 definiert wurde, wird gelöscht (siehe Schritt S1110). Daher verwendet der Kollisionsbeurteilungsteil 16 der Robotersteuervorrichtung 1, nachdem Schritt S1110 ausgeführt wurde, den zweiten Schwellenwert v2 für die Kollisionsbeurteilung, und zwar unabhängig von den Beurteilungsergebnissen des Positionsbeurteilungsteils 15. Dies gewährleistet, dass es, sogar wenn ein oder beide Kontaktteile C, C der Greifer G, G sich nach außerhalb des Schwellenwertwechselbereichs R bewegen und sich danach wieder nach innerhalb des Schwellenwertwechselbereichs R bewegen, möglich ist, während des gesamten Zeitraums des Werkstückbeförderungsprozesses genau zu beurteilen, ob der Roboter 2 mit einem Hindernis kollidiert hat.
-
Nachstehend wird eine Modifikation des Schwellenwertwechselbereichs R erläutert, der im obigen Schritt S304 und Schritt S1104 definiert wurde. 14 und 15 sind Seitenansichten, die eine Modifikation des Schwellenwertwechselbereichs R zusammen mit dem Roboter 2 und dem Werkstück W zeigen. 14 zeigt auf die gleiche Weise wie 7 den Roboter 2 und das Werkstück W zum Zeitpunkt t4 im Graphen von 4, während 15 auf die gleiche Weise wie 8 den Roboter 2 und das Werkstück W zum Zeitpunkt t5 im Graphen von 8 zeigt. Wie in 14 gezeigt, hat der Schwellenwertwechselbereich R des vorliegenden Beispiels eine Säulenform, die praktisch auf dem Tisch T angeordnet ist, so dass der Raum umfasst ist, den das Werkstück W auf dem Tisch T belegt. Die Form eines solchen Schwellenwertwechselbereichs R wird unter Berücksichtigung der Richtung ermittelt, in die sich die Hand H nach Greifen des Werkstücks W bewegt. Insbesondere hat der auf diese Weise definierte Schwellenwertwechselbereich R beim vorliegenden Beispiel eine Säulenform, die sich von der Oberfläche des Tischs T in vertikaler Richtung nach oben erstreckt, wobei die Tatsache berücksichtigt wird, dass sich die Hand nach Greifen eines Werkstücks auf dem Tisch T nach oben in vertikale Richtung bewegt (siehe 15).
-
Wenn die Form des Schwellenwertwechselbereichs R ermittelt wird, ist es möglich, die Dimensionen des Schwellenwertwechselbereichs R zu verringern und sie somit stärker an die Dimensionen des Werkstücks W anzunähern, und daher ist es nicht nur möglich, eine Fehlbeurteilung durch den Kollisionsbeurteilungsteil 16 während des Zeitraums, wenn der obige Zustandsübergang im Gange ist, zu verhindern, sondern auch die Genauigkeit der Beurteilung durch den Kollisionsbeurteilungsteil vor und nach dem obigen Zustandsübergang zu verbessern. Man bemerke, dass die Form des Schwellenwertwechselbereichs R vom Bereichsdefinierungsteil 14 automatisch ermittelt werden kann oder vom Benutzer über diverse Benutzeroberflächen ausgewiesen werden kann. Im ersteren Fall kann der Bereichsdefinierungsteil 14 das Betriebsprogramm PG analysieren, um den Bewegungsweg der Hand H zu spezifizieren.
-
Wirkung der Erfindung
-
Gemäß dem ersten Aspekt der vorliegenden Erfindung wird der Schwellenwert für die Kollisionsbeurteilung in Abhängigkeit davon gewechselt, ob sich der Roboter und die Hand innerhalb des Bereichs befinden, der vom Bereichsdefinierungsteil definiert wurde. Gemäß dem ersten Aspekt ist aus diesem Grund eine Fehlbeurteilung darüber, ob der Roboter mit einem Hindernis kollidiert hat, sogar zu verhindern, während ein Zustandsübergang von einem in den anderen des Zustands im Gange ist, wobei die Last des Werkstücks nicht auf den Roboter übertragen wird, und des Zustands, wobei die gesamte Last des Werkstücks durch die Hand auf den Roboter übertragen wird.
-
Gemäß dem zweiten Aspekt der vorliegenden Erfindung ist es nicht länger notwendig, den Roboter mit einem dedizierten Detektor zum Erfassen von Informationen für eine Schätzwertberechnung der Störung zu versehen, und somit ist es möglich, die Konfiguration des Robotersystems zu vereinfachen, das die Robotersteuervorrichtung enthält.
-
Gemäß dem dritten Aspekt der vorliegenden Erfindung muss die Robotersteuervorrichtung nicht länger Informationen über die Masse des Werkstücks von außerhalb erfassen, und somit ist es möglich, die Konfiguration des Robotersystems zu vereinfachen, das die Robotersteuervorrichtung enthält.
-
Gemäß dem vierten Aspekt der vorliegenden Erfindung ist es möglich, während des gesamten Zeitraums des Werkstückbeförderungsprozesses genau zu beurteilen, ob der Roboter mit einem Hindernis kollidiert hat, sogar dann, wenn sich der Roboter und die Hand nach außerhalb des vom Bereichsdefinierungsteil definierten Bereichs bewegen und sich danach zurück nach innerhalb des Bereichs bewegen.
-
Gemäß dem fünften Aspekt der vorliegenden Erfindung ist es möglich, den vom Bereichsdefinierungsteil definierten Bereich zu verringern und stärker an den Zustand des Roboters und der Hand zum Zeitpunkt des Beginns des Zustandsübergangs anzunähern, und und daher ist es möglich, eine Fehlbeurteilung durch den Kollisionsbeurteilungsteil sogar während des Zeitraums, wenn der obige Zustandsübergang im Gange ist, zu verhindern, und somit es es möglich, die Genauigkeit der Beurteilung durch den Kollisionsbeurteilungsteil vor und nach dem obigen Zustandsübergang zu verbessern.
-
Die vorliegende Erfindung ist nicht auf die oben genannte Ausführungsform beschränkt und kann innerhalb des in den Ansprüchen beschriebenen Umfangs auf diverse Weisen modifiziert werden. Beispielsweise ist bei der obigen Ausführungsform ein Fluiddruckantriebstyp einer Hand veranschaulicht, der Roboter, der von der Robotersteuervorrichtung der vorliegenden Erfindung gesteuert wird, kann jedoch auch mit einem Servoantriebstyp einer Hand versehen sein oder kann auch mit einem Aufnehmertyp von Hand versehen sein, der Magnetkraft oder Saugkraft usw. verwendet, um ein Werkstück aufzunehmen.