DE3731704C2 - Verfahren und Anordnung zur Eichung eines an der Hand eines Industrieroboters montierten Sensors - Google Patents

Verfahren und Anordnung zur Eichung eines an der Hand eines Industrieroboters montierten Sensors

Info

Publication number
DE3731704C2
DE3731704C2 DE3731704A DE3731704A DE3731704C2 DE 3731704 C2 DE3731704 C2 DE 3731704C2 DE 3731704 A DE3731704 A DE 3731704A DE 3731704 A DE3731704 A DE 3731704A DE 3731704 C2 DE3731704 C2 DE 3731704C2
Authority
DE
Germany
Prior art keywords
sensor
rotation
robot
axis
calibration
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.)
Expired - Fee Related
Application number
DE3731704A
Other languages
English (en)
Other versions
DE3731704A1 (de
Inventor
Bjoern Dipl Ing Andersson
Jan G Dipl Ing Faeger
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.)
ABB Norden Holding AB
Original Assignee
ASEA AB
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 ASEA AB filed Critical ASEA AB
Publication of DE3731704A1 publication Critical patent/DE3731704A1/de
Application granted granted Critical
Publication of DE3731704C2 publication Critical patent/DE3731704C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23KSOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
    • B23K9/00Arc welding or cutting
    • B23K9/12Automatic feeding or moving of electrodes or work for spot or seam welding or cutting
    • B23K9/127Means for tracking lines during arc welding or cutting
    • B23K9/1272Geometry oriented, e.g. beam optical trading
    • B23K9/1274Using non-contact, optical means, e.g. laser means
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Optics & Photonics (AREA)
  • Geometry (AREA)
  • Plasma & Fusion (AREA)
  • Manipulator (AREA)
  • Length Measuring Devices With Unspecified Measuring Means (AREA)
  • Numerical Control (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Measurement Of Optical Distance (AREA)

Description

Die Erfindung betrifft ein Verfahren und eine Anordnung zur Eichung eines an der Hand eines Industrieroboters montierten Sensors gemäß dem Oberbegriff des Anspruches 1. Unter "Punkt" wird daher die Position und die Orientierung (Win­ kellage) verstanden. Die Erfindung bezieht sich auch auf eine Anordnung zur Durchführung des Verfahrens.
Es ist bereits bekannt, zur Steuerung von Industrierobotern Sensoren an der Roboterhand zu montieren. Ein Beispiel für ein Anwendungsgebiet einer solchen Maßnahme ist das automa­ tische Schweißen mittels eines Industrieroboters, wobei der Sensor sowohl zum Auffinden einer Linie verwendet werden kann, längs derer geschweißt werden soll, als auch zur auto­ matischen Führung des Schweißwerkzeuges längs dieser Verbin­ dungslinie, während des Schweißvorganges. Beispiele einer solchen Roboteranordnung werden in der älteren DE-OS 34 13 731, den britischen Patentanmeldungen 20 88 095 und 21 10 427 und der US-PS 43 06 144 beschrieben. Beispiele für Sen­ soren, die für solche Einrichtungen geeignet sind, werden zusätzlich beschrieben in den US-PS 44 17 127 und 45 01 950.
Ein allgemeines Problem bei solchen Roboteranordnungen be­ steht darin, daß die Koordinaten des Sensors in Beziehung gebracht werden müssen, mit dem Koordinatensystem des Robo­ ters. Bei bekannten Anordnungen muß die individuelle Eichung jedes Sensors nach seiner Montage am Roboter ausgeführt wer­ den. Der Grund hierfür liegt darin, daß Ungenauigkeiten der Sensorbefestigung und unvermeidbare Abweichungen in den geo­ metrischen Abmessungen und im Meßsystem zwischen verschie­ denen Exemplaren des gleichen Sensortyps zur Folge haben, daß es nicht möglich ist, die oft sehr hohen Anforderungen an die Genauigkeit (üblicherweise in der Größenordnung von 0,1 mm) hinsichtlich der Positionierung der Arbeitswerkzeuge des Roboters ohne die genannte Eichung zu erzielen. Die bis­ her angewendete manuelle Eichung ist sehr zeitaufwendig und verursacht einen erheblichen Produktionsausfall, beispiels­ weise während des Austausches eines defekten Sensors.
Es wurde vorgeschlagen, den Sensor und seine Befestigungs­ vorrichtung derart zu bauen, daß man eine mechanisch sehr gut definierte Sensormontage erhält. Eine solche Ausfüh­ rungsform würde jedoch eine sehr große Genauigkeit der Sen­ sorbefestigungsvorrichtung und der mechanischen Konstruktion des Sensors und seines Meßsystems verlangen. Aber auch bei Beachtung dieser hohen Genauigkeitsforderungen würde es wahrscheinlich unmöglich sein, die häufig an die Genauigkeit der Positionierung des Roboterwerkzeugs gestellten Forderun­ gen zu erfüllen. Darüber hinaus könnten aus praktischen Grün­ den nur eine oder mehrere Formen der Montage des Sensors am Roboter in jedem einzelnen Falle verwendet werden. Hierin liegt ein erheblicher Nachteil, da es oft sehr erwünscht ist, den Sensor in einer beliebigen Weise in bezug auf das Werkzeug zu montieren mit Rücksicht auf die Anforderungen an die Zugänglichkeit, die in jedem einzelnen Falle anders sein können.
Aus den europäischen Patentanmeldungen mit den Veröffentli­ chungsnummern 42 960 und 1 14 505 und der internationalen Pa­ tentanmeldung mit der Veröffentlichungsnummer WO 85 03 368 sind verschiedene Verfahren zur Bestimmung der Position der Hand eines Industrieroboters unabhängig von dem Positionie­ rungssystem des Roboters und zur Eichung des Positionie­ rungssystems des Roboters bekannt. Diese Druckschriften ent­ halten keinen Vorschlag für das spezielle Problem des an ei­ ner Roboterhand montierten Sensors, das heißt zur Bestimmung der Beziehung zwischen dem Roboter-Koordinatensystem und dem Koordinatensystem eines solchen Sensors.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur Eichung eines an der Hand eines Industrieroboters montierten Sensors zu entwickeln, welches in schneller und einfacher Weise eine wirksame Eichung des Sensors ermöglicht, das heißt, eine schnelle und genaue Bestimmung der Beziehung zwi­ schen den Koordinatensystemen des Sensors und des Roboters. Diese Eichung soll mit einem Minimum an manuellen Operatio­ nen durchführbar sein, um die Eichung sehr schnell und mit einem geringen Risiko durch Bedienungsfehler zu erreichen. Ferner soll das Verfahren eine schnell und einfach durch­ führbare Eichung nach jeder Montage oder jedem Austausch ei­ nes Sensors ermöglichen, um die Genauigkeitsanforderungen an den Sensor selbst und seine Befestigungsvorrichtung herab­ setzen zu können und einen Sensor in beliebiger Weise rela­ tiv zum Werkzeug befestigen zu können.
Zur Lösung dieser Aufgabe wird ein Verfahren gemäß dem Ober­ begriff des Anspruchs 1 vorgeschlagen, welches erfindungs­ gemäß die im kennzeichnenden Teil des Anspruches 1 genannten Merkmale hat.
Vorteilhafte Ausgestaltungen des Verfahrens nach der Erfin­ dung sind in den weiteren Ansprüchen 2 bis 11 genannt.
Der Erfindung liegt ferner die Aufgabe zugrunde, eine Anord­ nung zur Durchführung des Verfahrens zu entwickeln.
Zur Lösung dieses Teils der Aufgabe wird eine Anordnung vor­ geschlagen, die durch die Merkmale des des Anspruchs 12 ge­ kennzeichnet ist.
Anhand der in den Figuren gezeigten Ausführungsbeispiele soll die Erfindung näher erläutert werden. Es zeigt
Fig. 1 einen Industrieroboter, eingerichtet für die Her­ stellung einer Schweißverbindung längs einer Verbin­ dungslinie mit Hilfe eines optischen Sensors,
Fig. 2a bis 2c in detailierter Darstellung den Aufbau des Sensors und seine Befestigung am Roboter,
Fig. 3 eine Eichplatte zur Verwendung während des Eichvor­ ganges,
Fig. 4 eine Erläuterung zur Durchführung eines speziellen Schrittes während des Eichvorganges,
Fig. 5 den Hauptprogrammablaufplan für den Eichvorgang,
Fig. 6 bis 13 Programmablaufpläne für während des Eich­ vorganges ablaufende Unterprozeduren,
Fig. 14 schematisch ein Beispiel eines Steuersystems zur Durchführung des Eichverfahrens gemäß der Erfindung.
Das gewählte Beispiel für eine Ausführung der Erfin­ dung, das im folgenden beschrieben wird, bezieht sich auf die Anwendung der Erfindung auf einen für elektrisches Schweißen eingesetzten Industrieroboter. Die Roboteranlage ist schematisch in Fig. 1 dargestellt. Zu dem darin verwen­ deten Industrieroboter gehört eine Grundplatte 1 die auf ei­ nem festen Fundament angeordnet ist, eine um eine vertikale Achse drehbare Säule 2, ein Innenarm 3, ein Außenarm 4 und eine Roboterhand 5 mit einem Handgelenk. Der Innenarm 3 kann relativ zur Säule 2 um eine horizontale Achse, die durch die Verbindung zwischen den beiden Teilen verläuft, geschwenkt werden. Entsprechend kann der Außenarm 4 relativ zum Innen­ arm 3 und die Hand 5 relativ zum Außenarm 4 um je eine hori­ zontale Achse durch die Verbindungsstellen zwischen den je­ weils benachbarten Gliedern geschwenkt werden. An der Hand 5 des Roboters ist ein Schweißwerkzeug 6 befestigt, und der Arbeitspunkt (das freie Ende des Schweißdrahtes) des Schweißwerkzeuges ist mit TCP (tool center-point) bezeichnet. Die Roboterhand 5 trägt auch einen optischen Sensor 7, der in Fig. 1 nur schematisch dargestellt ist. Der Sensor 7 ar­ beitet nach der sogenannten optischen Triangulation (Drei­ ecksaufnahme), das heißt, er sendet einen Lichtstrahl aus und mißt das vom Meßpunkt 8 des Objektes diffus reflektierte Licht. Auf diese Weise kann die Entfernung zwischen dem Sen­ sor 7 und dem Objekt bestimmt werden. Durch Abtasten des Meßpunktes 8 durch hin- und hergehende Bewegungen in einer Richtung, die einen Winkel mit, zum Beispiel, einer Schweiß­ verbindungslinie bildet, kann auch die Lage der Verbindungs­ linie in einer seitlichen Richtung relativ zum Sensor 7 be­ stimmt werden. Der Sensor 7 kann von der in der älteren DE- A 34 13 731.9 beschriebenen Art sein. Als Beispiel für ein Werkstück zeigt Fig. 1 die Herstellung einer Schweißnaht längs einer Verbindungslinie zwischen zwei Platten 12 und 13.
Zu der Roboteranlage gemäß Fig. 4 gehört ferner ein Steuer­ schrank 15, der eine Leistungsversorgungsausrüstung, Steuer­ einrichtung für die verschiedenen Achsen des Roboters, Speicher zum Speichern von Arbeitsprogrammen für den Roboter und einen Rechner enthält, welcher den Roboter während der Programmierung und während der automatischen Arbeitsausfüh­ rung steuert und die notwendigen Berechnungen ausführt. Zur Kommunikation zwischen einer Bedienungsperson und der Robo­ terausrüstung während der Programmierung und/oder des auto­ matischen Arbeitsablaufes ist eine Betätigungseinheit 16 vorhanden, die an den Steuerschrank 15 angeschlossen ist. Die Betätigungseinheit 16 enthält einen Steuerhebel (joy­ stick) 17, mit dessen Hilfe die Positionierung des Roboters während der Programmierung durchgeführt werden kann. Außer­ dem enthält die Einheit 16 eine Anzeigeeinrichtung 18 und eine Anzahl von schematisch dargestellten Drucktasten 19, mit deren Hilfe Befehle und numerische Daten dem Steuersy­ stem des Roboters zugeführt werden können.
In einer Roboteranlage der obengenannten Art kann der Sen­ sor einerseits dazu verwendet werden, um den Roboter zum Auffinden der Schweißverbindungslinie zu befähigen, und an­ dererseits zur Ermöglichung des Entlanglaufens längs der Schweißverbindungslinie während der Ausführung des Schweißens. In bestimmten bekannten Anlagen dieser Art wird der Sensor zur Durchführung kleiner Korrekturen an einem Schweißpfad verwendet, der im Voraus programmiert worden ist. Die Erfindung bezieht sich jedoch in erster Linie auf den Fall, in welchem die Position der Schweißverbindungsli­ nie, die vom Sensor ermittelt wird, in das Koordinatensystem transformiert wird, in welchem die Steuersignale für den Ro­ boter gegeben werden, wodurch eine Folgesteuerung längs ei­ nes beliebigen Schweißpfades ermöglicht wird, ohne daß ir­ gendeine Vorprogrammierung des Pfades notwendig ist.
Das sogenannte Basis-Koordinatensystem des Roboters ist ein rechtwinkliges mit dem Boden verbundenes Koordinatensystem, welches in Fig. 1 durch die Koordinatenachsen X, Y, Z gekenn­ zeichnet ist.
Die Fig. 2A und 2B zeigen, wie in dem gewählten Beispiel das Schweißwerkzeug 6 und der Sensor 7 an der Roboterhand 5 angeordnet ist. Die Hand 5 ist relativ zum Außenarm 4 dreh­ bar, und zwar einerseits um eine Achse A, die senkrecht zur Zeichenebene verläuft, und andererseits um eine Achse B die mit der Längsachse der Hand 5 zusammenfällt. Der mechanische Aufbau des Sensors ist in der älteren schwedischen Patentan­ meldung 86 03 655-5 beschrieben (eingereicht in Schweden am 1. 9. 1986 mit Nachfolgeanmeldung in der Bundesrepublik Deutschland). Diese Schrift zeigt auch, wie das Schweißwerk­ zeug 6 am Sensorgehäuse angeordnet ist. Zum Sensor 7 gehört ein Gehäuse 21, 22, welches fest an der Roboterhand 5 befe­ stigt ist. Unter dem kreisförmigen Teil 22 des Gehäuses ist die in gleicher Weise kreisförmige Sensoreinheit 23 angeord­ net. Die Sensoreinheit 23 kann durch einen im Gehäuseteil 21 angeordneten Antriebsmotor um eine Achse gedreht werden, die annähernd mit der Symmetrieachse des kreisförmigen Gehäuse­ teils 22 zusammenfällt. Auf diese Weise kann der Meßpunkt 25 des Sensors in einem beliebigen Punkt auf einem Kreis ge­ bracht werden, dessen Mittelpunkt in die durch den Punkt TCP gehende Längsachse des Schweißwerkzeugs 6 fällt. Das Schweißwerkzeug 6 ist in einem zentral angeordneten Kanal im Gehäuse 22 angeordnet. Der Werkzeugbearbeitungspunkt (TCP) des Schweißwerkzeugs 6 besteht aus dem Ende des Schweiß­ drahtes 20. Die Sensoreinheit 23 sendet einen Lichtstrahl 24 aus, welcher ein Objekt am Meßpunkt 25 trifft. Das vom Meß­ punkt 25 reflektierte Licht wird von der Sensoreinheit 23 empfangen und der Winkel zwischen dem ausgesandten und dem empfangenen Licht bildet ein Maß für die Entfernung zwischen Objekt und Sensor.
Fig. 2C zeigt, wie der Meßpunkt 25 durch Drehung (Indexie­ rung) der Sensoreinheit 23 auf einer Kreisfläche 30 bewegt werden kann. Der Drehwinkel der Sensoreinheit 23, welcher sich als Winkeldifferenz zwischen einer Nullposition 32 und der Augenblicksposition 33 der Sensoreinheit 23 ergibt, ist mit c bezeichnet.
Mittels eines schwingenden Spiegels, der in der Sensorein­ heit 23 angeordnet ist, kann der Meßpunkt 25 längs einer Strecke 31-31′ periodisch hin- und herbewegt werden, welche tangential zu der Kreisbahn 30 verläuft. Wenn der Meßpunkt 25 eine Plattenkante, eine Schweißverbindungslinie oder der­ gleichen passiert, tritt eine Diskontinuität in dem vom Sen­ sor gemessenen Abstand auf, und der Sensor bestimmt in einer an sich bekannten Weise den Abstand b längs der Abtast­ strecke zwischen der Diskontinuitätsstelle 34 und dem Mit­ tenpunkt 35 der Abtaststrecke.
Die Fig. 2A bis 2C zeigen ein mit der Roboterhand 5 ver­ bundenes Koordinatensystem x, y, z sowie ein mit dem Sensor verbundenes Koordinatensystem x′, y′, z′. Bedingt durch unver­ meidbare Änderungen in der Konfiguration des Sensors selbst sowie in der Befestigung des Sensors an der Roboterhand wei­ chen die Koordinatensysteme x′, y′, z′ und x, y, z hinsichtlich ihrer gegenseitigen Position und ihrer gegenseitigen Win­ kelorientierung von den entsprechenden Nennwerten ab.
Fig. 3 zeigt eine Eichplatte 40, die während des Eichver­ fahren gemäß der Erfindung verwendet wird. Die Platte ist eben und rechteckig, und drei ihrer Ecken sind mit A, B und C bezeichnet. Der Mittelpunkt der Kante 41 der Platte 40 ist mit E bezeichnet und der Mittenpunkt der Kante 42 der Platte 40 ist mit F bezeichnet. D bezeichnet einen Punkt auf der Platte 40, der einen bestimmten Abstand vom Punkte E auf­ weist. Während des Eichverfahrens ist die Platte 40 relativ horizontal unter dem Sensor/Schweißwerkzeug angeordnet. Die Richtung, in der sich die Kante 41 der Platte 40 erstreckt, ist zweckmäßigerweise so gewählt, daß sie annähernd mit der x-Richtung des Koordinatensystems der Roboterhand zusammen­ fällt.
Das Eichverfahren gemäß der Erfindung wird im folgenden an­ hand der Fig. 5 bis 13 beschrieben. Fig. 5 zeigt in Form eines Programmablaufplans den Ablauf des Eichverfahrens, und die Fig. 6 bis 13 zeigen Programmablaufpläne für Unter­ prozeduren, die während des Eichverfahrens ausgeführt wer­ den.
Der Vorgang beginnt mit der Definition der Position des Werkzeugbearbeitungspunktes TCP (Werkzeugzentrumspunkt). Der Roboter wird dabei in eine solche Position gesteuert, daß der Punkt TCP mit einem Punkt zusammenfällt, dessen Position in dem Basis-Koordinatensystem des Roboters bekannt ist. Da die Position und Orientierung der Koordinatensysteme x, y, z der Roboterhand in jedem Augenblick bekannt ist, und zwar in Form von Koordinatenwerten im Basis-Koordinatensystem des Roboters, erhält man die Position des Punktes TCP im Ko­ ordinatensystem der Roboterhand und fortan während des Eich­ verfahrens auch in dem Basis-Koordinatensystem X, Y, Z des Ro­ boters.
Im folgenden Schritt, PROC PLANDEF, des Eichverfahrens wird die Eichebene definiert, indem der Punkt TCP manuell in drei Ecken A, B, C der Eichplatte bewegt wird. Fig. 11 zeigt wie dies getan wird. TCP wird zunächst in die Ecke A geführt (Position Pa). Durch Betätigung eines Betätigungsgliedes der Betätigungseinheit 16 wird die Position der Ecke A gespei­ chert. Der Roboter wird dann in die Position Pb der Ecke B geführt, worauf diese Position gespeichert wird, und dann wird der entsprechende Schritt für die Ecke C wiederholt.
Der manuelle Teil des Eichverfahrens ist damit abgeschlossen und mit der Speicherung der Position der Ecke C erfolgt der übrige Teil des Eichverfahrens selbsttätig. Die Eichung wird von einem Eichprogramm gesteuert, welches zuvor im Programm­ speicher des Roboterrechners gespeichert wurde. Dieses Pro­ gramm ist nach den Grundsätzen aufgebaut, die in den Pro­ grammablaufplänen der Fig. 5 bis 13 gezeigt sind.
TCP wird nun in die Position Pd des Punktes D in Fig. 3 be­ wegt. Dieser Punkt wird so gewählt, daß er auf der Platte 40 in geringer Entfernung von dem Mittenpunkt E der Seite 41 der Platte 40 liegt. Die Entfernung dieses Punktes von dem Plattenrand ist so bemessen, daß der Meßpunkt des Sensors bei einer vollen Rotation des Sensors um 360 Grad stets im Bereich der Platte bleibt. Danach erfolgt eine rohe Bestim­ mung in PROC INDEX (siehe Fig. 10) der Sensorkoordinate (Sensorindex) in der Triangulationsebene des Sensors senk­ recht zur Rotationsachse A der Roboterhand (siehe Fig. 2A und 2B). Wenn als Wert für den Sensorindex (Drehwinkellage) Null angenommen wird, so wird eine Entfernungsmessung in vier Punkten durchgeführt, die um 90° gegeneinander versetzt um die Drehachse des Sensors angeordnet sind. Diese Prozedur wird durch den Programmablaufplan in Fig. 13 beschrieben, PROC DISTIFF. Die Sensoreinheit wird zunächst in die Posi­ tion gedreht, welche dem angenommenen Wert des Sensorindex si entspricht. Dieses bedeutet, daß der Winkel c (Fig. 2C) auf den Wert si eingestellt wird, der im vorliegenden Falle mit Null angenommen wurde. In dieser Position der Sensorein­ heit wird eine erste Abstandsmessung durchgeführt (M dist 0). Dann wird die Sensoreinheit um 90° gedreht und eine erneute Abstandsmessung in dem Punkt durchgeführt, welcher den Ab­ standswert dist 90 ergibt. Wenn die vier Abstandsmessungen durchgeführt worden sind, werden die Größen diffa und diffb berechnet, wobei
diffa = dist 180 - dist 0
diffb = dist 270 - dist 90
Danach wird die Roboterhand um einen vorbestimmten Wert ge­ dreht (PROC HANDROT, Fig. 12). Bei diesem Vorgang wird die Roboterhand um die Achse A in Fig. 2 aus ihrer ursprüng­ lichen Winkellage Ra in ihre neue Winkellage Ra + rota ge­ dreht, und um die Achse B in Fig. 2 findet eine Drehung aus der ursprünglichen Lage Rb in die neue Lage Rb + rotb statt. Im vorliegenden Falle wurde für rota 50 und für rotb 0° ge­ wählt. Zunächst werden die neuen Achsen-Koordinaten bestimmt (Ra = Ra + rota; Rb = Rb + rotb). Danach (NEWPOS) wird die neue Position durch Basis-Koordinaten (X, Y, Z) und Handorien­ tierung ausgedrückt. Schließlich (ROTATE) wird ein Positio­ nierungsbefehl gegeben mit einer neuen Handorientierung mit ursprünglichen Basis-Koordinanten (die Position des Punktes Pd). Die neue Orientierung der Roboterhand wird berechnet (NEWPOS). Danach findet eine erneute Abstandsmessung (PROC DISTDIFF) in vier um 90° gegeneinander versetzten Punkten statt. Dies ergibt veränderte Werte für diffa und diffb, und schließlich wird aus den Änderungen von diffa und diffb, die durch die Rotation rota verursacht wurden, ein Wert für den Sensorindex berechnet (COMP si). Die Berechnung erfolgt derart, daß, wenn der Sensor in den berechneten Wert für den Sensorindex gebracht worden ist, eine Drehung um die Achse A nur die Meßwerte dist 0 und dist 180 beeinflußt und eine Drehung um die Achse B nur die Meßwerte dist 90 und dist 270 beeinflußt. Danach erfolgt eine Korrektur der Sen­ sorposition (PROC NORMPLAN) derart, daß die Drehachse des Sensors senkrecht zur Eichebene verläuft. Der Programmab­ laufplan für diesen Vorgang ist in Fig. 9 gezeigt. Der Vor­ gang beginnt mit der Unterprozedur PROC INITNORM (Fig. 8). In dieser Prozedur werden die Austauschfaktoren Ga und Gb berechnet, welche die Wirkungen auf diffa und diffb von rota beziehungsweise rotb beschreiben. Zunächst wird PROC DIST- DIFF ausgeführt, wodurch die Werte von diffa und diffb er­ zeugt werden. Danach wird PROC HANDROT mit rota = 50 und rotb = 0° ausgeführt, woraufhin PROC DISTDIFF wiederholt wird. Danach wird der Austauschfaktor Ga berechnet (COMP Ga), der gebildet wird durch den Quotienten aus den Änderun­ gen von rota und diffa. Als nächster Schritt wird PROC HAND­ ROT ausgeführt mit rota = 0° und rotb =50, woraufhin PROC DISTDIFF wiederholt wird. Aus den für diffb erhaltenen Ände­ rungen wird der Austauschfaktor Gb berechnet, welcher gebil­ det wird durch den Quotienten aus den Änderungen rotb und diffb. Als nächster Schritt in PROC NORMPLAN wird PROC DIST­ DIFF erneut ausgeführt, wodurch laufende Werte für diffa und diffb erzeugt werden. Als nächster Schritt findet ein Ver­ gleich zwischen diffa und diffb statt. Wenn diffa größer als diffb ist, wird als nächster Schritt PROC HANDROT ausgeführt mit
rota = diffa × Ga
rotb = 0
Danach wird eine neue Abstandsmessung in vier Punkten durch­ geführt, PROC DISTDIFF, und anschließend ADJ Ga, findet eine Aktualisierung (update) des Austauschfaktors Ga statt. Schließlich wird ein Vergleich der beiden Größen diffa und diffb mit einem vorgegebenen unteren Grenzwert Δ durchge­ führt. Wenn beide Größen diffa und diffb kleiner sind als der Grenzwert, wird PROC NORMPLAN vollendet. Wenn beide Werte oder einer von beiden Werten den Grenzwert überschrei­ tet, wird die gesamte Prozedur wiederholt.
Wenn in der dritten Stufe in PROC NORMPLAN diffa nicht größer als diffb ist, wird statt dessen PROC HANDROT ausge­ führt mit
rota = 0
rotb = diffb × Gb,
wonach eine Abstandsmessung (PROC DISTDIFF) und eine Aktua­ lisierung des Austauschfaktors Gb (ADJ Gb) ausgeführt wird.
In der oben beschriebenen Weise werden sukzessiv kleinere Drehungen um die beiden Achsen A und B der Roboterhand wäh­ rend der Prozedur PROC NORMPLAN ausgeführt, bis die Drehachse des Sensors senkrecht zur Eichebene verläuft. In der näch­ sten Stufe wird die Quarternio Qn gespeichert (STORE Qn), welches die Rotation der Roboterhand definiert, das heißt, die Orientierung der Roboterhand, wenn die Drehachse des Sensors senkrecht zur Eichebene verläuft. In der nächsten Stufe (STORE DIST) werden die zuletzt erhaltenen Abstands­ werte dist 0, dist 90, dist 180, dist 270 sowohl separat als auch als Mittelwerte gespeichert. Der Mittelwert Tzz wird verwendet zur Umrechnung in z-Richtung zwischen den Null­ punkten der Sensor-Koordinaten und der Roboterhand-Koordina­ ten. Die separaten Abstandsmessungen werden verwendet zur Kompensation eventuell verbleibender Parallelabweichungen zwischen der Drehachse des Sensors und der Normalen auf die Eichebene.
Die Messungen am Punkte D werden nun abgeschlossen, und das Eichprogramm bewegt TCP zu dem Punkt E, dessen Position Pe als der Mittelwert zwischen den Positionen Pb und Pc der Ecken B und C definiert ist. Diese Positionierung ist mit TCP → Pe im Programmablaufplan bezeichnet. Die Orientierung der Roboterhand bleibt unverändert, das heißt, sie wird bestimmt durch Qn.
Als nächster Schritt wird PROC NORMAL ausgeführt, dessen Zweck es einerseits ist, einen exakten Wert für die Bezie­ hung zwischen der Sensorrotation und den Roboterhand-Koor­ dinaten bereitzustellen und andererseits als Grundlage zu dienen für die Translation in eine Richtung zwischen den Ko­ ordinatensystemen des Sensors und der Roboterhand. TCP wird jetzt im Punkt E positioniert, während der Schnittpunkt zwi­ schen der Rotationsachse des Sensors und der Eichebene (0) im allgemeinen an einer anderen Stelle liegt. Als Ergebnis der vorhergehenden Operationen wird der Sensor nun in einer solchen Weise gedreht, daß die Sensorabtaststrecke 31-31′ annähernd, aber im allgemeinen nicht exakt senkrecht zu der Kante 41 der Eichplatte verläuft (siehe Fig. 4). In diese Position wird eine Messung (Mb) der Seitenkoordinate b 1 der Sensorabtaststrecke durchgeführt. Die Sensoreinheit wird dann um 180° gedreht (Index 180°), worauf die Messung zur Gewinnung des Wertes b 2 wiederholt wird. Von einem angenä­ herten Wert R für den Radius des Sensorzylinders und von der Differenz zwischen den beiden Meßwerten b 1 und b 2 erhält man ein Maß für den Winkel kon.c in Fig. 4 (COMP kon.c). Dieser Winkel wird mit einem unteren Grenzwert Δ verglichen. Wenn der Winkel den Grenzwert überschreitet, wird der Sensor um den Winkel kon.c gedreht, und die Prozedur wird wiederholt, bis der Winkel kleiner als der Grenzwert ist. Auf diese Weise kann durch sukzessive Iteration eine Korrektur der Sensorabtaststrecke derart erreicht werden, daß sie exakt senkrecht zur Plattenkante 41 verläuft. Der Winkel kon.c der nach der Justierung gespeichert wird, wird später benutzt zur Herstellung einer Beziehung zwischen der Sensorrotation und dem Koordinatensystem der Roboterhand.
Als nächster Schritt in dem Eichverfahren wird der Mittel­ wert der im Punkte E gemessenen Seitenkoordinaten b 1 und b 2 gespeichert (STORE Tyy).
Da der Radius des Sensorzylinders im allgemeinen nicht mit seinem Nennwert übereinstimmt und da der Sensorzylinder im allgemeinen eine gewisse Konizität hat (der Lichtstrahl 24 in Fig. 2A ist im allgemeinen nicht exakt parallel zur Drehachse des Sensors), muß ermittelt werden, wie der Sen­ sorradius sich mit dem Abstand verändert. Diese Ermittlung findet durch die Prozedur PROC KON statt. Den Programmab­ laufplan dieser Prozedur zeigt Fig. 7. Sie beginnt mit der Prozedur PROC NORMAL, durch welche die Sensorabtaststrecke so ausgerichtet wird, daß sie senkrecht zu der Kante der Eichplatte verläuft. Danach wird der Sensor um den vorbe­ stimmten Winkel vkon (ROT vkon) gedreht. Die Seitenkoordi­ nate b 1 der Seitenkante wird abgelesen und gespeichert. Die Änderung der Seitenkoordinate erzeugt unmittelbar ein Maß für den Radius des Sensorzylinders bei der verwendeten Ent­ fernung a. In der nächsten Stufe z = z + zkon wird TCP um den Abstand zkon in positiver Richtung der z-Koordinate ver­ schoben. Dann wird die Routine PROC NORMAL wiederholt, der Sensor wird um den Winkel vkon gedreht und die Änderung der Seitenkoordinate wird abgelesen. In der gleichen Weise er­ hält man bei dieser Meßentfernung den Radius des Sensorzy­ linders für den Winkel vkon sowie die resultierende Änderung der Seitenkoordinate b. Da der Radius des Sensorzylinders nunmehr für zwei verschiedene Meßentfernungen a bekannt ist, kann der Radius als eine lineare Funktion Fn(a) des Meßab­ standes a bestimmt werden. Die Ermittlung dieser Funktion erfolgt in dem Schritt COMP Fn(a).
Als nächstes bewegt sich das Eichprogramm TCP in den Punkt F, dessen Position den Mittelwert zwischen den Positionen Pa und Pb der Ecken A und B darstellt. Danach wird PROC NORMAL ausgeführt, wodurch die Sensordrehung derart justiert wird, daß die Sensorabtaststrecke senkrecht zur Kante der Eich­ platte verläuft. Danach wird der Mittelwert der während PROC NORMAL gemessenen Seitenkoordinaten gespeichert (STORE Txx). Danach positioniert das Eichprogramm CTCP → P) TCP im Punkte E .
Der letzte Schritt, COMP, im Eichprogramm besteht in der Be­ stimmung der Konstanten in denjenigen Transformationsmatri­ zen, welche eine Beziehung herstellen zwischen den Meßwerten des Sensors und dem Koordinatensystem x, y, z des Handgelenks des Roboters und folglich mit dem Basis-Koordinatensystem X, Y, Z des Roboters. Während des Betriebs des Roboters kön­ nen daher die Ausgangssignale a, b, c des Sensors mit Hilfe der während der Eichung erhaltenen Resultate unmittelbar derart transformiert werden, daß sie die Position des Meß­ punktes im Basis-Koordinatensystem des Roboters anzeigen.
Die vollständige Transformationsmatrix für die Transforma­ tion der Meßsignale a, b, c des Sensors in das Koordinatensy­ stem x, y, z der Roboterhand erhält man durch Verkettung seiner Reihe von Transformationen entsprechend
D = TO × Dz × Ds × Rx × Ry × T,
wobei TO eine Transformation ist, welche die Meßsignale a und b im Zylinder-Koordinatensystem des Sensors darstellt.
Dz ist eine Transformation aus den Zylinderkoordinaten des Sensors in die karthesischen Koordinaten x′, y′, z′ des Sen­ sors. Diese Transformation ist eine Funktion des Winkels (c - vz), wobei c die Sensorrotation relativ zur Nullstellung beschreibt und vz der während des Eichverfahrens bestimmte Drehwinkel, der für die x′-Achse erforderlich ist zur Abbil­ dung der x′-Achse in der xz-Ebene. Die Transformation Dz ist eine reine Drehung um die z-Achse.
Ds ist eine Transformation, durch welche eine Kompensation für die Konizität im Arbeitsbereich des Sensors, die während des Eichvorganges festgestellt wurde, ausgeführt wird. Fer­ ner wird mit Hilfe dieser Transformation eine Maßstabsan­ passung von x′, y′, z′ an die Skalierung von x, y, z durchge­ führt. Für die Kompensation der Konizität ist diese Transformation eine Funktion von Fn(a), die während der Ei­ chung bestimmt wurde und die ein relatives Maß für den Ra­ dius des Sensorzylinders als Funktion der Höhenkoordinate a ist.
Rx ist eine Transformation, welche die Rotation um die x- Achse berücksichtigt, die erforderlich ist, um die z′-Achse parallel zur xz-Ebene auszurichten.
Ry ist die entsprechende Rotationsmatrix um die y-Achse und gibt die Rotation an, die notwendig ist, um die z′ -Achse parallel zur z-Achse auszurichten.
T ist eine Translationsmatrix, welche die Translation zwi­ schen dem Koordinatensystem x, y, z der Roboterhand und dem Koordinatensystem x′, y′, z′ des Sensors anzeigt.
Während der Ausführung wird D aufgeteilt entsprechend
D = De × Dk
wobei
De = TO × Dz und
Dk = Ds × Rx × Ry × T .
Die Transformationsmatrix Dk wird während der Eichung berech­ net und wird danach unverändert bis zur nächsten Eichung verwendet. Die Transformation De ist abhängig von den sich bei der Programmausführung ändernden Parametern. Die Kompo­ nenten De werden jedesmal bestimmt, wenn die Transformation angewendet wird.
Die Erfindung wurde im Vorausgehenden in Anlehnung an ein Beispiel beschrieben, in welchem ein Industrieroboter für elektrisches Schweißen mit einem Sensor zur Folgesteuerung längs einer Schweißverbindungslinie während des Schweißvor­ ganges eingerichtet ist. Die Erfindung kann selbstverständ­ lich auch für Industrieroboter verwendet werden, die für an­ dere Arbeitsabläufe eingerichtet sind. Ferner wurde die Er­ findung beschrieben unter Bezugnahme auf einen einzigen Sen­ sortyp, nämlich einem Sensor, der um das Werkzeug drehbar angeordnet ist und der die Entfernung zu einem Objekt mit­ tels optischer Triangulation bestimmt. Die Erfindung kann natürlich auch bei Verwendung anderer Sensortypen als den oben beschriebenen verwendet werden.
Fig. 14 zeigt ein Beispiel für die Anwendung der Steuer­ kreise zur Durchführung des Eichvorganges. Der Steuerschrank 15 des Roboters enthält einen Datenkanal (Datenbus) 150, an welchen der Hauptrechner 151, ein Programmspeicher 152 und ein Digital-Analog-Wandler 153 angeschlossen sind. Der Hauptrechner 151 erledigt die notwendigen Berechnungen und logischen Entscheidungen für den Betrieb des Roboters. Der Rechner 151 ist über einen digitalen Übertragungskanal an die Betätigungseinheit 16 angeschlossen und tauscht mit die­ ser Einheit Steuer- und Informationssignale aus. Während der Programmierung des Roboters werden die Koordinaten, darge­ stellt im Roboter-Koordinatensystem, für eine Anzahl von Punkten, welche den vom Roboter zu durchlaufenden gewünsch­ ten Pfad beschreiben im Speicher 152 gespeichert. Aus Grün­ den der Einfachheit sind die Antriebseinheit 154 und der Di­ gital-Analog-Wandler 153 nur für eine einzige Roboterachse dargestellt. Der Digital-Analog-Wandler 153 liefert Steuer­ signale an die Antriebseinheit 154, welche im Prinzip eine Servoanordnung zur Steuerung des Antriebsmotors M für die betreffende Achse ist. An den Motor M ist ein Tachogenerator T angeschlossen, der ein Rückkopplungssignal an die Steuereinheit 154 liefert. Ferner ist an die Welle des be­ treffenden Motors ein Drehwinkelgeber (resolver) R ange­ schlossen, der an die Einheit 153 ein dem Drehwinkel um die Achse entsprechendes Signal liefert. Der Sensor 7 ist über eine Schnittstelle 155 an den Rechner 151 angeschlossen. Der Sensor liefert an den Rechner 151 die Meßsignale a und b, und der Sensor empfängt vom Rechner 151 ein Signal c zur Einstellung des Drehwinkels c des Sensors. Das Eichprogramm, das anhand der Fig. 5 bis 13 beschrieben wurde, ist fest und unverändert in dem Steuersystem gespeichert, beispiels­ weise im Speicher 152. Während der Ausführung des Eichpro­ grammes berechnet der Rechner 151 in der obengenannten Weise die notwendigen Konstanten für jene Transformationen, die zur Beschreibung der Position des Meßpunktes erforder­ lich sind, definiert durch die Signale a, b, c im Roboter-Ko­ ordinatensystem. Während des Eichvorganges liefert der Rech­ ner 151 an die verschiedenen Roboterachsen auch die Steuer­ signale, die notwendig sind, um den Roboter in die verschie­ denen Eichpunkte zu bewegen. Außerdem, in Abhängigkeit des gespeicherten Eichprogramms, ist der Rechner 151 auch betei­ ligt bei der Ausführung der notwendigen Sensordrehungen und der Speicherung der gemessenen Werte.

