-
Die Erfindung betrifft ein Verfahren zum Bestimmen unbekannter Transformationen in einer geschlossenen Kette von vier Transformationen, wobei zwei Transformationen bekannt sind.
-
Aus der
DE 198 26 395 A1 ist ein Verfahren bekannt zum Erfassen und Kompensieren von kinematischen Veränderungen eines Roboters aufgrund interner und/oder externer Einflüsse mit den Schritten: Bereitstellen eines Robotermodells in Form eines technischen Algorithmus mit einem oder mehreren festgelegten Parametern, welches die theoretische räumliche Stellung des Roboters in Abhängigkeit von einer oder mehreren Steuergrößen beschreibt; Steuern der theoretischen räumlichen Sollstellung des Roboters mit einer Robotersteuerung gemäß dem Robotermodell; Erfassen der tatsächlichen räumlichen Iststellung des Roboters im Betrieb durch eine Sensoreinrichtung Erfassen der kinematischen Veränderungen anhand der Abweichung der erfassten tatsächlichen räumlichen Iststellung des Roboters von der theoretischen räumlichen Sollstellung des Roboters; Anpassen des oder der Parameter des Robotermodells zum Kompensieren der kinematischen Veränderungen unter Berücksichtigung der erfassten Abweichung; und Steuern der theoretischen räumlichen Sollstellung des Roboters mit der Robotersteuerung gemäß dem Robotermodell mit dem oder den angepassten Parametern.
-
Aus der
EP 2 199 036 A2 ist ein Verfahren bekannt zur Kompensation einer kinematischen Abweichung, insbesondere einer Temperaturdrift, eines Manipulators, insbesondere eines Roboters, mit den Schritten: Anfahren verschiedener Posen des Manipulators; Erfassen einer Position eines Manipulatorgliedes mittels einer externen 3D-Positionserfassungseinrichtung in der jeweiligen Pose; und Kompensieren der kinematischen Abweichung auf Basis der erfassten Position des Manipulatorgliedes.
-
Aus der
DE 10 2008 060 052 A1 ist ein Verfahren bekannt zur Kompensation einer kinematischen Abweichung, insbesondere einer Temperaturdrift, eines Manipulators, insbesondere eines Roboters, mit den Schritten: Anfahren verschiedener Posen des Manipulators; Erfassen einer Position eines Manipulatorgliedes mittels einer externen 3D-Positionserfassungseinrichtung in der jeweiligen Pose; und Kompensieren der kinematischen Abweichung auf Basis der erfassten Position des Manipulatorgliedes.
-
Aus der
DE 10 2010 031 248 A1 ist ein Verfahren bekannt zum Vermessen eines eine Befestigungsvorrichtung für einen Endeffektor aufweisenden Roboterarms eines Industrieroboters, der am Ort seiner Anwendung aufgestellt ist, wobei der Industrieroboter den Roboterarm und eine Steuervorrichtung aufweist, die eingerichtet ist, den Roboterarm derart zu bewegen, dass die Befestigungsvorrichtung eine innerhalb eines der Anwendung des Industrieroboters zugeordneten Arbeitsraums vorbestimmte Bewegung durchführt, aufweisend folgende Verfahrensschritte: Aufstellen eines mobilen, zur Vermessung des Roboterarms geeigneten Kamerasystems am Ort der Anwendung des Industrieroboters; zumindest indirektes Einmessen eines dem Roboterarm zugeordneten, ortsfesten Roboter-Basis-Koordinatensystems bezüglich des Kamerasystems; Ansteuern des Roboterarms derart, dass die Befestigungsvorrichtung vorbestimmte Soll-Positionen und/oder Soll-Posen innerhalb des Arbeitsraums einnimmt; Ermitteln der Ist-Positionen und/oder Ist-Posen der Befestigungsvorrichtung mittels des Kamerasystems; Ermitteln eines Fehlers zwischen den Ist-Positionen und/oder Ist-Posen und den Soll-Positionen und/oder Soll-Posen.
-
Aus der
EP 1 584 426 A1 ist Messsystem aufweisend einen Roboter mit einem Werkzeug, welches an dem vorderen Ende eines Arms von diesem angebracht ist, und eine Lichtempfangsvorrichtung; wobei das Messsystem aufweist Mittel zum Versetzen des Roboters in eine Ausgangsposition; Mittel, von denen eine Abbildung der Zentrierspitze des Werkzeugs, welches an dem vorderen Ende des Arms des Roboters angebracht ist, von der Lichtempfangsvorrichtung aufgenommen wird, um dadurch auf einer Lichtempfangsfläche der Lichtempfangsvorrichtung die Position des Werkzeugmittelpunkts zu bestimmen, wobei dessen Abbildung auf die Lichtempfangsfläche fokussiert ist; Mittel zum Bestimmen des von dem Roboter zurückzulegenden Bewegungswegs auf eine solche Weise, dass die Position des Werkzeugmittelpunkts auf der Lichtempfangsfläche zu einem vorbestimmten Punkt auf der Lichtempfangsfläche bewegt wird; Mittel zum Bewegen des Roboters um den bestimmten zurückzulegenden Bewegungsweg; Mittel zum Erlangen und Speichern der Position des Roboters, nachdem der Roboter bewegt wurde; und Mittel, von denen die Position des Werkzeugmittelpunkts hinsichtlich der Werkzeuganbringungsfläche des Roboters bestimmt wird, unter Verwendung der Position des Roboters, welche für jede einer Mehrzahl von Anfangspositionen geändert und gespeichert wurde, während die Position der Lichtempfangsvorrichtung fest ist.
-
Der Erfindung liegt die Aufgabe zugrunde, ein eingangs genanntes Verfahren zu verbessern.
-
Die Lösung der Aufgabe erfolgt mit einem Verfahren mit den Merkmalen des Anspruchs 1. Vorteilhafte Weiterbildungen sind Gegenstand der Unteransprüche.
-
Das Verfahren kann zum Kalibrieren dienen. Die Transformationen können eine kinematische Kette bilden. Die Transformationen können mithilfe von vier Bezugspunkten verkettet sein. Das Verfahren kann mithilfe eines Industrieroboters durchgeführt werden. Der Industrieroboter kann eine Basis aufweisen. Der Basis kann ein Basiskoordinatensystem zugeordnet sein. Das Basiskoordinatensystem kann ein kartesisches Koordinatensystem sein. Das Basiskoordinatensystem kann einen Ursprung aufweisen. Der Industrieroboter kann einen Manipulator aufweisen. Der Manipulator kann mehrere Armabschnitte und mehrere Gelenke aufweisen. Die Gelenke können dazu dienen, den Manipulator gelenkig mit der Basis zu verbinden und/oder die Armabschnitte gelenkig miteinander zu verbinden. Der Industrieroboter kann einen Tool Center Point (TCP) aufweisen. Dem TCP kann ein TCP-Koordinatensystem zugeordnet sein. Das TCP-Koordinatensystem kann ein kartesisches Koordinatensystem sein. Das TCP-Koordinatensystem kann einen Ursprung aufweisen. Eine relative Zuordnung des Basiskoordinatensystems und des TCP-Koordinatensystems zueinander kann bekannt sein. Der Industrieroboter kann einen Effektor aufweisen. Der Effektor kann ein Endeffektor sein. Der Effektor kann eine Sensoreinrichtung sein. Die Sensoreinrichtung kann eine Kamera aufweisen. Dem Effektor kann ein Effektorkoordinatensystem zugeordnet sein. Das Effektorkoordinatensystem kann ein kartesisches Koordinatensystem sein. Das Effektorkoordinatensystem kann einen Ursprung aufweisen. Eine relative Zuordnung des Basiskoordinatensystems und des Effektorkoordinatensystems zueinander kann bekannt sein. Eine relative Zuordnung des TCP-Koordinatensystems und des Effektorkoordinatensystems zueinander kann bekannt sein.
-
Der Ursprung des Basiskoordinatensystems kann einen ersten Bezugspunkt bilden. Der Ursprung des TCP-Koordinatensystems kann einen zweiten Bezugspunkt bilden. Der Ursprung des Effektorkoordinatensystems kann einen dritten Bezugspunkt bilden. Kalibrierobjekte können vierte Bezugspunkte bilden. Die Kalibrierobjekte sind Messmarken. Die Messmarken können jeweils eine beliebige Geometrie aufweisen.
-
Eine erste Transformation kann eine Transformation zwischen dem ersten Bezugspunkt und dem zweiten Bezugspunkt sein. Eine zweite Transformation kann eine Transformation zwischen dem zweiten Bezugspunkt und dem dritten Bezugspunkt sein. Eine dritte Transformation kann eine Transformation zwischen dem dritten Bezugspunkt und dem vierten Bezugspunkt sein. Eine vierte Transformation kann eine Transformation zwischen dem ersten Bezugspunkt und dem vierten Bezugspunkt sein. Die erste Transformation kann bekannt sein. Die zweite Transformation kann unbekannt sein. Die dritte Transformation kann bekannt sein. Die vierte Transformation kann unbekannt sein.
-
Eine erste Transformation kann eine Transformation zwischen dem zweiten Bezugspunkt und dem dritten Bezugspunkt sein. Eine zweite Transformation kann eine Transformation zwischen dem zweiten Bezugspunkt und dem vierten Bezugspunkt sein. Eine dritte Transformation kann eine Transformation zwischen dem ersten Bezugspunkt und dem vierten Bezugspunkt sein. Eine vierte Transformation kann eine Transformation zwischen dem ersten Bezugspunkt und dem dritten Bezugspunkt sein.
-
Die mehreren Kalibrierobjekte können unbewegt sein und die wenigstens eine Sensoreinrichtung kann zu den mehreren Kalibrierobjekten rotiert werden. Die wenigstens eine Sensoreinrichtung kann unbewegt sein und die mehreren Kalibrierobjekte können zu der wenigstens einen Sensoreinrichtung rotiert werden.
-
Die mehreren Kalibrierobjekte können beim Rotieren mithilfe der wenigstens einen Sensoreinrichtung sensiert werden. Wenn die Sensoreinrichtung eine Kamera aufweist, können die mehreren Kalibrierobjekte beim Rotieren mithilfe der Kamera aufgenommen werden.
-
Die Translationsinformationen und die Rotationsinformationen können 6D-Transformationen bilden. Die erste Rotationsachse und die zweite Rotationsachse können zueinander nicht-parallel sein.
-
Die wenigstens eine Sensoreinrichtung und die mehreren Kalibrierobjekte können relativ zueinander um wenigstens eine weitere zu der ersten Rotationsachse und zu der zweiten Rotationsachse schräge Rotationsachse rotiert werden, um für jedes der Kalibrierobjekte weitere Translationsinformationen und weitere Rotationsinformationen zu erhalten.
-
Aus den weiteren Translationsinformationen und den weiteren Rotationsinformationen kann für jedes der Kalibrierobjekte wenigstens eine weitere optimierte Rotationsachse und wenigstens ein weiteres Rotationszentrum bestimmt werden.
-
Ein Schnittpunkt der ersten optimierten Rotationsachse, der zweiten optimierten Rotationsachse und der wenigstens einen weiteren optimierte Rotationsachse kann bestimmt werden.
-
Mithilfe des Schnittpunkts wird die wenigstens eine Sensoreinrichtung einem bekannten Koordinatensystem zugeordnet. Das bekannte Koordinatensystem kann ein Roboterkoordinatensystem sein. Mithilfe des Schnittpunkts können wenigstens zwei Sensoreinrichtungen einander zugeordnet werden.
-
Die wenigstens eine Sensoreinrichtung wird dem bekannten Koordinatensystem mithilfe der Bingham-Verteilung zugeordnet. Die wenigstens zwei Sensoreinrichtungen werden einander mithilfe der Bingham-Verteilung zugeordnet.
-
Die wenigstens eine Sensoreinrichtung und die mehreren Kalibrierobjekte können mithilfe eines Industrieroboters relativ zueinander rotiert werden. Dabei kann der Industrieroboter um zwei Roboterachsen rotieren. Die zwei Roboterachsen können robotereigene Achsen sein.
-
Das Verfahren kann zum Kalibrieren eines Industrieroboters, einer mobilen Plattform, mehrere Fahrzeugkameras oder eines Serviceroboters verwendet werden.
-
Zusammenfassend und mit anderen Worten dargestellt ergibt sich somit durch die Erfindung unter anderem eine Kalibrierungsmethode zur Roboter-Hand-Auge-Kalibrierung und/oder Kamera zu Kamera Kalibrierung. Das Verfahren beruht auf einer Aufnahme von optischen Messmarken mit einem an einem Roboter angebrachten Kamerasystem während einer Rotationsbewegung des Roboters. Für jeden Marker wird eine 6D Transformation (Position und Rotation) erhalten. Durch Optimierungsverfahren können für viele beobachtete Marker während der Rotation die Achse und der Mittelpunkt der durchgeführten Rotation des Roboters bestimmt werden. Wird dieser Schritt mit einer anderen Konfiguration des Roboter wiederholt, also zum Beispiel einem Verkippen des Roboters um eine Hochachse, können erneut die Achse und der Mittelpunkt der Rotation bestimmt werden. Der Schnittpunkt dieser beiden Geraden kann zu einem bekannten Punkt in einem Roboterkoordinatensystem korrespondieren, damit ist eine Zuordnung von Kamera zu Roboterkoordinatensystem möglich. Ebenso ist bei mehreren Kameras eine Bestimmung einer relativen Lage der Kameras möglich.
-
Eine Hand Auge Kalibrierung kann auch in Fällen, in denen der Roboter kein bekanntes Kalibrierobjekt im Sichtfeld der Kameras bewegen kann, ermöglicht werden. Dies kann einschließen: Kalibrierung ohne Kenntnis einer Roboterkinematik, damit auch Kalibrierung von Kameras auf jedem mechanisch gekoppelten System ohne Kenntnis der Lage. Eine Kalibrierung kann mithilfe einer einfachen realisierbaren Bewegungsprozedur durchgeführt werden. Es ist hinreichend, wenn sich der Roboter um zwei eigene Rotationsachsen dreht. Eine Kalibrierung ohne Kenntnis einer Geometrie eines Kalibrierobjekts wird ermöglicht. Das Kalibrierobjekt kann ein Marker sein. Das Kalibrierobjekt muss keine exakte Geometrie aufweisen. Aussagen über Ungenauigkeitsrichtungen der Kalibrierung werden ermöglicht. Rückschlüsse werden ermöglicht darüber, in welcher Richtung Ungenauigkeiten vorherrschen. Diese können direkt während der Kalibrierung genutzt werden, um eine autonome Kalibrierung hoher Güte zu erhalten. Mit dem Verfahren kann ebenso eine autonome Validierung anhand einer Beobachtung von Messmarkern durchgeführt werden, das heißt es kann festgestellt werden, ob die Kalibrierung noch gültig/präzise genug ist und falls nicht, kann automatische eine Neu-Kalibrierung initiiert werden. Dies wird ermöglicht, indem kein Kalibrierobjekt montiert werden muss. Eine Kalibrierung bei nicht überlappenden Kameras und/oder bei Kameras mit sehr unterschiedlichen Blickwinkeln ist ermöglicht. Ein Kalibriermuster muss nicht in allen Kameras sichtbar sein.
-
Mit der Erfindung wird eine Kalibrierung vereinfacht. Eine Kalibrierung wird auch bei unbekannter Roboterkinematik ermöglicht. Eine Roboterkinematik muss nicht bekannt sein. Ein externes Trackingsystem kann entfallen. Eine Kalibrierung wird auch bei unbekannter Geometrie eines Kalibrierobjekts, wie Messmarke, ermöglicht. Eine Geometrie eines Kalibrierobjekts, wie Messmarke, muss nicht bekannt sein. Eine negative Beeinflussung durch Ungenauigkeiten in einem Kalibrierobjekt, wie Messmarke, kann vermeiden werden. Eine Kalibrierung wird auch teilweiser Unsichtbarkeit eines Kalibrierobjekts, wie Messmarke, ermöglicht. Eine Bewegungsmöglichkeit bei der Kalibrierung wird erhöht. Eine Kamera-Kamer-Kalibrierung wird auch ermöglicht, wenn eine Überdeckung bzw. gemeinsame Sichtbarkeit eines Kalibrierobjekts, wie Messmarke, nicht gewährleistet ist. Eine Komplexität eines Kalibrierobjekts kann reduziert werden. Eine exakte Kalibrierung kann auch dann durchgeführt werden, wenn eine Hand-Auge-Kalibrierung nicht möglich ist.
-
Mit „kann“ sind insbesondere optionale Merkmale der Erfindung bezeichnet. Demzufolge gibt es jeweils ein Ausführungsbeispiel der Erfindung, das das jeweilige Merkmal oder die jeweiligen Merkmale aufweist.
-
Nachfolgend werden Ausführungsbeispiele der Erfindung unter Bezugnahme auf Figuren näher beschrieben. Aus dieser Beschreibung ergeben sich weitere Merkmale und Vorteile. Konkrete Merkmale dieser Ausführungsbeispiele können allgemeine Merkmale der Erfindung darstellen. Mit anderen Merkmalen verbundene Merkmale dieser Ausführungsbeispiele können auch einzelne Merkmale der Erfindung darstellen.
-
Es zeigen schematisch und beispielhaft:
- 1 ein Erfassen mehrerer Messmarken und ein Bestimmen von Rotationsachsen in Frontansicht und in Draufsicht,
- 2 ein Bestimmen einer repräsentativen Rotationsachse und
- 3 ein Bestimmen eines finalen Rotationszentrums.
-
1 zeigt ein Erfassen mehrerer Messmarken 100, 102, 104 und ein Bestimmen von Rotationsachsen 106, 108, 110 in Frontansicht und in Draufsicht. Das Verfahren wird vorliegend zum Kalibrieren eines Industrieroboters durchgeführt. Das Verfahren kann auch zum Kalibrieren einer mobilen Plattform, mehrerer Fahrzeugkameras oder eines Serviceroboters verwendet werden.
-
Der Industrieroboter weist eine Basis mit einem Basiskoordinatensystem, einen Manipulator, ein TCP-Koordinatensystem und eine Kamera als Endeffektor mit einem Kamerakoordinatensystem 112 auf. Das Kamerakoordinatensystem 112 ist ein kartesisches Koordinatensystem mit einer x-Achse, einer y-Achse und einer z-Achse, wobei die z-Achse einer Blickrichtung der Kamera entspricht und die y-Achse nach unten gerichtet ist. Mithilfe des Verfahrens wird der Industrieroboter kalibriert.
-
Dazu wird der Industrieroboter um eine erste Rotationsachse rotiert und gleichzeitig werden mithilfe der Kamera mehrerer Messmarken 100, 102, 104, wie AprilTag Marker, aufgenommen bzw. abgetastet. Dabei wird für jede sichtbare Messmarke 100, 102, 104 eine vollständige 6D-Pose erhalten, die eine Relation des Kamerakoordinatensystems 112 und der Messmarke 100, 102, 104 beschreibt. Darauf basierend werden die jeweiligen ersten Rotationsachsen 106, 108, 110 bestimmt.
-
Durch Anwenden der Bingham-Verteilung auf die ersten Rotationsachsen 106, 108, 110 wird eine repräsentative erste Rotationsachse 114 bestimmt. Die Bingham-Verteilung ist eine antipodisch symmetrische Wahrscheinlichkeitsverteilung auf einer n-Kugeloberfläche. Die repräsentative erste Rotationsachse 114 ist im Ursprung des Kamerakoordinatensystems 112 dargestellt und wird mithilfe der Funktion
bestimmt, wobei x eine Achse, beispielsweise ein Einheitsvektor, κ
1,κ
2,κ
3 Konzentrationsparameter und V =[υ
1,υ
2,υ
3] orthogonale Basisvektoren sind. F(κ
l,κ
2,κ
3) ist ein Nomalisierungsterm, sodass die Verteilung auf einer Oberfläche einer Hyperkugel zusammengeführt wird. Es kann ein Optimierungsschritt folgen.
-
Nach dem Bestimmen der repräsentativen ersten Rotationsachse 114 wird aus der repräsentativen ersten Rotationsachse 114 eine optimierte erste Rotationsachse 115 mit einem zunächst beliebig festgelegten ersten Rotationszentrum 116 bestimmt. 2 zeigt einen 3D-Zylinder 118, auf dem die Messmarken 102 liegen, die optimierte erste Rotationsachse 115 und eine Ebene 120, in der das erste Rotationszentrum 116 liegt.
-
Nachfolgend wird der Industrieroboter um eine zweite Rotationsachse rotiert und die oben beschriebene Prozedur wird erneut durchgeführt, um eine zweite optimierte Rotationsachse 122 zu bestimmen. Gegebenenfalls wird der Industrieroboter um weitere Rotationsachsen rotiert und die Prozedur wiederholt durchgeführt, um weitere optimierte Rotationsachsen, wie 124, zu bestimmen. Das finale Rotationszentrum 126 ergibt sich im Schnittpunkt 128 der Rotationsachsen 115, 122, 124.
-
Bezugszeichenliste
-
- 100
- Kalibrierobjekt, Messmarke
- 102
- Kalibrierobjekt, Messmarke
- 104
- Kalibrierobjekt, Messmarke
- 106
- erste Rotationsachse
- 108
- erste Rotationsachse
- 110
- erste Rotationsachse
- 112
- Kamerakoordinatensystem
- 114
- repräsentative erste Rotationsachse
- 115
- optimierte erste Rotationsachse
- 116
- erstes Rotationszentrum
- 118
- 3D-Zylinder
- 120
- Ebene
- 122
- zweite optimierte Rotationsachse
- 124
- weitere optimierte Rotationsachse
- 126
- finales Rotationszentrum
- 128
- Schnittpunkt