-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft eine Steuervorrichtung zum Begrenzen einer Geschwindigkeit eines Roboters.
-
Allgemeiner Stand der Technik
-
In der herkömmlichen Technik war eine Robotervorrichtung bekannt, bei der ein Bediener mit einem Roboter zusammenarbeitet. Beispielsweise ist es bekannt, dass der Bediener zusammen mit der Robotervorrichtung ein schweres Objekt transportiert. Manchmal kommt der Bediener mit dem Roboter in Kontakt, da der Bediener eine Betätigung innerhalb eines Bereichs ausführt, in dem der Roboter funktioniert. Somit kann die Steuervorrichtung des Roboters über eine Funktion verfügen, um den Bediener zu schützen, wenn der Bediener mit dem Roboter arbeitet.
-
Der Roboter kann mit einem Detektor versehen sein, um eine externe Kraft zu detektieren, die durch den Bediener ausgeübt wird. Die Steuervorrichtung des Roboters kann bestimmen, dass der Roboter mit dem Bediener in Kontakt kommt, wenn die externe Kraft detektiert wird. Dann kann die Steuervorrichtung eine Steuerung ausführen, um den Roboter anzuhalten (z.B.
japanisches Patent Nr. 6140114 und
japanisches Patent Nr. 5902664 ).
-
Wenn der Roboter funktioniert, kann der Roboter ferner andere Objekte stören. In der herkömmlichen Technik ist eine Steuerung bekannt, die einen Roboter daran hindert, andere Roboter zu stören oder andere Vorrichtungen zu stören (z.B.
japanische Patent-Offenlegungsschrift Nr. 2010-52116A und
japanische Patent-Offenlegungsschrift Nr. 2017-94430A ). Außerdem ist eine Steuerung bekannt, um eine Störung zwischen einem Arm des Roboters und einem Betriebswerkzeug zu verhindern (z.B.
japanisches Patent Nr. 3902310 und
japanisches Patent Nr. 3357392 ).
-
KURZDARSTELLUNG DER ERFINDUNG
-
Bei einem Roboter, der in Zusammenarbeit mit einem Bediener funktioniert, verfügt der Roboter über eine Funktion, um den Roboter anzuhalten, wenn der Roboter mit dem Bediener in Kontakt kommt. Ferner war als eine Sicherheitsfunktion eines Roboters eine Funktion zum Anhalten des Roboters bekannt, wenn bestimmt wird, dass ein Element, das in einer Robotervorrichtung enthalten ist, mit einem Objekt in Kontakt kommt, das an dem Boden befestigt ist, auf dem die Robotervorrichtung installiert ist. Durch das Übernehmen dieser Sicherheitsfunktion ist es möglich, eine Zerstörung der Elemente, die den Roboter bilden, des Betriebswerkzeugs oder des Objekts, das am Boden befestigt ist, zu verhindern. Die Robotersteuervorrichtung kann den Roboter anhalten, wenn der Abstand zwischen den Objekten kleiner als 0 oder ein Wert, der durch Addieren eines Spielraums zu 0 erzielt wird, ist.
-
In dieser Hinsicht ändern sich die Position und Ausrichtung des Roboters, wenn der Bediener und der Roboter in dem gleichen Arbeitsbereich arbeiten. Der Bediener kann beispielsweise zwischen dem Arm des Roboters und einem Arbeitstisch, der um den Roboter herum angeordnet ist, eingeklemmt werden. Die Steuervorrichtung hält den Roboter an, wenn eine externe Kraft detektiert wird. Auf Grund der Trägheit funktioniert der Roboter jedoch, bis der Roboter vollständig anhält, nachdem ein Befehl zum Anhalten des Roboters erteilt wurde. Wenn beispielsweise ein Haltebefehl erteilt wird, während sich die Richtung des Arms ändert, hält der Arm nicht sofort an. Der Arm hält auf Grund der Trägheit an, nachdem er sich um einen vorbestimmten Abstand bewegt hat.
-
Wenn der Bediener durch die Komponente der Robotervorrichtung eingeklemmt wird, wird während der Periode, in welcher der Roboter ausläuft, nachdem ein Roboterhaltebefehl erteilt wurde, weiter Druck auf den Bediener ausgeübt. Da der Roboter ferner durch die Trägheit weiter funktioniert, verringert sich der Platz, in dem der Bediener festsitzt. Folglich besteht das Problem, dass der Bediener stärker eingeklemmt wird, während der Roboter durch die Trägheit weiter funktioniert.
-
Eine Ausführungsform der vorliegenden Offenbarung ist eine Steuervorrichtung zum Steuern einer Betriebsgeschwindigkeit eines Roboters. Die Steuervorrichtung umfasst eine Haltebefehlseinheit zum Anhalten des Betriebs des Roboters, wenn eine Person mit dem Roboter in Kontakt kommt. Die Steuervorrichtung umfasst eine Geschwindigkeitsbegrenzungseinheit zum Begrenzen der Betriebsgeschwindigkeit des Roboters, und eine Speichereinheit zum Speichern von Informationen bezüglich der Steuerung des Roboters. Ein Abstandbestimmungswert bezüglich eines Unfalls, der durch das Einklemmen einer Person zwischen zwei Objekten unter einer Komponente des Roboters, einem Betriebswerkzeug, das an dem Roboter angebracht ist, und einem Objekt, das um den Roboter herum angeordnet ist, verursacht wird, wird vorbestimmt und in der Speichereinheit gespeichert. Die Geschwindigkeitsbegrenzungseinheit umfasst eine Modellgenerierungseinheit zum Generieren von dreidimensionalen Modellen von mindestens zweien von der Komponente des Roboters, des Betriebswerkzeugs und des Objekts, das um den Roboter herum angeordnet ist. Die Geschwindigkeitsbegrenzungseinheit umfasst eine Abstandsberechnungseinheit zum Berechnen des kürzesten Abstands zwischen den Modellen der beiden Objekte in dem dreidimensionalen Modell, und eine Bestimmungseinheit zum Bestimmen, ob der kürzeste Abstand kleiner als der Abstandbestimmungswert ist oder nicht. Wenn der kürzeste Abstand kleiner als der Abstandbestimmungswert ist, steuert die Geschwindigkeitsbegrenzungseinheit die Betriebsgeschwindigkeit des Roboters, so dass die Betriebsgeschwindigkeit gleich oder niedriger als eine vorbestimmte Grenzgeschwindigkeit ist.
-
Figurenliste
-
Es zeigen:
- 1 eine perspektivische Ansicht einer Robotervorrichtung in einer Ausführungsform.
- 2 ein Blockdiagramm der Robotervorrichtung in der Ausführungsform.
- 3 eine erste Seitenansicht eines Modells der Robotervorrichtung in der Ausführungsform.
- 4 eine zweite Seitenansicht eines Modells der Robotervorrichtung in der Ausführungsform.
- 5 eine dritte Seitenansicht eines Modells der Robotervorrichtung in der Ausführungsform.
- 6 eine vierte Seitenansicht eines Modells der Robotervorrichtung in der Ausführungsform.
- 7 eine fünfte Seitenansicht eines Modells der Robotervorrichtung in der Ausführungsform.
- 8 ein Ablaufschema einer Steuerung der Steuervorrichtung des Roboters in der Ausführungsform.
- 9 eine Seitenansicht eines anderen Modells des Roboters in der Ausführungsform.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Mit Bezug auf 1 bis 9 wird eine Steuervorrichtung eines Roboters in einer Ausführungsform beschrieben. Die Robotervorrichtung der vorliegenden Ausführungsform umfasst den Roboter, der in der Lage ist, eine Betätigung in Zusammenarbeit mit einem Bediener auszuführen. Der Roboter, der in der Lage ist, in Zusammenarbeit mit dem Bediener zu funktionieren, wird als kooperativer Roboter bezeichnet.
-
1 ist eine perspektivische Ansicht der Robotervorrichtung der vorliegenden Ausführungsform. Die Robotervorrichtung 5 umfasst einen Roboter 1 und eine Hand 2, die an dem Roboter 1 angebracht ist. Die Robotervorrichtung 5 umfasst eine Steuervorrichtung 4 zum Steuern des Roboters 1 und der Hand 2. Ein Arbeitstisch 8, auf den ein Werkstück 61 gelegt wird, ist innerhalb des Bewegungsbereichs des Roboters 1 angeordnet. Der Roboter 1 der vorliegenden Ausführungsform ist ein Knickarmroboter, der eine Mehrzahl von Gelenkabschnitten umfasst. Bei dem Knickarmroboter ändert sich die Richtung eines Arms, eines Handgelenks und dergleichen in jedem Gelenkabschnitt.
-
Die Hand 2 ist ein Betriebswerkzeug zum Ergreifen und Loslassen des Werkstücks 61. Das Betriebswerkzeug wird auch als Endeffektor bezeichnet. Die Hand 2 ist an dem Handgelenk 15 des Roboters 1 befestigt. Die Hand 2 der vorliegenden Ausführungsform ist derart gebildet, dass eine Sperrklinke 3 geöffnet und geschlossen wird. Das Betriebswerkzeug ist nicht auf die Hand 2 eingeschränkt, und es kann eine beliebige Vorrichtung gemäß der Betätigung, die durch die Robotervorrichtung 5 ausgeführt wird, übernommen werden. Beispielsweise kann ein Betriebswerkzeug zum Schweißen oder ein Betriebswerkzeug zum Lackieren usw. übernommen werden.
-
Der Roboter 1 der vorliegenden Ausführungsform weist eine Mehrzahl von Antriebsachsen zum Antreiben der Komponenten des Roboters 1 auf. Die Antriebsachsen des Roboters 1 umfassen die Drehachsen 81 bis 86, d.h. eine Drehachse 81 als eine erste Achse (Achse J1) bis zu einer Drehachse 86 als eine sechste Achse (Achse J6). Bei dem Roboter 1 ändern sich die Position und Ausrichtung basierend auf einer Mehrzahl von Antriebsachsen, d.h. von der Achse J1 bis zu der Achse J6.
-
Der Roboter 1 umfasst einen Sockel 14, der als Sockel dient, und eine Drehplatte 13, die von dem Sockel 14 getragen wird. Die Drehplatte 13 ist derart gebildet, dass sie im Verhältnis zum Sockel 14 drehbar ist. Der Roboter 1 der vorliegenden Ausführungsform umfasst eine Mehrzahl von Armen. Der Roboter 1 umfasst einen Oberarm 11 und einen Unterarm 12. Die Unterarm 12 wird von der Drehplatte 13 getragen. Der Unterarm 12 ist derart gebildet, dass er im Verhältnis zu der Drehplatte 13 drehbar ist. Der Oberarm 11 wird von dem Unterarm 12 getragen. Der Oberarm 11 ist derart gebildet, dass er im Verhältnis zum Unterarm 12 drehbar ist.
-
Der Roboter 1 umfasst ein Handgelenk 15, das mit einem Ende des Oberarms 11 gekoppelt ist. Das Handgelenk 15 umfasst einen Flansch 16 zum Befestigen der Hand 2. Das Handgelenk 15 ist derart gebildet, dass es den Flansch 16 um die Drehachse 85 herum dreht. Ferner ist der Flansch 16 derart gebildet, dass er sich um die Drehachse 86 herum dreht.
-
2 ist ein Blockdiagramm der Robotervorrichtung in der vorliegenden Ausführungsform. Mit Bezug auf 1 und 2 umfasst der Roboter 1 eine Roboterantriebsvorrichtung zum Ändern der Position und Ausrichtung des Roboters 1. Die Roboterantriebsvorrichtung treibt die Komponenten des Roboters 1 an. Die Komponenten, die von der Roboterantriebsvorrichtung angetrieben werden, umfassen den Oberarm 11, den Unterarm 12, die Drehplatte 13, das Handgelenk 15 und den Flansch 16 des Handgelenks 15. Die Roboterantriebsvorrichtung umfasst einen Roboterantriebsmotor 22 zum Antreiben der Komponenten des Roboters 1. In der vorliegenden Ausführungsform ist ein einziger Roboterantriebsmotor 22 angeordnet, um einer einzigen Antriebsachse zu entsprechen. Die Hand 2 umfasst eine Handantriebsvorrichtung zum Antreiben der Hand 2. Die Handantriebsvorrichtung umfasst einen Handantriebsmotor 21 zum Antreiben der Sperrklinke 3 der Hand 2.
-
Die Robotervorrichtung 5 der vorliegenden Ausführungsform transportiert ein Werkstück 61 basierend auf einem Bewegungsprogramm 41. Der Roboter 1 kann das Werkstück 61 basierend auf dem Bewegungsprogramm 41 automatisch von einer Anfangsposition zu einer Zielposition transportieren.
-
Die Robotersteuervorrichtung 4 umfasst eine arithmetische Verarbeitungsvorrichtung (Computer), die eine CPU (Zentraleinheit) und einen RAM (Arbeitsspeicher) und einen ROM (Festspeicher) usw., die über einen Bus mit der CPU verbunden sind, aufweist. Die Steuervorrichtung 4 umfasst eine Speichereinheit 42 zum Speichern von Informationen bezüglich der Steuerung des Roboters 1. Das Bewegungsprogramm 41, das zuvor erstellt wurde, um den Roboter 1 zu betätigen, wird in die Steuervorrichtung 4 eingegeben. Das Bewegungsprogramm 41 wird in der Speichereinheit gespeichert 42.
-
Eine Bewegungssteuereinheit 43 sendet einen Bewegungsbefehl zum Antreiben des Roboters 1 an eine Roboterantriebseinheit 45 basierend auf dem Bewegungsprogramm 41. Die Roboterantriebseinheit 45 umfasst eine elektrische Schaltung zum Antreiben des Roboterantriebsmotors 22. Die Roboterantriebseinheit 45 versorgt den Roboterantriebsmotor 22 basierend auf dem Bewegungsbefehl mit Strom. Der Roboterantriebsmotor 22 wird angetrieben, um die Position und Ausrichtung des Roboters 1 zu ändern.
-
Ferner sendet die Bewegungssteuereinheit 43 einen Bewegungsbefehl zum Antreiben der Hand 2 an eine Handantriebseinheit 44 basierend auf dem Bewegungsprogramm 41. Die Handantriebseinheit 44 umfasst eine elektrische Schaltung zum Antreiben des Handantriebsmotors 21. Die Handantriebseinheit 44 versorgt den Handantriebsmotor 21 basierend auf dem Bewegungsbefehl mit Strom. Der Handantriebsmotor 21 ist angetrieben, um die Sperrklinke 3 der Hand 2 anzutreiben. Die Hand 2 kann das Werkstück 61 ergreifen oder loslassen.
-
Der Roboter 1 umfasst einen Zustandsdetektor zum Detektieren der Position und Ausrichtung des Roboters 1. Der Zustandsdetektor der vorliegenden Ausführungsform umfasst einen Positionsdetektor 18, der an dem Roboterantriebsmotor 22 angebracht ist, der jeder Antriebsachse entspricht. Die Ausgabe des Positionsdetektors 18 ermöglicht die Berechnung der Position und Ausrichtung jeder Komponente in der entsprechenden Antriebsachse. Beispielsweise detektiert der Positionsdetektor 18 einen Drehwinkel, wenn der Roboterantriebsmotor 22 angetrieben wird. Ferner kann der Positionsdetektor 18 die Drehzahl des Roboterantriebsmotors 22 basierend auf dem Drehwinkel des Roboterantriebsmotors 22 berechnen.
-
Der Roboter 1 der vorliegenden Ausführungsform arbeitet mit dem Bediener zusammen, um eine Betätigung auszuführen. Die Steuervorrichtung 4 ist gebildet, um den Roboter 1 anzuhalten, wenn eine Person, wie etwa der Bediener, mit dem Roboter 1 in Kontakt kommt. Der Roboter 1 der vorliegenden Ausführungsform umfasst einen Kraftdetektor 19, um eine Kraft zu detektieren, die auf den Sockel 14 einwirkt. Der Kraftdetektor 19 ist an einem Boden 63 befestigt. Der Sockel 14 wird von dem Kraftdetektor 19 getragen. Die Kraft, die auf den Sockel 14 einwirkt, entspricht der Kraft, die auf den Roboter 1 einwirkt. Der Kraftdetektor 19 gibt ein Signal aus, das der Kraft entspricht, die von dem Bediener auf den Roboter 1 ausgeübt wird.
-
Als Kraftdetektor 19 kann ein beliebiger Detektor übernommen werden, der in der Lage ist, die Größe der Kraft, die auf den Roboter 1 einwirkt, und die Richtung der Kraft zu detektieren. Der Kraftdetektor 19 der vorliegenden Ausführungsform umfasst ein metallisches Grundmaterial, das mit dem Sockel 14 gekoppelt ist, und einen Dehnungssensor, der an der Oberfläche des Grundmaterials angebracht ist. Dann kann der Kraftdetektor 19 die Kraft, die auf den Roboter 1 einwirkt, basierend auf dem Verformungsbetrag, der durch den Dehnungssensor detektiert wird, berechnen.
-
Die Steuervorrichtung 4 umfasst eine Haltebefehlseinheit 47, um die Bewegung des Roboters 1 anzuhalten, wenn eine Person mit dem Roboter 1 in Kontakt kommt. Die Haltebefehlseinheit 47 hält den Roboter 1 an, wenn eine externe Kraft auf den Roboter 1 ausgeübt wird. Die Haltebefehlseinheit 47 sendet einen Befehl zum Anhalten des Roboters 1 an die Bewegungssteuereinheit 43. Die Haltebefehlseinheit 47 umfasst eine Einheit 48 zum Berechnen einer externen Kraft, um eine externe Kraft zu schätzen, die von außerhalb des Roboters 1 auf den Roboter 1 ausgeübt wird. Die Kraft, die durch den Kraftdetektor 19 detektiert wird, umfasst eine interne Kraft, die durch die Masse des Roboters 1 und die Bewegung des Roboters 1 erzeugt wird, und eine externe Kraft, die von außerhalb des Roboters 1 auf den Roboter 1 ausgeübt wird.
-
Die Einheit 48 zum Berechnen einer externen Kraft berechnet eine interne Kraft, die durch das Gewicht des Roboters 1 auf den Roboter 1 einwirkt, wenn der Roboter 1 in einem Zustand funktioniert, in dem keine Kraft von außerhalb des Roboters 1 ausgeübt wird. Die interne Kraft kann basierend auf der Position und Ausrichtung des Roboters 1, die durch die Ausgabe des Positionsdetektors 18 detektiert werden, der Masse der Komponenten des Roboters 1, wie etwa eines Arms, und der Masse der Hand 2 berechnet werden. Die Masse der Komponenten des Roboters 1 und die Masse der Hand 2 können zuvor in der Speichereinheit 42 gespeichert werden. Die Einheit 48 zum Berechnen einer externen Kraft berechnet eine externe Kraft durch Subtrahieren der internen Kraft von der Kraft, die durch den Kraftdetektor 19 detektiert wird. Die externe Kraft entspricht der Kraft, die durch den Bediener oder dergleichen auf den Roboter 1 ausgeübt wird.
-
Wenn die externe Kraft größer als ein vorbestimmter Bestimmungswert der externen Kraft ist, kann die Haltebefehlseinheit 47 bestimmen, dass die Person oder das Objekt mit dem Roboter 1 in Kontakt gekommen ist. Wenn die externe Kraft größer als der vorbestimmte Bestimmungswert ist, sendet die Haltebefehlseinheit 47 einen Befehl zum Anhalten des Roboters 1 an die Bewegungssteuereinheit 43. Die Bewegungssteuereinheit 43 hält die Bewegung des Roboters 1 an. Mit anderen Worten hält die Bewegungssteuereinheit 43 alle Roboterantriebsmotoren 22 und den Handantriebsmotor 21, die angetrieben werden, an. Somit hält der Roboter 1 der vorliegenden Ausführungsform automatisch an, wenn eine Person oder ein Objekt während der Periode, in welcher der Roboter 1 funktioniert, mit dem Roboter 1 in Kontakt kommt.
-
Die Steuervorrichtung 4 der vorliegenden Ausführungsform hält den Roboter 1 an, indem sie eine externe Kraft berechnet, die auf den Roboter 1 einwirkt, doch ist die Ausführungsform nicht darauf eingeschränkt. Die Steuervorrichtung kann einen Kontakt einer Person oder eines Objekts in einer beliebigen Konfiguration und mit einer beliebigen Steuerung detektieren. Beispielsweise kann ein Kontaktsensor auf der äußeren peripheren Oberfläche des Roboters angeordnet sein, um den Kontakt einer Person oder eines Objekts zu detektieren. Wenn der Kontaktsensor den Kontakt einer Person oder eines Objekts detektiert, kann die Steuervorrichtung den Roboter anhalten.
-
Bei der Robotervorrichtung 5 der vorliegenden Ausführungsform führt der Bediener eine Betätigung in der Nähe des Roboters 1 während der Periode, in welcher der Roboter 1 angetrieben wird, aus. Wenn der Roboter 1 angetrieben wird, kann eine Hand, ein Fuß usw. des Bedieners durch die Komponente der Robotervorrichtung 5 und ein Objekt, das um den Roboter 1 herum angeordnet ist, eingeklemmt werden.
-
Die Komponenten der Robotervorrichtung 5, durch die eine Person eingeklemmt werden kann, umfassen beliebige Elemente, welche die Robotervorrichtung 5 bilden. Beispielsweise sind der Kraftdetektor 19, der Sockel 14, die Drehplatte 13, der Unterarm 12, der Oberarm 11, das Handgelenk 15 und die Hand 2 enthalten. Als Objekte, die um den Roboter 1 herum angeordnet sind, können beliebige Elemente, durch die eine Person eingeklemmt werden kann, übernommen werden. Beispielsweise werden eine Werkzeugmaschine, eine Verarbeitungsmaschine, wie etwa eine Drehbank usw., ein Arbeitstisch 8, ein Förderband zum Befördern eines Werkstücks und eine Kiste, in die Werkstücke gelegt werden, die in der Nähe des Roboters angeordnet sind, oder eine Einzäunung, die um die Robotervorrichtung 5 herum gebildet ist, usw. gezeigt. Ferner umfassen bei der vorliegenden Ausführungsform die Objekte, die um den Roboter 1 herum angeordnet sind, den Boden 63, auf dem die Robotervorrichtung 5 installiert ist.
-
Die Steuervorrichtung 4 der vorliegenden Ausführungsform steuert die Betriebsgeschwindigkeit des Roboters 1, so dass die Betriebsgeschwindigkeit gleich oder niedriger als eine vorbestimmte Grenzgeschwindigkeit ist, wenn der Roboter 1 in eine Position und Ausrichtung versetzt wird, bei denen eine Person wahrscheinlich eingeklemmt wird. Die Steuervorrichtung 4 der vorliegenden Ausführungsform bestimmt den Abstand zwischen zwei Objekten basierend auf einem Modell einer Komponente oder dergleichen, welche die Robotervorrichtung 5 bildet.
-
Der Bediener gibt zuvor dreidimensionale Informationen 58 der Komponenten der Robotervorrichtung 5 und der Objekte, die um den Roboter 1 herum angeordnet sind, in die Steuervorrichtung 4 ein. Die dreidimensionalen Informationen 58 werden in der Speichereinheit 42 gespeichert. Als dreidimensionale Informationen 58 können beispielsweise dreidimensionale Daten verwendet werden, die durch eine CAD-(computergestützte Konstruktion) Vorrichtung generiert werden. Die dreidimensionalen Daten des Roboters 1 umfassen Formdaten der Komponenten des Roboters 1 und dergleichen. Es sei zu beachten, dass die dreidimensionalen Informationen 58 nicht auf dreidimensionale Daten eingeschränkt sind, und dass beliebige Daten, die ein dreidimensionales Modell generieren können, übernommen werden können. Beispielsweise können zweidimensionale Daten, die durch eine CAD-Vorrichtung gebildet werden, als dreidimensionale Informationen in die Steuervorrichtung 4 eingegeben werden, und ein dreidimensionales Modell kann in der Steuervorrichtung 4 erstellt werden.
-
Die Steuervorrichtung 4 umfasst eine Geschwindigkeitsbegrenzungseinheit 51 zum Begrenzen der Betriebsgeschwindigkeit des Roboters 1. Die Geschwindigkeitsbegrenzungseinheit 51 umfasst eine Modellgenerierungseinheit 52 zum Generieren von dreidimensionalen Modellen von mindestens zwei Objekten unter den Komponenten des Roboters 1, der Hand 2 und den Objekten, die um den Roboter 1 herum angeordnet sind. Die Modellgenerierungseinheit 52 generiert ein dreidimensionales Modell jedes Objekts basierend auf den dreidimensionalen Informationen 58.
-
3 ist eine erste Seitenansicht eines Modells der Robotervorrichtung der vorliegenden Ausführungsform. 3 zeigt ein Modell der Robotervorrichtung 5 und ein Modell 8a des Arbeitstischs 8 von der Seite gesehen. Mit Bezug auf 2 und 3 erfasst die Modellgenerierungseinheit 52 die Ausgabe des Positionsdetektors 18. Die Modellgenerierungseinheit 52 berechnet die aktuelle Position und Ausrichtung des Roboters 1 basierend auf der Ausgabe des Positionsdetektors 18. Die Modellgenerierungseinheit 52 generiert ein Modell 1a des Roboters 1 gemäß der aktuellen Position und Ausrichtung des Roboters 1. Die Modellgenerierungseinheit 52 ändert die Position und Ausrichtung des Modells 1a gemäß einer Änderung der tatsächlichen Position und Ausrichtung des Roboters 1.
-
Die Modellgenerierungseinheit 52 generiert ein dreidimensionales Modell, das jedem Objekt entspricht. Die Modellgenerierungseinheit 52 kann ein Modell bilden, so dass das Modell ein zu modellierendes Objekt abdeckt. Die Modellgenerierungseinheit 52 kann ein Modell bilden, so dass das Modell darin ein zu modellierendes Objekt umfasst. Zudem generiert bei dem in 3 gezeigten Beispiel die Modellgenerierungseinheit 52 ein Modell, so dass das Modell wie die Form des entsprechenden Objekts gebildet wird.
-
Das Modell 1a des Roboters 1 umfasst Modelle der Komponenten des Roboters 1. Die Modelle der Komponenten des Roboters 1 umfassen ein Modell 14a des Sockels 14 und des Kraftdetektors 19 und ein Modell 13a der Drehplatte 13. Die Modelle der Komponenten des Roboters 1 umfassen ein Modell 12a des Unterarms 12, ein Modell 11a des Oberarms 11 und ein Modell 15a des Handgelenks 15. Es sei zu beachten, dass bei der vorliegenden Ausführungsform der Sockel 14 und der Kraftdetektor 19 aneinander befestigt sind. Somit generiert die Modellgenerierungseinheit 52 das Modell 14a, das den Sockel 14 und den Kraftdetektor 19 umfasst.
-
Die Modelle 11a, 12a, 13a, 14a und 15a der Komponenten des Roboters 1 können derart gebildet sein, dass die Modelle die entsprechenden Komponenten abdecken. Jedes Modell 11a, 12a, 13a, 14a, 15a weist eine Form auf, die wie die Form des entsprechenden Objekts gebildet ist. Beispielsweise weist das Modell 12a eine Form auf, die der Form des Unterarms 12 des Roboters 1 entspricht. Ferner können die Komponenten des Roboters 1 lineare Körper, wie etwa elektrische Kabel, die in jeder Komponente angeordnet sind, Verbindungsstücke zur elektrischen Verbindung, Roboterantriebsmotoren usw. umfassen. Die Modellgenerierungseinheit 52 kann ein Modell der Komponente generieren, so dass das Modell alle diese Komponenten abdeckt.
-
Die Modellgenerierungseinheit 52 generiert ein Modell 2a der Hand 2. Das Modell des Betriebswerkzeugs kann gebildet sein, um das Betriebswerkzeug abzudecken. Das Modell 2a weist eine Form auf, die der Form der Hand 2 entspricht. Die Modellgenerierungseinheit 52 generiert ein Modell 8a des Arbeitstischs 8 als ein Modell des Objekts, das um den Roboter 1 herum angeordnet ist. Das Modell des Objekts, das um den Roboter 1 herum anzuordnen ist, kann gebildet sein, um das entsprechende Objekt abzudecken, das um den Roboter herum angeordnet ist. Das Modell 8a weist eine Form auf, die der Form des Arbeitstischs 8 entspricht. Die Modellgenerierungseinheit 52 bildet ein Modell 63a des Bodens 63 als ein Modell eines Objekts, das um den Roboter 1 herum angeordnet ist. Das Modell 63a kann durch ein plattenartiges Element, das sich in einem dreidimensionalen Raum erstreckt, oder durch eine Fläche, die der Fläche des Bodens entspricht, konfiguriert sein.
-
Es sei zu beachten, dass bei dem in 3 gezeigten Beispiel die Modellgenerierungseinheit 52 ein Modell 61a des Werkstücks 61 bildet, doch ist die Ausführungsform nicht darauf eingeschränkt. Es kann sein, dass das Modell 61a des Werkstücks 61 nicht gebildet wird. Als Nächstes wird ein Beispiel der Ausführungsform, bei der die Person eingeklemmt werden kann, aufgegriffen und erklärt.
-
4 ist eine zweite Seitenansicht des Modells der Robotervorrichtung in der vorliegenden Ausführungsform. Der Bediener kann zwischen der Komponente der Robotervorrichtung 5 und dem Objekt, das um den Roboter 1 herum vorhanden ist, in Abhängigkeit von der Position und Ausrichtung des Roboters 1 eingeklemmt werden. 4 zeigt ein Beispiel, bei dem der Bediener zwischen der Komponente des Roboters 1 und dem Arbeitstisch 8, der um den Roboter 1 herum angeordnet ist, eingeklemmt ist. In einem Bereich 71 ist der Abstand zwischen dem Handgelenk 15 des Roboters 1 und dem Arbeitstisch 8 gering. Es besteht das Risiko, dass der Bediener zwischen dem Handgelenk 15 und dem Arbeitstisch 8 eingeklemmt wird.
-
Mit Bezug auf 2 und 4 umfasst die Geschwindigkeitsbegrenzungseinheit 51 eine Abstandsberechnungseinheit 53 zum Berechnen des kürzesten Abstands zwischen den beiden Komponenten unter der Komponente des Roboters 1, der Hand 2 und dem Objekt, das um den Roboter 1 herum angeordnet ist, in dem dreidimensionalen Modell. Bei dem in 4 gezeigten Beispiel berechnet die Abstandsberechnungseinheit 53 den kürzesten Abstand zwischen dem Modell jeder Komponente des Roboters und dem Modell jedes Objekts, das um den Roboter herum angeordnet ist. Die Abstandsberechnungseinheit 53 berechnet einen kürzesten Abstand DL zwischen dem Handgelenk 15 und dem Arbeitstisch 8.
-
Die Abstandsberechnungseinheit 53 kann den kürzesten Abstand DL mit einer beliebigen Steuerung berechnen. Beispielsweise können zwei nebeneinanderliegende Objekte gemäß der Position und Ausrichtung des Roboters 1 vorbestimmt werden. Alternativ können zwei Objekte zum Bestimmen des Abstands vorbestimmt werden. Die Abstandsberechnungseinheit 53 kann Messpunkte in vorbestimmten Intervallen an der Oberfläche des Objekts anordnen, für die der Abstand dazwischen bestimmt wird. Die Abstandsberechnungseinheit 53 berechnet den Abstand zwischen den Messpunkten für alle Kombinationen der Messpunkte. Dann kann die Abstandsberechnungseinheit 53 den Mindestabstand als den kürzesten Abstand DL einstellen.
-
Die Geschwindigkeitsbegrenzungseinheit 51 umfasst eine Bestimmungseinheit 54 zum Bestimmen, ob der kürzeste Abstand DL kleiner als ein Abstandbestimmungswert ist oder nicht. Die Abstandbestimmungswerte bezüglich eines Unfalls, der durch das Einklemmen einer Person zwischen zwei Objekten unter den Komponenten des Roboters, dem Betriebswerkzeug und den Objekten, die um den Roboter herum angeordnet sind, verursacht wird, werden vorbestimmt. Bei der vorliegenden Ausführungsform werden die Abstände zwischen den Modellen, die den Unfall durch Einklemmen des Bedieners verursachen können, als Abstandsbestimmungswerte vorbestimmt. Die Abstandbestimmungswerte werden in der Speichereinheit 42 gespeichert. Bei diesem Beispiel wird ein Abstandbestimmungswert für das Modell 15a des Handgelenks 15 und das Modell 8a des Arbeitstischs 8 vorbestimmt.
-
Die Bestimmungseinheit 54 bestimmt, ob der aktuelle kürzeste Abstand DL kleiner als der Abstandbestimmungswert ist oder nicht. Wenn der kürzeste Abstand DL kleiner als der Abstandbestimmungswert ist, sendet die Geschwindigkeitsbegrenzungseinheit 51 einen Befehl, der die Betriebsgeschwindigkeit des Roboters 1 auf eine Geschwindigkeit, die gleich oder niedriger als die vorbestimmte Grenzgeschwindigkeit ist, einstellt, an die Bewegungssteuereinheit 43. Die Betriebsgeschwindigkeit des Roboters 1 entspricht der Antriebsgeschwindigkeit an jeder Antriebsachse. Beispielsweise ist die Betriebsgeschwindigkeit des Roboters 1 eine Geschwindigkeit, mit der sich der Werkzeugmittelpunkt bewegt. Die Bewegungssteuereinheit 43 reduziert die Antriebsgeschwindigkeiten in allen Antriebsachsen, die gerade angetrieben werden. Beispielsweise kann die Bewegungssteuereinheit 43 den Roboterantriebsmotor 22 derart steuern, dass die Bewegungsgeschwindigkeit des Werkzeugmittelpunkts reduziert wird, während die Bewegungsbahn des Werkzeugmittelpunkts bewahrt wird. Wenn die aktuelle Betriebsgeschwindigkeit des Roboters 1 gleich oder niedriger als die Grenzgeschwindigkeit ist, führt die Bewegungssteuereinheit 43 eine Steuerung aus, um die Geschwindigkeit zu halten.
-
Wenn dagegen der kürzeste Abstand DL gleich oder größer als der Abstandbestimmungswert ist, kann die Geschwindigkeitsbegrenzungseinheit 51 die Betriebsgeschwindigkeit des Roboters 1 mit einer Geschwindigkeit steuern, die nicht begrenzt ist. Die Geschwindigkeitsbegrenzungseinheit 51 kann einen Befehl zum Steuern der Betriebsgeschwindigkeit basierend auf dem Bewegungsprogramm 41 an die Bewegungssteuereinheit 43 senden.
-
Die Steuerung zum Reduzieren der Betriebsgeschwindigkeit des Roboters 1 auf eine vorbestimmte Grenzgeschwindigkeit oder weniger umfasst beispielsweise eine Betätigung, um zuvor eine geringe Geschwindigkeit zu bestimmen. Die Geschwindigkeitsbegrenzungseinheit 51 kann eine Steuerung ausführen, mit der die Geschwindigkeit auf die geringe Geschwindigkeit reduziert wird. Bei dem obigen Beispiel wird das Handgelenk 15 zum Beispiel der Komponente des Roboters 1 genommen, doch ist die Ausführungsform nicht darauf eingeschränkt. Die Komponente des Roboters 1 kann eine andere Komponente sein, wie etwa der Oberarm 11 usw.
-
5 ist eine dritte Seitenansicht des Modells der Robotervorrichtung in der vorliegenden Ausführungsform. 5 zeigt ein Beispiel, bei dem die Person zwischen dem Betriebswerkzeug und der Komponente des Roboters 1 eingeklemmt ist. Mit Bezug auf 2 und 5 besteht in einem Bereich 72, in dem die Hand 2 und der Sockel 14 einander gegenüberstehen, die Möglichkeit, dass der Bediener zwischen der Hand 2 und dem Sockel 14 eingeklemmt wird. Die Abstandsberechnungseinheit 53 berechnet den kürzesten Abstand zwischen dem Modell der Komponente des Roboters und dem Modell des Betriebswerkzeugs. Bei dieser Ausführungsform berechnet die Abstandsberechnungseinheit 53 den kürzesten Abstand DL zwischen dem Modell 14a, das den Sockel 14 umfasst, und dem Modell 2a der Hand 2. Die Abstandbestimmungswerte zwischen dem Modell des Betriebswerkzeugs und den Modellen der Komponenten des Roboters 1 werden in der Speichereinheit 42 gespeichert. Bei dieser Ausführungsform wird der Abstandbestimmungswert zwischen der Hand 2 und dem Sockel 14 gespeichert. Die Bestimmungseinheit 54 bestimmt, ob der berechnete kürzeste Abstand DL kleiner als der Abstandbestimmungswert ist oder nicht. Wenn der kürzeste Abstand DL kleiner als der Abstandbestimmungswert ist, kann die Geschwindigkeitsbegrenzungseinheit 51 die Steuerung ausführen, um die Betriebsgeschwindigkeit des Roboters 1 auf oder unter die Grenzgeschwindigkeit zu reduzieren.
-
6 ist eine vierte Seitenansicht des Modells der Robotervorrichtung in der vorliegenden Ausführungsform. 6 zeigt ein Beispiel, bei dem der Bediener zwischen dem Betriebswerkzeug und dem Objekt, das um den Roboter 1 herum angeordnet ist, eingeklemmt werden kann. Es besteht das Risiko, dass der Bediener zwischen der Hand 2 und dem Arbeitstisch 8 in einem Bereich 73 eingeklemmt wird, in dem die Hand 2 und der Arbeitstisch 8 einander gegenüberstehen. Die Abstandsberechnungseinheit 53 berechnet den kürzesten Abstand zwischen dem Modell des Betriebswerkzeugs und dem Modell des Objekts, das um den Roboter 1 herum angeordnet ist. Bei dieser Ausführungsform berechnet die Abstandsberechnungseinheit 53 den kürzesten Abstand zwischen dem Modell 2a der Hand 2 und dem Modell 8a des Arbeitstischs 8. Die Speichereinheit 42 speichert Abstandbestimmungswerte zwischen dem Betriebswerkzeug und den Objekten, die um den Roboter 1 herum angeordnet sind. Bei dieser Ausführungsform wird der Abstandbestimmungswert zwischen dem Modell 2a der Hand 2 und dem Modell 8a des Arbeitstischs 8 gespeichert. Die Bestimmungseinheit 54 bestimmt, ob der berechnete kürzeste Abstand DL kleiner als der Abstandbestimmungswert ist oder nicht. Wenn der kürzeste Abstand DL kleiner als der Abstandbestimmungswert ist, kann die Geschwindigkeitsbegrenzungseinheit 51 die Steuerung ausführen, um die Betriebsgeschwindigkeit des Roboters 1 auf oder unter die Grenzgeschwindigkeit zu reduzieren.
-
Als ein Objekt, das um den Roboter 1 herum anzuordnen ist, kann eine Werkzeugmaschine oder dergleichen zum Beispiel genommen werden, wie zuvor beschrieben. Ferner besteht bei dem in 6 gezeigten Beispiel das Risiko, dass der Bediener in einem Bereich 75 durch die Hand 2 und den Boden 63 eingeklemmt werden kann. Der Boden 63 kann als ein Objekt übernommen werden, das um den Roboter 1 herum anzuordnen ist. Die Abstandsberechnungseinheit 53 kann den kürzesten Abstand zwischen dem Modell 2a der Hand 2 und dem Modell 63a des Bodens 63 berechnen. Die Speichereinheit 42 kann einen Abstandbestimmungswert bezüglich eines Unfalls speichern, der durch das Einklemmen der Person zwischen der Hand 2 und dem Boden 63 verursacht werden kann. Dann kann die Bestimmungseinheit 54 bestimmen, ob der kürzeste Abstand zwischen dem Modell 2a und dem Modell 63a kleiner als der Abstandbestimmungswert ist oder nicht.
-
7 ist eine fünfte Seitenansicht des Modells der Robotervorrichtung in der vorliegenden Ausführungsform. 7 zeigt ein Beispiel, bei dem der Bediener durch eine erste Komponente des Roboters und eine zweite Komponente des Roboters eingeklemmt wird. Mit anderen Worten zeigt 7 ein Beispiel, bei dem der Bediener durch zwei Komponenten eingeklemmt wird, die in dem Roboter 1 enthalten sind. Mit Bezug auf 2 und 7 besteht in einem Bereich 74, in dem das Handgelenk 15 als eine erste Komponente und die Drehplatte 13 als eine zweite Komponente einander gegenüberstehen, das Risiko, dass der Bediener zwischen dem Handgelenk 15 und der Drehplatte 13 eingeklemmt werden kann. Die Abstandsberechnungseinheit 53 berechnet den kürzesten Abstand zwischen dem Modell der ersten Komponente und dem Modell der zweiten Komponente. Bei dieser Ausführungsform berechnet die Abstandsberechnungseinheit 53 den kürzesten Abstand DL zwischen dem Modell 15a des Handgelenks 15 und dem Modell 13a der Drehplatte 13. Ein Abstandbestimmungswert zwischen dem Modell der ersten Komponente und dem Modell der zweiten Komponente wird in der Speichereinheit 42 gespeichert. Die Bestimmungseinheit 54 bestimmt, ob der berechnete kürzeste Abstand DL kleiner als der Abstandbestimmungswert ist oder nicht. Wenn der kürzeste Abstand DL kleiner als der Abstandbestimmungswert ist, kann die Geschwindigkeitsbegrenzungseinheit 51 die Steuerung zum Reduzieren der Betriebsgeschwindigkeit des Roboters 1 auf oder unter die Grenzgeschwindigkeit ausführen.
-
Es sei zu beachten, dass als die beiden Komponenten des Roboters beliebige Komponenten des Roboters 1 ausgewählt werden können, zwischen denen der Bediener eingeklemmt werden kann. Beispielsweise können der Oberarm 11 und der Sockel 14 als die beiden Komponenten des Roboters 1 ausgewählt werden, zwischen denen der Bediener eingeklemmt werden kann.
-
8 ist ein Ablaufschema der Steuerung der Steuervorrichtung in der vorliegenden Ausführungsform. In der vorliegenden Ausführungsform wählt die Steuervorrichtung 4 zwei Objekte aus allen Objekten aus, zwischen denen die Person eingeklemmt werden kann. Dann wird der kürzeste Abstand zwischen den beiden Objekten berechnet, und es wird bestimmt, ob der kürzeste Abstand kleiner als der Abstandbestimmungswert ist oder nicht.
-
Wie in der folgenden Tabelle 1 gezeigt, speichert die Speichereinheit
42 die Abstandbestimmungswerte zwischen den Modellen von Objekten. In der Tabelle 1 wird der Bestimmungswert für die Abstände zwischen dem Modell Mm und dem Modell Mn gezeigt. Jeder Abstandbestimmungswert kann auf einen Wert eingestellt werden, der einen Abstand, in dem eine Person zwischen zwei Elementen eingeklemmt wird, und einen Spielraum umfasst. Es sei zu beachten, dass die beiden Elemente, die miteinander gekoppelt sind, nicht bestimmt werden müssen, da der kürzeste Abstand gleich null ist. Somit wird in der Tabelle 1 „-1“ angegeben. Beispielsweise ist der kürzeste Abstand zwischen der Drehplatte
13 und dem Unterarm
12 gleich null. Somit wird ein Flag „-1“, das nicht bestimmt werden muss, in der Spalte für den Bestimmungswert des Abstands zwischen dem Modell
M2, welches das Modell
13a der Drehplatte
13 zeigt, und dem Modell
M3, welches das Modell
12a des Unterarms
12 zeigt, angegeben.
-
Mit Bezug auf 2 und 8 setzt die Geschwindigkeitsbegrenzungseinheit 51 in Schritt 100 ein Flag FV, das die Betätigung der Geschwindigkeitsbegrenzung angibt, auf 0. Anschließend setzt die Geschwindigkeitsbegrenzungseinheit 51 in Schritt 101 eine Variable n auf 1. Anschließend setzt die Geschwindigkeitsbegrenzungseinheit 51 in Schritt 102 eine Variable m auf (n+1).
-
Anschließend bestimmt die Geschwindigkeitsbegrenzungseinheit 51 in Schritt 103, ob die Kombination der Variablen m und der Variablen n das zu bestimmende Ziel ist oder nicht. Mit anderen Worten wird bestimmt, ob „-1“ in der Tabelle 1 angegeben ist oder nicht. Falls die Kombination der Variablen m und der Variablen n nicht das zu bestimmende Ziel ist, wird die Steuerung auf Schritt 108 verschoben. Falls die Kombination der Variablen m und der Variable n das zu bestimmende Ziel ist, wird die Steuerung auf Schritt 104 verschoben.
-
In Schritt 104 detektiert die Modellgenerierungseinheit 52 die Position und Ausrichtung des Roboters 1 basierend auf der Ausgabe des Positionsdetektors 18. Die Modellgenerierungseinheit 52 berechnet die Position des Objekts, das dem Modell Mm entspricht, und des Objekts, das dem Modell Mn entspricht, basierend auf der Position und Ausrichtung des Roboters 1. Wenn die Modelle Mm und Mn die Komponente des Roboters 1 oder die Hand 2 umfassen, berechnet die Modellgenerierungseinheit 52 die Position und Ausrichtung des Modells. Somit generiert die Modellgenerierungseinheit 52 das Modell Mm und das Modell Mn basierend auf der Position und Ausrichtung des Roboters 1. In Schritt 105 berechnet die Abstandsberechnungseinheit 53 den kürzesten Abstand zwischen dem Modell Mn und dem Modell Mm.
-
Anschließend bestimmt die Bestimmungseinheit 54 in Schritt 106, ob der kürzeste Abstand zwischen dem Modell Mn und dem Modell Mm kleiner als der in der Tabelle gezeigte entsprechende Abstandbestimmungswert ist oder nicht. Wenn in Schritt 106 der kürzeste Abstand kleiner als der Abstandbestimmungswert ist, wird die Steuerung auf Schritt 107 verschoben. In diesem Fall kann bestimmt werden, dass ein Risiko besteht, dass der Bediener eingeklemmt werden kann. In Schritt 107 setzt die Geschwindigkeitsbegrenzungseinheit 51 das Flag FV der Geschwindigkeitsbegrenzung auf 1. Danach wird die Steuerung auf Schritt 108 verschoben.
-
Wenn in Schritt 106 der kürzeste Abstand gleich oder größer als der entsprechende Abstandbestimmungswert ist, wird die Steuerung auf Schritt 108 verschoben. In Schritt 108 bestimmt die Geschwindigkeitsbegrenzungseinheit 51, ob die Variable m gleich der maximalen Anzahl ist oder nicht. Die maximale Anzahl der Variablen m ist die Anzahl des Zielobjekts. Bei dem in der Tabelle 1 gezeigten Beispiel ist die maximale Anzahl der Variablen m gleich 8. Wenn in Schritt 108 die Variable m nicht gleich der maximalen Anzahl ist, wird die Steuerung auf Schritt 109 verschoben.
-
In Schritt 109 wird 1 zu der Variablen m addiert. Dann kehrt die Steuerung zu Schritt 103 zurück. Somit bestimmt die Geschwindigkeitsbegrenzungseinheit 51, ob der kürzeste Abstand zwischen den Objekten kleiner als der Bestimmungsabstand ist oder nicht, während die Variable m auf die maximale Anzahl geändert wird, wobei die Variable n unverändert bleibt.
-
In Schritt 108, wenn die Variable m gleich der maximalen Anzahl ist, wird die Steuerung auf Schritt 110 verschoben. In Schritt 110 bestimmt die Geschwindigkeitsbegrenzungseinheit 51, ob die Variable n gleich der maximalen Anzahl ist oder nicht.
-
Der Höchstwert der Variablen n ist die Anzahl der Zielobjekte. Bei dem in der Tabelle 1 gezeigten Beispiel ist der Höchstwert der Variablen n gleich 8.
-
Wenn in Schritt 110 die Variable n nicht gleich der maximalen Anzahl ist, wird die Steuerung auf Schritt 111 verschoben. In Schritt 111 erfolgt eine Steuerung zum Addieren von 1 zu dem Wert der Variablen n. Dann kehrt die Steuerung zu Schritt 102 zurück. Somit ist es möglich, den Abstand zwischen den beiden Objekten zu bestimmen, indem die Variable n von 1 auf die maximale Anzahl geändert wird.
-
Wenn in Schritt 110 die Variable n gleich der maximalen Anzahl ist, wird die Steuerung auf Schritt 112 verschoben. Mit anderen Worten, wenn die Bestimmung des Abstands für die Kombination aller Objekte beendet ist, wird die Steuerung auf Schritt 112 verschoben. Bei der obigen Steuerung werden die Abstände für alle Kombinationen des Modells Mm und des Modells Mn bestimmt. Wenn dann der kürzeste Abstand kleiner als der Abstandbestimmungswert in mindestens einer Kombination ist, ist das Flag FV der Geschwindigkeitsbegrenzung in Schritt 107 gleich 1.
-
In Schritt 112 bestimmt die Geschwindigkeitsbegrenzungseinheit 51, ob das Flag FV der Geschwindigkeitsbegrenzung gleich 1 ist oder nicht. Wenn das Flag FV gleich 1 ist, wird die Steuerung auf Schritt 114 verschoben. In Schritt 114 sendet die Geschwindigkeitsbegrenzungseinheit 51 einen Befehl, der die Betriebsgeschwindigkeit des Roboters 1 steuert, so dass die Betriebsgeschwindigkeit gleich oder niedriger als die vorbestimmte Grenzgeschwindigkeit ist, an die Bewegungssteuereinheit 43. Die Bewegungssteuereinheit 43 steuert den Roboterantriebsmotor 22 basierend auf diesem Befehl, so dass die Betriebsgeschwindigkeit des Roboters 1 gleich oder niedriger als die Grenzgeschwindigkeit ist.
-
Wenn in Schritt 112 das Flag FV nicht gleich 1 ist, wird die Steuerung auf Schritt 113 verschoben. Wenn in Schritt 113 die Geschwindigkeit für die aktuelle Betätigung des Roboters begrenzt ist, führt die Geschwindigkeitsbegrenzungseinheit 51 eine Steuerung aus, um die Geschwindigkeitsbegrenzung aufzuheben. Die Geschwindigkeitsbegrenzungseinheit 51 sendet einen Befehl zum Aufheben der Geschwindigkeitsbegrenzung an die Bewegungssteuereinheit 43. Die Bewegungssteuereinheit 43 hebt die Geschwindigkeitsbegrenzung auf und treibt den Roboter 1 mit der Betriebsgeschwindigkeit basierend auf dem Bewegungsprogramm 41 an. Wenn die Geschwindigkeitsbegrenzung für die aktuelle Betätigung des Roboters nicht ausgeführt wird, bewahrt die Geschwindigkeitsbegrenzungseinheit 51 den aktuellen Zustand.
-
Die in 8 gezeigte Steuerung kann beispielsweise in vorbestimmten Zeitintervallen wiederholt werden. Wenn dann der Abstand zwischen den beiden Objekten abnimmt, kann die Geschwindigkeitsbegrenzungseinheit 51 die Geschwindigkeit des Roboters 1 begrenzen. Danach, wenn der Abstand zwischen den beiden Objekten zunimmt, kann die Geschwindigkeitsbegrenzungseinheit 51 die Geschwindigkeitsbegrenzung aufheben.
-
Die Steuervorrichtung 4 der vorliegenden Ausführungsform kann die Betriebsgeschwindigkeit des Roboters 1 in der Position und Ausrichtung des Roboters 1, bei denen ein Risiko besteht, dass die Person eingeklemmt werden kann, begrenzen. Wenn die Person durch die Komponente des Roboters 1 oder das Betriebswerkzeug eingeklemmt wird, hält der Roboter 1 an. Da die Betriebsgeschwindigkeit des Roboters 1 begrenzt ist, ist es nun möglich, den Abstand zu reduzieren, um den sich die Komponente des Roboters 1 oder das Betriebswerkzeug durch Trägheit bewegt. Folglich ist es möglich, den Einfluss des Einklemmens auf den Bediener zu reduzieren. Bei dem Roboter 1 der vorliegenden Ausführungsform kann verhindert werden, dass der Raum, in dem die Person eingeklemmt wird, reduziert wird, nachdem der Haltebefehl des Roboters 1 erteilt wurde, und demnach verbessert sich die Sicherheit.
-
9 ist eine Seitenansicht eines anderen Modells der Robotervorrichtung in der vorliegenden Ausführungsform. Das Modell jedes Objekts in der obigen Ausführungsform weist eine Form auf, die wie die Form des Objekts gebildet ist. Andererseits kann das Modell jedes Objekts in einer einfachen Form, wie etwa als Quader, Würfel, Kugel, Zylinder usw. gebildet sein. Alternativ kann ein Modell übernommen werden, bei dem die Endseite des Zylinders eine Halbkugel ist. Jedes Modell weist eine Größe auf, in der das Objekt in dem Modell enthalten ist. Mit anderen Worten ist jedes Modell derart gebildet, dass es das Objekt abdeckt, das dem Modell entspricht.
-
Das Modell jeder Komponente des in 9 gezeigten Roboters 1 wird durch einen Quader gebildet. Die Modelle 11a, 12a, 13a, 14a und 15a der Komponenten des Roboters 1 sind derart gebildet, dass sie darin die entsprechenden Komponenten enthalten. Beispielsweise ist das Modell 11a des Oberarms 11 derart gebildet, dass es den Hauptteil des Oberarms 11 sowie lineare Teile, die um den Hauptteil herum angeordnet sind, enthält. Das Modell 2a der Hand 2 ist aus einem Quader gebildet. Das Modell 2a ist derart gebildet, dass es die Hand 2 darin enthält.
-
Somit wird das Modell, das eine einfache Form aufweist, als ein Modell jeder Komponente übernommen, wodurch der Rechenaufwand in der Steuervorrichtung reduziert werden kann, und die Belastung für die Steuervorrichtung reduziert werden kann. Somit kann die Steuerung gemäß der vorliegenden Ausführungsform durch eine leistungsschwache Steuervorrichtung erfolgen.
-
Bei der Steuerung des Roboters 1 gemäß der vorliegenden Ausführungsform, wenn das Risiko besteht, dass der Bediener eingeklemmt werden kann, wird die Betriebsgeschwindigkeit des Roboters 1 reduziert. Wenn zusätzlich zu dieser Steuerung das Risiko besteht, dass die beiden Objekte unter der Komponente des Roboters, dem Betriebswerkzeug und dem Objekt, das um den Roboter herum angeordnet ist, in Kontakt miteinander kommen können, kann eine Steuerung zum Begrenzen der Betriebsgeschwindigkeit des Roboters 1 ausgeführt werden. Wenn beispielsweise das Risiko besteht, dass die beiden Objekte einander stören können, kann die Geschwindigkeitsbegrenzungseinheit die Betriebsgeschwindigkeit des Roboters reduzieren.
-
Der Bediener kann zuvor einen Kontaktbestimmungswert als Bestimmungswert für den Abstand einstellen, wenn die beiden Objekte von der Komponente des Roboters, dem Betriebswerkzeug und dem Objekt, das um den Roboter herum angeordnet ist, miteinander in Kontakt kommen. Die Kontaktbestimmungswerte bezüglich des Kontakts zwischen den beiden Objekten werden eingestellt, um kleiner als die Abstandbestimmungswerte bezüglich des Unfalls, der durch das Einklemmen der Person verursacht wird, zu sein. Die Speichereinheit kann den Kontaktbestimmungswert bezüglich des Kontakts der beiden Objekte speichern.
-
Die Bestimmungseinheit bestimmt, ob der kürzeste Abstand zwischen den beiden Objekten kleiner als der entsprechende Kontaktbestimmungswert ist oder nicht. Die Geschwindigkeitsbegrenzungseinheit kann die Betriebsgeschwindigkeit des Roboters derart steuern, dass die Betriebsgeschwindigkeit gleich oder niedriger als eine vorbestimmte Grenzgeschwindigkeit ist, wenn der kürzeste Abstand kleiner als der Kontaktbestimmungswert ist. Bei dieser Steuerung kann die Grenzgeschwindigkeit bezüglich des Kontakts eingestellt werden, um kleiner als die Grenzgeschwindigkeit bezüglich des Einklemmunfalls zu sein. Alternativ kann die Geschwindigkeitsbegrenzungseinheit eine Steuerung ausführen, um die Betriebsgeschwindigkeit des Roboters auf null zu setzen. Dadurch dass diese Steuerung übernommen wird, kann die Betriebsgeschwindigkeit des Roboters reduziert werden, wenn es wahrscheinlich ist, dass Objekte einander stören.
-
Bei der obigen Ausführungsform generiert die Modellgenerierungseinheit Modelle aller Komponenten des Roboters, des Betriebswerkzeugs und der Objekte, die um den Roboter herum angeordnet sind, doch ist die Ausführungsform nicht darauf eingeschränkt. Die Modellgenerierungseinheit muss nur mindestens zwei Modelle generieren, um den Abstand zu bestimmen.
-
Bei einer Robotervorrichtung, die in der Lage ist, in Zusammenarbeit mit dem Bediener zu funktionieren, führt der Roboter manchmal eine Betätigung unabhängig aus. Wenn der Roboter allein arbeitet, ist der Bediener von dem Roboter entfernt. Die Steuervorrichtung kann die kooperative Steuerung ausführen, wenn der Bediener und der Roboter gleichzeitig arbeiten, und eine Hochgeschwindigkeitssteuerung, wenn der Roboter unabhängig arbeitet. Bei der kooperativen Steuerung ist es möglich, die zuvor erwähnte Steuerung zum Begrenzen der Betriebsgeschwindigkeit des Roboters umzusetzen. Bei der Hochgeschwindigkeitssteuerung ist es möglich, die Steuerung zum Anhalten des Roboters, wenn der Bediener mit dem Roboter in Kontakt kommt, zu untersagen. Ferner ist es bei der Hochgeschwindigkeitssteuerung möglich, die Steuerung zum Begrenzen der Betriebsgeschwindigkeit des Roboters in der vorliegenden Ausführungsform zu untersagen. Die Steuervorrichtung kann derart gebildet sein, dass sie zwischen der kooperativen Steuerung und der Hochgeschwindigkeitssteuerung umschaltet. Wie zuvor beschrieben wird die Hochgeschwindigkeitssteuerung ausgeführt, wodurch die Robotervorrichtung mit einer hohen Geschwindigkeit funktionieren kann, wenn keine Person in der Nähe des Roboters ist.
-
In der vorliegenden Ausführungsform wurde der Knickarmroboter als ein Beispiel beschrieben, doch ist die Ausführungsform nicht darauf eingeschränkt. Die vorliegende Erfindung kann auf eine Steuervorrichtung zum Steuern eines beliebigen Roboters angewendet werden. Beispielsweise bestehen die Antriebsachsen des Roboters in der obigen Ausführungsform aus den Drehachsen, doch ist die Ausführungsform nicht darauf eingeschränkt. Die Antriebsachsen des Roboters können eine lineare Bewegungsachse umfassen, bei der sich die Komponente des Roboters linear bewegt.
-
Gemäß einem Aspekt der vorliegenden Offenbarung ist es möglich, die Steuervorrichtung für den Roboter bereitzustellen, die den Einfluss auf den Bediener reduziert, wenn der Bediener durch die Betätigung des Roboters eingeklemmt wird.
-
Bei der zuvor beschriebenen Steuerung kann die Reihenfolge der Schritte geeignet in einem Bereich geändert werden, in dem die Funktionen und Aktionen nicht geändert werden. Die obigen Ausführungsformen können gegebenenfalls kombiniert werden. In jeder der obigen Figuren sind die gleichen oder gleichwertige Teile mit den gleichen Bezugszeichen bezeichnet. Es versteht sich, dass die obigen Ausführungsformen Beispiele sind und die Erfindung nicht einschränken. Ferner sind in den Ausführungsformen Änderungen der Ausführungsformen, die in den Ansprüchen angegeben sind, enthalten.
-
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 6140114 B [0003]
- JP 5902664 [0003]
- JP 201052116 A [0004]
- JP 2017094430 A [0004]
- JP 3902310 B [0004]
- JP 3357392 B [0004]