Claims (12)

1. Verfahren zur Eichung eines an der Hand (5) eines Indu­ strieroboters (1-5, 15, 16) montierten Sensors (21-23), wel­ ches im Stande ist, die Lage eines Objektes (11-13) relativ zum Sensor zu messen, mit einem Steuersystem (15, 16) für den Roboter, welches im Stande ist, während des automatischen Arbeitsablaufes den Roboter längs eines Pfades zu führen, der von dem genannten Sensor erfaßt wird, und wobei der Roboter einen Arbeitspunkt (TCP) hat, dessen Lage (X, Y, Z) im Roboterkoordinatensystem (Basiskoordinatensystem) bekannt ist beziehungsweise feststellbar ist, dadurch gekennzeichnet,
  • a) daß ein Eichgegenstand vorhanden ist, der mindestens eine ebene Fläche mit zwei von einem Eckpunkt (B) ausgehende gerade Kanten (41, 42) aufweist und sich in dem Arbeitsbereich des Roboters befindet oder dorthin gebracht wird,
  • b) daß zur Definierung einer Eichebene der Arbeitspunkt (TCP) des Roboters zu dem genannten Eckpunkt (B) und je einem weiteren Punkt (A, C) auf den genannten beiden geraden Kanten (41, 42) durch manuelle Steuerung geführt wird, wobei für jeden Punkt die Roboterkoordinaten (X, Y, Z) gespeichert werden,
  • c) und daß danach ein Eichprogramm vom Steuersystem automatisch durchgeführt wird, wobei der Sensor zu einer Anzahl von Punkten (D, E, F) auf der Eichebene geführt wird und in jedem der genannten Punkte (D, E, F) eine Anzahl von Messungen der Lage des Eichgegenstandes relativ zum Sensor durchgeführt wird und daß auf der Grundlage dieser Messungen diejenigen Transformationen bestimmt werden, die erforderlich sind, um die vom Sensor beim automatischen Arbeitsablauf gemessenen Werte (a, b, c) in das Roboter-Koordinatensystem zu transformieren.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Eichgegenstand aus einer ebenen rechteckigen Platte besteht und daß die genannten Punkte auf dem Eichgegenstand drei Eckpunkte der Platte sind.
