DE102011050640A1 - Verfahren und Vorrichtung für die Wiederherstellung von Roboterlagedaten - Google Patents

Verfahren und Vorrichtung für die Wiederherstellung von Roboterlagedaten Download PDF

Info

Publication number
DE102011050640A1
DE102011050640A1 DE102011050640A DE102011050640A DE102011050640A1 DE 102011050640 A1 DE102011050640 A1 DE 102011050640A1 DE 102011050640 A DE102011050640 A DE 102011050640A DE 102011050640 A DE102011050640 A DE 102011050640A DE 102011050640 A1 DE102011050640 A1 DE 102011050640A1
Authority
DE
Germany
Prior art keywords
time
sensor
mark
sensor signal
positional relationship
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.)
Granted
Application number
DE102011050640A
Other languages
English (en)
Other versions
DE102011050640B4 (de
Inventor
Gang Shen
Kazunori Ban
Kyouhei Kokubo
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.)
Fanuc Corp
Original Assignee
Fanuc 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
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102011050640A1 publication Critical patent/DE102011050640A1/de
Application granted granted Critical
Publication of DE102011050640B4 publication Critical patent/DE102011050640B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/1005Programme-controlled manipulators characterised by positioning means for manipulator elements comprising adjusting means
    • B25J9/101Programme-controlled manipulators characterised by positioning means for manipulator elements comprising adjusting means using limit-switches, -stops

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

