-
Die vorliegende Erfindung bezieht sich auf ein
Bahnsteuerverfahren für einen Roboter, insbesondere auf ein
Bahnsteuerverfahren für einen Roboter, bei dem ein Werkstück derart
längs einer vorbestimmten Bahn in bezug auf einen
festliegenden Arbeitspunkt bewegt werden kann, daß ein
erforderlicher Vorgang ausgeführt werden kann.
-
Herkömmlicherweise wird bei einem mit Gelenken versehenen
sog. Playback-Roboter ein Endwirkorgan, z. B. in Form eines
Schweißbrenners, das auf einem Endwirkorgan-Montageteil an
dem körperfernen Ende einer Reihe von Armen montiert ist, die
mittels des Körpers des Roboters gehalten sind, für einen
Schweißvorgang längs einer vorbestimmten Bahn in bezug auf
ein Werkstück bewegt, das in einem Stillstandzustand gehalten
wird. Fig. 2 zeigt eine schematische Ansicht eines Roboters
dieser Art, wobei die Bezugszeichen X, Y u. Z ein dreidimen
sionales rechtwinkliges Referenz-Koordinatensystem (Körper-
Koordinatensystem) repräsentieren, dessen Nullpunkt in einem
Punkt O auf dem Roboterkörper liegt. In diesem
Referenz-Koordinatensystem wird das Werkstück in einem stationären Zustand
gehalten. Das Bezugszeichen U bezeichnet in dem
Referenz-Koordinatensystem die Koordinatenposition des Nullpunkts eines
Werkstück-Koordinatensystems, welches für das Werkstück
eingerichtet ist.
-
Vor den Ausführen eines tatsächlichen Arbeitsvorgangs mittels
des Roboters wird der Roboter vorab mit Information über
z. B. zwei Zielpunkte auf der Bahn des Endwirkorgans
versorgt. Die Bezugszeichen P1 u. P2 bezeichnen jeweils die
Koordinatenpositionen der ersten und zweiten Zielpunkte in dem
Werkstück-Koordinatensystem.
-
Zunächst betätigt eine Bedienungsperson die verschiedenen
Arme derart, daß die Arbeitsposition (der Arbeitspunkt) des
Endwirkorgans, z. B. die Position des vorderen Endes des
Schweißbrenners, mit dem ersten Zielpunkt P1 zusammenfällt.
Durch diese Betätigung wird das Endwirkorgan-Montageteil an
dem körperfernen Ende der Arme veranlaßt, eine
Koordinatenposition R1 in dem Referenz-Koordinatensystem einzunehmen.
Dann versorgt die Bedienungsperson den Roboter mit
Information über den Zielpunkt P1. In Reaktion auf diesen
Einlernvorgang werden die Betätigungszustände (die Arbeitspositionen
von einzelnen Achsen) verschiedener Roboter-Arbeitsabschnit
te, die Gelenke zwischen den Armen des Roboters enthalten,
bei dem Zielpunkt P1 mittels verschiedener Sensoren erfaßt,
welche an den Roboter angebracht sind, und diese erfaßten
Betätigungszustände werden als Steuerinformation gespeichert.
-
Darauffolgend werden die Arme derart betätigt, daß der
Arbeitspunkt des Endwirkorgans mit dem zweiten Zielpunkt P2
zusammenfällt, wobei eine Koordinatenposition T des
Arbeitspunkts des Endwirkorgans in einem Endwirkorgan-
Koordinatensystem (einem mechanischen Schnittstellen-Koordinatensystem),
welches für den Endwirkorgan-Montageteil eingerichtet ist,
festgehalten wird. Als Ergebnis nimmt der
Endwirkorgan-Montageteil eine Koordinatenposition R2 in dem
Referenz-Koordinatensystem ein. Bei dem Zielpunkt P2 wird der gleiche
Einlernvorgang, wie zuvor angegeben ist, durchgeführt, und zu
diesem Zeitpunkt werden die Arbeitspositionen der einzelnen
Achsen gespeichert.
-
Im tatsächlichen Betrieb führt der Roboter die erforderliche
Arbeit in einer Weise durch, daß der Arbeitspunkt längs der
vorbestimmten Bahn bewegt wird.
-
Es sei nun die Koordinatenposition des Arbeitspunkt in dem
Referenz-Koordinatensystem betrachtet. Im allgemeinen dienen
die Sensoren dazu, die Betätigungszustände der zugeordneten
Roboter-Arbeitsabschnitte in einem Koordinatensystem, das für
die Arbeitsabschnitte eingerichtet ist, zu erfassen. Um die
Koordinatenposition des Endwirkorgan-Montageteils in dem
Referenz-Koordinatensystem in Reaktion auf diese erfaßten
Zustände zu gewinnen, werden daher eine Reihe von
Koordinatensystem-Transformationen in bezug auf die erfaßten
Parameterwerte durchgeführt. Die Koordinatenposition des Endwirkorgan
Montageteils nach dieser Reihe von
Koordinatensystem-Transformationen wird im folgenden durch bezeichnet. Um die
Koordinatenposition des Arbeitspunkts des Endwirkorgans in
dem Referenz-Koordinatensystem zu gewinnen, wird darüber
hinaus für das Endwirkorgan eine Koordinatensystem-Transfor
nation von dem Endwirkorgan-Koordinatensystem zu dem
Referenz-Koordinatensystem, d. h. eine
Koordinatensystem-Transformation entsprechend der Lage des Endwirkorgans relativ zu
dem Endwirkorgan-Montageteil, durchgeführt. Im folgenden wird
eine Koordinatensystem-Transformationsmatrix für diese
Transformation durch [T] bezeichnet.
-
Da in dem Werkstück-Koordinatensystem Werte für die einzelnen
Zielpunkte P1 u. P2 gegeben sind, wird andererseits eine
Koordinatensystem-Transformation durchgeführt, um diese
Zielpunkte als Angaben für das Referenz-Koordinatensystem
darzustellen. Im folgenden wird die Koordinatenposition des
Zielpunkts in dem Werkstück-Koordinatensystem durch [P]
bezeichnet, und eine Koordinatensystem-Transformationsmatrix für die
Transformation von dem Werkstück-Koordinatensystem zu dem
Referenz-Koordinatensystem wird durch [U] bezeichnet.
-
Da der Arbeitspunkt und der Zielpunkt miteinander
zusammenfallen, gilt folgende Gleichung:
-
[R] [T] =[U] [P] ... (1)
-
Aus Gl. (1) ergibt sich
-
[P] = [U]&supmin;¹[R] [T] ... (2)
-
Bei den herkömmlichen Roboter, wie zuvor beschrieben wurde,
ist die Position des Arbeitspunkts des Endwirkorgans relativ
zu dem Endwirkorgan-Montageteil festliegend, und das
Werkstück befindet sich in einer festliegenden Position, so daß
die Koordinatensystem-Transformationsmatrizen [T] u.
konstant sind. Demzufolge ist, wenn die Koordinatenpositionen
des Endwirkorgan-Montageteils entsprechend den
Koordinatenpositionen [P] (P1 u. P2) der ersten und zweiten
Zielpunkte, die zum Einlernen in der zuvor angegebenen Weise gegeben
sind, gewonnen sind und wenn die Koordinatenposition jedes
Interpolationspunkts zwischen den zwei Zielpunkten [P] ist,
ist die Koordinatenposition bei jedem Interpolationspunkt
gegeben durch
-
[R] = [U] [P] [T]&supmin;¹ ... (3)
-
Ein Beispiel für eine Interpolation in einem
Roboter-Steuersystem ist durch die Veröffentlichung INDUSTRIEROBOTER
ENTWICKLUNG, Dr. Alfred Hüttig Verlag Heidelberg, Ausgabe
1984, Autor: Johannes Volmer, gegeben.
-
Während der Zeit des sog. Playback-Betriebs wird die Bahn des
Arbeitspunkts in Übereinstimmung mit der Reihe von
Koordinatenpositionen des Endwirkorgan-Montageteils oder des
körperfernen Endes der Arme in dem Referenz-Koordinatensystem, die
auf die zuvor genannte Art und Weise gewonnen sind, gesteu
ert.
-
Gemäß dem herkömmlichen Verfahren ist es indessen unmöglich,
einen Betrieb derart durchzuführen, daß sich die
positionsmäßige Beziehung zwischen dem körperfernen Ende der Arme und
dem Arbeitspunkt des Endwirkorgans, d. h. die
Transformationsmatrix [T], im Verlaufe der Zeit ändert. Es ist
beispielsweise unmöglich, einen Schweißvorgang, bei dem das Werkstück
relativ zu einem feststehenden Schweißbrenner zum Schweißen
bewegt wird, durchzuführen.
-
Aus dem Stand der Technik ist es indessen für einen
Arbeitspunkt des Endwirkorgans eines Roboters bekannt, diesen um
zwei zueinander senkrecht stehende Achsen eines körperfernen
Endes eines Roboterarms zu schwenken, wie dies
beispielsweise in der Druckschrift JP-A-50-124357 offenbart ist. Es
ist außerdem getrennt davon für ein Werkstück bekannt, dieses
mittels eines Roboters zu manipulieren, wie es beispielsweise
in der Druckschrift JP-A-60-91410 offenbart ist.
-
Gemäß der zuletzt genannten Drucschrift wird einem Roboter
eingelemt, ein Gußstück quer über die Schleifkante einer
Schleifscheibe zu treiben, um einen Gußgrat längs der Kante
des Gußstücks zu entfernen. Zu Anfang wird dem Roboter der
Schleifweg eingelemt, und dann wird ein nachfolgender
Einlernschritt, der im einzelnen in der Druckschrift offenbart
ist, durch den Roboter ausgeführt, der ein Einlern-Mutter
werkstück über einen Wegverschiebungsdetektor bewegt, um ein
Maß für die Änderung der Höhe der glatten Gußstückkante
bereitzustellen. Die Geschwindigkeit, bei welcher der Roboter
das rohe Gußstück quer über die Schleifkante bewegen soll,
wird dem Roboter derart eingelemt, daß sie sich in Abhän
gigkeit von der Höhe des Profils des rohen Gußstücks
verglichen mit derjenigen der glatten Gußstückkante ändert.
-
Die Aufgabe der vorliegenden Erfindung besteht darin, ein
Bahnsteuerverfahren für einen Roboter zu schaffen, bei dem
ein Werkstück derart längs einer vorbestimmten Bahn in bezug
auf einen festliegende Arbeitspunkt bewegt werden kann, daß
ein erforderlicher Vorgang ausgeführt werden kann.
-
Gemäß der vorliegenden Erfindung ist ein Verfahren vorgesehen
zum Steuern eines Roboters, der eine Reihe von mit einem
Roboterkörper verbundenen Armen, ein ein einem körperfernen
Ende der Reihe von Armen vorgesehenes Endwirkorgan-Montageteil
und ein Endwirkorgan, wie eine Hand, das an dem Endwirkorgan-
Montageteil angebracht ist und ein Werkstück trägt, umfaßt,
dadurch gekennzeichnet, daß die folgenden Schritte ausgeführt
werden zum
-
(a) festen Anordnen eines Werkzeugs in einem Referenz-Ko
ordinatensystem, das für den Roboterkörper eingerichtet ist,
und Speichern einer Koordinatenposition eines Nullpunkts
eines Werkzeug-Koordinatensystems darin, das für das Werkzeug
eingerichtet ist, und einer Koordinatenposition eines
festliegenden Arbeitspunkts des Werkzeugs in dem
Werkzeug-Koordinatensystem,
-
(b) Betätigen des Roboters, um das Werkstück so zu
positionieren, daß zwei einen Abstand voneinander aufweisende
Zielpunkte auf einer vorbestimmten Werkstückbahn nacheinander
mit dem festliegenden Arbeitspunkt zusammenfallen, wobei das
Werkstück eine betreffende vorbestimme Lage in bezug auf den
festliegenden Arbeitspunkt ein jedem der zwei einen Abstand
voneinander aufweisenden Zielpunkten hat,
-
(c) Erfassen von Betätigungszuständen verschiedener Robo
ter-Arbeitsabschnitte und Speichern von Daten, die eine
Koordinatenposition des Endwirkorgan-Montageteils in dem
Referenz-Koordinatensystems repräsentieren, und einer
Koordinatenposition eines Punkts auf dem Werkstück, der dem
festliegenden Arbeitspunkt gegenüberliegt, in einem Hand-Koordina
tensystem, das für die Hand eingerichtet ist, jedesmal dann,
wenn der Roboter ein jedem der zwei Zielpunkte Positioniert
ist, und
-
(d) Berechnen von Interpolationspunkten zwischen den zwei
Zielpunkten auf der Grundlage der Daten, welche die Koordina
tenposition des Nullpunkts des Werkzeug-Koordinatensystems
repräsentieren, der Koordinatenposition des festliegenden
Arbeitspunkts, der Koordinatenpositionen des
Endwirkorgan-Montageteils und der Koordinatenpositionen des Punkts auf dem
Werkstück, und Treiben des Roboters in Übereinstimmung mit
den Interpolationspunkten, die auf diese Weise berechnet
sind, wobei das Werkstück die betreffende Lage in bezug auf
den festliegenden Arbeitspunkt hat,
-
wobei in Schritt (d) eine erforderliche Anzahl von
Interpolationspunkten zwischen den Koordinatenpositionen und dem
Punkt auf dem Werkstück ein den zwei einen Abstand
voneinander aufweisenden Zielpunkten gesetzt werden, die
Interpolation ausgeführt wird, um die Betätigungszustände der
verschiedenen Roboter-Arbeitsabschnitte ein den einzelnen
Interpolations-punkten zu bestimmen, die Koordinatenposition
des Punkts auf dem Werkstück ein jedem Interpolationspunkt
berechnet wird und die Koordinatenposition des Endwirkorgan-
Montageteils in dem Referenz-Koordinatensystem ein jedem
Interpolationspunkt in Abhängigkeit von der Gleichung
-
[T] = [R]&supmin;¹ [U] [P]
-
berechnet wird, worin [U] eine festliegende
Koordinatensystem-Transformationsmatrix zum Transformieren von dem
Werkzeug-Koordinatensystem zu dem Referenz-Koordinatensystem und
[P] die festliegende und bekannte Koordinatenposition des
Arbeitspunkts des Werkzeugs ist.
-
Demzufolge wird der Roboter gemäß der vorliegenden Erfindung
in Übereinstimmung mit der Endwirkorgan-Arbeitsposition
getrieben, die zum Einlernen bei einer Vielzahl von Zielpunkten
auf der vorbestimmten Werkstückbahn gegeben ist, so daß das
Werkstück längs der vorbestimmten Bahn bewegt werden kann, um
einen erforderlichen Vorgang durchzuführen, und zwar selbst
bei einem Betrieb derart, daß das Werkstück in bezug auf
einen festliegende Arbeitspunkt bewegt wird, was eine Änderung
der Endwirkorgan-Arbeitsposition mit sich bringt.
-
Fig. 1 zeigt eine schematische Ansicht, die einen Roboter
darstellt, auf den ein Bahnsteuerverfahren für einen
Roboter gemäß einem Ausführungsbeispiel der
vorliegenden Erfindung angewendet wird.
-
Fig. 2 zeigt eine schematische Ansicht, die ein
Bahnsteuerverfahren für einen Roboter nach dem Stand der Technik
darstellt.
-
In einem dreidimensionalen rechtwinkligen
X-Y-Z-Referenz-Koordinatensystem, dessen Nullpunkt in einem Punkt O auf dem
Körper eines mit Gelenken versehenen sog. Playback-Roboters
liegt, wie dies in Fig. 1 gezeigt ist, ist ein Schweißbrenner
1 in einem stationären Zustand angeordnet und erstreckt sich
längs der Z-Achse des Referenz-Koordinatensystems. Das
Bezugszeichen U bezeichnet eine Koordinatenposition des
Nullpunkts eines Schweißbrenner-Koordinatensystems, welches für
den Schweißbrenner 1 eingerichtet ist, in dem
Referenz-Koordinatensystem, und das Bezugszeichen PO bezeichnet die
Koordinatenposition des vorderen Endes des Schweißbrenners 1,
d. h. den Arbeitspunkt, in dem Schweißbrenner-Koordinatensy
stem.
-
Der Roboter (von dem ein Teil in der Darstellung fortgelassen
ist) umfaßt ein Reihe von Armen (aus Gründen der Einfachheit
sind in der Darstellung nur Arme 3 u. 4 gezeigt), die mit dem
Roboterkörper verbunden sind, und eine als ein Endwirkorgan
fungierende Hand, die an einem Endwirkorgan-Montageteil
angebracht ist, der an dem körperfernen Ende der Reihe von
Armen vorgesehen ist. Der Roboterkörper und der Arm auf der
Roboterkörperseite sind, wie auch die benachbarten Arme,
mittels Gelenken miteinander verbunden. Der Roboter ist dazu
bestimmt, ein ebenflächiges Werkstück W, das mittels der Hand
gehalten ist, von der Position, die durch gestrichelte Linien
in Fig. 1 gezeigt ist, zu der Position, die durch
strichpunktierte Linien gezeigt ist, d. h. längs einer vorbestimmten
Bahn 2, welche einen ersten Scheitelpunkt al und einen
zweiten Scheitelpunkt a2 des Werkstück W verbindet, in bezug auf
den Schweißbrenner 1 zu bewegen. Vorzugsweise wird die
Werkstück-Bewegung derart bewirkt, daß das Werkstück W in einer
solchen Lage gehalten wird, daß die Unterseitenoberfläche des
Werkstücks parallel zu X-Y-Ebene liegt. Die Hand ist mit
einem Hand-Koordinatensystem zum Darstellen der Arbeitsposition
der Hand relativ zu dem Endwirkorgan-Montageteil versehen.
-
Der Roboter umfaßt Antriebsmittel (nicht gezeigt) zum
Antreiben verschiedener Roboter-Arbeitsabschnitte, welche die
Arme 3 u. 4, verschiedene Gelenke und die Hand enthalten,
verschiedene Sensoren (nicht gezeigt) zum Erfassen der
Betätigungszustände der einzelnen Arbeitsabschnitte und
Steuerungsmittel (nicht gezeigt), die Mittel zum Speichern
von Erfassungsergebnissen aus den Sensoren enthalten und dazu
bestimmt sind, die Antriebsmittel zu steuern. Eine
Beschreibung dieser Elemente ist an dieser Stelle fortgelassen, da
sie mittels herkömmlicher Verfahren aufgebaut sein können.
-
Das Folgende stellt eine Beschreibung der Arbeitsweise des
auf diese Art und Weise aufgebauten Roboters dar.
-
Vor dem Ausführen eines tatsächlichen Arbeitsvorgangs mittels
des Roboters wird der Roboter eingewiesen. Zunächst wird das
Werkstück W bei einem Schweiß-Beginnpunkt, d. h. in einer
solchen Position angeordnet, daß der erste Scheitelpunkt al
des Werkstücks W mit dem vorderen Ende (dem Arbeitspunkt) des
Schweißbrenners 1 auf der Unterseite Werkstücks W
zusammenfällt. Zu diesem Zeitpunkt nimmt das körperferne Ende des
Arms 4 eine Koordinatenposition R1 in dem
Referenz-Koordinatensystem ein. Die Koordinatenposition desjenigen Bereichs
des Werkstücks W, der dem vorderen Ende (dem Arbeitspunkt)
des Schweißbrenners gegenüberliegt, in dem
Hand-Koordinatensystem, welche der Arbeitsposition der Hand in dem
Hand-Koordinatensystem entspricht, ist durch T1 bezeichnet. Dann
wird in diesem Zustand der Einlernvorgang durchgeführt. In
Reaktion auf diesen Einlernvorgang werden die
Betätigungszustände der verschiedenen Roboter-Arbeitsabschnitte
einschließlich der Koordinatenposition T1 des Werkstücks zur
Zeit des zuvor genannten Positinierungsvorgangs mittels der
verschiedenen Sensoren erfaßt, die an dem Roboter angebracht
sind, und diese erfaßten Betätigungszustände werden als
Steuerungs information gespeichert.
-
Darauffolgend wird das Werkstück W bei einem
Schweiß-Endepunkt positioniert. Zu diesem Zeitpunkt fällt der zweite
Scheitelpunkt a2 des Werkstücks W mit dem vorderen Ende des
Schweißbrenners 1 zusammen, und das körperferne Ende des
Arms 4 nimmt eine Koordinatenposition R2 in dem
Referenz-Koordinatensystem
ein. Die Koordinatenposition desjenigen
Bereichs des Werkstücks W, der dem Arbeitspunkt gegenüberliegt,
welcher der Arbeitsposition der Hand entspricht, ist durch T2
bezeichnet. Dann wird in diesem Zustand der Einlernvorgang
durchgeführt, und die Betätigungszustände der verschiedenen
Roboter-Arbeitsabschnitte werden einschließlich der
Werkstück-Koordinatenposition T2, die von der
Werkstück-Koordinatenposition T1 verschieden ist, erfaßt und gespeichert.
-
Wenn der zuvor angegebene Einlernvorgang beendet ist, wird
der tatsächliche Betrieb unter Ausnutzung einer sog.
Playback-Funktion des Roboters durchgeführt.
-
Durch Umstellung von Gl. (1) ergibt sich
-
[T] = [R]&supmin;¹ [U] [P] ... (4)
-
In dem vorliegenden Ausführungsbeispiel ist, wie zuvor
ausgeführt, der Schweißbrenner 1 in einer festen Position ange
ordnet, so daß eine Koordinatensystem-Transformationsmatrix
[U] für die Transformation von dem
Schweißbrenner-Koordinatensystem zu dem Referenz-Koordinatensystem und die
Koordinatenposition [P] des Arbeitspunkts oder des vorderen Endes des
Schweißbrenners 1 in dem Schweißbrenner-Koordinatensystem
konstant und bekannt sind. Außerdem sind die
Werkstück-Koordinatenpositionen [T] bei dem Schweiß-Beginnpunkt und dem
Schweiß-Endepunkt durch den Einlernvorgang bekannt. Daraufhin
werden eine erforderliche Anzahl von Interpolationspunkten
zwischen den beiden Werkstück-Koordinatenpositionen bei dem
Schweiß-Beginnpunkt und dem Schweiß-Endepunkt eingerichtet,
und dann wird eine Interpolation ausgeführt, um die
Betätigungszustände der verschiedenen Roboter-Arbeitsabschnitte bei
den einzelnen Interpolationspunkten zu bestimmen.
Beispielsweise wird die Werkstück-Koordinatenposition [T] bei jedem
Interpolationspunkt berechnet, und es wird die
Koordinatenposition des Endwirkorgan-Montageteils oder des
körperfernen Endes des Arms 4 bei jedem Interpolationspunkt in
dem Referenz-Koordinatensystem gemäß Gl. (4) berechnet.
-
Dann veranlassen die Steuerungsmittel des Roboters die
Antriebsmittel, sowohl die Position, die Lage und die Geschwin
digkeit des Werkstücks W als auch die Positionen, die
Stellungen und die Geschwindigkeiten der verschiedenen Roboter-
Arbeitsabschnitte einschließlich der Arme 3 u. 4 und der Hand
so zu steuern, daß das körperferne Ende des Arms 4 mit der
Koordinatenposition [R], die wie zuvor angegeben berechnet
wurde, zusammenfällt und daß die
Werkstück-Koordinatenposition der berechneten Position [T] entspricht, d. h. die
vorbestimmte Bahn 2 auf dem Werkstück W und das vordere Ende des
Schweißbrenners 1 über den gesamten Bereich von dem Schweiß-
Beginnpunkt bis zu dem Schweiß-Endepunkt hinweg zusammen
fallen.