3. Verfahren nach einem der vorhergehenden Ansprüche, wobei der am Industrieroboter montierte Sensor ein Meßglied (23) hat, das um eine Drehachse drehbar angeordnet ist und die Entfernung zwischen dem Sensor und der Oberfläche eines Ge­ genstandes in einer Richtung zu messen vermag, die im we­ sentlichen parallel zur Drehachse verläuft, dadurch gekennzeichnet, daß die Orientierung (Winkel­ lage) der Rotationsachse bestimmt wird durch Messungen der Entfernung zum Eichgegenstand für eine Anzahl von Winkella­ gen des Meßgliedes, das in Abhängigkeit dieser Messungen diejenigen Drehwinkel der Roboterhand bestimmt werden, wel­ che die Rotationsachse in Richtung auf eine solche Lage dre­ hen, daß dabei die Differenz zwischen den gemessenen Abstän­ den kleiner wird, daß die Roboterhand diese Drehbewegungen ausführt, und daß, wenn die Differenzen zwischen den gemes­ senen Abständen kleiner als ein vorgegebener Grenzwert ist, und damit Rotationsachse senkrecht zur Oberfläche des Eich­ gegenstandes steht, die Orientierung (Winkellage) der Robo­ terhand gespeichert wird.
4. Verfahren nach einem der vorhergehenden Ansprüche, wobei der am Industrieroboter montierte Sensor ein Meßglied (23) hat, das um eine Drehachse drehbar angeordnet ist und die Entfernung zwischen dem Sensor und der Oberfläche eines Ge­ genstandes in einer Richtung zu messen vermag, die im we­ sentlichen parallel zur Drehachse verläuft, und wobei das Meßglied im Stande ist, den seitlichen Abstand einer Entfer­ nungsdiskontinuität (41, 42) vom Meßpunkt in einer im wesentlichen senkrecht zum Radius der Drehachse verlaufenden Richtung zu bestimmen, dadurch gekennzeich­ net, daß die Roboterhand so positioniert ist, daß der Schnittpunkt der Drehachse mit der Oberfläche des Eichgegen­ standes nahe der Kante des Eichgegenstandes liegt und daß der seitliche Abstand der Kette dadurch bestimmt wird, daß das Meßglied in zwei Positionen gedreht wird, die im Ver­ hältnis zueinander von 180° versetzt sind.
5. Verfahren nach Anspruch 4, dadurch gekenn­ zeichnet, daß der Abstand zwischen der Kante und dem Schnittpunkt der Rotationsachse mit der Oberfläche des Ge­ genstandes auf der Basis der beiden gemessenen seitlichen Ab­ stände berechnet wird.
6. Verfahren nach Anspruch 5, dadurch gekenn­ zeichnet, daß eine Nullposition für den Drehwinkel des Meßgliedes um die Rotationsachse aus den beiden gemesse­ nen seitlichen Abständen bestimmt wird.
7. Verfahren nach Anspruch 5, dadurch gekenn­ zeichnet, daß die Position in zwei separaten Richtun­ gen vor dem Schnittpunkt der Rotationsachse mit der Oberflä­ che des Eichgegenstandes bestimmt wird durch Einstellung der Roboterhand und durch Bestimmung des seitlichen Abstandes für zwei separate Kanten des Eichgegenstandes.
8. Verfahren nach einem der vorhergehenden Ansprüche, wobei der am Industrieroboter montierte Sensor ein Meßglied (23) hat, das um eine Drehachse drehbar angeordnet ist und die Entfernung zwischen dem Sensor und der Oberfläche eines Ge­ genstandes in einer Richtung zu messen vermag, die im we­ sentlichen parallel zur Drehachse verläuft, und wobei das Meßglied im Stande ist, den seitlichen Abstand einer Entfer­ nungsdiskontinuität (41, 42) vom Meßpunkt in einer im wesent­ lichen senkrecht zum Radius der Drehachse verlaufenden Rich­ tung zu bestimmen, dadurch gekennzeich­ net, daß zur Bestimmung einer Parallelabweichung zwischen der Rotationsachse und der Richtung zwischen dem Meßglied und dem Meßpunkt die Roboterhand so eingestellt wird, daß die Rotationsachse die Oberfläche des Eichgegenstandes nahe einer Kante des Gegenstandes schneidet, daß der seitliche Abstand von der Kante bestimmt wird, daß das Meßglied um einen vorgegebenen Winkel gedreht wird, daß der seitliche Abstand erneut bestimmt wird, daß auf der Grundlage der Än­ derung des seitlichen Abstandes ein Maß für den Radius von der Rotationsachse zum Meßpunkt bestimmt wird und daß an­ schließend der Sensor um eine vorgegebene Strecke relativ zum Gegenstand längs der genannten Rotationsachse bewegt wird und daß Verfahren wiederholt wird.
9. Verfahren nach einem der Ansprüche 2, 3, 4, 5 oder 7, dadurch gekennzeichnet, daß die Roboterhand zunächst in eine erste Position (D) gesteuert wird, in welcher die Rotationsachse die Oberfläche des Eichgegenstandes in einem Abstand von der Kante der genannten Platte schneidet, daß in dieser Position die Rotationsachse derart eingestellt wird, daß sie senkrecht zur Oberfläche der Platte verläuft, daß der Sensor mit beibehaltener Orientierung in eine zweite Position (E) bewegt wird, in welcher die Rotationsachse die Ebene der Platte nahe der ersten Kante (41) der Platte schneidet, daß in dieser Position der seitliche Abstand der Rotationsachse relativ zur Kante bestimmt wird, daß der Sensor mit beibehaltener Orientierung in eine dritte Position (F) bewegt wird, in welcher die Rotationsachse die Ebene der Platte nahe einer zweiten Kante ( 42) der Platte schneidet, welche senkrecht zur ersten Kante verläuft, und daß in dieser Position der seitliche Abstand der Rotationsachse relativ zu der genannten zweiten Kante bestimmt wird.
10. Verfahren nach einem der Ansprüche 8 oder 9, da­ durch gekennzeichnet, daß die Bestimmung der Parallelabweichung in einer der genannten zweiten und dritten Position erfolgt.
11. Verfahren nach einem der Ansprüche 6 oder 9, da­ durch gekennzeichnet, daß eine Nullage für den Drehwinkel des Meßgliedes in der genannten zweiten oder dritten Position bestimmt wird.
12. Anordnung zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 11 mit einem In­ dustrieroboter, an dessen Hand ein Sensor (7, 21-23) montiert ist, welcher im Stande ist, die Lage eines Gegenstandes (11- 13, 40) relativ zum Sensor zu messen, und mit einem Steuersy­ stem (15, 16) für den Roboter, welches im Stande ist, während des automatischen Arbeitsablaufes den Roboter längs eines Pfades zu führen, der durch Punkte definiert ist, die durch Koordinatenwerte im Koordinatensystem (X, Y, Z) des Roboters vorgegeben sind, dadurch gekennzeich­ net, daß der Roboter mit Gliedern (15) zur Eichung des Sensors ausgerüstet ist, welche im Stande sind, den Sensor automatisch in eine Anzahl von Punkten (D-F) zu fahren, die mit einem Eichgegenstand ( 40) verbunden sind, dessen Posi­ tion im Roboter-Koordinatensystem bekannt ist, um in jedem Punkt eine Anzahl von Messungen der Lage des Gegenstandes relativ zum Sensor auszuführen und auf der Grundlage dieser Messungen diejenigen Transformationen zu bestimmen, welche die vom Sensor gemessenen Werte in die Position des Meßpunk­ tes im Roboter-Koordinatensystem transformieren.
DE3731704A 1986-09-29 1987-09-21 Verfahren und Anordnung zur Eichung eines an der Hand eines Industrieroboters montierten Sensors Expired - Fee Related DE3731704C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE8604101A SE464855B (sv) 1986-09-29 1986-09-29 Foerfarande vid en industrirobot foer kalibrering av en sensor

