-
Hintergrund der Erfindung
-
1. Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft ein Robotersystem, das einen Roboter umfassend mehrere mechanische Einheiten wie eine Gelenkeinheit und eine Antriebseinheit zum Antrieb der Gelenkeinheit steuert, die mechanischen Einheiten und eine Robotersteuervorrichtung.
-
2. Beschreibung des Stands der Technik
-
Im Allgemeinen sind in Fertigungsstätten verwendete Industrieroboter Gelenkroboter. Um einen Austausch bei einem Defekt oder während einer Wartung zu erleichtern, umfasst solch ein Gelenkroboter mehrere mechanische Einheiten wie eine Gelenkeinheit (Armeinheit) und eine Antriebseinheit zum Antrieb der Gelenkeinheit.
-
Ferner dient ein Schutzzaun an einer Fertigungsstätte als eine Abtrennung zwischen einem Roboterarbeitsbereich und einem Personenarbeitsbereich. Dies hindert eine Person daran, versehentlich einen Roboter zu berühren. Durch Verwenden eines mit einer Robotersteuervorrichtung verbundenen Handprogrammiergeräts wird ein Roboter eingelernt, beispielsweise einen Roboterarm entlang eines gewünschten Bewegungsweges zu betätigen, ohne aus dem Schutzzaun heraus geführt zu werden.
-
An einigen Fertigungsstätten kann aber ein Arbeitsbereich nicht in einen Roboterarbeitsbereich und einen Personenarbeitsbereich unterteilt werden oder die Produktivität kann durch Unterteilen eines Arbeitsbereichs wesentlich verringert werden. Solch eine Fertigungsstätte erfordert ein praktisches Robotersystem, welches das Bedürfnis eines Schutzzaunes beseitigt.
-
Somit wird nach dem Stand der Technik ein virtueller Bereich zum Einschränken der Bewegung eines Roboters (nachfolgend als Bewegungseinschränkungsbereich bezeichnet) vorgeschlagen. Ein Roboter, der in den eingestellten virtuellen Bereich für das Einschränken der Bewegung eindringt, wird so gesteuert, dass er stoppt. Ein Bewegungsprogramm für die Steuerung des Roboters wird durch Einlernen des Roboters erzeugt. Wenn sich die Konfiguration des Roboters durch den Austausch von mechanischen Einheiten wie einer Gelenkeinheit und einer Antriebseinheit ändert, muss ein in einer Robotersteuervorrichtung gespeichertes Roboterbewegungsprogramm geändert werden. Zum automatischen Ändern von Programmen offenbart das
japanische Patent Nr. 3910134 ein Verfahren, bei dem ein Speicher in einer austauschbaren mechanischen Einheit zum Speichern eines Parameters für die Roboterbahnsteuerung angeordnet ist.
-
Um einen in den virtuellen Bewegungseinschränkungsbereich eindringenden Roboter zu stoppen, muss ein 3D-Modell des Roboters erstellt werden und es müssen Interferenzen bzw. störende Wechselwirkungen zwischen dem 3D-Modell und dem virtuellen Bewegungseinschränkungsbereich beim Einlernen des Roboters verifiziert werden. Das
japanische Patent Nr. 3910134 beschreibt aber nicht das erforderliche Speichern eines 3D-Modells eines Roboters.
-
Somit kann eine im
japanischen Patent Nr. 3910134 offenbarte Robotersteuervorrichtung nicht verifizieren, ob ein 3D-Modell eines Roboters mit einem virtuellen Bewegungseinschränkungsbereich interferiert bzw. störend in Wechselwirkung tritt oder nicht, wenn sich die Konfiguration des Roboters durch Austausch einer mechanischen Einheit ändert. Zum Verifizieren einer Interferenz muss ein 3D-Modell des Roboters manuell für die Robotersteuervorrichtung eingestellten und beim Austausch der mechanischen Einheit des Roboters manuell geändert werden.
-
Ferner kann als Reaktion auf den Austausch der mechanischen Einheit des Roboters die im
japanischen Patent Nr. 3910134 offenbarte Robotersteuervorrichtung nicht automatisch einen Parameter zum Schätzen einer Auslaufstrecke, wenn der Roboter gestoppt wird, ändern.
-
Zusammenfassung der Erfindung
-
Die vorliegende Erfindung stellt ein Robotersystem, bei dem ein 3D-Modell eines Roboters und ein Parameter zum Schätzen einer Auslaufstrecke automatisch für eine Robotersteuervorrichtung geändert werden, wenn austauschbare mechanische Einheiten im Roboter geändert werden, die mechanischen Einheiten und die Robotersteuervorrichtung bereit.
-
Gemäß einem ersten Aspekt der vorliegenden Offenbarung wird ein Robotersystem bereitgestellt mit: einem Roboter umfassend eine Kombination von als mehrfache Module dienenden mechanischen Einheiten; einer Robotersteuervorrichtung, die den Roboter steuert; und einem in jeder der mechanischen Einheiten angeordneten Speicher,
wobei ein Formmodell und ein Parameter zum Schätzen einer Auslaufstrecke vorab im Speicher gespeichert werden, wobei das Formmodell die Form der mechanischen Einheit angibt, wobei die Auslaufstrecke entsprechend einer Bewegungsgeschwindigkeit des Roboters ermittelt wird, und
das Formmodell und der Parameter zum Schätzen einer Auslaufstrecke im Speicher der mechanischen Einheit von der Robotersteuervorrichtung gelesen werden.
-
Ein zweiter Aspekt der vorliegenden Offenbarung stellt entsprechend dem Robotersystem des ersten Aspekts ein Robotersystem bereit, bei dem die Robotersteuervorrichtung umfasst:
eine Einheitenpositions-Erfassungseinheit, welche die Position der mechanischen Einheit erfasst;
eine Robotermodell-Erstellungseinheit, die ein 3D-Modell des Roboters auf der Basis der Position der mechanischen Einheit, wobei die Position von der Einheitenpositions-Erfassungseinheit erfasst wird, und des im Speicher der mechanischen Einheit gespeicherten Formmodells erstellt;
eine Einstelleinheit, die einen Bewegungseinschränkungsbereich des Roboters vorgibt; und
eine Interferenzverifizierungseinheit, die verifiziert, ob das 3D-Modell des Roboters mit dem Bewegungseinschränkungsbereich interferiert oder nicht,
wobei, wenn die Interferenzverifizierungseinheit verifiziert, dass das 3D-Modell des Roboters mit dem Bewegungseinschränkungsbereich interferiert, die Stromversorgung des Roboters getrennt oder die Bewegungsgeschwindigkeit des Roboters beschränkt wird.
-
Ein dritter Aspekt der vorliegenden Offenbarung stellt entsprechend dem Robotersystem des zweiten Aspekts ein Robotersystem bereit, bei dem die Robotersteuervorrichtung ferner umfasst:
eine Auslaufstrecken-Berechnungseinheit, die eine Auslaufstrecke der mechanischen Einheit auf der Basis der Position und Bewegungsgeschwindigkeit der mechanischen Einheit und des Parameters zum Schätzen einer Auslaufstrecke berechnet, wobei die Position von der Einheitenpositions-Erfassungseinheit erfasst wird, wobei der Parameter im Speicher der mechanischen Einheit gespeichert wird; und
eine Belegungsbereich-Berechnungseinheit, die einen einen virtuellen Raum abdeckenden Belegungsbereich, bis das 3D-Modell des auslaufenden Roboters gestoppt ist, auf der Basis der berechneten Auslaufstrecken der mechanischen Einheiten berechnet,
wobei dann, wenn die Interferenzverifizierungseinheit verifiziert, dass der von der Belegungsbereich-Berechnungseinheit berechnete Belegungsbereich mit dem Bewegungseinschränkungsbereich interferiert, die Stromversorgung des Roboters getrennt oder die Bewegungsgeschwindigkeit des Roboters beschränkt wird.
-
Ein vierter Aspekt der vorliegenden Offenbarung entsprechend dem Robotersystem des zweiten oder dritten Aspekts stellt ein Robotersystem bereit, das eine Anzeigeeinheit umfasst, die das 3D-Modell des Roboters und den Bewegungseinschränkungsbereich anzeigt.
-
Ein fünfter Aspekt der vorliegenden Offenbarung stellt eine mechanische Einheit bereit, die als ein einen Roboter darstellendes Modul dient, wobei die mechanische Einheit einen Speicher umfasst, in dem ein Formmodell und ein Parameter zum Schätzen einer Auflaufstrecke gespeichert sind, das Formmodell die Form der mechanischen Einheit angibt und die Auslaufstrecke entsprechend der Bewegungsgeschwindigkeit des Roboters ermittelt wird.
-
Gemäß einem sechsten Aspekt der vorliegenden Offenbarung wird eine Robotersteuervorrichtung bereitgestellt, die eine Kombination von als mehrfache Module dienenden mechanischen Einheiten umfasst, wobei die Robotersteuervorrichtung einen Roboter umfassend einen Speicher in jeder der mechanischen Einheiten umfasst,
wobei ein Formmodell und ein Parameter zum Schätzen einer Auslaufstrecke vorab im Speicher gespeichert werden, wobei das Formmodell die Form der mechanischen Einheit angibt, wobei die Auslaufstrecke entsprechend einer Bewegungsgeschwindigkeit des Roboters ermittelt wird, und
das Formmodell und der Parameter zum Schätzen einer Auslaufstrecke im Speicher der mechanischen Einheit gelesen werden.
-
Ein siebter Aspekt der vorliegenden Offenbarung entsprechend der Robotersteuervorrichtung des sechsten Aspekts stellt eine Robotersteuervorrichtung bereit umfassend eine Einheitenpositions-Erfassungseinheit, welche die Position der mechanischen Einheit erfasst;
eine Robotermodell-Erstellungseinheit, die ein 3D-Modell des Roboters auf der Basis der Position der mechanischen Einheit, wobei die Position von der Einheitenpositions-Erfassungseinheit erfasst wird, und des im Speicher der mechanischen Einheit gespeicherten Formmodells erstellt;
eine Einstelleinheit, die den Bewegungseinschränkungsbereich des Roboters vorgibt; und
eine Interferenzverifizierungseinheit, die verifiziert, ob das 3D-Modell des Roboters mit dem Bewegungseinschränkungsbereich interferiert oder nicht,
wobei dann, wenn die Interferenzverifizierungseinheit verifiziert, dass das 3D-Modell des Roboters mit dem Bewegungseinschränkungsbereich interferiert, die Stromversorgung des Roboters getrennt oder die Bewegungsgeschwindigkeit des Roboters beschränkt wird.
-
Ein achter Aspekt der vorliegenden Offenbarung entsprechend der Robotersteuervorrichtung des siebten Aspekts stellt eine Auslaufstrecken-Berechnungseinheit bereit, die eine Auslaufstrecke der mechanischen Einheit auf der Basis der Position und Bewegungsgeschwindigkeit der mechanischen Einheit und des Parameters zum Schätzen einer Auslaufstrecke berechnet, wobei die Position von der Einheitenpositions-Erfassungseinheit erfasst wird, wobei der Parameter im Speicher der mechanischen Einheit gespeichert wird; und
eine Belegungsbereich-Berechnungseinheit, die einen einen virtuellen Raum abdeckenden Belegungsbereich, bis das 3D-Modell des auslaufenden Roboters gestoppt ist, auf der Basis der berechneten Auslaufstrecken der mechanischen Einheiten berechnet,
wobei dann, wenn die Interferenzverifizierungseinheit verifiziert, dass der von der Belegungsbereich-Berechnungseinheit berechnete Belegungsbereich mit dem Bewegungseinschränkungsbereich interferiert, die Stromversorgung des Roboters getrennt oder die Bewegungsgeschwindigkeit des Roboters beschränkt wird.
-
Ein neunter Aspekt der vorliegenden Offenbarung entsprechend der Robotersteuervorrichtung des siebten oder achten Aspekts stellt eine Robotersteuervorrichtung umfassend eine Anzeigeeinheit, die das 3D-Modell des Roboters und den Bewegungseinschränkungsbereich anzeigt, bereit.
-
Kurze Beschreibung der Zeichnungen
-
Eine ausführliche Beschreibung einer typischen Ausführungsformen der vorliegenden Offenbarung wie in den beigefügten Zeichnungen dargestellt erläutert die Aufgabe, Merkmale und Vorteile der vorliegenden Erfindung sowie weitere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung.
-
1 zeigt schematisch die Konfiguration eines Robotersystems gemäß einer Ausführungsform.
-
2 zeigt schematisch eine mechanische Einheit umfassend einen Speicher.
-
3 zeigt schematisch die Formmodelle aller Gelenkeinheiten und Antriebseinheiten in einem Roboter.
-
4 zeigt ein Blockdiagramm zur Darstellung der Bestandteile einer Robotersteuervorrichtung im Robotersystem gemäß der Ausführungsform.
-
5 zeigt schematisch ein 3D-Modell und den Bewegungseinschränkungsbereich des Roboters.
-
6 zeigt schematisch einen Belegungsbereich eines 3D-Modells des Roboters und den Bewegungseinschränkungsbereich, wenn der Roboter beim Stoppen ausläuft.
-
7 zeigt ein Flussdiagramm zum Erläutern eines Beispiels des Vorgangsablaufs des Robotersystems gemäß der Ausführungsform.
-
Ausführliche Beschreibung
-
Nachfolgend ist eine Ausführungsform der vorliegenden Offenbarung in Bezug auf die beigefügten Zeichnungen beschrieben. In den Zeichnungen sind gleiche Elemente mit den gleichen Bezugszeichen bezeichnet. In verschiedenen Zeichnungen mit den gleichen Bezugszeichen bezeichnete Bestandteile weisen die gleichen Funktionen auf. Zum besseren Verständnis ist der Maßstab der Zeichnungen gegebenenfalls unterschiedlich.
-
1 zeigt schematisch die Konfiguration eines Robotersystems 10 gemäß einer Ausführungsform.
-
Wie in 1 dargestellt umfasst das Robotersystem 10 der vorliegenden Ausführungsform einen Roboter 11, eine Robotersteuervorrichtung 12, die den Roboter 11 steuert, und jeweils in austauschbaren mechanischen Einheiten 13A bis 13C, die den Roboter 11 darstellen, angeordnete nichtflüchtige Speicher 16.
-
Der Roboter 11 ist beispielsweise ein menschenfreundlicher Roboter, der mit einer Person an einer Fertigungsstätte zusammenarbeitet. Der Roboter 11 ist ebenfalls ein Gelenkroboter umfassend die drei kombinierten mechanischen Einheiten 13A bis 13C. Die drei mechanischen Einheiten 13A bis 13C stellen den Roboter 11 in der vorliegenden Ausführungsform dar; die Zahl von mechanischen Einheiten ist aber in der vorliegenden Erfindung nicht beschränkt.
-
Die erste mechanische Einheit 13A umfasst eine erste Gelenkeinheit 14A und eine erste Antriebseinheit 15A, welche die erste Gelenkeinheit 14A antreibt. Die zweite mechanische Einheit 13B umfasst eine zweite Gelenkeinheit 14B und eine zweite Antriebseinheit 15B, welche die zweite Gelenkeinheit 14B antreibt. Die dritte mechanische Einheit 13C umfasst eine dritte Gelenkeinheit 14C und eine dritte Antriebseinheit 15C, welche die dritte Gelenkeinheit 14C antreibt. Die Gelenkeinheiten 14A bis 14C und die Antriebseinheiten 15A bis 15C sind als einzelne Module ausgebildet. Die vorliegende Erfindung ist aber nicht auf diese Konfiguration beschränkt. Jede der mechanischen Einheiten 13A bis 13C kann als ein einzelnes Modul mit einer Gelenkeinheit und einer Antriebseinheit zum Antrieb der Gelenkeinheit ausgebildet sein.
-
Bei dieser Konfiguration kann ein Einheitenaustausch oder eine Strukturänderung durch einen Benutzer in jeder der mechanischen Einheiten 13A bis 13C, Gelenkeinheiten 14A bis 14C und Antriebseinheiten 15A bis 15C erfolgen. Die Gelenkeinheiten 14A bis 14C und die Antriebseinheiten 15A bis 15C können ebenfalls jeweils als Armeinheiten und Verbindungseinheiten bezeichnet werden.
-
Der Roboter 11 ist mit der Robotersteuervorrichtung 12 über ein Kommunikationskabel verbunden. Die Robotersteuervorrichtung 12 umfasst einen Speicher, beispielsweise ein ROM oder ein RAM, eine CPU und eine Kommunikationssteuereinheit (nicht dargestellt). Die Kommunikationssteuereinheit steuert den Austausch von Signalen mit jedem Wellenmotor (nicht dargestellt) des Roboters 11. Zum Bearbeiten mit dem Roboter 11 ist ein Bearbeitungswerkzeug (nicht dargestellt), beispielsweise eine Schweißpistole oder ein Schaftfräser, am freien Ende der dritten Gelenkeinheit 14C des Roboters 11 befestigt. Die Robotersteuervorrichtung 12 überträgt Bewegungsbefehle zu Geschwindigkeit, Position, Drehmoment usw. an die in den entsprechenden Antriebseinheiten 15A bis 15C des Roboters 11 enthaltenen Motoren. Die Gelenkeinheiten 14A bis 14C werden entsprechend den Bewegungsbefehlen betätigt, wobei das Bearbeitungswerkzeug am freien Ende der dritten Gelenkeinheit 14C entlang des Bewegungsweges entsprechend den Bewegungsbefehlen bewegt wird.
-
Ferner ist in den mechanischen Einheiten 13A bis 13C der Speicher 16 in jeder der Gelenkeinheiten 14A bis 14C und der Antriebseinheiten 15A bis 15C angeordnet. Wenn die mechanische Einheit 13C beispielsweise als ein Modul umfassend die Gelenkeinheit 14C und die Antriebseinheit 15C ausgebildet ist, kann der Speicher 16 nur in der Gelenkeinheit 14C oder der Antriebseinheit 15C angeordnet sein. 2 zeigt schematisch die mechanische Einheit 13C umfassend den Speicher 16.
-
Der in jeder der Gelenkeinheiten 14A bis 14C und der Antriebseinheiten 15A bis 15C enthaltene Speicher 16 speichert ein die Einheitenform der Gelenkeinheit angebendes Formmodell 17.
-
Das Formmodell 17 ist wie eine Kugel, ein Quader oder ein Zylinder geformt oder diese Formen können so kombiniert sein, dass sie die Außenform von jeder Einheit enthalten. Im Beispiel von 2 entsprechen ein Bereich 17a6 und ein Bereich 17a5 (in 2 mit gestrichelten Linien umrandet), welche jeweils die Gelenkeinheit 14C und die Antriebseinheit 15C enthalten, dem Formmodell 17. Der Bereich 17a6 ist als ein zylindrischer Bereich mit einem vorgegebenen Radius von einer Mittelachse P der Gelenkeinheit 14C definiert. Der Bereich 17a5 ist als ein kugelförmiger Bereich mit einem vorgegebenen Radius von einem Punkt auf einer Gelenkachse Q der Antriebseinheit 15C definiert. Der Punkt auf der Gelenkachse Q ist beispielsweise ein Schnittpunkt der Mittelachse P der Gelenkeinheit 14C und der Gelenkachse Q der Antriebseinheit 15C.
-
Wenn eine Roboterhand oder ein Bearbeitungswerkzeug am freien Ende der Gelenkeinheit 14C befestigt ist, ist der Bereich 17a6 vorzugsweise als ein Bereich enthaltend die Roboterhand oder das Bearbeitungswerkzeug definiert.
-
3 zeigt schematisch die Formmodelle 17 aller Gelenkeinheiten 14A bis 14C und Antriebseinheiten 15A bis 15C im Roboter 11. In 3 entsprechen die Bereiche 17a1 bis 17a4 und die Bereiche 17a5 und 17a6 den Formmodellen 17 der Einheiten. Ferner sind wie der Bereich 17a6 die Bereiche 17a2 und 17a4 als zylindrische Bereiche mit vorgegebenen Radien von den entsprechenden Mittelachsen der Gelenkeinheiten 14B und 14A definiert. Ferner sind wie der Bereich 17a5 die Bereiche 17a1 und 17a3 als kugelförmige Bereiche mit vorgegebenen Radien von den entsprechenden Punkten auf den Gelenkachsen der Antriebseinheiten 15B und 15A definiert. Die Punkte auf den Gelenkachsen sind wie in der mechanischen Einheit 13C (2) ein Schnittpunkt der Mittelachse der Gelenkeinheit 14B und der Gelenkachse der Antriebseinheit 15B und ein Schnittpunkt der Mittelachse der Gelenkeinheit 14A und der Gelenkachse der Antriebseinheit 15A.
-
Im Speicher 16 von jeder Einheit sind die Definition einer Bereichsform für die Einheit und numerische Parameter zum Definieren des Bereichs als Daten zum Formmodell 17 gespeichert. Die numerischen Parameter umfassen die Radien der zylindrischen und kugelförmigen Bereiche und die Achslänge des zylindrischen Bereichs entlang der Mittelachse. Die zylindrischen und kugelförmigen Bereiche können bei Bedarf verschiedene vorgegebene Radien aufweisen.
-
Die Formmodelle 17 werden vorzugsweise in die Speicher 16 beim Prozess der Fertigung oder Befestigung der Einheiten umfassend die Gelenkeinheiten 14A bis 14C und die Antriebseinheiten 15A bis 15C in einer Fabrik geschrieben.
-
Nachfolgend sind die Funktionen und Betriebsvorgänge des Robotersystems 10 umfassend die mechanischen Einheiten 13A bis 13C beschrieben.
-
Die mechanischen Einheiten 13A bis 13C (die Gelenkeinheiten 14A bis 14C und die Antriebseinheiten 15A bis 15C) werden miteinander verbunden, um den Roboter 11 zu bilden. Zu diesem Zeitpunkt werden zur Steuerung und Stromversorgung verwendete Stromleitungen ebenfalls verbunden, um Signale zwischen dem Motor oder dem Speicher 16 in jeder Einheit der Robotersteuervorrichtung 12 auszutauschen.
-
Sobald die Robotersteuervorrichtung 12 und der Roboter 11 miteinander verbunden sind, liest die Robotersteuervorrichtung 12 Daten zu den in den Speichern 16 der Einheiten gespeicherten Formmodellen 17. Die Daten werden beim Starten der mit dem Roboter 11 verbundenen Robotersteuervorrichtung 12 gelesen. Alternativ können die Daten als Reaktion auf eine Anweisung von einem mit der Robotersteuervorrichtung 12 verbundenen Handprogrammiergerät gelesen werden.
-
Anschließend kombiniert die Robotersteuervorrichtung 12 nacheinander die von den Speichern 16 der Einheiten erfassten Formmodelle 17 und erzeugt ein 3D-Modell des Gesamtroboters 11. Beispielsweise werden alle durch die entsprechenden Bereiche 17a1 bis 17a6 in 3 definierten Formmodelle 17 entsprechend den Positionen und Ausrichtungen der Einheiten der Roboter 11 kombiniert, wodurch ein 3D-Modell des Gesamtroboters 11 erzeugt wird.
-
Vor dem Erzeugen eines 3D-Modells des Gesamtroboters 11 wird eine ID-Nummer zum Identifizieren der Einheit umfassend den Speicher 16 vorzugsweise in den Speicher 16 geschrieben. Ferner liest die Robotersteuervorrichtung 12 beim Starten vorzugsweise eine ID-Nummer im Speicher von jeder Einheit und speichert die ID-Nummer von jeder Einheit in einer in der Robotersteuervorrichtung 12 angeordneten Speichereinheit. Somit kann beispielsweise, wenn die Gelenkeinheit 14B umfassend den Speicher 16 entfernt oder gegen eine andere ausgetauscht wird, die Robotersteuervorrichtung 12 beim Starten erkennen, dass eine ID-Nummer entsprechend der Gelenkeinheit 14B fehlt oder sich geändert hat. Das heißt die Robotersteuervorrichtung 12 kann eine Änderung der Einheitenkonfiguration des Roboters 11 erkennen.
-
Bei Erkennen einer Änderung der Einheitenkonfiguration liest die Robotersteuervorrichtung 12 Daten zu den Formmodellen 17 in den Speichern 16 der Einheiten und erzeugt ein neues 3D-Modell des Roboters 11 auf der Basis der Formmodelle 17.
-
Somit kann, wenn sich die austauschbaren mechanischen Einheiten im Roboter 11 ändern, das Robotersystem 10 gemäß der vorliegenden Ausführungsform automatisch ein 3D-Modell des Roboters 11 für die Robotersteuervorrichtung 12 ändern.
-
Wenn die Stromversorgung des Antriebskreises des Motors zum Antrieb der Gelenkwellen des Roboters 11 während eines Betriebs des Roboters 11 getrennt wird, kann der Roboter 11 über eine bestimmte Strecke auslaufen, bis der Roboter vom Trennen der Stromversorgung gestoppt wird. Wenn eine Bewegung am Roboter 11 eingelernt wird, um zu verhindern, dass der Roboter 11 in einen Bewegungseinschränkungsbereich eindringt, wird die Auslaufstrecke vorzugsweise berücksichtigt.
-
Somit wird eine Stoppposition des Formmodells 17 in jeder Einheit des auslaufenden Roboters 11 vorzugsweise aufgrund einer aktuellen Position, einer Bewegungsgeschwindigkeit und einer Bewegungsrichtung des Formmodells 17 geschätzt. Ein vergrößertes 3D-Modell des Roboters 11 wird vorzugsweise so erstellt, dass es die Formmodelle 17 an der Stoppposition und der aktuellen Position umfasst. Das Erstellen solch eines 3D-Modells erfordert einen Parameter zum Schätzen der Auslaufstrecke von jeder Einheit des Roboters 11. Dies ist darauf zurückzuführen, dass die Auslaufstrecke von jeder Einheit berechnet werden muss, um die Stoppposition des Formmodells nach dem Auslaufen zu schätzen.
-
Somit wird zusätzlich zum Formmodell 17 der entsprechenden Einheit der Parameter zum Schätzen einer Auslaufstrecke vorab im Speicher 16 von jeder Einheit gespeichert.
-
Beispielsweise wird der Parameter zum Schätzen einer Auslaufstrecke empirisch ermittelt und kann ein für die Bewegungsgeschwindigkeit des Roboters 11 ermittelter proportionaler Koeffizient sein. Je höher die Bewegungsgeschwindigkeit des Roboters 11 ist, desto länger ist die Auslaufstrecke des Roboters 11. Somit wird solch ein proportionaler Koeffizient als Parameter zum Schätzen einer Auslaufstrecke verwendet. Das heißt der Parameter zum Schätzen einer Auslaufstrecke wird zum Schätzen einer entsprechend der Bewegungsgeschwindigkeit des Roboters 11 ermittelten Auslaufstrecke verwendet.
-
Beim Feststellen einer Änderung der Einheitenkonfiguration entsprechend der ID-Nummer liest die Steuervorrichtung 12 den Parameter zum Schätzen einer Auslaufstrecke im Speicher 16 von jeder Einheit zusammen mit den Daten zum Formmodell 17. Insbesondere wenn sich die austauschbaren mechanischen Einheiten im Roboter 11 ändern, kann das Robotersystem 10 der vorliegenden Ausführungsform automatisch den Parameter zum Schätzen einer Auslaufstrecke für die Robotersteuervorrichtung 12 sowie die Formmodelle 17 ändern.
-
Nachfolgend ist die Robotersteuervorrichtung 12 des Robotersystems 10 ausführlicher beschrieben. Im folgenden Beispiel ist zum Zwecke der Beschreibung der Speicher 16 in jeder der mechanischen Einheiten 13A bis 13C enthalten.
-
4 zeigt ein Blockdiagramm zur Darstellung der Bestandteile der Robotersteuervorrichtung 12 im Robotersystem 10.
-
Wie in 4 dargestellt umfasst die Robotersteuervorrichtung 12 der vorliegenden Ausführungsform eine Einheitenpositions-Erfassungseinheit 21, eine Robotermodell-Erstellungseinheit 22, eine Einstelleinheit 23 und eine Interferenzverifizierungseinheit 24. Die Robotersteuervorrichtung 12 umfasst vorzugsweise ferner eine Auslaufstrecken-Berechnungseinheit 25 und eine Belegungsbereich-Berechnungseinheit 26 wie in 4 dargestellt. Die vorliegende Erfindung muss diese Bestandteile nicht immer umfassen.
-
Die Einheitenpositions-Erfassungseinheit 21 erfasst die Positionen der mechanischen Einheiten 13A bis 13C des Roboters 11 in vorgegebenen Intervallen. Die mechanischen Einheiten 13A bis 13C des Roboters 11 umfassen Antriebswellen (auch als Gelenkwellen bezeichnet), die von den Motoren (nicht dargestellt) in den entsprechenden Antriebseinheiten 15A bis 15C zum Drehen der Gelenkeinheiten 14A bis 14C angetrieben werden.
-
Ferner liest die Einheitenpositions-Erfassungseinheit 21 die Winkel der Antriebswellen des Roboters 11 in den vorgegebenen Intervallen von Lagegebern 31, beispielsweise auf den entsprechenden Antriebswellen angeordneten Gebern, wodurch die aktuelle Position, Ausrichtung, Bewegungsgeschwindigkeit und Bewegungsrichtung von jeder der mechanischen Einheiten 13A bis 13C erfasst werden.
-
Die Robotermodell-Erstellungseinheit 22 erstellt ein 3D-Modell des Roboters 11 auf der Basis der Positionen der mechanischen Einheiten 13A bis 13C, wobei die Positionen von der Einheitenpositions-Erfassungseinheit 21 erfasst werden, und der in den Speichern 16 der mechanischen Einheiten 13A bis 13C gespeicherten Formmodelle 17. Insbesondere werden die Formmodelle 17 in den Speichern 16 der mechanischen Einheiten 13A bis 13C nacheinander auf der Basis der Positionen der mechanischen Einheiten 13A bis 13C kombiniert, wodurch ein 3D-Modell des Roboters 11 erstellt wird. Dies ändert ebenfalls das Aussehen des 3D-Modells des Roboters 11 in Reaktion auf den Bewegungsbefehl an den Roboter 11. Das heißt die Bereichsposition des 3D-Modells des Roboters 11 ändert sich entsprechend einer Änderung der Positionen und Ausrichtungen der mechanischen Einheiten 13A bis 13C des Roboters 11.
-
Die Einstelleinheit 23 hat die Funktion des Einstellens des Bewegungseinschränkungsbereichs des Roboters 11. Beispielsweise kann ein Benutzer mit der Einstelleinheit 23 einen Bewegungseinschränkungsbereich, das heißt einen Bereich, in dem der Benutzer kein Betreiben des Roboters 11 beabsichtigt, einstellen. Die Einstelleinheit 23 kann ein Handprogrammiergerät 27 umfassen, das mit der Robotersteuervorrichtung 12 oder einer Eingabeeinheit, beispielsweise einem Touchscreen oder einer Tastatur, die in einem Personalcomputer enthalten ist, usw., verbunden ist. Mit der Einstelleinheit 23 eingestellte Daten zum Bewegungseinschränkungsbereich werden an der Interferenzverifizierungseinheit 24 eingegeben und darin gespeichert.
-
Die Interferenzverifizierungseinheit 24 verifiziert, ob ein 3D-Modell des Roboters 11 mit dem mit der Einstelleinheit 23 eingestellten Bewegungseinschränkungsbereich interferiert, wobei das 3D-Modell von der Robotermodell-Erstellungseinheit 22 erstellt wird. Wenn die Interferenzverifizierungseinheit 24 verifiziert, dass das 3D-Modell des Roboters 11 mit dem Bewegungseinschränkungsbereich interferiert, trennt die Robotersteuervorrichtung 12 die Stromversorgung des Roboters 11 oder beschränkt die Bewegungsgeschwindigkeit des Roboters 11.
-
5 zeigt schematisch ein 3D-Modell und den Bewegungseinschränkungsbereich des Roboters 11. Wie in 5 dargestellt erstellt die Robotermodell-Erstellungseinheit 22 ein 3D-Modell 28 des Roboters 11. Das 3D-Modell 28 wird durch Kombinieren aller in 3 dargestellten Bereiche 17a1 bis 17a6 erstellt. Ferner wird ein Bewegungseinschränkungsbereich 29 (ein schattierter Teil in 5) des Roboters 11 für die Robotersteuervorrichtung 12 durch einen Benutzer eingestellt und es wird anschließend ein Einlernvorgang am Roboter 11 durchgeführt. Wie in 5 dargestellt kann die Robotersteuervorrichtung 12 beispielsweise den Roboter 11 stoppen, wenn das 3D-Modell 28 des Roboters 11 mit dem Bewegungseinschränkungsbereich 29 interferiert.
-
Beim Einstellen des Bewegungseinschränkungsbereichs 29 ist es in vielen Fällen einfacher, einen Bereich, in den der Roboter 11 eindringen darf, das heißt einen Bewegungserlaubnisbereich, festzulegen statt einen Bereich zu definieren, in den der Roboter 11 nicht eindringen darf. In diesem Fall, wenn sich das 3D-Modell 28 aus dem Bewegungserlaubnisbereich heraus bewegt, trennt die Robotersteuervorrichtung 12 vorzugsweise die Stromversorgung des Roboters 11, um den Roboter 11 zu stoppen.
-
Der Bewegungseinschränkungsbereich 29 oder der Bewegungserlaubnisbereich werden vorzugsweise eingestellt, wenn der Roboter 11 installiert wird oder wenn sich die mechanischen Einheiten des Roboters 11 ändern. Beispielsweise ist der Bewegungseinschränkungsbereich 29 als ein Außenbereich eines Quaders wie in 5 dargestellt definiert. In diesem Fall werden die Koordinatenwerte eines Scheitelpunkts des Quaders als numerische Werte von der Einstelleinheit 23 an der Interferenzverifizierungseinheit 24 eingegeben und darin gespeichert. Der Bewegungseinschränkungsbereich 29 oder der Bewegungserlaubnisbereich können als mehrere Bereiche definiert sein und die Form des Bereichs ist nicht auf einen Quader beschränkt.
-
6 zeigt einen Belegungsbereich 30 eines 3D-Modells des Roboters 11 und den Bewegungseinschränkungsbereich 29, wenn der Roboter 11 beim Stoppen ausläuft.
-
Selbst nach dem Trennen der Stromversorgung des Motors des Roboters 11 laufen die Wellen des Roboters 11 noch ein wenig nach. Somit wird der nach dem Trennen der Stromversorgung auslaufende Roboter 11 an einer Position gestoppt, die vom eingestellten Bewegungseinschränkungsbereich 29 um eine Auslaufstrecke des Roboters 11 abweicht.
-
Durch Verwenden des Parameters zum Schätzen der Auslaufstrecke, wobei der Parameter im Speicher 16 von jeder Einheit gespeichert ist, schätzt die Robotersteuervorrichtung 12 der vorliegenden Ausführungsform vorzugsweise den Belegungsbereich 30, der einen virtuellen Raum abdeckt, bis das 3D-Modell 28 des auslaufenden Roboters 11 gestoppt wird wie in 6 dargestellt. Wenn der Belegungsbereich 30 mit dem Bewegungseinschränkungsbereich 29 interferiert, trennt die Robotersteuervorrichtung 12 vorzugsweise die Stromversorgung des Roboters 11, um den Roboter 11 zu stoppen, oder beschränkt die Bewegungsgeschwindigkeit des Roboters 11.
-
Aus diesem Grund umfasst wie in 4 dargestellt die Robotersteuervorrichtung 12 die Auslaufstrecken-Berechnungseinheit 25 und die Belegungsbereich-Berechnungseinheit 26. Die Parameter zum Schätzen der Auslaufstrecken der entsprechenden mechanischen Einheiten 13A bis 13C werden vorab in den Speichern 16 der mechanischen Einheiten 13A bis 13C gespeichert, die nach dem Trennen der Stromversorgung des Roboters 11 auslaufen können.
-
Die Auslaufstrecken-Berechnungseinheit 25 berechnet die Auslaufstrecken der entsprechenden mechanischen Einheiten 13A bis 13C auf der Basis der Positionen und Bewegungsgeschwindigkeiten der mechanischen Einheiten 13A bis 13C und der Parameter zum Schätzen der Auslaufstrecken in den Speichern 16 der mechanischen Einheiten. Die Positionen der mechanischen Einheiten 13A bis 13C werden von der Einheitenpositions-Erfassungseinheit 21 erfasst.
-
Auf der Basis der berechneten Auflaufstrecken der mechanischen Einheiten 13A bis 13C berechnet die Belegungsbereich-Berechnungseinheit 26 den Belegungsbereich 30, der einen virtuellen Raum abdeckt, bis das 3D-Modell 28 des auslaufenden Roboters 11 gestoppt wird.
-
Beispielsweise schätzt die Belegungsbereich-Berechnungseinheit 26 die Stopppositionen der Formmodelle 17 der auslaufenden mechanischen Einheiten 13A bis 13C auf der Basis der aktuellen Positionen, der Bewegungsgeschwindigkeiten, der Bewegungsrichtungen und der berechneten Auslaufstrecken der mechanischen Einheiten 13A bis 13C. Insbesondere wird die Stoppposition des Formmodells nach dem Auslaufen durch Addieren der berechneten Auslaufstrecke zur aktuellen Position des Formmodells 17 in der Bewegungsrichtung des Formmodells 17 geschätzt. Ferner ermittelt die Belegungsbereich-Berechnungseinheit 26 den Belegungsbereich 30 des 3D-Modells des Roboters 11, so dass die Formmodelle 17 an der Stoppposition und einer aktuellen Position enthalten sind.
-
Wenn Auslaufstrecken-Berechnungseinheit 25 und die Belegungsbereich-Berechnungseinheit 26 in der Robotersteuervorrichtung 12 enthalten sind, verifiziert die Interferenzverifizierungseinheit 24 vorzugsweise, ob der von der Belegungsbereich-Berechnungseinheit 26 berechnete Belegungsbereich 30 mit dem vorgegebenen Bewegungseinschränkungsbereich 29 interferiert.
-
Die Robotersteuervorrichtung 12 umfasst vorzugsweise eine Anzeigeeinheit 32, die eine grafische Anzeige des 3D-Modells 28, des Bewegungseinschränkungsbereichs 29 und des Belegungsbereichs 30 des Roboters 11 liefert. Das heißt ein Benutzer kann den Roboter 11 während des Verifizierens auf Interferenzen zwischen dem 3D-Modell 28 des Roboters 11 und dem Bewegungseinschränkungsbereichs 29 an der Anzeigeeinheit 32 einlernen. Die Anzeigeeinheit 32 kann beispielsweise ein an einem mit der Robotersteuervorrichtung 12 verbundenen Hostcomputer angeordnetes Anzeigefeld umfassen. Ein am Handprogrammiergerät 27 angeordneter Anzeigebildschirm kann als Anzeigeeinheit 32 dienen.
-
7 zeigt ein Flussdiagramm zum Erläutern eines Beispiels des Verarbeitungsablaufs der in 4 dargestellten Robotersteuervorrichtung 12. Nachfolgend sind in Bezug auf 7 die Betriebsvorgänge der in 4 dargestellten Robotersteuervorrichtung 12 beschrieben.
-
In Schritt S11 von 7 wird der Bewegungseinschränkungsbereich 29 an der Interferenzverifizierungseinheit 24 durch die Einstelleinheit 23 eingegeben. Im Speicher 16 von jeder Einheit werden das Formmodell 17 der entsprechenden Einheit, der Parameter zum Schätzen einer Auslaufstrecke und eine ID-Nummer vorab gespeichert. In diesem Fall bedeutet „jede Einheit” jede der mechanischen Einheiten 13A bis 13C, der Gelenkeinheiten 14A bis 14C und der Antriebseinheiten 15A bis 15C.
-
Ein Benutzer verbindet die Einheiten zum Montieren des Roboters 11, installiert den Roboter 11, verbindet den Roboter 11 und die Robotersteuervorrichtung 12 und startet anschließend die Robotersteuervorrichtung 12.
-
Zunächst liest in Schritt S11 von 7 die Robotermodell-Erstellungseinheit 22 der Robotersteuervorrichtung 12 eine ID-Nummer im Speicher 16 von jeder Einheit, was der Robotersteuervorrichtung 12 ein Verifizieren ermöglicht, ob sich die ID-Nummer von jeder Einheit geändert hat oder nicht.
-
Infolge der Verifizierung fährt der Prozess mit Schritt S14 fort, wenn sich die ID-Nummer von jeder Einheit nicht geändert hat. Wenn sich die ID-Nummer von jeder Einheit nicht geändert hat, liest die Robotermodell-Erstellungseinheit 22 in Schritt S12 Daten zum im Speicher 16 von jeder Einheit gespeicherten Formmodell 17 und den Parameter zum Schätzen einer Auslaufstrecke.
-
In Schritt S13 erstellt die Robotermodell-Erstellungseinheit 22 ein 3D-Modell des Roboters 11 aus den aktuellen Positionen der Einheiten und den Formmodellen 17 der Einheiten. Die aktuellen Positionen der Einheiten werden von der Einheitenpositions-Erfassungseinheit 21 erfasst.
-
Anschließend wird in Schritt S14 die Interferenzverifizierung umfassend die Schritte S15 bis S20 so viele Male wiederholt, wie die Zahl von vorgegebenen Bewegungsbereichen (Betriebsbereichen) beträgt. Das heißt nach Schritt S13 wird die Interferenz jedes Mal verifiziert, wenn ein Benutzer nacheinander die Enden des Roboters 11 zu den vorgegebenen Bewegungsbereichen mit dem Handprogrammiergerät 27 führt usw.
-
Insbesondere berechnet in Schritt S15 die Auslaufstrecken-Berechnungseinheit 25 der Robotersteuervorrichtung 12 die Auslaufstrecke von jeder Einheit auf der Basis der aktuellen Position und Bewegungsgeschwindigkeit von jeder Einheit und des Parameters zum Schätzen einer Auslaufstrecke im Speicher 16 von jeder Einheit.
-
Anschließend berechnet in Schritt S16 die Belegungsbereich-Berechnungseinheit 26 der Robotersteuervorrichtung 12 den Belegungsbereich 30 des 3D-Modells des Roboters 11 auf der Basis der berechneten Auslaufstrecken der Einheiten unter Berücksichtigung des Auslaufens des gestoppten Roboters.
-
In Schritt S17 verifiziert die Interferenzverifizierungseinheit 24 der Robotersteuervorrichtung 12, ob das auf der Basis des Bewegungsbefehls verschobene 3D-Modell 28 des Roboters 11 mit dem eingestellten Bewegungseinschränkungsbereich 29 interferiert. Infolge der Verifizierung fährt der Prozess mit Schritt S18 fort, wenn das 3D-Modell 28 des Roboters 11 mit dem Bewegungseinschränkungsbereich 29 interferiert. In Schritt S18 stoppt die Robotersteuervorrichtung 12 den Roboter 11 und der Prozess fährt anschließend mit Schritt S20 fort. Der Prozess fährt mit Schritt S19 fort, wenn das auf der Basis des Bewegungsbefehls verschobene 3D-Modell 28 des Roboters 11 mit dem Bewegungseinschränkungsbereich 29 nicht interferiert.
-
In Schritt S19 verifiziert die Interferenzverifizierungseinheit 24, ob der berechnete Belegungsbereich 30 des 3D-Modells und der eingestellte Bewegungseinschränkungsbereich 29 miteinander interferieren. Infolge der Verifizierung fährt der Prozess mit Schritt S18 fort, wenn der berechnete Belegungsbereich 30 des 3D-Modells mit dem Bewegungseinschränkungsbereich 29 interferiert. In Schritt S18 stoppt die Robotersteuervorrichtung 12 den Roboter 11 und der Prozess fährt anschließend mit Schritt S20 fort. In Schritt S19 fährt der Prozess mit Schritt S20 fort, wenn der berechnete Belegungsbereich 30 des 3D-Modells nicht mit dem Bewegungseinschränkungsbereich 29 interferiert.
-
Anschließend werden in Schritt S20 die Betriebsvorgänge der Robotersteuervorrichtung 12 abgeschlossen, wenn die Interferenzverifizierung so viele Male gleich der Zahl von erwünschten Bewegungsbereichen wiederholt wird.
-
Wie zuvor beschrieben erfasst, wenn sich die Konfiguration des Roboters 11 durch das Austauschen der Einheiten ändert, die Robotersteuervorrichtung 12 der vorliegenden Ausführungsform die in den Speichern 16 der Einheiten 11 gespeicherten Formmodelle 17, wodurch automatisch das 3D-Modell 28 des Roboters erstellt wird. Wenn das 3D-Modell 28 des Roboters mit dem virtuellen Bewegungseinschränkungsbereich 29 beim Betrieb des Roboters 11 durch die Robotersteuervorrichtung 12 interferiert, kann die Stromversorgung des Roboters 11 getrennt oder die Bewegungsgeschwindigkeit des Roboters 11 beschränkt werden.
-
Ferner kann die Robotersteuervorrichtung 12 der vorliegenden Ausführungsform den Belegungsbereich 30 des 3D-Modells des Roboters 11 unter Berücksichtigung einer Auslaufstrecke des Roboters 11, bis der Roboter 11 gestoppt wird, nachdem die Stromversorgung des betriebenen Roboters 11 getrennt ist, berechnen. Ferner kann unter Verwendung des Belegungsbereichs 30 des 3D-Modells unter Berücksichtigung der Auslaufstrecke verifiziert werden, ob das 3D-Modell des Roboters mit dem Bewegungseinschränkungsbereich interferiert, was einem Benutzer das Planen eines sichereren Bewegungsweges und das Einlernen des Weges am Roboter 11 ermöglicht.
-
Die vorliegende Erfindung wurde zuvor gemäß der typischen Ausführungsform beschrieben. Einem Fachmann ist klar, dass die Ausführungsform geändert werden kann und verschiedene weitere Änderungen, Auslassungen und Ergänzungen vorgenommen werden können, ohne vom Umfang der vorliegenden Erfindung abzuweichen. Die vorhergehenden Ausführungsformen können im Rahmen der vorliegenden Erfindung kombiniert werden.
-
Gemäß einem Aspekt der vorliegenden Offenbarung können, wenn sich die austauschbaren mechanischen Einheiten des Roboters ändern, das 3D-Modell des Roboters und der Parameter zum Schätzen einer Auslaufstrecke automatisch für die Robotersteuervorrichtung geändert werden.
-
Gemäß einem weiteren Aspekt der vorliegenden Offenbarung kann, wenn sich die Konfiguration des Roboters durch das Austauschen der mechanischen Einheiten ändert, die Robotersteuervorrichtung die Formmodelle der mechanischen Einheiten erfassen und automatisch das 3D-Modell des Gesamtroboters erstellen, wobei die Formmodelle in den Speichern gespeichert sind. Wenn das 3D-Modell des Roboters mit einem virtuellen Bewegungseinschränkungsbereich beim Betrieb des Roboters durch die Robotersteuervorrichtung interferiert, kann die Stromversorgung des Roboters getrennt oder die Bewegungsgeschwindigkeit des Roboters beschränkt werden.
-
Gemäß weiteren acht Aspekten der vorliegenden Offenbarung kann der Belegungsbereich des 3D-Modells des Roboters unter Berücksichtigung einer Auslaufstrecke des Roboters, bis der Roboter gestoppt wird, nachdem die Stromversorgung des betriebenen Roboters getrennt ist, berechnet werden. Ferner kann unter Verwendung der Belegungsbereich des 3D-Modells unter Berücksichtigung einer Auslaufstrecke verifiziert werden, ob das 3D-Modell des Roboters mit dem Bewegungseinschränkungsbereich interferiert, was einem Benutzer das Planen eines sichereren Bewegungsweges und das Einlernen des Weges am Roboter ermöglicht.
-
Gemäß einem weiteren Aspekt der vorliegenden Offenbarung kann ein Benutzer den Roboter während des Verifizierens auf Interferenzen zwischen dem 3D-Modell des Roboters und dem Bewegungseinschränkungsbereich an der Anzeigeeinheit einlernen.
-
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 3910134 [0005, 0006, 0007, 0008]