Bereitgestellt wird eine Vorrichtung zum Wiederherstellen der Positionsinformation eines Roboters, der aufweist: ein erstes Teil und ein zweites Teil, die so verbunden sind, dass sie sich über eine Gelenkachse gegeneinander bewegen können; einen Motor, der das zweite Teil gegenüber dem ersten Teil bewegt; und einen Sensor, der ein Sensorsignal ausgibt, das einem Bewegungsumfang des Motors entspricht. Die Vorrichtung enthält einen Bildgebungsabschnitt, der ein Bildsignal in einem Bereich gewinnt, der eine erste Markierung enthält und eine zweite Markierung, die einen Positionszusammenhang zwischen dem ersten Teil und dem zweiten Teil darstellen; einen Markierungspositions-Berechnungsabschnitt, der einen ersten Positionszusammenhang zwischen der ersten Markierung und der zweiten Markierung zu einem ersten Zeitpunkt berechnet, und der einen zweiten Positionszusammenhang zwischen der ersten Markierung und der zweiten Markierung zu einem zweiten Zeitpunkt berechnet, und zwar gestützt auf ein Bildsignal, das der Bildgebungsabschnitt beim ersten Zeitpunkt und beim zweiten Zeitpunkt gewinnt; und einen Korrekturabschnitt, der die Positionsinformation abhängig von einem Sensorsignal korrigiert, das der Sensor nach dem zweiten Zeitpunkt ausgibt, und zwar abhängig von dem ersten Positionszusammenhang und dem zweiten Positionszusammenhang, von einem ersten Sensorsignal, das der Sensor zum ersten Zeitpunkt ausgibt, und einem zweiten Sensorsignal, das der Sensor zum zweiten Zeitpunkt ausgibt.

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die Erfindung betrifft eine Vorrichtung und ein Verfahren zum Wiederherstellen der Positionsinformation eines Roboters, wobei die Positionsinformation bezüglich einer Referenzposition einer Gelenkachse des Roboters wiederhergestellt wird.
  • 2. Beschreibung des Stands der Technik
  • Ein Roboter mit einer Gelenkachse, die von einem Motorantrieb gedreht wird, enthält in der Regel einen Sensor, der ein Sensorsignal ausgibt, das dem Bewegungsumfang des Motors entspricht. Nach dem Anordnen der Gelenkachse des Roboters in einer Referenzposition wird eine Entsprechung zwischen dem Sensorsignal und einem Achsenwinkel der Gelenkachse ermittelt. Diese Positionierung erfolgt in der Regel gegründet darauf, dass die Gelenkachse in einen vorbestimmten Zustand gebracht wird, wenn man den Roboter in eine vorbestimmte Ausrichtung (Position) bringt. Um den Roboter in eine vorbestimmte Ausrichtung (Position) zu bringen, kennt man verschiedene Vorgehensweisen, etwa den Gebrauch einer Lehre, die dem Aufbau des Robotermechanismus entspricht. Beispielsweise beschreibt die ungeprüfte japanische Patentschrift Nr. 63-278787 ( JP63-278787A ) ein Verfahren, bei dem ein Paar von Strukturen, die eine Gelenkachse bilden, jeweils mit Stiftlöchern versehen sind. in die entsprechenden Stiftlöcher wird ein Stift eingesetzt, damit eine Referenzposition festgelegt wird. In einem weiteren Beispiel beschreibt die ungeprüfte japanische Patentschrift Nr. 2005-177962 ( JP2005-177962A ) ein Verfahren, bei dem eine der Strukturen, die ein Teil einer Gelenkachse ist, mit einer v-förmigen Nut versehen ist. Die andere Struktur ist mit einem Annäherungssensor ausgestattet, der der v-förmigen Nut zugeordnet ist. Die Referenzposition wird anhand eines Signals aus dem Annäherungssensor erkannt.
  • Muss in einem Roboter dieser Bauart ein Motor, ein mit dem Motor verbundenes Untersetzungsgetriebe oder ein ähnliches Teil zu Wartungszwecken usw. entfernt oder ersetzt werden, so ist die Positionsinformation, die auf dem Sensorsignal beruht, das von der Referenzposition abhängt, nicht mehr gültig. Um wieder eine gültige Positionsinformation zu erhalten, die auf dem Sensorsignal beruht, sind Positionierarbeiten usw. erforderlich. Da bei dem in JP63-278787A beschriebenen Verfahren die relative Position der Stiftlöcher durch eine unzureichende Bearbeitungsgenauigkeit der Stiftlochabschnitte, Zusammenbaufehler des Gelenkteils usw. Abweichungen zeigen kann, ist die Positionierarbeit schwierig, und es ist wahrscheinlich, dass die Positioniergenauigkeit leidet. In dem Verfahren, das in JP2005-177962A beschrieben ist, ist hingegen Zeit und Aufwand erforderlich, um den Annäherungssensor zu positionieren, da er bezüglich der Bewegungsrichtung der Gelenkachse mit hoher Genauigkeit eingebaut werden muss.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Ein Aspekt der Erfindung stellt bereit:
    eine Vorrichtung zum Wiederherstellen der Positionsinformation eines Roboters, der ein erstes Teil und ein zweites Teil aufweist, die so verbunden sind, dass sie sich über eine Gelenkachse gegeneinander bewegen können;
    einen Motor, der das zweite Teil gegenüber dem ersten Teil bewegt; und
    einen Sensor, der ein Sensorsignal ausgibt, das einem Bewegungsumfang des Motors entspricht, wobei die Vorrichtung einen Positionsinformations-Validierungsabschnitt enthält, der Positionsinformation validieren kann, die auf dem Sensorsignal beruht, das von einer Referenzposition der Gelenkachse abhängt, wenn die Positionsinformation nicht mehr gültig ist, weil eine Komponente, die die Entsprechung zwischen dem Sensorsignal und einer relativen Bewegung des zweiten Teils gegen das erste Teil beeinflusst, entfernt oder ersetzt wird, nachdem die Entsprechung bezüglich der Referenzposition ermittelt wurde, wobei der Positionsinformations-Validierungsabschnitt umfasst:
    einen Bildgebungsabschnitt, der vorab ein Bildsignal in einem Bereich gewinnt, der eine erste Markierung enthält und eine zweite Markierung, die auf dem ersten Teil bzw. dem zweiten Teil vorhanden ist, wobei die erste Markierung und die zweite Markierung einen Positionszusammenhang zwischen dem ersten Teil und dem zweiten Teil darstellen;
    einen Markierungspositions-Berechnungsabschnitt, der einen ersten Positionszusammenhang zwischen der ersten Markierung und der zweiten Markierung berechnet, und zwar zu einem ersten Zeitpunkt bevor die Komponente entfernt oder ersetzt wird und gestützt auf ein Bildsignal, das der Bildgebungsabschnitt beim ersten Zeitpunkt gewinnt, und der einen zweiten Positionszusammenhang zwischen der ersten Markierung und der zweiten Markierung berechnet, und zwar zu einem zweiten Zeitpunkt nachdem die Komponente entfernt oder ersetzt wurde, und gestützt auf ein Bildsignal, das der Bildgebungsabschnitt beim zweiten Zeitpunkt gewinnt; und
    einen Korrekturabschnitt, der die Positionsinformation abhängig von einem Sensorsignal korrigiert, das der Sensor nach dem zweiten Zeitpunkt ausgibt, und zwar abhängig von dem ersten Positionszusammenhang und dem zweiten Positionszusammenhang, den der Markierungspositions-Berechnungsabschnitt berechnet hat, und von einem ersten Sensorsignal, das der Sensor zum ersten Zeitpunkt ausgibt, und einem zweiten Sensorsignal, das der Sensor zum zweiten Zeitpunkt ausgibt.
  • Ein weiterer Aspekt der Erfindung stellt bereit:
    ein Verfahren zum Wiederherstellen der Positionsinformation eines Roboters, der ein erstes Teil und ein zweites Teil aufweist, die so verbunden sind, dass sie sich über eine Gelenkachse gegeneinander bewegen können;
    einen Motor, der das zweite Teil gegenüber dem ersten Teil bewegt; und
    einen Sensor, der ein Sensorsignal ausgibt, das einem Bewegungsumfang des Motors entspricht, wobei das Verfahren dafür ausgelegt ist, Positionsinformation zu validieren, die auf dem Sensorsignal beruht, das von einer Referenzposition der Gelenkachse abhängt, wenn die Positionsinformation nicht mehr gültig ist, weil eine Komponente, die eine Entsprechung zwischen dem Sensorsignal und einer relativen Bewegung des zweiten Teils gegen das erste Teil beeinflusst, entfernt oder ersetzt wird, nachdem die Entsprechung bezüglich der Referenzposition ermittelt wurde, wobei das Verfahren umfasst:
    eine erste Aufnahmeprozedur zum Aufnehmen eines Bereichs, der eine erste Markierung enthält und eine zweite Markierung, die auf dem ersten Teil bzw. dem zweiten Teil vorhanden ist, und zwar im Voraus mit einer Kamera an der ersten Markierung und der zweiten Markierung, die einen Positionszusammenhang zwischen dem ersten Teil und dem zweiten Teil darstellen;
    eine erste Berechnungsprozedur zum Berechnen eines ersten Positionszusammenhangs zwischen der ersten Markierung und der zweiten Markierung zum ersten Zeitpunkt, und zwar gestützt auf ein Bildsignal, das bei der ersten Aufnahmeprozedur gewonnen wird;
    eine zweite Aufnahmeprozedur zum Aufnehmen eines Bereichs, der die erste Markierung enthält und die zweite Markierung, mit einer Kamera zu einem zweiten Zeitpunkt nachdem die Komponente entfernt oder ersetzt ist;
    eine zweite Berechnungsprozedur zum Berechnen eines zweiten Positionszusammenhangs zwischen der ersten Markierung und der zweiten Markierung zum zweiten Zeitpunkt, und zwar gestützt auf ein Bildsignal, das bei der zweiten Aufnahmeprozedur gewonnen wird; und
    eine Korrekturprozedur zum Korrigieren der Positionsinformation abhängig von einem Sensorsignal, dass der Sensor nach dem zweiten Zeitpunkt ausgibt, und zwar abhängig von dem ersten Positionszusammenhang, der in der ersten Berechnungsprozedur berechnet wird, und dem zweiten Positionszusammenhang, der in der zweiten Berechnungsprozedur berechnet wird, und von einem ersten Sensorsignal, das der Sensor zum ersten Zeitpunkt ausgibt, und einem zweiten Sensorsignal, das der Sensor zum zweiten Zeitpunkt ausgibt.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die Aufgaben, Merkmale und Vorteile der Erfindung gehen aus der folgenden Beschreibung von Ausführungsformen zusammen mit den beigefügten Zeichnungen deutlicher hervor.
  • Es zeigt:
  • 1 eine Skizze eines Beispiels für einen Industrieroboter, bei dem eine Vorrichtung zum Wiederherstellen der Positionsinformation gemäß einer ersten Ausführungsform der Erfindung angewendet wird;
  • 2 eine Skizze einer Gesamtanordnung eines Robotersystems, das die Vorrichtung zum Wiederherstellen der Positionsinformation gemäß der ersten Ausführungsform der Erfindung enthält;
  • 3 ein Blockdiagramm eines Aufbaus eines Robotercontrollers in 2;
  • 4 ein Blockdiagramm eines Aufbaus eines Bildprozessors in 2;
  • 5A eine Skizze eines Beispiels für sichtbare Markierungen, die an einem Gelenkteil angebracht sind;
  • 5B eine Skizze eines Beispiels für sichtbare Markierungen, die an einem Gelenkteil angebracht sind;
  • 6A eine Skizze einer Abwandlung von 5B;
  • 6B eine Skizze einer Abwandlung von 5B;
  • 6C eine Skizze einer Abwandlung von 5B;
  • 7 eine Skizze, die das Kalibrieren einer Kamera gemäß einer ersten Ausführungsform der Erfindung beschreibt;
  • 8 ein Flussdiagramm eines Beispiels einer ersten Verarbeitung, die in einem ersten Verarbeitungsabschnitt des Robotercontrollers in 2 vorgenommen wird;
  • 9A eine Skizze, die eine besondere Vorgehensweise für die erste Verarbeitung in 8 beschreibt;
  • 9B eine Skizze, die eine besondere Vorgehensweise für die erste Verarbeitung in 8 beschreibt;
  • 10 ein Flussdiagramm eines Beispiels einer zweiten Verarbeitung, die in einem zweiten Verarbeitungsabschnitt des Robotercontrollers in 2 vorgenommen wird;
  • 11 eine Skizze, die eine besondere Vorgehensweise für die zweite Verarbeitung in 10 beschreibt;
  • 12 eine Skizze, die eine Prozedur eines Verfahrens zum Wiederherstellen von Positionsinformation gemäß einer ersten Ausführungsform der Erfindung erläutert;
  • 13A eine Skizze, die ein Vergleichsbeispiel zu 5A darstellt;
  • 13B eine Skizze, die ein Vergleichsbeispiel zu 5B und 6A bis 6C darstellt;
  • 14 eine Skizze, die eine Prozedur eines Verfahrens zum Wiederherstellen von Positionsinformation gemäß einer zweiten Ausführungsform der Erfindung erläutert;
  • 15 eine Skizze, die den Bildgebungsvorgang vor dem Ersetzen des Motors durch das Verfahren zum Wiederherstellen der Positionsinformation gemäß der zweiten Ausführungsform der Erfindung erläutert; und
  • 16 eine Skizze, die den Bilderfassungsvorgang nach dem Ersetzen des Motors durch das Verfahren zum Wiederherstellen der Positionsinformation gemäß der zweiten Ausführungsform der Erfindung erläutert.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Erste Ausführungsform
  • Im Weiteren wird die erste Ausführungsform der Erfindung anhand von 1 bis 13B beschrieben. 1 zeigt eine Skizze eines Beispiels für einen Industrieroboter 1, bei dem eine Vorrichtung zum Wiederherstellen der Positionsinformation gemäß der ersten Ausführungsform der Erfindung angewendet wird. Der Roboter 1 in 1 ist ein Gelenkroboter mit sechs drehbaren Gelenkachsen. Die Drehrichtungen der Gelenkachsen sind jeweils durch die Pfeile J1–J6 bezeichnet. Die Gelenkachsen des Roboters 1 werden durch entsprechende Motoren gedreht. Durch geeignetes Einstellen der Drehungsgrößen der Gelenkachsen des Roboters 1 kann man den Spitzenabschnitt eines Arms AT in einer beliebigen Position und Ausrichtung anordnen.
  • 2 zeigt eine Skizze einer Gesamtanordnung eines Robotersystems, das die Vorrichtung zum Wiederherstellen der Positionsinformation gemäß der ersten Ausführungsform der Erfindung enthält. In der Abbildung ist nur ein Ausschnitt dargestellt. Die Robotermechanismusteile 3, die jeweils jede Gelenkachse bilden, sind mit entsprechenden Servomotoren M ausgestattet. Jeder Servomotor M ist zusammen mit einem Impulscodierer PC bereitgestellt, der ein Sensorsignal entsprechend zum Bewegungsumfang des Motors ausgibt, und zwar zur Rückführung eines Drehwinkels des Motors. Die Abtriebsachsen der Servomotoren M sind mit den entsprechenden Gelenkachsen verbunden, und zwar direkt oder über ein Untersetzungsgetriebe. Die Gelenkachsen können direkt angetriebene Achsen sein. In diesem Fall werden die Drehbewegungen der Servomotoren M durch Kugelumlaufspindeln oder Riemenscheiben und Steuerriemen oder ähnliche Bauteile in geradlinige Bewegungen umgesetzt.
  • In einem beschriebenen Industrieroboter 1 erfolgt nach dem Zusammenbau der Robotermechanismusteile 3 ein Arbeitsvorgang, der als ”Kalibrierung des Mechanismus” bezeichnet wird. Damit wird eine Entsprechung zwischen den Drehwinkeln (Axialwinkeln) θ1 bis θ6 um jede Gelenkachse und den Positionen und Ausrichtungen des Armspitzenabschnitts AT festgestellt: (J1, J2, .., J6) = (θ1, θ2, ..., θ6) ↔ (X, Y, Z, W, P, R) (I)
  • In der obigen Gleichung (I) sind X, Y, Z die X-Koordinate, die Y-Koordinate und die Z-Koordinate in dem orthogonalen Koordinatensystem des Armspitzenabschnitts AT, und W, P, R sind die Drehwinkel in der X-Achse, Y-Achse und Z-Achse.
  • Als Beispiel sei die Kalibrierung des Mechanismus unter der Bedingung vorgenommen, dass jede Gelenkachse auf eine vorbestimmte Referenzposition ausgerichtet wird, so dass man eine Entsprechung zwischen Signalen des Impulscodierers PC (Sensorsignale) und Axialwinkeln θ1 bis θ6 bezogen auf die Referenzposition ermittelt. An dieser Stelle werden die Nullpunkte (θ = 0) der Axialwinkel θ1 bis θ6 definiert, und J1 bis J6 werden bezogen auf die Nullpunkte dargestellt. Die Nullpunkte werden beispielsweise an der Referenzposition definiert, und die Sensorsignale an diesen Referenzpositionen oder – anders formuliert – die den Nullpunkten zugeordneten Sensorsignale werden im Speicher als Referenzsignale abgelegt.
  • Werden in dem Status, in dem die beschriebene Kalibrierung des Mechanismus abgeschlossen ist, Servomotoren M oder Untersetzungsgetriebe für Wartungszwecke usw. entfernt, so verändert sich die Positionsinformation, die von Sensorsignalen bezüglich der Nullpunkte abhängt, und sie wird ungültig. Werden Servomotoren M ersetzt, so werden zudem die zugehörigen Impulscodierer PC gleichzeitig mit ersetzt. Auch in diesem Fall wird die Positionsinformation, die von Sensorsignalen bezüglich der Nullpunkte abhängt, ungültig. Die Vorrichtung zum Wiederherstellen der Positionsinformation dieser Ausführungsform enthält einen Positionsinformations-Validierungsabschnitt 100, der die Positionsinformation bezüglich der Nullpunkte aus dem ungültigen Status in den gültigen Status überführt, siehe die folgende Beschreibung.
  • Der Positionsinformations-Validierungsabschnitt 100, siehe 2, enthält eine Kamera 4, einen Bildprozessor 2 und einen Robotercontroller 5. Die Kamera 4 ist in einer Position mit Abstand zum Roboter 1 angeordnet. Die Kamera 4 ist beispielsweise eine elektronische Kamera, die eine Bildgebungsvorrichtung aufweist, beispielsweise ein CCD. Dabei handelt es sich um eine bekannte Lichtempfangsvorrichtung, die eine Funktion zum Erfassen eines zweidimensionalen Bilds auf einer Lichtempfangsoberfläche durch Bildgebung besitzt (Oberfläche der CCD-Anordnung). Die Kamera 4 wird von einem Kamerastativ gehalten. Die Kamera 4 erfasst Bilder einer sichtbaren Markierung 30 (5A und 5B), die sich auf dem Gelenkteil des Roboters 1 befindet. Die Kamera 4 kann auch von einer Bedienperson in der Hand gehalten werden.
  • Die Signale von der Kamera 4 werden an den Bildprozessor 2 ausgegeben, und der Robotercontroller 5 steuert anhand der Signale vom Bildprozessor 2 die Servomotoren M. 3 zeigt ein Blockdiagramm einer Anordnung eines Robotercontrollers 5. Der Robotercontroller 5 ist so konfiguriert, dass eine Haupt-CPU 11 an einen Bus 17 angeschlossen ist. Der Bus 17 ist mit einem Speicher 12, der ein RAM, ein ROM einen nicht flüchtigen Speicher usw. enthält, mit einer Schnittstelle 13 für eine Lehrsteuerungskonsole, mit einer Ein/Ausgabe-Schnittstelle 16 für externe Geräte, einem Servocontrollerabschnitt 15 und mit einer Kommunikationsschnittstelle 14 parallel verbunden. Die CPU 11 enthält einen ersten Verarbeitungsabschnitt 5a, einen zweiten Verarbeitungsabschnitt 5b und einen Korrekturabschnitt 5c. Diese Abschnitte führen die folgenden Prozeduren aus.
  • Die Lehrsteuerungskonsole 18, die an die Schnittstelle 13 angeschlossen ist, besitzt eine übliche Anzeigefunktion. Die Bedienperson betätigt diese Lehrsteuerungskonsole 18 von Hand, um ein Arbeitsprogramm des Roboters 1 zu erzeugen, korrigieren oder einzutragen oder diverse Parameter einzustellen. Sie gibt zudem Startbefehle und weitere Anweisungen eines im Weiteren beschriebenen Steuerprogramms ein. Im nicht flüchtigen Speicher im Speicher 12 sind diverse Steuerprogramme abgelegt, zu denen dieses Steuerprogramm gehört.
  • Der Servocontrollerabschnitt 15 enthält Servocontroller Nr. 1–Nr. n (dabei ist n die Gesamtanzahl der Achsen des Roboters 1; in dieser Ausführungsform gilt n = 6). Der Servocontrollerabschnitt 15 empfängt Bewegungsbefehle, die durch Berechnungen für die Robotersteuerung erzeugt werden, und gibt gestützt auf die Rückführsignale, die die Impulscodierer PC der jeweiligen Achsen ausgeben, Ansteuerbefehle an die Servoverstärker A1 bis An aus. Abhängig von den jeweiligen Ansteuerbefehlen liefern die Servoverstärker A1 bis An Stromwerte für die Servomotoren M der Gelenkachsen, damit sie betätigt werden. Die Kommunikationsschnittstelle 14 ist mit dem Bildprozessor 2 verbunden (2). Über diese Kommunikationsschnittstelle 14 werden Startbefehle für die Bildgebung durch die Kamera 4, Startbefehle für die Bildverarbeitung und ähnliche Befehle an den Bildprozessor 2 ausgegeben. Die Verarbeitungsergebnisse des Bildprozessors 2 werden über die Kommunikationsschnittstelle 14 eingegeben.
  • Der Bildprozessor 2 besitzt eine bekannte Blockanordnung, die in 4 dargestellt ist. Der Bildprozessor 2 besitzt eine CPU 20, die aus einem Mikroprozessor besteht. Die CPU 20 ist über eine Busleitung 30 mit einem ROM 21, einem Bildverarbeitungsprozessor 22, einer Kameraschnittstelle 23, einer Monitorschnittstelle 24, einer Ein/Ausgabevorrichtung 25 (I/O), einem Framespeicher (Bildspeicher) 26, einem nicht flüchtigen Speicher 27, einem RAM 28 und einer Kommunikationsschnittstelle 29 verbunden. Der Bildprozessor 2 kann sich innerhalb des Robotercontrollers 5 befinden.
  • Die Kameraschnittstelle 23 ist mit der Kamera 4 verbunden. Werden über die Kameraschnittstelle 23 Bildgebungsbefehle an die Kamera 4 gesendet, so nimmt ein in der Kamera 4 vorhandener elektronischer Verschluss die Bilderfassung vor. Die Bildsignale werden über die Kameraschnittstelle 23 im Framespeicher 26 als Graustufensignale abgelegt. Die Monitorschnittstelle 24 ist an eine Monitoranzeige angeschlossen, beispielsweise eine CRT- oder LCD-Anzeige, auf der ein von der Kamera erfasstes Bild, frühere im Framespeicher 26 abgelegte Bilder, vom Bildverarbeitungsprozessor 22 verarbeitete Bilder usw. nach Bedarf dargestellt werden.
  • 5A und 5B zeigen Skizzen von Beispielen für sichtbare Markierungen 30, die an den entsprechenden Gelenkteilen angebracht sind. 5A zeigt ein Beispiel, in dem eine Markierung 30 auf einer Oberfläche senkrecht zur Drehachsenrichtung des Gelenkteils angebracht ist, damit man diese Markierung 30 aus der Drehachsenrichtung sehen kann. 5B zeigt ein Beispiel, in dem eine Markierung 30 an einer Umfangsfläche der Drehachsenrichtung des Gelenkteils angebracht ist, damit man diese Markierung 30 von der Seite der Drehachse sehen kann. in jedem Gelenkteil wird ein bewegliches Teil 32 von einem Halteteil 31 drehbar gehalten.
  • Die Markierung 30 besteht aus fünf Punktmarkierungen, die jeweils eine punktförmige Gestalt zeigen. Diese Punktmarkierungen sind in Form eines Kreuzes angeordnet. Die Punktmarkierungen P2 und P4 sind in den Abbildungen mit gleichen Abständen in waagrechter Richtung zu beiden Seiten der zentralen Punktmarkierung P3 angeordnet. Zudem sind in den Abbildungen die Punktmarkierungen P1 und P5 in senkrechter Richtung zu beiden Seiten der zentralen Punktmarkierung P3 angeordnet. Die Punktmarkierungen P2 bis P5 sind auf dem Halteteil 31 angebracht, und die Punktmarkierung P1 ist auf einem beweglichen Teil 32 angebracht. Dreht sich das bewegliche Teil 32, so bewegt sich die Punktmarkierung P1 in Richtung der Pfeile. Damit verändert sich die Form der sichtbaren Markierung 30 bzw. der Positionszusammenhang zwischen der Punktmarkierung P1 und den Punktmarkierungen P2 bis P5 verändert sich.
  • In 5A und 5B wird die sichtbare Markierung 30 dadurch gebildet, dass die Punktmarkierungen P1 bis P5 in waagrechter und senkrechter Richtung angeordnet sind. Solange jedoch durch die Bildverarbeitung eine charakteristische Form der sichtbaren Markierung 30 erkannt werden kann, ist der Aufbau der sichtbaren Markierung 30 nicht auf die oben beschriebene Form eingeschränkt. 6A bis 6C zeigen Skizzen mit anderen Beispielen für die sichtbare Markierung 30. in 6A sind die Punktmarkierungen auf dem Halteteil anders als in 5B angeordnet. In 6B sind einige der Punktmarkierungen durch strichförmige Markierungen ersetzt. In 6C werden anstelle der Punktmarkierungen strichförmige Markierungen verwendet. Die beschriebenen sichtbaren Markierungen 30 können als Aufkleber-Markierungen gestaltet werden, die auf die Oberflächen der Teile 31 und 32 geklebt werden. Wahlweise können die sichtbaren Markierungen 30 als kreisförmige Löcher oder ähnliche Formen ausgebildet sein, die in die Oberflächen der Teile 31 und 32 eingearbeitet sind.
  • Die Kamera 4 zum Abbilden der sichtbaren Markierungen 30 wird vorher kalibriert. Die Kalibrierung ist ein Vorgang, bei dem ein Zusammenhang zwischen einem Bildkoordinatensystem in der Bildgebungsvorrichtung der Kamera und einem externen Koordinatensystem der Kamera 4 festgelegt wird. 7 zeigt eine Skizze, die ein Beispiel für das Kalibrieren beschreibt, wobei ein Kameramodell mit den Voraussetzungen verwendet wird, dass eine optische Achse der Kamera durch den Mittelpunkt der Bildgebungsvorrichtung 41 verläuft und dass die Linse 42 keine Verzerrungen erzeugt. Für diesen Fall werden die Anzahl N der gültigen Pixel der Bildgebungsvorrichtung 41, die Größe S der Bildgebungsvorrichtung 41 entsprechend zu den gültigen Pixeln N und eine Brennweite f der Linse 42 als bekannte Informationen verwendet.
  • Befindet sich der Mittelpunkt der Bildgebungsvorrichtung 41 im Ursprung des Bildkoordinatensystems, und wird ein Objekt 43 an einer Position, die von der optischen Achse der Kamera die Entfernung X in den äußeren Raumkoordinaten hat, auf das p-te Pixel im Bildkoordinatensystem abgebildet, so ist der Zusammenhang gemäß der folgenden Gleichung (II) erfüllt: X = D ≅ S ≅ p/(f ≅ N) (II) wobei in Gleichung (II) D die Entfernung auf der optischen Achse der Kamera von der Mitte der Linse zum Objekt ist. Folglich kann man für das mit dem Bildkoordinatensystem erfasste Objekt 43 aus den Koordinatenwerten im Bildkoordinatensystem eine Richtung einer Sichtlinie bestimmen, die die optische Mitte (Linsenmitte) der Kamera 4 mit dem tatsächlichen Objekt 43 verbindet, d. h. man kann einen Winkel ϕ ermitteln.
  • Die Linse der Kamera 4 ist gegenüber der sichtbaren Markierung 30 angeordnet. Ersetzt man das Objekt 43 durch die Punktmarkierungen P1 bis P5 in 5A und 5B, so kann man die Sichtlinien von der Linsenmitte zu jeder Punktmarkierung P1 bis P5 ermitteln. Bezieht man noch vorbestimmte Bedingungen ein, die im Weiteren beschrieben werden, so kann man aus den Sichtlinien Entfernungen von der Linsenmitte zu jeder Punktmarkierung P1 bis P5 bestimmen. Für den Fall dass zwischen dem Halteteil 31 und dem beweglichen Teil 32 der in 5B und 6A bis 6C dargestellte Zusammenhang gilt, kann man davon ausgehen, dass zwischen dem Halteteil 31 und dem beweglichen Teil 32 kein Höhenversatz auftritt und dass sich alle einzelnen Formen, die die sichtbare Markierung 30 bilden, im Wesentlichen auf der gleichen Fläche befinden. Besteht dagegen zwischen dem Halteteil 31 und dem beweglichen Teil 32 beispielsweise der in 5A dargestellte Zusammenhang, so kann ein Höhenversatz zwischen dem Halteteil 31 und dem beweglichen Teil 32 in der Richtung senkrecht zur Papierebene vorhanden sein. In diesem Fall wird dieser Höhenversatz in die Berechnung der Entfernungen zu den Punktmarkierungen P1 bis P5 einbezogen.
  • Die sichtbare Markierung 30 wird beispielsweise bei einer Belichtungszeit von 1 Millisekunde oder weniger abgebildet. Mit dieser Belichtungszeit kann man auch dann ein stillstehendes Bild erzielen, das nicht von Kameraerschütterungen beeinträchtigt wird, wenn die Aufnahme so erfolgt, dass eine Bedienperson die Kamera 4 in der Hand hält.
  • In der ersten Ausführungsform wird zum Validieren der Positionsinformation, die von den Sensorsignalen bezogen auf die Referenzpositionen (Nullpunkte) abhängt, und die durch den Ausbau oder Ersatz usw. von Servomotoren M oder Untersetzungsgetrieben ungültig geworden ist (im Weiteren durch den Ersatz des Motors beschrieben), das Gelenkteil, das die sichtbare Markierung 30 aufweist, vor und nach dem Ersetzen des Motors abgebildet. Vor dem Ersetzen wird der Robotermechanismusteil 3 zusammengebaut. Anschließend wird der Mechanismus kalibriert, um den Nullpunkt des Achsenwinqqkels θn an der n-ten Achse (Jn) festzulegen. Der Nullpunkt ist diejenige Position, für die θn = 0 gilt.
  • Nun wird erstmalig vor dem Ersatz des Motors (beispielsweise unmittelbar nach dem Kalibrieren des Mechanismus) das Bildaufnahmekommando über den Robotercontroller 5 und den Bildprozessor 2 von Hand an die Kamera 4 ausgegeben, damit Bilder der sichtbaren Markierung 30 erfasst werden. Dabei wird der Servomotor M von Hand so betätigt, dass die vertikalen Markierungen P1, P3 und P5 in 5A und 5B im Wesentlichen auf einer Linie ausgerichtet sind und alle Punktmarkierungen P1 bis P5 im Mittenabschnitt des abgebildeten Bereichs enthalten sind. Danach wird die sichtbare Markierung 30 aufgenommen. Dafür wird die Kamera 4 auf die sichtbare Markierung 30 gerichtet und die sichtbare Markierung 30 ein Mal aufgenommen. Daraufhin wird die Position oder Orientierung der Kamera 4 verändert und die sichtbare Markierung 30 wird erneut aufgenommen. D. h., die sichtbare Markierung 30 wird zwei Mal aufgenommen. Das Kalibrieren des Mechanismus und die beschriebene erstmalige Bildaufnahme nimmt beispielsweise der Hersteller vor, der den Roboter 1 fertigt, wenn der Robotermechanismusteil 3 produziert wird.
  • Danach wird beim zweiten Mal nach dem Ersetzen des Motors ähnlich wie beim erstmaligen Vorgang das Bildaufnahmekommando manuell an die Kamera 4 ausgegeben, damit ein Bild der sichtbaren Markierung 30 aufgenommen wird. Auch in diesem Fall wird der Servomotor M von Hand betätigt, damit die vertikalen Markierungen P1, P3 und P5 in 5A und 5B im Wesentlichen auf einer Linie liegen, so dass alle Punktmarkierungen P1 bis P5 im Mittenabschnitt des abgebildeten Bereichs enthalten sind. Danach wird die sichtbare Markierung 30 aufgenommen. Nach dem Ersetzen des Motors wird anders als vor dem Ersetzen des Motors die sichtbare Markierung 30 nur ein Mal aufgenommen. Der beschriebene Aufnahmevorgang beim zweiten Mal erfolgt, nachdem der Roboter 1 von einem beliebigen Anwender eingesetzt wurde und ein Vorgang, beispielsweise das Ersetzen des Motors oder Untersetzungsgetriebes im Zuge von Wartungsarbeiten, d. h. ein Vorgang, der die Sensorsignale bezüglich des Nullpunkts ungültig macht, ausgeführt wurde.
  • 8 zeigt ein Flussdiagramm einer ersten Verarbeitung, die in einem ersten Verarbeitungsabschnitt 5a des Robotercontrollers 5 (3) nach den beiden erstmaligen Aufnahmen vorgenommen wird. Die in diesem Flussdiagramm erläuterte Prozedur wird automatisch gestartet, beispielsweise bevor der Motor ersetzt wird und unmittelbar nachdem der zweite Aufnahmevorgang mit der Kamera 4 vorgenommen wurde.
  • Im Schritt S1 wird das Bildsignal der sichtbaren Markierung 30, das die Kamera 4 erstmalig aufnimmt, gelesen, um die sichtbare Markierung 30 im Bild zu erkennen. Im Einzelnen gibt der Robotercontroller 5 im Schritt S1 einen vorbestimmten Befehl über die Kommunikationsschnittstelle 14 an den Bildprozessor 2 aus, damit der Bildprozessor 2 die sichtbare Markierung 30 erkennt. Die vom Bildprozessor 2 erkannten Signale werden über die Kommunikationsschnittstelle 14 an den Robotercontroller 5 gesendet. Im Schritt S2 wird aus diesen erkannten Signalen die Position der sichtbaren Markierung 30 festgestellt. Insbesondere werden die Richtung und Entfernung der Sichtlinie von der Linsenmitte zur sichtbaren Markierung 30 berechnet. Hierzu wird die Beschreibung später nachgereicht, und zwar unter der Annahme, dass das Gelenkteil wie in 9A dargestellt abgebildet wird. 9B zeigt eine Skizze gesehen vom Pfeil v in 9A und zeigt den Positionszusammenhang zwischen der sichtbaren Markierung 30 und der Linsenmitte. Auch hierfür wird die Beschreibung später nachgereicht, und zwar unter der Annahme, dass ein Höhenversatz zwischen dem Halteteil 31 und dem beweglichen Teil 32 in der Richtung senkrecht zur Papierebene vorhanden ist.
  • In 9B befinden sich die Punktmarkierungen P2 bis P5 auf dem Halteteil 31 in der gleichen Ebene. Die Punktmarkierung P5 wird von der Punktmarkierung P3 verdeckt. Die Entfernung A zwischen der Punktmarkierung P2 und der Punktmarkierung P3 bzw. der Punktmarkierung P3 und der Punktmarkierung P4 ist bekannt. Dagegen befindet sich die Punktmarkierung P1 auf dem beweglichen Teil 32 in einer Höhe, die sich von der Höhe der Punktmarkierungen P2 bis P5 unterscheidet, und zwar um eine unbekannte Entfernung Δd, d. h. sie besitzt einen Höhenversatz. Die sichtbare Markierung 30 wird aufgenommen, nachdem das bewegliche Teil 32 so gedreht wurde, dass die Punktmarkierungen P1, P3 und P5 in einer vertikalen Linie ausgerichtet sind. Da jedoch die Punktmarkierung P1 bezüglich der Drehrichtung des beweglichen Teils 32 nicht völlig exakt ausgerichtet ist, weist die Punktmarkierung P1 von der Punktmarkierung P3 in der Achsendrehrichtung einen unbekannten Abstand Δx auf. Zudem wird vorausgesetzt, dass sich die Linsenmitte Q im Wesentlichen in einer Ebene befindet, die durch P2, P3 und P4 verläuft und die senkrecht auf der Papierebene in 9A steht.
  • Die Kamera 4 wird im Voraus kalibriert, und im Schritt S2 werden ausgehend vom Zusammenhang in Gleichung (II) die Richtungen der Sichtlinien L1 bis L4 von der Linsenmitte Q zu den Punktmarkierungen P1 bis P4 berechnet. Dadurch wird ein Winkel Θ1 zwischen den Sichtlinien L2 und L3, ein Winkel Θ2 zwischen den Sichtlinien L3 und L4 und ein Winkel Φ zwischen den Sichtlinien L1 und L3 in 9B berechnet.
  • Zudem werden unter Verwendung der berechneten Winkel Θ1 und Θ2 die Abstände c1, b und c2 von der Linsenmitte zu den Punktmarkierungen P2, P3 und P4 berechnet. Dabei gelten zwischen den Winkeln Θ1 und Θ2 und den Abständen c1, b und c2 die folgenden Gleichungen (III), (IV) und (V): A2 = b2+ c12 – 2b ≅ c1 ≅ cosΘ1 (III) A2 = b2+ c22 – 2b ≅ c2 ≅ cosΘ2 (IV) C1 ≅ sinΘ1 = c2 ≅ sinΘ2 (V)
  • Durch das simultane Lösen der Gleichungen (III), (IV) und (V) kann man c1, b und c2 berechnen. Dadurch kann man die relativen Positionen der Punktmarkierungen P2 bis P4 bezüglich der Linsenmitte Q erkennen, und man kann einen relativen Zusammenhang zwischen der Sichtlinie L1 von der Linsenmitte Q zur Punktmarkierung P1 und den Punktmarkierungen P2 bis P4 feststellen. In diesem Fall kann man bezüglich P1 nur die Richtung der Sichtlinie L1 feststellen. D. h., in diesem Schritt kann man die Werte (Δd, Δx), die die Position von P1 darstellen, nicht ermitteln.
  • Im Schritt S3 wird das Bildsignal der sichtbaren Markierung 30, die von der Kamera 4 beim zweiten Mal aufgenommen wird, gelesen, damit die sichtbare Markierung 30 im Bild erkannt wird. Die Einzelheiten der Prozedur gleichen dem Schritt S1. Im Schritt S4 wird ausgehend von diesem erkannten Signal die Position der sichtbaren Markierung 30 festgestellt. Im Einzelnen wird wie im Schritt S2 die Sichtlinie von der Linsenmitte zur sichtbaren Markierung 30 berechnet und anschließend der relative Zusammenhang zwischen der Sichtlinie L1 von der Linsenmitte zur Punktmarkierung P1 und den Punktmarkierungen P2, P3 und P4 festgestellt. Definiert man im Schritt S5 einen Schnittpunkt der im Schritt S2 bestimmten Sichtlinie L1 mit der im Schritt S4 bestimmten Sichtlinie L1 als P1, so wird die Position des Schnittpunkts P1 berechnet, und die Position des Schnittpunkts P1 bezüglich P2, P3 und P4 wird festgestellt (Prinzip der Stereosicht). Damit lassen sich die Werte von Δd und Δx in 9B berechnen.
  • Im Schritt S6 wird festgestellt, ob ein Betrag von Δx kleiner ist als ein vorbestimmter zulässiger Wert T. Der zulässige Wert T legt eine maximale Abweichung von P1 gegen P3 in der Achsendrehrichtung fest. T wird beispielsweise auf einen Wert sehr nahe bei Null gesetzt. Fällt die Entscheidung im Schritt S6 negativ aus, so geht die Prozedur zum Schritt S9 über.
  • Im Schritt S9 wird ein Steuersignal an den Servomotor M ausgegeben, um die Gelenkachse um –Δx/R zu drehen. R ist die Entfernung von der Mitte der Gelenkachse zur Punktmarkierung P1 (ein Drehradius). Es kann sich dabei um einen Entwurfswert handeln oder einen tatsächlich gemessenen Wert. Für den tatsächlichen Messwert nutzt man beispielsweise aus, dass man Δx mit Hilfe des Stereosichtprinzips ermitteln kann, nämlich aus Δx1 bei einem Winkel der Gelenkachse von θ1 und aus Δx2 bei einem Winkel der Gelenkachse von θ2. R kann man dann aus der Gleichung R = (Δx1 – Δx2)/(θ1 – θ2) gewinnen.
  • Wird im Schritt S9 die Gelenkachse um –Δx/R gedreht, so wird die Lage der Punktmarkierung P1 gegenüber den Punktmarkierungen P2 bis P4 so verändert, dass die Abweichung Δx von P1 bezüglich P3 in der Achsendrehrichtung geringer wird. Folglich wird im Schritt S10 ein Steuersignal an den Monitor ausgegeben, das eine Meldung anzeigt, die den Benutzer auffordert, die sichtbare Markierung 30 aufzunehmen. Daraufhin ist die erste Prozedur beendet. Nun nimmt die Bedienperson die sichtbare Markierung 30 erneut mit der Kamera 4 auf, und die erste Verarbeitung wird nochmals ausgeführt.
  • Wird dagegen im Schritt S6 festgestellt, dass der Betrag von Δx kleiner ist als T, so wird geschlussfolgert, dass die vertikale Reihe der Punktmarkierungen in der sichtbaren Markierung 30 exakt auf eine Linie ausgerichtet ist, und die Prozedur geht zum Schritt S7 über. Im Schritt S7 wird der Achsenwinkel θ, der von dem Sensorsignal an diesem Punkt abhängt, im Speicher als θref-n abgelegt. In diesem Zusammenhang ist n ein Index, der angibt, dass es sich um einen Wert der n-ten Gelenkachse handelt. Im Schritt S8 wird der im Schritt S5 berechnete Wert von Δd im Speicher als Höhenversatz Δd-n der sichtbaren Markierung 30 der n-ten Gelenkachse abgelegt. Damit ist die erste Verarbeitung beendet.
  • 10 zeigt ein Flussdiagramm einer zweiten Verarbeitung, die in einem zweiten Verarbeitungsabschnitt 5b des Robotercontrollers 5 vorgenommen wird (3), nachdem die sichtbare Markierung 30 zum zweiten Mal aufgenommen ist. Die in diesem Flussdiagramm erläuterte Prozedur wird automatisch gestartet, beispielsweise nach dem Ersetzen des Motors und unmittelbar nachdem die Aufnahme mit der Kamera 4 erfolgt ist.
  • Im Schritt S11 wird das Bildsignal der sichtbaren Markierung 30, das die Kamera 4 beim zweiten Mal aufnimmt, gelesen, um die sichtbare Markierung 30 im Bild zu erkennen. Im Einzelnen gibt der Robotercontroller 5 im Schritt S11 einen vorbestimmten Befehl über die Kommunikationsschnittstelle 14 an den Bildprozessor 2 aus, damit der Bildprozessor 2 die sichtbare Markierung 30 erkennt. Die vom Bildprozessor 2 erkannten Signale werden über die Kommunikationsschnittstelle 14 an den Robotercontroller 5 gesendet.
  • Im Schritt S12 wird aus diesen erkannten Signalen die Position der sichtbaren Markierung 30 festgestellt. Vergleichbar mit dem beschriebenen Schritt S2 werden die Richtung und Entfernung der Sichtlinie von der Linsenmitte zur sichtbaren Markierung 30 berechnet. Insbesondere, siehe 11, wird ein Winkel α zwischen einer Normalen zu einem Liniensegment, das die Punktmarkierungen P2 bis P4 verbindet, und der Sichtlinie L3 von Q nach P3, und ein Winkel Φ zwischen der Sichtlinie L3 und der Sichtlinie L1 von Q nach P1 berechnet, und zudem wird eine Entfernung b von Q nach P3 berechnet. Den Abstand b kann man berechnen, indem man eine Prozedur ausführt, die der Prozedur zum Berechnen von c1, b und c2 im beschriebenen Schritt S2 gleicht. Im Schritt S12 wird ähnlich wie im Schritt S2 vorausgesetzt, dass sich die Linsenmitte Q im Wesentlichen in einer Ebene befindet, die durch P2, P3 und P4 verläuft und die senkrecht auf der Papierebene in 9A steht.
  • Im Schritt S13 wird mit Hilfe von Δd, das im Speicher als Ergebnis der beschriebenen Verarbeitung hinterlegt ist (Schritt S8), und mit den im Schritt S12 bestimmten Winkeln α, Φ und der Entfernung b die Abweichung Δx von P1 gegenüber P3 in der Achsendrehrichtung (11) gemäß der folgenden Gleichung (VI) berechnet: Δx = bsinα – (bcosα + Δd)tan(α – Φ) (VI)
  • Nun wird im Schritt S14 ähnlich wie im Schritt S6 festgestellt, ob ein Betrag von Δx kleiner ist als ein vorbestimmter zulässiger Wert T. Fällt die Entscheidung im Schritt S14 negativ aus, so geht die Prozedur zum Schritt S16 über. Im Schritt S16 wird ähnlich wie im Schritt S9 ein Steuersignal an den Servomotor M ausgegeben, um die Gelenkachse um –Δx/R zu drehen. Nun wird im Schritt S17 ein Steuersignal an den Monitor ausgegeben, das eine Meldung anzeigt, die den Benutzer auffordert, das Bild erneut mit der Kamera 4 aufzunehmen. Damit ist die zweite Verarbeitung beendet. Nun nimmt die Bedienperson die sichtbare Markierung 30 erneut auf, und die zweite Verarbeitung wird nochmals ausgeführt.
  • Wird dagegen im Schritt S14 festgestellt, dass der Betrag von Δx kleiner ist als T, so wird geschlussfolgert, dass die vertikale Reihe der Punktmarkierungen (P1, P3 und P5) in der sichtbaren Markierung 30 exakt auf eine Linie ausgerichtet ist, und die Prozedur geht zum Schritt S15 über. Im Schritt S15 wird der Achsenwinkel θ, der von dem Sensorsignal an diesem Punkt abhängt, im Speicher als θref-n abgelegt. Damit ist die zweite Verarbeitung beendet.
  • Nach dem Ende der zweiten Verarbeitung verwendet der Korrekturabschnitt 5c des Robotercontrollers 5 (3) die im Speicher hinterlegten Achsenwinkel θref-n und θref-n' zum Korrigieren des Achsenwinkels θn der n-ten Achse abhängig vom Sensorsignal gemäß der folgenden Gleichung (VII): θn – (θref-n' – θref-n) → θn (VII)
  • Gleichung (VII) bedeutet, dass der Referenzwert des Achsenwinkels θn um (θref-n' – θref-n) verschoben wird. Dadurch wird der Nullpunkt gültig gemacht. Für θn = 0 nimmt der Robotermechanismusteil die gleiche Ausrichtung wie vor dem Ersetzen des Motors ein. D. h., der Achsenwinkel θn, der vom Sensorsignal abhängt und auf der Referenzposition beruht, wird wiederhergestellt.
  • Das Verfahren zum Wiederherstellen der Positionsinformation der ersten Ausführungsform sei nun wie folgt zusammengefasst. Zuerst, siehe 12, wird in der Prozedur 1a die Kalibrierung des Mechanismus vorgenommen, um eine Entsprechung zwischen dem Sensorsignal bezüglich des Nullpunkts der Gelenkachse und dem Achsenwinkel θn festzulegen. In der Prozedur 2a wird beim ersten Mal vor dem Ersetzen des Motors oder eines ähnlichen Teils ein Ansteuerbefehl von Hand an den Servomotor M ausgegeben, damit die Gelenkachse so gedreht wird, dass die vertikale Reihe der Punktmarkierungen (P1, P3 und P5) der sichtbaren Markierung 30 im Wesentlichen auf einer Linie ausgerichtet ist. Nun wird ein Bereich, der die sichtbare Markierung 30 enthält, mit der Kamera 4 aufgenommen (erste Aufnahmeprozedur). Zudem wird in der Prozedur 3a der Positionszusammenhang zwischen den Punktmarkierungen P1 bis P5 beim ersten Mal aus den Bildsignalen der Kamera 4 berechnet. Nun wird der Servomotor M betätigt und die Position der sichtbaren Markierung 30 wird so justiert, dass die Punktmarkierungen P1, P3 und P5 innerhalb eines zulässigen Werts T exakt auf einer Linie ausgerichtet sind (erste Motorsteuerprozedur). Der vom Sensorsignal abhängige Achsenwinkel θref-n an diesem Punkt wird im Speicher abgelegt.
  • Anschließend wird nach dem Ersetzen des Motors oder ähnlichen Teils in der Prozedur 4a, d. h. beim zweiten Mal nach dem Ersetzen des Motors, ein Ansteuerbefehl von Hand an den Servomotor M ausgegeben, damit die Gelenkachse so gedreht wird, dass die vertikale Reihe (P1, P3 und P5) der sichtbaren Markierung 30 im Wesentlichen auf einer Linie ausgerichtet ist. Nun wird ein Bereich, der die sichtbare Markierung 30 enthält, mit der Kamera 4 aufgenommen (zweite Aufnahmeprozedur). Daraufhin wird in der Prozedur 5a der Positionszusammenhang zwischen den Punktmarkierungen P1 bis P5 beim zweiten Mal aus den Bildsignalen der Kamera 4 berechnet. Nun wird der Servomotor M betätigt und die Position der sichtbaren Markierung 30 wird so justiert, dass die Punktmarkierungen P1, P3 und P5 innerhalb des zulässigen Werts T exakt auf einer Linie ausgerichtet sind (zweite Motorsteuerprozedur). Zuletzt wird in der Prozedur 6a abhängig vom Achsenwinkel θref-n', der auf dem Sensorsignal an diesem Punkt beruht, und vom Achsenwinkel θref-n, der vor dem Ersetzen des Motors im Speicher abgelegt wurde, der Achsenwinkel θn abhängig vom Sensorsignal korrigiert (Korrekturprozedur).
  • Mit der ersten Ausführungsform kann man die folgenden Auswirkungen erzielen:
    • (1) Vor und nach dem Ersetzen des Motors wird die sichtbare Markierung 30 mit der Kamera 4 aufgenommen. Der Servomotor M wird abhängig von den Bildsignalen der Kamera 4 so gesteuert, dass der Positionszusammenhang der sichtbaren Markierung 30 vor und nach dem Ersetzen des Motors identisch ist. Nun wird ausgehend von den Achsenwinkeln θref-n und θref-n', die zu dem Sensorsignal nach dem Ansteuern des Motors gehören, der Achsenwinkel θn korrigiert, der vom Sensorsignal nach dem Ersetzen des Motors abhängt. Damit ist der mühsame Positioniervorgang in die Referenzposition der Gelenkachse überflüssig, und die Positionsinformation, die vom Sensorsignal bezüglich des Nullpunkts abhängt und die durch das Ersetzen des Motors nicht mehr gültig ist, kann auf einfache Weise wieder gültig gemacht werden. Anders formuliert wird in dieser Ausführungsform die sichtbare Markierung 30 mit Hilfe des Bildsignals der Kamera 4 positioniert. Dieser Positioniervorgang verursacht weniger Aufwand und ist einfacher als das Positionieren mit Hilfe von Stiften, die in das Gelenkteil eingesetzt werden, oder das Positionieren mit Hilfe der v-förmigen Nut und des dort vorhandenen Annäherungssensors. Zudem ist es bei einem Verfahren, bei dem Markierungslinien 33a und 33b auf dem Halteteil 31 und dem beweglichen Teil 32 ausgebildet sind und die Positionierung visuell so erfolgt, dass die beiden Markierungslinien 33a und 33b übereinstimmen, siehe 13A und 13B, wahrscheinlich, dass ein Positionierfehler auftritt, der von der Richtung abhängt, in der die Bedienperson die Markierungslinien 33a und 33b ansieht. Damit beruht die Positioniergenauigkeit auf dem Können der Bedienperson. Im Gegensatz dazu kann in dieser Ausführungsform die sichtbare Markierung 30 exakt und unabhängig vom Können der Bedienperson positioniert werden.
    • (2) Das Positionieren der sichtbaren Markierung 30 kann an einer beliebigen Position vorgenommen werden, solange es vor und nach dem Ersetzen des Motors in der gleichen Position erfolgt. Folglich kann die Positionierung erfolgen ohne die Gelenkachse in die Referenzposition zu drehen, für die der Nullpunkt festgelegt ist. Die Flexibilität beim Positionieren nimmt daher zu.
    • (3) Durch das Verändern der Position oder der Ausrichtung der Kamera 4 vor dem Ersetzen des Motors wird die gleiche sichtbare Markierung 30 mehrmals aufgenommen. Damit kann die sichtbare Markierung 30 auch dann exakt angeordnet werden, wenn ein Höhenversatz usw. zwischen dem Halteteil 31 und dem beweglichen Teil 32 vorhanden ist.
    • (4) Das einmalige Aufnehmen der sichtbaren Markierung 30 nach dem Ersetzen des Motors reicht aus. Damit kann der Anwender die vom Sensorsignal abhängige Positionsinformation mit geringem Aufwand validieren und die Belastung des Anwenders wird geringer.
  • ZWEITE AUSFÜHRUNGSFORM
  • Es wird nun eine zweite Ausführungsform der Erfindung anhand von 1416 beschrieben. In der ersten Ausführungsform wird vor und nach dem Ersetzen des Motors oder des ähnlichen Teils die sichtbare Markierung 30 abhängig vom Bildsignal aus der Kamera 4 positioniert. Anschließend wird gestützt auf das Sensorsignal nach dem Positionieren die vom Sensorsignal abhängige Positionsinformation korrigiert. Dagegen wird in der zweiten Ausführungsform ohne Positionierung der sichtbaren Markierung 30 abhängig von der Position der sichtbaren Markierung 30 vor und nach dem Ersetzen des Motors oder des ähnlichen Teils die vom Sensorsignal abhängige Positionsinformation korrigiert. Mit der ersten Ausführungsform übereinstimmende Elemente werden mit den gleichen Bezugszeichen bezeichnet. Im Weiteren werden hauptsächlich die Unterschiede zur ersten Ausführungsform beschrieben.
  • 14 zeigt eine Skizze, die eine Prozedur eines Verfahrens zum Wiederherstellen von Positionsinformation gemäß der zweiten Ausführungsform der Erfindung erläutert. In der zweiten Ausführungsform wird zuerst in der Prozedur 1b ähnlich wie in der ersten Ausführungsform die Kalibrierung des Mechanismus vorgenommen. Nun wird in der Prozedur 2b beim ersten Mal vor dem Ersetzen des Motors ein Ansteuerbefehl von Hand an den Servomotor M ausgegeben, damit die Gelenkachse so gedreht wird, dass die vertikale Reihe (P1, P3 und P5) der sichtbaren Markierung 30 im Wesentlichen auf einer Linie ausgerichtet ist. Nun wird ein Bereich, der die sichtbare Markierung 30 enthält, mit der Kamera 4 aufgenommen (erste Aufnahmeprozedur).
  • Dabei wird, siehe 15, bei unveränderter Position der sichtbaren Markierung 30 die Kamera 4 zum Aufnehmen der sichtbaren Markierung 30 in einer ersten Ausrichtung gehalten, und daraufhin wird die Kamera 4 zum Aufnehmen der sichtbaren Markierung 30 in einer zweiten Ausrichtung gehalten. D. h., wie in der Prozedur 2a (12) der ersten Ausführungsform wird die Position und Ausrichtung der Kamera 4 verändert, und die sichtbare Markierung 30 wird mehrmals aufgenommen (zwei Mal). Nun wird in der Prozedur 3b gestützt auf das Bildsignal an diesem Punkt ähnlich wie in der ersten Ausführungsform der Positionszusammenhang der sichtbaren Markierung 30 beim ersten Mal, oder anders formuliert, die Abweichung Δx1 der Punktmarkierung P1 in der Achsendrehrichtung relativ zu den Punktmarkierungen P3 und P5 und der Höhenversatz Δd zwischen P3 und P1 (Höhendifferenz zwischen P3 und P1 in der Richtung senkrecht zur Papierebene in 15) berechnet (erste Berechnungsprozedur). Die berechneten Werte Δx1 und Δd sowie der Achsenwinkel θ1, der vom Sensorsignal abhängt, werden im Speicher abgelegt.
  • Ist die Ersetzung des Motors oder des vergleichbaren Teils erfolgt, so wird in der Prozedur 4b beim zweiten Mal nach dem Ersetzen des Motors ein Ansteuerbefehl von Hand an den Servomotor M ausgegeben, damit die Gelenkachse so gedreht wird, dass die vertikale Reihe (P1, P3 und P5) der sichtbaren Markierung 30 im Wesentlichen auf einer Linie ausgerichtet ist. Nun wird, siehe 16, ein Bereich, der diese sichtbare Markierung 30 enthält, mit der Kamera 4 aufgenommen (zweite Aufnahmeprozedur). Nun wird in der Prozedur 5b gestützt auf das Bildsignal an diesem Punkt und mit Hilfe von Δd, das beim ersten Mal im Speicher abgelegt wurde, der Positionszusammenhang der sichtbaren Markierung 30 beim zweiten Mal bzw. anders ausgedrückt die Abweichung Δx2 der Punktmarkierung P1 in der Achsendrehrichtung relativ zu den Punktmarkierungen P3 und P5 berechnet (zweite Berechnungsprozedur). Der von dem Sensorsignal abhängende Achsenwinkel an diesem Punkt ist θ2.
  • Zuletzt wird in der Prozedur 6b mit Hilfe des berechneten Werts Δx2, des von dem Sensorsignal abhängenden Achsenwinkels θ2, den beim ersten Mal im Speicher hinterlegten Werten Δx1 und θ1 und dem Abstand R von der Mitte der Gelenkachse zur Punktmarkierung P1 der von dem Sensorsignal abhängende Achsenwinkel θn anhand der folgenden Gleichung (VIII) korrigiert (Korrekturprozedur): θn – (θ2 – θ1) + (Δx2 – Δx1)/R → θn (VIII)
  • Von den genannten Prozeduren wird die Berechnung des Positionszusammenhangs der sichtbaren Markierung 30 in der Prozedur 3b vom ersten Verarbeitungsabschnitt 5a des Robotercontrollers 5 ausgeführt. Die Berechnung des Positionszusammenhangs der sichtbaren Markierung 30 in der Prozedur 5b nimmt der zweite Verarbeitungsabschnitt 5b vor. Die Korrektur des Achsenwinkels θn erfolgt durch den Korrekturabschnitt 5c. Für diesen Fall können der erste Verarbeitungsabschnitt 5a und der zweite Verarbeitungsabschnitt 5b Verarbeitungen vornehmen, die der Beschreibung anhand von 8 und 10 gleichen. Diese werden nicht nochmals erläutert.
  • Gemäß der zweiten Ausführungsform wird vor und nach dem Ersetzen des Motors oder des ähnlichen Teils die sichtbare Markierung 30 mit der Kamera 4 aufgenommen. Gestützt auf das Bildsignal der Kamera 4 wird die Abweichung (Δx2 – Δx1)/R des tatsächlichen Achsenwinkels θ berechnet. Abhängig von dieser Abweichung und der Abweichung (θ2 – θ1) des vom Sensorsignal abhängenden Achsenwinkels wird der vom Sensorsignal abhängende Achsenwinkel θn nach dem Ersetzen des Motors korrigiert. Dadurch wird die Positionsinformation, die vom Sensorsignal bezüglich des Nullpunkts abhängt, und die durch das Ersetzen des Motors oder einen ähnlichen Vorgang nicht mehr gültig ist, auf einfache Weise wieder gültig gemacht. Im Gegensatz zur ersten Ausführungsform ist es nicht erforderlich, den Servomotor M anzusteuern, um die sichtbare Markierung 30 zu positionieren. Damit lässt sich der Wiederherstellvorgang der Positionsinformation einfach ausführen.
  • In den beschriebenen Ausführungsformen wird der Positionszusammenhang zwischen dem Halteteil 31 und dem beweglichen Teil 32 durch die Punktmarkierungen P1–P5 dargestellt. Solange die Markierungen von der Kamera 4 erkannt werden können, dürfen die ersten Markierungen (P2 bis P5) und die zweite Markierung P1, die den gegenseitigen Positionszusammenhang wiedergeben, jede beliebige Gestalt haben. Der Bildgebungsabschnitt kann das Bildsignal nicht über CCD sondern über ein CMOS-Bauteil gewinnen. In den beschriebenen Ausführungsformen wird der Positionszusammenhang der sichtbaren Markierung 30 vor dem Ersetzen des Motors (erster Positionszusammenhang) durch die Prozedur (Schritte S1 bis S5) im ersten Verarbeitungsabschnitt 5a berechnet. Der Positionszusammenhang der sichtbaren Markierung 30 nach dem Ersetzen des Motors (zweiter Positionszusammenhang) wird von der Prozedur (Schritte S11 bis S13) im zweiten Verarbeitungsabschnitt 5b berechnet. Die Konfiguration eines Berechnungsabschnitts für Markierungspositionen ist jedoch nicht auf die obige Beschreibung eingeschränkt.
  • In der ersten Ausführungsform wird die sichtbare Markierung 30 vor und nach dem Ersetzen des Motors aufgenommen. Danach wird der Servomotor M so gesteuert, dass die vertikale Reihe der Punktmarkierungen P1, P3 und P5 auf einer Linie ausgerichtet ist (Schritte S9 und S16). Der Servomotor M kann jedoch auch so gesteuert werden, dass die sichtbare Markierung 30 irgendeinen beliebigen anderen Zusammenhang aufweist, und die Konfiguration des ersten Verarbeitungsabschnitts 5a und des zweiten Verarbeitungsabschnitts 5b als Motorsteuerabschnitt ist nicht auf die obige Beschreibung eingeschränkt. Der Achsenwinkel θn nach dem zweiten Mal wird korrigiert, und zwar abhängig von dem vom Sensorsignal abhängigen Achsenwinkel θref-n nach dem Ansteuern des Motors beim ersten Mal vor dem Ersetzen des Motors, und abhängig von dem vom Sensorsignal abhängigen Achsenwinkel θref-n' nach dem Ansteuern des Motors beim zweiten Mal nach dem Ersetzen des Motors. Solange jedoch der Achsenwinkel θn abhängig von dem Sensorsignal nach dem Ansteuern des Motors beim ersten Mal (erstes Sensorsignal) und vom Sensorsignal nach dem Ansteuern des Motors beim zweiten Mal (zweites Sensorsignal) korrigiert wird, ist die Konfiguration des Korrekturabschnitts 5c nicht auf die obige Beschreibung eingeschränkt.
  • Solange in der zweiten Ausführungsform die Abweichung des Achsenwinkels θn (relative Bewegung des beweglichen Teils 32 gegen das Halteteil 31) zwischen dem ersten Mal und dem zweiten Mal berechnet wird, und zwar gestützt auf den Positionszusammenhang der sichtbaren Markierung 30 beim ersten Mal vor dem Ersetzen des Motors (15) und den Positionszusammenhang der sichtbaren Markierung 30 beim zweiten Mal vor dem Ersetzen des Motors (16), und der Achsenwinkel θn abhängig von dieser Abweichung, dem Sensorsignal beim ersten Mal (erstes Sensorsignal) und dem Sensorsignal beim zweiten Mal (zweites Sensorsignal) korrigiert wird, ist die Konfiguration des Korrekturabschnitts 5c nicht auf die obige Beschreibung eingeschränkt.
  • In der ersten Ausführungsform und der zweiten Ausführungsform wird die Entsprechung zwischen dem Sensorsignal und dem Achsenwinkel θn der Gelenkachse durch das Kalibrieren des Mechanismus festgelegt. Anschließend wird θn, der auf der Referenzposition beruht, die durch des Entfernen oder Ersetzen des Servomotors M, des Untersetzungsgetriebes oder eines ähnlichen Teils nicht mehr gültig ist, durch die Korrektur wieder gültig gemacht, und zwar gestützt auf das Sensorsignal nach dem Ansteuern des Motors beim ersten Mal und das Sensorsignal nach dem Ansteuern des Motors beim zweiten Mal, oder gestützt auf die Abweichung von θn, dem Sensorsignal beim ersten Mal und dem Sensorsignal beim zweiten Mal. Auch wenn eine andere Komponente, die die Entsprechung zwischen dem Sensorsignal und dem Achsenwinkel θn beeinflusst, entfernt oder ersetzt wird, kann θn wieder gültig gemacht werden, indem man θn in vergleichbarer Weise korrigiert. Der Achsenwinkel θn wird als Positionsinformation gültig gemacht, die von dem Sensorsignal abhängt, das auf der Referenzposition beruht. Man kann jedoch auch eine andere Positionsinformation validieren.
  • In den beschriebenen Ausführungsformen wird zum Ermitteln des Positionszusammenhangs der sichtbaren Markierung 30 beim ersten Mal vor dem Ersetzen des Motors die sichtbare Markierung 30 zwei Mal mit unterschiedlichen Positionen oder Orientierungen der Kamera aufgenommen. Ist jedoch Δd vorab bekannt, so reicht es aus, die Aufnahme beim ersten Mal auszuführen. Zum Verbessern der Berechnungsgenauigkeit des Positionszusammenhangs der sichtbaren Markierung 30 kann man die sichtbare Markierung 30 drei Mal oder häufiger aufnehmen.
  • Das bewegliche Teil 32 wird durch den Servomotor M gegen das Halteteil 31 bewegt. Man kann dazu auch einen anderen Motor verwenden. Solange ein Sensorsignal ausgegeben wird, das vom Bewegungsumfang des Motors abhängt, kann man anstelle des Impulscodierers PC auch einen anderen Sensor verwenden. Wenn der Roboter ein Halteteil 31 (ein erstes Teil) und ein bewegliches Teil 32 (ein zweites Teil) enthält, die sich um die Gelenkachse gegeneinander bewegen können und die von dem Motor angetrieben werden, lässt sich die Erfindung in vergleichbarer Weise auch auf einen anderen Roboter anwenden.
  • Damit ist die Konfiguration eines Positionsinformations-Validierungsabschnitts 100, der die von dem Sensorsignal abhängige Positionsinformation validiert, die von einer Referenzposition abhängt, bei dem nach dem Feststellen der Entsprechung zwischen dem Sensorsignal und der relativen Bewegung zwischen dem zweiten Teil und dem ersten Teil bezüglich einer Referenzposition des Gelenkteils die Positionsinformation ungültig wird, da eine Komponente ersetzt oder entfernt wird, die diese Entsprechung beeinflusst, nicht auf die obige Beschreibung eingeschränkt.
  • Gemäß der Erfindung wird gestützt auf das Bildsignal der ersten Markierung und der zweiten Markierung, die den Positionszusammenhang zwischen dem ersten Teil und dem zweiten Teil vor und nach dem Ersetzen des Motors oder einem ähnlichen Vorgang darstellen, die vom Sensorsignal abhängige Positionsinformation, die auf der Referenzposition beruht, korrigiert. Damit lässt sich die Positionsinformation, die durch das Ersetzen des Motors oder einen ähnlichen Vorgang ungültig wird, leicht wieder gültig machen.
  • Die Erfindung wurde anhand besonderer Ausführungsformen beschrieben. Fachleuten ist klar, dass man daran verschiedene Änderungen und Abwandlungen vornehmen kann, ohne den Bereich der Erfindung zu verlassen, der in den folgenden Ansprüchen bestimmt ist.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 63-278787 A [0002, 0003]
    • JP 2005-177962 A [0002, 0003]

Claims (7)

  1. Vorrichtung zum Wiederherstellen der Positionsinformation eines Roboters (1), der aufweist: ein erstes Teil (31) und ein zweites Teil (32), die so verbunden sind, dass sie sich über eine Gelenkachse gegeneinander bewegen können; einen Motor (M), der das zweite Teil gegenüber dem ersten Teil bewegt; einen Sensor (PC), der ein Sensorsignal ausgibt, das einem Bewegungsumfang des Motors entspricht, wobei die Vorrichtung Positionsinformation validieren kann, die auf dem Sensorsignal beruht, das von einer Referenzposition der Gelenkachse abhängt, wenn die Positionsinformation nicht mehr gültig ist, weil eine Komponente, die eine Entsprechung zwischen dem Sensorsignal und einer relativen Bewegung des zweiten Teils gegen das erste Teil beeinflusst, entfernt oder ersetzt wurde, nachdem die Entsprechung bezüglich der Referenzposition ermittelt wurde, wobei die Vorrichtung umfasst: einen Bildgebungsabschnitt (4), der vorab ein Bildsignal in einem Bereich gewinnt, der eine erste Markierung (P2, P3, P4, P5) enthält, und eine zweite Markierung (P1), die auf dem ersten Teil bzw. dem zweiten Teil vorhanden ist, wobei die erste Markierung und die zweite Markierung einen Positionszusammenhang zwischen dem ersten Teil und dem zweiten Teil darstellen; einen Markierungspositions-Berechnungsabschnitt (5a, 5b), der einen ersten Positionszusammenhang zwischen der ersten Markierung und der zweiten Markierung berechnet, und zwar zu einem ersten Zeitpunkt bevor die Komponente entfernt oder ersetzt wird und gestützt auf ein Bildsignal, das der Bildgebungsabschnitt beim ersten Zeitpunkt gewinnt, und der einen zweiten Positionszusammenhang zwischen der ersten Markierung und der zweiten Markierung berechnet, und zwar zu einem zweiten Zeitpunkt nachdem die Komponente entfernt oder ersetzt wurde, und gestützt auf ein Bildsignal, das der Bildgebungsabschnitt beim zweiten Zeitpunkt gewinnt; und einen Korrekturabschnitt (5c), der die Positionsinformation abhängig von einem Sensorsignal korrigiert, das der Sensor nach dem zweiten Zeitpunkt ausgibt, und zwar abhängig von dem ersten Positionszusammenhang und dem zweiten Positionszusammenhang, den der Markierungspositions-Berechnungsabschnitt berechnet hat, und von einem ersten Sensorsignal, das der Sensor zum ersten Zeitpunkt ausgibt, und einem zweiten Sensorsignal, das der Sensor zum zweiten Zeitpunkt ausgibt.
  2. Vorrichtung nach Anspruch 1, zudem umfassend einen Motorsteuerabschnitt (5a; 5b), der den Motor an dem ersten Zeitpunkt so steuert, dass der erste Positionszusammenhang, den der Markierungspositions-Berechnungsabschnitt berechnet, zu einem vorbestimmten Positionszusammenhang wird, und der den Motor an dem zweiten Zeitpunkt so steuert, dass der zweite Positionszusammenhang, den der Markierungspositions-Berechnungsabschnitt berechnet, der vorbestimmte Positionszusammenhang wird, wobei der Korrekturabschnitt die auf dem Sensorsignal beruhende Positionsinformation korrigiert, die der Sensor nach dem zweiten Zeitpunkt ausgibt, und zwar gestützt auf das erste Sensorsignal, das der Sensor ausgibt, nachdem der Motorsteuerabschnitt den Motor am ersten Zeitpunkt angesteuert hat, und das zweite Sensorsignal, das der Sensor ausgibt, nachdem der Motorsteuerabschnitt den Motor am zweiten Zeitpunkt angesteuert hat.
  3. Vorrichtung nach Anspruch 1, wobei der Korrekturabschnitt eine Positionsabweichung des zweiten Teils gegenüber dem ersten Teil zwischen dem ersten Zeitpunkt und dem zweiten Zeitpunkt berechnet, und zwar gestützt auf den ersten Positionszusammenhang und den zweiten Positionszusammenhang, den der Markierungspositions-Berechnungsabschnitt berechnet, und der Korrekturabschnitt die von dem Sensorsignal abhängige Positionsinformation korrigiert, die der Sensor nach dem zweiten Zeitpunkt ausgibt, und zwar ausgehend von dieser Positionsabweichung, dem Sensorsignal, das der Sensor zum ersten Zeitpunkt ausgibt und dem Sensorsignal, das der Sensor beim zweiten Zeitpunkt ausgibt.
  4. Verfahren zum Wiederherstellen der Positionsinformation eines Roboters (1), der aufweist: ein erstes Teil (31) und ein zweites Teil (32), die so verbunden sind, dass sie sich über eine Gelenkachse gegeneinander bewegen können; einen Motor (M), der das zweite Teil gegenüber dem ersten Teil bewegt; und einen Sensor (PC), der ein Sensorsignal ausgibt, das einem Bewegungsumfang des Motors entspricht, wobei das Verfahren dafür ausgelegt ist, Positionsinformation zu validieren, die auf dem Sensorsignal beruht, das von einer Referenzposition der Gelenkachse abhängt, wenn die Positionsinformation nicht mehr gültig ist, weil eine Komponente, die eine Entsprechung zwischen dem Sensorsignal und einer relativen Bewegung des zweiten Teils gegen das erste Teil beeinflusst, entfernt oder ersetzt wurde, nachdem die Entsprechung bezüglich der Referenzposition ermittelt wurde, wobei das Verfahren umfasst: eine erste Aufnahmeprozedur zum Aufnehmen eines Bereichs, der eine erste Markierung (P2, P3, P4, P5) enthält und eine zweite Markierung (P1), die auf dem ersten Teil bzw. dem zweiten Teil vorhanden ist, und zwar im Voraus mit einer Kamera (4) zu einem ersten Zeitpunkt bevor die Komponente entfernt oder ersetzt wird, wobei die erste Markierung und die zweite Markierung einen Positionszusammenhang zwischen dem ersten Teil und dem zweiten Teil darstellen; eine erste Berechnungsprozedur zum Berechnen eines ersten Positionszusammenhangs zwischen der ersten Markierung und der zweiten Markierung zum ersten Zeitpunkt, und zwar gestützt auf ein Bildsignal, das bei der ersten Aufnahmeprozedur gewonnen wird; eine zweite Aufnahmeprozedur zum Aufnehmen eines Bereichs, der die erste Markierung enthält und die zweite Markierung, mit einer Kamera zu einem zweiten Zeitpunkt nachdem die Komponente entfernt oder ersetzt ist; eine zweite Berechnungsprozedur zum Berechnen eines zweiten Positionszusammenhangs zwischen der ersten Markierung und der zweiten Markierung zum zweiten Zeitpunkt, und zwar gestützt auf ein Bildsignal, das bei der zweiten Aufnahmeprozedur gewonnen wird, und eine Korrekturprozedur zum Korrigieren der Positionsinformation abhängig von einem Sensorsignal, das der Sensor nach dem zweiten Zeitpunkt ausgibt, und zwar abhängig von dem ersten Positionszusammenhang, der in der ersten Berechnungsprozedur berechnet wird, und dem zweiten Positionszusammenhang, der in der zweiten Berechnungsprozedur berechnet wird, und von einem ersten Sensorsignal, das der Sensor zum ersten Zeitpunkt ausgibt, und einem zweiten Sensorsignal, das der Sensor zum zweiten Zeitpunkt ausgibt.
  5. Verfahren nach Anspruch 4, zudem umfassend: eine erste Motorsteuerprozedur zum Steuern des Motors derart, dass der in der ersten Berechnungsprozedur berechnete erste Positionszusammenhang ein vorbestimmter Positionszusammenhang zum zweiten Zeitpunkt wird; und eine zweite Motorsteuerprozedur zum Steuern des Motors derart, dass der in der zweiten Berechnungsprozedur berechnete zweite Positionszusammenhang der vorbestimmte Positionszusammenhang zum zweiten Zeitpunkt wird, wobei in der Korrekturprozedur die vom Sensorsignal abhängende Positionsinformation, die der Sensor nach dem zweiten Zeitpunkt ausgibt, korrigiert wird, und zwar abhängig von dem ersten Sensorsignal, das der Sensor ausgibt, nachdem der Motor in der ersten Motorsteuerprozedur angesteuert wurde, und von dem zweiten Sensorsignal, das der Sensor ausgibt, nachdem der Motor in der zweiten Motorsteuerprozedur angesteuert wurde.
  6. Verfahren nach Anspruch 4, wobei in der Korrekturprozedur eine relative Bewegung des zweiten Teils gegen das erste Teil zwischen dem ersten Zeitpunkt und dem zweiten Zeitpunkt berechnet wird, und zwar ausgehend von dem ersten Positionszusammenhang, der in der ersten Berechnungsprozedur berechnet wird, und dem zweiten Positionszusammenhang, der in der zweiten Berechnungsprozedur berechnet wird, und anschließend die Positionsinformation, die von dem Sensorsignal abhängt, das der Sensor nach dem zweiten Zeitpunkt ausgibt, korrigiert wird, und zwar gestützt auf diese relative Bewegung, das erste Sensorsignal, das der Sensor zum ersten Zeitpunkt ausgibt, und das zweite Sensorsignal, das der Sensor zum zweiten Zeitpunkt ausgibt.
  7. Verfahren nach irgendeinem der Ansprüche 4 bis 6, wobei in der ersten Aufnahmeprozedur eine Position oder Orientierung der Kamera verändert wird, und an jeder Position oder Orientierung der Bereich aufgenommen wird, der die erste Markierung und die zweite Markierung enthält.
DE102011050640A 2010-06-01 2011-05-26 Vorrichtung und Verfahren zum Wiederherstellen der Positionsinformation von Robotern Active DE102011050640B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010126148A JP4819957B1 (ja) 2010-06-01 2010-06-01 ロボットの位置情報復元装置および位置情報復元方法
JP2010-126148 2010-06-01

Publications (2)

Publication Number Publication Date
DE102011050640A1 true DE102011050640A1 (de) 2011-12-01
DE102011050640B4 DE102011050640B4 (de) 2013-10-24

Family

ID=44924856

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102011050640A Active DE102011050640B4 (de) 2010-06-01 2011-05-26 Vorrichtung und Verfahren zum Wiederherstellen der Positionsinformation von Robotern

Country Status (4)

Country Link
US (1) US8306660B2 (de)
JP (1) JP4819957B1 (de)
CN (1) CN102294694B (de)
DE (1) DE102011050640B4 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016213965A1 (de) * 2016-07-28 2018-02-01 Kuka Roboter Gmbh Einsteckadapter, Justageinstrument und zugehöriger Roboter
WO2019179802A1 (de) * 2018-03-21 2019-09-26 Kuka Deutschland Gmbh Drehgelenkanordnung
DE102017111543B4 (de) * 2016-05-31 2019-11-07 Fanuc Corporation Robotersteuerungsvorrichtung und ein Verfahren zur Steuerung eines Roboters
WO2019215296A3 (de) * 2018-05-09 2020-04-23 Kuka Deutschland Gmbh Roboterjustage

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5266377B2 (ja) * 2011-12-19 2013-08-21 ファナック株式会社 物品の姿勢を修正する機能を備えた取出し装置
KR102196756B1 (ko) * 2015-06-16 2020-12-31 현대중공업지주 주식회사 로봇의 원점 재설정 방법
JP6298026B2 (ja) * 2015-09-15 2018-03-20 ファナック株式会社 多関節ロボットのたわみを計測するたわみ計測システム
CN108115724B (zh) * 2016-11-29 2021-05-25 沈阳新松机器人自动化股份有限公司 一种机器人随动的测试方法
JP6564428B2 (ja) 2017-08-03 2019-08-21 ファナック株式会社 キャリブレーションシステムおよびキャリブレーション方法
JP6691147B2 (ja) * 2018-01-09 2020-04-28 ファナック株式会社 パラレルリンクロボット
DE102018124595B4 (de) * 2018-10-05 2022-02-17 Carl Zeiss Industrielle Messtechnik Gmbh Vorrichtung zur Erfassung einer Position und Lage eines Endeffektors eines Roboters
JP7337495B2 (ja) * 2018-11-26 2023-09-04 キヤノン株式会社 画像処理装置およびその制御方法、プログラム
CN109799783B (zh) * 2019-01-17 2021-11-26 陈柏兵 数控机床维修螺纹管体的方法、控制装置及数控机床
JP7000368B2 (ja) 2019-02-08 2022-01-19 ファナック株式会社 ロボットキャリブレーション方法及びロボットキャリブレーション装置
JP2021191596A (ja) * 2020-06-05 2021-12-16 川崎重工業株式会社 角度キャリブレーション方法
WO2023062738A1 (ja) 2021-10-13 2023-04-20 ファナック株式会社 位置合わせ治具
CN114147725B (zh) * 2021-12-21 2024-04-02 乐聚(深圳)机器人技术有限公司 机器人的零点调整方法、装置、设备及存储介质
CN114474046B (zh) * 2021-12-27 2023-10-20 北京子牛亦东科技有限公司 机械手零点位置自动校准的方法及传输位置校准的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63278787A (ja) 1987-05-06 1988-11-16 株式会社不二越 ロボツト
JP2005177962A (ja) 2003-12-24 2005-07-07 Yaskawa Electric Corp ロボットシステム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DD256848A1 (de) 1986-12-31 1988-05-25 Gisag Veb Stahlgiesserei K M S Vorrichtung zur lageabweichungserkennung mehrachsiger gelenkroboter im programmierten arbeitsablauf
US5083073A (en) 1990-09-20 1992-01-21 Mazada Motor Manufacturing U.S.A. Corp. Method and apparatus for calibrating a vision guided robot
JPH0538688A (ja) * 1991-07-30 1993-02-19 Nok Corp 産業用ロボツトシステムの座標系較正方法
JP3894581B2 (ja) * 1996-11-26 2007-03-22 アセンブレオン ネムローゼ フェンノートシャップ 担体上に構成要素を配置する方法及び機械、並びにこの方法及び機械に使用する較正担体検出装置
DE19924511A1 (de) 1999-05-28 2000-12-21 Bernd Scheibner Vermessungverfahren für eine Handhabungsvorrichtung
GB9914918D0 (en) 1999-06-26 1999-08-25 British Aerospace Method and apparatus for calibrating a first co-ordinate frame of an indexing means in a second frame of a sensing means
JP4267005B2 (ja) * 2006-07-03 2009-05-27 ファナック株式会社 計測装置及びキャリブレーション方法
DE102007001395B4 (de) * 2007-01-09 2015-10-15 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Justieren wenigstens einer Achse
JP4298757B2 (ja) * 2007-02-05 2009-07-22 ファナック株式会社 ロボット機構のキャリブレーション装置及び方法
JP5045556B2 (ja) * 2008-05-29 2012-10-10 株式会社豊田自動織機 ロボットハンドの姿勢検知システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63278787A (ja) 1987-05-06 1988-11-16 株式会社不二越 ロボツト
JP2005177962A (ja) 2003-12-24 2005-07-07 Yaskawa Electric Corp ロボットシステム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017111543B4 (de) * 2016-05-31 2019-11-07 Fanuc Corporation Robotersteuerungsvorrichtung und ein Verfahren zur Steuerung eines Roboters
DE102016213965A1 (de) * 2016-07-28 2018-02-01 Kuka Roboter Gmbh Einsteckadapter, Justageinstrument und zugehöriger Roboter
WO2019179802A1 (de) * 2018-03-21 2019-09-26 Kuka Deutschland Gmbh Drehgelenkanordnung
WO2019215296A3 (de) * 2018-05-09 2020-04-23 Kuka Deutschland Gmbh Roboterjustage

Also Published As

Publication number Publication date
CN102294694A (zh) 2011-12-28
CN102294694B (zh) 2014-12-10
JP4819957B1 (ja) 2011-11-24
DE102011050640B4 (de) 2013-10-24
US20110295421A1 (en) 2011-12-01
JP2011251365A (ja) 2011-12-15
US8306660B2 (en) 2012-11-06

Similar Documents

Publication Publication Date Title
DE102011050640B4 (de) Vorrichtung und Verfahren zum Wiederherstellen der Positionsinformation von Robotern
DE102016116702B4 (de) Messsystem zum Kalibrieren der mechanischen Parameter eines Roboters
DE102017002608B4 (de) Positioniersystem unter Verwendung eines Roboters
DE102015001527B4 (de) Robotersystem, das visuelle Rückmeldung verwendet
DE102010032840B4 (de) Vorrichtung und Verfahren zum Messen der Position eines Werkzeugmittelpunktes eines Roboters
DE602005003147T2 (de) Messsystem
DE102018213985B4 (de) Robotersystem
DE602004013107T2 (de) Vorrichtung zur Korrektur einer gelernten Position
EP2227356B1 (de) Verfahren und system zum hochpräzisen positionieren mindestens eines objekts in eine endlage im raum
DE102018112820B4 (de) Teach-Positionskorrekturvorrichtung und Teach-Positionskorrekturverfahren
DE60127644T2 (de) Lehrvorrichtung für einen Roboter
DE69219532T2 (de) Methode zur koreektur einer detektierten position
DE102009034529B4 (de) Automatisches Führungs- und Erkennungssystem sowie Verfahren für dieses
DE102016116811B4 (de) Auslenkungsmesssystem zum Messen der Auslenkung eines Gelenkroboters
DE102015002193A1 (de) Schweissbrennerdetektor und Schweissrobotersystem
DE102017111543B4 (de) Robotersteuerungsvorrichtung und ein Verfahren zur Steuerung eines Roboters
EP2489977A2 (de) Vorrichtung und Verfahren zur Bestimmung der 3-D-Koordinaten eines Objekts und zum Kalibrieren eines Industrieroboters
EP3166312A1 (de) Vorrichtung und verfahren zum justieren und/oder kalibrieren eines multi-kamera moduls sowie verwendung einer solchen vorrichtung
DE102018121481A1 (de) Entfernungsmesssystem und Entfernungsmessverfahren
DE102009012590A1 (de) Vorrichtung zum Ermitteln der Stellung eines Roboterarms mit Kamera zur Durchführung von Aufnahmen
CH666756A5 (de) Einrichtung fuer eine photographische kamera mit in bezug aufeinander verstellbaren objektiv- und bildtraegern.
EP1681111A1 (de) Fertigungseinrichtung, insbesondere Biegepresse und Verfahren zum Betrieb der Fertigungseinrichtung
DE112014004506T5 (de) Fahrzeugumgebungsbildanzeigevorrichtung und Kameraeinstellverfahren
DE102016119605A1 (de) Kalibrierungssystem und Kalibrierungsverfahren zur Kalibrierung der mechanischen Parameter des Handgelenksteils eines Roboters
DE102018007287B4 (de) Roboter-Controller zum Durchführen einer Kalibrierung, Messsystem und Kalibrierverfahren

Legal Events

Date Code Title Description
R012 Request for examination validly filed

Effective date: 20110913

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final

Effective date: 20140125

R082 Change of representative

Representative=s name: HASELTINE LAKE LLP, DE

R082 Change of representative

Representative=s name: HL KEMPNER PATENTANWAELTE, SOLICITORS (ENGLAND, DE

Representative=s name: HL KEMPNER PATENTANWALT, RECHTSANWALT, SOLICIT, DE