Publications (2)

Publication Number Publication Date
DE3731704A1 DE3731704A1 (de) 1988-03-31
DE3731704C2 true DE3731704C2 (de) 1995-01-05

Family

ID=20365732

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3731704A Expired - Fee Related DE3731704C2 (de) 1986-09-29 1987-09-21 Verfahren und Anordnung zur Eichung eines an der Hand eines Industrieroboters montierten Sensors

Country Status (4)

Country Link
US (1) US4815006A (de)
JP (1) JP2510216B2 (de)
DE (1) DE3731704C2 (de)
SE (1) SE464855B (de)

Families Citing this family (120)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08384B2 (ja) * 1987-09-16 1996-01-10 ファナック株式会社 ツール先端点の自動設定方式
DE3743075A1 (de) * 1987-12-18 1989-06-29 Fichtel & Sachs Ag Torsionsschwingungsdaempfer mit waelzlagerung
JPH0683976B2 (ja) * 1988-03-15 1994-10-26 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン コンプライアンス制御方法
US4969108A (en) * 1988-04-08 1990-11-06 Cincinnati Milacron Inc. Vision seam tracking method and apparatus for a manipulator
US4967370A (en) * 1988-10-21 1990-10-30 Robotic Vision Systems, Inc. Robot and sensor error determination system
DE4000348A1 (de) * 1989-03-06 1990-09-13 Hewlett Packard Co Vorrichtung und verfahren zum ueberwachen der bewegungen eines vielgelenkigen roboters
US5079491A (en) * 1989-05-23 1992-01-07 Honda Giken Kogyo Kabushiki Kaisha Robot control system
JP2694669B2 (ja) * 1989-06-09 1997-12-24 株式会社日立製作所 ロボットの動作制御方法
US5218704A (en) * 1989-10-30 1993-06-08 Texas Instruments Real-time power conservation for portable computers
JPH03196981A (ja) * 1989-12-25 1991-08-28 Fanuc Ltd ロボットの付加軸追従制御方式
DE4015644C2 (de) * 1990-05-15 1994-01-20 Kuka Schweissanlagen & Roboter Verfahren zum Bestimmen relevanter Punkte eines Werkzeugs am Handflansch eines gesteuerten mehrachsigen Manipulators
FR2666265B1 (fr) * 1990-08-30 1995-04-21 Aerospatiale Procede pour controler le positionnement des axes de pivotement de la tete d'usinage orientable d'une machine-outil a commande numerique programmable.
US5392384A (en) * 1991-04-09 1995-02-21 Kabushiki Kaisha Yaskawa Denki Method of calibrating an industrial robot
JP3173042B2 (ja) * 1991-05-21 2001-06-04 ソニー株式会社 ロボットの数値制御装置
DE4117954A1 (de) * 1991-05-31 1992-12-03 Rieter Ag Maschf Servicestation fuer einen bedienungsroboter
JP2764485B2 (ja) * 1991-08-27 1998-06-11 ファナック株式会社 リアルタイムセンサの診断方法
US5297238A (en) * 1991-08-30 1994-03-22 Cimetrix Incorporated Robot end-effector terminal control frame (TCF) calibration method and device
SE501263C2 (sv) * 1991-12-10 1994-12-19 Asea Brown Boveri Förfarande för kalibrering av rörelseaxlar hos en industrirobot
US6788999B2 (en) 1992-01-21 2004-09-07 Sri International, Inc. Surgical system
US6963792B1 (en) 1992-01-21 2005-11-08 Sri International Surgical method
US5515478A (en) * 1992-08-10 1996-05-07 Computer Motion, Inc. Automated endoscope system for optimal positioning
US5762458A (en) 1996-02-20 1998-06-09 Computer Motion, Inc. Method and apparatus for performing minimally invasive cardiac procedures
US5657429A (en) * 1992-08-10 1997-08-12 Computer Motion, Inc. Automated endoscope system optimal positioning
US5524180A (en) * 1992-08-10 1996-06-04 Computer Motion, Inc. Automated endoscope system for optimal positioning
US7074179B2 (en) 1992-08-10 2006-07-11 Intuitive Surgical Inc Method and apparatus for performing minimally invasive cardiac procedures
US5754741A (en) * 1992-08-10 1998-05-19 Computer Motion, Inc. Automated endoscope for optimal positioning
JPH06328385A (ja) * 1993-05-20 1994-11-29 Fanuc Ltd 産業用ロボットの視覚センサの姿勢制御方法
US5724264A (en) * 1993-07-16 1998-03-03 Immersion Human Interface Corp. Method and apparatus for tracking the position and orientation of a stylus and for digitizing a 3-D object
DE4330532C1 (de) * 1993-09-09 1994-09-22 Heidenhain Gmbh Dr Johannes Nullpunkt-Setzverfahren bei Mehr-Koordinaten-Meßmaschinen
US7053752B2 (en) * 1996-08-06 2006-05-30 Intuitive Surgical General purpose distributed operating room control system
US6646541B1 (en) * 1996-06-24 2003-11-11 Computer Motion, Inc. General purpose distributed operating room control system
US6463361B1 (en) 1994-09-22 2002-10-08 Computer Motion, Inc. Speech interface for an automated endoscopic system
US5814038A (en) 1995-06-07 1998-09-29 Sri International Surgical manipulator for a telerobotic system
US5649956A (en) * 1995-06-07 1997-07-22 Sri International System and method for releasably holding a surgical instrument
US6697748B1 (en) * 1995-08-07 2004-02-24 Immersion Corporation Digitizing system and rotary table for determining 3-D geometry of an object
US6714841B1 (en) 1995-09-15 2004-03-30 Computer Motion, Inc. Head cursor control interface for an automated endoscope system for optimal positioning
JP3079186B2 (ja) * 1995-09-28 2000-08-21 株式会社小松製作所 構造物計測システム
JP3436289B2 (ja) * 1995-10-30 2003-08-11 日本電信電話株式会社 シム特徴点位置の検出方法
US5855583A (en) 1996-02-20 1999-01-05 Computer Motion, Inc. Method and apparatus for performing minimally invasive cardiac procedures
US6436107B1 (en) 1996-02-20 2002-08-20 Computer Motion, Inc. Method and apparatus for performing minimally invasive surgical procedures
US6699177B1 (en) 1996-02-20 2004-03-02 Computer Motion, Inc. Method and apparatus for performing minimally invasive surgical procedures
US6374255B1 (en) * 1996-05-21 2002-04-16 Immersion Corporation Haptic authoring
US6911916B1 (en) * 1996-06-24 2005-06-28 The Cleveland Clinic Foundation Method and apparatus for accessing medical data over a network
US6496099B2 (en) * 1996-06-24 2002-12-17 Computer Motion, Inc. General purpose distributed operating room control system
US5740328A (en) * 1996-08-12 1998-04-14 The Regents Of The University Of California Apparatus for robotic positional referencing and calibration
US6024576A (en) * 1996-09-06 2000-02-15 Immersion Corporation Hemispherical, high bandwidth mechanical interface for computer systems
US5729345A (en) * 1996-09-11 1998-03-17 Caterpillar Inc. Apparatus and method for determining distortion of a welded member
US6132441A (en) 1996-11-22 2000-10-17 Computer Motion, Inc. Rigidly-linked articulating wrist with decoupled motion transmission
US6044308A (en) * 1997-06-13 2000-03-28 Huissoon; Jan Paul Method and device for robot tool frame calibration
DE19727094C2 (de) * 1997-06-25 2003-10-16 Fraunhofer Ges Forschung Verfahren zur Abstandsmessung zwischen einem Werkzeugendteil einer Manipulatoreinheit und einer mit dem Werkzeugendteil zu bearbeitenden Objektoberfläche oder eines zu manipulierenden Objektes
US20040236352A1 (en) * 1997-09-22 2004-11-25 Yulun Wang Method and apparatus for performing minimally invasive cardiac procedures
US6256011B1 (en) * 1997-12-03 2001-07-03 Immersion Corporation Multi-function control device with force feedback
US5980472A (en) * 1998-02-20 1999-11-09 Seyl; V. Craig Joint movement monitoring system
US6243621B1 (en) 1998-03-13 2001-06-05 Fanuc Robotics North America, Inc. Method of determining workpiece positions including coordinated motion
US6067077A (en) 1998-04-10 2000-05-23 Immersion Corporation Position sensing for force feedback devices
US8527094B2 (en) 1998-11-20 2013-09-03 Intuitive Surgical Operations, Inc. Multi-user medical robotic system for collaboration or training in minimally invasive surgical procedures
US6659939B2 (en) * 1998-11-20 2003-12-09 Intuitive Surgical, Inc. Cooperative minimally invasive telesurgical system
US6852107B2 (en) 2002-01-16 2005-02-08 Computer Motion, Inc. Minimally invasive surgical training using robotics and tele-collaboration
US6951535B2 (en) * 2002-01-16 2005-10-04 Intuitive Surgical, Inc. Tele-medicine system that transmits an entire state of a subsystem
US6398726B1 (en) 1998-11-20 2002-06-04 Intuitive Surgical, Inc. Stabilizer for robotic beating-heart surgery
DE19902213A1 (de) * 1999-01-21 2000-07-27 Abb Patent Gmbh Anordnung zur Bestimmung der Erfassungscharakteristik eines Passiv-Infrarot-Bewegungsmelders
US6356807B1 (en) 1999-08-13 2002-03-12 Fanuc Robotics North America, Inc. Method of determining contact positions, calibration parameters, and reference frames for robot assemblies
US7217240B2 (en) 1999-10-01 2007-05-15 Intuitive Surgical, Inc. Heart stabilizer
DE19956176A1 (de) * 1999-11-22 2001-10-18 Wittenstein Gmbh & Co Kg Greif- oder Betätigungsarm
US6693626B1 (en) * 1999-12-07 2004-02-17 Immersion Corporation Haptic feedback using a keyboard device
ES2213074T3 (es) * 2000-03-29 2004-08-16 Tms Produktionssysteme Gmbh Calibracion semiautomatica de un brazo de accionamiento de un robot.
US6571148B1 (en) 2000-05-03 2003-05-27 The Boeing Company System for automatically certifying the accuracy of a manufacturing machine and associated methods
US6726699B1 (en) 2000-08-15 2004-04-27 Computer Motion, Inc. Instrument guide
EP2932884B1 (de) 2000-11-28 2020-09-09 Intuitive Surgical Operations, Inc. Endoskopischer Stabilisator für das schlagende Herz und Gefässokklusions-Verschluss
US20020165524A1 (en) * 2001-05-01 2002-11-07 Dan Sanchez Pivot point arm for a robotic system used to perform a surgical procedure
US6728599B2 (en) 2001-09-07 2004-04-27 Computer Motion, Inc. Modularity system for computer assisted surgery
US6839612B2 (en) 2001-12-07 2005-01-04 Institute Surgical, Inc. Microwrist system for surgical procedures
US6793653B2 (en) 2001-12-08 2004-09-21 Computer Motion, Inc. Multifunctional handle for a medical robotic system
US6904823B2 (en) * 2002-04-03 2005-06-14 Immersion Corporation Haptic shifting devices
WO2004036405A2 (en) 2002-10-15 2004-04-29 Immersion Corporation Products and processes for providing force sensations in a user interface
DE10321563A1 (de) * 2003-05-14 2004-12-23 Audi Ag Verfahren zur Auswertung der Bewegung eines analogen Eingabeelements
GB2418475B (en) * 2003-06-09 2007-10-24 Immersion Corp Interactive gaming systems with haptic feedback
SE0400320D0 (sv) * 2004-02-06 2004-02-06 Abb Ab Control method for robots
JP2005271103A (ja) * 2004-03-23 2005-10-06 Tookin:Kk 作業用ロボット及びそのキャリブレーション方法
WO2008018889A2 (en) * 2005-09-29 2008-02-14 The General Hospital Corporation Medical training system for casualty simulation
US20080058990A1 (en) * 2006-08-31 2008-03-06 General Electric Company Robotic programming control using multiple binary input
US8157650B2 (en) 2006-09-13 2012-04-17 Immersion Corporation Systems and methods for casino gaming haptics
BRPI0808506A2 (pt) * 2007-03-07 2014-11-04 Kmt Robotic Solutions Inc Métodos para executar uma operação de fabricação em uma peça de trabalho usando uma montagem robótica, e usando uma montagem de braço robótico.
US9486292B2 (en) 2008-02-14 2016-11-08 Immersion Corporation Systems and methods for real-time winding analysis for knot detection
US8457786B2 (en) * 2008-11-25 2013-06-04 Abb Technology Ltd Method and an apparatus for calibration of an industrial robot system
US8022715B2 (en) * 2009-01-27 2011-09-20 General Electric Company Automated sensor specific calibration through sensor parameter download
KR101030371B1 (ko) * 2009-04-27 2011-04-20 국립암센터 최소 침습 수술을 위한 내시경 조정 장치
KR101030427B1 (ko) * 2009-04-28 2011-04-20 국립암센터 최소 침습 수술을 위한 내시경 조정 장치
US9104791B2 (en) * 2009-05-28 2015-08-11 Immersion Corporation Systems and methods for editing a model of a physical system for a simulation
US8412378B2 (en) * 2009-12-02 2013-04-02 GM Global Technology Operations LLC In-vivo tension calibration in tendon-driven manipulators
WO2011106515A1 (en) * 2010-02-26 2011-09-01 Pala Technologies, L.L.C. Method and apparatus for automated welding
CN103101060B (zh) * 2011-11-11 2015-07-01 鸿富锦精密工业(深圳)有限公司 机器人工具中心点的传感校正方法
US9310482B2 (en) 2012-02-10 2016-04-12 Ascent Ventures, Llc Methods for locating and sensing the position, orientation, and contour of a work object in a robotic system
US9579788B2 (en) 2012-02-10 2017-02-28 Ascent Ventures, Llc Automated testing and verification of a robotic system
DE102012212469B4 (de) * 2012-07-17 2022-10-06 Peter Fornoff Verfahren zum Bedrucken einer Oberfläche und Vorrichtung zum Bedrucken einer Oberfläche
CN102818524A (zh) * 2012-07-31 2012-12-12 华南理工大学 一种基于视觉测量的在线机器人参数校准方法
JP6095361B2 (ja) * 2012-12-26 2017-03-15 株式会社ダイヘン ロボット制御システム
US9866924B2 (en) 2013-03-14 2018-01-09 Immersion Corporation Systems and methods for enhanced television interaction
JP5678979B2 (ja) * 2013-03-15 2015-03-04 株式会社安川電機 ロボットシステム、校正方法及び被加工物の製造方法
CN103223673B (zh) * 2013-05-21 2015-10-28 重庆电子工程职业学院 轮腿式机器人的控制方法
DE102013114060A1 (de) * 2013-12-16 2015-07-02 Endress + Hauser Gmbh + Co. Kg Fertigungseinrichtung und Verfahren zur Ermittlung und/oder Überwachung von Prozessparametern von mit der Fertigungseinrichtung ausgeführten Lötungen
CN107072864B (zh) * 2014-10-27 2019-06-14 直观外科手术操作公司 用于配准到手术台的***及方法
CN107072725B (zh) 2014-10-27 2019-10-01 直观外科手术操作公司 用于集成手术台的***和方法
JP6676060B2 (ja) 2014-10-27 2020-04-08 インテュイティブ サージカル オペレーションズ, インコーポレイテッド 器具外乱補償のためのシステム及び方法
DE102015200319A1 (de) * 2015-01-13 2016-07-14 Kuka Systems Gmbh Einmessverfahren aus Kombination von Vorpositionierung und Handführen
GB2536227A (en) * 2015-03-09 2016-09-14 Stratec Biomedical Ag Pipettor Autoteaching
US10512983B2 (en) * 2015-06-15 2019-12-24 University Of Kentucky Research Foundation Method and apparatus for measurement of three-dimensional welding torch orientation for a welding process without using a magnetometer
US9844872B1 (en) 2015-07-13 2017-12-19 X Development Llc Determining sensor parameters and model parameters of a robot
FR3043004B1 (fr) * 2015-10-29 2017-12-22 Airbus Group Sas Procede d'orientation d'un effecteur portant un outil d'assemblage par rapport a une surface
CN105583825B (zh) * 2016-03-14 2017-06-30 中国计量大学 一种工业机器人轨迹检测装置
CN109737902B (zh) * 2016-07-25 2021-01-26 珞石(北京)科技有限公司 基于坐标测量仪的工业机器人运动学标定方法
CN106903687B (zh) * 2017-01-18 2020-11-06 上海交通大学 基于激光测距的工业机器人校准***与方法
CN107063149A (zh) * 2017-03-09 2017-08-18 珠海格力大金精密模具有限公司 数控电火花加工设备自动检测***及方法
US11072074B2 (en) * 2017-12-13 2021-07-27 Cognex Corporation Calibration and operation of vision-based manipulation systems
CN108555422A (zh) * 2018-03-02 2018-09-21 广州市盘古机器人科技有限公司 多红外传感器三维坐标姿态获取技术
CN108817615B (zh) * 2018-06-25 2021-02-09 昆山华恒焊接股份有限公司 焊缝跟踪方法
US10906184B2 (en) * 2019-03-29 2021-02-02 Mujin, Inc. Method and control system for verifying and updating camera calibration for robot control
CN110480128A (zh) * 2019-08-28 2019-11-22 华南理工大学 一种六自由度焊接机器人线激光实时焊缝跟踪方法
CN111336969A (zh) * 2020-03-27 2020-06-26 伯朗特机器人股份有限公司 工业机器人位姿特性中多方向位姿准确度变动的测量方法
CN114290329B (zh) * 2021-12-13 2023-09-05 库卡机器人制造(上海)有限公司 机器人的校准控制方法及***、存储介质和机器人组件

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH065486B2 (ja) * 1981-03-26 1994-01-19 株式会社安川電機 ロボットの軌跡制御方法
DE3302063C2 (de) * 1983-01-22 1986-06-19 Brüstle, Michael, Dr.-Ing., 7000 Stuttgart Einrichtung zur Kompensation von Lagefehlern an Werkzeug- oder Meßmaschinen sowie an Industrie-Robotern
JPS60252914A (ja) * 1984-05-30 1985-12-13 Fanuc Ltd 視覚センサ座標情報とロボツト基準座標情報の換算方式
JPS6125207A (ja) * 1984-07-12 1986-02-04 Fanuc Ltd ツ−ル座標系の設定方式
JPS6126106A (ja) * 1984-07-16 1986-02-05 Fanuc Ltd 工具位置補正方式
SE441037B (sv) * 1984-08-28 1985-09-02 Johansson Ab C E Sett att oka noggrannheten hos ett lengdmetsystem genom att kalibrera detta mot ett noggrannare referenssystem
JPS61109109A (ja) * 1984-10-31 1986-05-27 Sankyo Seiki Mfg Co Ltd 平面多関節型ロボツトの位置決め方法

