DE102021211677A1 - Robotersystem mit ergänzendem metrologiepositionsbestimmungssystem - Google Patents

Robotersystem mit ergänzendem metrologiepositionsbestimmungssystem Download PDF

Info

Publication number
DE102021211677A1
DE102021211677A1 DE102021211677.9A DE102021211677A DE102021211677A1 DE 102021211677 A1 DE102021211677 A1 DE 102021211677A1 DE 102021211677 A DE102021211677 A DE 102021211677A DE 102021211677 A1 DE102021211677 A1 DE 102021211677A1
Authority
DE
Germany
Prior art keywords
scale
camera
end tool
image
metrology
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021211677.9A
Other languages
English (en)
Inventor
Michael Nahum
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitutoyo Corp
Original Assignee
Mitutoyo Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US17/071,974 external-priority patent/US11002529B2/en
Application filed by Mitutoyo Corp filed Critical Mitutoyo Corp
Publication of DE102021211677A1 publication Critical patent/DE102021211677A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • B25J9/041Cylindrical coordinate type
    • B25J9/042Cylindrical coordinate type comprising an articulated arm
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Manipulator (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

Ein ergänzendes Metrologiepositionsbestimmungssystem wird zur Verwendung mit einem Roboter bereitgestellt. Der Roboter schließt eine bewegliche Armkonfiguration und ein Bewegungssteuerungssystem ein, das dazu konfiguriert ist, eine Endwerkzeugposition mit einer Robotergenauigkeit (d. h. basierend auf im Roboter enthaltenen Sensoren) zu steuern. Das ergänzende System schließt Kameras und 2D-Skalen ein, die jeweils an der beweglichen Armkonfiguration angebracht sind (z. B. an Armabschnitten und/oder Drehgelenken angebracht sind). Die Kameras werden betrieben, um Bilder zum Bestimmen relativer Positionen der Skalen zu aufzunehmen. Die Skalen können mit Drehgelenken (wie sie z. B. verwendet werden können, um eine Drehbewegung sowie jede Bewegung quer zu einer Drehachse zu bestimmen) und/oder mit Armabschnitten (wie sie beispielsweise verwendet werden können, um jegliches Biegen oder Verdrehen der Armabschnitte zu bestimmen) gekoppelt sein. Derartige Informationen können verwendet werden, um eine höhere Genauigkeit (z. B. für Messvorgänge und/oder zur Steuerung des Roboters usw.) zu erreichen.

Description

  • QUERVERWEIS ZU (EINER) VERWANDTEN ANMELDUNG(EN)
  • Diese Anmeldung ist eine teilweise Fortsetzung der US-Patentanmeldung Nr. 16/146,640 mit dem Titel „SUPPLEMENTARY METROLOGY POSITION COORDINATES DETERMINATION SYSTEM FOR USE WITH A ROBOT“, eingereicht am 28. September 2018, die eine teilweise Fortsetzung der US-Patentanmeldung Nr. 16/104,033 mit dem Titel „ROBOT SYSTEM WITH SUPPLEMENTARY METROLOGY POSITION COORDINATES DETERMINATION SYSTEM“, eingereicht am 16. August 2018, ist, die hiermit durch Bezugnahme in ihrer Gesamtheit aufgenommen werden.
  • ALLGEMEINER STAND DER TECHNIK
  • Technisches Gebiet
  • Diese Offenbarung betrifft Robotersysteme und insbesondere Systeme zum Bestimmen von Koordinaten einer Endwerkzeugposition eines Roboters.
  • Beschreibung der verwandten Technik
  • Robotersysteme kommen zunehmend für Fertigungs- und andere Prozesse zur Verwendung. Zu den verschiedenen Arten von Robotern, die verwendet werden können, gehören Knickarmroboter, selektiv ausgleichende Knickarmroboter (SCARA-Roboter), kartesische Roboter, zylindrische Roboter, kugelförmige Roboter usw. Als ein Beispiel für Komponenten, die in einem Roboter enthalten sein können, kann ein SCARA-Robotersystem (das z. B. eine Art Knickarmrobotersystem sein kann) typischerweise eine Basis aufweisen, wobei ein erster Armabschnitt drehbar mit der Basis verbunden ist und ein zweiter Armabschnitt drehbar mit einem Ende des ersten Armabschnitts verbunden ist. In verschiedenen Konfigurationen kann ein Endwerkzeug mit einem Ende des zweiten Armabschnitts gekoppelt sein (z. B. zum Durchführen bestimmter Arbeits- und/oder Prüfvorgänge). Solche Systeme können Positionssensoren (z. B. Drehcodierer) einschließen, die zum Bestimmen/Steuern der Positionierung der Armabschnitte und entsprechend der Positionierung des Endwerkzeugs verwendet werden. Bei verschiedenen Implementierungen können derartige Systeme eine Positionierungsgenauigkeit von ungefähr 100 Mikrometer aufweisen, die durch bestimmte Faktoren (z. B. die Leistung des Drehcodierers in Kombination mit der mechanischen Stabilität des Robotersystems usw.) begrenzt ist.
  • Das US-Patent Nr. 4,725,965 , das hiermit durch Bezugnahme in seiner Gesamtheit aufgenommen wird, offenbart bestimmte Kalibrierungstechniken zum Verbessern der Genauigkeit eines SCARA-Systems. Wie in dem '965-Patent beschrieben, wird eine Technik zum Kalibrieren eines Roboters vom SCARA-Typ bereitgestellt, der einen ersten drehbaren Armabschnitt und einen zweiten drehbaren Armabschnitt, der ein Endwerkzeug trägt, umfasst. Die Kalibrierungstechnik bezieht sich auf den Umstand, dass der SCARA-Roboter unter Verwendung eines kinematischen Modells gesteuert werden kann, das, wenn es genau ist, das Platzieren der Armabschnitte sowohl in einer ersten als auch in einer zweiten Winkelkonfiguration ermöglicht, in der das vom zweiten Armabschnitt getragene Endwerkzeug in der gleichen Position bleibt. Um das kinematische Modell zu kalibrieren, werden die Armabschnitte in einer ersten Konfiguration platziert, um das Endwerkzeug über einem festen Bezugspunkt anzuordnen. Dann werden die Armabschnitte in eine zweite Winkelkonfiguration gebracht, um das Endwerkzeug nominell wieder in Übereinstimmung mit dem Bezugspunkt anzuordnen. Der Fehler im kinematischen Modell wird aus der Verschiebung der Position des Endwerkzeugs vom Bezugspunkt berechnet, wenn die Armabschnitte von der ersten in die zweite Winkelkonfiguration umgeschaltet werden. Das kinematische Modell wird dann gemäß dem berechneten Fehler kompensiert. Die Schritte werden wiederholt, bis der Fehler Null erreicht, wobei zu diesem Zeitpunkt das kinematische Modell des SCARA-Roboters als kalibriert gilt.
  • Wie in dem '965-Patent weiter beschrieben, kann die Kalibrierungstechnik die Verwendung bestimmter Kameras einschließen. In einer Implementierung kann der Bezugspunkt beispielsweise das Zentrum des Sichtfelds einer stationären Fernsehkamera sein (d. h. auf dem Boden unter dem Endwerkzeug angeordnet), und das Ausgangssignal der Kamera kann verarbeitet werden, um die Verschiebung in der Position des Endwerkzeugs aus dem Zentrum des Sichtfelds der Kamera zu bestimmen, wenn die Verbindungen von der ersten in die zweite Konfiguration umgeschaltet werden. In einer anderen Implementierung kann der zweite Armabschnitt eine Kamera tragen, und die Technik kann damit beginnen, dass die Armabschnitte in einer ersten Winkelkonfiguration platziert werden, in der ein zweiter vorgegebener Innenwinkel zwischen den Armabschnitten gemessen wird, um die Kamera zu zentrieren, die von dem zweiten Armabschnitt direkt über einem festen Bezugspunkt getragen wird. Die Armabschnitte werden dann in einer zweiten Winkelkonfiguration platziert, bei der ein Innenwinkel gleich dem zweiten vorgegebenen Innenwinkel zwischen den Armabschnitten gemessen wird, um die Kamera nominell wieder über dem Bezugspunkt zu zentrieren. Das Ausgangssignal der Kamera wird dann verarbeitet, um die Verschiebung der Position des Bezugspunkts aus Sicht der Kamera beim Umschalten der Armabschnitte von der ersten in die zweite Winkelkonfiguration zu bestimmen. Der Fehler der bekannten Position der Kamera wird dann entsprechend der Verschiebung der Position des Bezugspunktes aus Sicht der Kamera bestimmt. Die Schritte werden dann als Teil des Kalibrierungsprozesses wiederholt, bis der Fehler gegen Null geht.
  • Während Techniken wie die im '965-Patent beschriebenen zum Kalibrieren eines Robotersystems verwendet werden können, kann es bei bestimmten Anwendungen weniger wünschenswert sein, solche Techniken zu verwenden (weil sie z. B. viel Zeit in Anspruch nehmen und/oder nicht die gewünschte Genauigkeit für alle möglichen Orientierungen eines Roboters während bestimmter Vorgänge bieten usw.). Ein Robotersystem, das in solchen Punkten Verbesserungen bieten kann (z. B. zur Erhöhung der Zuverlässigkeit, Wiederholbarkeit, Geschwindigkeit usw. der Positionsbestimmung bei Werkstückmessungen und anderen Prozessen) wäre wünschenswert.
  • KURZDARSTELLUNG
  • Diese Kurzdarstellung wird bereitgestellt, um eine Auswahl von Konzepten in einer vereinfachten Form einzuführen, die nachstehend in der detaillierten Beschreibung weiter beschrieben werden. Diese Zusammenfassung soll weder Schlüsselmerkmale des beanspruchten Gegenstands identifizieren noch als Hilfe beim Bestimmen des Umfangs des beanspruchten Gegenstands dienen.
  • Ein ergänzendes Metrologiepositionsbestimmungssystem wird zur Verwendung in Verbindung mit einem Roboter als Teil eines Robotersystems bereitgestellt. Der Roboter (z. B. ein Knickarmroboter, ein SCARA-Roboter, ein kartesischer Roboter, ein zylindrischer Roboter, ein kugelförmiger Roboter usw.) schließt eine bewegliche Armkonfiguration und ein Bewegungssteuerungssystem ein. Die bewegliche Armkonfiguration schließt einen ersten Armabschnitt, einen zweiten Armabschnitt und eine Endwerkzeugmontagekonfiguration zum Montieren eines Endwerkzeugs ein. Der erste Armabschnitt ist an einem ersten Drehgelenk an einem proximalen Ende des ersten Armabschnitts montiert. Das erste Drehgelenk weist eine erste Drehachse auf. Der erste Armabschnitt weist ein zweites Drehgelenk auf, das an einem distalen Ende des ersten Armabschnitts angeordnet ist. Das zweite Drehgelenk weist eine zweite Drehachse auf. Der zweite Armabschnitt ist an dem zweiten Drehgelenk an einem proximalen Ende des zweiten Armabschnitts derart montiert, dass sich der zweite Armabschnitt um das zweite Drehgelenk dreht. Die Endwerkzeugmontagekonfiguration ist nahe einem distalen Ende der beweglichen Armkonfiguration angeordnet. Das Bewegungssteuerungssystem ist dazu konfiguriert, eine Endwerkzeugposition des Endwerkzeugs mit einem Genauigkeitsgrad zu steuern, der als Robotergenauigkeit definiert ist, zumindest teilweise basierend auf dem Erfassen und Steuern der Winkelpositionen des ersten und des zweiten Armabschnitts um das erste und das zweite Drehgelenk jeweils unter Verwendung von im Roboter enthaltenen Drehsensoren. Das ergänzende Metrologiepositionsbestimmungssystem schließt eine erste und eine zweite zweidimensionale (2D-) Skala, eine erste Kamera, eine zweite Kamera und einen Metrologieverarbeitungsabschnitt ein. Die erste und die zweite zweidimensionale (2D-) Skala sind mit der beweglichen Armkonfiguration an der ersten bzw. der zweiten 2D-Skalenkopplungsstelle gekoppelt. Jede 2D-Skala schließt ein nominell ebenes Substrat und eine Vielzahl von jeweiligen abbildungsfähigen Merkmalen ein, die auf dem ebenen Substrat verteilt sind. Die erste Kamera dient zum Aufnehmen eines Bildes der ersten 2D-Skala zu einem Bildaufnahmezeitpunkt. Die erste Kamera definiert eine erste Referenzposition und die erste Kamera ist mit der beweglichen Armkonfiguration an einer ersten Kamerakopplungsstelle gekoppelt. Die zweite Kamera dient zum Aufnehmen eines Bildes der zweiten 2D-Skala zum Bildaufnahmezeitpunkt. Die zweite Kamera definiert eine zweite Referenzposition und die zweite Kamera ist mit der beweglichen Armkonfiguration an einer zweiten Kamerakopplungsstelle gekoppelt. Der Metrologieverarbeitungsabschnitt ist dazu konfiguriert, eine erste relative Position der ersten 2D-Skala zumindest teilweise basierend auf einem ersten Bild der ersten 2D-Skala, wie es von der ersten Kamera zu einem ersten Bildaufnahmezeitpunkt aufgenommen wurde, zu bestimmen und eine erste relative Position der zweiten 2D-Skala zumindest teilweise basierend auf einem ersten Bild der zweiten 2D-Skala, wie es von der zweiten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde, zu bestimmen.
  • Der Metrologieverarbeitungsabschnitt kann ferner dazu konfiguriert sein, Koordinaten der Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala zu bestimmen. Die erste 2D-Skalenkopplungsstelle kann sich auf dem ersten Drehgelenk befinden und eine Bewegung quer zur ersten Drehachse während der Drehung des ersten Drehgelenks kann eine Änderung der relativen Position der ersten 2D-Skala bewirken. Der Metrologieverarbeitungsabschnitt kann ferner dazu konfiguriert sein, eine Winkelorientierung der ersten 2D-Skala zumindest teilweise basierend auf dem ersten Bild der ersten 2D-Skala zu bestimmen, das von der ersten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde. Die Kopplungsstelle der ersten 2D-Skala kann sich an dem ersten Armabschnitt befinden und ein Biegen und/oder Verdrehen des ersten Armabschnitts kann eine Änderung der relativen Position der ersten 2D-Skala (z. B. relativ zur ersten Kamera und/oder der entsprechenden ersten Referenzposition) bewirken. Der Metrologieverarbeitungsabschnitt kann ferner dazu konfiguriert sein, eine zweite relative Position der ersten 2D-Skala zumindest teilweise basierend auf einem zweiten Bild der ersten 2D-Skala, wie es von der ersten Kamera zu einem zweiten Bildaufnahmezeitpunkt aufgenommen wurde, zu bestimmen, und eine zweite relative Position der zweiten 2D-Skala zumindest teilweise basierend auf einem zweiten Bild der zweiten 2D-Skala, wie es von der zweiten Kamera zum zweiten Bildaufnahmezeitpunkt aufgenommen wurde, zu bestimmen. Der Metrologieverarbeitungsabschnitt kann ferner dazu konfiguriert sein, die Metrologiepositionskoordinaten einer ersten Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala zu bestimmen und die Metrologiepositionskoordinaten einer zweiten Endwerkzeugposition zum zweiten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten zweiten relativen Positionen der ersten und der zweiten 2D-Skala zu bestimmen. Der Metrologieverarbeitungsabschnitt kann ferner dazu konfiguriert sein, die bestimmten Metrologiepositionskoordinaten der ersten und der zweiten Endwerkzeugposition zu verwenden, um eine Dimension zu bestimmen, die sich auf einen Abstand zwischen der ersten und der zweiten Endwerkzeugposition bezieht. Die Dimension kann ein Abstand zwischen einer ersten und einer zweiten Oberflächenposition auf einem Werkstück sein, und ein Kontaktpunkt des Endwerkzeugs kann die erste Oberflächenposition auf dem Werkstück zum ersten Bildaufnahmezeitpunkt kontaktieren und die zweite Oberflächenposition auf dem Werkstück zum zweiten Bildaufnahmezeitpunkt kontaktieren. Das Endwerkzeug kann ein Tastkopf und/oder eine Abtastsonde sein, der/die zum Messen des Werkstücks verwendet wird.
  • Ebenfalls offenbart ist ein Verfahren zum Betreiben eines ergänzenden Metrologiepositionsbestimmungssystems, das mit einem Roboter verwendet wird. Das Verfahren kann so zusammengefasst werden, dass es Folgendes einschließt: Betreiben der ersten Kamera zum Aufnehmen eines ersten Bild der ersten 2D-Skala zu einem ersten Bildaufnahmezeitpunkt, wobei die erste Kamera mit der beweglichen Armkonfiguration des Roboters an einer ersten Kamerakopplungsstelle gekoppelt ist und eine erste Referenzposition definiert, und die erste 2D-Skala mit der beweglichen Armkonfiguration an einer ersten 2D-Skalenkopplungsstelle gekoppelt ist; Betreiben der zweiten Kamera zum Aufnehmen eines ersten Bildes der zweiten 2D-Skala zum ersten Bildaufnahmezeitpunkt, wobei die zweite Kamera mit der beweglichen Armkonfiguration des Roboters an einer zweiten Kamerakopplungsstelle gekoppelt ist und eine zweite Referenzposition definiert, und die zweite 2D-Skala mit der beweglichen Armkonfiguration an einer zweiten 2D-Skalenkopplungsstelle gekoppelt ist; Bestimmen einer ersten relativen Position der ersten 2D-Skala zumindest teilweise basierend auf dem ersten Bild der ersten 2D-Skala, wie es von der ersten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde; und Bestimmen einer ersten relativen Position der zweiten 2D-Skala zumindest teilweise basierend auf dem ersten Bild der zweiten 2D-Skala, wie es von der zweiten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde.
  • Das Verfahren kann ferner das Bestimmen von Metrologiepositionskoordinaten einer ersten Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala einschließen. Das Verfahren kann ferner Folgendes einschließen: Betreiben der ersten Kamera zum Aufnehmen eines zweiten Bildes der ersten 2D-Skala zu einem zweiten Bildaufnahmezeitpunkt; Betreiben der zweiten Kamera zum Aufnehmen eines zweiten Bildes der zweiten 2D-Skala zum zweiten Bildaufnahmezeitpunkt; Bestimmen einer zweiten relativen Position der ersten 2D-Skala zumindest teilweise basierend auf dem zweiten Bild der ersten 2D-Skala, wie es von der ersten Kamera zum zweiten Bildaufnahmezeitpunkt aufgenommen wurde; und Bestimmen einer zweiten relativen Position der zweiten 2D-Skala zumindest teilweise basierend auf dem zweiten Bild der zweiten 2D-Skala, wie es von der zweiten Kamera zum zweiten Bildaufnahmezeitpunkt aufgenommen wurde. Das Verfahren kann ferner das Bestimmen der Metrologiepositionskoordinaten einer ersten Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala einschließen; und Bestimmen der Metrologiepositionskoordinaten einer zweiten Endwerkzeugposition zum zweiten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten zweiten relativen Positionen der ersten und der zweiten 2D-Skala. Das Verfahren kann ferner das Verwenden der bestimmten Metrologiepositionskoordinaten der ersten und der zweiten Endwerkzeugposition einschließen, um eine Dimension zu bestimmen, die sich auf einen Abstand zwischen der ersten und der zweiten Endwerkzeugposition bezieht. Die Dimension kann ein Abstand zwischen der ersten und der zweiten Oberflächenposition auf einem Werkstück sein. Ein Kontaktpunkt des Endwerkzeugs kann die erste Oberflächenposition auf dem Werkstück zum ersten Bildaufnahmezeitpunkt kontaktieren und die zweite Oberflächenposition auf dem Werkstück zum zweiten Bildaufnahmezeitpunkt kontaktieren. Das Verfahren kann ferner das Koppeln der ersten und der zweiten 2D-Skala mit der beweglichen Armkonfiguration an der ersten bzw. der zweiten 2D-Skalenkopplungsstelle; Koppeln der ersten Kamera mit der beweglichen Armkonfiguration an der ersten Kamerakopplungsstelle; und Koppeln der zweiten Kamera mit der beweglichen Armkonfiguration an der zweiten Kamerakopplungsstelle einschließen.
  • Ebenfalls offenbart ist ein ergänzendes Metrologiepositionsbestimmungssystem zur Verwendung mit einem Roboter, das eine bewegliche Armkonfiguration mit einer Endwerkzeugmontagekonfiguration zum Montieren eines Endwerkzeugs und ein Bewegungssteuerungssystem einschließt, das dazu konfiguriert ist, eine Endwerkzeugposition des Endwerkzeugs zu steuern. Das ergänzende Metrologiepositionsbestimmungssystem kann so zusammengefasst werden, dass es eine erste und eine zweite zweidimensionale (2D-) Skala, eine erste Kamera, eine zweite Kamera und einen Metrologieverarbeitungsabschnitt einschließt. Die erste und die zweite zweidimensionale (2D-) Skala sind dazu konfiguriert, an der ersten bzw. der zweiten 2D-Skalenkopplungsstelle mit der beweglichen Armkonfiguration des Roboters gekoppelt zu werden. Jede 2D-Skala schließt ein nominell ebenes Substrat und eine Vielzahl von jeweiligen abbildungsfähigen Merkmalen ein, die auf dem ebenen Substrat verteilt sind. Die erste Kamera dient zum Aufnehmen eines Bildes der ersten 2D-Skala zu einem Bildaufnahmezeitpunkt. Die erste Kamera definiert eine erste Referenzposition und die erste Kamera ist dazu konfiguriert, an einer ersten Kamerakopplungsstelle mit der beweglichen Armkonfiguration gekoppelt zu werden. Die zweite Kamera dient zum Aufnehmen eines Bildes der zweiten 2D-Skala zum Bildaufnahmezeitpunkt. Die zweite Kamera definiert eine zweite Referenzposition und die zweite Kamera ist dazu konfiguriert, an einer zweiten Kamerakopplungsstelle mit der beweglichen Armkonfiguration gekoppelt zu werden. Der Metrologieverarbeitungsabschnitt ist dazu konfiguriert, eine erste relative Position der ersten 2D-Skala zumindest teilweise basierend auf einem ersten Bild der ersten 2D-Skala, wie es von der ersten Kamera zu einem ersten Bildaufnahmezeitpunkt aufgenommen wurde, zu bestimmen und eine erste relative Position der zweiten 2D-Skala zumindest teilweise basierend auf einem ersten Bild der zweiten 2D-Skala, wie es von der zweiten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde, zu bestimmen. Metrologiepositionskoordinaten einer ersten Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt werden zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala bestimmt.
  • Die erste 2D-Skalenkopplungsstelle kann sich an einem ersten Drehgelenk der beweglichen Armkonfiguration befinden, das eine erste Drehachse aufweist und eine Bewegung quer zur ersten Drehachse während der Drehung des ersten Drehgelenks bewirkt eine Änderung der relativen Position der ersten 2D-Skala. Der Metrologieverarbeitungsabschnitt kann ferner dazu konfiguriert sein, eine Winkelorientierung der ersten 2D-Skala zumindest teilweise basierend auf dem ersten Bild der ersten 2D-Skala zu bestimmen, das von der ersten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde. Die erste 2D-Skalenkopplungsstelle kann sich an einem ersten Armabschnitt der beweglichen Armkonfiguration befinden, und ein Biegen und/oder Verdrehen des ersten Armabschnitts kann eine Änderung der relativen Position der ersten 2D-Skala bewirken.
  • Das hierin beschriebene ergänzende Metrologiepositionsbestimmungssystem kann zu einem bestehenden Roboter hinzugefügt werden, der bereits ein Messsystem (siehe z. B. Block 140 von 1) mit in jedem der Roboterdrehgelenke enthaltenen Drehcodierern einschließt, das in der Lage ist, eine Messung/Bestimmung in Bezug darauf bereitzustellen, wo sich die Endwerkzeugposition am Ende der Roboterarme befindet, und die hier als „Robotergenauigkeit“ bezeichnet wird und für die die enthaltenen Codierer manchmal eine begrenzte/geringere Genauigkeit aufweisen als erwünscht. Die vorliegende Erfindung soll ein ergänzendes Messsystem bereitstellen (das z. B. an einem bestehenden Roboter angebracht werden kann, wobei die zusätzlichen Kameras und Skalen an den Roboterarmen angebracht sind), und das eine verbesserte Genauigkeit zum Bestimmen der Endwerkzeugposition am Ende des Roboters (d. h. am Ende der Roboterarme) bereitstellen kann. Genauer gesagt können die Codierer in dem bestehenden Roboter nur die Drehungen der Drehgelenke messen, und für die das Robotersystem/-modell annehmen kann, dass sich alle Gelenke perfekt drehen und dass die Arme perfekt gerade bleiben. Dies ist unter Umständen aus verschiedenen Gründen nicht der Fall (z. B. können die Arme schwer sein, was zu Biegen/Verdrehen der Arme/Gelenke führen kann; das am Ende des Arms platzierte Endwerkzeug kann schwer sein; die Gelenke drehen unter Umständen nicht perfekt usw.), weshalb die Bewegung der Gelenke (oder eine andere Bewegung quer zum/zur erwarteten Gelenk/Drehachse) „Wackeln“ oder „Spiel“ oder ein gewisses Maß an Biegen/Verdrehen der Arme usw. aufweisen kann. Die vorliegende Erfindung fügt Kameras und 2D-Skalen hinzu, die an den Gelenken und/oder Roboterarmen angebracht sind, und für die die 2D-Skalen von den Kameras überwacht/abgebildet werden, um sowohl die üblichen Drehbewegungen als auch die unerwünschten Bewegungen (z. B. Wackeln, Spiel, Biegen, Verdrehung usw.) zu detektieren, und für die die Bestimmungen des Betrags der unerwünschten Bewegungen zu der Berechnung/dem Modell zum Bestimmen der Endwerkzeugposition des Endwerkzeugs am Ende des Roboters hinzugefügt werden können, mit einer besseren Genauigkeit, als wenn nur die Drehcodierer des Roboters verwendet würden. In einigen Implementierungen können solche Techniken ermöglichen, dass Genauigkeiten im Bereich von 10 Mikrometer oder besser erreicht werden (z. B. im Gegensatz zu einer Genauigkeit von 100 Mikrometern bestimmter früherer Robotersysteme). Eine solche verbesserte Genauigkeit kann für bestimmte Anwendungen (z. B. Messungen von Werkstücken, Präzisionsbohren von Löchern in Werkstücken, Präzisionsmanipulation und Platzierung von sehr kleinen Werkstücken oder anderen Elementen usw.) besonders wünschenswert sein.
  • Figurenliste
    • 1 ist ein Blockdiagramm einer ersten beispielhaften Implementierung eines Robotersystems, das einen Knickarmroboter und ein ergänzendes Metrologiepositionsbestimmungssystem einschließt;
    • 2 ist ein isometrisches Diagramm einer zweiten beispielhaften Implementierung eines Robotersystems ähnlich dem Robotersystem von 1;
    • 3 ist eine Draufsicht auf einen Abschnitt eines Robotersystems;
    • 4 ist eine Seitenansicht eines Abschnitts eines Robotersystems;
    • 5 ist ein isometrisches Diagramm einer ersten beispielhaften Implementierung einer inkrementellen 2D-Skala;
    • 6 ist ein isometrisches Diagramm einer zweiten beispielhaften Implementierung einer inkrementellen 2D-Skala;
    • 7 ist ein isometrisches Diagramm einer beispielhaften Implementierung einer absoluten 2D-Skala;
    • 8 ist ein Blockdiagramm einer dritten beispielhaften Implementierung eines Robotersystems, das einen Knickarmroboter und ein ergänzendes Metrologiepositionsbestimmungssystem einschließt;
    • 9 ist ein isometrisches Diagramm einer vierten beispielhaften Implementierung eines Robotersystems ähnlich dem Robotersystem von 8 mit einem Knickarmroboter;
    • 10 ist eine Seitenansicht eines Abschnitts eines Robotersystems;
    • 11 ist eine Seitenansicht eines Abschnitts eines Robotersystems;
    • 12A und 12B sind Flussdiagramme, die beispielhafte Implementierungen von Routinen zum Betreiben eines Robotersystems darstellen, das einen Knickarmroboter und ein ergänzendes Metrologiepositionsbestimmungssystem einschließt;
    • 13 ist ein Flussdiagramm, das eine beispielhafte Implementierung einer Routine zum Bestimmen einer Endwerkzeugposition veranschaulicht, bei der Positionssensoren eines Roboters während eines ersten Abschnitts einer Bewegungszeitgabe verwendet werden können und ein ergänzendes Metrologiepositionsbestimmungssystem während eines zweiten Abschnitts einer Bewegungszeitgabe verwendet werden kann; und
    • 14 ist ein Flussdiagramm, das eine beispielhafte Implementierung einer Routine zum Betreiben eines ergänzenden Metrologiepositionsbestimmungssystems veranschaulicht, das mit einem Roboter verwendet wird.
  • DETAILLIERTE BESCHREIBUNG
  • 1 ist ein Blockdiagramm einer ersten beispielhaften Implementierung eines Robotersystems 100, das einen Knickarmroboter 110 und ein ergänzendes Metrologiepositionsbestimmungssystem 150 einschließt. Der Knickarmroboter 110 beinhaltet eine bewegliche Armkonfiguration (Movable Arm Configuration - MAC) und ein Roboterbewegungssteuerungs- und -verarbeitungssystem 140. In dem Beispiel von 1 schließt die bewegliche Armkonfiguration MAC einen ersten und einen zweite Armabschnitt 121 und 122, ein erstes und ein zweites Drehgelenk 131 und 132 (die z. B. als Teil des ersten und des zweiten Bewegungsmechanismus enthalten sind), die Positionssensoren SEN1 und SEN2 und eine Endwerkzeugkonfiguration ETCN ein. Der erste Armabschnitt 121 ist an dem ersten Drehgelenk 131 an einem proximalen Ende PE1 des ersten Armabschnitts 121 montiert. Das erste Drehgelenk 131 (das z. B. an einem oberen Ende eines tragenden Basisabschnitts BSE angeordnet ist) weist eine Drehachse RA1 auf, die entlang einer z-Achsenrichtung derart ausgerichtet ist, dass der erste Armabschnitt 121 sich nominell um das erste Drehgelenk 131 in einer xy-Ebene bewegen soll, die senkrecht zur z-Achse steht. Das zweite Drehgelenk 132 ist an einem distalen Ende DE1 des ersten Armabschnitts 121 angeordnet. Die Drehachse RA2 des zweiten Drehgelenks 132 ist nominell entlang der z-Achsenrichtung ausgerichtet. Der zweite Armabschnitt 122 ist an dem zweiten Drehgelenk 132 an einem proximalen Ende PE2 des zweiten Armabschnitts 122 derart montiert, dass sich der zweite Armabschnitt 122 nominell um das zweite Drehgelenk 132 in einer xy-Ebene bewegen soll, die nominell senkrecht zur z-Achse ist. In verschiedenen Implementierungen können die Positionssensoren SEN1 und SEN2 (z. B. Drehcodierer), verwendet werden, die zum Bestimmen der Winkelpositionen (d. h. in der xy-Ebene) des ersten und des zweiten Armabschnitts 121 und 122 um das erste und das zweite Drehgelenk 131 bzw. 132 dienen.
  • In verschiedenen Implementierungen kann die Endwerkzeugkonfiguration ETCN einen Z-Bewegungsmechanismus 133 (der z. B. als Teil eines dritten Bewegungsmechanismus enthalten ist), einen Z-Armabschnitt ZARM (z. B. als dritter Armabschnitt bezeichnet), einen Positionssensor SEN3 und einen Endwerkzeugkopplungsabschnitt ETCP (der z. B. als Teil einer Endwerkzeugmontagekonfiguration ETMC enthalten ist), der an ein Endwerkzeug ETL gekoppelt ist, einschließen. In verschiedenen Implementierungen kann das Endwerkzeug ETL einen Endwerkzeugerfassungsabschnitt ETSN und einen Endwerkzeugtaststift ETST mit einem Kontaktpunkt CP (z. B. zum Kontaktieren einer Oberfläche eines Werkstücks WP) einschließen. Der Z-Bewegungsmechanismus 133 ist nahe dem distalen Ende DE2 des zweiten Armabschnitts 122 angeordnet. Der Z-Bewegungsmechanismus 133 (z. B. ein Linearaktuator) ist dazu konfiguriert, den Z-Armabschnitt ZARM in Richtung der Z-Achse nach oben und unten zu bewegen. In einigen Implementierungen kann der Z-Armabschnitt ZARM auch so konfiguriert sein, dass er sich um eine Achse parallel zur Z-Achsenrichtung dreht. In jedem Fall ist das Endwerkzeug ETL an dem Endwerkzeugkopplungsabschnitt ETCP gekoppelt und weist eine entsprechende Endwerkzeugposition ETP mit entsprechenden Koordinaten (z. B. x-, y- und z-Koordinaten) auf. In verschiedenen Implementierungen kann die Endwerkzeugposition ETP dem distalen Ende DE3 des Z-Armabschnitts ZARM entsprechen oder diesem nahe sein (z. B. an oder nahe dem Endwerkzeugkopplungsabschnitt ETCP).
  • Das Bewegungssteuerungssystem 140 des Roboters ist dazu konfiguriert, die Endwerkzeugposition ETP des Endwerkzeugs ETL mit einem Genauigkeitsgrad zu steuern, der als Robotergenauigkeit definiert ist. Genauer gesagt ist das Bewegungssteuerungssystem 140 im Allgemeinen dazu konfiguriert, die Koordinaten der Endwerkzeugposition ETP mit der Robotergenauigkeit zumindest teilweise basierend auf dem Erfassen und Steuern der Winkelpositionen (d. h. in der xy-Ebene) des ersten und des zweiten Armabschnitts 121 und 122 um das erste und das zweite Drehgelenk 131 bzw. 132 unter Verwendung der Positionssensoren SEN1 und SEN2 zu steuern. In verschiedenen Implementierungen kann das Bewegungssteuerungs- und -verarbeitungssystem 140 einen ersten und einen zweiten Drehgelenksteuerungs- und -erfassungsabschnitt 141 und 142 einschließen, die Signale von den Positionssensoren SEN1 bzw. SEN2 zum Erfassen der Winkelpositionen des ersten und des zweiten Armabschnitts 121 und 122 empfangen können, und/oder Steuersignale (z. B. an Motoren usw.) in dem ersten und dem zweiten Drehgelenk 131 und 132 zum Drehen des ersten und des zweiten Armabschnitts 121 bzw. 122 bereitstellen können.
  • Im Allgemeinen bezieht sich die Robotergenauigkeit auf bestimmte Annahmen über die Bewegungen des Roboters (z. B. in Bezug auf ein Modell, wie ein kinematisches und/oder geometrisches Modell usw., und/oder entsprechende Berechnungen, die zum Bestimmen der Endwerkzeugposition dienen). Gemäß der Robotergenauigkeit kann die Bestimmung der Endwerkzeugposition beispielsweise im Allgemeinen auf den bekannten Längen des ersten und des zweiten Armabschnitts 121 und 122 basieren, von denen angenommen wird, dass sie eben und gerade sind und sich nicht biegen oder verdrehen, und den Drehungen um das erste und das zweite Drehgelenk 131 und 132, von denen angenommen wird, dass sie präzise sind, mit einer zentrierten Drehbewegung um jede jeweilige Drehachse jedes Drehgelenks herum. In einigen Fällen können sich jedoch bestimmte Armabschnitte biegen oder verdrehen und/oder kann eine Drehgelenkbewegung quer zu der jeweiligen Drehachse erfolgen. Beispielsweise kann eine vertikale Verschiebung oder ein Durchhängen an den distalen Enden DE1 und DE2 des ersten und des zweiten Armabschnitts 121 bzw. 122 auftreten (z. B. aufgrund des Gewichts und/oder unterschiedlicher Ausrichtungen der Armabschnitte und/oder der Endwerkzeugkonfiguration usw.) und/oder es kann eine unerwünschte Bewegung während der Drehung um das erste und/oder das zweite Drehgelenk 131 und 132 (z. B. eine Bewegung quer zur jeweiligen Drehachse) geben. Wie nachstehend ausführlicher beschrieben wird, kann gemäß den hierin offenbarten Prinzipien eine höhere Genauigkeit für eine Bestimmung einer Endwerkzeugposition oder einer anderen Roboterbewegung/-positionierung erreicht werden, indem ein ergänzendes Metrologiepositionsbestimmungssystem verwendet wird, das in der Lage ist, zu bestimmen, solche unerwünschten Bewegungen (z. B. Biegen oder Verdrehen von Armabschnitten, Drehgelenkbewegung quer zu einer Drehachse usw.) zu messen und/oder auf andere Weise zu berücksichtigen. Es versteht sich, dass selbst kleine Verbesserungen der Genauigkeit für bestimmte Anwendungen (z. B. für Mess- und Steuerungsvorgänge eines Roboters, wie z. B. Messungen von Werkstücken, Präzisionsbohren von Löchern in Werkstücken usw.) höchst wünschenswert sein können.
  • Das Bewegungssteuerungssystem 140 des Roboters ist auch im Allgemeinen dazu konfiguriert, die z-Koordinate der Endwerkzeugposition ETP mit der Robotergenauigkeit zumindest teilweise basierend auf dem Erfassen und Steuern der linearen Position (d. h. entlang der z-Achse) des Z-Armabschnitts ZARM unter Verwendung des Z-Bewegungsmechanismus 133 und des Positionssensors SEN3 zu steuern. In verschiedenen Implementierungen kann das Bewegungssteuerungs- und -verarbeitungssystem 140 einen Z-Arm-Bewegungsmechanismussteuerungs- und -erfassungsabschnitt 143 einschließen, der Signale von dem Positionssensor SEN3 zum Erfassen der linearen Position des Z-Armabschnitts ZARM empfangen kann und/oder Steuersignale an den Z-Bewegungsmechanismus 133 (z. B. einen Linearaktuator) bereitstellen kann, um die z-Position des Z-Armabschnitts ZARM zu steuern. Wie nachstehend ausführlicher beschrieben wird, kann das ergänzende Metrologiepositionsbestimmungssystem 150 in einigen Implementierungen einen entsprechenden Positionssensor 163 einschließen, der ähnliche Informationen bereitstellen kann und ähnlich wie der Positionssensor SEN3 arbeiten kann (oder der z. B. anders funktionieren kann und/oder ein Sensor mit höherer Genauigkeit als der Positionssensor SEN3) sein kann. In einigen Implementierungen beinhaltet das ergänzende Metrologiepositionsbestimmungssystem 150 möglicherweise keinen entsprechenden Positionssensor 163 und kann stattdessen die erfassten Daten von dem Positionssensor SEN3 verwenden, die an das ergänzende Metrologiepositionsbestimmungssystem 150 gesendet werden. In einigen Implementierungen kann das ergänzende Metrologiepositionsbestimmungssystem 150 andere erfasste Positionsinformationen (z. B. bezüglich relativer Positionen der Armabschnitte 121 und 122 und/oder Drehgelenke 131 und 132) an das Bewegungssteuerungs- und -verarbeitungssystem 140 zum genaueren Bestimmen einer Endwerkzeugposition bereitstellen.
  • Das Bewegungssteuerungs- und -verarbeitungssystem 140 und/oder das ergänzende Metrologiepositionsbestimmungssystem 150 können auch Signale von dem Endwerkzeugerfassungsabschnitt ETSN empfangen. In verschiedenen Implementierungen kann der Endwerkzeugerfassungsabschnitt ETSN eine Schaltung und/oder Konfigurationen enthalten, die sich auf die Vorgänge des Endwerkzeugs ETL zum Erfassen eines Werkstücks WP beziehen. Wie nachstehend ausführlicher beschrieben wird, kann das Endwerkzeug-ETL (z. B. ein Tastkopf, eine Abtastsonde, eine Kamera usw.) in verschiedenen Implementierungen zum Kontaktieren oder anderweitigen Erfassen von Oberflächenpositionen/Positionen/Punkten auf einem Werkstück WP verwendet werden, für das verschiedene entsprechende Signale von dem Endwerkzeugerfassungsabschnitt ETSN, der dem Bewegungssteuerungs- und - verarbeitungssystem 140 und/oder dem ergänzenden Metrologiepositionsbestimmungssystem 150 entsprechende Signale bereitstellen kann, empfangen, bestimmt und/oder verarbeitet werden können. In verschiedenen Implementierungen können das Bewegungssteuerungs- und -verarbeitungssystem 140 und/oder das ergänzende Metrologiepositionsbestimmungssystem 150 einen Endwerkzeugsteuerungs- und -erfassungsabschnitt 144 einschließen, der Steuersignale an den Endwerkzeugerfassungsabschnitt ETSN bereitstellen und/oder Erfassungssignale von diesem empfangen kann. In verschiedenen Implementierungen können der Endwerkzeugsteuerungs- und -erfassungsabschnitt 144 und der Endwerkzeugerfassungsabschnitt ETSN zusammengeführt und/oder nicht unterscheidbar sein. In verschiedenen Implementierungen können sowohl der erste und der zweite Drehgelenksteuerungs- und -erfassungsabschnitt 141 und 142 als auch der Z-Bewegungsmechanismussteuerungs- und -erfassungsabschnitt 143 und der Endwerkzeugsteuerungs- und -erfassungsabschnitt 144 Ausgänge an einen Roboterpositionsverarbeitungsabschnitt 145 bereitstellen und/oder Steuersignale von diesem empfangen, der die Gesamtpositionierung des Knickarmroboters 110 und die entsprechende Endwerkzeugposition ETP als Teil des Roboterbewegungssteuerungs- und - verarbeitungssystems 140 steuern und/oder bestimmen kann. In verschiedenen Implementierungen kann der Knickarmroboter 110 ein bezeichnetes betreibbares Arbeitsvolumen OPV aufweisen, das auch oder alternativ als ein Endwerkzeugarbeitsvolumen ETWV bezeichnet werden kann, in dem zumindest ein Abschnitt des Endwerkzeugs (z. B. der Kontaktpunkt CP) bewegt werden kann (z. B. zum Messen/Überprüfen eines Werkstücks, usw.).
  • In der Konfiguration von 1 ist der Roboter 110 dazu konfiguriert, die bewegliche Armkonfiguration MAC zu bewegen, um zumindest einen Abschnitt des Endwerkzeugs ETL, das an der Endwerkzeugmontagekonfiguration ETMC montiert ist, entlang von zumindest zwei Dimensionen im Endwerkzeugarbeitsvolumen ETWV bewegen. Das Bewegungssteuerungssystem 140 ist dazu konfiguriert, die Endwerkzeugposition ETP mit einem Genauigkeitsgrad, der als Robotergenauigkeit definiert ist, zumindest teilweise basierend auf dem Erfassen und Steuern der Position der beweglichen Armkonfiguration MAC (z. B. unter Verwendung eines oder mehrerer im Roboter 110 enthaltener Positionssensoren) zu steuern.
  • In verschiedenen Implementierungen kann das ergänzende Metrologiepositionsbestimmungssystem 150 in einem Knickarmroboter 110 enthalten oder anderweitig zu diesem hinzugefügt werden (z. B. als Teil einer Nachrüstkonfiguration zum Hinzufügen zu einem bestehenden Knickarmroboter 110 usw.). Im Allgemeinen kann das ergänzende Metrologiepositionsbestimmungssystem 150 dazu verwendet werden, einen verbesserten Genauigkeitsgrad für die Bestimmung der Endwerkzeugposition ETP bereitzustellen. Genauer gesagt, wie nachstehend ausführlicher beschrieben wird, kann das ergänzende Metrologiepositionsbestimmungssystem 150 dazu verwendet werden, relative Positionen zu bestimmen, die die Metrologiepositionskoordinaten der Endwerkzeugposition ETP angeben und dazu verwendet werden können, diese mit einem Genauigkeitsgrad zu bestimmen, der besser als die Robotergenauigkeit ist.
  • Wie in 1 veranschaulicht, kann das ergänzende Metrologiepositionsbestimmungssystem 150 die Kameras 161A, 161B, 162A, 162B, einen Sensor 163, die Skalen 171A, 171B, 172A, 172B und einen Metrologiepositionskoordinatenverarbeitungsabschnitt 190 beinhalten. Wie in den 1 und 2 dargestellt (d. h. für die die Konfiguration von 2 nachstehend ausführlicher beschrieben wird), sind die Kameras/Skalen als vier Kamera-/Skalensätze angeordnet, einschließlich der Kameras 161A, 161B, 162A und 162B, die jeweils auf eine entsprechende Skala 171A, 171B, 172A und 172B gerichtet sind. Die Skalen 171A und 172A befinden sich an Drehgelenken des Roboters 110 und die Skalen 171 B und 172B befinden sich an Armabschnitten des Roboters 110. Jede der Kameras 161A, 161B, 162A und 162B und der Skalen 171A, 171B, 172A und 172B ist mit dem Roboter 110 an einer jeweiligen Kopplungsstelle CL1-CL8 gekoppelt. Genauer gesagt ist die Kamera 161A mit einer Montagehalterung BK1A verbunden, die mit dem tragenden Basisabschnitt BSE an einer Kamerakopplungsstelle CL1 verbunden ist. Die Skala 171A ist mit dem ersten Drehgelenk 131 an einer 2D-Skalenkopplungsstelle CL2 gekoppelt, die der Drehachse RA1 des ersten Drehgelenks 131 entspricht. Die Kamera 161B ist mit dem ersten Armabschnitt 121 an einer Kamerakopplungsstelle CL3 gekoppelt. Die Skala 171B ist mit dem ersten Armabschnitt 121 an einer 2D-Skalenkopplungsstelle CL4 gekoppelt, die sich in der Nähe des zweiten Drehgelenks 132 befindet. Die Kamera 162A ist mit einer Montagehalterung BK2A gekoppelt, die an einer Kamerakopplungsstelle CL5 mit dem ersten Armabschnitt 121 gekoppelt ist. Der Skala 172A ist mit dem zweiten Drehgelenk 132 an einer 2D-Skalenkopplungsstelle CL6 gekoppelt, die der Drehachse RA2 des zweiten Drehgelenks 132 entspricht. Die Kamera 162B ist mit dem zweiten Armabschnitt 122 an einer Kamerakopplungsstelle CL7 gekoppelt. Die Skala 172B ist mit dem zweiten Armabschnitt 122 an einer 2D-Skalenkopplungsstelle CL8 gekoppelt, die sich in der Nähe des Z-Armabschnitts ZARM befindet. In verschiedenen Implementierungen kann die Kopplung jeder der verschiedenen Komponenten unter Verwendung einer oder mehrerer Kopplungskomponenten, -elemente, -mechanismen und/oder -techniken (z. B. Befestigungselemente, Bolzen, Klemmen, Klebstoff usw.) erreicht werden
  • Wie in den 1 und 2 dargestellt (d. h. für die die Konfiguration von 2 nachstehend ausführlicher beschrieben wird), definiert die Kamera 161A in verschiedenen Implementierungen eine Referenzposition REF1, und eine optische Achse OA1A der Kamera 161A ist an der Drehachse RA1 des ersten Drehgelenks 131 ausgerichtet, und Merkmale der Skala 171A können durch die Kamera 161A abgebildet werden. Die Kamera 161B definiert eine Referenzposition REF2, und eine optische Achse OA1B der Kamera 161B ist an einem Abschnitt (z. B. Mittelabschnitt) der Skala 171B ausgerichtet, und Merkmale der Skala 171B können durch die Kamera 161B abgebildet werden. Die Kamera 162A definiert eine Referenzposition REF3, und eine optische Achse OA2A der Kamera 162A ist an der Drehachse RA2 des zweiten Drehgelenks 132 ausgerichtet, und Merkmale der Skala 172A können durch die Kamera 162A abgebildet werden. Die Kamera 162B definiert eine Referenzposition REF4, und eine optische Achse OA2B der Kamera 162B ist an einem Abschnitt (z. B. Mittelabschnitt) der Skala 172B ausgerichtet, und Merkmale der Skala 172B können durch die Kamera 162B abgebildet werden.
  • Jede der vier Kameras 161A, 161B, 162A und 162B wird von einem jeweiligen Bildgebungskonfigurationssteuerungs- und -verarbeitungsabschnitt (ICCPP) 181A, 181B, 182A und 182B gesteuert und stellt an diesen Bildsignale bereit. Ein Triggerabschnitt 187 kann in einigen Fällen das Auslösen aller Kameras 161A, 161B, 162A und 162B koordinieren, um gleichzeitig ein Bild zu erhalten (z. B. entsprechend einer Position des Roboters 110 zu einem bestimmten Zeitpunkt zum Bestimmen der Endwerkzeugposition am Ende des Roboters 110 zu diesem Zeitpunkt). Bei Implementierungen, in denen ein Positionssensor 163 enthalten ist (z. B. zum Erfassen der Position des Z-Armabschnitts ZARM), kann dieser von einem Erfassungskonfigurationssteuerungs- und -verarbeitungsabschnitt (SCCPP) 183 gesteuert werden und Positionssignale an diesen bereitstellen, wofür die Erfassung und/oder das Aufzeichnen von Positionsdaten in einigen Implementierungen durch das Signal von dem Triggerabschnitt 187 ausgelöst werden kann.
  • In verschiedenen Implementierungen umfasst jede der 2D-Skalen 171A, 171B, 172A und 172B ein nominell ebenes Substrat SUB und eine Vielzahl jeweiliger abbildungsfähiger Merkmale, die auf dem Substrat SUB verteilt sind. Die jeweiligen abbildungsfähigen Merkmale sind an jeweiligen bekannten lokalen Koordinaten der x- und y-Skala auf jeder 2D-Skala angeordnet. In verschiedenen Implementierungen kann jede 2D-Skala eine inkrementelle oder absolute Skala sein, wie nachstehend in Bezug auf 5-7 ausführlicher beschrieben wird.
  • In verschiedenen Implementierungen können der Triggerabschnitt 187 und/oder der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 als Teil eines externen Steuersystems ECS (z. B. als Teil eines externen Computers usw.) enthalten sein. Der Triggerabschnitt 187 kann als Teil eines Bildgebungs- und Erfassungskonfigurationssteuerungs- und -verarbeitungsabschnitts 180 enthalten sein. In verschiedenen Implementierungen ist der Triggerabschnitt 187 dazu konfiguriert, mindestens ein Eingangssignal einzugeben, das sich auf die Endwerkzeugposition ETP bezieht, und um die Zeitgabe eines ersten Triggersignals basierend auf dem mindestens einen Eingangssignal zu bestimmen und das erste Triggersignal an die Kameras 161A, 161B, 162A und 162B und den Positionssensor 163 auszugeben. In verschiedenen Implementierungen ist jede der Kameras 161A, 161B, 162A und 162B dazu konfiguriert, ein digitales Bild der entsprechenden 2D-Skala 171A, 171B, 172A bzw. 172B zu einem Bildaufnahmezeitpunkt als Reaktion auf das Empfangen des ersten Triggersignals aufzunehmen. In verschiedenen Implementierungen ist der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 dazu konfiguriert, die aufgenommenen Bilder einzugeben und mindestens ein jeweiliges abbildungsfähiges Merkmal, das in jedem aufgenommenen Bild der 2D-Skalen enthalten ist, und eine zugehörige jeweilige bekannte Koordinatenposition der 2D-Skala zu identifizieren. In verschiedenen Implementierungen kann das externe Steuersystem ECS auch einen Standardroboterpositionskoordinatenmodusabschnitt 147 und einen ergänzenden Metrologiepositionskoordinatenmodusabschnitt 192 einschließen, um entsprechende Modi zu implementieren, wie nachstehend ausführlicher beschrieben wird.
  • In verschiedenen Implementierungen kann jeder Bildgebungskonfigurationssteuerungs- und -verarbeitungsabschnitt 181A, 181B, 182A und 182B eine Komponente (z. B. eine Teilschaltung, Routine usw.) einschließen, die eine Bildintegration der entsprechenden Kamera 161A, 161B, 162A und 162B periodisch aktiviert (z. B. in einem festgelegten Zeitintervall), für die das erste Triggersignal eine Stroboskoplichtzeitgabe (für die z. B. jede Kamera 161A, 161B, 162A und 162B ein Stroboskoplicht einschließen kann) oder einen anderen Mechanismus aktivieren kann, um die Bewegung effektiv einzufrieren und entsprechend eine Belichtung innerhalb des Integrationszeitraums zu bestimmen. In solchen Implementierungen kann, wenn während der Integrationsperiode kein erstes Triggersignal empfangen wird, ein resultierendes Bild verworfen werden, wobei, wenn während der Integrationsperiode ein erstes Triggersignal empfangen wird, das resultierende Bild gespeichert und/oder anderweitig verarbeitet/analysiert werden kann, um eine relative Position zu bestimmen, wie nachstehend ausführlicher beschrieben wird.
  • In verschiedenen Implementierungen können verschiedene Arten von Endwerkzeugen ETL verschiedene Arten von Ausgaben bereitstellen, die in Bezug auf den Triggerabschnitt 187 verwendet werden können. Beispielsweise kann in einer Implementierung, bei der das Endwerkzeug-ETL ein Tastkopf ist, der zum Messen eines Werkstücks verwendet wird und der ein Berührungssignal ausgibt, wenn er das Werkstück berührt, der Triggerabschnitt 187 dazu konfiguriert sein, dieses Berührungssignal oder ein daraus abgeleitetes Signal als das mindestens eine Eingangssignal einzugeben, auf dessen Basis die Zeitgabe eines ersten Triggersignals bestimmt wird. Als weiteres Beispiel kann in einer Implementierung, bei der das Endwerkzeug ETL eine Abtastsonde ist, die zum Messen eines Werkstücks verwendet wird und die jeweilige Werkstückmessabtastdaten entsprechend einem jeweiligen Abtastzeitsignal bereitstellt, der Triggerabschnitt 187 dazu konfiguriert sein, dieses jeweilige Abtastzeitsignal oder ein davon abgeleitetes Signal als das mindestens eine Eingangssignal einzugeben. Als weiteres Beispiel kann in einer Implementierung, bei der das Endwerkzeug ETL eine Kamera ist, die dazu verwendet wird, ein jeweiliges Werkstückmessbild bereitzustellen, das einem jeweiligen Werkstückbildaufnahmesignal entspricht, der Triggerabschnitt 187 dazu konfiguriert sein, dieses Werkstückbildaufnahmesignal oder ein davon abgeleitetes Signal als das mindestens eine Eingangssignal einzugeben.
  • In der beispielhaften Implementierung von 1 ist das ergänzende Metrologiepositionsbestimmungssystem 150 so konfiguriert, dass der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 dazu betreibbar ist, eine relative Position (z. B. einschließlich lokaler Koordinaten der x- und y-Skala, die die Skalenorientierung, den Ort usw. angeben können) zwischen jeder 2D-Skala 171A, 171B, 172A und 172B und der entsprechenden Referenzposition REF1, REF2, REF3, REF4 der entsprechenden Kamera 161A, 161B, 162A und 162B (z. B. basierend auf der Bestimmung einer Bildposition des identifizierten mindestens einen jeweiligen abbildungsfähigen Merkmal in jedem aufgenommenen Bild) zu bestimmen. Die bestimmten relativen Positionen können verwendet werden, um die Metrologiepositionskoordinaten der Endwerkzeugposition ETP zum Bildaufnahmezeitpunkt mit einem Genauigkeitsgrad zu bestimmen, der besser als die Robotergenauigkeit ist. In verschiedenen Implementierungen kann das ergänzende Metrologiepositionsbestimmungssystem 150 dazu konfiguriert sein, die Metrologiepositionskoordinaten der Endwerkzeugposition ETP zum Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten relativen Positionen zu bestimmen.
  • Wie vorstehend erwähnt, kann sich die Robotergenauigkeit auf ein Modell (z. B. kinematisch, geometrisch usw.) und/oder entsprechende Berechnungen oder andere Prozesse beziehen, die zum Bestimmen der Endwerkzeugposition verwendet werden. Entsprechend derartigen Roboterprozessen kann die Bestimmung der Endwerkzeugposition beispielsweise im Allgemeinen auf den bekannten Längen des ersten und des zweiten Armabschnitts 121 und 122, von denen angenommen wird, dass sie eben und gerade sind und sich nicht biegen oder verdrehen, und der Drehung um das erste und das zweite Drehgelenk 131 und 132, von der angenommen wird, dass sie präzise ist, mit einer zentrierten Drehbewegung um jede jeweilige Drehachse jedes Drehgelenks herum, basieren. Wenn unerwünschte Bewegungen auftreten (z. B. Biegen oder Verdrehen der Armabschnitte, Drehgelenkbewegung quer zur jeweiligen Drehachse usw.), kann die Roboterbestimmung der Endwerkzeugposition ungenau sein. In Übereinstimmung mit den hierin offenbarten Prinzipien, unter Verwendung des ergänzenden Metrologiepositionsbestimmungssystems 150, das in der Lage ist, solche unerwünschten Bewegungen (z. B. Biegen oder Verdrehen von Armabschnitten, Drehgelenkbewegung quer zu einem Achse usw.) zu bestimmen, zu messen und/oder anderweitig zu berücksichtigen, kann eine höhere Genauigkeit für eine Bestimmung einer Endwerkzeugposition und/oder einer anderen Roboterbewegung/-positionierung erreicht werden. Im Hinblick auf ein beispielhaftes kinematisches und/oder geometrisches Modell, das vom Robotersystem übernommen wird (z. B. mit geraden Roboterarmen bestimmter Länge und perfekter Drehung), indem zusätzliche Messinformationen bestimmt/zu einem solchen Modell hinzugefügt werden, können genauere Positionsinformationen bestimmt werden. Anstatt beispielsweise anzunehmen, dass der erste und der zweite Armabschnitt 121 und 122 gerade sind, können die jeweiligen Kamera-/Skalenkombinationen 161B/171B (für den ersten Armabschnitt 121) und 162B/172B (für den zweiten Armabschnitt 122) Positionsinformationen/Messungen bereitstellen, die ein eventuelles Biegen, Verdrehen usw. der Armabschnitte 121 und 122 darstellen. Anstatt davon auszugehen, dass die Drehbewegung um jedes der Drehgelenke 131 und 132 perfekt ist, können in ähnlicher Weise die jeweiligen Kamera-/Skalenkombinationen 161A/171A (für das erste Drehgelenk 131) und 162A/172A (für das zweite Drehgelenk 132) Positionsinformationen/-messungen liefern, die jede Drehgelenkbewegung quer zur jeweiligen Drehachse darstellen (sowie Positionsinformationen/-messungen bereitstellen, die die eher standardmäßige Winkelorientierung der jeweiligen 2D-Skala mit hoher Genauigkeit angeben). Durch Einbeziehen solcher Informationen (z. B. als Teil eines kinematischen und/oder geometrischen Modells, Berechnungen usw.) zum Bestimmen der Positionen der Roboterarme und/oder der Endwerkzeugposition (z. B. an einem distalen Ende der beweglichen Armkonfiguration MAC) usw., kann ein höheres Maß an Genauigkeit erreicht werden.
  • In bestimmten Implementierungen kann das ergänzende Metrologiepositionsbestimmungssystem 150 relativ unabhängig (z. B. von dem Roboterverarbeitungsabschnitt 145) für die Bestimmungen mit höherer Genauigkeit (z. B. der Endwerkzeugposition usw.) arbeiten. In anderen Implementierungen kann das zusätzliche Metrologiepositionsbestimmungssystem 150 in Verbindung (z. B. mit dem Roboterverarbeitungsabschnitt 145 und/oder Steuerungs- und Erfassungsabschnitten oder anderen Abschnitten des Roboters und/oder anderer Systeme) arbeiten, um die Bestimmungen mit höherer Genauigkeit zu erreichen. Zum Beispiel kann das ergänzende Metrologiepositionsbestimmungssystem 150 bestimmte Informationen von dem Robotersystem (z. B. von dem Roboterpositionsverarbeitungsabschnitt oder Steuerungs- und Erfassungsabschnitten oder auf andere Weise) zum Kombinieren, Ergänzen und/oder Hinzufügen zu bestimmten Positionsinformationen (z. B. zum Bestimmen einer Endwerkzeugposition usw.) empfangen. Als weiteres Beispiel kann das ergänzende Metrologiepositionsbestimmungssystem 150 an das Robotersystem oder ein anderes System, das bestimmte Positionsinformationen von dem Roboter und ergänzenden Systemen kombinieren kann, bestimmte Informationen bereitstellen, um sie zu kombinieren, zu ergänzen und/oder bestimmten Positionsinformationen hinzuzufügen (z. B. zum Bestimmen einer Endwerkzeugposition, usw.).
  • Es versteht sich, dass ein solches System gegenüber verschiedenen alternativen Systemen gewisse Vorteile aufweisen kann. Zum Beispiel kann ein System wie das hierin offenbarte in verschiedenen Implementierungen kleiner und/oder weniger kostspielig sein als alternative Systeme, die Technologien wie Lasertracker oder Photogrammetrie zum Verfolgen von Roboterbewegungen/-positionen verwenden, und kann in einigen Implementierungen auch eine höhere Genauigkeit aufweisen. Das offenbarte System nimmt auch keinen Teil des betreibbaren Arbeitsvolumens OPV ein oder verdeckt ihn, wie etwa alternative Systeme, die eine Skala oder Passermarke auf dem Boden oder Tisch oder anderweitig in demselben Bereich (z. B. betreibbares Arbeitsvolumen) einschließen können, wo Werkstücke anderweitig bearbeitet und/oder überprüft werden können usw. Darüber hinaus muss in verschiedenen Implementierungen dadurch, dass alle Kameras und Skalen mit dem Roboter gekoppelt sind (z. B. einschließlich mit beweglichen Abschnitten der beweglichen Armkonfiguration wie Armabschnitten und Drehgelenken gekoppelt) für die Kameras oder Skalen keine externe Struktur oder externe Kopplung in der Roboterumgebung vorgesehen werden.
  • 2 ist ein isometrisches Diagramm einer zweiten beispielhaften Implementierung eines Robotersystems 200, das dem Robotersystem 100 von 1 im Wesentlichen ähnlich ist. Es versteht sich, dass bestimmte nummerierte Komponenten (z. B. 1XX oder 2XX) von 2 den identisch oder ähnlich nummerierten Gegenkomponenten (z. B. 1XX) von 1 entsprechen und/oder ähnliche Vorgänge aufweisen können, und als ähnlich oder identisch dazu verstanden werden können und ansonsten analog dazu und wie nachstehend anderweitig beschrieben verstanden werden können. Dieses Nummerierungsschema zum Angeben von Elementen mit analoger und/oder identischer Auslegung und/oder Funktion wird auch auf andere nachfolgend beschriebene Figuren angewendet.
  • In der Konfiguration von 2 (d. h. ähnlich der Konfiguration von 1) schließt das ergänzende Metrologiepositionsbestimmungssystem 150 die Kameras 161A, 161B, 162A und 162B, die jeweils auf die entsprechenden Skalen 171A, 171B, 172A und 172B gerichtet sind und jeweils an den jeweiligen Armabschnitten 121 und 122 angebracht sind, die Drehgelenke 131 und 132 usw., ein. In verschiedenen Implementierungen können verschiedene Referenzachsen und -linien zum Referenzieren bestimmter Bewegungen, Koordinaten und Winkel der Komponenten des Knickarmroboters bezeichnet werden. Zum Beispiel können der erste und der zweite Armabschnitt 121 und 122 jeweils bezeichnete nominell horizontale Mittellinien CT1 bzw. CT2 aufweisen, die durch die Zentren der jeweiligen Armabschnitte nach unten verlaufen.
  • In verschiedenen Implementierungen kann die Endwerkzeugkonfiguration ETCN mit dem zweiten Armabschnitt 122 nahe dem distalen Ende DE2 des zweiten Armabschnitts 122 gekoppelt sein und kann so bezeichnet sein, dass sie eine Endwerkzeugachse EA des Endwerkzeugs ETL aufweist, die nominell die Mittellinie CT2 des zweiten Armabschnitts 122 schneidet. Die Endwerkzeugposition ETP kann mit den Koordinaten X2, Y2, Z2 bezeichnet werden. In verschiedenen Implementierungen kann das Endwerkzeug ETL einen Kontaktpunkt CP aufweisen (z. B. am Ende eines Endwerkzeugtaststifts ETST zum Kontaktieren eines Werkstücks), der mit den Koordinaten X3, Y3, Z3 bezeichnet werden kann. In einer Implementierung, bei der der Kontaktpunkt CP des Endwerkzeugs ETL in x- oder y-Richtung relativ zum Rest des Endwerkzeugs nicht variiert, können die X3- und Y3-Koordinaten in einigen Fällen nominell gleich den X2- bzw. Y2-Koordinaten sein. Es versteht sich, dass in Fällen, in denen eine Biegung oder Verdrehung der Armabschnitte 121 und 122 bestimmt wird (d. h. in Übereinstimmung mit den hierin offenbarten Prinzipien), das resultierende Modell (z. B. kinematisch, geometrisch usw.) angeben kann, dass die X3- und Y3-Koordinaten von den X2- und Y2-Koordinaten abweichen. Zum Beispiel können die gebogenen oder verdrehten Armabschnitte zu einer entsprechenden Neigung usw. des Endwerkzeugs ETL führen, für die die Messung/Bestimmung des Ausmaßes der Biegung/Verdrehung in das Modell aufgenommen werden kann, um eine genauere Angabe der Koordinaten X3 und Y3 relativ zu den Koordinaten X2 und Y2 usw. zu bestimmen.
  • In einem spezifischen Implementierungsbeispiel kann jedes aufgenommene Bild der jeweiligen Kameras 161A, 161B, 162A und 162B durch den Metrologiepositionskoordinatenverarbeitungsabschnitt 190 analysiert werden, um eine relative Position (z. B. entsprechend einem Ort, einer Orientierung usw. der jeweiligen Skala 171A, 171 B, 172A und 172B) zu bestimmen. Solche Bestimmungen können gemäß Standardkamera-/Skalenbildverarbeitungstechniken (z. B. zum Bestimmen eines Ortes, einer Orientierung usw. einer Kamera relativ zu einer Skala) durchgeführt werden. Verschiedene Beispiele solcher Techniken sind in den US-Patenten Nr. 6,781,694 ; 6,937,349 ; 5,798,947 ; 6,222,940 ; und 6,640,008 beschrieben, von denen jedes hiermit in seiner Gesamtheit durch Bezugnahme hierin aufgenommen wird. In verschiedenen Implementierungen können solche Techniken dazu verwendet werden, den Ort eines Sichtfelds (z. B. entsprechend einer Position einer Kamera) innerhalb eines Skalenbereichs (z. B. innerhalb jeder 2D-Skala 171A, 171B, 172A und 172B) zu bestimmen, wie nachstehend in Bezug auf 5-7 ausführlicher beschrieben wird. In verschiedenen Implementierungen kann eine solche Bestimmung das Identifizieren mindestens eines jeweiligen abbildungsfähigen Merkmals, das in dem aufgenommenen Bild der jeweiligen 2D-Skala enthalten ist, und der zugehörigen jeweiligen bekannten Koordinatenposition der 2D-Skala einschließen. Eine solche Bestimmung kann der Bestimmung einer relativen Position zwischen der jeweiligen 2D-Skala 171A, 171B, 172A und 172B und der entsprechenden Referenzposition REF1, REF2, REF3 und REF4 entsprechen (z. B. entsprechend der und/oder hinweisend auf die Position der jeweiligen Kamera 161A, 161B, 162A und 162B).
  • 3 ist eine Draufsicht auf einen Abschnitt eines Robotersystems ähnlich dem in den 1 und 2 gezeigten. Insbesondere zeigt 3 eine Draufsicht des ersten und des zweiten Armabschnitts 121 und 122, des ersten und des zweiten Drehgelenks 131 und 132 und der Skalen 171A und 172A. Die Skala 171A ist an einer 2D-Skalenkopplungsstelle gekoppelt, die sich an dem ersten Drehgelenk 131 befindet, und die Skala 172A ist an einer 2D-Skalenkopplungsstelle gekoppelt, die sich an dem zweiten Drehgelenk 132 befindet. Eine Bewegung quer zur Drehachse RA1 während der Drehung des Drehgelenks 131 bewirkt eine Änderung der relativen Position der Skala 171A (z. B. in x-Achsen- und/oder y-Achsenrichtung des lokalen Kamerakoordinatensystems) und eine Bewegung quer zur Drehachse RA2 während der Drehung des Drehgelenks 132 bewirkt eine Änderung der relativen Position der Skala 172A (z. B. in x-Achsen- und/oder y-Achsenrichtung des lokalen Kamerakoordinatensystems). Wie vorstehend beschrieben, sind die Kameras 161A und 162A derart positioniert, dass sie Bilder der Skalen 171A bzw. 172A erhalten können. Basierend auf diesen Bildern bestimmt der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 die jeweiligen Winkelorientierungen der Skalen 171A und 172A und bestimmt auch relative Positionen der Skalen 171A und 172A (z. B. in Bezug auf die x-Achsen- und y-Achsenkoordinaten des lokalen Kamerakoordinatensystems, das auf eine Referenzposition REF bezogen werden kann, wie sie durch die Kamera wie vorstehend beschrieben definiert werden kann), die der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 verwendet, um eine mögliche unerwünschte Bewegung quer zu den jeweiligen Drehachsen RA1 und RA2 zu detektieren. In verschiedenen Implementierungen kann der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 die bestimmten relativen Positionen der Skalen 171A und 172A dazu verwenden, ein sogenanntes „Wackeln“, „Spiel“ oder eine andere Bewegung des ersten und des zweiten Drehgelenks 131 und 132 zu detektieren, die die normalen Robotercodierer normalerweise nicht erkennen oder berücksichtigen würden und die daher zu Messfehlern in Bezug auf das Bestimmen der Endwerkzeugposition am Ende des Roboterarms führen würden.
  • In verschiedenen Implementierungen ist das ergänzende Metrologiepositionsbestimmungssystem 150 insofern „eigenständig“, als es die Drehinformationen nicht von den Robotercodierern für das erste und das zweite Drehgelenk 131 und 132 erhält. Stattdessen erhält das ergänzende Metrologiepositionsbestimmungssystem 150 Bilder der Skalen 171A und 172A und bestimmt Drehinformationen (z. B. Winkelorientierungen) des ersten und des zweiten Drehgelenks 131 und 132. Das ergänzende Metrologiepositionsbestimmungssystem 150 bestimmt auch relative Positionen/Verschiebungen des ersten und des zweiten Drehgelenks 131 und 132. Die Drehinformationen (z. B. Winkelorientierungen) des ersten und des zweiten Drehgelenks 131 und 132, die durch das ergänzende Metrologiepositionsbestimmungssystem 150 bestimmt werden, können in verschiedenen Implementierungen typischerweise genauer sein als die Winkelorientierungen des ersten und des zweiten Drehgelenks 131 und 132, die durch Robotercodierer, die in diesen Drehgelenken enthalten sind, bestimmt wurden.
  • 4 ist eine Seitenansicht eines Abschnitts eines Robotersystems ähnlich dem in den 1 und 2 gezeigten. Insbesondere zeigt 4 eine Seitenansicht des ersten Armabschnitts 121, der Kamera 161B und der Skala 171B. Obwohl in 4 nicht gezeigt, ist die Skala 171B in der Nähe des zweiten Drehgelenks 132 positioniert, das mit dem zweiten Armabschnitt 122 gekoppelt ist (siehe z. B. 2). Der erste Armabschnitt 121, der zweite Armabschnitt 122 und/oder ein mit dem zweiten Armabschnitt 122 und/oder anderen Elementen gekoppeltes Endwerkzeug können ausreichend schwer sein, um ein Biegen oder Verdrehen des ersten Armabschnitts 121 zu bewirken, wie durch gestrichelte Linien in 4 gezeigt. Ein solches Biegen oder Verdrehen kann eine Änderung einer relativen Position der Skala 171B bewirken, wobei sich ein unterer Abschnitt der Skala 171B aus einer erwarteten Position P1 in eine gebogene Position P2 bewegt. Ein entsprechender Betrag der Bewegung/Positionsänderung D12 kann entsprechend der Bewegung der Skala 171B relativ zur Kamera 161B detektiert/gemessen werden. Genauer gesagt, wenn der Arm 121 wie veranschaulicht gebogen ist, zeigt das Sichtfeld der Kamera 161B einen anderen Abschnitt der Skala 171B (z. B. näher am oberen Ende der Skala 171B in der veranschaulichten Orientierung), für den dieses Bild analysiert werden kann, um die Position der Skala 171B und das entsprechende Ausmaß der Biegung des ersten Armabschnitts 121 zu bestimmen (z. B. zumindest teilweise basierend auf Bestimmungen unterschiedlicher Positionen eines oder mehrerer abbildungsfähiger Merkmale der Skala in den verschiedenen Bildern usw.)
  • 5 ist ein Diagramm einer beispielhaften Implementierung einer inkrementellen 2D-Skala 171/172, 6 ist ein isometrisches Diagramm einer beispielhaften Implementierung einer inkrementellen 2D-Skala 171'/172' und 7 ist eine beispielhafte Implementierung einer absoluten 2D Skala 171"/172". In verschiedenen Implementierungen kann eine beliebige der 2D-Skalen 171/172, 1717172' oder 171"/172" für jede der 2D-Skalen 171A, 171B, 172A und 172B von 1 und 2, und/oder eine der 2D-Skalen 871A, 871B, 872A, 872B, 873A, 873B und 874A von 8 und 9 verwendet werden oder auf andere Weise repräsentativ für diese sein, wie nachstehend ausführlicher beschrieben.
  • Wie in 5 dargestellt, enthält die inkrementelle 2D-Skala 171/172 ein Array von gleichmäßig beabstandeten inkrementellen abbildungsfähigen Merkmalen IIF, die auf einem ebenen Substrat SUB verteilt sind. In verschiedenen Implementierungen kann die inkrementelle 2D-Skala 171/172 eine bestimmte Periodizität aufweisen (z. B. kleiner als 100 Mikrometer, für die periodische Entfernungen zwischen den inkrementellen abbildungsfähigen Merkmalen IIF entlang der jeweiligen x- und y-Achsen jeweils weniger als 100 Mikrometer betragen können, wie nachstehend in Bezug auf das Beispiel von 6 ausführlicher beschrieben wird). In einem spezifischen Implementierungsbeispiel kann die 2D-Skala 171/172 als eine Referenzposition (z. B. einen Ursprungsort) an den Skalenkoordinaten X0, Y0, Z0 aufweisend bezeichnet werden, wie auch nachstehend in Bezug auf das Beispiel von 6 ausführlicher beschrieben wird.
  • 6 ist ein isometrisches Diagramm eines Implementierungsbeispiels einer inkrementellen 2D-Skala 171'/172'. Wie in 6 dargestellt, enthält die inkrementelle 2D-Skala 171'/172' ein Array von gleichmäßig beabstandeten inkrementellen abbildungsfähigen Merkmalen IIF, die auf einem ebenen Substrat SUB' verteilt sind. In verschiedenen Implementierungen kann die inkrementelle 2D-Skala 171'/172' eine Periodizität aufweisen, die kleiner als 100 Mikrometer ist (für die z. B. periodische Entfernungen XSP1 und YSP1 zwischen den inkrementellen abbildungsfähigen Merkmalen IIF entlang der jeweiligen x- und y-Achsen jeweils weniger als 100 Mikrometer betragen können). In verschiedenen Ausführungen können die Positionsinformationen, die unter Verwendung der inkrementellen 2D-Skala 171'/172' bestimmt werden, eine Genauigkeit von mindestens 10 Mikrometer aufweisen. Im Gegensatz zu einer Robotergenauigkeit, die bei bestimmten Implementierungen ungefähr 100 Mikrometer betragen kann, kann die Genauigkeit, die unter Verwendung solcher 2D-Skalen bestimmt wird, mindestens das 10-fache der Robotergenauigkeit betragen. In einem spezifischen Implementierungsbeispiel kann die inkrementelle 2D-Skala 1717172' eine noch höhere Periodizität von ungefähr 10 Mikrometer aufweisen, für die, wenn die Vergrößerung von der jeweiligen Kamera das ungefähr 1-fache beträgt und eine Interpolation mit einem Faktor von 10x durchgeführt wird, eine Genauigkeit von ungefähr 1 Mikrometer erreicht werden kann.
  • In verschiedenen Implementierungen kann ein Ort eines Sichtfelds (Field of Vision - FOV) der jeweiligen Kamera (z. B. Kamera 161A, 161B usw.) innerhalb der inkrementellen 2D-Skala 171'/172' einen Hinweis auf eine relative Position zwischen der 2D-Skala 171'/172' und die entsprechende Referenzposition (z. B. Referenzposition REF1, REF2 usw.) bereitstellen. In verschiedenen Implementierungen kann die jeweilige Kamera (z. B. Kamera 161A, 161B usw.) in Kombination mit der inkrementalen 2D-Skala 171'/172' als Teil einer Kamera-/Skalenbildverarbeitungskonfiguration verwendet werden. Zum Beispiel kann der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 eine relative inkrementelle Position zwischen der 2D-Skala 171'/172' und der entsprechenden Referenzposition (z. B. Referenzposition REF1, die einer Position der entsprechenden Kamera 161A entspricht oder auf diese hinweist) basierend auf dem Ort des Sichtfelds FOV innerhalb der inkrementellen 2D-Skala 171'/172' bestimmen, wie durch den Abschnitt und die Orientierung der 2D-Skala 1717172' angegeben (z. B. in Übereinstimmung mit der Position und Orientierung eines oder mehrerer der abbildungsfähigen Merkmale IFF) in dem aufgenommenen Bild (das z. B. den Ort, die Orientierung usw. der 2D-Skala 171'/172' relativ zur jeweiligen Kamera- und Referenzposition angeben kann) und ist im Stand der Technik für Kamera-/Skalenbildverarbeitungstechniken (z. B. wie in den zuvor aufgenommenen Referenzen beschrieben) bekannt. In verschiedenen Implementierungen kann die inkrementelle 2D-Skala 171'/172' verschiedene Größen relativ zum Sichtfeld FOV aufweisen (z. B. kann die inkrementelle 2D-Skala 1717172' größer als das FOV sein, so dass, wenn die 2D-Skala relativ zu der jeweiligen Kamera bewegt wird, das aufgenommene Bild immer noch mit einem Abschnitt der 2D-Skala gefüllt wird, und für den die 2D-Skala mindestens um das 2-fache, 4-fache usw. größer sein kann als das Sichtfeld FOV).
  • In verschiedenen Implementierungen kann die durch die 2D-Skala 1717172' angezeigte inkrementelle Position mit Positionsinformationen von anderen 2D-Skalen, anderen Sensoren und/oder dem Knickarmroboter 110 kombiniert werden, um eine relativ genaue und/oder absolute Position (z. B. des Endwerkzeugs) zu bestimmen. Zum Beispiel können die Sensoren SEN1 und SEN2 (z. B. Drehcodierer) des Knickarmroboters 110 die Endwerkzeugposition ETP mit der Robotergenauigkeit angeben, für die die durch die 2D-Skalen 171'/172' (z. B. 2D-Skalen 171A, 171B, 172A und 172B) angegebenen inkrementellen Positionen verwendet werden können, um die bestimmte Endwerkzeugposition ETP zu bestimmen und/oder weiter zu verfeinern, um eine Genauigkeit zu haben, die besser als die Robotergenauigkeit ist. In einer solchen Konfiguration kann der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 dazu konfiguriert sein, ein oder mehrere jeweilige abbildungsfähige Merkmale IIF, die in jedem aufgenommenen Bild jeder 2D-Skala 171'/172' enthalten sind, zu identifizieren und die Bildpositionen des einen oder der mehreren abbildungsfähigen Merkmale IFF in den aufgenommenen Bildern zu bestimmen.
  • Wie vorstehend in Bezug auf 2 beschrieben, kann in einem spezifischen Implementierungsbeispiel die 2D-Skala 171'/172' so bezeichnet werden, dass sie eine Referenzposition (z. B. einen Ursprungsort) bei X0, Y0, Z0 aufweist (die z. B. für einen Ursprungsort Werte von 0,0,0 aufweisen kann), gemäß einem lokalen Skalenkoordinatensystem (das sich auf ein entsprechendes lokales Kamerakoordinatensystem beziehen kann und einem Roboterkoordinatensystem gegenübergestellt werden kann, wobei jedoch Umrechnungen zwischen den verschiedenen Koordinatensystemen vorgenommen werden können). In einer solchen Konfiguration kann sich der Referenzort (z. B. Referenzort REF1) bei relativen Koordinaten von X1, Y1, Z1 befinden, und ein Zentrum eines entsprechenden Sichtfelds FOV (wie z. B. in einem aufgenommenen Bild erfasst) kann sich bei relativen Koordinaten von X1, Y1, Z0 befinden. In verschiedenen Implementierungen können im Skalenkoordinatensystem alle Koordinaten auf der 2D-Skala Z-Positionen von Z0 aufweisen, während der entsprechende Referenzort (z. B. der Referenzort REF1, der dem Ort der Kamera 161A entsprechen und/oder diesen angeben kann) einen anderen relativen Z-Ort relativ zur 2D-Skala mit einer entsprechenden Z-Position von Z1 haben kann. In verschiedenen Implementierungen kann das Zentrum des Sichtfelds FOV an den Koordinaten X1, Y1 entlang der optischen Achse (z. B. der optischen Achse OA1) der jeweiligen Kamera (z. B. Kamera 161A) liegen, von der in einigen Konfigurationen angenommen werden kann, dass sie nominell senkrecht zur 2D-Skala sein kann, und für die der Referenzort REF1 auch entlang der optischen Achse liegen kann und somit die gleichen XY-Koordinaten von X1, Y1 wie das Zentrum des Sichtfelds FOV hat.
  • Im Betrieb kann ein aufgenommenes Bild durch den Metrologiepositionskoordinatenverarbeitungsabschnitt 190 analysiert werden, um die X1-, Y1-Koordinaten entsprechend dem Zentrum des Sichtfelds FOV der jeweiligen Kamera zu bestimmen. In verschiedenen Implementierungen kann eine solche Bestimmung gemäß Standardkamera-/Skalenbildverarbeitungstechniken zum Bestimmen eines Orts eines Sichtfelds (z. B. entsprechend einem Ort einer Kamera) innerhalb eines Skalenbereichs (z. B. innerhalb der 2D-Skala 171'/172') getroffen werden. Es versteht sich, dass gemäß Standardkamera-/Skalenbildverarbeitungstechniken die Referenzposition/der Ursprungsort X0, Y0, Z0 nicht im Sichtfeld FOV liegen muss, damit eine solche Bestimmung getroffen wird (d. h. die relative Position kann aus den Skaleninformationen an jedem Ort entlang der 2D-Skala 171'/172' bestimmt werden, wie sie teilweise durch die Skalenelemente bereitgestellt werden, die die gleichmäßig beabstandeten inkrementellen abbildungsfähigen Merkmale IIF umfassen). In verschiedenen Implementierungen kann eine solche Bestimmung das Identifizieren mindestens eines jeweiligen abbildungsfähigen Merkmals, das in dem aufgenommenen Bild der 2D-Skala enthalten ist, und der zugehörigen jeweiligen bekannten Koordinatenposition der 2D-Skala einschließen. Eine solche Bestimmung kann der Bestimmung einer relativen Position der 2D-Skala 171'/172' relativ zu der entsprechenden Referenzposition (z. B. Referenzposition REF1, REF2 usw.) entsprechen.
  • Wie vorstehend angemerkt, können, sobald die relativen Positionen jeder der 2D-Skalen bestimmt sind, solche Informationen für andere Positionsbestimmungs- und/oder - steuerungsprozesse (z. B. zum Bestimmen und/oder Steuern der Endwerkzeugposition ETP usw.) verwendet werden. Wie vorstehend angegeben, können in einigen Implementierungen die relativen Positionen jedes der 2D-Skalen anfänglich in Form lokaler Koordinatensysteme (z. B. Skalen- und/oder Kamerakoordinatensysteme usw.) ausgedrückt/bestimmt werden, und die dann in Bezug auf ein Roboterkoordinatensystem umgewandelt oder anderweitig verarbeitet werden können. Die Endwerkzeugposition ETP kann in Übereinstimmung mit dem Roboterkoordinatensystem und/oder einem anderen Koordinatensystem bestimmt und/oder gesteuert werden.
  • 7 ist ein isometrisches Diagramm einer beispielhaften Implementierung einer absoluten 2D-Skala 171"/172". In dem Beispiel von 7 enthält ähnlich wie die inkrementelle 2D-Skala 1717172' die absolute 2D-Skala 171"/172" ein Array von gleichmäßig beabstandeten inkrementellen abbildungsfähigen Merkmalen IIF, und enthält auch einen Satz absoluter abbildungsfähiger Merkmale AIF mit eindeutig identifizierbaren Mustern (z. B. ein 16-Bit-Muster). Im Betrieb liefert ein Ort eines Sichtfelds FOV innerhalb der absoluten 2D-Skala 171"/172" (d. h. wie in einem aufgenommenen Bild enthalten) einen Hinweis auf eine absolute Position zwischen der 2D-Skala 171"/172" und der entsprechenden Referenzposition (z. B. Referenzposition REF1, die einer Position der entsprechenden Kamera 161A entspricht und/oder diese angibt). In der Implementierung von 7 ist der Satz absoluter abbildungsfähiger Merkmale AIF auf dem Substrat SUB so verteilt, dass sie (z. B. in Entfernungen XSP2 und YSP2) um weniger als einen Abstand beabstandet sind, der einem Abstand über ein Sichtfeld FOV einer jeweiligen Kamera entspricht (d. h., so dass immer mindestens ein absolut abbildungsfähiges Merkmal AIF in einem Sichtfeld enthalten ist). Im Betrieb ist der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 dazu konfiguriert, mindestens ein jeweiliges absolutes abbildungsfähiges Merkmal AIF, das in dem aufgenommenen Bild der 2D-Skala 171"/172" enthalten ist, basierend auf dem eindeutigen identifizierbaren Muster des jeweiligen absoluten abbildungsfähigen Merkmals AIF, als Teil eines Prozesses zum Bestimmen einer absoluten relativen Position der 2D-Skala 171"/172" (die z. B. in Bezug auf die jeweilige Kamera- und Referenzposition usw. einem relativen Ort, einer relativen Orientierung usw. der 2D-Skala 171"/172" entsprechen oder darauf hinweisen kann), zu identifizieren.
  • Ein spezifisches veranschaulichendes Beispiel für die Verwendung der absoluten abbildungsfähigen Merkmale AIF, um eine relativ genaue und absolute Position zu bestimmen, ist nachfolgend dargestellt. Wie in 7 veranschaulicht, kann das aufgenommene Bild angeben, dass sich das Zentrum des Sichtfelds FOV im Zentrum einer Anzahl inkrementeller abbildungsfähiger Merkmale IIF befindet. Die Positionsinformationen aus den zwei enthaltenen absolut abbildungsfähigen Merkmalen AIF geben an, welchen Abschnitt der 2D-Skala 171"/172" das Bild einschließt, wofür auch die enthaltenen inkrementellen abbildungsfähigen Merkmale IIF der 2D-Skala identifiziert werden können. Das aufgenommene Bild kann dementsprechend durch den Metrologiepositionskoordinatenverarbeitungsabschnitt 190 analysiert werden, um genau zu bestimmen, wo das Zentrum des Sichtfelds (d. h. an den Koordinaten X1, Y1, Z0) innerhalb dieses Abschnitts der 2D-Skala (d. h., der die beiden absoluten abbildungsfähigen Merkmale AIF und die inkrementellen abbildungsfähigen Merkmale IIF einschließt) liegt.
  • 8 ist ein Blockdiagramm einer dritten beispielhaften Implementierung eines Robotersystems 800, das einen Roboter 810 und ein ergänzendes Metrologiepositionsbestimmungssystem 850 einschließt. Der Roboter 810 (z. B. ein Knickarmroboter) beinhaltet eine bewegliche Armkonfiguration MAC' und ein Roboterbewegungssteuerungs- und -verarbeitungssystem 840. Das ergänzende Metrologiepositionsbestimmungssystem 850 kann mindestens die Kameras 862A, 862B, 863A, 863B und 864A, die Skalen 872A, 872B, 873A, 873B und 874A und einen Metrologiepositionskoordinatenverarbeitungsabschnitt 890 beinhalten.
  • In dem Beispiel von 8 schließt die bewegliche Armkonfiguration MAC' einen unteren Basisabschnitt BSE', Armabschnitte 821-825, Bewegungsmechanismen 831-835, Positionssensoren SEN1'-SEN5' und eine Endwerkzeugmontagekonfiguration ETMC' ein. Wie nachstehend ausführlicher beschrieben und in 9 weiter veranschaulicht wird, kann jeder der Armabschnitte 821-825 jeweilige proximale Enden PE1-PE5 und jeweilige distale Enden DE1-DE5 aufweisen. In verschiedenen Implementierungen können einige oder alle der Armabschnitte 821-825 an jeweiligen Bewegungsmechanismen 831-835 an jeweiligen proximalen Enden PE1-PE5 der jeweiligen Armabschnitte 821-825 montiert sein. In dem Beispiel von 8 können einige oder alle der Bewegungsmechanismen 831-835 (z. B. Drehgelenke und/oder Linearaktuatoren mit entsprechenden Motoren usw.) eine Bewegung (z. B. Drehung, Linearbewegung usw.) der jeweilige Armabschnitte 821-825 (z. B. um oder entlang jeweiliger Drehachsen RA1'-RA5' usw.) ermöglichen. In verschiedenen Implementierungen können die Positionssensoren SEN1-SEN5' (z. B. Drehcodierer, Linearcodierer usw.) zum Bestimmen der Positionen (z. B. Winkelorientierungen, Linearpositionen usw.) der jeweiligen Armabschnitte 821-825 verwendet werden.
  • In verschiedenen Implementierungen kann die bewegliche Armkonfiguration MAC' einen Abschnitt aufweisen, der als ein Endabschnitt bezeichnet wird (z. B. der fünfte Armabschnitt 825). In der beispielhaften Konfiguration von 8 ist die Endwerkzeugmontagekonfiguration ETMC' nahe (z. B. angeordnet an) dem distalen Ende DE5 des fünften Armabschnitts 825 (z. B. als Endabschnitt bezeichnet) angeordnet, was einem distalen Ende der beweglichen Armkonfiguration MAC' entspricht. In verschiedenen alternativen Implementierungen kann ein Endabschnitt einer beweglichen Armkonfiguration ein Element (z. B. ein drehbares Element usw.) sein, das kein Armabschnitt ist, bei dem jedoch zumindest ein Teil des Endabschnitts einem distalen Ende der beweglichen Armkonfiguration, in der die Endwerkzeugmontagekonfiguration ETMC' angeordnet ist, entspricht.
  • In verschiedenen Implementierungen kann die Endwerkzeugmontagekonfiguration ETMC' verschiedene Elemente zum Koppeln und Halten des Endwerkzeugs ETL nahe dem distalen Ende der beweglichen Armkonfiguration MAC' einschließen. Zum Beispiel kann in verschiedenen Implementierungen die Endwerkzeugmontagekonfiguration ETMC' eine Autoaufnahmeverbindung, einen magnetischen Kopplungsabschnitt und/oder andere Kopplungselemente einschließen, wie sie in der Technik zum Montieren eines Endwerkzeugs ETL an einem entsprechenden Element bekannt sind. Die Endwerkzeugmontagekonfiguration ETMC' kann auch elektrische Verbindungen (z. B. einen Stromanschluss, eine oder mehrere Signalleitungen usw.) zum Bereitstellen von Strom an und/oder zum Senden von Signalen an und von mindestens einem Teil des Endwerkzeugs ETL (z. B. zu und von dem Endwerkzeugerfassungsabschnitt ETSN) enthalten.
  • In verschiedenen Implementierungen kann das Endwerkzeug ETL den Endwerkzeugerfassungsabschnitt ETSN und den Endwerkzeugtaststift ETST mit dem Kontaktpunkt CP (z. B. zum Kontaktieren einer Oberfläche eines Werkstücks WP) einschließen. Der fünfte Bewegungsmechanismus 835 ist nahe dem distalen Ende DE4 des vierten Armabschnitts 824 angeordnet. In verschiedenen Implementierungen kann der fünfte Bewegungsmechanismus 835 (z. B. ein Drehgelenk mit einem entsprechenden Motor) dazu konfiguriert sein, den fünften Armabschnitt 825 um eine Drehachse RA5' zu drehen. In einigen Implementierungen kann der fünfte Bewegungsmechanismus 835 auch oder alternativ eine andere Art von Bewegungsmechanismus (z. B. einen Linearaktuator) einschließen, der dazu konfiguriert ist, den fünften Armabschnitt 825 linear (z. B. nach oben und unten) zu bewegen. In jedem Fall ist das Endwerkzeug ETL an der Endwerkzeugmontagekonfiguration ETMC' montiert (z. B. damit gekoppelt) und hat eine entsprechende Endwerkzeugposition ETP' mit entsprechenden Metrologiepositionskoordinaten (z. B. x-, y- und z-Koordinaten des Roboterkoordinatensystems). In verschiedenen Implementierungen kann die Position des Endwerkzeugs ETP' der Position der Endwerkzeugmontagekonfiguration ETMC' entsprechen oder sich nahe dieser befinden (z. B. am oder nahe dem distalen Ende DE5 des fünften Armabschnitts 825, das dem distalen Ende der beweglichen Armkonfiguration MAC' entsprechen kann).
  • Das Bewegungssteuerungssystem 840 ist dazu konfiguriert, die Endwerkzeugposition ETP' des Endwerkzeugs ETL mit einem Genauigkeitsgrad zu steuern, der als Robotergenauigkeit definiert ist. Genauer gesagt ist das Bewegungssteuerungssystem 840 im Allgemeinen dazu konfiguriert, die Metrologiepositionskoordinaten (z. B. x-, y- und z-Koordinaten) der Endwerkzeugposition ETP' mit der Robotergenauigkeit zumindest teilweise basierend auf der Verwendung der Bewegungsmechanismen 831-835 und der Positionssensoren SEN1'-SEN5' zum Erfassen und Steuern der Positionen der Armabschnitte 821-825 zu steuern. In verschiedenen Implementierungen kann das Bewegungssteuerungs- und -verarbeitungssystem die 840 Bewegungsmechanismussteuerungs- und - erfassungsabschnitte 841-845 einschließen, die jeweils Signale von den jeweiligen Positionssensoren SEN1'-SEN5' zum Erfassen der Positionen (z. B. Winkelpositionen, lineare Positionen usw.) der jeweiligen Armabschnitte 821-825 empfangen können und/oder Steuersignale an die jeweiligen Bewegungsmechanismen 831-835 (z. B. einschließlich Drehgelenken, Linearaktuatoren, Motoren usw.) zum Bewegen der jeweiligen Armabschnitte 821-825 bereitstellen können.
  • Das Bewegungssteuerungs- und -verarbeitungssystem 840 und/oder das ergänzende Metrologiepositionsbestimmungssystem 850 können auch Signale von dem Endwerkzeugerfassungsabschnitt ETSN empfangen. In verschiedenen Implementierungen kann der Endwerkzeugerfassungsabschnitt ETSN eine Schaltung und/oder Konfigurationen enthalten, die sich auf die Vorgänge des Endwerkzeugs ETL zum Erfassen eines Werkstücks WP beziehen. Wie nachstehend ausführlicher beschrieben wird, kann das Endwerkzeug-ETL (z. B. ein Tastkopf, eine Abtastsonde, eine Kamera usw.) in verschiedenen Implementierungen zum Kontaktieren oder anderweitigen Erfassen von Oberflächenpositionen/Positionen/Punkten auf einem Werkstück WP verwendet werden, für das verschiedene entsprechende Signale von dem Endwerkzeugerfassungsabschnitt ETSN, der dem Bewegungssteuerungs- und - verarbeitungssystem 840 und/oder dem ergänzenden Metrologiepositionsbestimmungssystem 850 entsprechende Signale bereitstellen kann, empfangen, bestimmt und/oder verarbeitet werden können. In verschiedenen Implementierungen können das Bewegungssteuerungs- und -verarbeitungssystem 840 und/oder das ergänzende Metrologiepositionsbestimmungssystem 850 einen Endwerkzeugsteuerungs- und -erfassungsabschnitt 846 einschließen, der Steuersignale an den Endwerkzeugerfassungsabschnitt ETSN bereitstellen und/oder Erfassungssignale von diesem empfangen kann. In verschiedenen Implementierungen können der Endwerkzeugsteuerungs- und -erfassungsabschnitt 846 und der Endwerkzeugerfassungsabschnitt ETSN zusammengeführt und/oder nicht unterscheidbar sein. In verschiedenen Implementierungen können die Bewegungsmechanismussteuerungs- und - erfassungsabschnitte 841-845 und der Endwerkzeugsteuerungs- und -erfassungsabschnitt 846 Ausgänge an einen Roboterpositionsverarbeitungsabschnitt 847 bereitstellen und/oder Steuersignale von diesem empfangen, der die Gesamtpositionierung der beweglichen Armkonfiguration MAC' des Roboters 810 und die entsprechende Endwerkzeugposition ETP' als Teil des Roboterbewegungssteuerungs- und -verarbeitungssystems 840 steuern und/oder bestimmen können.
  • In verschiedenen Implementierungen kann das ergänzende Metrologiepositionsbestimmungssystem 850 in einem Roboter 810 enthalten sein oder auf andere Weise hinzugefügt werden (z. B. als Teil einer Nachrüstkonfiguration zum Hinzufügen zu einem bestehenden Roboter 810 usw., für die der Roboter in verschiedenen Implementierungen ein Knickarmroboter, ein SCARA-Roboter, ein kartesischer Roboter, ein zylindrischer Roboter, ein kugelförmiger Roboter usw. sein kann). Im Allgemeinen kann das ergänzende Metrologiepositionsbestimmungssystem 850 dazu verwendet werden, einen verbesserten Genauigkeitsgrad für die Bestimmung der Endwerkzeugposition ETP' bereitzustellen. Genauer gesagt, wie nachstehend ausführlicher beschrieben wird, kann das ergänzende Metrologiepositionsbestimmungssystem 850 dazu verwendet werden, Metrologiepositionskoordinaten zu bestimmen, die die Endwerkzeugposition ETP' mit einem Genauigkeitsgrad angeben, der besser als die Robotergenauigkeit ist.
  • Wie in 8 veranschaulicht, beinhaltet das ergänzende Metrologiepositionsbestimmungssystem 850 fünf Kamera-/Skalensätze, einschließlich der Kameras 862A, 862B, 863A, 863B und 864A, die jeweils auf eine entsprechende Skala 872A, 872B, 873A, 873B und 874A gerichtet sind. Die Skalen 872A, 873A und 874A befinden sich an Drehgelenken des Roboters (z. B. jeweils an einer Kopplungsstelle entsprechend einer Drehachse des jeweiligen Drehgelenks), und die Skalen 872B und 873B befinden sich an Armabschnitten des Roboters. Genauer gesagt ist die Skala 872A mit dem Drehgelenk des zweiten Bewegungsmechanismus 832 mit einer ersten 2D-Skalenkopplungsstelle gekoppelt, die Skala 872B ist mit dem zweiten Armabschnitt 822 mit einer zweiten 2D-Skalenkopplungsstelle gekoppelt, die Skala 873A ist mit dem Drehgelenk des dritten Bewegungsmechanismus 833 mit einer dritten 2D-Skalenkopplungsstelle gekoppelt, die Skala 873B ist mit dem dritten Armabschnitt 823 mit einer vierten 2D-Skalenkopplungsstelle gekoppelt, und die Skala 874A ist mit dem Drehgelenk des vierten Bewegungsmechanismus 834 mit einer fünften 2D-Skalenkopplungsstelle gekoppelt. Jede der fünf Kameras 862A, 862B, 863A, 863B und 864A wird von einem jeweiligen Bildgebungskonfigurationssteuerungs- und - verarbeitungsabschnitt (ICCPP) 882A, 882B, 883A, 883B und 884A gesteuert und stellt Bildsignale an diesen bereit. Ein Bildtriggerabschnitt 887 kann in einigen Fällen das Auslösen aller Kameras koordinieren, um gleichzeitig ein Bild zu erhalten (z. B. entsprechend einer Position des Roboters zu einem bestimmten Zeitpunkt zum Bestimmen der Endwerkzeugposition am Ende des Roboters zu diesem Zeitpunkt).
  • In verschiedenen Implementierungen besteht das Endwerkzeugarbeitsvolumen ETWV' aus einem Volumen, in dem zumindest ein Abschnitt des Endwerkzeugs ETL bewegt werden kann. In dem Beispiel von 8 ist das Endwerkzeugarbeitsvolumen ETWV' so veranschaulicht, dass es ein Volumen einschließt, in dem der Kontaktpunkt CP des Endwerkzeugs ETL bewegt werden kann, wenn ein Werkstück überprüft wird. In verschiedenen Implementierungen ist der Roboter 810 dazu konfiguriert, die bewegliche Armkonfiguration MAC' zu bewegen, um zumindest einen Abschnitt des Endwerkzeugs ETL (d. h. den Kontaktpunkt CP), das an der Endwerkzeugmontagekonfiguration ETMC' montiert ist, entlang von zumindest zwei Dimensionen (z. B. der x- und der y-Dimension) im Endwerkzeugarbeitsvolumen ETWV' zu bewegen. In dem Beispiel von 8 ist der Abschnitt des Endwerkzeugs ETL (z. B. der Kontaktpunkt CP) durch den Roboter 810 entlang von drei Dimensionen (z. B. der x-, der y- und der z-Dimension) bewegbar.
  • In verschiedenen Implementierungen, wie vorstehend in Bezug auf 5-7 beschrieben, kann jede der 2D-Skalen 872A, 872B, 873A, 873B und 874A ein nominell ebenes Substrat SUB und eine Vielzahl von jeweiligen abbildungsfähigen Merkmalen umfassen, die auf dem Substrat SUB verteilt sind. Wie hierin verwendet, beinhaltet der Begriff „nominell“ Variationen eines oder mehrerer Parameter, die innerhalb akzeptabler Toleranzen liegen. Die jeweiligen abbildungsfähigen Merkmale sind an jeweiligen bekannten lokalen Koordinaten der x- und y-Skala auf jeder 2D-Skala angeordnet. In verschiedenen Implementierungen kann jede 2D-Skala eine inkrementelle oder absolute Skala sein.
  • In verschiedenen Implementierungen können der Bildgebungs- und Erfassungskonfigurationssteuerungs- und -verarbeitungsabschnitts 880, der Triggerabschnitt 887 und/oder der Metrologiepositionskoordinatenverarbeitungsabschnitt 890 als Teil eines externen Steuersystems ECS' (z. B. als Teil eines externen Computers usw.) enthalten sein. Der Triggerabschnitt 887 kann als Teil des Bildgebungs- und Erfassungskonfigurationssteuerungs- und -verarbeitungsabschnitts 880 enthalten sein. In verschiedenen Implementierungen ist der Triggerabschnitt 887 dazu konfiguriert, mindestens ein Eingangssignal einzugeben, das sich auf die Endwerkzeugposition ETP' bezieht, und um die Zeitgabe eines ersten Triggersignals basierend auf dem mindestens einen Eingangssignal zu bestimmen und das erste Triggersignal an die Kameras 862A, 862B, 863A, 863B und 864A auszugeben. In verschiedenen Implementierungen ist jede der Kameras 862A, 862B, 863A, 863B und 864A dazu konfiguriert, ein digitales Bild der entsprechenden 2D-Skala 872A, 872B, 873A, 873B und 874A zu einem Bildaufnahmezeitpunkt als Reaktion auf den Empfang des ersten Triggersignals aufzunehmen. In verschiedenen Implementierungen ist der Metrologiepositionskoordinatenverarbeitungsabschnitt 890 dazu konfiguriert, die aufgenommenen Bilder einzugeben und mindestens ein jeweiliges abbildungsfähiges Merkmal, das in den aufgenommenen Bildern der 2D-Skalen enthalten ist, und die zugehörige jeweilige bekannte Koordinatenposition der 2D-Skala zu identifizieren. In verschiedenen Implementierungen kann das externe Steuersystem ECS' auch einen Standardroboterpositionskoordinatenmodusabschnitt 849 und einen ergänzenden Metrologiepositionskoordinatenmodusabschnitt 892 einschließen, um entsprechende Modi zu implementieren, wie nachstehend ausführlicher beschrieben wird.
  • In verschiedenen Implementierungen kann jeder Bildgebungskonfigurationssteuerungs- und -verarbeitungsabschnitt 882A, 882B, 883A, 883B und 884A eine Komponente (z. B. eine Teilschaltung, Routine usw.) einschließen, die eine Bildintegration der entsprechenden Kamera 862A, 862B, 863A, 863B und 864A periodisch (z. B. in einem festgelegten Zeitintervall) aktiviert, für die das erste Triggersignal von dem Triggerabschnitt 887 eine Stroboskoplichtzeitgabe (für die jede Kamera 862A, 862B, 863A, 863B und 864A ein Stroboskoplicht enthalten kann) oder einen anderen Mechanismus aktivieren kann, um die Bewegung effektiv einzufrieren und entsprechend eine Belichtung innerhalb des Integrationszeitraums zu bestimmen. In solchen Implementierungen kann, wenn während der Integrationsperiode kein erstes Triggersignal empfangen wird, ein resultierendes Bild verworfen werden, wobei, wenn während der Integrationsperiode ein erstes Triggersignal empfangen wird, das resultierende Bild gespeichert und/oder anderweitig verarbeitet/analysiert werden kann, um Metrologiepositionskoordinaten zu bestimmen, wie nachstehend ausführlicher beschrieben wird.
  • In verschiedenen Implementierungen können verschiedene Arten von Endwerkzeugen ETL verschiedene Arten von Ausgaben bereitstellen, die in Bezug auf den Triggerabschnitt 887 verwendet werden können. Beispielsweise kann in einer Implementierung, bei der das Endwerkzeug-ETL ein Tastkopf ist, der zum Messen eines Werkstücks verwendet wird und der ein Berührungssignal ausgibt, wenn er das Werkstück berührt (z. B. wenn der Kontaktpunkt CP das Werkstück berührt), der Triggerabschnitt 887 dazu konfiguriert sein, dieses Berührungssignal oder ein daraus abgeleitetes Signal als das mindestens eine Eingangssignal einzugeben, auf dessen Basis die Zeitgabe eines ersten Triggersignals bestimmt wird. Als weiteres Beispiel kann in einer Implementierung, bei der das Endwerkzeug ETL eine Abtastsonde ist, die zum Messen eines Werkstücks verwendet wird und die jeweilige Werkstückmessabtastdaten entsprechend einem jeweiligen Abtastzeitsignal bereitstellt, der Triggerabschnitt 887 dazu konfiguriert sein, dieses jeweilige Abtastzeitsignal oder ein davon abgeleitetes Signal als das mindestens eine Eingangssignal einzugeben. Als weiteres Beispiel kann in einer Implementierung, bei der das Endwerkzeug ETL eine Kamera ist, die dazu verwendet wird, ein jeweiliges Werkstückmessbild bereitzustellen, das einem jeweiligen Werkstückbildaufnahmesignal entspricht, der Triggerabschnitt 887 dazu konfiguriert sein, dieses Werkstückbildaufnahmesignal oder ein davon abgeleitetes Signal als das mindestens eine Eingangssignal einzugeben.
  • In der beispielhaften Implementierung von 8 ist das ergänzende Metrologiepositionsbestimmungssystem 850 so konfiguriert, dass der Metrologiepositionskoordinatenverarbeitungsabschnitt 890 betreibbar ist, um eine relative Position zwischen jeder 2D-Skala 872A, 872B, 873A, 873B und 874A und der entsprechenden Referenzposition REF1', REF2', REF3', REF4', REF5' (z. B. entsprechend der und/oder als Hinweis auf die Position der jeweiligen Kamera 862A, 862B, 863A, 863B und 864A), wie beispielsweise basierend auf der Bestimmung einer Bildposition des identifizierten mindestens einen jeweiligen abbildungsfähigen Merkmals, in jedem aufgenommenen Bild zu bestimmen. Die bestimmten relativen Positionen können verwendet werden (z. B. durch das ergänzende Metrologiepositionsbestimmungssystem 850), um die Metrologiepositionskoordinaten der Endwerkzeugposition ETP' zum Bildaufnahmezeitpunkt mit einem Genauigkeitsgrad zu bestimmen, der besser als die Robotergenauigkeit ist.
  • Es versteht sich, dass die Robotersysteme wie die in den 1 und 8 veranschaulichten bestimmte Vorteile gegenüber verschiedenen alternativen Systemen haben können. Zum Beispiel können Systeme, wie die hierin offenbarten, in verschiedenen Implementierungen kleiner und/oder weniger kostspielig sein als alternative Systeme, die Technologien wie Lasertracker oder Photogrammetrie zum Verfolgen von Roboterbewegungen/-positionen verwenden, und können in einigen Implementierungen auch eine höhere Genauigkeit aufweisen. Die offenbarten Systeme nehmen auch keinen Teil des Endwerkzeugarbeitsvolumen ETWV oder ETWV' ein oder verdecken ihn, wie etwa alternative Systeme, die eine Skala oder Passermarke auf dem Boden oder Tisch oder anderweitig in demselben Bereich (z. B. in das Endwerkzeugarbeitsvolumen ETWV oder ETV\(V') einschließen können, wo Werkstücke anderweitig bearbeitet und/oder überprüft werden können usw. Darüber hinaus muss in verschiedenen Implementierungen dadurch, dass alle Kameras und Skalen mit dem Roboter gekoppelt sind (z. B. einschließlich gekoppelt mit beweglichen Abschnitten der beweglichen Armkonfiguration wie Armabschnitten und Drehgelenken) für die Kameras oder Skalen keine externe Struktur oder externe Kopplung in der Roboterumgebung vorgesehen werden.
  • 9 ist ein isometrisches Diagramm einer vierten beispielhaften Implementierung eines Robotersystems 900, das dem Robotersystem 800 von 8 im Wesentlichen ähnlich ist. Es versteht sich, dass ähnlich den vorstehend beschriebenen Nummerierungsschemata bestimmte benannte oder nummerierte Komponenten (z. B. 8XX, 8XX' oder 9XX) von 9 identisch oder ähnlich benannten oder nummerierten Gegenkomponenten (z. B. 8XX) von 8 oder anderen Figuren entsprechen und/oder ähnliche Vorgänge wie diese aufweisen können, und als ähnlich oder identisch dazu verstanden werden können, und anderweitig analog dazu und wie nachstehend anderweitig beschrieben verstanden werden können. Wie vorstehend angemerkt, wird dieses Benennungs- und Nummerierungsschema zur Angabe von Elementen mit analoger und/oder identischer Auslegung und/oder Funktion allgemein auf verschiedene Figuren dieser Anmeldung (z. B. 1-11) angewendet.
  • Wie in 9 veranschaulicht, ist der erste Armabschnitt 821 (z. B. ein oberer Basisabschnitt) an dem ersten Bewegungsmechanismus 831 (z. B. einschließlich eines Drehgelenks) an einem proximalen Ende PE1 des ersten Armabschnitts 821 montiert. Der erste Bewegungsmechanismus 831 ist an einem oberen Ende des unteren tragenden Basisabschnitts BSE' angeordnet und weist eine Drehachse RA1' auf, derart, dass der erste Armabschnitt 821 sich in einer nominell horizontalen Ebene drehen soll. In verschiedenen Implementierungen kann der Positionssensor SEN1' (z. B. ein Drehcodierer) zum Bestimmen der Winkelposition (z. B. der Winkelorientierung) des ersten Armabschnitts 820 verwendet werden.
  • Der zweite Bewegungsmechanismus 832 (z. B. einschließlich eines Drehgelenks) ist in der Nähe eines distalen Endes DE1 des ersten Armabschnitts 821 angeordnet. Der zweite Bewegungsmechanismus 832 weist eine Drehachse RA2' auf. Der zweite Armabschnitt 822 ist an dem zweiten Bewegungsmechanismus 832 an einem proximalen Ende PE2 des zweiten Armabschnitts 822 montiert, derart, dass sich der zweite Armabschnitt 822 um den zweiten Bewegungsmechanismus 832 bewegt. In verschiedenen Implementierungen kann der Positionssensor SEN2' (z. B. ein Drehcodierer) zum Bestimmen der Winkelposition des zweiten Armabschnitts 822 verwendet werden.
  • Der dritte Bewegungsmechanismus 833 (z. B. einschließlich eines Drehgelenks) ist an einem distalen Ende DE2 des zweiten Armabschnitts 822 angeordnet. Der dritte Bewegungsmechanismus 833 weist eine Drehachse RA3' auf. Der dritte Armabschnitt 823 ist an dem dritten Bewegungsmechanismus 833 an einem proximalen Ende PE3 des dritten Armabschnitts 823 montiert, derart, dass sich der dritte Armabschnitt 823 um den dritten Bewegungsmechanismus 833 bewegt. In verschiedenen Implementierungen kann der Positionssensor SEN3' (z. B. ein Drehcodierer) zum Bestimmen der Winkelposition des dritten Armabschnitts 823 verwendet werden.
  • Der vierte Bewegungsmechanismus 834 (z. B. einschließlich eines Drehgelenks) ist an einem distalen Ende DE3 des dritten Armabschnitts 823 angeordnet. Der vierte Bewegungsmechanismus 834 weist eine Drehachse RA4' auf. Der vierte Armabschnitt 824 ist an dem vierten Bewegungsmechanismus 834 an einem proximalen Ende PE4 des vierten Armabschnitts 824 montiert, derart, dass sich der vierte Armabschnitt 824 dreht. In verschiedenen Implementierungen kann der Positionssensor SEN4' (z. B. ein Drehcodierer) zum Bestimmen der Winkelposition des vierten Armabschnitts 824 verwendet werden.
  • Der fünfte Bewegungsmechanismus 835 kann an einem distalen Ende DE4 des vierten Armabschnitts 824 angeordnet sein. Wie vorstehend angemerkt, kann in einigen Implementierungen der fünfte Bewegungsmechanismus 835 (z. B. einschließlich eines Drehgelenks) dazu konfiguriert sein, den fünften Armabschnitt 825 um eine Drehachse RA5' zu drehen. In solchen Konfigurationen kann der fünfte Armabschnitt 825 an dem fünften Bewegungsmechanismus 835 an einem proximalen Ende PE5 des fünften Armabschnitts 825 montiert sein. In einigen Implementierungen kann der fünfte Bewegungsmechanismus 835 auch oder alternativ eine andere Art von Bewegungsmechanismus (z. B. einen Linearaktuator) einschließen, der dazu konfiguriert ist, den fünften Armabschnitt 825 linear (z. B. nach oben und unten) zu bewegen. In verschiedenen Implementierungen kann der fünfte Armabschnitt 825 als ein Endabschnitt der bewegliche Armkonfiguration MAC' bezeichnet werden, wobei das distale Ende der beweglichen Armkonfiguration MAC' dem distalen Ende DE5 des fünften Armabschnitts 825 entspricht, wobei die Endwerkzeugmontagekonfiguration ETMC' angeordnet sein kann. In einer Implementierung, bei der der fünfte Bewegungsmechanismus 835 ein Drehgelenk einschließt, kann das Endwerkzeug ETL in einigen Konfigurationen dazu gebracht werden, sich entsprechend zu drehen (z. B. in einigen Fällen in einer xy-Ebene, die senkrecht zur z-Achse ist).
  • In verschiedenen Implementierungen können unterschiedliche Referenzachsen und -linien zum Referenzieren bestimmter Bewegungen, Koordinaten und Winkel der Komponenten der beweglichen Armkonfiguration MAC' bezeichnet werden. Als einige spezifische Beispiele können, wie in 9 dargestellt, der zweite und der dritte Armabschnitt 822 und 823 jeweils bezeichnete Mittellinien CT2' bzw. CT3' aufweisen, die durch die Zentren der jeweiligen Armabschnitte hinuntergehen. Es versteht sich, dass die anderen Armabschnitte 821, 824 und 825 in ähnlicher Weise entsprechende Referenzlinien und/oder Achsen usw. aufweisen können, um bestimmte Bewegungen, Koordinaten und Winkel der Komponenten der beweglichen Armkonfiguration MAC' zu referenzieren.
  • In verschiedenen Implementierungen kann das Endwerkzeug ETL an der Endwerkzeugmontagekonfiguration ETMC' nahe dem distalen Ende DE5 des fünften Armabschnitts 825 montiert (z. B. gekoppelt) sein. Das Endwerkzeug ETL kann mit einer Endwerkzeugachse EA (z. B. durch das Zentrum und/oder die Mittelachse des Taststifts ETST verlaufend) bezeichnet werden, die mit der fünften Drehachse RA5' des fünften Bewegungsmechanismus 835 zusammenfallen kann und die sich mit einer verlängerten Linie der vierten Drehachse RA4' des vierten Bewegungsmechanismus 834 schneiden kann. In verschiedenen Implementierungen verläuft die Endwerkzeugachse EA durch die Endwerkzeugposition ETP'. Die Endwerkzeugposition ETP' kann (z. B. im Roboterkoordinatensystem) mit den Koordinaten X2, Y2, Z2 bezeichnet werden. In verschiedenen Implementierungen kann das Endwerkzeug ETL einen Kontaktpunkt CP aufweisen (z. B. am Ende eines Endwerkzeugtaststifts ETST zum Kontaktieren eines Werkstücks), der mit den Koordinaten X3, Y3, Z3 bezeichnet werden kann.
  • In einem spezifischen Implementierungsbeispiel kann jedes aufgenommene Bild der jeweiligen Kameras 862A, 862B, 863A, 863B und 864A durch den Metrologiepositionskoordinatenverarbeitungsabschnitt 890 analysiert werden, um eine relative Position (z. B. entsprechend einem Ort, einer Orientierung usw. der jeweiligen Skala 872A, 872B, 873A, 873B und 874A) zu bestimmen. Solche Bestimmungen können gemäß Standardkamera-/Skalenbildverarbeitungstechniken (z. B. zum Bestimmen eines Ortes, einer Orientierung usw. einer Kamera relativ zu einer Skala) durchgeführt werden. Verschiedene Beispiele solcher Techniken sind in den zuvor aufgenommenen US-Patenten Nr. 6,781,694 ; 6,937,349 ; 5,798,947 ; 6,222,940 und 6,640,008 beschrieben. In verschiedenen Implementierungen können solche Techniken dazu verwendet werden, den Ort eines Sichtfelds (z. B. entsprechend einer Position, Orientierung usw. einer Kamera) innerhalb eines Skalenbereichs (z. B. innerhalb jeder 2D-Skala 872A, 872B, 873A, 873B und 874A) zu bestimmen, wie vorstehend in Bezug auf 5-7 ausführlicher beschrieben. In verschiedenen Implementierungen kann eine solche Bestimmung das Identifizieren mindestens eines jeweiligen abbildungsfähigen Merkmals, das in dem aufgenommenen Bild der jeweiligen 2D-Skala enthalten ist, und der zugehörigen jeweiligen bekannten Koordinatenposition der 2D-Skala einschließen. Eine solche Bestimmung kann der Bestimmung einer relativen Position zwischen der jeweiligen 2D-Skala 872A, 872B, 873A, 873B und 874A und der entsprechenden Referenzposition REF1', REF2', REF3', REF4' und REF5' entsprechen (z. B. entsprechend der und/oder hinweisend auf die Position der jeweiligen Kamera 862A, 862B, 863A, 863B und 864A).
  • 10 ist eine Seitenansicht eines Abschnitts eines Robotersystems ähnlich dem von 8 und 9. Insbesondere zeigt 10 eine Seitenansicht des zweiten, dritten und fünften Armabschnitts 822, 823 und 825, des zweiten, dritten und vierten Bewegungsmechanismus 832, 833 und 834 und der Skalen 872A, 873A und 874. Die Skala 872A ist mit dem Drehgelenk des zweiten Bewegungsmechanismus 832 an einer ersten 2D-Skalenkopplungsstelle gekoppelt, die Skala 873A ist mit dem Drehgelenk des dritten Bewegungsmechanismus 833 an einer zweiten 2D-Skalenkopplungsstelle gekoppelt, und die Skala 874A ist mit dem Drehgelenk des vierten Bewegungsmechanismus 834 an einer dritten 2D-Skalenkupplung gekoppelt. Eine Bewegung quer zur Drehachse RA2' während der Drehung des Drehgelenks des zweiten Bewegungsmechanismus 832 bewirkt eine Änderung der relativen Position der Skala 872A (z. B. in der x-Achsen- und/oder y-Achsenrichtung des Kamerakoordinatensystems). Eine Bewegung quer zur Drehachse RA3' während der Drehung des Drehgelenks des dritten Bewegungsmechanismus 833 bewirkt eine Änderung der relativen Position der Skala 873A (z. B. in der x-Achsen- und/oder y-Achsenrichtung des Kamerakoordinatensystems). Eine Bewegung quer zur Drehachse RA4' während der Drehung des Drehgelenks des vierten Bewegungsmechanismus 834 bewirkt eine Änderung der relativen Position der Skala 874A (z. B. in der x-Achsen- und/oder y-Achsenrichtung des lokalen Kamerakoordinatensystems). Die Kameras 862A, 863A und 864A sind derart positioniert, dass sie Bilder der auf den Skalen 872A, 873A bzw. 874A enthaltenen Merkmale erhalten können. Basierend auf diesen Bildern bestimmt der Metrologiepositionskoordinatenverarbeitungsabschnitt 890 die jeweiligen Winkelorientierungen der Skalen 872A, 873A und 874A und bestimmt auch relative Positionen der Skalen 872A, 873A und 874A (z. B. in Bezug auf die x- Achsen- und y-Achsenkoordinaten des lokalen Kamerakoordinatensystems), die der Metrologiepositionskoordinatenverarbeitungsabschnitt 890 verwendet, um eine mögliche unerwünschte Bewegung quer zu den jeweiligen Drehachsen RA2', RA3' und RA4' zu detektieren. Der Metrologiepositionskoordinatenverarbeitungsabschnitt 890 verwendet die bestimmten relativen Positionen der Skalen 872A, 873A und 874A dazu, ein so genanntes „Wackeln“, „Spiel“ oder eine andere Bewegung der Drehgelenke des zweiten, dritten und vierten Bewegungsmechanismus 832, 833 und 834 zu detektieren, die die normalen Robotercodierer normalerweise nicht erkennen oder berücksichtigen würden und die daher zu Messfehlern in Bezug auf das Bestimmen der Endwerkzeugposition am Ende des Roboterarms führen würden.
  • 11 ist eine Seitenansicht eines Abschnitts eines Robotersystems ähnlich dem in den 8 und 9 gezeigten. Insbesondere zeigt 11 eine Seitenansicht des zweiten Armabschnitts 822, der Kamera 862B und der Skala 872B. Obwohl in 11 nicht gezeigt, ist die Skala 872B nahe dem Drehgelenk des dritten Bewegungsmechanismus 833 positioniert, der mit dem dritten Armabschnitt 823 gekoppelt ist (siehe 9). In verschiedenen Implementierungen können der zweite Armabschnitt 822, der dritte Armabschnitt 823 und/oder andere mit dem dritten Armabschnitt 823 gekoppelte Komponenten ausreichend schwer sein, um ein Biegen oder Verdrehen des zweiten Armabschnitts 822 zu bewirken, wie durch gestrichelte Linien in 11 gezeigt. Ein solches Biegen oder Verdrehen kann eine Änderung einer relativen Position der Skala 872B bewirken, wobei sich die Skala 872B aus einer erwarteten Position P1' in eine gebogene Position P2' bewegt. Ein entsprechender Betrag der Bewegung/Positionsänderung D12' kann entsprechend der Bewegung der Skala 872B relativ zur Kamera 862B detektiert/gemessen werden. Genauer gesagt, wenn der zweite Armabschnitt 822 wie veranschaulicht gebogen ist, zeigt das Sichtfeld der Kamera 862B einen anderen Abschnitt der Skala 872B (z. B. näher am oberen Ende der Skala 872B in der veranschaulichten Orientierung), für den dieses Bild analysiert werden kann, um die Position der Skala 872B und das entsprechende Ausmaß der Biegung des zweiten Armabschnitts 822 zu bestimmen (z. B. zumindest teilweise basierend auf Bestimmungen unterschiedlicher Positionen eines oder mehrerer abbildungsfähiger Merkmale der Skala in den verschiedenen Bildern usw.).
  • 12A und 12B sind Flussdiagramme, die beispielhafte Implementierungen von Routinen 1200A und 1200B zum Betreiben eines Robotersystems veranschaulichen, das einen Knickarmroboter und ein ergänzendes Metrologiepositionsbestimmungssystem einschließt. Wie in 12A gezeigt, wird in einem Entscheidungsblock 1210 bestimmt, ob das Robotersystem in einem ergänzenden Metrologiepositionskoordinatenmodus betrieben werden soll. In verschiedenen Implementierungen kann eine Auswahl und/oder Aktivierung eines ergänzenden Metrologiepositionskoordinatenmodus oder eines Standardroboterpositionskoordinatenmodus durch einen Benutzer erfolgen und/oder kann automatisch durch das System als Reaktion auf bestimmte Vorgänge und/oder Anweisungen erfolgen. Zum Beispiel kann in einer Implementierung ein ergänzender Metrologiepositionskoordinatenmodus eingegeben werden (z. B. automatisch oder gemäß einer Auswahl durch einen Benutzer), wenn sich der Knickarmroboter in eine bestimmte Position bewegt (z. B. ein Endwerkzeug von einem allgemeinen Bereich bewegt, in dem Montage- oder andere Vorgänge in einen spezifischeren Bereich durchgeführt werden, wo typischerweise Werkstückinspektionsvorgänge durchgeführt werden und wo der ergänzende Metrologiepositionskoordinatenmodus verwendet würde). In verschiedenen Implementierungen können solche Modi durch ein externes Steuersystem ECS (z. B. wie das externe Steuersystem ECS von 1 unter Verwendung eines Standardroboterpositionskoordinatenmodusabschnitts 147 und eines ergänzenden Metrologiepositionskoordinatenmodusabschnitts 192) implementiert werden. In verschiedenen Implementierungen kann ein Hybridmodus entweder unabhängig oder als Teil eines ergänzenden Metrologiepositionskoordinatenmodus betrieben werden und/oder kann als Umschalten zwischen den Modi implementiert werden, wie nachstehend in Bezug auf 13 ausführlicher beschrieben wird.
  • Wenn im Entscheidungsblock 1210 bestimmt wird, dass das Robotersystem nicht in einem ergänzenden Metrologiepositionskoordinatenmodus betrieben werden soll, geht die Routine zu einem Block 1220 weiter, wo das Robotersystem in einem Standardroboterpositionskoordinatenmodus betrieben wird. Als Teil des Standardroboterpositionskoordinatenmodus werden die Positionssensoren (z. B. Drehcodierer) des Knickarmroboters dazu verwendet, die Bewegungen des Knickarmroboters und die entsprechende Endwerkzeugposition mit der Robotergenauigkeit (die z. B. mindestens teilweise auf der Genauigkeit der Positionssensoren des Knickarmroboters basiert) zu steuern und zu bestimmen. Im Allgemeinen kann der Roboterpositionskoordinatenmodus einem unabhängigen und/oder Standardbetriebsmodus für den Knickarmroboter entsprechen (z. B. einem Modus, in dem der Knickarmroboter unabhängig betrieben wird, wie beispielsweise, wenn ein ergänzendes Metrologiepositionsbestimmungssystem nicht aktiv ist oder anderweitig nicht bereitgestellt ist).
  • Wenn das Robotersystem in einem ergänzenden Metrologiepositionskoordinatenmodus betrieben werden soll, geht die Routine zu einem Block 1230 weiter, wo mindestens ein Eingangssignal empfangen wird (d. h. an einem Triggerabschnitt), das sich auf eine Endwerkzeugposition eines Knickarmroboters bezieht. Eine Zeitgabe eines ersten Triggersignals wird basierend auf dem mindestens einen Eingangssignal bestimmt und das erste Triggersignal wird an die Kameras des ergänzenden Metrologiepositionsbestimmungssystems ausgegeben. Die Kameras nehmen jeweils ein digitales Bild einer entsprechenden 2D-Skala zu einem Bildaufnahmezeitpunkt als Reaktion auf den Empfang des ersten Triggersignals auf. In einem Block 1240 werden die aufgenommenen Bilder empfangen (z. B. an einem Metrologiepositionskoordinatenverarbeitungsabschnitt) und für jedes Bild wird mindestens ein jeweiliges abbildungsfähiges Merkmal, das in dem aufgenommenen Bild der 2D-Skala enthalten ist, und die zugehörige jeweilige bekannte Koordinatenposition der 2D-Skala identifiziert.
  • Bei einem Block 1250 wird eine relative Position jeder 2D-Skala basierend auf dem Bestimmen einer Bildposition des identifizierten mindestens einen jeweiligen abbildungsfähigen Merkmals in jedem jeweiligen aufgenommenen Bild bestimmt. Bei einem Block 1260 werden bestimmte Positionsinformationen (z. B. einschließlich der bestimmten relativen Positionen und/oder anderer zugehöriger bestimmter Positionsinformationen) für eine bezeichnete Funktion (z. B. zum Bestimmen der Metrologiepositionskoordinaten der Endwerkzeugposition für eine Werkstückmessung zur Positionierungssteuerung des Knickarmroboters usw.) verwendet. Als Teil solcher Vorgänge oder anderweitig kann die Routine dann zu einem Punkt A weitergehen, wo die Routine in verschiedenen Implementierungen enden kann, oder kann auf andere Weise fortfahren, wie nachstehend in Bezug auf 12B detaillierter beschrieben.
  • Wie in 12B angegeben, kann die Routine 1200B vom Punkt A zu einem Block 1270 fortfahren. Wie nachstehend ausführlicher beschrieben wird, können die bestimmten Positionsinformationen (z. B. vom Block 1260) als Teil der Routine 1200B einer ersten Oberflächenposition auf einem Werkstück entsprechen oder anderweitig zu deren Bestimmung verwendet werden, und für die dann eine zweite Oberflächenposition am Werkstück bestimmt werden kann (z. B. als Teil einer Werkstückmessung). Bei Block 1270 wird mindestens ein zweites Eingangssignal empfangen (z. B. am Triggerabschnitt), das sich auf die Endwerkzeugposition bezieht, und die Zeitgabe eines zweiten Triggersignals wird basierend auf dem mindestens einen zweiten Eingangssignal bestimmt. Das zweite Triggersignal wird an die Kameras des ergänzenden Metrologiepositionsbestimmungssystems ausgegeben, wobei die Kameras jeweils ein zweites digitales Bild der entsprechenden 2D-Skala zu einem zweiten Bildaufnahmezeitpunkt als Reaktion auf das Empfangen des zweiten Triggersignals aufnehmen.
  • In einem Block 1280 werden die aufgenommenen Bilder empfangen (z. B. an dem Metrologiepositionskoordinatenverarbeitungsabschnitt) und für jedes Bild wird mindestens ein zweites jeweiliges abbildungsfähiges Merkmal, das in dem zweiten aufgenommenen Bild der 2D-Skala enthalten ist, und eine zugehörige jeweilige zweite bekannte Koordinatenposition der 2D-Skala identifiziert. Bei einem Block 1290 wird eine zweite relative Position jeder 2D-Skala basierend auf dem Bestimmen einer zweiten Bildposition des identifizierten mindestens einen zweiten jeweiligen abbildungsfähigen Merkmals in jedem jeweiligen zweiten aufgenommenen Bild bestimmt.
  • Bei einem Block 1295 werden die bestimmten relativen Positionen und/oder zugehörigen Positionsinformationen verwendet, um eine Dimension des Werkstücks zu bestimmen, die einem Abstand zwischen der ersten und der zweiten Oberflächenposition auf dem Werkstück entspricht, der den jeweiligen Endwerkzeugpositionen (die z. B. die Kontaktpunktpositionen usw. angeben) zum ersten und zum zweiten Bildaufnahmezeitpunkt entspricht. Es versteht sich, dass, anstatt die Positionssensoren (z. B. Drehcodierer) des Knickarmroboters zu verwenden, um die erste und die zweite Oberflächenposition auf dem Werkstück mit der Robotergenauigkeit zu bestimmen, genauere Positionsinformationen unter Verwendung der vorstehend beschriebenen Techniken bestimmt werden können.
  • 13 ist ein Flussdiagramm, das eine beispielhafte Implementierung einer Routine 1300 zum Bestimmen einer Endwerkzeugposition veranschaulicht, in der verschiedene Techniken während verschiedener Abschnitte einer Bewegungszeitgabe verwendet werden können. Im Allgemeinen werden während der Bewegungszeitgabe ein oder mehrere Armabschnitte des Roboters von ersten Positionen in zweite Positionen bewegt (was z. B. die Drehung eines oder mehrerer Armabschnitte um Bewegungsmechanismen herum von ersten Drehorientierungen in zweite Drehorientierungen oder eine anderweitige Bewegung der Armabschnitte usw. umfassen kann). Wie in 13 gezeigt, wird in einem Entscheidungsblock 1310 eine Bestimmung durchgeführt, ob ein Hybridmodus zum Bestimmen der Endwerkzeugposition während der Bewegungszeitgabe verwendet wird. In verschiedenen Implementierungen kann ein Hybridmodus auch für einen Prozess repräsentativ sein, der ein Umschalten zwischen dem ergänzenden Metrologiepositionskoordinatenmodus und dem Standardroboterpositionskoordinatenmodus einschließt, wie vorstehend in Bezug auf 12A beschrieben. Wenn der Hybridmodus nicht verwendet werden soll, geht die Routine weiter zu einem Block 1320, wo die Positionssensoren (z. B. Drehcodierer, Linearcodierer usw.) des Roboters (z. B. der beweglichen Armkonfiguration, wie etwa der beweglichen Armkonfiguration MAC, oder MAC' usw.) ausschließlich zum Bestimmen der Endwerkzeugposition während der Bewegungszeitgabe verwendet werden.
  • Wenn der Hybridmodus verwendet werden soll, fährt die Routine mit einem Block 1330 fort, für den während eines ersten Abschnitts einer Bewegungszeitgabe die im Roboter enthaltenen Positionssensoren (die z. B. in der beweglichen Armkonfiguration MAC oder MAC' des Roboters enthalten sind) zur Bestimmung der Endwerkzeugposition verwendet werden. Während solcher Vorgänge wird unter Umständen kein ergänzendes Metrologiepositionsbestimmungssystem dazu verwendet, die Position des Endwerkzeugs zu bestimmen. Bei einem Block 1340 wird während eines zweiten Abschnitts der Bewegungszeitgabe, der nach dem ersten Abschnitt der Bewegungszeitgabe auftritt, das ergänzende Metrologiepositionsbestimmungssystem dazu verwendet, die Endwerkzeugposition zu bestimmen. Es versteht sich, dass solche Vorgänge es dem System ermöglichen, eine anfängliche/schnelle/grobe Bewegung der Endwerkzeugposition während des ersten Abschnitts der Bewegungszeitgabe durchzuführen und eine genauere endgültige/langsamere/feinere Bewegung der Endwerkzeugposition während des zweiten Abschnitts der Bewegungszeit durchzuführen.
  • 14 ist ein Flussdiagramm, das eine beispielhafte Implementierung einer Routine 1400 zum Betreiben eines ergänzenden Metrologiepositionsbestimmungssystems veranschaulicht, das mit einem Roboter verwendet wird. Wie in 14 gezeigt, wird bei einem Block 1410 eine erste Kamera betrieben, um ein erstes Bild einer ersten 2D-Skala zu einem ersten Bildaufnahmezeitpunkt aufzunehmen, wobei die erste Kamera an einer ersten Kamerakopplungsstelle mit einer beweglichen Armkonfiguration eines Roboters gekoppelt ist und eine erste Referenzposition definiert und die erste 2D-Skala mit der beweglichen Armkonfiguration an einer ersten 2D-Skalenkopplungsstelle gekoppelt ist. Zum Beispiel sendet der Triggerabschnitt 187 ein Steuersignal an die Kamera 161A, das bewirkt, dass die Kamera 161A ein erstes Bild der Skala 171A zum ersten Bildaufnahmezeitpunkt aufnimmt.
  • Bei einem Block 1420 wird eine zweite Kamera betrieben, um ein erstes Bild einer zweiten 2D-Skala zum ersten Bildaufnahmezeitpunkt aufzunehmen, wobei die zweite Kamera an einer zweiten Kamerakopplungsstelle mit der beweglichen Armkonfiguration des Roboters gekoppelt ist und eine zweite Referenzposition definiert und die zweite 2D-Skala mit der beweglichen Armkonfiguration an einer zweiten 2D-Skalenkopplungsstelle gekoppelt ist. Zum Beispiel sendet der Triggerabschnitt 187 ein Steuersignal an die Kamera 161B, das bewirkt, dass die Kamera 161B ein erstes Bild der Skala 171B zum ersten Bildaufnahmezeitpunkt aufnimmt.
  • Bei einem Block 1430 wird eine erste relative Position der ersten 2D-Skala zumindest teilweise basierend auf dem ersten Bild der ersten 2D-Skala bestimmt, wie es von der ersten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde. Zum Beispiel bestimmt der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 eine relative Position der Skala 171A basierend auf dem ersten Bild der Skala 171A, das von der Kamera 161A bei Block 1410 aufgenommen wurde.
  • Bei einem Block 1440 wird eine erste relative Position der zweiten 2D-Skala zumindest teilweise basierend auf dem ersten Bild der zweiten 2D-Skala bestimmt, wie es von der zweiten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde. Zum Beispiel bestimmt der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 eine relative Position der Skala 171B basierend auf dem ersten Bild der Skala 171B, das von der Kamera 161 B bei Block 1420 aufgenommen wurde.
  • In einigen Implementierungen werden nach dem Block 1440 Metrologiepositionskoordinaten einer ersten Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala bestimmt. Zum Beispiel bestimmt der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 Metrologiepositionskoordinaten (X2, Y2, Z2) der Endwerkzeugposition ETP (siehe z. B. 2) zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der Skalen 171A und 171B.
  • In einigen Implementierungen schließt das Verfahren nach dem Block 1440 ferner ein: Betreiben der ersten Kamera zum Aufnehmen eines zweiten Bildes der ersten 2D-Skala zu einem zweiten Bildaufnahmezeitpunkt, Betreiben der zweiten Kamera zum Aufnehmen eines zweiten Bildes der zweiten 2D-Skala zum zweiten Bildaufnahmezeitpunkt, Bestimmen einer zweiten relativen Position der ersten 2D-Skala zumindest teilweise basierend auf dem zweiten Bild der ersten 2D-Skala, wie es von der ersten Kamera zum zweiten Bildaufnahmezeitpunkt aufgenommen wurde, und Bestimmen einer zweiten relativen Position der zweiten 2D-Skala zumindest teilweise basierend auf dem zweiten Bild der zweiten 2D-Skala, wie es von der zweiten Kamera zum zweiten Bildaufnahmezeitpunkt aufgenommen wurde. Beispielsweise werden die vorstehend in Verbindung mit den Blöcken 1410, 1420, 1430 und 1440 beschriebenen Aktionen zu einem anderen Zeitpunkt (d. h. zum zweiten Bildaufnahmezeitpunkt) wiederholt.
  • In einigen Implementierungen schließt das Verfahren ferner ein: Bestimmen der Metrologiepositionskoordinaten einer ersten Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala, und Bestimmen von Metrologiepositionskoordinaten einer zweiten Endwerkzeugposition zum zweiten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten zweiten relativen Positionen der ersten und der zweiten 2D-Skala. Zum Beispiel bestimmt der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 Metrologiepositionskoordinaten (X2a, Y2a, Z2a) der Endwerkzeugposition ETP zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der Skalen 171A und 171B, und bestimmt Metrologiepositionskoordinaten (X2b, Y2b, Z2b) der Endwerkzeugposition ETP zumindest teilweise basierend auf den bestimmten zweiten relativen Positionen der Skalen 171A und 171B. In einigen Implementierungen schließt das Verfahren ferner das Verwenden der bestimmten Metrologiepositionskoordinaten der ersten und der zweiten Endwerkzeugposition ein, um eine Dimension zu bestimmen, die sich auf einen Abstand zwischen der ersten und der zweiten Endwerkzeugposition bezieht. Zum Beispiel berechnet der Metrologiepositionskoordinatenverarbeitungsabschnitt 190 einen Abstand zwischen der ersten und der zweiten Endwerkzeugposition unter Verwendung der Metrologiepositionskoordinaten (X2a, Y2a, Z2a) und der vorstehend erwähnten Metrologiepositionskoordinaten (X2b, Y2b, Z2b), und bestimmt eine Dimension, die sich auf den Abstand zwischen der ersten und der zweiten Endwerkzeugposition bezieht. Die Dimension kann ein Abstand zwischen einer ersten und einer zweiten Oberflächenposition auf einem Werkstück sein oder diesem entsprechen, wobei ein Kontaktpunkt des Endwerkzeugs die erste Oberflächenposition auf dem Werkstück zum ersten Bildaufnahmezeitpunkt kontaktiert und die zweite Oberflächenposition auf dem Werkstück zum zweiten Bildaufnahmezeitpunkt kontaktiert.
  • In einigen Implementierungen schließt das Verfahren vor dem Block 1410 ferner ein: Koppeln der ersten und der zweiten 2D-Skala mit der beweglichen Armkonfiguration an der ersten bzw. der zweiten 2D-Skalenkopplungsstelle; Koppeln der ersten Kamera mit der beweglichen Armkonfiguration an der ersten Kamerakopplungsstelle; und Koppeln der zweiten Kamera mit der beweglichen Armkonfiguration an der zweiten Kamerakopplungsstelle. Zum Beispiel schließt das Verfahren ein: Koppeln der Skala 171A mit dem ersten Armabschnitt 121 an der Skalenkopplungsstelle CL2, Koppeln der Skala 171B mit dem ersten Armabschnitt 121 an der Skalenkopplungsstelle CL4, Koppeln der Kamera 161A mit dem tragenden Basisabschnitt BSE an der Kamerakopplungsstelle CL1 und Koppeln der Kamera 161B mit dem ersten Armabschnitt 121 an der Kamerakopplungsstelle CL3.
  • Es versteht sich, dass in anderen Beispielen die erste und die zweite Kamera eine beliebige der Kameras 161A, 161B, 162A, 162B, 862A, 862B, 863A, 863B, 864A, usw. sein kann und die erste und die zweite 2D-Skala jede der Skalen 171A, 171B, 172A, 172B, 872A, 872B, 873A, 873B, 874A usw. sein kann und entsprechend in einer der hier beschriebenen Konfigurationen vorliegen kann.
  • Es versteht sich, dass, obwohl der Elementname „2D-Skala“ in dieser Offenbarung unter Bezugnahme auf die relativen Skalenelemente und dergleichen verwendet wurde, dieser Elementname nur beispielhaft und nicht einschränkend ist. Er wird als „2D-Skala“ in Bezug auf x- und y-Skalenkoordinaten als Teil eines kartesischen Koordinatensystems bezeichnet, und seine Beschreibung umfasst ein nominell ebenes Substrat. Allgemeiner sollte sich der Elementname 2D-Skala jedoch auf jede Referenzskala beziehen, die eine Vielzahl von Merkmalen oder Markierungen umfasst, die bekannten zweidimensionalen Koordinaten auf dieser Referenzskala entsprechen (z. B. genaue und/oder genau kalibrierte Orte in zwei Dimensionen), vorausgesetzt, dass die Skala in der Lage ist, wie hierin offenbart zu arbeiten.
  • Beispielsweise können solche Skalenmerkmale in einem kartesischen Koordinatensystem auf dieser Bezugsskala oder in einem Polarkoordinatensystem oder einem anderen geeigneten Koordinatensystem ausgedrückt und/oder markiert werden. Darüber hinaus können solche Merkmale Merkmale umfassen, die gleichmäßig oder ungleichmäßig über einen Betriebsskalenbereich verteilt sind, und können abgestufte oder nicht abgestufte Skalenmarkierungen umfassen, vorausgesetzt, dass solche Merkmale bekannten zweidimensionalen Koordinaten auf der Skala entsprechen und in der Lage sind, wie hierin offenbart zu arbeiten.
  • Es versteht sich, dass, obwohl die Robotersysteme und entsprechenden bewegliche Armkonfigurationen, die hier offenbart und veranschaulicht sind, allgemein in Bezug auf eine bestimmte Anzahl von Armabschnitten (z. B. 3 Armabschnitte, 5 Armabschnitte usw.) gezeigt und beschrieben werden, solche Systeme nicht entsprechend eingeschränkt sind. In verschiedenen Implementierungen kann das Robotersystem, sofern es Armabschnitte wie die hierin beschriebenen einschließt, bei Bedarf weniger oder mehr Armabschnitte einschließen.
  • Es versteht sich, dass, wie hierin beschrieben, eine 2D-Skala und eine Kamera, die verwendet wird, um die Skala abzubilden, abhängig von der Bewegung und/oder Position des Robotersystems eine Drehung relativ zueinander erfahren können (z. B. wenn die Skala an einem Drehgelenk usw. montiert ist). Es versteht sich, dass in der Technik bekannte Verfahren (wie z. B. in den aufgenommenen Referenzen offenbart) dazu verwendet werden können, eine solche relative Drehung genau zu bestimmen und/oder alle erforderlichen Koordinatentransformationen durchzuführen und/oder die relative Position der Kamera und der Skala gemäß den hierin offenbarten Prinzipien in Bezug auf solche relativen Drehungen zu analysieren. Es versteht sich, dass die Metrologiepositionskoordinaten, auf die hierin Bezug genommen wird, in verschiedenen Implementierungen eine solche relative Drehung berücksichtigen können. Darüber hinaus versteht es sich, dass in einigen Implementierungen die Metrologiepositionskoordinaten, auf die hierin Bezug genommen wird, einen Satz von Koordinaten umfassen, der eine genaue Bestimmung und/oder Angabe einer solchen relativen Drehung einschließt.
  • Während bevorzugte Implementierungen der vorliegenden Offenbarung dargestellt und beschrieben wurden, werden für den Fachmann basierend auf dieser Offenbarung zahlreiche Variationen in den dargestellten und beschriebenen Anordnungen von Merkmalen und Abfolgen von Vorgängen offensichtlich sein. Verschiedene alternative Formen können verwendet werden, um die hierin offenbarten Prinzipien zu implementieren. Zusätzlich können die verschiedenen vorstehend beschriebenen Implementierungen kombiniert werden, um weitere Implementierungen bereitzustellen. Alle in dieser Beschreibung genannten US-Patente und US-Patentanmeldungen sind hiermit in ihrer Gesamtheit durch Bezugnahme aufgenommen. Aspekte der Implementierungen können bei Bedarf modifiziert werden, um Konzepte der verschiedenen Patente und Anmeldungen dazu einzusetzen, noch weitere Implementierungen bereitzustellen.
  • Diese und andere Änderungen können an den Implementierungen unter Berücksichtigung der vorstehenden detaillierten Beschreibung vorgenommen werden. Im Allgemeinen sollten in den folgenden Ansprüchen die verwendeten Begriffe nicht so ausgelegt werden, dass sie die Ansprüche auf die in der Beschreibung und den Ansprüchen offenbarten spezifischen Implementierungen einschränken, sondern sie sollten so ausgelegt werden, dass sie alle möglichen Implementierungen zusammen mit dem vollen Umfang von Äquivalenten enthalten, zu denen derartige Ansprüche berechtigen.
  • 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
    • US 16146640 [0001]
    • US 16104033 [0001]
    • US 4725965 [0004]
    • US 6781694 [0037, 0075]
    • US 6937349 [0037, 0075]
    • US 5798947 [0037, 0075]
    • US 6222940 [0037, 0075]
    • US 6640008 [0037, 0075]

Claims (21)

  1. Robotersystem, umfassend: einen Roboter, umfassend: eine bewegliche Armkonfiguration, umfassend: einen ersten Armabschnitt, der an einem ersten Drehgelenk an einem proximalen Ende des ersten Armabschnitts montiert ist, wobei das erste Drehgelenk eine erste Drehachse aufweist, wobei der erste Armabschnitt ein zweites Drehgelenk aufweist, das an einem distalen Ende des ersten Armabschnitts angeordnet ist, wobei das zweite Drehgelenk eine zweite Drehachse aufweist; einen zweiten Armabschnitt, der an dem zweiten Drehgelenk an einem proximalen Ende des zweiten Armabschnitts derart montiert ist, dass sich der zweite Armabschnitt um das zweite Drehgelenk dreht; und eine Endwerkzeugmontagekonfiguration zum Montieren eines Endwerkzeugs, wobei die Endwerkzeugmontagekonfiguration nahe einem distalen Ende der beweglichen Armkonfiguration angeordnet ist; und ein Bewegungssteuerungssystem, das dazu konfiguriert ist, eine Endwerkzeugposition des Endwerkzeugs mit einem Genauigkeitsgrad zu steuern, der als Robotergenauigkeit definiert ist, zumindest teilweise basierend auf dem Erfassen und Steuern der Winkelpositionen des ersten und des zweiten Armabschnitts um das erste und das zweite Drehgelenk jeweils unter Verwendung von im Roboter enthaltenen Drehsensoren; und ein ergänzendes Metrologiepositionsbestimmungssystem, umfassend: eine erste und eine zweite zweidimensionale (2D-) Skala, die mit der beweglichen Armkonfiguration an der ersten bzw. der zweiten 2D-Skalenkopplungsstelle gekoppelt ist, wobei jede 2D-Skala ein nominell ebenes Substrat und eine Vielzahl von jeweiligen abbildungsfähigen Merkmalen umfasst, die auf dem ebenen Substrat verteilt sind; eine erste Kamera zum Aufnehmen eines Bildes der ersten 2D-Skala zu einem Bildaufnahmezeitpunkt, wobei die erste Kamera eine erste Referenzposition definiert und die erste Kamera mit der beweglichen Armkonfiguration an einer ersten Kamerakopplungsstelle gekoppelt ist; eine zweite Kamera zum Aufnehmen eines Bildes der zweiten 2D-Skala zum Bildaufnahmezeitpunkt, wobei die zweite Kamera eine zweite Referenzposition definiert und die zweite Kamera mit der beweglichen Armkonfiguration an einer zweiten Kamerakopplungsstelle gekoppelt ist; und einen Metrologieverarbeitungsabschnitt, der dazu konfiguriert ist: eine erste relative Position der ersten 2D-Skala zumindest teilweise basierend auf einem ersten Bild der ersten 2D-Skala, das von der ersten Kamera zu einem ersten Bildaufnahmezeitpunkt aufgenommen wurde, zu bestimmen; und eine erste relative Position der zweiten 2D-Skala zumindest teilweise basierend auf einem ersten Bild der zweiten 2D-Skala, wie es von der zweiten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde, zu bestimmen.
  2. Robotersystem nach Anspruch 1, wobei der Metrologieverarbeitungsabschnitt ferner dazu konfiguriert ist, Metrologiepositionskoordinaten der Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala zu bestimmen.
  3. Robotersystem nach Anspruch 1, wobei sich die erste 2D-Skalenkopplungsstelle auf dem ersten Drehgelenk befindet und eine Bewegung quer zur ersten Drehachse während der Drehung des ersten Drehgelenks eine Änderung der relativen Position der ersten 2D-Skala bewirkt.
  4. Robotersystem nach Anspruch 3, wobei der Metrologieverarbeitungsabschnitt ferner dazu konfiguriert ist, eine Winkelorientierung der ersten 2D-Skala zumindest teilweise basierend auf dem ersten Bild der ersten 2D-Skala zu bestimmen, das von der ersten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde.
  5. Robotersystem nach Anspruch 1, wobei sich die erste 2D-Skalenkopplungsstelle an dem ersten Armabschnitt befindet und ein Biegen und/oder Verdrehen des ersten Armabschnitts eine Änderung der relativen Position der ersten 2D-Skala bewirkt.
  6. Robotersystem nach Anspruch 1, wobei der Metrologieverarbeitungsabschnitt ferner dazu konfiguriert ist, eine zweite relative Position der ersten 2D-Skala zumindest teilweise basierend auf einem zweiten Bild der ersten 2D-Skala zu bestimmen, wie es von der ersten Kamera zu einem zweiten Bildaufnahmezeitpunkt aufgenommen wurde; und eine zweite relative Position der zweiten 2D-Skala zumindest teilweise basierend auf einem zweiten Bild der zweiten 2D-Skala zu bestimmen, wie es von der zweiten Kamera zum zweiten Bildaufnahmezeitpunkt aufgenommen wurde.
  7. Robotersystem nach Anspruch 6, wobei der Metrologieverarbeitungsabschnitt ferner dazu konfiguriert ist, Metrologiepositionskoordinaten einer ersten Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala zu bestimmen; und Metrologiepositionskoordinaten einer zweiten Endwerkzeugposition zum zweiten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten zweiten relativen Positionen der ersten und der zweiten 2D-Skala zu bestimmen.
  8. Robotersystem nach Anspruch 7, wobei der Metrologieverarbeitungsabschnitt ferner dazu konfiguriert ist, die bestimmten Metrologiepositionskoordinaten der ersten und der zweiten Endwerkzeugposition zu verwenden, um eine Dimension zu bestimmen, die sich auf einen Abstand zwischen der ersten und der zweiten Endwerkzeugposition bezieht.
  9. Robotersystem nach Anspruch 8, wobei die Dimension ein Abstand zwischen einer ersten und einer zweiten Oberflächenposition auf einem Werkstück ist und ein Kontaktpunkt des Endwerkzeugs die erste Oberflächenposition auf dem Werkstück zum ersten Bildaufnahmezeitpunkt kontaktiert und die zweite Oberflächenposition auf dem Werkstück zum zweiten Bildaufnahmezeitpunkt kontaktiert.
  10. Robotersystem nach Anspruch 9, wobei das Endwerkzeug ein Tastkopf und/oder eine Abtastsonde, die zum Messen des Werkstücks verwendet wird, ist.
  11. Verfahren zum Betreiben eines ergänzenden Metrologiepositionsbestimmungssystems, das mit einem Roboter verwendet wird, wobei der Roboter umfasst: eine bewegliche Armkonfiguration, umfassend: einen ersten Armabschnitt, der an einem ersten Drehgelenk an einem proximalen Ende des ersten Armabschnitts montiert ist, wobei das erste Drehgelenk eine erste Drehachse aufweist, wobei der erste Armabschnitt ein zweites Drehgelenk aufweist, das an einem distalen Ende des ersten Armabschnitts angeordnet ist, wobei das zweite Drehgelenk eine zweite Drehachse aufweist; einen zweiten Armabschnitt, der an dem zweiten Drehgelenk an einem proximalen Ende des zweiten Armabschnitts derart montiert ist, dass sich der zweite Armabschnitt um das zweite Drehgelenk dreht; und eine Endwerkzeugmontagekonfiguration zum Montieren eines Endwerkzeugs, wobei die Endwerkzeugmontagekonfiguration nahe einem distalen Ende der beweglichen Armkonfiguration angeordnet ist; und ein Bewegungssteuerungssystem, das dazu konfiguriert ist, eine Endwerkzeugposition des Endwerkzeugs mit einem Genauigkeitsgrad zu steuern, der als Robotergenauigkeit definiert ist, zumindest teilweise basierend auf dem Erfassen und Steuern der Winkelpositionen des ersten und des zweiten Armabschnitts um das erste und das zweite Drehgelenk jeweils unter Verwendung von im Roboter enthaltenen Drehsensoren; und wobei das ergänzende Metrologiepositionsbestimmungssystem umfasst: eine erste und eine zweite zweidimensionale (2D-) Skala, wobei jede 2D-Skala ein nominell ebenes Substrat und eine Vielzahl von jeweiligen abbildungsfähigen Merkmalen umfasst, die auf dem ebenen Substrat verteilt sind; und eine erste und eine zweite Kamera; und wobei das Verfahren umfasst: Betreiben der ersten Kamera, um ein erstes Bild der ersten 2D-Skala zu einem ersten Bildaufnahmezeitpunkt aufzunehmen, wobei die erste Kamera an einer ersten Kamerakopplungsstelle mit der beweglichen Armkonfiguration eines Roboters gekoppelt ist und eine erste Referenzposition definiert und die erste 2D-Skala mit der beweglichen Armkonfiguration an einer ersten 2D-Skalenkopplungsstelle gekoppelt ist; Betreiben der zweiten Kamera, um ein erstes Bild der zweiten 2D-Skala zum ersten Bildaufnahmezeitpunkt aufzunehmen, wobei die zweite Kamera an einer zweiten Kamerakopplungsstelle mit der beweglichen Armkonfiguration des Roboters gekoppelt ist und eine zweite Referenzposition definiert und die zweite 2D-Skala mit der beweglichen Armkonfiguration an einer zweiten 2D-Skalenkopplungsstelle gekoppelt ist; Bestimmen einer ersten relativen Position der ersten 2D-Skala zumindest teilweise basierend auf dem ersten Bild der ersten 2D-Skala, das von der ersten Kamera zu dem ersten Bildaufnahmezeitpunkt aufgenommen wurde; und Bestimmen einer ersten relativen Position der zweiten 2D-Skala zumindest teilweise basierend auf dem ersten Bild der zweiten 2D-Skala, wie es von der zweiten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde.
  12. Verfahren nach Anspruch 11, ferner umfassend das Bestimmen von Metrologiepositionskoordinaten einer ersten Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala.
  13. Verfahren nach Anspruch 11, ferner umfassend: Betreiben der ersten Kamera, um ein zweites Bild der ersten 2D-Skala zu einem zweiten Bildaufnahmezeitpunkt aufzunehmen; Betreiben der zweiten Kamera, um ein zweites Bild der zweiten 2D-Skala zum zweiten Bildaufnahmezeitpunkt aufzunehmen; Bestimmen einer zweiten relativen Position der ersten 2D-Skala zumindest teilweise basierend auf dem zweiten Bild der ersten 2D-Skala, wie es von der ersten Kamera zum zweiten Bildaufnahmezeitpunkt aufgenommen wurde; und Bestimmen einer zweiten relativen Position der zweiten 2D-Skala zumindest teilweise basierend auf dem zweiten Bild der zweiten 2D-Skala, wie es von der zweiten Kamera zum zweiten Bildaufnahmezeitpunkt aufgenommen wurde.
  14. Verfahren nach Anspruch 13, ferner umfassend: Bestimmen von Metrologiepositionskoordinaten einer ersten Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala; und Bestimmen von Metrologiepositionskoordinaten einer zweiten Endwerkzeugposition zum zweiten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten zweiten relativen Positionen der ersten und der zweiten 2D-Skala.
  15. Verfahren nach Anspruch 14, ferner umfassend das Verwenden der bestimmten Metrologiepositionskoordinaten der ersten und der zweiten Endwerkzeugposition, um eine Dimension zu bestimmen, die sich auf einen Abstand zwischen der ersten und der zweiten Endwerkzeugposition bezieht.
  16. Verfahren nach Anspruch 15, wobei die Dimension ein Abstand zwischen einer ersten und einer zweiten Oberflächenposition auf einem Werkstück ist, wobei ein Kontaktpunkt des Endwerkzeugs die erste Oberflächenposition auf dem Werkstück zum ersten Bildaufnahmezeitpunkt kontaktiert und die zweite Oberflächenposition auf dem Werkstück zum zweiten Bildaufnahmezeitpunkt kontaktiert.
  17. Verfahren nach Anspruch 11, ferner umfassend: Koppeln der ersten und der zweiten 2D-Skala mit der beweglichen Armkonfiguration an der ersten bzw. der zweiten 2D-Skalenkopplungsstelle; Koppeln der ersten Kamera mit der beweglichen Armkonfiguration an der ersten Kamerakopplungsstelle; und Koppeln der zweiten Kamera mit der beweglichen Armkonfiguration an der zweiten Kamerakopplungsstelle.
  18. Ergänzendes Metrologiepositionsbestimmungssystem zur Verwendung mit einem Roboter, das eine bewegliche Armkonfiguration mit einer Endwerkzeugmontagekonfiguration zum Montieren eines Endwerkzeugs und ein Bewegungssteuerungssystem umfasst, das dazu konfiguriert ist, eine Endwerkzeugposition des Endwerkzeugs zu steuern, wobei das ergänzende Metrologiepositionsbestimmungssystem umfasst: eine erste und eine zweite zweidimensionale (2D-) Skala, die dazu konfiguriert sind, mit der beweglichen Armkonfiguration des Roboters an der ersten bzw. der zweiten 2D-Skalenkopplungsstelle gekoppelt zu werden, wobei jede 2D-Skala ein nominell ebenes Substrat und eine Vielzahl von jeweiligen abbildungsfähigen Merkmalen auf dem ebenen Substrat verteilt umfasst; eine erste Kamera zum Aufnehmen eines Bildes der ersten 2D-Skala zu einem Bildaufnahmezeitpunkt, wobei die erste Kamera eine erste Referenzposition definiert und die erste Kamera dazu konfiguriert ist, mit der beweglichen Armkonfiguration an einer ersten Kamerakopplungsstelle gekoppelt zu werden; eine zweite Kamera zum Aufnehmen eines Bildes der zweiten 2D-Skala zum Bildaufnahmezeitpunkt, wobei die zweite Kamera eine zweite Referenzposition definiert und die zweite Kamera dazu konfiguriert ist, mit der beweglichen Armkonfiguration an einer zweiten Kamerakopplungsstelle gekoppelt zu werden; und einen Metrologieverarbeitungsabschnitt, der dazu konfiguriert ist: eine erste relative Position der ersten 2D-Skala zumindest teilweise basierend auf einem ersten Bild der ersten 2D-Skala, das von der ersten Kamera zu einem ersten Bildaufnahmezeitpunkt aufgenommen wurde, zu bestimmen; und eine erste relative Position der zweiten 2D-Skala zumindest teilweise basierend auf einem ersten Bild der zweiten 2D-Skala, das von der zweiten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde, zu bestimmen; wobei Metrologiepositionskoordinaten einer ersten Endwerkzeugposition zum ersten Bildaufnahmezeitpunkt zumindest teilweise basierend auf den bestimmten ersten relativen Positionen der ersten und der zweiten 2D-Skala bestimmt werden.
  19. Robotersystem nach Anspruch 18, wobei sich die erste 2D-Skalenkopplungsstelle an einem ersten Drehgelenk der beweglichen Armkonfiguration befindet, das eine erste Drehachse hat, und eine Bewegung quer zu der ersten Drehachse während der Drehung des ersten Drehgelenks eine Änderung in der relativen Position der ersten 2D-Skala verursacht.
  20. Robotersystem nach Anspruch 19, wobei der Metrologieverarbeitungsabschnitt ferner dazu konfiguriert ist, eine Winkelorientierung der ersten 2D-Skala zumindest teilweise basierend auf dem ersten Bild der ersten 2D-Skala zu bestimmen, das von der ersten Kamera zum ersten Bildaufnahmezeitpunkt aufgenommen wurde.
  21. Robotersystem nach Anspruch 18, wobei sich die erste 2D-Skalenkopplungsstelle an einem ersten Armabschnitt der beweglichen Armkonfiguration befindet und ein Biegen und/oder Verdrehen des ersten Armabschnitts eine Änderung der relativen Position der ersten 2D-Skala bewirkt.
DE102021211677.9A 2020-10-15 2021-10-15 Robotersystem mit ergänzendem metrologiepositionsbestimmungssystem Pending DE102021211677A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/071,974 2020-10-15
US17/071,974 US11002529B2 (en) 2018-08-16 2020-10-15 Robot system with supplementary metrology position determination system

Publications (1)

Publication Number Publication Date
DE102021211677A1 true DE102021211677A1 (de) 2022-04-21

Family

ID=80929487

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021211677.9A Pending DE102021211677A1 (de) 2020-10-15 2021-10-15 Robotersystem mit ergänzendem metrologiepositionsbestimmungssystem

Country Status (3)

Country Link
JP (1) JP2022065646A (de)
CN (1) CN114367973A (de)
DE (1) DE102021211677A1 (de)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4725965A (en) 1986-07-23 1988-02-16 American Telephone And Telegraph Company Method for calibrating a SCARA robot
US5798947A (en) 1996-09-25 1998-08-25 The Board Of Trustees Of The Leland Stanford, Jr. University Methods, apparatus and computer program products for self-calibrating two-dimensional metrology stages
US6222940B1 (en) 1999-01-06 2001-04-24 National Instruments Corporation Pattern matching system and method which detects rotated and scaled template images
US6640008B1 (en) 2001-06-29 2003-10-28 Shih-Jong J. Lee Rotation and scale invariant pattern matching method
US6781694B2 (en) 2002-07-16 2004-08-24 Mitutoyo Corporation Two-dimensional scale structures and method usable in an absolute position transducer
US6937349B2 (en) 2003-05-02 2005-08-30 Mitutoyo Corporation Systems and methods for absolute positioning using repeated quasi-random pattern

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7683565B2 (en) * 2006-05-19 2010-03-23 Mako Surgical Corp. Method and apparatus for controlling a haptic device
JP4298757B2 (ja) * 2007-02-05 2009-07-22 ファナック株式会社 ロボット機構のキャリブレーション装置及び方法
JP5854815B2 (ja) * 2011-12-20 2016-02-09 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム
WO2013176212A1 (ja) * 2012-05-25 2013-11-28 学校法人立命館 ロボット制御装置、ロボット制御方法、プログラム、記録媒体、ロボットシステム
US9452533B2 (en) * 2013-05-15 2016-09-27 Hexagon Technology Center Gmbh Robot modeling and positioning
JP6468741B2 (ja) * 2013-07-22 2019-02-13 キヤノン株式会社 ロボットシステム及びロボットシステムの校正方法
JP6564428B2 (ja) * 2017-08-03 2019-08-21 ファナック株式会社 キャリブレーションシステムおよびキャリブレーション方法
US10751883B2 (en) * 2018-08-16 2020-08-25 Mitutoyo Corporation Robot system with supplementary metrology position coordinates determination system
CN110919654B (zh) * 2019-12-02 2021-04-30 中国船舶工业系统工程研究院 一种基于视觉伺服与机械臂的飞机自动对接方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4725965A (en) 1986-07-23 1988-02-16 American Telephone And Telegraph Company Method for calibrating a SCARA robot
US5798947A (en) 1996-09-25 1998-08-25 The Board Of Trustees Of The Leland Stanford, Jr. University Methods, apparatus and computer program products for self-calibrating two-dimensional metrology stages
US6222940B1 (en) 1999-01-06 2001-04-24 National Instruments Corporation Pattern matching system and method which detects rotated and scaled template images
US6640008B1 (en) 2001-06-29 2003-10-28 Shih-Jong J. Lee Rotation and scale invariant pattern matching method
US6781694B2 (en) 2002-07-16 2004-08-24 Mitutoyo Corporation Two-dimensional scale structures and method usable in an absolute position transducer
US6937349B2 (en) 2003-05-02 2005-08-30 Mitutoyo Corporation Systems and methods for absolute positioning using repeated quasi-random pattern

Also Published As

Publication number Publication date
JP2022065646A (ja) 2022-04-27
CN114367973A (zh) 2022-04-19

Similar Documents

Publication Publication Date Title
DE102019212196A1 (de) Robotersystem mit bestimmungssystem für zusätzliche messtechnikpositionskoordinaten
DE102019212195A1 (de) Bestimmungssystem für zusätzliche messtechnikpositionskoordinaten zum gebrauch mit einem roboter
EP2227356B1 (de) Verfahren und system zum hochpräzisen positionieren mindestens eines objekts in eine endlage im raum
DE102019124727A1 (de) Robotersystem mit bestimmungssystem für endwerkzeugmesstechnikpositionskoordinaten
EP1593930B1 (de) Vorrichtung und Verfahren zur Vermessung von Bauteilen
EP2435217B1 (de) Verfahren und system zum hochpräzisen positionieren mindestens eines objekts in eine endlage im raum
EP0881461B1 (de) Anlage zur messtechnischen räumlichen 3D-Lageerfassung von Oberflächenpunkten
EP3274655B1 (de) Kalibrierung einer an einem beweglichen teil eines koordinatenmessgeräts angebrachten drehvorrichtung
DE4001433A1 (de) Korrekturverfahren fuer koordinatenmessgeraete
US11002529B2 (en) Robot system with supplementary metrology position determination system
DE4026942A1 (de) Verfahren zur beruehrungslosen vermessung von objektoberflaechen
EP0703430B1 (de) Verfahren zur Kalibrierung eines Koordinatenmessgerätes mit zwei rotatorischen Achsen
DE102021209178A1 (de) Verfahren und Vorrichtung zum Bestimmen von Relativposen und zur Kalibrierung bei einem Koordinatenmessgerät oder Roboter
DE102018114809B4 (de) Messsystem, insbesondere Koordinatenmessgerät
DE102021211677A1 (de) Robotersystem mit ergänzendem metrologiepositionsbestimmungssystem
DE112019004129T5 (de) Zusatzmesstechnik-Positionskoordinatenbestimmungssystem, das einen Ausrichtungssensor zur Verwendung mit einem Roboter enthält
EP1471401B1 (de) Verfahren zur Einmessung des Koordinatensystems einer Kamera eines Roboters gegenüber dem Koordinatensystem des Roboters oder umgekehrt
DE102021110867A1 (de) System mit rotierendem chromatischem entfernungssensor mit kalibrierungsobjekten und -verfahren
DE102022134653A1 (de) Metrologiesystem mit positions- und orientierungsverfolgung unter verwendung von lichtstrahlen
DE102020111509B4 (de) Koordinatenmessgerät sowie Verfahren zum Messen von Koordinaten eines Werkstücks
DE102015205569A1 (de) Kalibrierung eines beweglichen Teils eines Koordinatenmessgeräts oder eines daran angebrachten taktilen Tasters
DE102019205042A1 (de) Vorrichtung und Verfahren zur Positionierung eines Sensors oder Sensorteils
DE102012207388B4 (de) Verfahren und Anordnung zur Ermittlung von geometrischen Fehlern eines Koordinatenmessgeräts
DE10328640B4 (de) Messanordnung zur Prüfung der Arbeitsgenauigkeit einer Maschine
DE102010064652B3 (de) Verfahren zur Genauigkeitssteigerung einer positionierenden Maschine und positionierende Maschine