-
Die Erfindung betrifft die Herstellung der Relation zwischen den Koordinatensystemen zweier Roboter.
-
Es werden zunehmend Systeme mit kooperierenden Robotern eingesetzt. Bei kooperierenden Robotern muß die Relation zwischen den Koordinatensystemen der Roboter bekannt sein.
-
Anwendungsbeispiele: Es können beispielsweise mehrere Roboter gleichzeitig ein größeres Werkstück wie eine Fahrzeugkarosse bearbeiten; oder ein erster Roboter trägt ein Werkstück, und ein zweiter Roboter nimmt gleichzeitig eine Bearbeitung vor. Dies kann sogar in Bewegung geschehen; so kann z. B. der zweite Roboter eine Kleberaupe auftragen, während der erste Roboter das Teil von einer Station zur nächsten bewegt. Auch für die Übergabe eines Werkstücks von einem Roboter zu einem anderen muß der Bezug zwischen den Koordinatensystemen bekannt sein.
-
Üblicherweise wird ein gemeinsames Weltkoordinatensystem definiert, und es wird die Relation jedes Roboterkoordinatensystems zu einem Weltkoordinatensystem hergestellt. Das Weltkoordinatensystem kann natürlich identisch sein mit einem der Roboterkoordinatensysteme.
-
Bisher geschieht die Herstellung des Bezugs zweier Roboterkoordinatensysteme durch ein Einmessen mit manueller Unterstützung. Es wird auch als gegenseitige Kalibrierung, Relativkalibrierung o. ä. oder Kalibrierung auf ein gemeinsames Koordinatensystem bezeichnet.
-
Ohne Verlust der Allgemeinheit beschränken wir die Beschreibung auf das gegenseitige Einmessen zweier Roboter.
-
Das Einmessen wird bisher realisiert mit mechanischem Antasten oder mit geodätischer Vermessung.
-
Bei mechanischem Antasten fährt ein Bediener für beide Roboter eine Meßspitze, in der sich der TCP befindet, an mindestens drei Raumpunkte. Dies kann gleichzeitig geschehen, indem sich die Meßspitzen der Roboter im Raum berühren, oder zeitlich nacheinander, indem die Meßspitzen raumfeste Marken antasten. Nachteil des Verfahrens ist der bedientechnische Aufwand, außerdem hängt die Genauigkeit von der Sorgfalt des Bedieners beim Antasten ab. Außerdem dürfen die Roboter nicht zu weit voneinander entfernt sein.
-
Die geodätische Vermessung geschieht mit Theodoliten oder sonstigen Geräten, wie aus der Landvermessung bekannt. Nachteil ist, daß solche Geräte teuer sind und nur durch Fachpersonal bedient werden können.
-
Aus
US 2005/0273199 A1 ist ein System bekannt geworden, bei dem ein Roboter R1 eine Kamera trägt und ein Roboter R2 eine Marke. Die Roboter werden gegenseitig nach einem vorgegebenen Programm so verfahren, daß die Marke in der Kamera an einer vorher festgelegten Position abgebildet bleibt. Marke (feature portion) können ein Bolzen, ein Loch, ein Aufdruck, oder ein montiertes Objekt mit einem Aufdruck ([0049]) sein. Die Kamera kann nach dieser Offenlegung auch ein positionsempfindlicher Detektor sein (PSD = position sensitive device), dies ist jedoch mit Fragezeichen zu versehen, da die Marke über eine Optik auf eine lichtempfindliche Fläche abgebildet werden muß. Das Verfahren ist auch bei Roboter-Entfernungen, die über die Reichweite der Roboter hinausgehen, einsetzbar. Vorteil ist die vollautomatische Arbeitsweise und damit auch die Unabhängigkeit des Ergebnisses von der Sorgfalt des Bedieners.
-
Aufgabe ist es, eine alternative, möglichst einfachere Lösung anzugeben.
-
Die Aufgabe wird gelöst nach Anspruch 1.
-
An beiden Robotern ist eine durch den Roboter bewegbare Kamera mit angeschlossener Bildauswertung befestigt, jede Kamera wird auf drei nicht kollineare Marken gerichtet und die Position der Abbildung der Marken durch die Kamera wird für mehrere Bildaufnahmen gemessen, wobei in den Bildaufnahmen für jeden Roboter, für jede Marke mindestens sechs Bildaufnahmen mit rotatorisch gleicher und translatorisch unterschiedlicher Roboterpose und mindestens zwei Bildaufnahmen mit rotatorisch unterschiedlicher Roboterpose enthalten sind, wobei aus den Messungen der Bezug zwischen den Koordinatensystemen hergeleitet wird. In spezieller Ausgestaltung werden die Bildaufnahmen für die Marken zeitlich getrennt realisiert, wobei bei jeder Bildaufnahme nur eine Position der Abbildung der Marken durch die Kamera durchgeführt wird.
-
Vorbemerkung zur folgenden Erläuterunmg: Unter Kalibrierung einer Kamera verstehen wir die Herstellung des abbildenden Bezugs von Raumkoordinaten zu Bildkoordinaten. Für das einfache Lochkamera-Modell kann man die Abbildung mit einer Projektionsmatrix mit 11 freien Parametern darstellen, bei Erfassung nichtlinearer Verzerrungen (Verzeichnung durch die verwendete Optik) arbeitet man mit einer vorgeschalteten Verzerrungsfunktion; ausführliche Angaben dazu findet man in der Literatur unter dem Stichwort ”Kamerakalibrierung”.
-
1 zeigt zwei Roboter R1 und R2, mit Koordinatensystemen KS1 bzw. KS2, und den TCPs TCP1 bzw. TCP2, zur Vereinfachung der Darstellung mit nur drei Freiheitsgraden gezeichnet, mit je einer Kamera 2. Die Kameras sind auf Marken 3 gerichtet. Dabei ist es grundsätzlich gleichgültig, ob eine Kamera mehrere Marken erfassen kann (im Bildbeispiel die von R2) oder nur eine (im Bildbeispiel die von R1).
-
KS1 und KS2 sind zueinander verschoben und verdreht. Aufgabe des automatischen Einmessens ist es, als Bezug zwischen den Koordinatensystemen diese Verschiebung und Verdrehung zu bestimmen. Verschiebung und Verdrehung können in bekannter Weise durch eine Transformationsmatrix dargestellt werden. Die Darstellung des Bezugs kann natürlich auch als Bezug von KS1 und KS2 zu einem beliebig definierten Weltkoordinatensystem WKS erfolgen.
-
Um beste Genauigkeit zu erzielen, erfaßt jede Kamera in einem Schritt jeweils nur eine Marke (kleines Bildfeld, Marken weit voneinander entfernt).
-
Die Marken dürfen nicht kollinear sein. Als besonderer Vorteil braucht die Position der Marken im Raum nicht bekannt zu sein. Man kann die Marken also durchaus für das Einmessen einfach manuell irgendwo fixieren, solange sie über die Kameras mit Roboterbewegung erfaßbar sind.
-
Es werden mindestens sechs Bildaufnahmen einer Marke mit unterschiedlicher, allgemeiner Kameraposition und mit beliebiger, aber konstanter Kameraorientierung realisiert und jeweils die Position der Abbildung der Marke durch die Kamera bestimmt, gemessen in einem Bildkoordinatensystem. Zur Veranschaulichung des Vorgangs betrachten wir in 2 eine Marke, die mit translatorischen Bewegungen aufgenommen wird, wobei die Roboterposen hier speziell 6 von 8 Eckpunkten eines Quaders einnnehmen. Für die 11 freien Parameter der Kamerakalibrierung sind mindestens 6 Punkte erforderlich, denn jede Aufnahme einer Marke liefert 2 Bildkoordinaten. Die Kamera ”sieht” in diesem Beispiel also einen Quader, wie in 2 abgebildet (Monitorbild 4), mit Eckpunkten 5, im Bildkoordinatensystem BKS. Wohlgemerkt sind die Abbildungspunkte Abbildungen der selben Marke 3. Mit dem Lochkameramodell kann aus sechs solchen Punkten (die räumliche Verschiebung ist bekannt über die bekannte Roboterbewegung) eine Kamerakalibrierung realisiert werden. Dabei bezieht sich das Kamerakoordinatensystem auf die Marke und hat die gleiche Orientierug wie das Roboterkoordinatensystem. Die Koordinaten der Marke im Roboterkoordinatensystem sind allerdings noch unbekannt.
-
Realisierung:
-
Mit Darstellung in homogenen Koordinaten und
- – Index i der i-ten Bildaufnahme
- – Kameraprojektion K als 3×4-Matrix mit 11 freien Parametern, welche unbekannt sind,
- – inverse Roboterpose F(i) als 4×4-Matrix (enthält Rotation R(i) und Translation t(i) des TCPs)
- – Bildpunkt q(i) (der selben Marke)
- – Marke p
ergibt sich die Abbildung der Marke p auf den Bildpunkt q(i) zu q(i) = K·F(i)·p [1]
-
Legt man das Bezugssystem in die Marke p, ergibt sich p = 0 und damit
q(i) = K·t(i), wobei t(i) den Translationsanteil von F(i) darstellt und bekannt ist. Bei mindestens 6 Aufnahmen (i = 1..6) läßt sich ein überbestimmtes lineares Gleichungssystem formulieren
aus welchem sich durch bekannte mathematische Verfahren die 11 Unbekannten der Kameraprojektionsmatrix K bestimmen lassen.
-
Nun wird der translatorische Bezug von der aktuell betrachteten Marke zum Roboterkoordinatensystem des gerade betrachteten Roboters hergestellt. Dies geschieht durch eine Bewegung mit Rotationsanteil und Messung der Abbildung der Marke um einen Raumpunkt, wobei der optionale Translationsanteil so gewählt wird, daß die Marke im Bildfeld der Kamera verbleibt. Da die Kamera bereits kalibriert ist, kann man aus mindestens zwei solcher Aufnahmen die Lage der Marke in Roboterkoordinaten bestimmt werden.
-
Realisierung:
-
Das Bezugssystem KBS der Kameraprojektion K liegt in p und hat die Orientierung des Roboterbezugssystems RBS.
-
Um den Versatz des Kamerabezugssystems KBS zum RBS zu bestimmen, werden (mindestens) zwei Aufnahmen der Marke p benötigt, wobei sich die Rotationen des TCPs sowohl untereinander, als auch in Bezug zu den oben erwähnten Aufnahmen unterscheiden müssen.
-
Auf das RBS bezogen, ergibt sich die Projektionsgleichung [1] zu q(i) = K·T·F(i)·T^ – 1·p, [2] wobei T die zu bestimmende Translationsmatrix zwischen KBW und RBS, sowie T^ – 1 ihre Inverse ist. Der in T enthaltene Translationsvektor sei p'.
-
Aus [2] mit p = 0 folgt durch Umformung q(i) = K·(F(i) – I + N)·(–p'), wobei I die 4×4-Einheitsmatrix, und N die homogene Nullmatrix (alle Elemente sind Null, nur N[4, 4] = 1) darstellen.
-
Bei mindestens 2 Aufnahmen (i = 1..2) läßt sich erneut ein überbestimmtes lineares Gleichungssystem formulieren q(1) = K·(F(1) – I + N)·(–p') q(2) = K·(F(2) – I + N)·(–p'), aus welchem sich durch bekannte mathematische Verfahren die Koordinaten der Translation p' bestimmen lassen. p' ist damit zugleich die Position des Kalibrierpunktes bezüglich des RBS.
-
Natürlich wird man in der Praxis sowohl Translationen als auch Rotationen redundant ausführen, um über eine Ausgleichsrechnung eine höhere Präzision zu erreichen.
-
Das Ganze wird nun mit der gleichen Marke, jedoch mit dem anderen Roboter wiederholt. Da die gleiche Marke verwendet wurde, ist damit über die Marke, deren Position in den Koordinatensystemen beider Roboter bekannt ist, ein Bezug zwischen den Koordinatensystemen hergestellt. Es fehlt allerdings noch der rotatorische Bezug zwischen den Koordinatensystemen. Dieser wird hergestellt, indem das Ganze für alle drei Marken realisiert wird: über drei nicht kollineare Punkte, deren Position in beiden Koordinatensystemen bekannt ist, ist sowohl der translatorische als auch der rotatortische Bezug zwischen den Koordinatensystemen KS1 und KS2 direkt herstellbar, wie man es von den tastenden Verfahren her kennt.
-
Vorteile:
-
Das Verfahren erlaubt ein vollautomatisches Einmessen mehrerer Roboter, ohne daß spezielle Einrichtungen wie Kalibrierplatten oder Theodoliten erforderlich sind. Weder die Kameras noch die Marken müssen vorab vermessen werden. Besonders wichtig ist dies für die Handbhabung eines solchen Systems in der Praxis. Um das System beispielsweise nach einem Roboterwechsel oder einem Crash neu einzumessen genügt es, Kameras und Marken grob ”freihand” zu fixieren und dann den vorprogrammierten Einmeßlauf aufzurufen. Die Kameras sind bei vielen Anwendungen für andere Zwecke (z. B. Werkstückerkennung) ohnehin vorhanden. Die oben erläuterten Nachteile des mechanischen Antastens entfallen.
-
Als Vorteil gegen
US 2005/0273199 A1 sind hier keine regelnden Bewegungen wie geregelte Kreisbewegungen erforderlich. Es genügt eine begrenzte Anzahl von Aufnahmen in willkürlichen gewählten, allgemeinen Roboterposen. In Fällen mit weit voneinander entfernten Robotern, kann es von Vorteil sein, daß die Roboter keine ”Sichtverbindung” benötigen.
-
Anmerkungen:
-
Die Kamera mit angeschlossener Bildauswertung kann eine intelligente Kamera sein (Auswertung, also hier Vermessung der Markenpositiobnen im Bild, im Kameragehäuse integriert) oder eine Kamera mit getrennter Bildauswerteeinheit, z. B. einem PC mit Framegrabber.
-
Natürlich können die Verfahrensschritte für beide Roboter gleichzeitig oder zeitlich getrennt durchgeführt werden. Befinden sich mehrere Marken im Bildfeld einer Kamera, so können Messungen mehrerer Marken mit einer einzigen Bildaufnahme zusammengefaßt werden.
-
Natürlich kann das Verfahren bei mehr als zwei Robotern derart eingesetzt werden, daß die beschriebenen Meßschritte für jeden Roboter und die bezugsberechnungen jeweils für ein Roboterpaar oder gleich bezogen ein willkürlich gewähltes Koordinatesystem wie ein Zellkoordinatensystem oder Weltkoordinatensystem realisiert werden.
-
In der Praxis wird man redundante Messungen mit mehr als drei Marken realisieren, um über Ausgleichsrechnung genauere Ergebnisse zu erzielen. Ebenso kann man natürlich auch mit mehr als einer Kamera pro Roboter Redundanz herbeiführen.
-
Die Marken können sich grundsätzlich an beliebigem Ort befinden, sei es am Fußboden, an der Decke, am Stahlbau der Arbeitszelle, oder auch an ein einem dritten ansonsten ”unbeteiligten” Roboter. Dann können die drei Marken auch als einzelne Marke in drei verschiedenen Positionen realisiert werden. Die einzige Forderung ist, daß die Markenposition für die sie betreffenden Bildaufnahmen beibehalten wird oder, falls sie verändert wird, daß diese Veränderung bekannt ist.
-
Die Marken können technisch beliebig realisiert sein, z. B. als Aufdruck, Gravur oder Loch, es können auch ”natürlich” vorhandene Strukturen wie Teile der ohnehin vorhandenen Arbeitszelle als Marke verwendet werden. Unter ungünstigen Fremdlichtbedingungen ist es anzuraten, die Marken aktiv leuchtend zu realisieren, z. B. als LEDs, ggf. mit moduliertem Licht und damit sychronisierter Aufnahme, wie man es z. B. von modulierten Lichtschranken kennt.