Also Published As

Publication number Publication date
DE3731704A1 (de) 1988-03-31
SE8604101L (sv) 1988-03-30
JPS6396504A (ja) 1988-04-27
US4815006A (en) 1989-03-21
SE464855B (sv) 1991-06-24
SE8604101D0 (sv) 1986-09-29
JP2510216B2 (ja) 1996-06-26

Similar Documents

Publication Publication Date Title
DE3731704C2 (de) Verfahren und Anordnung zur Eichung eines an der Hand eines Industrieroboters montierten Sensors
DE102017117837B4 (de) Laserbearbeitungs-Robotersystem und Laserbearbeitungsverfahren
DE3143834C2 (de)
DE112010000794B4 (de) Verfahren zum Steuern eines Roboterwerkzeuges
EP1086407B1 (de) Steuerverfahren für einen industrieroboter
DE69105476T2 (de) Verfahren zum kalibrieren eines optischen sensors.
EP1593930B1 (de) Vorrichtung und Verfahren zur Vermessung von Bauteilen
DE3842254C2 (de) Einrichtung zum Steuern eines Manipulators für eine Blechbearbeitungsmaschine, insbesondere Blechbiegemaschine
DE3732296A1 (de) Industrieroboteranlage
EP1604789A2 (de) Verfahren und Vorrichtung zum Verbessern der Positioniergenauigkeit eines Handhabungsgeräts
DE3144843A1 (de) Verfahren zum betreiben eines als schweissroboter arbeitenden manipulators und dementsprechende steuerung
DE3933596A1 (de) Operationsleuchte mit verstellbarer halterung
DE3241510A1 (de) Verfahren zur steuerung von robotern oder anderen maschinen sowie einrichtung zur pruefung von teilen
EP1702727A2 (de) Fertigungseinrichtung mit einer Biegepresse, einer Handhabungsvorrichtung und einer Kalibriereinrichtung
DE4107707A1 (de) Verfahren und vorrichtung zum kompensieren von lagefehlern
DE102018125841B4 (de) Roboter, Robotersystem und Verfahren zum Festlegen eines Koordinatensystems eines Roboters
DE4108939A1 (de) Verfahren zum kalibrieren von hochgenauen robotern
EP2846943B1 (de) Verfahren zur automatisierten handhabung eines biegewerkzeuges und fertigungseinrichtung
DE3635305C2 (de)
EP1152212B1 (de) Weitgehend selbsttätige Kalibrierung eines Betätigungsarmes eines Roboters
DE4411263A1 (de) Verfahren und Anordnung zur Überprüfung der Führungsgenauigkeit einer Brennschneidmaschine
DE68906669T2 (de) Messsystem fuer eine werkzeugeinstellung in einer werkzeugmaschine.
DE19942980A1 (de) Vorrichtung und Verfahren zum Vermessen von Maschinenwerkzeugen
DE10229293A1 (de) Verfahren zur Bestimmung der relativen Orientierung einer Roboter-Verfahrachse gegenüber einem Roboter-Koordinatensystem
DE19959393B4 (de) Verfahren zum Positionieren eines Werkstückes und Vorrichtung zur Bearbeitungeiner Ausnehmung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: B25J 19/00

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee