-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung
-
Die Erfindung betrifft eine Robotersteuerungsvorrichtung zum Steuern eines Roboters zum Tragen eines Gegenstands in Zusammenarbeit mit einer Person, ein Robotersystem und ein diesbezügliches Verfahren.
-
Beschreibung der verwandten Technik
-
Robotersysteme, bei denen Roboter Gegenstände in Zusammenarbeit mit Personen tragen, sind bekannt (beispielsweise aus der
japanischen Patent-Offenlegungsschrift Nr. 2000-176872 , der
japanischen Patent-Offenlegungsschrift Nr. 2000-343470 und dem
japanischen Patent Nr. 4445038 ).
-
Im Allgemeinen wird ein zulässiges Gewicht eines Gegenstands, den ein Roboter tragen kann, für jeden Roboter bestimmt. Auf dem vorliegenden technischen Gebiet ist eine Technik erwünscht, die es einem Roboter ermöglicht, verschiedenartige Gegenstände zu tragen, ohne das zulässige Gewicht des Roboters zu überschreiten.
-
KURZDARSTELLUNG DER ERFINDUNG
-
Gemäß einem Aspekt der Erfindung umfasst eine Robotersteuerungsvorrichtung, die einen Roboter steuert, der in Zusammenarbeit mit einer Person einen Gegenstand trägt, einen Krafterfassungsteil, der konfiguriert ist, um eine Kraft zu erfassen, die von dem Gegenstand auf den Roboter ausgeübt wird, wenn der Roboter den Gegenstand anhebt, einen Vergleichsteil, der konfiguriert ist, um eine Kraftkomponente in Schwerkraftrichtung der Kraft, die von dem Krafterfassungsteil erfasst wird, mit einem ersten Schwellenwert zu vergleichen, der mit Bezug auf die Kraftkomponente vorbestimmt ist, und einen Stoppbefehlsteil, der konfiguriert ist, um den Roboter zu stoppen, wenn die Kraftkomponente größer als der erste Schwellenwert ist.
-
Die Robotersteuerungsvorrichtung kann ferner einen Betätigungsbefehlsteil umfassen, der konfiguriert ist, um einen Betätigungsbefehl für den Roboter zu generieren, um den Gegenstand zu tragen, wenn die Kraftkomponente kleiner oder gleich dem ersten Schwellenwert ist, und um den Betätigungsbefehl an den Roboter zu übertragen.
-
Der Betätigungsbefehlsteil kann den Betätigungsbefehl generieren, um den Gegenstand in einer Richtung entgegen der Schwerkraftrichtung zu tragen, wenn die Kraftkomponente kleiner oder gleich einem zweiten Schwellenwert ist, der kleiner als der erste Schwellenwert ist.
-
Der Betätigungsbefehlsteil kann den Betätigungsbefehl generieren, um den Gegenstand in Schwerkraftrichtung zu tragen, wenn die Kraftkomponente kleiner oder gleich dem ersten Schwellenwert ist und größer oder gleich einem zweiten Schwellenwert ist, der kleiner als der erste Schwellenwert ist.
-
Der Stoppbefehlsteil kann den Roboter stoppen, wenn die Kraftkomponente kleiner als ein zweiter Schwellenwert ist, der kleiner als der erste Schwellenwert ist. Der Betätigungsbefehlsteil kann den Betätigungsbefehl generieren, um den Gegenstand in einer Richtung zu tragen, die sich mit der Schwerkraftrichtung schneidet, als Reaktion auf eine Kraftkomponente in der Richtung, die sich mit der Schwerkraftrichtung schneidet, der Kraft, die von dem Krafterfassungsteil erfasst wird.
-
Der Stoppbefehlsteil kann den Roboter stoppen, wenn die Kraftkomponente in einer waagerechten Richtung der Kraft, die von dem Krafterfassungsteil erfasst wird, größer als ein Schwellenwert ist, der mit Bezug auf die Kraftkomponente in der waagerechten Richtung vorbestimmt ist.
-
Bei einem anderen Aspekt der Erfindung umfasst ein Robotersystem einen Roboter und die zuvor erwähnte Robotersteuerungsvorrichtung, die konfiguriert ist, um den Roboter zu steuern. Der Roboter umfasst einen Kraftdetektionsteil, der konfiguriert ist, um eine Kraft zu detektieren, die von dem Gegenstand auf den Roboter ausgeübt wird, wenn der Roboter den Gegenstand anhebt.
-
Bei noch einem anderen Aspekt der Erfindung umfasst ein Verfahren zum Steuern eines Roboters, der in Zusammenarbeit mit einer Person einen Gegenstand trägt, die Schritte des Detektierens einer Kraft, die von dem Gegenstand auf den Roboter ausgeübt wird, wenn der Roboter den Gegenstand anhebt, des Vergleichens einer Kraftkomponente in einer Schwerkraftrichtung der detektierten Kraft mit einem Schwellenwert, der mit Bezug auf die Kraftkomponente vorbestimmt ist, und des Stoppens des Roboters, wenn die Kraftkomponente größer als der Schwellenwert ist.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Die zuvor beschriebenen oder andere Objekte, Merkmale und Vorteile der Erfindung werden durch die folgende Beschreibung der Ausführungsformen der Erfindung mit Bezug auf die beiliegenden Zeichnungen klargestellt. Es zeigen:
-
1 eine Ansicht eines Robotersystems gemäß einer Ausführungsform der Erfindung;
-
2 ein Blockdiagramm des in 1 gezeigten Robotersystems;
-
3 ein Ablaufschema eines Beispiels eines Betätigungsablaufs des in 1 gezeigten Robotersystems;
-
4 einen Zustand, in dem der Roboter ein Werkstück in Zusammenarbeit mit einem Arbeiter trägt;
-
5 eine Grafik, die ein Beispiel einer Änderungscharakteristik einer Kraftkomponente in Schwerkraftrichtung einer Kraft, die von einem Krafterfassungsteil erfasst wird, im Verlauf der Zeit zeigt;
-
6 eine Grafik, die ein Beispiel einer Änderungscharakteristik einer Kraftkomponente in Schwerkraftrichtung im Verlauf der Zeit zeigt, wenn ein Benutzer ein Werkstück aus der Hand lässt;
-
7 einen Zustand, in dem ein Hindernis mit einem Werkstück zusammenstößt, wenn ein Roboter das Werkstück in Zusammenarbeit mit einem Arbeiter trägt;
-
8 eine Grafik, die ein Beispiel einer Änderungscharakteristik einer Kraftkomponente in Schwerkraftrichtung im Verlauf der Zeit zeigt, wenn das Hindernis mit dem Werkstück zusammenstößt, von unterhalb desselben gesehen, wie in 7 gezeigt;
-
9 einen Zustand, in dem ein Hindernis mit einem Werkstück zusammenstößt, wenn ein Roboter das Werkstück in Zusammenarbeit mit einem Arbeiter trägt;
-
10 eine Grafik, die ein Beispiel einer Änderungscharakteristik einer Kraftkomponente in der waagerechten Richtung im Verlauf der Zeit zeigt, wenn das Hindernis mit dem Werkstück zusammenstößt, von der Seite desselben aus gesehen, wie in 9 gezeigt;
-
11 ein anderes Beispiel eines Betätigungsablaufs des in 1 gezeigten Robotersystems;
-
12 eine Grafik, die ein Beispiel einer Änderungscharakteristik einer Kraftkomponente in Schwerkraftrichtung darstellt, wenn in Schritt S21 in 11 „JA” bestimmt wird;
-
13 eine Grafik, die ein Beispiel einer Änderungscharakteristik einer Kraftkomponente in Schwerkraftrichtung darstellt, wenn in Schritt S23 in 11 „JA” bestimmt wird; und
-
14 eine Grafik, die ein Beispiel einer Änderungscharakteristik einer Kraftkomponente in der waagerechten Richtung darstellt, wenn in Schritt S25 in 11 „JA” bestimmt wird.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Die Ausführungsformen der Erfindung werden nachstehend mit Bezug auf die Zeichnungen ausführlich beschrieben. Zunächst wird mit Bezug auf 1 und 2 ein Robotersystem 10 gemäß einer Ausführungsform der Erfindung beschrieben. Das Robotersystem 10 dient zum Tragen eines Werkstücks W als Gegenstand in Zusammenarbeit mit einem Arbeiter A.
-
Das Robotersystem 10 umfasst einen Roboter 12 und eine Robotersteuerungsvorrichtung 50, die den Roboter 12 steuert. Der Roboter 12 ist beispielsweise ein Vertikal-Knickarmroboter und umfasst einen Robotersockel 14, eine Drehtrommel 16, einen Roboterarm 18, eine Roboterhand 20 und einen Kraftdetektionsteil 22.
-
Der Robotersockel 14 ist am Boden einer Arbeitszelle befestigt. Die Drehtrommel 16 ist an dem Robotersockel 14 angebracht, um sich um eine senkrechte Achse herum drehen zu können. Der Roboterarm 18 umfasst einen Oberarm 24, der drehbar an dem Drehkörper 16 angebracht ist, und einen Unterarm 26, der drehbar an einem distalen Ende des Oberarms 24 angebracht ist.
-
Die Roboterhand 20 ist an einem distalen Ende des Unterarms 26 über ein Handgelenk 28 angebracht. Die Roboterhand 20 umfasst eine Vielzahl von Fingern 30, die in der Lage sind, sich zu öffnen und zu schließen und das Werkstück W zu ergreifen und loszulassen.
-
Der Kraftdetektionsteil 22 ist an dem Handgelenksteil 28 montiert. Bei dieser Ausführungsform umfasst der Kraftdetektionsteil 22 einen 6-achsigen Kraftsensor und kann beispielsweise Lasten in den X-Achsen-, den Y-Achsen- und den Z-Achsen-Richtungen in 1 und Momente bezogen auf die X-Achse, die Y-Achse und die Z-Achse detektieren. Der Kraftdetektionsteil 22 sendet Daten der detektierten Kraft (d. h. der Lasten und der Momente) an die Robotersteuerungsvorrichtung 50.
-
Wie in 2 gezeigt, umfasst der Roboter 12 eine Vielzahl von Servomotoren 32. Die Servomotoren 32 sind in der Drehtrommel 16, dem Roboterarm 18, dem Handgelenk 28 und der Roboterhand 20 eingebaut und bewegen diese Elemente als Reaktion auf einen Befehl von der Robotersteuerungsvorrichtung 50.
-
Die Robotersteuerungsvorrichtung 50 umfasst eine Zentraleinheit (CPU) 52, einen Speicher 54 und einen Krafterfassungsteil 56. Der Speicher 54 und der Krafterfassungsteil 56 sind über einen Bus mit der CPU 52 verbunden.
-
Der Speicher 54 besteht beispielsweise aus einem elektrisch löschbaren und beschreibbaren nicht flüchtigen Speicher, wie etwa EEPROMTM, oder einem Arbeitsspeicher, wie etwa einem DRAM oder SRAM, die mit hoher Geschwindigkeit ausgelesen und beschrieben werden können. Der Speicher 54 zeichnet eine Konstante, eine Variable und ein Roboterprogramm oder dergleichen auf, die notwendig sind, um den Roboter 12 zu betätigen.
-
Der Krafterfassungsteil 56 umfasst beispielsweise einen A/D-Wandler und empfängt Kraftdaten, die von dem Kraftdetektionsteil 22 gesendet werden. Die CPU 52 zeichnet die Kraftdaten, die von dem Krafterfassungsteil 56 erfasst werden, in dem Speicher 54 auf.
-
Bei dieser Ausführungsform dient die CPU 52 als Vergleichsteil 58, als Stoppbefehlsteil 60 und als Betätigungsbefehlsteil 62. Die Funktionen des Vergleichsteils 58, des Stoppbefehlsteils 60 und des Betätigungsbefehlsteils 62 werden noch beschrieben.
-
Als Nächstes wird mit Bezug auf 3 bis 10 eine Ausführungsform eines Betätigungsablaufs des Robotersystems 10 beschrieben. Der in 3 gezeigte Ablauf beginnt, wenn die CPU 52 einen Befehl zum Tragen des Werkstücks W von einem Benutzer, einem Host-Controller, einem Programm oder dergleichen empfängt.
-
In Schritt S1 beginnt die CPU 52 damit, die Kraft zu detektieren, die auf den Roboter 12 ausgeübt wird. Insbesondere sendet die CPU 52 einen Kraftdetektionsbefehl an den Kraftdetektionsteil 22. Wenn er den Kraftdetektionsbefehl empfängt, detektiert der Kraftdetektionsteil 22 periodisch eine Kraft (d. h. Lasten in den X-Achsen-, den Y-Achsen- und den Z-Achsen-Richtungen und Momente bezogen auf die X-Achse, die Y-Achse und die Z-Achse), die auf einen Abschnitt einwirkt, in dem der Kraftdetektionsteil 22 montiert ist, mit einer Periode τ (z. B. eine Sekunde).
-
Der Kraftdetektionsteil 22 sendet die Daten der detektierten Kraft an die Robotersteuerungsvorrichtung 50. Der Krafterfassungsteil 56 empfängt periodisch die Kraftdaten von dem Kraftdetektionsteil 22 mit der Periode τ. Die CPU 52 zeichnet nacheinander die Daten der Kraft, die von dem Krafterfassungsteil 56 erfasst wird, in dem Speicher 54 auf.
-
In Schritt S2 betätigt die CPU 52 den Roboter 12, um das Werkstück W anzuheben. Insbesondere sendet die CPU 52 Befehle an die Servomotoren 32, die in dem Roboter 12 eingebaut sind, um Werkstück W zu ergreifen, das an einem vorbestimmten Ort B abgestellt ist (1), und es anzuheben.
-
Der Roboter 12 gemäß dieser Ausführungsform trägt verschiedenartige Werkstücke W, die diverse Gewichte aufweisen, in Zusammenarbeit mit einem Arbeiter. Ein zulässiges Gewicht eines Gegenstands, der von dem Roboter 12 getragen werden soll, ist vorbestimmt. Falls der Roboter 12 ein Werkstück W trägt, das schwerer als das zulässige Gewicht ist, kann es sein, dass der Roboter 12 versagt. Um eine derartige Situation zu vermeiden, bestimmt das Robotersystem 10 gemäß dieser Ausführungsform, ob eine Last, die das zulässige Gewicht überschreitet, auf den Roboter 12 ausgeübt wird, wenn der Roboter 12 das Werkstück W in Schritt S2 anhebt.
-
In Schritt S3 bestimmt die CPU 52, ob eine Kraftkomponente Fg in Schwerkraftrichtung einer Kraft F, die von dem Werkstück W auf den Roboter 12 ausgeübt wird, wenn der Roboter 12 das Werkstück W in Schritt S2 anhebt, größer als ein vorbestimmter Schwellenwert α ist.
-
Insbesondere berechnet die CPU 52 die Kraftkomponente Fg, die in Schwerkraftrichtung wirkt, der Kraft F, die von dem Werkstück W auf die Roboterhand 20 ausgeübt wird, aus Daten der Kraft, die zuletzt von dem Krafterfassungsteil 56 erfasst wurde.
-
Die Kraftkomponente Fg ist eine Kraft, die auf Grund des Gewichts des Werkstücks W auf die Roboterhand 20 ausgeübt wird, wenn die Roboterhand 20 das Werkstück W anhebt, und umfasst beispielsweise eine Last in Schwerkraftrichtung oder ein Moment bezogen auf die waagerechte Achse.
-
Die CPU 52 vergleicht die berechnete Kraftkomponente Fg mit dem Schwellenwert α (dem ersten Schwellenwert), der mit Bezug auf die Kraftkomponente Fg vorbestimmt ist. Wenn die Kraftkomponente Fg größer als der Schwellenwert α ist, bestimmt die CPU 52 „JA” und fährt mit Schritt S4 fort. Wenn die Kraftkomponente Fg dagegen kleiner oder gleich dem Schwellenwert α ist, bestimmt die CPU 52 „NEIN” und fährt mit Schritt S6 fort.
-
Somit dient die CPU 52 bei dieser Ausführungsform als Vergleichsteil 58, der die Kraftkomponente Fg mit dem Schwellenwert α vergleicht. Der Schwellenwert α wird bestimmt, um mit dem zulässigen Gewicht (z. B. a = zulässiges Gewicht x Schwerebeschleunigung) zu korrelieren, und wird in dem Speicher 54 vorweg aufgezeichnet.
-
In Schritt S4 benachrichtigt die CPU 52 einen Benutzer darüber, dass das Gewicht des Werkstücks W das zulässige Gewicht des Roboters 12 überschreitet. Beispielsweise generiert die CPU 52 ein Bildsignal oder ein Tonsignal, das angibt: „Zulässiges Gewicht überschritten. Bitte beim Tragen des Werkstücks W helfen”. Dann gibt die CPU 52 ein Bild oder einen Ton für den Benutzer über eine Anzeige oder einen Lautsprecher (nicht gezeigt) aus, die bzw. der an die Robotersteuerungsvorrichtung 50 angeschlossen ist. Wenn der Benutzer in Schritt S4 erkennt, dass das zulässige Gewicht des Roboters 12 überschritten wird, stützt der Benutzer das Werkstück W mit der Hand von unten ab, wie in 4 gezeigt. In diesem Fall nimmt die Kraftkomponente Fg, die auf die Roboterhand 20 ausgeübt wird, stark ab, wie in 5 gezeigt.
-
Bei dieser Ausführungsform detektiert die CPU 52 eine Reduzierung der Kraftkomponente Fg, wie in 5 gezeigt, in Schritt S5, der noch beschrieben wird, und beginnt in Schritt S6, der noch beschrieben wird, damit, das Werkstück W durch den Roboter 12 zu tragen, wenn die Reduzierung der Kraftkomponente Fg detektiert wird.
-
In Schritt S5 bestimmt die CPU 52, ob die Kraftkomponente Fg kleiner oder gleich dem Schwellenwert α ist. Insbesondere berechnet die CPU 52 die Kraftkomponente Fg aus den Daten der Kraft, die zuletzt von dem Krafterfassungsteil 56 erfasst wurde.
-
Wenn die Kraftkomponente Fg kleiner oder gleich dem Schwellenwert α ist, bestimmt die CPU 52 „JA” und fährt mit Schritt S6 fort. Wenn die Kraftkomponente Fg dagegen größer als der Schwellenwert α ist, bestimmt die CPU 52 „NEIN” und kehrt zu Schritt S4 zurück, um den Benutzer wieder darüber zu benachrichtigen, dass es notwendig ist, beim Tragen des Werkstücks W zu helfen.
-
Somit kann die CPU 52 detektieren, dass die Kraftkomponente Fg durch den Arbeiter A, der das Werkstück W abstützt, reduziert wird, wie in 5 gezeigt.
-
In Schritt S6 betätigt die CPU 52 den Roboter 12, um das Werkstück W in Zusammenarbeit mit dem Arbeiter zu bewegen. Bei dieser Ausführungsform generiert die CPU 52 einen Betätigungsbefehl für den Roboter 12 zum Tragen des Werkstücks W gemäß einem Roboterprogramm, das in dem Speicher 54 gespeichert ist.
-
Die CPU 52 sendet den generierten Betätigungsbefehl an die Servomotoren 32, die in dem Roboter 12 eingebaut sind. Dadurch funktioniert der Roboter 12 gemäß dem Roboterprogramm, um das Werkstück W in Zusammenarbeit mit dem Arbeiter von dem Ort B zu einem vorbestimmten Zielort zu tragen.
-
Somit dient bei dieser Ausführungsform die CPU 52 als Betätigungsbefehlsteil 62, der den Betätigungsbefehl generiert und an den Roboter 12 sendet, wenn die Kraftkomponente Fg kleiner oder gleich dem Schwellenwert α ist.
-
Das zuvor beschriebene Roboterprogramm kann erstellt werden, indem z. B. dem Roboter 12 eine Bewegungsbahn desselben beigebracht wird, wenn er das Werkstück W von dem Ort B zu dem Zielort trägt.
-
Wenn der Roboter 12 das Werkstück W in Zusammenarbeit mit dem Arbeiter A in Schritt S6 trägt, kann der Arbeiter A das Werkstück W plötzlich aus der Hand lassen. In diesem Fall nimmt die Kraftkomponente Fg stark zu, um den Schwellenwert α wieder zu überschreiten, wie in 6 gezeigt. Um dies zu detektieren, überwacht die CPU 52 in dem folgenden Schritt S7, ob die Kraftkomponente Fg den Schwellenwert α überschreitet, während der Schritt S6 ausgeführt wird.
-
In Schritt S7 bestimmt die CPU 52, ob die Kraftkomponente Fg der zuletzt erfassten Kraft F größer als der Schwellenwert α ist. Insbesondere berechnet die CPU 52 die Kraftkomponente Fg der Kraft F, die zuletzt von dem Krafterfassungsteil 56 erfasst wurde.
-
Dann dient die CPU 52 als Vergleichsteil 58, um die berechnete Kraftkomponente Fg mit dem Schwellenwert α zu vergleichen. Wenn die Kraftkomponente Fg größer als der Schwellenwert α ist, bestimmt die CPU 52 „JA” und fährt mit Schritt S8 fort. Wenn die Kraftkomponente Fg dagegen kleiner oder gleich dem Schwellenwert α ist, bestimmt die CPU 52 „NEIN” und fährt mit Schritt S9 fort.
-
Wenn in Schritt S7 „JA” bestimmt wird, stoppt die CPU 52 in Schritt S8 die Betätigung des Roboters 12. Insbesondere generiert die CPU 52 einen Befehl zum Stoppen der Servomotoren 32, die in dem Roboter 12 eingebaut sind, und sendet ihn an die Servomotoren 32. Daraufhin wird die Betätigung des Roboters 12 gestoppt.
-
Somit dient bei dieser Ausführungsform die CPU 52 als Stoppbefehlsteil 60, der den Roboter 12 stoppt, wenn die Kraftkomponente Fg größer als der Schwellenwert α ist. Nachdem sie den Schritt S8 ausgeführt hat, kehrt die CPU 52 zu Schritt S4 zurück und benachrichtigt den Benutzer wieder darüber, dass es notwendig ist, beim Tragen des Werkstücks W zu helfen.
-
Wenn in Schritt S7 „NEIN” bestimmt wird, bestimmt die CPU 52 in Schritt S9, ob die Kraftkomponente Fg der zuletzt erfassten Kraft F kleiner als ein Schwellenwert β ist oder eine Kraftkomponente Fh in der waagerechten Richtung der zuletzt erfassten Kraft F größer als ein Schwellenwert γ ist.
-
Schritt S9 wird nachstehend mit Bezug auf 7 bis 10 beschrieben. Wenn der Roboter 12 in Schritt S6 das Werkstück W mit dem Arbeiter A trägt, kann ein Hindernis C von unten mit dem Werkstück W zusammenstoßen, wie in 7 gezeigt.
-
In diesem Fall besteht das Risiko, dass der Arbeiter A körperlich (z. B. mit einem Finger) zwischen dem Hindernis C und dem Werkstück W (oder dem Roboter 12) hängenbleibt und sich dadurch verletzt. Wenn das Hindernis C von unten mit dem Werkstück W zusammenstößt, wie in 7 gezeigt, reduziert sich die Kraftkomponente Fg stark, wie in 8 gezeigt.
-
Wenn der Roboter 12 in Schritt S6 ferner das Werkstück W mit dem Arbeiter A trägt, kann ein Hindernis D von der Seite her mit dem Werkstück W zusammenstoßen, wie in 9 gezeigt. Auch in diesem Fall besteht das Risiko, dass der Arbeiter A körperlich zwischen dem Hindernis D und dem Werkstück W (oder dem Roboter 12) hängenbleibt und sich dadurch verletzt.
-
Wenn das Hindernis D von der Seite her mit dem Werkstück W zusammenstößt, wie in 9 gezeigt, nimmt die Kraftkomponente Fh in der waagerechten Richtung der Kraft F, die von dem Werkstück W auf den Roboter ausgeübt wird, stark zu, wie in 10 gezeigt.
-
Um bei dieser Ausführungsform die Reduzierung der Kraftkomponente Fg zu überwachen, wie in 8 gezeigt, und die Kraftkomponente Fh zu erhöhen, wie in 10 gezeigt, bestimmt die CPU 52 in Schritt S9, ob die Kraftkomponente Fg kleiner als der Schwellenwert β ist oder ob die Kraftkomponente Fh in der waagerechten Richtung der Kraft F größer als der Schwellenwert γ ist.
-
Insbesondere berechnet die CPU 52 die Kraftkomponente Fg der Kraft, die zuletzt von dem Krafterfassungsteil 56 erfasst wurde. Die CPU 52 bestimmt, ob die berechnete Kraftkomponente Fg kleiner als der Schwellenwert β ist. Der Schwellenwert β wird durch den Benutzer vorbestimmt, um kleiner als der zuvor beschriebene Schwellenwert α zu sein (d. h. α > β), und wird in dem Speicher 54 abgelegt.
-
Ferner berechnet die CPU 52 die Kraftkomponente Fh in der waagerechten Richtung der Kraft F aus den Daten der Kraft, die zuletzt von dem Krafterfassungsteil 56 erfasst wurde. Die CPU 52 bestimmt, ob die berechnete Kraftkomponente Fh größer als der Schwellenwert γ ist. Der Schwellenwert γ wird durch den Benutzer vorbestimmt und in dem Speicher 54 abgelegt.
-
Wenn die Kraftkomponente Fg kleiner als der Schwellenwert β ist (d. h. Fg < β), oder die Kraftkomponente Fh größer als der Schwellenwert γ ist (d. h. Fh > γ), bestimmt die CPU 52 „JA” und fährt mit Schritt S10 fort.
-
Wenn die Kraftkomponente Fg dagegen größer oder gleich dem Schwellenwert β ist (d. h. Fg ≥ β), und die Kraftkomponente Fh kleiner oder gleich dem Schwellenwert γ (d. h. Fh ≤ γ), bestimmt die CPU 52 „NEIN” und fährt mit Schritt S11 fort.
-
Wenn in Schritt S9 „JA” bestimmt wurde, stoppt die CPU 52 in Schritt S10 die Betätigung des Roboters 12, ähnlich wie bei dem zuvor beschriebenen Schritt S8, und beendet den Ablauf, wie in 3 gezeigt.
-
Wenn sie dagegen in Schritt S9 „NEIN” bestimmt hat, bestimmt die CPU 52 in Schritt S11, ob das Werkstück W bis zum Zielort getragen wurde. Beispielsweise bestimmt die CPU 52, ob jeder Servomotor 32 entsprechend angetrieben wird, um sich mit der Drehzahl zu drehen, die in dem Roboterprogramm vorgeschrieben wird, basierend auf einem Signal von einem (nicht gezeigten) Codierer, der in jedem Servomotor 32 installiert ist.
-
Wenn die CPU 52 bestimmt, dass das Werkstück W bis zum Zielort getragen wird (d. h. es wird „JA” bestimmt), fährt sie mit Schritt S12 fort. Wenn die CPU 52 dagegen bestimmt, dass das Werkstück W nicht bis zum Zielort getragen wird (d. h. es wird „NEIN” bestimmt), kehrt sie zu Schritt S7 zurück.
-
In Schritt S12 sendet die CPU 52 einen Befehl an den Servomotor 32, der in der Roboterhand 20 eingebaut ist, damit sie die Finger 30 öffnet, um das Werkstück W loszulassen, das von diesen ergriffen wird. Auf diese Art und Weise wird das Werkstück W durch die Zusammenarbeit des Roboters 12 und des Arbeiters A von dem Ort B bis zu dem Zielort getragen.
-
In Schritt S13 bestimmt die CPU 52, ob alle Werkstücke W, die von dem Benutzer eingestellt wurden, getragen wurden. Wenn die CPU 52 bestimmt, dass alle Werkstücks W getragen wurden (d. h. es wird „JA” bestimmt), beendet die CPU 52 den in 3 gezeigten Ablauf. Wenn die CPU 52 dagegen bestimmt, dass es ein oder mehrere Werkstücke W zu tragen gibt (d. h. es wird „NEIN” bestimmt), kehrt die CPU 52 zu Schritt S2 zurück und führt die Betätigung zum Tragen eines anderen Werkstücks W aus.
-
Wie zuvor beschrieben überwacht die CPU 52 bei dieser Ausführungsform die Kraftkomponente Fg, die von dem Werkstück W auf den Roboter 12 ausgeübt wird, während der Schritt S6 ausgeführt wird, und stoppt die Betätigung des Roboters 12, wenn detektiert wird, dass das zulässige Gewicht des Roboters 12 überschritten wird (d. h. wenn in Schritt S7 „JA” bestimmt wird). Gemäß dieser Konfiguration ist es möglich, verschiedenartige Werkstücke W, die diverse Gewichte aufweisen, durch den Roboter 12 zu tragen, und dabei zu verhindern, dass eine Last, die das zulässige Gewicht überschreitet, auf den Roboter 12 ausgeübt wird.
-
Ferner ist es gemäß dieser Ausführungsform möglich, ein Verhältnis des Gewichts, das von dem Roboter 12 getragen werden soll, zu dem Gewicht, das von dem Arbeiter A getragen werden soll, richtig anzupassen, indem der Schwellenwert α innerhalb eines Bereichs entsprechend eingestellt wird, solange der Schwellenwert α kleiner oder gleich einem Wert ist, der dem zulässigen Gewicht entspricht. Entsprechend ist es möglich, den Bedarf, diverse Werkstücke W zu tragen, flexibel zu decken.
-
Ferner ist es gemäß dieser Ausführungsform möglich, nicht nur ein quaderförmiges Werkstück W zu tragen, wie in 1 gezeigt, sondern auch Werkstücke W in diversen Formen (z. B. in länglicher Form).
-
Ferner überwacht bei dieser Ausführungsform die CPU 52 die Kraftkomponenten Fg und Fh, während sie den Schritt S6 ausführt, um einen Zusammenstoß zwischen dem Hindernis C oder D und dem Werkstück W zu detektieren, während das Werkstück W getragen wird (Schritt S9), und stoppt den Roboter 12 sofort, wenn der Zusammenstoß detektiert wird. Gemäß dieser Konfiguration ist es möglich, zuverlässig zu verhindern, dass sich der Arbeiter A an dem Hindernis C oder D verletzt, während das Werkstück W getragen wird.
-
Wenn die CPU 52 bei dieser Ausführungsform ferner detektiert, dass eine Last, die das zulässige Gewicht überschreitet, auf den Roboter 12 ausgeübt wird (wenn in Schritt S3 „JA” bestimmt wird), nachdem der Roboter 12 das Werkstück W angehoben hat (Schritt S2), benachrichtigt die CPU 52 den Benutzer darüber. Gemäß dieser Konfiguration kann der Benutzer automatisch und intuitiv erkennen, dass es notwendig ist, beim Tragen des Werkstücks W durch den Roboter 12 zu helfen.
-
Wenn die CPU 52 ferner in Schritt S3 „JA” bestimmt, beginnt die CPU 52 nicht damit, das Werkstück W durch den Roboter 12 zu tragen, bis sie detektiert, dass der Arbeiter A das Werkstück W trägt (d. h. in Schritt S5 wird „JA” bestimmt). Gemäß dieser Konfiguration ist es möglich, zuverlässig zu verhindern, dass eine Last, die das zulässige Gewicht überschreitet, auf den Roboter 12 ausgeübt wird.
-
Als Nächstes wird mit Bezug auf 11 bis 14 eine andere Ausführungsform eines Betätigungsablaufs des Robotersystems 10 beschrieben. Es sei zu beachten, dass bei dem in 11 gezeigten Ablauf den Schritten, die ähnlich wie die in der zuvor beschriebenen 3 sind, die gleichen Bezugszeichen zugewiesen sind und ihre ausführliche Beschreibung entfällt.
-
Wenn die CPU 52 bei dieser Ausführungsform detektiert, dass der Arbeiter A das Werkstück W trägt (d. h. in Schritt S5 wird „JA” bestimmt), steuert die CPU 52 den Roboter 12, damit er das Werkstück W in einer Richtung der Kraft trägt, die von dem Arbeiter A auf das Werkstück W ausgeübt wird.
-
Insbesondere wenn in Schritt S5 „JA” bestimmt wurde, führt die CPU 52 die folgenden Schritte S21 und S25 parallel aus.
-
In Schritt S21 bestimmt die CPU 52, ob die Kraftkomponente Fg der zuletzt erfassten Kraft F größer oder gleich einem vorbestimmten Schwellenwert δ ist. Der Schwellenwert δ wird durch den Benutzer vorbestimmt, um kleiner als der zuvor beschriebene Schwellenwert α zu sein (d. h. α > δ), und wird im Speicher 54 abgelegt.
-
Wenn die Kraftkomponente Fg größer oder gleich dem Schwellenwert δ ist, bestimmt die CPU 52 „JA” und fährt mit Schritt S22 fort. Wenn die Kraftkomponente Fg dagegen kleiner als der Schwellenwert δ ist, bestimmt die CPU 52 „NEIN” und fährt mit Schritt S23 fort.
-
12 zeigt ein Beispiel einer Änderungscharakteristik der Kraftkomponente Fg im Verlauf der Zeit, wenn in Schritt S21 „JA” bestimmt wird. Bei diesem Beispiel unterstützt der Arbeiter A zu einem Zeitpunkt t1 das Werkstück W von unten, wodurch die Kraftkomponente Fg zu diesem Zeitpunkt t1 abnimmt.
-
Dann senkt der Arbeiter A zu einem Zeitpunkt t2 ein wenig seine Hände, die das Werkstück W in Schwerkraftrichtung abstützen, um die Kraft zum Abstützen des Werkstücks W von unten zu reduzieren. Dadurch nimmt die Kraftkomponente Fg von dem Zeitpunkt t2 an stark zu, und fällt anschließend in einen Bereich zwischen den Schwellenwerten δ und α.
-
Die CPU 52 detektiert eine derartige Betätigung des Absenkens des Werkstücks W durch den Arbeiter A (d. h. die Zunahme der Kraftkomponente Fg) und bewegt das Werkstück W durch den Roboter 12 in Schwerkraftrichtung, um der Absenkbetätigung durch den Arbeiter A zu folgen, in dem folgenden Schritt S22.
-
In Schritt S22 betätigt die CPU 52 den Roboter 12, um das Werkstück W in Schwerkraftrichtung zu bewegen. Insbesondere generiert die CPU 52 einen Betätigungsbefehl zum Tragen des Werkstücks W in Schwerkraftrichtung.
-
Die CPU 52 sendet den generierten Betätigungsbefehl an die Servomotoren 32, die in den Roboter 12 eingebaut sind. Dadurch bewegt der Roboter 12 das Werkstück W in Schwerkraftrichtung, um der Betätigung zum Absenken des Werkstücks W durch den Arbeiter A zu folgen.
-
Wenn dagegen in Schritt S21 „NEIN” bestimmt wird, bestimmt die CPU 52 in Schritt S23, ob die Kraftkomponente Fg der zuletzt erfassten Kraft F in einem Bereich zwischen dem zuvor beschriebenen Schwellenwert β und einem Schwellenwert ε liegt (d. h. ε ≥ Fg ≥ β). Der Schwellenwert ε wird durch den Benutzer vorbestimmt, um kleiner als der Schwellenwert α und größer als der Schwellenwert β (d. h. α > ε > β) zu sein, und wird in dem Speicher 54 abgelegt.
-
Wenn die Kraftkomponente Fg in dem Bereich zwischen dem Schwellenwert β und dem Schwellenwert ε liegt, bestimmt die CPU 52 „JA” und fährt mit Schritt S24 fort. Wenn die Kraftkomponente Fg dagegen außerhalb des Bereichs zwischen dem Schwellenwert β und dem Schwellenwert ε liegt (d. h. Fg > ε oder β > Fg), bestimmt die CPU 52 „NEIN” und fährt mit Schritt S7 fort.
-
13 zeigt ein Beispiel einer Änderungscharakteristik der Kraftkomponente Fg im Verlauf der Zeit, wenn in Schritt „JA” bestimmt wird. Bei diesem Beispiel stützt der Arbeiter A zu dem Zeitpunkt t1 das Werkstück W von unten ab, wodurch sich die Kraftkomponente Fg zu diesem Zeitpunkt t1 reduziert.
-
Dann hebt der Arbeiter A zu einem Zeitpunkt t3 das Werkstück W in einer senkrechten Richtung entgegen der Schwerkraftrichtung nach oben durch eine gewisse Kraft an, während er das Werkstück W von unten abstützt. Durch diese Betätigung nimmt die Kraftkomponente Fg in Schwerkraftrichtung der Kraft F, die durch den Kraftdetektionsteil 22 detektiert wird, von dem Zeitpunkt t3 an stark ab, und fällt anschließend in einen Bereich zwischen dem Schwellenwert β und dem Schwellenwert ε.
-
Die CPU 52 detektiert eine derartige Betätigung zum Anheben des Werkstücks W durch den Arbeiter A (d. h. die Abnahme der Kraftkomponente Fg) und bewegt das Werkstück W durch den Roboter 12 in der senkrechten Richtung nach oben, um der Hebebetätigung durch den Arbeiter A in dem folgenden Schritt S24 zu folgen.
-
In Schritt S24 betätigt die CPU 52 den Roboter 12, um das Werkstück W in der senkrechten Richtung nach oben zu bewegen. Insbesondere generiert die CPU 52 einen Betätigungsbefehl zum Bewegen des Werkstücks W in der senkrechten Richtung nach oben.
-
Die CPU 52 sendet den generierten Betätigungsbefehl an die Servomotoren 32, die in den Roboter 12 eingebaut sind. Dadurch bewegt der Roboter 12 das Werkstück W in der senkrechten Richtung nach oben, um der Betätigung des Anhebens des Werkstücks W durch den Arbeiter A zu folgen.
-
In Schritt S25 bestimmt die CPU 52, ob die Kraftkomponente Fh in der waagerechten Richtung der zuletzt erfassten Kraft F größer oder gleich einem vorbestimmten Schwellenwert ζ ist. Insbesondere berechnet die CPU 52 die Kraftkomponente Fh in der waagerechten Richtung aus der zuletzt erfassten Kraft F und bestimmt, ob die berechnete Kraftkomponente Fh größer oder gleich dem Schwellenwert ζ ist. Der Schwellenwert ζ wird vom Benutzer vorbestimmt und im Speicher 54 abgelegt.
-
Wenn die Kraftkomponente Fh größer oder gleich dem Schwellenwert ζ ist, bestimmt die CPU 52 „JA” und fährt mit Schritt S26 fort. Wenn die Kraftkomponente Fh dagegen kleiner als der Schwellenwert ζ ist, bestimmt die CPU 52 „NEIN” und fährt mit Schritt S7 fort.
-
14 zeigt ein Beispiel einer Änderungscharakteristik der Kraftkomponente Fh im Verlauf der Zeit, wenn in Schritt S25 „JA” bestimmt wird. Bei diesem Beispiel schiebt der Arbeiter A zu einem Zeitpunkt t4 das Werkstück W in einer Richtung, die sich mit der Schwerkraftrichtung schneidet (z. B. der waagerechten Richtung), während er das Werkstück W abstützt, und dadurch nimmt die Kraftkomponente Fh zu diesem Zeitpunkt t4 stark zu.
-
Bei dieser Ausführungsform detektiert die CPU 52 eine derartige Betätigung durch den Arbeiter A (d. h. die Zunahme der Kraftkomponente Fh) und bewegt das Werkstück W durch den Roboter 12 in der waagerechten Richtung, um der Betätigung des Arbeiters in dem folgenden Schritt S26 zu folgen.
-
In Schritt S26 betätigt die CPU 52 den Roboter 12, um das Werkstück W in der waagerechten Richtung zu bewegen. Insbesondere generiert die CPU 52 einen Betätigungsbefehl zum Bewegen des Werkstücks W in einer Richtung der Kraftkomponente Fh, die in Schritt S25 berechnet wurde.
-
Die CPU 52 sendet den generierten Betätigungsbefehl an die Servomotoren 32, die in den Roboter 12 eingebaut sind. Dadurch bewegt der Roboter 12 das Werkstück W in die Richtung der Kraftkomponente Fh, um der Betätigung des Arbeiters, der das Werkstück W schiebt, zu folgen.
-
Wie zuvor beschrieben, führt die CPU 52 die Schritte S21 bis S24 und die Schritte S25 und 26 parallel aus. Falls die Schritte S22 und S26 gleichzeitig ausgeführt werden, generiert die CPU 52 den Betätigungsbefehl in Schwerkraftrichtung und den Betätigungsbefehl in Richtung der Kraftkomponente Fh und sendet sie an die Servomotoren 32.
-
In diesem Fall werden die Betätigung des Bewegens des Werkstücks W in Schwerkraftrichtung und die Betätigung des Bewegens des Werkstücks W in Richtung der Kraftkomponente Fh kombiniert, und der Roboter 12 kann das Werkstück W in einer Richtung der Kraft bewegen, die von dem Arbeiter A auf das Werkstück W ausgeübt wird.
-
Wenn bei dieser Ausführungsform die Kraftkomponente Fg kleiner oder gleich dem Schwellenwert α ist, generiert die CPU 52 einen Betätigungsbefehl zum Tragen des Werkstücks W basierend auf einer Größe und einer Richtung der Kraft F, die von dem Krafterfassungsteil 56 erfasst wurde, und sendet den Betätigungsbefehl an den Roboter 12.
-
Gemäß dieser Konfiguration kann der Arbeiter A das Werkstück W in Zusammenarbeit mit dem Roboter 12 in einer gewünschten Richtung tragen, wobei verhindert wird, dass eine Last, die das zulässige Gewicht überschreitet, auf den Roboter 12 ausgeübt wird. Entsprechend ist es möglich, das Werkstück W problemlos zu tragen.
-
Es sei zu beachten, dass in dem zuvor beschriebenen Schritt S26 die CPU 52 eine Geschwindigkeit zum Tragen des Werkstücks W durch den Roboter 12 als Reaktion auf eine Größe der Kraftkomponente Fh steuern kann. Beispielsweise kann die CPU 52 den Betätigungsbefehl für den Roboter 12 generieren, um das Werkstück W mit einer Geschwindigkeit zu bewegen, die zu der Größe der Kraftkomponente Fh proportional ist.
-
Ferner kann die CPU 52 in den zuvor beschriebenen Schritten S21, S23 und S25 einen Änderungsgrad der Kraftkomponenten Fg und Fh im Verhältnis zur Zeit berechnen (z. B. eine Steigung = δF/δt) und den berechneten Änderungsgrad mit einem Schwellenwert vergleichen, der für den Änderungsgrad eingestellt ist.
-
Beispielsweise kann die CPU 52 Schritt S22 ausführen, wenn sie die Steigung der Kraftkomponente Fg zu dem Zeitpunkt t2 detektiert, wie in 12 gezeigt. Ferner kann die CPU 52 Schritt S24 ausführen, wenn sie sie eine Abnahme der Steigung der Kraftkomponente Fg zu dem Zeitpunkt t3 detektiert, wie in 13 gezeigt.
-
Ferner kann bei dem in 11 gezeigten Ablauf eine Notstoppmethode durch die Schritte S9 und S10, die in 3 gezeigt werden, eingeführt werden. In diesem Fall kann die CPU 52 den Roboter 12 stoppen, wenn der Änderungsgrad der Kraftkomponente Fg oder Fh im Verhältnis zur Zeit einen vorbestimmten Schwellenwert überschreitet, d. h. wenn die Kraftkomponente Fg oder Fh anormal zunimmt oder abnimmt.
-
Der Kraftdetektionsteil 22 an einem beliebigen Abschnitt des Roboters 12 montiert sein, wie etwa der Drehtrommel 16, dem Roboterarm 18 oder der Roboterhand 20.
-
Obwohl die Erfindung zuvor anhand der Ausführungsformen beschrieben wurde, beschränken die zuvor beschriebenen Ausführungsformen die zuvor beschriebene Erfindung nicht auf den Umfang der Ansprüche. Ferner können Ausführungsformen, bei denen die Merkmale, die bei den Ausführungsformen der Erfindung beschrieben werden, kombiniert werden, im technischen Umfang der Erfindung enthalten sein, doch alle Kombinationen der Merkmale sind nicht immer für die Mittel zur Lösung gemäß der Erfindung wesentlich. Ferner ist es für den Fachmann offensichtlich, dass die bereits beschriebenen Ausführungsformen auf verschiedene Art und Weise geändert oder verbessert werden können.
-
Ferner sei zu beachten, dass die Ausführungsreihenfolge jeder Verarbeitung der Betätigungen, Vorgehensweisen, Schritte, Vorgänge, Phasen und dergleichen in dem Gerät, dem System, dem Programm und dem Verfahren, die im Umfang der Ansprüche, der Beschreibung und der Zeichnungen beschrieben werden, nicht speziell und ausdrücklich als „bevor”, „vorhergehend” und dergleichen beschrieben wird und in einer beliebigen Reihenfolge ausgeführt werden kann, solange eine Ausgabe einer früheren Verarbeitung nicht in einer späteren Verarbeitung verwendet wird. Bezüglich des Umfangs der Ansprüche, der Beschreibung und der Betätigungsabläufe in den Zeichnungen, wenn Begriffe wie „erster”, „nächster”, „dann”, „anschließend” oder dergleichen in der Beschreibung aus praktischen Gründen verwendet werden, bedeutet dies nicht, dass die Umsetzung in dieser Reihenfolge wesentlich ist.
-
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 2000-176872 [0002]
- JP 2000-343470 [0002]
- JP 4445038 [0002]