-
Querverweis auf verwandte
Anmeldungen
-
Die
vorliegende Anmeldung bezieht sich auf die
japanische Patentanmeldung Nr. 2007-177387 , die
am 5. Juli 2007 anmeldet wurde und die hier durch Bezugnahme mit
einbezogen wird.
-
Hintergrund der Erfindung
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft ein Robotersystem, welches Vielgelenk-Roboter
verwendet, und ein Werkstück-Übergabeverfahren,
wobei das System die Möglichkeit bietet, eine einzelne
Bewegung in eine Bewegung in einer einzelnen Ebene und in eine Bewegung
in einer Richtung senkrecht zu der Ebene aufzuteilen.
-
Beschreibung des Standes der
Technik
-
Vielgelenk-Roboter
besitzen eine Vielzahl von Gelenken und sind dafür ausgelegt,
eine gewünschte Bewegung durch Kombination der Bewegung
von jedem der Gelenke zu realisieren. Ein solcher Vielgelenk-Roboter
wird in solcher Weise gesteuert, daß die Gelenke eine Vielzahl
von vorbestimmten Lehr-Punkten passieren. Bei der Bewegung zwischen
den Lehr-Punkten werden die Gelenke oder Verbindungsstellen basierend
auf einem trapezförmigen Geschwindigkeitsmuster gesteuert
und geregelt. Spezifischer gesagt umfaßt jedes Gelenk oder
jede Verbindung einen Servomotor, um das Gelenk oder die Verbindung
anzutreiben, und ermöglicht eine maximale Geschwindigkeit
und eine maximale Beschleunigung, die entsprechend den Charakteristika
des Servomotors im Voraus eingestellt werden. Bei der Bewegung zwischen
zwei Lehr- Punkten wird das Gelenk vom Startpunkt aus beschleunigt, das
heißt von einem Lehr-Punkt aus, und zwar mit der maximalen
Beschleunigung, um die maximale Geschwindigkeit zu erreichen. Wenn
die maximale Geschwindigkeit erreicht worden ist, wird die Bewegung
des Gelenks beibehalten, und zwar auf der maximalen Geschwindigkeit.
Dann wird das Gelenk an der Stelle des Beginns der Verzögerung
verzögert, und zwar in einer Rate gemäß einer
maximalen Verzögerung, um die Bewegung zu dem Endpunkt
hin zu vervollständigen, das heißt zu dem anderen Lehr-Punkt
hin.
-
Während
das Geschwindigkeitsmuster von jedem Gelenk in der oben beschriebenen
Weise erzeugt wird, werden die einzelnen Gelenke oder Verbindungsstellen
allgemein so gesteuert oder geregelt, daß die Bewegungen
gleichzeitig gestartet werden und die Bewegungen gleichzeitig beendet
werden, damit der Roboter in glatter Weise die Pfade zwischen den
Lehr-Punkten abfahren kann. Um eine solche Steuerung oder Regelung
zu ermöglichen, wird das Geschwindigkeitsmuster für
jedes Gelenk oder jede Verbindung individuell zunächst
basierend auf der maximalen Geschwindigkeit und der maximalen Beschleunigung
eingestellt, und es werden dann die Geschwindigkeiten und die Beschleunigungen der
einzelnen Gelenke so zurückgestellt, daß alle Gelenke
gleichzeitig mit der Bewegung starten können und gleichzeitig
ihre Bewegungen beenden können oder gleichzeitig die Beschleunigung
starten können und gleichzeitig die Verzögerung
beenden können. Im Folgenden wird ein Verfahren zum Steuern
der individuellen Gelenke oder Verbindungsstellen mit den Geschwindigkeiten
und Beschleunigungen, die in der oben beschriebenen Weise eingestellt werden,
als „Synchronsteuerung (sync control)" bezeichnet.
-
Neben
den oben erläuterten Synchron-Steuer-Robotern sind auch
solche Roboter bekannt, die unter einer Nicht-Synchronsteuerung
bewegt werden, wie beispielsweise in dem offengelegten
japanischen Patent Nr. 6-332510 offenbart
ist. Spezifischer gesagt ist die Synchronsteuerung sehr effektiv,
wenn gewünscht wird, daß der Roboter sich entlang
einer geeigneten Bahn bewegen soll. Jedoch erfordert eine solche
Synchronsteuerung das Vorhandensein einer Achse, die eine maximale
Beschleunigung und Verzögerung in der Rate der maximalen
Beschleunigung außer Bereitschaft setzt. Daher kann in
einem Fall, bei dem eine Hochgeschwindigkeitsbewegung zwischen den
Lehr- Punkten gewünscht wird, die Qualität des
Servomotors an jedem der Gelenke oder Verbindungspunkte nicht in
ausreichender Weise realisiert werden, wodurch ein Zeitverlust auftritt.
Aus diesem Grund sind bei der oben erläuterten Technik entsprechend
der angegebenen Literatur alle die Gelenkstellen oder Verbindungsstellen
oder gelenkigen Verbindungen dafür ausgelegt, unabhängig
gesteuert zu werden, wenn eine Hochgeschwindigkeitsbewegung zwischen
den Lehr-Punkten gewünscht wird, um eine Hochgeschwindigkeits-Operation
zu erreichen.
-
Andererseits
offenbart das offengelegt
japanische
Patent Nr. 11-277468 eine Technik, bei der die Qualität
bzw. Performance einer Antriebsquelle dafür ausgelegt ist,
um in maximaler Weise verwendet zu werden, und zwar unter Verwendung
eines Verfahrens, welches von der Synchronsteuerung verschieden
ist. Gemäß dieser Technik wird jedes Mal, wenn eine
Sampling-Zeitperiode verstrichen ist, die Position von jedem Gelenk
oder jeder gelenkigen Verbindungsstelle basierend auf einem vorbestimmten
Geschwindigkeitsmuster berechnet, und zwar vom Punkt des Verstreichens
der Sampling-Zeit an bis zu dem Punkt des Verstreichens der nachfolgenden Sampling-Zeit.
Es wird dann mit Hilfe der Position des Gelenkes oder der gelenkigen
Verbindungsstelle, die auf diese Weise berechnet wurde, und zwar als
eine tentative Position, eine Berechnung durchgeführt,
und zwar hinsichtlich des Antriebs-Drehmoments, welches für
die Bewegung erforderlich ist, um die tentative Position zu erreichen.
Wenn das berechnete Antriebs-Drehmoment gleich ist mit oder kleiner ist
als ein Grenzwert, wird die tentative Position als befehligte Position
bestimmt, und es erfolgt dann eine Steuerung in solcher Weise, daß das
Gelenk oder die gelenkige Verbindungsstelle sich zu der befehligten
Position in einer vorbestimmten Einheits-Steuerzeit bewegen kann.
Wenn das berechnete Antriebs-Drehmoment größer
ist als der Grenzwert, wird der Punkt nach dem Verstreichen einer korrigierten
Sampling-Zeit, die kürzer ist als die oben angegebene Sampling-Zeit,
als eine befehligte Position bestimmt, und zwar basierend auf dem
vorbestimmten Geschwindigkeitsmuster. Es wird dann die Steuerung
in solcher Weise durchgeführt, daß das Gelenk
oder die gelenkige Verbindungsstelle sich zu der befehligten Position
in einer vorbestimmten Einheits-Steuerzeit bewegen kann.
-
Es
kann beispielsweise ein Fall auftreten, bei dem ein Werkstück
zwischen zwei Robotern übergeben wird, die sich in Hochgeschwindigkeitsbewegungen
befinden. In diesem Fall senkt der eine Roboter seine Hand beim
Empfangen des Werkstückes von dem anderen Roboter ab, während
der andere Roboter seine Hand nach der Übergabe des Werkstückes anhebt.
Beim Absenken oder Anheben der Hände ermöglicht
es die Synchronsteuerung, daß die Hände der Roboter
verzögert werden. Obwohl somit die Werkstücks-Übergabe
zwischen zwei Robotern, die sich mit unterschiedlicher Geschwindigkeit
bewegen, ermöglicht wurde, und zwar mit zunehmender Zykluszeit,
sind die Hände der Roboter einer übermäßig großen
Last ausgesetzt.
-
Zusammenfassung der Erfindung
-
Die
vorliegende Erfindung wurde im Lichte der oben beschriebenen Umstände
entwickelt, und es ist Aufgabe der vorliegenden Erfindung, einen Vielgelenk-Roboter
zu schaffen, der die Fähigkeit hat, seine Hand in einer
vorbestimmten Beziehung zu einem anderen Roboter zu bewegen, und
auch Aufgabe, ein Verfahren zur Übergabe eines Werkstückes
zu schaffen, welches die Möglichkeit bietet, eine Vergrößerung
der Zykluszeit zu verhindern, wenn ein Werkstück zwischen
zwei sich bewegenden Robotern übergeben wird, und um eine übermäßige
Belastung zu verhindern, die auf die Hände der Roboter aufgebracht
wird, und zwar bei der Übergabe des Werkstückes
zwischen den Robotern.
-
Bei
der Erfindung wird gemäß einem Aspekt eine Bewegungs-Startposition
und eine Bewegungs-Endposition jeden Vielgelenk-Roboter gelehrt. Die
Bewegung zwischen zwei Positionen wird in eine erste Vektorkomponente
in einer einzelnen Ebene und in eine zweite Vektorkomponente senkrecht
zu der einzelnen Ebene aufgeteilt. Im Verlaufe der Bewegung in der
Richtung der ersten Vektorkomponente wird der Roboter in der Richtung
der zweiten Vektorkomponente in einer zeitlichen Weise bewegt, um an
der Bewegungs-Endposition anzukommen. Somit kann in einem Fall,
bei dem ein Werkstück zwischen zwei Vielgelenk-Robotern übergeben
wird, während sich die zwei Vielgelenk-Roboter in Bewegung
befinden, das Lehren von den zwei Positionen, das heißt der
Startposition und der Endposition der Übergabebewegung,
an jedem der zwei Roboter vorgenommen, und dies kann die Möglichkeit
schaffen, daß jeder der Roboter die Werkstück-Übergabebewegung in
einer zeitlichen Weise durchführt, während die zwei
Roboter sich mit der gleichen Geschwindigkeit bewegen können.
-
Wenn
bei der Erfindung gemäß einem anderen Aspekt die
Hand (das heißt das Spitzenende) eines ersten Vielgelenk-Roboters
an einer ersten vorbestimmten Position in der Richtung der ersten
Vektorkomponente angekommen ist, kann der zweite Vielgelenk-Roboter
seine Bewegung starten. Wenn dann die Hand des ersten Vielgelenk-Roboters
an einer zweiten vorbestimmten Position angekommen ist, beginnt
sich die Hand des ersten Vielgelenk-Roboters in der Richtung der
zweiten Vektorkomponente zu bewegen. Somit kann der erste Vielgelenk-Roboter
unmittelbar bewegt werden, während eine vorbestimmte Beziehung
mit dem zweiten Vielgelenk-Roboter vorhanden ist.
-
Bei
der Erfindung startet ein erster Vielgelenk-Roboter gemäß einem
anderen Aspekt, sich in der Richtung der ersten Vektorkomponente
zu bewegen, wenn detektiert wurde, daß ein zweiter Vielgelenk-Roboter
an einer vorbestimmten Position angekommen ist. Dann startet der
erste Vielgelenk-Roboter nach der Ankunft an einer vorbestimmten
Position in der Richtung der ersten Vektorkomponente, seine Bewegung
in Richtung einer zweiten Vektorkomponente. Somit kann sich der
erste Vielgelenk-Roboter mit der gleichen Geschwindigkeit wie der
zweite Vielgelenk-Roboter bewegen, wobei eine vorbestimmte Beziehung
mit dem zweiten Vielgelenk-Roboter hergestellt ist.
-
Bei
der Erfindung wird gemäß einem noch anderen Aspekt
ein Werkstück, welches durch einen ersten Vielgelenk-Roboter
gehalten wird, und zwar unter zwei Vielgelenk-Robotern, an einen
zweiten Vielgelenk-Roboter übergeben. Wenn in diesem Fall die
Hand des ersten Vielgelenk-Roboters das Werkstück festgeklemmt
hält und an einer ersten vorbestimmten Position in einer
ersten Ebene angekommen ist, wird die Tatsache der Ankunft dem zweiten Vielgelenk-Roboter über
eine Kommunikations-Einrichtung mitgeteilt. Wenn der erste Roboter
sich zu einer zweiten vorbestimmten Position bewegt hat, wird das
Festklemmen des Werkstücks freigegeben. Der erste Roboter
startet dann die Bewegung in der Richtung senkrecht zu der ersten
Ebene. Auf der anderen Seite beginnt der zweite Roboter nach dem Empfang
der Ankunfts-Benachrichtigung des ersten Roboters an der ersten
vorbestimmten Position vermittels der Kommunikations-Einrichtung,
wobei der zweite Roboter das zu übergebende Werkstück
empfangen soll, seine Bewegung in der gleichen Richtung wie der
Bewegungsrichtung des ersten Roboters in einer zweiten Ebene parallel
zur ersten Ebene, in welcher der erste Roboter sich in Bewegung
befindet. Nach der Ankunft an einer vorbestimmten Position in der
zweiten Ebene beginnt der zweite Roboter mit einer Bewegung in einer
spezifischen Richtung senkrecht zu der zweiten Ebene, das heißt,
in einer Richtung zu ersten Ebene hin, in welcher die Hand des ersten
Roboters in Bewegung ist. Der zweite Roboter kann dann das Werkstück
festklemmen, und zwar während der Periode von dem Punkt
an, wenn die Hand des zweiten Roboters an der ersten Ebene angekommen
ist und seine Bewegung mit der gleichen Geschwindigkeit wie derjenigen
der Hand des ersten Roboters gestartet hat, bis zu dem Punkt, wenn
die Hand des ersten Roboters an der zweiten vorbestimmten Position
angelangt ist. Somit kann dann das Werkstück zwischen den
zwei Vielgelenk-Robotern übergeben werden, während
die zwei Vielgelenk-Roboter sich mit der gleichen Geschwindigkeit
bewegen.
-
Kurze Beschreibung der Zeichnungen
-
In
den Zeichnungen zeigen:
-
1 eine
perspektivische Ansicht, die zwei Vielgelenk-Roboter veranschaulicht;
-
2 ein
Blockdiagramm, welches eine Steuerkonfiguration eines Roboters veranschaulicht;
-
3 eine
Darstellung, die ein Geschwindigkeitsmuster wiedergibt;
-
4 eine
perspektivische Ansicht, die eine Vektorteilung darstellt;
-
5A ein
schematisches Diagramm, welches eine Werkstück-Übergabebewegung
zwischen einem ersten Roboter und einem zweiten Roboter veranschaulicht,
und zwar gemäß einer Ausführungsform
der vorliegenden Erfindung;
-
5B ein
Werkstück-Übergabebewegungs-Programm für
den ersten Roboter gemäß der Ausführungsform;
-
5C ein
Werkstück-Übergabebewegungs-Programm für
den zweiten Roboter gemäß der Ausführungsform;
-
6 ein
Flussdiagramm, welches die Inhalte des Lehr-Vorganges veranschaulicht;
-
7 Geschwindigkeitsmuster-Diagramme, wobei
(A) ein Geschwindigkeitsmuster-Diagramm einer ersten Vektorkomponente/Richtung
für den ersten Roboter bei der Werkstück-Übergabebewegung zeigt,
(B) ein Geschwindigkeitsmuster-Diagramm einer zweiten Vektorkomponente/Richtung
für den ersten Roboter bei der Werkstück-Übergabebewegung wiedergibt,
(C) ein Geschwindigkeitsmuster-Diagramm einer ersten Vektorkomponente/Richtung
des zweiten Roboters bei der Werkstück-Übergabeoperation
darstellt, und (D) ein Geschwindigkeitsmuster-Diagramm für
eine zweite Vektorkomponente/Richtung des zweiten Roboters bei der
Werkstück-Übergabebewegung wiedergibt; und
-
8 verschiedene
schematische Diagramme, welche die Zustände oder Bedingungen
des ersten und des zweiten Roboters jeweils an Punkten A bis D veranschaulichen,
die in 7 gezeigt sind.
-
Detaillierte Beschreibung
der bevorzugten Ausführungsformen
-
Es
wird ein Robotersystem gemäß einer Ausführungsform
der vorliegenden Erfindung nun unter Hinweis auf die beigefügten
Zeichnungen beschrieben. Das Roboter system der vorliegenden Ausführungsform
verwendet einen Vielgelenk-Roboter und ein Werkstück-Übergabeverfahren.
-
1 zeigt
ein Robotersystem gemäß der vorliegenden Ausführungsform.
Bei diesem Robotersystem sind zwei Vielgelenk-Roboter 1 und 2 (im
Folgenden einfach als Vielgelenk-Roboter oder Roboter bezeichnet)
unter Bildung eines geeigneten Raumes zwischen denselben platziert.
Von den zwei Robotern 1 und 2 befindet sich ein
erster Roboter 1 in einem Zustand gemäß einem
Festklemmen (Ergreifen) eines Werkstücks 3 (siehe 8),
welches einen Vor-Bearbeitungsprozeß absolviert hat, und
ist dabei, dieses an eine Stelle zu übergeben, an welcher
ein Nach-Werkstück-Prozeß ausgeführt
wird. Der zweite Roboter 2 ist im Begriff, das Werkstück 3 von
dem ersten Roboter 1 zu empfangen, um dasselbe zu dem Nach-Werkstück-Prozeß zu überführen.
-
1 zeigt
eine perspektivische Ansicht, welche die zwei Vielgelenk-Roboter 1 und 2 veranschaulicht.
-
Gemäß der
Darstellung in 1 besitzen der erste und der
zweite Roboter 1 und 2 die gleiche Konfiguration.
Jeder der Roboter 1 und 2 enthält eine
Robotereinheit 4, eine Steuereinheit 5 und ein
Lehr-Gegenstück 6. Die Robotereinheit 4 besteht
aus einem Sechsachsen-Gelenktyp, um ein Beispiel zu nennen, und
enthält Folgendes: eine Basis 7, die an einem Boden
fixiert ist; eine Schulter 8, die durch die Basis 7 gehaltert
wird und damit dazu befähigt wird, in einer horizontalen
Richtung zu schwenken; einen unteren Arm 9, der durch die
Schulter 8 gehaltert wird, so daß er schwenkbar
in der vertikalen Richtung bewegt werden kann; einen ersten oberen
Arm 10, der durch den unteren Arm 9 gehaltert
wird und in der vertikalen Richtung schwenkbar bewegt werden kann;
einen zweiten oberen Arm 11, der durch das vordere oder Spitzenende
bzw. Spitzenendabschnitt des ersten oberen Armes 10 gehaltert
wird, so daß er geschwenkt werden kann; ein Handgelenk 12,
welches durch den zweiten oberen Arm 11 gehaltert ist,
so daß es drehbar in der vertikalen Richtung schwenkbar
ist; und einen Flansch 13, der durch das Handgelenk 12 gehaltert
ist, so daß eine Drehung möglich ist (eine Schwenkbewegung
möglich ist). Die Schulter 8, der untere Arm 9,
der erste und der zweite obere Arm 10 und 11,
das Handgelenk 12 und der Flansch 13 sowie die
Basis 7 funktionieren als Glieder von dem Roboter. Eine
Hand 14 (siehe 8), die das Werkstück 3 einklemmt
(erfaßt) und aus der Verklemmung löst (freigibt),
ist an dem Flansch 13 angebracht, der das Endglied darstellt.
-
Wie
in 2 dargestellt ist, enthält die Steuereinheit 5 eine
CPU 15 als Steuereinrichtung, eine Treiberschaltung 16 und
eine Positions-Detektorschaltung 17 als Positions-Detektoreinrichtung.
Die CPU 15 ist in folgender Weise angeschlossen: an einen
ROM 18 als Speichereinrichtung, die eine Robotersprache
speichert, beispielsweise zum Vorbereiten eines Systemprogramms
und eines Bewegungsprogramms (Bewegung) des Roboters als Ganzes; an
einen RAM 19 zum Speichern des Bewegungsprogramms, und
zwar beispielsweise von dem Roboter 1 oder 2;
und mit einer Kommunikationsschaltung 20 als Kommunikationseinrichtung,
die eine Kommunikation mit dem Lehr-Gegenstück 6 ermöglicht,
die zum Lehren der Bewegung verwendet wird, und die mit anderen
Robotern kommuniziert, um Informationen über die momentanen
Positionen der anderen Roboter zu erhalten.
-
Die
Positions-Detektorschaltung 17 ist so konfiguriert, um
die Positionen der Glieder 8 bis 13, ausgenommen
der Basis 7 zu detektieren. Ein Dreh-Codierer 22 dient
als ein Positionssensor und ist mit der Positions-Detektorschaltung 17 verbunden.
Der Codierer 22 ist mit einem Motor 21 ausgestattet,
der eine Antriebsquelle für eine Gelenkwelle (gelenkige
Verbindung) bildet und die Bewegung von jedem der Glieder 8 bis 13 führt.
Im Ansprechen auf ein Signal von dem Drehcodierer 22 detektiert
die Positions-Detektorschaltung 17 einen Winkel für
das in Betracht stehende Glied, das heißt: einen Schwenkwinkel
der Schulter 8 für die Basis 7; einen
Schwenkwinkel des unteren Armes 9 für die Schulter 8;
einen Schwenkwinkel des ersten oberen Armes 10 für
den unteren Arm 9; einen Schwenkwinkel des zweiten oberen
Armes 11 für den ersten oberen Arm 10;
einen Schwenkwinkel des Handgelenks 12 für den zweiten
oberen Arm 11; oder einen Verschwenkungswinkel des Flansches 13 für
das Handgelenk 12. Die einzelnen detektierten Winkel, das
heißt die Informationen hinsichtlich der detektierten Positionen,
werden an die CPU 15 und die Treiberschaltung 16 übermittelt.
In 2 sind lediglich der Motor 21 und der
Drehcodierer 22 dargestellt und angegeben, wobei jedoch
jedes Glied 8 bis 13 mit der Ausnahme der Basis 7 praktisch
mit seinem eigenen Motor 21 ausgerüstet ist und
auch mit seinem eigenen Drehcodierer 22 ausgerüstet
ist. Mit anderen Worten sind eine Vielzahl an Motoren 21 und
Drehcodierern 22 vorgesehen.
-
Die
Treiberschaltung 16 vergleicht den befehligten Winkel,
der durch die CPU 15 geliefert wird, mit dem momentanen
Winkel, der durch die Positions-Detektorschaltung 17 geliefert
wird und führt Strom entsprechend der Differenz dem in
Betracht stehenden Motor 21 zu, um den Motor 21 anzutreiben.
Somit bewegt sich der zentrale Abschnitt des Flansches 13,
das heißt der zentrale Abschnitt des Spitzenendes (d. h.
der Hand) des Roboters entlang dem Ort, wie dies durch das Bewegungsprogramm bestimmt
wird, und führt die Bewegung der Zusammenbauteile aus,
um hier ein Beispiel zu nennen.
-
Das
Bewegungsprogramm enthält eine Aufzeichnung von Parametern
für jede Bewegung, welche Parameter eine Bewegungs-Endposition,
einen Geschwindigkeits(Drehzahl)-Faktor und einen Beschleunigungs-/Verzögerungsfaktor
umfassen. Unter den Parametern werden der Geschwindigkeits- und Beschleunigungs-/Verzögerungsfaktor
bestimmt, und zwar basierend auf den Raten der maximalen Geschwindigkeit
und Beschleunigung/Verzögerung der Bewegung, und zwar jeweils
auf die tolerierte maximale Geschwindigkeit und tolerierte maximale
Beschleunigung/Verzögerung des in Betracht stehenden Motors 21.
Die tolerierte maximale Geschwindigkeit und die tolerierte maximale
Beschleunigung/Verzögerung werden für jeden Motor 21 bestimmt,
und zwar unter Berücksichtigung der Performance des Motors 21,
so daß das Last-Drehmoment des Motors 21 das zulässige
maximale Drehmoment beispielsweise nicht überschreitet.
-
Die
CPU 15 ist dafür ausgelegt, um ein Geschwindigkeitsmuster
von den Parametern zu bestimmen, die in dem Bewegungsprogramm aufgezeichnet
sind, und zwar beispielsweise basierend auf einem trapezförmigen
Muster. Die CPU 15 berechnet dann den Winkel der Gelenkverbindung
oder des Gelenks für jedes Verstreichen einer bestimmten
Zeit, basierend auf dem Geschwindigkeitsmuster. Der berechnete Winkel
wird dann an die Treiberschaltung 16 übergeben,
und zwar in Form eines Winkel-Befehlswertes. Spezifischer gesagt
besteht gemäß der Darstellung in 3 das
tra pezförmige Geschwindigkeitsmuster aus einer Beschleunigungsstufe „t1", einer
Konstant-Geschwindigkeitsstufe „T" und aus einer Verzögerungsstufe „t2".
Es wird vom Punkt der Anfangsbewegung aus, und zwar für
jedes Verstreichen einer vorbestimmten Sampling-Zeit Δt,
eine Berechnung durchgeführt, um eine Geschwindigkeit an dem
nachfolgenden Sampling-Punkt zu erhalten (entsprechend dem Punkt
nach dem Verstreichen der Sampling-Zeit Δt), wobei der
passierte Punkt oder verstrichene Punkt als momentaner Zeitpunkt verwendet
wird. Der berechnete Wert wird dann mit der Sampling-Zeit multipliziert.
Der auf diese Weise erhaltene Wert wird sequentiell hinzu addiert,
so daß der Winkel für jedes Gelenk erhalten werden
kann, und zwar für jedes Verstreichen der Sampling-Zeit vom
Start bis zum Ende der Bewegung. Indem man jeden Wert als Winkel-Befehlswert
an die Treiberschaltung 16 übermittelt, kann jedes
Gelenk entsprechend dem Geschwindigkeitsmuster bewegt werden.
-
Es
wird dann eine Berechnung hinsichtlich der Position von jedem Glied
vom Punkt des Verstreichens einer Sampling-Zeit aus bis zum Punkt
des Verstreichens der nachfolgenden Sampling-Zeit durchgeführt.
Indem dann die Position an dem Punkt des Verstreichens der nachfolgenden
Sampling-Zeit als tentative Position angenommen wird, wird ein Antriebs-Drehmoment
berechnet, welches für die Bewegung zu dem tentativen Punkt
hin erforderlich ist. Wenn das berechnete Antriebs-Drehmoment gleich ist
mit oder kleiner ist als ein Grenzwert, wird die tentative Position
als befehligter Punkt bestimmt. Somit ist die Steuerung in solcher
Weise wirksam, daß jedes Glied zu dem befehligten Punkt
in einer vorbestimmten Einheits-Steuerzeit bewegt werden kann. Wenn
das berechnete Antriebs-Drehmoment größer ist
als der Grenzwert, wird die Position nach dem Verstreichen einer
korrigierten Sampling-Zeit, die kürzer ist als die oben
erläuterte Sampling-Zeit, als eine befehligte Position
bestimmt, und zwar basierend auf dem vorbestimmten Geschwindigkeitsmuster.
Es wird dann eine Steuerung durchgeführt, so daß jedes Glied
zu der befehligten Position in einer vorbestimmten Einheits-Steuerzeit
bewegt werden kann. Auf diese Weise können die Motore 21 der
einzelnen Glieder 8 bis 13 so gesteuert werden,
daß sie kein Drehmoment entwickeln, welches das maximale
Drehmoment überschreitet.
-
Es
wird dann ein Lehrvorgang bei jedem der Roboter 1 und 2 durchgeführt,
und zwar unter Verwendung des Lehr-Gegenstücks 6,
um die Inhalte der Arbeit zu speichern, die durch die Robotereinheit 4 ausgeführt
werden soll. Spezifischer gesagt wird der Lehrvorgang dadurch ausgeführt,
indem die Hand 14 zu einer Vielzahl von gewünschten
Soll-Positionen bewegt wird und die Hand 14 die Möglichkeit erhält,
gewünschte Positionen an den Soll-Positionen einzunehmen,
und zwar unter Verwendung des Lehr-Gegenstücks 6.
Der RAM 19 der Steuereinheit 15 speichert die
Soll-Positionen und Haltungen der Hand 14, die durch das
Lernen eingestellt wurden, das heißt, die Soll-Positionen
und die Haltungen des Flansches 13 als auch die Positionen
und die Haltungen der Glieder 8 bis 13, damit
der Flansch 13 zu den Soll-Positionen bewegt wird und die
Haltungen eingenommen werden.
-
Die
vorliegende Ausführungsform ist so konfiguriert, daß dann,
wenn die Soll-Positionen P1 und P2 gelehrt worden sind, ein Vektor-Teilungsmodus eingestellt
wird, und zwar zusätzlich zu dem normalen Modus, um das
Spitzenende (d. h. die Hand) des Roboters von einer Soll-Position
P1 zu der anderen Soll-Position P2 zu betätigen. Gemäß der
Darstellung in 4 wird in dem Vektor-Teilungsmodus
die Bewegung des Spitzenendes des Roboters von der Soll-Position
P1 zu der anderen Soll-Position P2 in eine erste Vektorkomponente
P1 → P3 in einer vorbestimmten einzelnen Ebene und eine
zweite Vektorkomponente P3 → P2 in einer spezifischen Richtung ξ senkrecht
zu der einzelnen Ebene aufgeteilt. Durch richtige Einstellung der
Bewegungs-Zeitlage der ersten und der zweiten Vektorkomponente P1 → P3
und P3 → P2 kann das Spitzenende (d. h. die Hand) des Roboters
für eine Bewegung in der Richtung der ersten Vektorkomponente
P1 → P3 entsprechend dem trapezförmigen Geschwindigkeitsmuster
betätigt werden, und kann zur gleichen Zeit für
eine Bewegung in der Richtung der zweiten Vektorkomponente P3 → P2
ebenfalls entsprechend dem trapezförmigen Geschwindigkeitsmuster
betätigt werden. In einem Fall, bei dem der Bewegungsabstand
oder die Bewegungsstrecke kurz ist, besteht das aktuelle Muster aus
einem dreieckförmigen Geschwindigkeitsmuster, welches keinen
Konstant-Geschwindigkeits-Prozeß aufweist.
-
In
dem Vektor-Teilungsmodus wird die Bewegung des Spitzenendes (d.
h. der Hand) des Roboters in der Richtung der ersten Vektorkomponenten
als „synchrone Pla narbewegung" bezeichnet, da die zwei
Vektorkomponenten, die in einer Ebene senkrecht zueinander verlaufen,
so gesteuert werden, daß eine Beschleunigung und eine Verzögerung gleichzeitig
ausgeführt werden kann. In dieser Hinsicht wird eine Ebene
S als eine „Synchron-Ebene" bezeichnet. Ferner wird die
Bewegung des Spitzenendes des Roboters in der spezifischen Richtung ξ senkrecht
zu der Synchron-Ebene S, das heißt in der Richtung der
zweiten Vektorkomponente als „Nicht-Synchron-Vektor-Relativbewegung"
bezeichnet. Dies ist deshalb der Fall, da vom Standpunkt des Bewegungsbeginns
in der Richtung der zweiten Vektorkomponente keine Steuerung bewirkt
wird, so daß die Beschleunigung und die Verzögerung
in der Synchron-Ebene gleichzeitig mit der Bewegung in der zweiten
Vektorkomponente ausgeführt werden können.
-
Wie
oben dargelegt ist, klemmt (ergreift) der erste Roboter 1 bei
der Arbeit des ersten und des zweiten Roboters 1 und 2 das
Werkstück 3, welches gemäß dem
Vor-Bearbeitungsprozeß fertiggestellt worden ist, und bewegt
dieses zu dem Nach-Bearbeitungsprozeß hin, während
der zweite Roboter 2 das Werkstück 3 von
dem ersten Roboter empfängt und das Werkstück 3 zu
dem Nach-Bearbeitungsprozeß hin befördert. Im
Folgenden werden die Inhalte der Übergabebewegung des Werkstücks 3 erläutert.
-
Spezifischer
gesagt ergreift der erste Roboter (ein Vielgelenk-Roboter) 1 das
Werkstück 3 an einer Bewegungs-Startposition P11,
die in 5A angegeben ist. Dann beginnt
das Spitzenende (d. h. die Hand) des ersten Roboters 1 mit
einer linearen Bewegung von der Position P11 in einer einzelnen
Ebene, das heißt in einer horizontalen ersten Ebene S1. Die
Geschwindigkeit der horizontalen linearen Bewegung wird basierend
auf dem trapezförmigen Geschwindigkeitsmuster bestimmt.
Das heißt, die Geschwindigkeit der horizontalen linearen
Bewegung wird auf einen vorbestimmten Wert beschleunigt, und nach
dem Erreichen des vorbestimmten Wertes wird diese auf eine Konstant-Geschwindigkeitsbewegung des
vorbestimmten Wertes gehalten.
-
Andererseits
wird eine Bewegungs-Startposition P21 des zweiten Roboters (des
anderen Vielgelenk-Roboters) 2, der das Werkstück 3 von
dem ersten Roboter 1 empfängt, an einer Position
eingestellt, die höher liegt als die Position P11 des ersten Ro boters,
um hier ein Beispiel zu nennen. Wenn das Spitzenende (d. h. die
Hand) des ersten Roboters 1 eine erste vorbestimmte Position
F1 in der Ebene S1 erreicht hat, startet der zweite Roboter 2 die
lineare Bewegung eines Spitzenendes (d. h. der Hand) des zweiten
Roboters 2 in einer zweiten Ebene S2, die parallel zu der
ersten Ebene S1 verläuft. Die Richtung der linearen Bewegung
des Spitzenendes des zweiten Roboters 2 ist die gleiche
wie die Richtung der horizontalen Bewegung des ersten Roboters 1. Die
Geschwindigkeit der linearen Bewegung wird auch basierend auf dem
trapezförmigen Geschwindigkeitsmuster bestimmt. Die trapezförmigen
Geschwindigkeitsmuster der Roboter 1 und 2, die
Geschwindigkeiten der Konstant-Geschwindigkeitsprozesse, werden
gleich eingestellt.
-
Nach
dem Erreichen einer vorbestimmten Position F11 in der Ebene S2 beginnt
das Spitzenende (d. h. die Hand) des zweiten Roboters 2 mit
einer Bewegung senkrecht nach unten hin, und zwar zu der Linear-Bewegungsebene
S1 des ersten Roboters 1, und zwar zusätzlich
zu der horizontalen linearen Bewegung. Wenn dann das Spitzenende
des zweiten Roboters 2 die Ebene S1 für eine lineare
Bewegung mit der gleichen Geschwindigkeit erreicht hat wie derjenigen
des Spitzenendes des ersten Roboters 1, ergreift der zweite
Roboter 2 das Werkstück 3 in einer vorbestimmten
Periode bis zu dem Punkt, wenn das Spitzenende des ersten Roboters 1 die nachfolgende
zweite vorbestimmte Position F2 erreicht.
-
Wenn
das Spitzenende des ersten Roboters 1 die zweite vorbestimmte
Position F2 erreicht hat, gibt der erste Roboter 1 den
Festklemmzustand des Werkstücks 3 frei und beginnt
mit der senkrechten Aufwärtsbewegung, und zwar zusätzlich
zu der linearen Bewegung, um einen nach aufwärts verlaufenden
Abstand von der Ebene S1 zu bilden. Dann stoppt der erste Roboter 1,
wenn dessen Spitzenende eine Bewegungs-Endposition P12 erreicht
hat, um die Werkstück-Übergabebewegung zu vervollständigen.
Mittlerweile setzt jedoch der zweite Roboter 2 die lineare
Bewegung in der Ebene S1 fort und stoppt dann an dem Punkt, wenn
das Spitzenende eine Bewegungs-Endposition P22 erreicht hat, um
die Werkstück-Übergabebewegung zu vervollständigen.
-
Der
Lehrvorgang zur Durchführung der Werkstück-Übergabebewegung,
die oben beschrieben wurde, wird in der folgenden Weise durchgeführt. Zuerst
werden beide Roboter 1 und 2 in den Vektor-Teilungsmodus
versetzt. Es werden dann unter Verwendung des Lehr-Gegenstücks
(teaching Pendant) 6 des ersten Roboters 1 die
Bewegungs-Startposition P11 und die Bewegungs-Endposition P12 des
Spitzenendes des ersten Roboters 1 gelehrt. Zur gleichen
Zeit werden unter Verwendung des Lehr-Gegenstücks (teaching
Pendant) 6 des zweiten Roboters 2 die Bewegungs-Startposition
P21 und die Bewegungs-Endposition P22 des Spitzenendes des zweiten
Roboters 2 gelehrt (Positions-Lehreinrichtung: Schritt
B1 von 6).
-
Nachfolgend
wird der Vektor ξ in der Nicht-Synchronrichtung vertikal
nach oben zu unter Verwendung des Lehr-Gegenstücks 6 des
ersten Roboters 1 eingestellt. Auch wird der Vektor ξ in
der Nicht-Synchron-Vektor-Relativbewegungsrichtung (spezifische
Richtung) vertikal nach unten hin eingestellt, und zwar unter Verwendung
des Lehr-Gegenstücks 6 des zweiten Roboters 2 (spezifische
Richtungs-Einstelleinrichtung: Schritt B2). Dann bestimmen die CPUs 15 von
beiden Robotern 1 und 2 die Synchron-Ebenen S1
und S2 als horizontale Ebenen (erste und zweite Synchron-Ebenen
S1 und S2), die senkrecht zu dem Vektor ξ in der spezifischen
Richtung verlaufen, und die Bewegungs-Startpositionen P11 und P21
enthalten (Synchron-Ebenen-Einstelleinrichtung: Schritt B3).
-
Die
CPUs 15 von beiden Robotern 1 und 2 bestimmen
Projektionspunkte P13 und P23 der Bewegungs-Endpositionen P12 und
P22, und zwar jeweils auf den Ebenen S1 und S2 (Synchron-Planarbewegungs-Endpositions-Einstelleinrichtung:
Schritt B4). Dann teilt die CPU 15 des Roboters 1 einen
Bewegungsvektor P11 → P12 in eine erste Vektorkomponente
P11 → P13 in der Ebene S1 und in eine zweite Vektorkomponente
P13 → P12 in der spezifischen Richtung senkrecht zu der
Ebene S1 (Vektor-Teilungseinrichtung: Schritt B5). In ähnlicher
Weise teilt die CPU 15 des Roboters 2 einen Bewegungsvektor P21 → P22
in eine erste Vektorkomponente P21 → P23 in der Ebene S2
und in eine zweite Vektorkomponente P23 → P22 in der spezifischen
Richtung senkrecht zu der Ebene S2 (Vektor-Teilungseinrichtung:
Schritt B5).
-
Es
wird dann mit Hilfe des Lehr-Gegenstücks 6 des
ersten Roboters 1 die Bewegungs-Startzeitlage in der Richtung
der ersten Vektorkomponente P11 → P13 auf einen Punkt eingestellt,
und zwar nach dem Verstreichen einer vorbestimmten Zeit, um hier ein
Beispiel anzuführen, und zwar von dem Ende des Vor-Bearbeitungsprozesses.
Zur gleichen Zeit wird eine Einstellung in solcher Weise vorgenommen,
daß der Punkt, wenn das Spitzenende des Roboters 1 an der
ersten vorbestimmten Position F1 angelangt ist, die Tatsache dieser
Ankunft dem zweiten Roboter 2 über die Kommunikationsschaltung 20 mitgeteilt wird.
Ferner wird die Bewegungs-Startzeitlage in der Richtung der zweiten
Vektorkomponente P13 → P12 auf einen Punkt eingestellt,
wenn das Spitzenende des Roboters 1 an der zweiten vorbestimmten
Position F2 angelangt ist.
-
Ferner
wird mit Hilfe des Lehr-Gegenstücks 6 des zweiten
Roboters 2 die Bewegungs-Startzeitlage des Spitzenendes
des Roboters 2 in der Richtung der ersten Vektorkomponente
P21 → 23 auf einen Punkt gemäß dem Empfang
der Ankunftsnachricht des ersten Roboters 1 auf die erste
vorbestimmte Position F1 eingestellt. Zur gleichen Zeit wird die
Bewegungs-Startzeitlage in der Richtung der zweiten Vektorkomponente
P23 → P22 auf einen Punkt eingestellt, wenn das Spitzenende
des Roboters 2 an der vorbestimmten Position F11 in der
Ebene S2 angelangt ist (Bewegungs-Startzeitlage-Einstelleinrichtung:
Schritt B6).
-
Gemäß der
Darstellung in (A) bis (D) in 7 wird die
Position F1 so bestimmt, daß sie innerhalb einer Beschleunigungs-Prozeßzeit „Ta"
des zweiten Roboters 2 fällt. Spezifischer gesagt
wird die Position F1 in einer solchen Weise bestimmt, daß innerhalb
der Zeit „Ta" das Spitzenende des zweiten Roboters 2 sich
dem ersten Roboter 1 ausreichend weit annähern
kann, um das Werkstück zu erfassen oder festzuklemmen,
welches durch den ersten Roboter 1 gehalten wird, und daß die
Geschwindigkeit des zweiten Roboters 2 in der ersten Vektorkomponente
P21 → P23 sich auf die gleichen Geschwindigkeit einstellen
kann wie die Geschwindigkeit in der ersten Vektorkomponente P11 → P13
des ersten Roboters 1. Eine solche Positionseinstellung
kann basierend auf dem trapezförmigen Geschwindigkeitsmuster
der horizontalen Bewegung berechnet werden.
-
Die
Position F11 wird in der folgenden Weise eingestellt. Spezifischer
gesagt muß die Übergabe des Werkstücks 3 lediglich
dann ausgeführt werden, während die Spitzenenden
der Roboter 1 und 2 sich mit der gleichen Geschwindigkeit
(der Zeit „Ts" in 7) bewegen,
das heißt, zu der Zeitlage „ti", wenn das Spitzenende
des ersten Roboters die Bewegung in der Richtung der zweiten Vektorkomponente
P13 → P12 startet. Zu diesem Zweck wird die Zeit „Tv", welche
die Zeit vom Start der Abwärtsbewegung des Spitzenendes
des zweiten Roboters 2 bis zur Ankunft an der Ebene S1
ist, berechnet, und zwar zuerst berechnet basierend auf dem trapezförmigen
Geschwindigkeitsmuster (tatsächlich auch dem dreieckförmigen
Geschwindigkeitsmuster) der vertikalen Bewegung. Es wird dann ein
vorbestimmter Punkt innerhalb der Zeit „Ts" bestimmt, bei
dem die Spitzenenden der Roboter 1 und 2 sich
mit der gleichen Geschwindigkeit bewegen. Beispielsweise kann die
vorbestimmte Zeit auf einen Punkt „tw" (vor dem Punkt „ti")
eingestellt werden, das heißt dem Punkt nach dem Verstreichen
der Zeit „Tb" seitdem die Geschwindigkeit des Spitzenendes
des zweiten Roboters 2 den gleichen Wert erreicht hat wie
derjenige des Spitzenendes des ersten Roboters 1. Es wird dann
der Betrag der Wanderung von dem Start der horizontalen Bewegung
bis zum Verstreichen von (Ta + Tb – Bv)-Zeit basierend
auf dem trapezförmigen Geschwindigkeitsmuster berechnet.
Es kann somit die Position F11 dadurch berechnet werden, indem der
berechnete Betrag der Wanderung oder Bewegung zu der horizontalen
Bewegungs-Startposition P21 hinzu addiert wird.
-
Wie
oben beschrieben wurde, werden die Bewegungsprogramme von beiden
Robotern 1 und 2 gemäß der Darstellung
in den 5B und 5C eingestellt.
Jedes dieser Bewegungsprogramme besteht aus einer Synchronbewegung
(S-Ebene-Bewegung) bzw. Synchronbewegungs-Programm und einem Nicht-Synchronbewegungs-Programm
(der ξ-Richtungs-Relativbewegung).
-
Im
Folgenden werden die Bewegungen der Roboter 1 und 2 gemäß den
Bewegungsprogrammen erläutert, die in den 5B und 5C gezeigt sind.
Die nachfolgenden Bewegungen werden durch die CPUs 15 gesteuert.
Nach der Vervollständigung der früheren Übergabebewegung
des Werkstücks 3 bewegen sich die Spitzenendender
Roboter 1 und 2 von den Bewegungs-Endpositionen
P12 und P22 zu den Bewegungs- Startpositionen P11 und P21 (Schritte
S1 und A1) jeweils zurück. Es werden dann die spezifischen
Richtungen ξ bestimmt (Schritte S2 und A2). Danach gelangen
der erste und der zweite Roboter 1 und 2 in einen
Standby-Zustand.
-
Nach
dem Verstreichen einer vorbestimmten Zeit seit der Vervollständigung
des Vor-Bearbeitungsprozesses (die Vervollständigung der
Arbeit wird von einem Arbeits-Managementcomputer über eine
Kommunikationsverbindung mitgeteilt) beginnt das Spitzenende des
ersten Roboters 1 mit der linearen Bewegung in der Ebene
S1 von der Bewegungs-Startposition P11 aus, und zwar in der Richtung
der ersten Vektorkomponente P11 → P13 (erste Vektorrichtung-Bewegungs-Starteinrichtung:
Schritt S3). Die lineare Bewegung des Spitzenendes des ersten Roboters 1 wird
basierend auf dem trapezförmigen Geschwindigkeitsmuster
durchgeführt. Somit wird gemäß der Darstellung
in 7(A) die lineare Bewegung bis zu
einer vorbestimmten Geschwindigkeit hin beschleunigt. Nach dem Erreichen
der vorbestimmten Geschwindigkeit bewegt sich das Spitzenende des
Roboters 1 mit einer vorbestimmten konstanten Geschwindigkeit
und wird dann so gesteuert, daß diese verzögert
wird (erste Bewegungs-Steuereinrichtung).
-
Wenn
das Spitzenende des ersten Roboters 1 an der vorbestimmten
Position F1 während der Konstant-Geschwindigkeitsbewegung
angekommen ist, sendet der erste Roboter 1 ein Benachrichtigungssignal
zu dem zweiten Roboter 2 und unterrichtet diesen über
die Ankunft des Roboters 1 an der vorbestimmten Position
F1 (Bewegung-Start-Befehlsgabeeinrichtung: Schritt S4 und S5). Nach
dem Empfang des Benachrichtigungssignals startet der zweite Roboter 2 die
lineare Bewegung von der Bewegungs-Startposition P21 aus, und zwar
entlang der Richtung der ersten Vektorkomponente P21 → P23
(Schritte A3 und A4). Dieser Punkt ist durch „A" in (A)
bis (D) in 7 angegeben, und die Zustände der
Roboter 1 und 2 bei diesem Punkt sind in 8(A) gezeigt.
-
Wenn
dann das Spitzenende des zweiten Roboters 2 an der vorbestimmten
Position F11 angelangt ist, wird ein Befehl zum Starten der ξ-Richtungs-Relativbewegung
ausgegeben (zweite Vektorrichtung-Bewegungs-Starteinrichtung: Schritte
A5 und A6). Somit startet der zweite Roboter 2 die Bewegung
in der Richtung der zweiten Vek torkomponente P23 → P22
unter Einhaltung des trapezförmigen Geschwindigkeitsmusters
in der Richtung der ersten Vektorkomponente P21 → P23 (unter
Aufrechterhaltung des Beschleunigungszustandes entsprechend der
vorliegenden Ausführungsform). Obwohl die Bewegungsgeschwindigkeit
in Richtung der zweiten Vektorkomponente P23 → P22 auf
dem trapezförmigen Geschwindigkeitsmuster basiert, resultiert
das Geschwindigkeitsmuster aktuell in einem dreieckförmigen
Geschwindigkeitsmuster, da die Strecke der Bewegung kurz ist, und
zwar in Bezug auf die Komponente P23 → P22. Der Zeitpunkt,
wenn der zweite Roboter 2 sich im Prozeß der Bewegung in
Richtung der zweiten Vektorkomponente P23 → P22 befindet,
ist in den 2A bis 2D mit „B"
angezeigt, und die Zustände der Roboter 1 und 2 an
diesem Punkt sind in 8(B) gezeigt.
-
Im
Verlaufe der Bewegung, bei der das Spitzenende des zweiten Roboters 2 sich
in der Richtung der zweiten Vektorkomponente P23 → P22
bewegt, wird die Bewegungsgeschwindigkeit des Spitzenendes des Roboters 1 in
der ersten Vektorkomponente P21 → P23 auf die gleiche gebracht
wie diejenige des Spitzenendes des ersten Roboters 1 in
Richtung der ersten Vektorkomponente P11 → P13. Von diesem Punkt
an weiterführend bewegt sich das Spitzenende des Roboters 2 mit
der gleichen Bewegungsgeschwindigkeit wie derjenigen des Spitzenendes
des Roboters 1 in der Richtung der ersten Vektorkomponente
P11 → P13. Unmittelbar danach erreicht das Spitzenende
des Roboters 2 die Ebene S1 für die lineare Bewegung
des Spitzenendes des Roboters 1 und stoppt die Bewegung
in Richtung der zweiten Vektorkomponente P23 → P22 (zweite
Bewegungs-Steuereinrichtung).
-
Als
Ergebnis gelangt das Spitzenende des Roboters 2 während
der Bewegung in der Richtung der ersten Vektorkomponente P21 → P23
mit der gleichen Geschwindigkeit wie derjenigen des Spitzenendes
des ersten Roboters 1 an der Bewegungsebene S1 des Spitzenendes
des Roboters 1 an. Gleichlaufend mit der Ankunft bei der
Ebene S1 ergreift der zweite Roboter 2 das Werkstück 3 unter
Verwendung der Hand 14, welches Werkstück durch
den ersten Roboter 1 erfaßt ist. Somit wird dann
das Werkstück 3 durch beide Roboter 1 und 2 erfaßt,
es wird jedoch keine übermäßig große
Kraft auf das Werkstück 3 und die Hände 14 der
Roboter 1 und 2 aufgebracht, da die Spitzenenden von
beiden Robotern 1 und 2 sich mit der gleichen
Geschwindigkeit in Bewegung befinden. Der Punkt unmittelbar nachdem
das Werkstück 3 durch beide Roboter 1 und 2 gehalten
wird, ist in 7 durch „C" angezeigt,
und die Zustände der Roboter 1 und 2 an
diesem Punkt sind in 8(C) gezeigt.
-
Wenn
das Spitzenende des ersten Roboters 1 an der zweiten vorbestimmten
Position F2 angekommen ist, gibt der Roboter 1 das Werkstück 3 frei (es
wird entklemmt) und das Spitzenende desselben beginnt mit der Bewegung
in der Richtung der zweiten Vektorkomponente P13 → P12
(zweite Vektorrichtungs-Bewegungs-Starteinrichtung: Schritte S6
bis S10). Somit wird das Spitzenende des Roboters 1 so gesteuert,
daß es sich nach oben mit der Geschwindigkeit bewegt, basierend
auf dem trapezförmigen Geschwindigkeitsmuster, um an der
Bewegungs-Endposition P12 (zweite Bewegungs-Steuereinrichtung) anzukommen,
wobei dann die Werkstück-Übergabebewegung beendet
wird. Das Spitzenendes des Roboters 2 hält andererseits
die Bewegung in der Richtung der ersten Vektorkomponente P21 → P13
im Zustand des festgeklemmten Werkstücks 3 aufrecht.
Wenn das Spitzenende des Roboters 2 an der Bewegungsende-Position
P22 angekommen ist, wird die Werkstück-Übergabebewegung beendet
(erste Bewegungs-Steuereinrichtung).
-
Während
der Werkstück-Übergabebewegung, die oben beschrieben
ist, berechnen die Roboter 1 und 2 jeweils für
jedes Verstreichen der Sampling-Zeit die Positionen der jeweiligen
Motore 21 (Gelenke) in der Periode von dem Verstreichen
der Sampling-Zeit ab bis zu dem Verstreichen der nachfolgenden Sampling-Zeit
hin. Dann, wenn jede Position nach dem Verstreichen der nachfolgenden Sampling-Zeit
als eine tentative Position erreicht wurde, berechnet jeder der
Roboter 1 und 2 das Antriebs-Drehmoment, welches
für die Bewegung zu der tentativen Position erforderlich
ist. Wenn das berechnete Antriebs-Drehmoment gleich ist mit oder kleiner
ist als ein Grenzwert, wird die tentative Position so bestimmt,
daß sie aus einer befehligten Position besteht, und es
wird dann jeder Motor 21 so gesteuert, daß eine
Bewegung zu der befehligten Position in einer vorbestimmten Einheits-Steuerzeit
erfolgt.
-
Wenn
unter einer solchen Steuerung das berechnete Drehmoment größer
ist als der Grenzwert, wird die Position nach dem Verstreichen einer
korrigierten Sampling-Zeit, die kürzer ist als die oben
angegebene Sampling-Zeit, als eine befehligte Position bestimmt,
und zwar basierend auf dem vorbestimmten Geschwindigkeitsmuster.
Es wird dann eine Steuerung in solcher Weise durchgeführt,
daß jeder Motor 21 sich zu der befehligten Position
in einer vorbestimmten Einheits-Steuerzeit bewegen kann. Auf diese
Weise können die Motore 21 gesteuert werden, so daß sie
kein Drehmoment entwickeln, welches des Grenzwert überschreitet.
-
Wenn
in der oben beschriebenen Weise das berechnete Antriebs-Drehmoment
größer ist als der Grenzwert, wird die Position
nach dem Verstreichen der korrigierten Sampling-Zeit, die kürzer
ist als die oben angegebene Sampling-Zeit, als eine befehligte Position
bestimmt. Wenn demzufolge beide Roboter gemäß dem
ersten und dem zweiten Roboter gleichzeitig ein Werkstück
halten, wird insbesondere die Geschwindigkeit des Spitzenendes des
Roboters (des ersten Roboters), bei dem die korrigierte Sampling-Zeit
eingestellt wurde, verzögert, wodurch die Bewegung außer
Bereitschaft gesetzt wird, die mit der gleichen Geschwindigkeit
wie derjenigen des Spitzenendes des anderen Roboters (des zweiten Roboters)
durchgeführt wird. In diesem Fall unterrichtet der erste
Roboter den zweiten Roboter vermittels einer Kommunikation über
die korrigierte Sampling-Zeit. Der zweite Roboter, der die Benachrichtigung über
die korrigierte Sampling-Zeit erhalten hat, ist dafür geeignet
oder dafür ausgelegt, um eine befehligte Position einzustellen,
und zwar basierend auf der benachrichtigen oder mitgeteilten korrigierten Sampling-Zeit,
und zwar selbst dann, wenn das Antriebs-Drehmoment von jedem Motor
in dem zweiten Roboter den Grenzwert nicht überschreitet.
Auf diese Weise werden beide Roboter gemäß dem
ersten und dem zweiten Roboter dazu befähigt, sich mit
der gleichen Geschwindigkeit zu bewegen, ohne daß dabei jeder
der Motore ein übermäßig hohes Antriebs-Drehmoment
erzeugen muß. Es ist selbstverständlich, daß die
maximale Beschleunigung und die maximale Geschwindigkeit in dem
trapezförmigen Geschwindigkeitsmuster voreingestellt sein
können, so daß kein übermäßig
hohes Antriebs-Drehmoment in jedem der Motore erzeugt wird.
-
Die
vorliegende Erfindung kann in mehreren anderen Formen angewendet
werden, ohne jedoch dadurch den Rahmen der Erfindung zu verlassen. Beispielsweise
sind die Bewegungen der zweite Roboter 1 und 2 nicht
auf die Übergabe des Werkstücks 3 beschränkt.
Die Ausführungsformen und modifizierten Ausführungsformen,
die insoweit beschrieben wurden, dienen somit lediglich der Veranschaulichung
und bilden keine Einschränkung, da sich der Rahmen der
Erfindung aus den anhängenden Ansprüchen und nicht
aus der den Ansprüchen vorangehenden Beschreibung ergibt.
Alle Änderungen fallen in den Bereich und Rahmen der Ansprüche
oder bilden Äquivalente solcher Maßnahmen und
Grenzen und werden somit von den Ansprüchen mit umfaßt.
-
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 2007-177387 [0001]
- - JP 6-332510 [0005]
- - JP 11-277468 [0006]