-
Technisches Gebiet
-
Die
vorliegende Erfindung betrifft ein Tippvorschubverfahren für einen
Industrieroboter (im Folgenden einfach als "Roboter" bezeichnet) und, genauer gesagt, ein
neues Tippvorschubverfahren unter Verwendung einer Graphikanzeige
eines Roboters in Kombination mit einer Zeigevorrichtung.
-
Technischer Hintergrund
-
Als
Verfahren zum Bewegen eines Roboters mittels manueller Eingabe kennt
man ein Tippvorschubverfahren und ein Durchführungsverfahren. Beim Tippvorschubverfahren
wird in der Regel ein Bauteil zum Festlegen der Bewegungsrichtung
eines Roboters, wie eine Tipptaste oder ein Joystick, auf einer
Lehrkonsole bedient.
-
Der
Tippvorschub liefert ein bequemes Verfahren zum Bewegen eines Roboters
während
eines gewünschten
Zeitraums, indem die Bedienung des Bauteils zum Festlegen der Bewegungsrichtung
fortgesetzt oder ausgesetzt wird. Der herkömmliche Tippvorschub hat jedoch
Beschränkungen
bei der Festlegung der Bewegungsrichtung. D.h. der herkömmliche
Tippvorschub kann die Bewegungsrichtung des Roboters nur entlang
jeder Koordinatenachse eines gewählten
Koordinatensystems (Weltkoordinatensystem, Benutzerkoordinatensystem,
Werkzeugkoordinatensystem usw.) (+X, -X, +Y, -Y, +Z, -Z) oder um
jede von dessen Koordinatenachse herum (+W, -W, +P, -P, +R, -R)
und entlang jeder von zugewiesenen Roboterachsen (+J1, -J1, +J2,
-J2, ...) festlegen.
-
Aufgrund
dieser Beschränkungen
ist eine mühsame
Bedienung notwendig, wie das häufige und
selektive Drücken
verschiedener Tipptasten, damit sich der Roboter nach und nach an
eine gewünschte
Zielposition annähert
und diese erreicht, wenn sich diese Zielposition nicht auf einer
Koordinatenachse befindet. Weil eine Bewegungsrichtung eines Roboters
indirekt festgelegt wird, ist es zudem für den Benutzer schwierig, die
tatsächliche
Bewegungsrichtung intuitiv zu kennen. Dies macht das Verfahren unter
diesen Gesichtspunkt unzweckmäßig.
-
Das
Durchführungsverfahren
verwendet einen Kraftsensor, der an einer Hand eines Roboters befestigt
ist, sowie einen Durchführungsschalter. Übt ein Benutzer
bei diesem Verfahren eine äußere Kraft aus,
so dass sich die Hand in eine gewünschte Richtung bewegt, während der
Durchführungsschalter gedrückt wird,
ermittelt der Kraftsensor die Richtung der ausgeübten äußeren Kraft und überträgt die ermittelte
Richtung an eine Robotersteuerung, so dass sich der Roboter in die
Richtung der äußeren Kraft bewegt.
Das Verfahren hat den Vorteil, dass ein Benutzer die tatsächliche
Bewegungsrichtung leicht erkennen kann, da eine Bewegungsrichtung
des Roboters direkt festgelegt wird.
-
Bei
dem Verfahren tritt aber das signifikante Problem auf, dass der
Benutzer nahe bei der Hand des Roboters stehen muss. Kommt es zu
einer fehlerhaften Bedienung oder einer Fehlfunktion, während der
Benutzer zum Starten des Durchführungsbetriebs
nahe bei einem Roboter steht oder bevor er nach Beendigung der Bedienung
weggegangen ist, bringt dies den nahe bei der Hand des Roboters
stehenden Benutzer in erhebliche Gefahr.
-
Offenbarung der Erfindung
-
Eine
Aufgabe der Erfindung ist die Lösung der
Probleme des obengenannten Standes der Technik und die Bereitstellung
eines Tippvorschubverfahrens, das einen Roboter bei leichter Bedienung
unter Gewährleistung
der Sicherheit des Benutzers in eine gewünschte Richtung bewegen kann.
-
Die
Erfindung hat die oben beschriebenen technischen Probleme durch
Verwendung eines neuen Tippvorschubverfahrens gelöst, das
ein mit einer Robotersteuerung verbundenes Benutzerunterstützungssystem
sowie eine Graphikanzeigevorrichtung und eine Zeigevorrichtung besitzt.
-
Der
erfindungsgemäße Tippvorschub
erfolgt mit einem System, das eine Robotersteuerung verwendet zum
Steuern des Roboterbetriebs, eine mit der Robotersteuerung verbundene
Graphikanzeigevorrichtung zum Anzeigen einer Graphik von dem Roboter,
eine Zeigevorrichtung zum Eingeben zweidimensionaler Positionen
auf einem Anzeigeschirm der Graphikanzeigevorrichtung und einer
Vorrichtung zum Umwandeln einer zweidimensionalen Positionseingabe über die
Zeigevorrichtung in eine dreidimensionale Positionsausgabe, wobei
ebene Positionsdaten verwendet werden.
-
Der
erfindungsgemäße Tippvorschub
erfolgt im Prinzip über
die folgenden Schritte:
- (A) Anzeigen einer
Anfangsgraphik, die eine Ausrichtung des Roboters vor Beginn seiner
Bewegung auf dem Anzeigeschirm der Graphikanzeigevorrichtung darstellt;
- (B) Starten einer zweidimensionalen Positionseingabe für den Tippvorschub
auf dem Anzeigeschirm der Graphikanzeigevorrichtung mit der Zeigevorrichtung;
- (C) nacheinander Umwandeln der zweidimensionalen Positionseingabe
in eine dreidimensionale Positionsausgabe auf Basis ebener Positionsdaten;
- (D) nacheinander Erneuern der Graphik von dem Roboter auf Basis
der dreidimensionalen Positionsausgabe;
- (E) Bewegen des Roboters auf Basis der dreidimensionalen Positionsausgabe
mithilfe der Robotersteuerung;
- (F) Beenden der zweidimensionalen Positionseingabe mit der Zeigevorrichtung
für den
Tippvorschub.
-
Schritt
(C) kann entweder außerhalb
oder innerhalb der Robotersteuerung durchgeführt werden. Im ersten Fall
wird ein Signal, das die dreidimensionale Positionsausgabe wiedergibt,
für die
Verwendung im Schritt (E) an die Robotersteuerung übermittelt.
Im zweiten Fall wird ein Signal, das die dreidimensionale Positionsausgabe
wiedergibt, für
die Verwendung im Schritt (D) an die Graphikanzeigevorrichtung übermittelt.
-
Die
Zeigevorrichtung kann die Form eines Anzeigeschirms der Graphikanzeigevorrichtung
haben, die mit einem Berührungsschirm
oder einer Maus mit einer Mauscursor-Anzeigefunktion ausgestattet
ist.
-
Im
ersten Fall erfolgt die zweidimensionale Positionseingabe durch
manuelles Berühren
des Anzeigeschirms. Die zweidimensionale Positionseingabe im Schritt
(B) wird gestartet durch eine manuelle Berührung einer Graphik von einer
Hand des Roboters, die auf dem Anzeigeschirm der Graphikanzeigevorrichtung
gezeigt ist, und im Schritt (F) beendet durch Beenden der manuellen
Berührung
an einer anderen Position als der, bei der die manuelle Berührung auf
dem Anzeigeschirm gestartet wurde.
-
Im
zweiten Fall erfolgt die zweidimensionale Positionseingabe mit der
Maus. Die zweidimensionale Positionseingabe im Schritt (B) wird
gestartet durch einen ersten Mausklick, wobei sich der Mauscursor
auf einer Graphik von der Hand des Roboters befindet, die auf dem
Anzeigeschirm der Graphikanzeigevorrichtung gezeigt ist, und im
Schritt (F) beendet durch einen zweiten Mausklick an einer anderen Position
als bei dem ersten Mausklick auf dem Anzeigeschirm.
-
Die
zeitliche Steuerung zur Bewegung des Roboters im Schritt (E) kann
auf die vier folgenden Arten durchgeführt werden. Es sind aber auch
andere Arten möglich.
- 1. Schritt (E) erfolgt im Wesentlichen synchron
mit Schritt (C).
- 2. Schritt (E) wird sofort nach Beendigung von Schritt (F) gestartet.
- 3. Schritt (E) wird nach einem vorbestimmten, im System eingestellten
Zeitraum ab dem Zeitpunkt, an dem Schritt (F) beendet ist, gestartet.
- 4. Schritt (E) wird nach einem vorbestimmten, im System eingestellten
Zeitraum ab dem Zeitpunkt, an dem Schritt (B) beendet ist, gestartet.
-
Das
Erzeugen der ebenen Positionsdaten, die zur Umwandlung der zweidimensionalen
Positionseingabe in die dreidimensionale Positionsausgabe verwendet
werden, kann die beiden folgenden Arten erfolgen:
- 1.
Die ebenen Positionsdaten werden erzeugt auf Basis einer Sichtlinie
auf der Graphik von dem Roboter und den letzten dreidimensionalen
Positionsdaten, die der zweidimensionalen Positionseingabe entsprechen.
- 2. Die ebenen Positionsdaten werden erzeugt auf Basis einer
Richtung einer Ebene, die dem System zuvor gelehrt wurde, und den
letzten dreidimensionalen Positionsdaten, die der zweidimensionalen
Positionseingabe entsprechen.
-
Die
Graphikanzeigevorrichtung kann mit einem Sensor ausgestattet sein
zum Ermitteln ihrer dreidimensionalen Ausrichtung, so dass die Sichtlinie der
Graphik von dem Roboter in Übereinstimmung mit
einer von dem Sensor ermittelten Ausrichtung bestimmt wird.
-
Kurze Beschreibung der
Zeichnungen
-
Es
zeigt:
-
1 ein
Blockschema mit den wesentlichen Bestandteilen von einem Beispiel
für ein
System zur Durchführung
des erfindungsgemäßen Verfahrens;
-
2 ein
Diagramm, das schematisch die Gesamtanordnung aus dem in 1 dargestellten System
und dem erfindungsgemäßen Tippvorschub darstellt;
-
3 ein
Diagramm, das schematisch ein Beispiel für einen Graphikanzeigebedienungsabschnitt
mit einer Bewegung der Hand eines Benutzers während der Benutzung eines Berührungsschirms
darstellt;
-
4 ein
Fließschema,
das für
eine Ausführungsform
der Erfindung allgemein das Verfahren zeigt, das auf einer Lehrkonsole
durchgeführt
werden muss;
-
5 ein
Fließschema,
das allgemein die Verarbeitung zeigt, die bei der Ausführungsform
in einer Robotersteuerung durchgeführt werden muss;
-
6 ein
Blockschema mit den wesentlichen Bestandteilen von einem anderen
Beispiel für ein
System zum Durchführen
des erfindungsgemäßen Verfahrens;
und
-
7 ein
Diagramm, das schematisch die Gesamtanordnung aus dem in 6 dargestellten System
und dem erfindungsgemäßen Tippvorschub darstellt.
-
Beste Weise
zur Durchführung
der Erfindung
-
Das
Blockdiagramm in 1 zeigt wesentliche Bestandteile
eines Systems zur Durchführung des
erfindungsgemäßen Verfahrens.
Siehe 1: Die Bezugszahl 10 bezeichnet eine
Robotersteuerung, die das Zentrum des gesamten Systems ist und einer
zentrale Verarbeitungseinheit (im folgenden als "CPU" bezeichnet) 11 umfasst.
Mit der CPU sind über einen
Bus 19 ein als ROM bereitgestellter Speicher 12,
ein als RAM bereitgestellter Speicher 13, ein Permanentspeicher 14,
eine Eingabe-Ausgabe-Vorrichtung 15,
die als Schnittstelle für
andere externe Vorrichtungen als die Lehrkonsole wirkt, eine Lehrkonsolenschnittstelle 16 für eine Lehrkonsole 30 bzw.
ein digitaler Servostromkreis 17 verbunden.
-
Ein
Roboterachsensteuerabschnitt 17 zum Steuern der Bewegung
jeder Achse von dem mechanischen Abschnitt 20 des Roboters über einen
Servostromkreis 18 ist ebenfalls über den Bus 19 mit
der CPU 11 verbunden.
-
Im
ROM 12 ist ein Programm zum Steuern des gesamten Systems,
einschließlich
der Robotersteuerung 10, gespeichert. Der RAM 13 ist
ein Speicher zum zeitweiligen Speichern von Daten, die bei der Verarbeitung
durch die CPU 11 verwendet werden. Im Permanentspeicher 14 sind
Programme und Daten gespeichert, die zur Durchführung des später beschriebenen
erfindungsgemäßen Verfahrens
benötigt
werden, und zudem Bedienungsprogrammdaten für den Roboter und verschiedene
Stellwerte, die mit der Bedienung jedes Systemabschnitt zusammenhängen. Der
Servostromkreis 17 empfängt
einen Bewegungsbefehl von der CPU 11 und steuert über den
Servoverstärker 18 den
Betrieb des Motors für jede
Achse von dem mechanischen Abschnitt 20 des Roboterkörpers.
-
Die
mit der Lehrkonsolenschnittstelle 16 verbundene Lehrkonsole 30 dient
auch als Graphikanzeigevorrichtung zum Anzeigen einer Graphik von dem
Roboter 20. Die Lehrkonsole 30 umfasst eine Anzeige 31,
einen Bedienungsabschnitt 32 mit einer Tastatur usw. und
einen Steuerungsabschnitt 33 mit einer CPU, einem Speicher,
einer Eingabe-Ausgabe-Vorrichtung usw. und ist mit einer Zeigevorrichtung
zum Zuweisen einer spezifischen Position auf der Anzeige 31 durch
einen manuellen Bedienungsschritt ausgestattet. Bei der vorliegenden
Ausführungsform
wird für
die Anzeige 31 ein Berührungsschirm
verwendet, der die Zeigevorrichtung ausmacht, und der Bedienungsabschnitt 32 verfügt über einen
Graphikanzeigebedienungsabschnitt (siehe die später noch beschriebene 3).
Eine Maus 34 kann anstelle des Berührungsschirms oder zusätzlich dazu
verwendet werden. Bei dieser Ausführungsform wird der zweite
Fall (mit Berührungsschirm
und Maus ausgestattet) beschrieben.
-
In
den Speicher des Steuerungsabschnitts 33 werden zuvor Gestaltdaten
eingespeichert, die für die
Graphikanzeige des Roboters benötigt
werden, sowie ein Programm für
die Darstellung mittels CG-Technik, beispielsweise zur Drahtrahmendarstellung
(Software für
Computergraphik). Zum Starten der Graphikanzeige empfängt die
Lehrkonsole 30 Daten über
die gegenwärtige
Ausrichtung des Roboters von der Robotersteuerung 10 und
zeigt somit über
die Verarbeitung mittels CG-Software auf der Anzeige 31 graphisch
die gegenwärtige
Ausrichtung des Roboters an unter den Anzeigebedingungen, die vom
Graphikbedienungsabschnitt festgelegt werden.
-
Nach
Starten der Graphikanzeige wird die Graphik von dem Roboter aktualisiert
auf der Basis zweidimensionaler Daten über die Position einer Hand
des Roboters, die mittels Berührungsschirm oder
Maus festgelegt wird, sowie auf Basis der Daten zum Festlegen einer
Ebene (die später
im Einzelnen beschrieben werden).
-
Die
Robotersteuerung 10 empfängt von der Lehrkonsole 30 hergestellte
dreidimensionale Positionsdaten und steuert dadurch die Bewegung
des Roboters. Später
wird noch die in der Lehrkonsole 30 und in der Robotersteuerung 10 durchgeführte Verarbeitung
beschrieben, die die oben beschriebenen Funktionen unterstützt.
-
2 veranschaulicht
die gesamte Anordnung, die das oben beschriebene System und die
erfindungsgemäße Art des
Tippvorschubs verwendet. 2 zeigt, dass die Robotersteuerung 10 neben dem
Roboter (realen Roboter) 20 angeordnet ist. Die Lehrkonsole 30 ist über ein
Kabel 40 mit der Robotersteuerung 10 verbunden.
Die Lehrkonsole 30 wird deshalb in einem gewissen Abstand
vom Roboter 20 bedient. Wahlweise kann die Maus 34 mit
der Lehrkonsole 30 verbunden werden.
-
Der
Bedienungsabschnitt 32 der Lehrkonsole 30 besitzt
einen allgemeinen Bedienungsabschnitt 321 für eine allgemeine
manuelle Eingabebedienung und einen Graphikanzeigebedienungsabschnitt 322 für eine Bedienung
je nach der Graphikanzeige auf der Anzeige 31. Der allgemeine
Bedienungsabschnitt 321 besitzt eine Unteranzeige 323,
die eine Reihe von Dingen in Zeichen anzeigt. Bei der Anzeige 31 handelt
es sich um eine Flüssigkristallanzeige,
die mit einem bekannten Berührungsschirm
ausgestattet ist. Sie kann vorzugsweise eine Farbanzeige bereitstellen.
-
Die
Zeichnung in 3 veranschaulicht ein Beispiel
für den
Graphikanzeigebedienungsabschnitt 322, wobei auch eine
Bewegung der Hand eines Benutzers bei Verwendung des Berührungsschirms
angedeutet ist (der Schirm ist auf der in 2 gezeigten Anzeige 31 vergrößert dargestellt).
Wie 3 zeigt, ist der Graphikanzeigebedienungsabschnitt 322 mit Bedienungsknöpfen 51 bis 54 ausgestattet.
Mit den Bedienungsknöpfen 51 bis 53 lassen
sich eine Sichtlinie, eine Verkleinerungsskala bzw. ein Sichtpunkt auf
der Graphikanzeige einstellen. Die Knöpfe 51 und 52 beste hen
jeweils aus vier getrennten Berührungsknöpfen. Durch
entsprechendes Berühren
der vier Berührungsknöpfe der
Knöpfe 51 und 53 lassen
sich die Sichtlinie und der Sichtpunkt auf- und abwärts, nach
links und nach rechts einstellen. Der Verkleinerungsskalasteuerungsknopf 52 besteht
aus zwei getrennten Berührungsknöpfen, die
zum Erhöhen
oder Verringern der Anzeigevergrößerung durch
selektives Berühren
von einem der zwei Berührungsknöpfe verwendet
werden können.
Der Knopf 54 ist ein Graphikanzeige-Ein-Aus-Berührungsknopf.
-
Siehe
die 2 und 3: Das Verfahren für den erfindungsgemäßen Tippvorschubbetrieb
und die Wirkungen verschiedener Bestandteile des Systems beim Betrieb
werden im Folgenden erläutert.
- 1. Zuerst wird durch Bedienen des allgemeinen Bedienungsabschnitts 321 der
Tippvorschubmodus (erfindungsgemäße Tippvorschub)
zugewiesen und mit der Zeigevorrichtung in das System eingegeben.
- 2. Auf dieser Stufe wird der Graphikanzeige-Ein-Aus-Knopf 54 gedrückt. Dadurch
wird eine Graphik 20' von
einem Roboter auf der Anzeige 31 angezeigt (Anfangsanzeige).
Auf dieser Stufe erfolgt die Anzeige unter voreingestellten Basisanzeigebedingungen
oder unter den gleichen Anzeigebedingungen wie bei der vorherigen
Anzeige, bevor der Bildschirm abgeschaltet wurde. Die für die anfängliche
Darstellung benötigten
Daten über
die Ausrichtung des Roboters werden von der Robotersteuerung 10 geliefert.
- 3. Durch Bedienen des allgemeinen Bedienungsabschnitts 321 wird
zudem ein Berührungsschirm oder
eine Maus als Zeigevorrichtung festgelegt. Die Zuweisung wird in
das System eingegeben (es wird selektiv ein Berührungsschirmmodus oder ein
Mausmodus festgelegt). Ist der Modus festgelegt, wird auf dem Bildschirm
eine Handmarkierung 21' angezeigt
und hervorgehoben, welche die Hand des Roboters darstellt. Bevorzugt
wird die Gestalt der Markierung 21', die die darzustellende Hand des
Roboters anzeigt, unterschiedlich dargestellt je nachdem, ob ein
Berührungsschirmmodus
oder ein Mausmodus zugewiesen wurde.
- 4. Zur Gewinnung dreidimensionaler Positionsdaten (im Folgenden
als "dreidimensionale
Positionsdaten" bezeichnet)
auf Basis der Ausgabe der Zeigevorrichtung wird ein Arbeitsschritt
durchgeführt,
bei dem durch Bedienung des allgemeinen Bedienungsabschnitts 321 eine
Ebene festgelegt wird. Der Arbeitsschritt zum Festlegen einer Ebene
erfolgt auf eine der folgenden Weisen.
(a) Automatischer Festlegungsmodus:
Dabei wird automatisch eine Ebene festgelegt, die durch die letzte
von der Zeigevorrichtung angegebene Position der Hand des Roboters
geht (gewöhnlich
die Position eines TCP) und parallel zur Gra phikanzeigeebene verläuft. Die
Richtung der Ebene kann durch Verändern der Sichtlinie in der
Graphikanzeige verändert
werden (das Verfahren zum Modifizieren der Sichtlinie wird später beschrieben).
(b)
Spezifischer Ebenenfestlegungsmodus: Dabei wird ein Parameter zum
positiven Festlegen von einer Richtung einer Ebene unabhängig festgelegt.
Genauer gesagt, dient dieser Modus dazu, die Codenummer eines gewünschten
Bezugskoordinatensystems (zum Beispiel eines Arbeitskoordinatensystems)
festzulegen und Komponentenwerte für einen Normalvektor einzugeben,
der eine Richtung einer Ebene wiedergibt. Werden Werte (1, 0, 0)
als Komponentenwerte für einen
Normalvektor eingegeben, wird beispielsweise eine Ebene festgelegt,
die parallel zu einer YZ-Ebene
des zugewiesenen Koordinatensystem verläuft und durch die letzte, von
der Zeigevorrichtung angegebene Position für die Hand des Roboters geht.
- 5. Ein gewünschter
Tippvorschub wird unter Verwendung der Zeigevorrichtung auf die
unten beschriebene Weise (a) oder (b) manuell eingegeben.
(a)
Wird der Berührungsschirmmodus
gewählt (keine
Maus verwendet), wird die Markierung 21', welche die Hand des Roboters
auf der Graphik 20' von
dem Roboter 20 angibt, mit der Hand H1 berührt (Beginn
der Eingabe zweidimensionaler Positionsdaten durch manuelle Berührung).
Auf der Lehrkonsole 30 startet auf Basis zweidimensionaler
Daten über
die berührte
Position und Daten über
die Position auf der Ebene eine aufeinanderfolgende Berechnung zur
Bestimmung einer dreidimensionalen Position von der Hand des Roboters,
die deren virtueller Position auf dem Anzeigeschirm entspricht.
Das Ergebnis der Berechnung wird an die Robotersteuerung 10 gesendet.
-
Dann
wird die Hand (Fingerspitze), die weiterhin das Bild auf dem Schirm
berührt,
von einer Position H1 zu einer Position H2 bewegt, wie der Pfeil
A zeigt. Dann wird sie von dem Bild auf dem Schirm genommen, so
dass die zweidimensionale Positionseingabe beendet wird. Bei diesem
Verfahren werden Daten, die eine Stellung eines durch die Fingerspitze
berührten
Punktes von H1 nach H2 auf dem Anzeigeschirm wiedergeben (zweidimensionale
Daten) nach und nach auf Basis der zweidimensionalen Positionsdaten
in dreidimensionale Positionsdaten umgewandelt und an die Robotersteuerung 10 gesendet.
Auf der Grundlage dieser Daten bestimmt die Robotersteuerung 10 nach
und nach Zielpositionen, an die sich der Roboter bewegen soll, und
erstellt einen entsprechenden Bewegungsbefehl.
-
An
dieser Stelle wird kurz erläutert,
wie dreidimensionale Positionsdaten auf Basis der zweidimensionalen
Positionsdaten erhalten werden, die die durch den Ebenenfestlegungsmodus
zugewiesene Position auf der Ebene darstellen.
-
Im
allgemeinen reicht es zur Festlegung einer Position auf einer Ebene
aus, wenn man (1) eine Richtung einer Ebene und (2) einen Punkt
festlegt, durch den die Ebene geht. Beim oben beschriebenen automatischen
Festlegungsmodus wird (1) die Richtung einer Ebene durch die Sichtlinie
einer Graphikanzeige bestimmt und (2) ein Punkt, durch den die Ebene
geht, festegelegt durch die letzte Position der Hand des Roboters,
die durch die Zeigevorrichtung angegeben wird (gewöhnlich die
Position des TCP).
-
Über Daten
zur Sichtlinie verfügt
die Lehrkonsole 30. Daten über die letzte Position der
Hand des Roboters, die von der Zeigevorrichtung angegeben wird,
können
als Ergebnis der Berechnung erhalten werden, die zuvor von der Lehrkonsole 30 durchgeführt wurde.
Die Anfangsdaten über
die reale Robotermaschine werden aber von der Robotersteuerung 10 geliefert
(siehe Übertragung
und Empfangen von Anfangsanzeigedaten in den Verarbeitungsschritten
1 und 2, die später
beschrieben werden).
-
Beim
spezifischen Ebenenfestlegungsmodus (1) legt ein positiv festgelegter
Parameter (Normalvektordaten) die Richtung einer Ebene fest und (2)
definiert die letzte Position der Hand des Roboters, die von der
Zeigevorrichtung angezeigt wird, einen Punkt, durch den die Ebene
geht, wie im Fall des automatischen Festlegungsmodus.
-
So
können
bei jeder Art der Ebenenfestlegung die ebenen Positionsdaten erhalten
werden auf Basis der Daten, die die Richtung einer Ebene festlegen
(die auf Basis der Sichtlinie berechnet oder positiv festgelegt
werden), und der dreidimensionalen Positionsdaten, die durch die
letzte Berechnung erhalten werden. Nach dem Erhalt der ebenen Positionsdaten
kann eine zu diesem Zeitpunkt mit der Zeigevorrichtung angezeigte
dreidimensionale Position erhalten werden als eine Position, an
der sich die Ebene und eine Gerade schneiden, die der Sichtlinie entspricht,
die durch den gegenwärtig
von der Zeigevorrichtung angezeigten Punkt geht.
-
Mit
dem oben beschriebenen Tippvorschubbetrieb bewegt sich und stoppt
das Vorderende von dem Roboterbild 20' auf dem Anzeigeschirm, wie durch
den Pfeil A' angedeutet.
Zudem bewegt sich und stoppt die Hand des Roboters (realen Roboters) 20,
wie durch einen Pfeil A angegeben. Die Position, an der der reale
Roboter stoppt, entspricht der Position auf dem Roboterbild, an
der ein Benutzer seine oder ihre Hand vom Berührungsschirm nimmt.
- (b) Wird der Mausmodus gewählt (kein Berührungsschirm
verwendet), wird ein Cursor (nicht gezeigt) einer Maus 34 auf
die Markierung 21' der Hand
des Roboters auf der Graphik 20' von dem Roboter 20 platziert.
Dann wird auf die Maus ge klickt (Beginn der Eingabe zweidimensionaler
Positionsdaten durch Klicken der Maus). Dadurch werden zweidimensionale
Daten über
die berührte
Position an die Robotersteuerung 10 gesendet.
-
Nach
Bewegen der Maus 34 in die durch einen Pfeil A angegebene
Richtung wird erneut auf die Maus geklickt (Ende der Eingabe zweidimensionaler Positionen).
Inzwischen werden nach und nach Daten, die einer Stellung des Mauscursors
auf dem Anzeigeschirm entsprechen, (zweidimensionale Daten) unter
Verwendung der Ebenenfestlegungsdaten in dreidimensionale Positionsdaten
umgewandelt und an die Robotersteuerung 10 gesendet. Auf
Basis dieser Daten bestimmt die Robotersteuerung 10 nach und
nach eine Zielposition für
den Roboter und erstellt einen Bewegungsbefehl.
-
Weil
die Gewinnung dreidimensionaler Positionsdaten auf der Seite der
Lehrkonsole 30 genauso erfolgt wie bei Wahl des Berührungsschirmmodus, wird
zur Vermeidung von Wiederholungen ihre Beschreibung ausgelassen.
Die Position, an der der Roboter (reale Roboter) 20 stoppt,
entspricht der Position auf dem Anzeigeschirm, an der sich der Mauscursor
befindet, wenn zum Beenden des Tippens auf die Maus 34 geklickt
wird (zum Beispiel bei einem zweiten Mausklick).
-
Auf
der Basis der oben beschriebenen Anordnung und Funktion wird anhand
der Fließschemata
in den 4 und 5 die Verarbeitung beschrieben,
die in der Robotersteuerung 10 und in der Lehrkonsole 20 durchgeführt werden
muss.
-
Verarbeitung
auf der Seite der Lehrkonsole (Verfahren 1; 4)
- (D1) Wird zum Ausgeben eines Anzeige-EIN-Befehls
der Knopf 54 gedrückt
(Einschalten), geht die Verarbeitung zu Schritt D2 über.
- (D2) Das Graphikanzeige-EIN-Signal wird an die Robotersteuerung 10 gesendet.
- (D3) Nach Empfang von Anfangsanzeigedaten für die Graphikanzeige der gegenwärtigen Ausrichtung
des Roboters von der Robotersteuerung 10 geht die Verarbeitung
zu Schritt D4 über.
Die Anfangsanzeigedaten umfassen Parameter hinsichtlich der Struktur
des Roboters und Daten über
die gegenwärtige
Roboterausrichtung, die für
die Graphikanzeige des Roboters benötigt werden. (Beide können zusammen
beschrieben werden, beispielsweise unter Verwendung von D-H-Parametern).
- (D4) Ein Roboterbild 20' (Anfangsbild)
wird zusammen mit der Vorderendemarkierung 21' als Graphik
angezeigt, wobei die von der Robotersteuerung 10 gesendeten
Anfangsanzeigedaten verwendet werden.
- (D5) Es muss auf eine manuelle Eingabe durch Bedienen des Graphikanzeigeabschnitts 322 oder
unter Verwendung der Zeigevorrichtung (Berührungsschirm oder Maus) gewartet
werden. Die manuelle Eingabe umfasst die drei folgenden Typen. Erfolgt
eine manuelle Eingabe, geht die Verarbeitung zu Schritt D6 über.
(a)
Eingabe im Hinblick auf Anzeigebedingungen: muss durch Drücken von
einem der Knöpfe 51, 52 und 53 ausgegeben
werden.
(b) Eingabe, die den Befehl zum Beenden des Tippbetriebs
gibt: muss durch Stoppen einer Berührung auf dem Anzeigeschirm
oder durch Klicken zum Beenden des Tippvorgangs (zweites Klicken)
oder durch Drücken
(Ausschalten) von Knopf 54 ausgegeben werden.
(c)
Eingabe mittels Zeigevorrichtung: muss durch Berühren der Vorderendemarkierung 21' mit der Hand
(Fingerspitze) eines Benutzers (im Berührungsschirmmodus) oder durch
Klicken mit der Maus 34 an der Position der Vorderendemarkierung 21' (erstes Klicken)
erfolgen.
- (D6) Betrifft die manuelle Eingabe Anzeigebedingungen, geht
die Verarbeitung zu Schritt D7 über. Falls
nicht, wird zu Schritt D8 übergegangen.
- (D7) Die Anzeigebedingungen werden aktualisiert je nachdem,
welcher der Knöpfe 51 bis 53 gedrückt wird.
Die aktualisierte Graphik wird angezeigt. Von den Anzeigebedingungen
wird die Sichtlinie mit Knopf 51 geregelt, die Verkleinerungsskala
durch Knopf 52 und die Position des Sichtpunktes mit Knopf 53.
Software zur Steuerung solcher Anzeigebedingungen kennt man als übliche CG-Verfahren.
Deshalb erfolgt keine ausführliche
Erläuterung
davon.
- (D8) Besteht die manuelle Eingabe in einem Befehl zum Beenden
des Tippvorschubs (Beenden der Berührung, Klickbefehl zum Beenden
des Tippvorschubs oder Befehl zum Ausschalten der Graphikanzeige),
wird die Verarbeitung beendet. Wenn nicht, geht sie zu Schritt D9 über.
- (D9) Die Verarbeitung erfolgt je nach der Eingabe mithilfe der
Zeigevorrichtung.
(a) Im Berührungsschirmmodus: Zweidimensionale
Daten, die einer berührten
Position entsprechen, werden in aktualisierte dreidimensionale Positionsdaten
umgewandelt, wobei die Ebenenfestlegungsdaten und durch die letzte
Berechnung erhaltene dreidimensionale Positionsdaten verwendet werden.
(b)
Im Mausmodus: Zweidimensionale Daten, die einer Mausposition entsprechen,
werden in aktualisierte dreidimensionale Positionsdaten umgewandelt,
wobei die mit der letzten Berechnung erhaltenen dreidimensionalen
Positionsdaten verwendet werden.
Für beide Fälle (a) und (b) wurde bereits
beschrieben, wie eine Ebene festgelegt wird. Deshalb wird an dieser
Stelle ihre Erläuterung
ausgelassen.
- (D10) Die Lehrkonsole zeigt eine Graphik von einem Roboterbild 20' zusammen mit
einer Vorderendemarkierung 21' unter Verwendung der dreidimensionalen
Positionsdaten, die die in Schritt (D9) erhaltene Position der Hand
des Roboters wiedergeben. Zur Berechnung einer Roboterausrichtung,
die den aktualisierten dreidimensionalen Positionsdaten entspricht,
die die in Schritt (D9) berechnete Position der Hand des Roboters
wiedergeben, (zur Aktualisierung der Graphikanzeige benötigt) reicht
es, wenn eine umgekehrte Transformationsverarbeitung auf der Seite
der Lehrkonsole 30 durchgeführt wird.
Ersatzweise
kann die Roboterausrichtung auch erhalten werden, indem man die
aktualisierten dreidimensionalen Positionsdaten, die die in Schritt
(D9) berechnete Position der Hand des Roboters wiedergeben, an die
Robotersteuerung 10 sendet, so dass eine umgekehrte Transformation
auf der Seite der Robotersteuerung 10 durchgeführt wird.
Das Ergebnis der umgekehrten Transformation wird an die Lehrkonsole 30 zurückgesendet.
In diesem Fall kann das Ergebnis der umgekehrten Transformation
zur Erstellung eines Bewegungsbefehls an den realen Roboter 20 verwendet
werden.
- (D11) Die dreidimensionalen Positionsdaten, die die in Schritt
(D9) erhaltene Position der Hand des Roboters wiedergeben, werden
an die Robotersteuerung ausgegeben. Die Verarbeitung kehrt zu Schritt
D5 zurück.
-
Verarbeitung
auf der Seite der Robotersteuerung (Verfahren 2; 5)
- (S1) Nach Empfangen des Graphikanzeige-EIN-Signals
von der Lehrkonsole 30 geht die Verarbeitung zu Schritt
S2 über.
- (S2) Die Anfangsanzeigedaten für die Graphikanzeige der gegenwärtigen Ausrichtung
des Roboters werden an die Lehrkonsole 30 gesendet.
- (S3) Nach Empfangen eines Signals von der Lehrkonsole 30 geht
die Verarbeitung zu Schritt S4 über.
- (S4) Nach Empfangen des Signals, das ein Ende des Tippvorschubs
anzeigt, stoppt die Robotersteuerung des Roboter, oder die Verarbeitung wird
beendet, während
der Roboter gestoppt ist. Das Signal zum Beenden des Tippvorschubs
wird empfangen, wird eine Berührung
auf dem Anzeigeschirm beendet, wird ein Klickbefehl zum Beenden
des Tippbetriebs (zweites Klicken) ausgegeben oder wird auf der
Lehrkonsole 30 der Knopf 54 gedrückt (ausgeschaltet).
- (S5) Hier wird vorausgesetzt, dass neben dem Signal, das dem
Beenden des Tippbetriebs entspricht, ein Signal, das einer berührten Position/Mauscursor-Position
entspricht, in Form dreidimensionaler Positionsdaten, die an der
Lehrkonsole 30 berechnet werden müssen, als die von der Lehrkonsole 30 zu
sendenden Signale verfügbar
ist. Unter Verwendung der dreidimensionalen Positionsdatenwerden
werden eine Zielposition für
den Roboter (für
das Vorderende 21) und ein Bewegungsbefehl ausgegeben,
die an den Servomotor weitergeleitet werden müssen.
-
Bei
der oben beschriebenen Ausführungsform
bewegt sich der reale Roboter synchron zu der Bewegung der berührten Position
auf dem Berührungsschirm
oder der Bewegung der Mauscursor-Position. Ersatzweise kann der
reale Roboter aber auch im folgenden Modus (1) oder (2) bewegt werden.
- (1) Ein Modus, bei dem der Roboter sich unmittelbar
nach Beendigung der Eingabe von Positionen zu bewegen beginnt (d.h.
nach Beenden der Berührung
oder nach einem Klickbefehl zum Beenden des Tippvorschubs).
Beispielsweise
kann der Betrieb in diesem Modus derart durchgeführt werden, dass die gesamten oder
ein Teil der Daten über
eine Stellung der berührten
Position oder der Mauscursor-Position, die in dreidimensionale Positionsdaten
umgewandelt wurden (es soll darauf hingewiesen werden, dass Daten über einen
Endpunkt unerlässlich sind),
an die Robotersteuerung gesendet werden, so dass der Roboter bewegt
wird, nachdem die Berührung
aufgehört
hat oder ein Klickbefehl zum Beenden des Tippvorschubs eingegeben
wird. Ersatzweise kann die Zeitgebung für die Bewegung des Roboters
auf der Seite der synchronisierten Robotersteuerung erfolgen, vorausgesetzt
die Daten werden so bald wie möglich
zur Seite der Robotersteuerung geschickt.
- (2) Ein Modus, bei dem der Roboter sich zu bewegen beginnt,
wenn eine positiv festgelegte Zeitspanne (beispielsweise eine Sekunde)
nach dem Starten oder Beenden der Eingabe von Positionen verstrichen
ist. Zur Durchführung
des Schrittes in diesem Modus recht es beispielsweise aus, wenn
die in dreidimensionale Positionsdaten umgewandelten Daten an die
Robotersteuerung mit einer Verzögerung
gesendet werden, die der obengenannten, positiv festgelegten Zeitspanne entspricht.
Auch in diesem Modus kann die Zeitgebung zur Bewegung des Roboters
auf der Seite der synchronisierten Robotersteuerung bestimmt werden,
vorausgesetzt die Daten werden so bald wie möglich an die Robotersteuerung
geschickt.
-
Selbstverständlich kann
die Umwandlung von zweidimensionaler Positionseingabe in dreidimensionale
Positionsdaten nicht auf der Seite der Lehrkonsole, sondern auf
der Seite der Robotersteuerung durchgeführt werden. In diesem Fall
werden zweidimensionale Positionsdaten von der Lehrkonsole an die
Robotersteuerung gesendet, und auf der Seite der Robotersteuerung
erstellte dreidimensionale Positionsdaten werden zur Aktualisierung
der Graphik an die Seite der Lehrkonsole gesendet.
-
Als
modifiziertes Beispiel der oben beschriebenen Ausführungsform
wird schließlich
eine Ausführungsform
beschrieben, bei der zur Bestimmung der Sichtlinie einer Graphikanzeige
von dem Roboter ein Sensor verwendet wird, der eine dreidimensionale
Ausrichtung ermitteln kann. Diese modifizierte Ausführungsform
ist dadurch gekennzeichnet, dass ein Sensor, der eine dreidimensionale
Ausrichtung ermitteln kann, wie ein Kreiselsensor, auf einer Lehrkonsole
bereitgestellt wird, die zudem als Graphikanzeigevorrichtung fungiert,
so dass die Sichtlinie einer Graphikanzeige auf Basis der mit diesem
Sensor ermittelten Ausrichtung bestimmt werden kann. Diese Ausführungsform
wird insbesondere im Hinblick auf die Unterschiede zu der anderen
Ausführungsform erläutert.
-
Das
Blockschema in 6 zeigt die grundlegenden Bestandteile
der Struktur, die bei der modifizierten Ausführungsform verwendet wird.
Siehe 6: Das System entspricht im Wesentlichen demjenigen
der 1, ausgenommen dass ein Sensor, der eine dreidimensionale
Ausrichtung ermitteln kann, wie ein Kreiselsensor, in einer Lehrkonsole 30 bereitgestellt
wird, die mit einer Lehrkonsolenschnittstelle 16 verbunden
ist.
-
Genauer
gesagt, umfasst die Lehrkonsole 30 eine Anzeige 31,
einen Bedienungsabschnitt 32 mit einer Tastatur usw., einen
Steuerungsabschnitt 33 mit einer CPU, einem Speicher, einer
Eingabe-Ausgabe-Vorrichtung usw. sowie einen Sensor 35 zum Ermitteln
der dreidimensionalen Ausrichtung, wie einen Kreiselsensor. Sie
ist zudem mit einer Zeigevorrichtung zum Festlegen einer spezifischen
Position auf der Anzeige 31 mittels manueller Bedienung
ausgestattet.
-
Wie
bei der davor beschriebenen Ausführungsform
wird für
die Anzeige 31 ein Berührungsschirm
verwendet, der die Zeigevorrichtung ausmacht. Der Bedienungsabschnitt 32 verfügt über einen
Graphikanzeigebedienungsabschnitt 322. Eine Maus 34 kann
wie bei der davor beschriebenen Ausführungsform anstelle des Berührungsschirms
oder zusätzlich
dazu verwendet werden.
-
Der
Sensor 35 zum Ermitteln der dreidimensionalen Ausrichtung
ermittelt eine dreidimensionale Ausrichtung auf der Lehrkonsole 30.
Deren Ausgabe wird an den Steuerungsabschnitt 33 gesendet
und zur Bestimmung der Sichtlinie in einer Graphikanzeige verwendet.
In der Regel wird eine Richtung vertikal zur Anzeigeebene der Anzeige 31 als
Ausrichtungsrichtung betrachtet.
-
Im
Speicher des Steuerungsabschnitts 33 werden zuvor Gestaltdaten
gespeichert, die zur Graphikanzeige von dem Roboter benötigt werden,
sowie ein Programm zur Wiedergabe mittels CG-Technik, beispielsweise
Drahtrahmenwiedergabe (Software für Computergraphik). Beim Starten
der Graphikanzeige empfängt
die Lehrkonsole 30 Daten über die gegenwärtige Ausrichtung
des Roboters von der Robotersteuerung 10 und zeigt mittels
Verarbeitung durch die CG-Software unter den vom Graphikbedienungsabschnitt
zugewiesenen Anzeigebedingungen und den vom Sensor 35 zur
Ermittlung der dreidimensionalen Ausrichtung ermittelten Ausrichtungsbedingungen
die gegenwärtige
Ausrichtung des Roboters als Graphik auf der Anzeige 31 an.
-
Nach
dem Starten der Graphikanzeige wird die Graphik von dem Roboter
aktualisiert auf Basis von zweidimensionalen Daten über die
Position einer Hand des Roboters, die über den Berührungsschirm oder die Maus
festgelegt werden, und von Daten zum Festlegen einer Ebene. Die
Daten zum Festlegen einer Ebene umfassen hier Daten über die
Ausrichtung, die vom Sensor 35 zum Ermitteln der dreidimensionalen
Ausrichtung ermittelt werden.
-
Die
Zeichnung in 7 soll die Gesamtanordnung aus
dem in 6 gezeigten System veranschaulichen und den erfindungsgemäßen Tippvorschub
erläutern.
Diese Anordnung entspricht im Wesentlichen dem System der 2,
ausgenommen dass ein Sensor, der eine dreidimensionale Ausrichtung
ermitteln kann, wie ein Kreiselsensor, in der Lehrkonsole 30 bereitgestellt
wird, die auch als Graphikanzeigevorrichtung fungiert.
-
Siehe 7:
Die Robotersteuerung 10 ist neben dem Roboter (realen Roboter) 20 angeordnet. Die
Lehrkonsole 30 ist mit der Robotersteuerung über ein
Kabel 40 verbunden. Die Lehrkonsole 30 wird daher
aus einer gewissen Entfernung vom Roboter 20 betrieben.
Wahlweise kann die Maus 34 mit der Lehrkonsole 30 verbunden
werden.
-
Der
Bedienungsabschnitt 32 der Lehrkonsole 30 umfasst
einen Sensor 35 zum Ermitteln einer dreidimensionalen Ausrichtung,
wie einen Kreiselsensor, zusätzlich
zu einem allgemeinen Bedienungsabschnitt 321 für die allgemeine
manuelle Eingabebedienung und einen Graphikanzeigebedienungsabschnitt 322 für die Bedienung
einer Graphikanzeige auf der Anzeige 31. Der allgemeine
Bedienungsabschnitt 321 besitzt eine Unteranzeige 323, die
eine Reihe von Parametern in Zeichen anzeigt.
-
Die
Anzeige 31 ist eine Flüssigkristallanzeige,
die mit einem bekannten Berührungsschirm
ausgestattet ist, und kann vorzugsweise eine Farbanzeige liefern.
-
Struktur
und Funktion des Graphikanzeigebedienungsabschnitts 322 sind ähnlich wie
anhand von 3 beschrieben, ausgenommen dass
der Bedienungsknopf 51 zum Steuern der Sichtlinie auf der Graphikanzeige
weggelassen (oder funktionsunfähig)
gemacht wurde, weil ein Sensor 35 zum Ermitteln der dreidimensionalen
Ausrichtung verwendet wird. Daher wird seine Beschreibung zur Vermeidung von
Wiederholungen weggelassen.
-
Das
Verfahren für
den Tippvorschubbetrieb bei dieser Ausführungsform und die durch den
Betrieb hervorgerufene Wirkungsweise jedes Bauteils im System sind
im Folgenden beschrieben. Außer der
Festlegung der Sichtlinie erfolgen sie ähnlich wie bei der zuvor beschriebenen
Ausführungsform.
- 1. Durch Inbetriebnahme des allgemeinen Bedienungsabschnitts 321 wird
ein Tippvorschubmodus unter Verwendung einer Zeigevorrichtung zugewiesen
und die Zuweisung in das System eingegeben.
- 2. Auf dieser Stufe wird ein Graphikanzeige-Ein-Aus-Knopf gedrückt. Dadurch
wird eine Graphik 20' von
einem Roboter auf der Anzeige 31 dargestellt (Anfangsdarstellung).
In diesem Fall erfolgt die Anzeige unter voreingestellten Basisanzeigebedingungen,
wie sie beim letzten Ausschalten der Anzeige definiert wurden. Für die Anfangsdarstellung
benötigte
Daten über
eine Ausrichtung des Roboters stammen von der Robotersteuerung 10.
- 3. Zudem wird durch Inbetriebnahme des allgemeinen Bedienungsabschnitts 321 ein
Berührungsschirm
oder eine Maus als Zeigevorrichtung festgelegt. Die Festlegung wird
in das System eingeben (Wahl von Berührungsschirmmodus oder Mausmodus).
Nach der Festlegung wird auf dem Anzeigeschirm eine Vorderendemarkierung 21' angezeigt und
hinterlegt, die eine Hand des Roboters markiert. Bevorzugt unterscheidet
sich die Anzeige einer Handmarkierung 21' von dem Roboter in ihrer Form
je nachdem, ob ein Berührungsschirmmodus
oder ein Mausmodus zugewiesen wurde.
- 4. Zur Gewinnung von Daten, die eine dreidimensionale Position
wiedergeben, auf Basis der Ausgabe der Zeigevorrichtung wird durch
den allgemeinen Bedienungsabschnitt 321 eine Ebene festgelegt.
Bei
dieser modifizierten Ausführungsform
kann eine Ebene auf eine der folgenden Weisen (a) und (b) festgelegt
werden.
(a) Automatischer Festlegungsmodus: Dabei wird automatisch
eine Ebene festgelegt, die durch die letzte von der Zeigevorrichtung
angegebene Position von der Hand des Roboters geht (gewöhnlich die
Position eines TCP) und parallel zur Ebene der Graphikanzeige verläuft. Eine
zur Anzeigeebene parallele Ebene kann auf Basis der Ausgabe des
Sensors 35 zum Ermitteln der dreidimensionalen Ausrichtung
im Bedienungsabschnitt 33 intern erhalten werden.
Daher
kann ein Benutzer die Richtung der Ebene verändern, indem er eine Halteausrichtung
der Lehrkonsole 30 modifiziert (die Modifikation der Sichtlinie
wird später
beschrieben).
(b) Spezifischer Ebenenfestlegungsmodus: Dabei wird
ein Parameter zum positiven Festlegen einer Richtung einer Ebene
festgelegt. Genauer gesagt, wird eine Codenummer für ein gewünschtes Bezugskoordinatensystem
(zum Beispiel ein Arbeitskoordinatensystem) festgelegt und Komponentenwerte
für einen
Normalvektor eingegeben, der eine Richtung einer Ebene wiedergibt.
Werden beispielsweise Werte (1, 0, 0) als Komponentenwerte von einem
Normalvektor eingegeben, wird eine Ebene festgelegt, die parallel
zu einer YZ-Ebene des festgelegten Koordinatensystems verläuft und
durch die letzte von der Zeigevorrichtung angegebene Position von
der Hand des Roboters geht.
- 5. Ein gewünschter
Tippvorschub wird unter Verwendung der Zeigevorrichtung auf die
unten beschriebene Weise (a) oder (b) manuell eingegeben.
(a)
Wird der Berührungsschirmmodus
gewählt (keine
Maus verwendet), wird die Handmarkierung 21' von dem Roboter auf der Graphik 20' des Roboters 20 mit
der Hand H1 berührt
(Beginn der Eingabe zweidimensionaler Positionen durch manuelle
Berührung).
In der Lehrkonsole 30 wird auf Basis zweidimensionaler
Daten über
die berührte Position
und ebener Positionsdaten eine aufeinanderfolgende Berechnung einer
dreidimensionalen Position gestartet, die einer virtuellen Position auf
dem Anzeigeschirm vom Vorderende des Roboters entspricht. Das Ergebnis
der Berechnung wird an die Robotersteuerung 10 gesendet.
-
Die
Hand (Fingerspitze) berührt
weiterhin den Anzeigeschirm und wird von einer Position H1 zu einer
Position H2 bewegt, wie der Pfeil A zeigt. Dann wird sie vom Anzeigeschirm
genommen (die Eingabe zweidimensionaler Positionen ist beendet).
Bei dieser Bewegung werden Daten, die einer Stellung eines durch
die Fingerspitze berührten
Punktes von H1 nach H2 auf dem Anzeigeschirm entsprechen, (zweidimensionale
Daten) unter Verwendung der ebenen Positionsdaten nach und nach
in Daten umgewandelt, die dreidimensionale Positionen wiedergeben, und
an die Robotersteuerung 10 gesendet. Auf Basis dieser Daten
bestimmt die Robotersteuerung 10 nach und nach Zielpositionen
für den
Roboter und erstellt einen Bewegungsbefehl.
-
Das
Verfahren zur Gewinnung dreidimensionaler Positionsdaten auf Basis
der ebenen Positionsdaten, die der Position der in einem gewählten Ebenenfestlegungs modus
festgelegten Ebene entsprechen, ist im Wesentlichen das gleiche
wie bei der zuvor beschriebenen Ausführungsform, ausgenommen dass
Daten über
die Sichtlinie von der Ausgabe des Sensors 35 für die dreidimensionale
Ausrichtung erhalten werden.
-
D.h.
eine Position einer Ebene kann bestimmt werden, indem (1) eine Richtung
einer Ebene und (2) ein Punkt, durch den die Ebene geht, festgelegt
werden. Beim oben beschriebenen automatischen Festlegungsmodus (1)
bestimmen Daten über die
Sichtlinie in der Graphikanzeige, die auf Basis der Ausgabe des
Sensors 35 für
die dreidimensionale Ausrichtung erhalten werden, die Richtung einer Ebene,
und (2) definiert die letzte Position der Hand des Roboters, die
von der Zeigevorrichtung angegeben wird, (gewöhnlich die Position des TCP)
einen Punkt, durch den die Ebene geht.
-
Über Sichtliniendaten
verfügt
die Lehrkonsole 30. Daten über die letzte Position der
Hand des Roboters, die von der Zeigevorrichtung angezeigt wird,
können
als Ergebnis der von der Lehrkonsole 30 zuletzt durchgeführten Berechnung
erhalten werden. Von der Robotersteuerung 10 gelieferte
Daten über
den realen Roboter können
aber als Anfangsdaten verwendet werden (siehe Übertragung und Empfangen von
Anfangsdaten in den Verfahren 1 und 2 bei der zuvor beschriebenen
Ausführungsform).
-
Beim
spezifischen Ebenenfestlegungsmodus (1) legt ein positiv festgelegter
Parameter (Normalvektordaten) die Richtung einer Ebene fest und (2)
definiert die letzte Position der Hand des Roboters, die von der
Zeigevorrichtung angezeigt wird, einen Punkt, durch den die Ebene
geht, wie im Fall des automatischen Festlegungsmodus.
-
So
können
bei jeder Art der Ebenenfestlegung die ebenen Positionsdaten erhalten
werden auf Basis von Daten, die der Richtung der Ebene entsprechen
(auf Basis der Sichtlinie berechnet oder positiv festgelegt), und
der dreidimensionalen Positionsdaten, die durch die zuletzt durchgeführte Berechnung
erhalten werden. Werden die ebenen Positionsdaten erhalten, kann
eine dreidimensionale Position bestimmt werden als Position eines
Schnittpunktes von der Ebene und einer Geraden, die der Sichtlinie
entspricht, die durch die gegenwärtig
von der Zeigevorrichtung angezeigten Position geht.
-
Mit
dem oben beschriebenen Tippvorschubbetrieb bewegt sich und stoppt
die Hand A' des
auf dem Anzeigeschirm abgebildeten Roboters 20', wie durch
den Pfeil A' angedeutet.
Zudem bewegt sich und stoppt die Hand des realen Roboters 20 je
nach der durch den Pfeil A' angegebenen
Bewegung seines Bildes. Die Position, an der der reale Roboter stoppt,
entspricht der Position auf dem Anzeigeschirm, an der ein Benutzer
seine oder ihre Hand vom Berührungsschirm
nimmt.
- (b) Wird der Mausmodus gewählt (kein
Berührungsschirm
verwendet), wird ein Cursor (nicht gezeigt) mit einer Maus 34 auf
der Handmarkierung 21' des
Roboters auf der Graphik 20' von dem
Roboter 20 platziert. Dann wird auf die Maus geklickt (Eingabe
zweidimensionaler Positionsdaten durch Klicken der Maus beginnt).
Durch das Klicken werden zweidimensionale Daten über die berührte Position an die Robotersteuerung 10 gesendet.
-
Nach
Bewegen der Maus 34 in die durch einen Pfeil A angegebene
Richtung wird erneut auf die Maus geklickt (die Eingabe der zweidimensionalen Position
endet). Inzwischen werden nach und nach Daten, die einer Stellung
des Mauscursors auf dem Anzeigeschirm entsprechen, (zweidimensionale
Daten) unter Verwendung der Ebenenfestlegungsdaten in dreidimensionale
Positionsdaten umgewandelt und an die Robotersteuerung 10 gesendet.
Auf Basis dieser Daten bestimmt die Robotersteuerung 10 nach
und nach Zielpositionen, an die sich der Roboter bewegen soll, und
erzeugt einen Bewegungsbefehl.
-
Weil
das Verfahren zur Gewinnung dreidimensionaler Positionsdaten an
der Lehrkonsole 30 das gleiche ist wie bei Wahl des Berührungsschirmmodus,
wird seine Beschreibung zur Vermeidung von Wiederholungen ausgelassen.
Die Position, an der der reale Roboter 20 stoppt, entspricht
der Position auf dem Anzeigeschirm, an der sich der Mauscursor befindet,
wird zum Beenden des Tippvorschubs auf die Maus 34 geklickt
(wird zum Beispiel zum zweitenmal auf die Maus geklickt).
-
Bei
der vorliegenden modifizierten Ausführungsform erfolgt die Verarbeitung
in der Robotersteuerung 10 und in der Lehrkonsole 20 im
Wesentlichen wie anhand der Fließschemata in den 4 und 5 (der
zuvor beschriebenen Ausführungsform)
beschrieben, mit Ausnahme der im folgenden beschriebenen Unterschiede.
Deshalb wird sie nicht im Einzelnen erläutert.
-
Unterschiede zur vorherigen
Ausführungsform
-
- 1. Die Eingabe (manuelle Eingabe) von Anzeigebedingungen
in Schritt D5 der Verarbeitung, die auf der Seite der Lehrkonsole
durchgeführt
wird (Verfahren 1, siehe 4), erfolgt durch Drücken von
einem der Knöpfe 52 und 54.
Knopf 51 ist nicht vorhanden oder unbrauchbar gemacht.
Statt dessen wird die Ausgabe des Sensors 35 für die dreidimensionale
Ausrichtung überprüft. "Ist einer der Knöpfe 52 und 53 gedrückt" oder "zeigt die Ausgabe
des Sensors 35 für
die dreidimensionale Ausrichtung verglichen mit der letzten Überprüfung eine
Schwankung, die größer ist,
als eine zuvor bestimmte Schwankung (d.h. eine Veränderung
in der Ausrichtung der Lehrkonsole 30) oder wird die Ausgabe
des Sensors 35 für
die dreidimensionale Ausrichtung zum erstenmal überprüft", geht die Verarbeitung zu Schritt D6 über.
- 2. Im Schritt D7 werden die Anzeigebedingungen je nach den von
den Knöpfen 52 und 53 gedrückten Knöpfen und
der Ausgabe des Sensors 35 für die dreidimensionale Ausrichtung
aktualisiert und als aktualisierte Graphik angezeigt. Die Anzeigebedingung,
die je nach der Ausgabe des Sensors 35 für die dreidimensionale
Ausrichtung modifiziert werden muss, ist die Sichtlinie.
-
Aus
der eingehenden Beschreibung anhand der beiden Beispiele für erfindungsgemäße Ausführungsformen
wird deutlich, dass der Roboter mittels Tippvorschub sicher in eine
Richtung bewegt werden kann, wobei auch die Intuition des Benutzers
eingesetzt wird, ohne ein mühsames
Verfahren, wie das häufige
Drücken
einer Tippvorschubtaste, und ohne Arbeit zur Bestätigung der
Ausrichtung eines Koordinatensystems. Daher können die Betriebsfähigkeit und
die Effizienz der Positionslehre durch ein Lehrrepetierverfahren
oder dergleichen verbessert werden.