DE3635265A1 - Industrieroboter - Google Patents

Industrieroboter

Info

Publication number
DE3635265A1
DE3635265A1 DE19863635265 DE3635265A DE3635265A1 DE 3635265 A1 DE3635265 A1 DE 3635265A1 DE 19863635265 DE19863635265 DE 19863635265 DE 3635265 A DE3635265 A DE 3635265A DE 3635265 A1 DE3635265 A1 DE 3635265A1
Authority
DE
Germany
Prior art keywords
signal
interpolation
circuit
learning
switch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19863635265
Other languages
English (en)
Other versions
DE3635265C2 (de
Inventor
Junji Hashizume
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.)
Tokico Ltd
Original Assignee
Tokico Ltd
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 Tokico Ltd filed Critical Tokico Ltd
Publication of DE3635265A1 publication Critical patent/DE3635265A1/de
Application granted granted Critical
Publication of DE3635265C2 publication Critical patent/DE3635265C2/de
Granted legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0081Programme-controlled manipulators with master teach-in means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/425Teaching successive positions by numerical control, i.e. commands being entered to control the positioning servo of the tool head or end effector
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)
  • Spray Control Apparatus (AREA)
  • Manipulator (AREA)

Description

Die vorliegende Erfindung bezieht sich auf einen Industrieroboter und speziell auf einen sog. Lern/Repetier- (Teaching-Playback)-Industrieroboter.
Ein Lern/Repetier-Industrieroboter mit linearer Interpolation ist in der Technik bekannt. Wenn beispielsweise mit Hilfe eines Industrieroboters dieser Art Lackierarbeiten ausgeführt werden, dann wird das obere Ende eines Hauptkörpers des Industrieroboters, der eine Spritzdüse trägt, von einer Bedienperson zunächst über die gesamte zu lackierende Oberläche bewegt, um einen Spritzvorgang an dem zu lackierenden Werkstück zu simmulieren, und gleichzeitig wird Information über diesen simulierten Vorgang, die in vorbestimmten Entfernungsabständen ausgegeben wird, in einem Speicher gespeichert, was im allgemeinen mit Punkt-zu-Punkt-Lernvorgang (PTP-Lernvorgang) bezeichnet wird. Nach vollständiger Speicherung von Information über diesen Vorgang wird der Lackiervorgang automatisch ausgeführt, indem die den Lackiervorgang betreffenden, gespeicherten Daten in zwei Positionen ausgelesen werden, die um den vorbestimmten Abstand voneinander entfernt sind, und zusätzlich werden Positionsdaten unter Verwendung der so ausgelesenen Daten in eine vorbestimmte Anzahl unterteilt wird, d. h., der Lackiervorgang wird unter Zuhilfenahme der linearen Interpolation ausgeführt, die im allgemeinen mit Playbackbetrieb bezeichnet wird.
In den US-Patentschriften 43 85 358 und 44 20 812 sind beispielsweise solche bekannten Techniken beschrieben.
Wenn übrigens die Information über die Tätigkeiten in den vorbestimmten Arbeitspositionen an der bearbeiteten Werkstückoberfläche nacheinander in dem Speicher beim Lernvorgang des Industrieroboters gespeichert werden, dann muß der Lernvorgang für das Lackieren der zu bearbeiteten Oberfläche ausgeführt werden, während die lineare Hin- und Herbewegung über die gesamte zu bearbeitende Oberfläche wiederholt wird, was als Nachteil zur Folge hat, daß der Umfang des Lernvorgangs vergrößert wird und erheblich Zeit dafür beansprucht wird. Darüber hinaus verlangt dies von der Bedienperson einen erheblichen körperlichen Einsatz. Die Korrektur eines Teils der Informationen über die Bearbeitung, die dem Roboter bereits vermittelt worden ist, wird weiterhin in der Weise ausgeführt, daß ein ähnlicher Lernvorgang erneut durchgeführt und alle zugehörigen Daten, die die Teilkorrektur einschließen, wieder in den Speicher eingespeichert werden. Dementsprechend kann ein solcher bekannter Industrieroboter nicht immer als besonders gut bedienbar angesehen werden.
Beim Lackieren oder einer ähnlichen Bearbeitung eines Werkstücks ist es beispielsweise notwendig, den Lernvorgang auszuführen, indem lineare Orte in Längsrichtung bezeichnet werden, um eine ungleichmäßige Lackierung oder dergleichen auf einer identischen, zu bearbeitenden Oberfläche zu vermeiden, sowie lineare Orte in Querrichtung zu bezeichnen, was einen größeren Arbeitsumfang und mehr Zeit verlangt, mit entsprechend größerem körperlichen Einsatz der Bedienperson.
Die vorliegende Erfindung ist im Hinblick auf das vorher Gesagte geschaffen worden und es liegt ihr die Aufgabe zugrunde, einen Industrieroboter anzugeben, der in der Lage ist, den Arbeitsvorgang an einer zu bearbeitenden Oberfläche auszuführen, indem lediglich ein einfacher Lernbetrieb ausgeführt wird, und es soll eine Teilkorrektur an bereits eingelernten Arbeitsvorgängen leicht möglich sein.
Diese Aufgabe wird durch die im Anspruch 1 angegebene Erfindung gelöst. Vorteilhafte Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche.
Die Erfindung, weitere Ziele derselben und ihre Vorteile sowie Merkmale der Erfindung werden nachfolgend unter Bezugnahme auf die Zeichnungen näher erläutert. Es zeigt:
Fig. 1 eine Schemadarstellung für den Lernvorgang beim Interpolieren einer Ebene;
Fig. 2 eine Darstellung der Verfahrensweise zur Bestimmung von Interpolationsstellen in dem in Fig. 1 umrissenen Vorgang;
Fig. 3 eine Darstellung eines anderen Verfahrens zur Bestimmung von Interpolationspositionen bei dem in Fig. 1 umrissenen Vorgang;
Fig. 4 eine Übersichtsdarstellung einer bevorzugten Ausführungsform der Erfindung;
Fig. 5 eine Draufsicht auf den Hauptkörper des Industrieroboters nach Fig. 4;
Fig. 6 eine Seitenansicht des Hauptkörpers des Industrieroboters nachh Fig. 4;
Fig. 7 ein Blockschaltbild für elektrische und hydraulische Systeme in der Ausführungsform nach Fig. 1, und
Fig. 8 eine Erläuterungsdarstellung, die den Zustand von Lernpositionen zeigt.
Der Industrieroboter nach der vorliegenden Erfindung ist so aufgebaut, daß er beispielsweise vier Positionen in der Reihenfolge der Punkte P 1, P 2, P 3 und P 4 einle rnt, die die Fläche Wa umgeben, die bearbeitet werden soll, wie Fig. 1 zeigt. Weiterhin werden zusätzlich zu den wenigstens vier Positionsdaten die Anzahl der Hin- und Herbewegungen eines Werkzaugs, beispielsweise einer Spritzdüse, über die zu bearbeitende Oberfläche, die Anzahl der Durchgänge, die Anzahl der Interpolationsstellen auf dem Durchgang und die Zahl der Oberfläche, d. h. die Zahl der auf der Oberfläche ausgeführten Interpolationen (gewöhnlich unter Veränderung der Richtung der Hin- und Herbewegung) als numerische Parameter eingelernt, und es wird die digitale Interpolation für die zu bearbeitende Oberfläche auf der Grundlage dieser wenigstens vier Positionsdaten, der Zahl des Durchlaufs des Werkstücks, der Interpolationszahl auf dem Durchlauf und der Zahl der Oberfläche ausgeführt.
Diese Erfindung wird nun unter Bezugnahme auf die bevorzugten Ausführungsbeispiele gemäß den Zeichnungen näher erläutert.
Gemäß den Zeichnungen enthält ein Hauptkörper 1 eines Industrieroboters einen Kopf 2 als bewegliches Element, einen Arm 3, einen Ständer 4 und einen Sockel 5. Der Kopf 2 ist mit dem Arm 3 mittels Gelenken 6 a und 6 b so verbunden, daß der Kopf 2 gegenüber dem Arm 3 innerhalb eines Winkelbereiches A in einer vertikalen Ebene und innerhalb eines Winkelbereiches B in einer zu vertikalen Ebene senkrechten Ebene schwenken kann. Der Arm 3 ist mit dem Ständer 4 mittels eines Gelenks 7 verbunden, während der Ständer 4 mit dem Sockel 5 mittels eines Gelenkes 8 verbunden ist. Der Arm 3 ist gegenüber dem Ständer 4 innerhalb eines Winkelbereichs C in einer vertikalen Ebene verschwenkbar, und der Ständer 4 ist relativ zum Sockel 5 innerhalb eines Winkelbereiches D in einer vertikalen Ebene schwenkbar sowie innerhalb eines Winkelbereiches E in einer zur vertikalen Ebene senkrechten Ebene drehbar (siehe Fig. 5 und 6).
Der Arm 3 ist mit hydraulischen Druckantrieben 9 und 10 verbuunden, mit deren Hilfe der Kopf 2 relativ zum Arm 3 innerhalb der Winkelbereiche A und B verschwenkt werden kann. Eine hydraulische Druckvorrichtung 11 ist zwischen dem Arm 3 und dem Ständer 4 angeordnet, um den Arm 3 gegenüber der Ständer 4 innerhalb des Winkelbereiches C verschwenken zu können. Hydraulische Druckeinrichtungen 12 und 13 sind mit dem Ständer 4 und dem Sockel 5 verbunden, um den Ständer 4 gegenüber dem Sockel 5 innerhalb der Winkelbereiche D und E verschwenken bzw. verdrehen zu können.
An den Gelenken 6 a und 6 b sind Potentiometer 14 und 15 angeordnet, um die Schwenkstellung des Kopfes 2 gegenüber dem Arm innerhalb der Winkelbereiche A und B ermitteln zu können. Ein Potentiometer 16 ist dem Gelenk 7 zugeordnet, um die Schwenkstellung des Armes 3 gegenüber dem Ständer 4 innerhalb des Winkelbereiches C zu ermitteln, und Poteniometer 17 und 18 sind dem Gelenk 8 zugeordnet, um die Schwenkstellung des Ständers 4 gegenüber dem Sockel 5 innerhalb des Winkelbereiches D und seine Drehstellung innerhalb des Winkelbereiches E zu ermitteln. Weiterhin ist ein Handgriff 19 abnehmbar an dem Kopf 2 angeordnet. Der Handgriff 19 wird an dem Kopf 2 beim Lernbetrieb angebracht und dem Kopf 2 beim Repetierbetrieb abgenommen.
Die Potentiometer 14-18 geben jeweils Positionssignale an eine Eingangsschaltung 21, die in einer Steuertafel 20 angeordnet ist. Diese Positionssignale werden auf einen vorbestimmten Pegel in der Eingangsschaltung 21 verstärkt. Die jeweiligen Signale von den Potentiometern 14-18, die der Eingangsschaltung 21 zugeführt werden, gelangen an eine Wählschaltung oder einen Analogmultiplexer 26. Die Potentiometer 14, 15, 16, 17 und 18 und die Eingangsschaltung 21 bilden eine Detektoreinrichtung.
Die Wählschaltung 26 wählt nacheinander die Positionssignale aus, die von Potentiometern zugeführt werden, und zwar auf der Grundlage von Steuersignalen, die von einem Steuerkreis 27 beim Lernbetrieb geliefert werden, und führt die ausgewählten Positionssignale einem A/D-Wandler 28 zu. Der Steuerkreis liegt beispielsweise als ein vorprogrammierter Mikroprozessor vor, der mit einer zusätzlichen Einrichtung versehen ist.
Der A/D-Wandler 28 wandelt die Positionssignale, die als Analogsignale geliefert werden, in digitale Signale um und gibt die so umgewandelten digitalen Signale an eine Schaltung 29 für die Steuerung der Signalübertragung. Die Schaltung 29 zur Steuerung der Signalübertragung führt die von dem A/D-Wandler 28 gelieferten Positionssignale mit Hilfe des Steuersignals vom Steuerkreis 27 beim Lernbetrieb einer Speichereinrichtung 30 zu. Sie liefert Positionsdatensignale, Interpolationszahlsignale, Durchlaufzahlsignale, Interpolationsoberflächenzahlsignale und Spritz-Start/Stopp-Signale, die von der Speichereinrichtung 30, die später noch zu beschreiben ist, ausgelesen werden, an Register 32, 33, 22, 23 und 59 mit Hilfe des Steuersignals vom Steuerkreis 27 beim Repetierbetrieb. Während des Lernbetriebs speichert die Speichereinrichtung 30 das Positionssignal, das vom A/D-Wandler 28 über die Schaltung 29 zur Steuerung der Signalübertragung zugeführt worden ist, die Interpolationszahlsignale, die von dem in einem Korrigierer 34 angeordneten Interpolationszahleinsteller 35 zugeführt werden, Durchlaufzahlsignale und Interpolationsoberflächenzahlsignale, die von einem Tastenfeld 25 auf einer Bedientafel 40 eingegeben werden, und Spritzlackier-Start/Stopp-Signale vom Schalter 58, der an dem Handgriff 19 angeordnet ist, jeweils mit Hilfe von Adressensignalen von dem Steuerkreis 27 an entsprechenden Lernpositionen Pi. Dies erfolgt sequentiell.
Ein Schalter 37 als eine Bestimmungsschaltung zur Bestimmung der Lernposition Pi am zu lackierenden Gegenstand W ist beim Lernbetrieb an dem Griff 19 angeordnet, und ein Betätigungssignal vom Schalter 37 wird dem Steuerkreis 27 zugeführt. Der Steuerkreis 27 führt das Steuersignal zur Wählschaltung 26 und zur Speichereinrichtung 30 unter der Steuerung durch das Betätigungssignal vom Schalter 37. Sie ist so eingerichtet, daß die Betätigungszahl des Schalters 37 in einem Zählkreis 38 gezählt wird, und der Zählwert in der Zählschaltung 38 wird einer numerischen Anzeige 39 zugeführt, die an dem Korrigierer 34 angeordnet ist, und auch zu einer numerischen Anzeige 41, die an der Bedientafel 40 der Steuertafel 20 angeordnet ist. Die numerischen Anzeigen 39 und 41 zeigen als Dezimalzahl die in der Zählschaltung 38 jeweils gezählten Werte an. Die Zählschaltung 38 erhöht den gezählten Inhalt jedesmal um 1 durch den Impuls vom Steuerkreis 27, der bei jedem Ablesen von Positionsdatensignalen bezüglich der Lernposition Pi erzeugt wird, weiterhin das Interpolationszahlsignal, das Durchlaufzahlsignal, das Oberflächenzahlsignal und das Spritz- Start/Stopp-Signal beim Repetierbetrieb. Das heißt, die Zählschaltung 38 zählt beim Repetierbetrieb (Playbackbetrieb) die Anzahl der Auslesungen für den Datenblock, der die Positionssignale in der Zahl enthält, die der Zahl der Potentiometer 11-18 entspricht, die einen Arbeitspunkt angeben, ein Interpolationszahlsignal, das Durchlaufzahlsignal, das Oberflächenzahlsignal und das Spritz-Start/Stopp-Signal.
Die Bedientafel 40 ist mit der Tastatur 25 versehen, zur Eingabe der Durchlaufzahl und der Interpolationsoberflächenzahl. Weiterhin sind ein Hydraulikdruckquelleneinschalter 42, ein Lern/Repetiermode-Umschalter 43, ein Startschalter 44, ein Stoppschalter 45 und ein Betriebsgeschwindigkeitseinsteller 46, der ein einstellbarer Widerstand ist, an der Bedientafel angeordnet. Die Ein/ Aus-Betätigung des Schalters 42 bestimmt den Betrieb der Hydraulikdruckquelle 47 derart, daß die Steuerschaltung 27 den Betrieb einer Pumpe für die Hydraulikdruckquelle 47 beginnt, wenn der Schalter 42 eingeschaltet ist, während die Steuerschaltung 27 den Betrieb der Pumpe für die Hydraulikquelle 47 unterbricht, wenn der Schalter 42 ausgeschaltet wird. Das Ein/Aus-Signal vom Schalter 43 wird dem Steuerkreis 27 zugeführt, und der Steuerkreis 27 wird auf Lernbetrieb oder Repetierbetrieb eingestellt, je nach Ein- oder Ausschaltsignal vom Schalter 43. Dieser erzeugt ein Steuersignal, das für den Lernbetrieb benötigt wird, wenn er auf die Lernbetriebsart eingestellt ist, während er ein Steuersignal, das für den Repetierbetrieb benötigt wird, abgibt, wenn er auf die Repetierbetriebsart eingestellt ist.
Das Einstellsignal vom Betriebsgeschwindigkeitseinsteller 46 wird über den Steuerkreis 27 einem Impulsgenerator 48 zugeführt. Der Impulsgenerator 48 erzeugt eine Serie von Impulsen einer gewissen Periode und ist mit dem Steuerbetrieb des Steuerkreises 27 beim Repetierbetrieb synchronisiert. Die vom Generator 48 erzeugten Impulse werden einer Zählschaltung 49 und einer digitalen Interpolationsschaltung 50 zugeführt. Die Zählschaltung 49 zählt die vom Generator 48 zugeführten Impulse und liefert den gezählten Wert an die digitale Interpolationsschaltung 50 und eine Vergleichsschaltung 51. Die digitale Interpolationsschaltung 50 führt eine digitale Interpolation aus, wobei sie die Signale verwendet, die von den Registern 31, 22, 23, 32 und 33, dem Impulsgenerator 48 und der Zählschaltung 49 unter der Steuerung durch den Steuerkreis 27 zugeführt werden. Die Vergleichsschaltung 51 vergleicht das in dem Register 33 geladene Interpolationszahlsignal mit dem Zählwert der Zählschaltung 49, und wenn keine Differenz bei dem Vergleich ermittelt wird, dann gibt sie ein Null-Signal an den Steuerkreis 27. In diesem Falle werden Positionssignale in die Register 31 und 32 geladen, während das Interpolationszahlsignal beim Repetierbetrieb in das Register 33 geladen wird.
Die digitale Interpolationsschaltung 50 führt eine lineare Interpolation zwischen den Lernpositionen Pi und P(i)+1) aus, um den Wert davon von jedem der Werte Xai-Xei für die Positionssignale an der i-ten Lernposition Pi vom Register 31 zu bestimmen, jeden der Werte Xa(i+1)-Xe(i+1) für die Positionssignale an der (i+1)-ten Lernposition P(i+1) vom Register 32 zu bestimmen, den Wert N(i+1) für das (i+1)-te Interpolationszahlsignal vom Register 33 zu bestimmen und den gezählten Wert Cp von der Zählschaltung 49 zu ermitteln. Das heißt, die digitale Interpolationsschaltung 50 führt die folgende Berechnung aus, um den Wert Xar bezüglich des Bereiches des Winkels A an der Interpolationsstelle zwischen den Positionen Pi und P(i+1) bei jedem Auftreten eines Impulses vom Generator 58 zu bestimmen, basierend auf dem Wert Xai für das Positionssignal vom Register 31, dem Wert Xa(i+1) für das Positionssignal vom Register 32, dem Wert N(i+1) für das Interpolationszahlsignal vom Register 33 und vom gezählten Wert von der Zählschaltung 49:
Die digitale Interpolationsschaltung 50 gibt das berechnete Ergebnissignal an einen D/A-Wandler 52. Die digitale Interpolation wird mit Hilfe eines bekannten binären digitalen Vorgangs ausgeführt. Der D/A-Wandler 52 wandelt das zugeführte berechnete Ergebnissignal als das digitale Signal in ein Analogsignal um und führt das Analogsignal einer analogen Speicherschaltung 53 zu, die das Signal bis zum Auftreten des nächsten Berechnungsergebnissignals hält. Die digitale Interpolationsschaltung 50, der D/A-Wandler 52 und die analoge Speicherschaltung 53 bilden eine digitale Interpolationseinrichtung. Die digitale Interpolationseinrichtung ist jeweils entsprechend der Positionssteuerung innerhalb des Winkels A für den Kopf 2, die Positionssteuerung innerhalb des Winkelbereichs B für den Kopf 2, die Positionssteuerung innerhalb des Winkelbereichs C für den Arm 3, die Positionssteuerung innerhalb des Winkelbereichs D für den Ständer 4 und die Positionssteuerung innerhalb des Winkelbereichs E für den Ständer 4 vorgesehen. Anstelle der analogen Speicherschaltung 53 kann ein Register zwischen der digitalen Interpolationsschaltung 50 und dem D/A-Wandler 52 vorgesehen sein, um das Berechnungsergebnissignal als ein digitales Signal zu speichern und das gespeicherte Signal bis zum Auftreten des nächsten Berechnungserbnissignals zu halten.
Die der analogen Speicherschaltung 53 zugeführten Berechnungsergebnissignale werden jeweils als Sollwerte einem Komparator 54 einer Servoschaltung zugeführt. Der Komparator 54 vergleicht das Positionssignal als von den Potentiometern 11-18 über die Eingangsschaltung 21 zugeführter laufender Wert mit dem Positionssignal als Sollwert von der Speicherschaltung 53 beim Repetierbetrieb und führt das Differenzsignal als das Ergebnis des Vergleiches jeweils einem Servoverstärker 55 zu. Der Verstärker 55 verstärkt das so zugeführte Differenzsignal in geeigneter Weise und liefert das so verstärkte Differenzsignal an ein Servoventil 56. Das Servoventil 56 steuert die Ladung und Entladung des hydraulischen Drucks von der Hydraulikdruckquelle 47 zur Hydraulikdruckantriebseinrichtung 9 auf der Grundlage des so zugeführten Differenzsignals. Auf diese Weise bilden das Potentiometer 14, die Eingangsschaltung 21, der Komparator 54, der Verstärker 55, das Ventil 56 und die Antriebseinrichtung 9 einen Servokreis als Servoeinrichtung bezüglich der Positionssteuerung beispielsweise des Kopfes 2 innerhalb des Winkelbereichs A, und die Position des Kopfes 2 als das bewegliche Element wird auf die aufeinanderfolgend dem Komparator 54 eingegebenen Sollwerte eingestellt. Die Servoschaltung sind bezüglich der anderen Positionssteuerungen des beweglichen Elementes gleichartig aufgebaut.
Wenn der Roboter zum Lackieren eingesetzt wird, dann ist der Kopf 2 mit einer Farbspritzdüse 57 versehen, und der Schalter 58 zur Bezeichnung von Start und Stopp des Farbspritzens aus der Düse 57 ist an dem Griff 18 angeordnet. Das Spritz-Start/Stopp-Signal, das beim Lernbetrieb vom Schalter 58 erzeugt wird, wird über den Steuerkreis 27 in die Speichereinrichtung 30 eingespeichert. Andererseits wird das Spritz-Start/Stopp-Signal, das in der Speichereinrichtung 30 gespeichert ist, daraus beim Repetierbetrieb in das Register 59 ausgelassen und als Steuersignal für die Farbspritzantriebseinrichtung 60 verwendet.
Weiterhin werden an der Tastatur 25, die in der Bedientafel 40 angeordnet ist, die Durchlaufzahl und die Oberflächenzahl eingegeben und über den Steuerkreis 27 beim Lernbetrieb in die Speichereinrichtung 30 eingespeichert. Die Register 22, 23, 31, 32, 33 und 59, der Wählkreis 26, der Steuerkreis 27, der A/D-Wandler 29, die Schaltung zur Steuerung der Signalübertragung, die Speichereinrichtung 30 und der Zählkreis 38 bilden zusammen eine Speichereinrichtung.
Der Betrieb des so aufgebauten Industrieroboters wird nachfolgend erläutert. Beim Lernbetrieb ist der Schalter 42 ausgeschaltet und der Betrieb der Pumpe für die Hydraulikdruckquelle 47 ist unterbrochen. Wenn der Betrieb der Pumpe für die Hydraulikdruckquelle 47 unterbrochen ist, dann wird kein Hydraulikdruck erzeugt und jedes der beweglichen Elemente ist nun frei schwenkbar. Sodann wird der Schalter 43 betätigt, um ein Einschaltsignal an den Steuerkreis 27 zu gehen, um diesen in der Lernbetrieb zu versetzen. Nachdem der Lernbetrieb eingerichtet ist, liefert beim Drücken des Startschalters 44 der Steuerkreis 27 einen Rücksetzimpuls an den Zählkreis 38, so daß auf den Anzeigen 39 und 41 die Zahl "0" angezeigt wird. Der Griff 19 wird dann gegenüber dem Gegenstand W bewegt, um die Düse 57 in die Ausgangsposition P 0 zu bringen, und danach wird der Schalter 37 einmal betätigt. Obgleich hier erläutert wird, daß beim vorliegenden Ausführungsbeispiel der Lernbetrieb am stationär gehaltenen Werkstück W ausgeführt wird, sei doch betont, daß der Lernbetrieb auch beispielsweise an einem bewegten Werkstück W ausgeführt werden kann. Die Positionssignale, die von den Potentiometern 14-18 an der Position P 0 bei Betätigung des Schalters 37 abgegeben werden, werden jeweils in der Speichereinrichtung 30 gespeichert. Das heißt, der Steuerkreis 27 gibt bei Empfang des Betätigungssignals vom Schalter 37 zunächst ein Steuersignal an die Wählschaltung 26, um die Wählschaltung 26 so zu steuern, daß sie die Positionssignale von den Potentiometern 14-18 nacheinander dem A/D-Wandler 28 zuführt und ein Steuersignal der Schaltung 29 für die Steuerung der Signalübertragung zuführt, um dadurch den Steuerkreis 29 so zu steuern, daß er das Positionssignal als das Digitalsignal vom A/D-Wandler 28 der Speichereinrichtung 30 zuführt und weiterhin ein Adreßsignal der Speicherschaltung 30 zuführt, um zu bewirken, daß die von der Schaltung 29 für die Steuerung der Signalübertragung gesendeten Positionssignale nacheinander in vorbezeichnete Speicheradressen gespeichert werden, beispielsweise als das Positionssignal vom Potentiometer 15 in die zweite Adresse usw. nacheinander, bis zum Positionssignal vom Potentiometer 18 in die fünfte Adresse. Im Falle des Lernbetriebs an der Position P 0 schreibt der Steuerkreis 27, wenn der Schalter 58 nicht betätigt wird, das Spritz-Stopp-Signal in die sechste Adresse der Speichereinrichtung 30.
Der Steuerkreis 27 speichert weiterhin das Interpolationszahlsignal, das in den Interpolationszahleinsteller 35 eingestellt ist, in die siebente Adresse der Speichereinrichtung 30. Der Interpolationszahleinsteller 35 enthält einen Digitalschalter, der eine Dezimalanzeige hat, und kann auf Wunsch auf die Werte beispielsweise von 2 bis 40 als der Wert N für das Interpolationszahlsignal eingestellt werden, und die eingestellten Werte werden in eine Binärzahl umgewandelt und als das Interpolationszahlsignal in die Speichereinrichtung 30 unter Steuerung durch den Steuerkreis 27 eingespeichert. Da, wie oben erwähnt, der Zählkreis 38 so aufgebaut ist, daß er die Zahl der Betätigungen des Schalters 37 nach der Betätigung des Schalters 44 zählt, zeigen die Anzeigen 39 und 41 zur Anzeige der gezählten Werte in der Zählschaltung 38 die Größe "1" nach dem Lernbetrieb der Position P 0 an.
Wenn dann der Griff 19 bewegt und die Düse 57 in die zweite Lernposition P 1 bewegt wird, dann wird der Schalter 37 erneut betätigt, und Positionssignale von den Potentiometern 14-18 an der Position P 1 werden nacheinander in die Speichereinrichtung 30 auf gleiche Weise, wie soeben beschrieben, eingespeichert, und gleichzeitig wird das Interpolationszahlsignal, das durch den Interpolationszahleinsteller 35 eingestellt ist, in die Speichereinrichtung 30 eingespeichert. Im Falle des Beginns des Aufsprühens von Farbe durch die Düse 57 auf das Werkstück W bei der Position P 1 wird der Schalter 58 betätigt, wodurch das Spritz-Start-Signal in der Speichereinrichtung 30 eingespeichert wird. Auf gleiche Weise, wie oben beschrieben, wird weiterhin der gezählte Wert im Zählkreis 38 nach dem Lernbetrieb in der Position P 1 um 1 erhöht, und der auf den Anzeigen 39 und 41 dargestellte Wert ist daher nun "2". Die beschriebene Prozeduren werden in gleicher Weise nachfolgend ausgeführt, wenn die Düse 57 in die Positionen P 2, . . ., P i , P (i+1), . . ., P n verschoben wird und die Schalter 37 und 58 betätigt werden. Die Positionssignale, die man von den Potentiometern 14-18 an den entsprechenden Positionen erhält, das Interpolationszahleinstellsignal, das man vom Einsteller 35 erhält, und das Spritz-Start/ Stopp-Signal werden in der Speichereinrichtung 30 eingespeichert. Nach Abschluß des Lernbetriebs an der letzten Position P n wird der Stoppschalter 45 betätigt und der Steuerkreis 37 schreibt dann ein Vorgang-Ende-Signal in die Adresse ein, die der Adresse folgt, in welcher das letzte Signal eingespeichert worden ist, und schreibt die Zahl (n+1) für die Lernposition in die Adresse "0".
Zur Ausführung des Lernbetriebs für die digitale Oberflächeninterpolation an der zu bearbeitenden Werkstückoberfläche Wa lehrt dementsprechend die Bedienperson zunächst die Position für die Punkte P 1, P 2, P 3 und P 4, die die zu bearbeitende Oberfläche Wa am Werkstück W umgeben, wie in Fig. 1 gezeigt. P 0 ist der Startpunkt und P 5 ist eine Warteposition. Der Lernbetrieb bezüglich der Punkte P 0 bis P 5 wird in der gleichen Weise ausgeführt, wie für P i , . . ., P (i+1, wie oben entsprechend beschrieben, und die Ergebnisse werden jeweils in der Speichereinrichtung 30 eingespeichert.
Gleichzeitig werden ein Ort, der sich vom Punkt P 1 zum Punkt P 2 auf der zu bearbeitenden Oberfläche Wa des Werkstücks W bewegt, d. h. eine Querdurchlaufzahl n 1 und die Oberflächenzahl m 1, wie in Fig. 2 gezeigt, eingestellt. Dann werden die Durchlaufzahl n 2 und die Oberflächenzahl m 2 auf gleiche Weise, wie oben beschrieben, in der Bewegungsrichtung der Spritzdüse 57, wie in Fig. 3 gezeigt, eingestellt, d. h. in der Längsrichtung senkrecht zur Bewegungsrichtung in Fig. 2 mittels der Tastatur 25 an der Bedientafel 40. Dies wird mit dem Einstellen für die zweite Oberfläche bezüglich dem Einstellen für die erste Oberfläche in Fig. 2 bezeichnet. Beim Lernen für die zweite Oberfläche, wie in Fig. 3 gezeigt, ist der Durchlauf ein Längsdurchlauf, und die Längsdurchlaufzahl wird als n 2 eingestellt. Die Oberflächenzahl, beispielsweise die erste Oberfläche und die zweite Oberfläche, wird in Abhängigkeit von dem Arbeitszweck gewählt, und der Querdurchlauf und der Längsdurchlauf werden alternierend ausgeführt. Jeder der so eingestellten Parameter wird über den Steuerkreis 27 in die Speichereinrichtung 30 eingespeichert.
Im Falle der Ausführung des Repetierbetriebs nach dem Lernbetrieb, wie oben beschrieben, wird der Schalter 42 zunächst betätigt, um den Einschaltzustand einzurichten. Der Steuerkreis 27 gibt bei Empfang des Einschaltsignals vom Schalter 42 ein Steuersignal zur Betätigung der Pumpe für die Hydraulikdruckquelle 47 ab. Wenn die Pumpe für die Hydraulikdruckquelle 47 in Betrieb ist, dann wird von ihr ein hydraulischer Druck erzeugt und dem Ventil 56 zugeführt. Sodann wird der Schalter 43 betätigt und der Steuerkreis 27 wird in den Repetierbetrieb versetzt. Sodann wird der Startschalter 44 betätigt, der Steuerkreis 27 beginnt die Steuerung für den Repetierbetrieb. Zunächst liefert der Steuerkreis 27 ein Rücksetzsignal an den Zählkreis 38 bei Empfang des Betriebssignals vom Schalter 44, um den in dem Zählkreis 38 gezählten Wert zu löschen, und liefert gleichzeitig ein Steuersignal zum Auslesen der in der Lernposition P 0 gespeicherten Positionssignale, des Interpolationszahlsignals, des Spritz-Start/Stopp-Signals, des Durchlaufzahlsignals und des Oberflächenzahlsignals aus der Speichereinrichtung 30 und liefert das Steuersignal zur Signalübertragungssteuerschaltung 29 und zu jedem der Register 32, 33, 59, 22 und 23, so daß die entsprechenden ausgelesenen Signale in die zugehörigen Register geladen werden. Gleichzeitig gibt der Steuerkreis 27 ein Steuersignal an die Register 32 und 31, so daß die zuvor in dem Register 23 geladenen Positionssignale in das Register 31 umgeladen werden. Der Wert des zuvor im Register 32 geladenen Positionssignals ist eine binäre "0", wenn der Steuerkreis 27 so eingerichtet ist, daß er die Inhalte in den Registern 31, 32 usw. unmittelbar beim Empfang des Startsignals vom Schalter 44 löscht. Zur Vereinfachung der Erläuterung sei jedoch angenommen, daß der Wert Xan (der Suffix a meint die Daten bezüglich des Kopfes) für das Positionssignal, das man an der Lernkomposition P n erhält, zuvor in das Register 32 geladen worden ist. Dementsprechend ist im Register 31 der Wert Xan für das Positionssignal geladen, im Register 32 ist der Wert X a0 für das an der Position P 0 erhaltene Positionssignal geladen, die Durchlaufzahl n ist im Register 22 geladen, die Oberflächenzahl m ist im Register 23 geladen, die Zahl N 0 für das Interpolationszahlsignal ist im Register 33 geladen und das Spritz-Stopp-Signal ist im Register 59 geladen.
Wenn die Werte in die entsprechenden Register geladen werden, dann führte der Steuerkreis 27 ein Impulserzeugungsstartsignal an den Impulsgenerator 48. Der Impulsgenerator 48 erzeugt dann einen einzelnen Impuls. Der erzeugte Impuls wird der digitalen Interpolationsschaltung 50 und dem Zählkreis 49 zugeführt, und der gezählte Wert in dem Zählkreis 49 wird auf 1 gesetzt. Die digitale Interpolationsschaltung 50 führt eine digitale Interpolation durch, während sie mit dem Impuls vom Generator 48 synchronisiert wird. Da in diesem Falle "1" als der gezählte Wert Cp vom Zählkreis 49 der digitalen Interpolationsschaltung 50 zugeführt wird, führt die digitale Interpolationsschaltung 50 beispielsweise die folgende Gleichung aus:
Das berechnete Ergebnis wird an den D/A-Wandler 52 ausgegeben.
Der D/A-Wandler 52 wandelt den Wert für das berechnete Ergebnis in ein Analogsignal um und gibt das Signal an die analoge Speicherschaltung 53. Das der analogen Speicherschaltung 53 zugeführte Analogsignal wird als Sollwert dem Komparator 54 zugeführt. Der Komparator 54 vergleicht das Positionssignal von dem analogen Speicherkreis 53 mit dem laufenden Positionssignal von der Eingangsschaltung 21 und gibt ein Differenzsignal an den Servoverstärker 55. Das Ventil 56 wird durch das vom Servoverstärker 55 zugeführte Differenzsignal gesteuert. Die digitalen Interpolationen bezüglich der Bewegung des Arms 3 und des Ständers 4 werden auf die gleiche Weise ausgeführt, und die Ventile für den Arm 3 und den Ständer 4 werden durch Servokreise für den Arm 3 und den Ständer 4 entsprechend gesteuert. Als Folge davon wird hydraulischer Druck von der Hydraulikdruckquelle 47 jeder der Antriebseinrichtungen 9-13 derart zugeführt, daß die Düse 57 über eine berechnete Position gebracht wird, d. h. auf eine Position P n01, die auf der geraden Linie liegt, die die Positionen P 0 und P n verbindet, wobei die Position P n01 gegenüber der Position P n in Richtung auf die Position P 0 um den Bruchteil 1/N 0 des Segmentes P 0 P n verschoben ist. Im Falle, daß N 0 gleich 2 ist, liegt diese Position etwa in der Mitte des Segmentes P 0 P n . Sodann wird nach Verstreichen der Zeit T, die zusätzlich durch den Betriebsgeschwindigkeitseinsteller 46 nach Erzeugung der ersten Impulses vorgegeben ist, ein einzelner Impuls wiederum vom Impulsgenerator 48 erzeugt, um dadurch den gezählten Wert Cp im Zählkreis 49 auf "2" zu erhöhen, und dementspechend führt beispielsweise die digitale Interpolationsschaltung 50 die folgende Berechnung aus, während sie mit dem zweiten Impuls vom Impulsgenerator 48 synchronisiert wird:
Die Berechnungen werden für den Wert X b0 für das Positionssignal des Kopfes 2 innerhalb des Winkelbereiches B auf die gleiche Weise ausgeführt. Ähnliches gilt für den Wert X c0 für das Positionssignal des Armes 3 innerhalb des Winkelbereiches C, für den Wert X d0 für das Positionssignal des Ständers 4 innerhalb des Winkelbereiches D und für den Wert X e0 für das Positionssignal des Ständers 4 innerhalb des Winkelbereiches E.
Der Impulsgenerator 48 erzeugt eine Serie von Impulsen mit einer bestimmten Periode, während er mit der Steuerung durch den Steuerkreis 27 synchronisiert wird, und die Impulsperiode wird auf einen vorbestimmten Wert durch das Einstellsignal eingestellt, das von dem Betriebsgeschwindigkeitseinsteller 46 geliefert wird. Beispielsweise kann die Impulsperiode vom Generator 48 nach Wunsch auf 5 msec bis 20 msec durch den Einsteller 46 eingestellt werden.
Im Falle des Lernvorgangs an der Position P 0 gibt, wenn der Wert N 0 für das Interpolationszahlsignal durch den Interpolationszahleinsteller 35 beispielsweise auf "2" eingestellt wird, weil ein in dem Register 33 geladener binärer Wert "2" entspricht, die digitale Interpolationsschaltung 50 den Wert X a0 für das Positionssignal als das Ergebnis der Berechnung ab, und andererseits stellt die Vergleichsschaltung 51, die den Inhalt des Registers 33 mit dem Zählkreis 49 gezählten Wert vergleicht, die Koinzidenz fest und gibt ein Koinzidenzermittlungssignal an den Steuerkreis 27 ab. Der Wert X a0 für das Positionssignal von der digitalen Interpolationsschaltung 50 wird in ein Analogsignal umgewandelt, in der analogen Speicherschaltung 53 gespeichert und als ein Sollwert dem Servokreis zugeführt, durch den die Düse 57 auf die Position P 0 gesetzt wird.
Der Steuerkreis 27 gibt auf Empfang des Koinzidenzsignals von der Vergleichsschaltung 51 einen Rücksetzimpuls an den Zählkreis 38 ab, um den gezählten Wert im Zählkreis 38 um 1 zu erhöhen, und gibt andererseits einen Rücksetzimpuls an den Zählkreis 49 ab, um den darin gezählten Wert auf 0 rückzusetzen. Die Anzeigen 39 und 41 zeigen daher die Zahl "1" an. Der Steuerkreis 27 prüft dann weiterhin, ob das Spritz-Start-Signal in das Register 59 geladen ist, oder nicht, und wenn das Spritz-Start-Signal in dem Register 59 geladen ist, dann gibt der Kreis 27 ein Betriebsstartsignal an die Farbspritzantriebseinrichtung 60. Da der Spritzstart an der Lernposition P 0 nicht bezeichnet ist und dementsprechend das Spritz-Start-Signal in diesem Zeitpunkt nicht in das Register 59 geladen wird, findet kein Farbenauftrag durch die Düse 57 statt. Der Steuerkreis 27 liefert dann ein Lesesteuersignal an die Speichereinrichtung 30, um das Positionssignal, das Interpolationszahlsignal, das Durchlaufzahlsignal und das Interpolationsoberflächenzahlsignal sowie das Spritz-Start/Stopp-Signal, die an der Lernposition P 1 gespeichert sind, auszulesen, und führt ein Steuersignal der Schaltung 29 für die Steuerung der Signalübertragung zu jedem der Register 32, 33, 22, 23 und 59 zu, um jedes der so ausgelesenen Signale zu den entsprechenden Registern zu überführen. Der Steuerkreis 27 liefert weiterhin ein Steuersignal an die Register 31 und 32, um das in dem Register 32 geladene Positionssignal in das Register 31 zu überführen. Daher werden das Positionssignal an der Lernposition P 0 in das Register 31 und das Positionssignal an der Lernposition P 1 in das Register 32 geladen. Wenn das Signal in jedes der Register geladen worden ist, dann gibt der Steuerkreis 27 das Impulserzeugungsstartsignal an den Impulsgenerator 48 auf die gleiche Weise, wie oben beschrieben.
Das Impulserzeugungsstartsignal wird nach Verstreichen der Zeit T nach dem Einstellen auf die Lernposition P 0 erzeugt, und die Zeit T wird außerdem in der gleichen Weise variabel eingestellt, wie für die Impulsperiode T für den Impulsgenerator 48 durch den Betriebsgeschwindigkeitseinsteller 46. Der Impulsgenerator 48 erzeugt bei Empfang des Impulserzeugungsstartsignals einen einzelnen Impuls und liefert diesen an die digitale Interpolationsschaltung 50 und den Zählkreis 49. Die digitale Interpolationsschaltung 50 führt dieselbe Berechnung aus, wie oben beschrieben, wenn sie den einzlnen Impuls erhält, und gibt das entsprechende Berechnungsergebnis an den D/A-Wandler 52. Das heißt, die Schaltung führt die folgende Berechnung auf der Grundlage des in dem Zählkreis 49 gezählten Wertes Cp aus:
Im Falle der digitalen Interpolation zwischen P 1 und P 2, beispielsweise in Fig. 2, wird der Wert N für das Interpolationszahlsignal als Wert des Nenners verwendet, während die Durchlaufzahl n als Wert für den Nenner verwendet wird, wenn die digitale Interpolation zwischen P 1 und P 4 ausgeführt wird.
Auf die gleiche Weise werden die Berechnungen bezüglich des Wertes des Positionssignals für den Kopf 2 innerhalb des Winkelbereiches B ausgeführt, bezüglich des Wertes für das Positionssignal für den Arm 3 innerhalb des Winkelbereiches C, bezüglich des Wertes für das Positionssignal für den Ständer 4 innerhalb des Winkelbereiches D und für den Wert des Positionssignals für den Ständer 4 innerhalb des Winkelbereiches E.
Im Falle, daß der Wert N 1 für das Interpolationszahlsignal für die Lernposition P 1 auf 20 gesetzt wird, wird von jeder der digitalen Interpolationsschaltungen 50 ein Positionssignal ausgegeben, so daß die Düse 57 auf der geraden Linie positioniert wird, die die Positionen P 0 und P 1 miteinander verbindet, wobei die einzelnen Stellen gegeneinander um etwa 1/20 des Segmentes P 0 P 1 zwischen der Position P 0 und der Position P 1 gegeneinander versetzt sind, was jeweils mit der Änderung des Zählwertes in dem Zählkreis 49 einhergeht.
Das Positionssignal von der digitalen Interpolationsschaltung 50 wird über den D/A-Wandler 52 und den Speicherkreis 53 jedem der Servokreise zugeführt. Jeder der Servokreise versetzt die Düse 57 unter Verwendung des Positionssignals von dem Speicherkreis 53 als Sollwert und unter Verwendung des Positionssignals von dem Eingangskreis 21 als laufender Wert. Wenn der gezählte Wert im Zählkreis 49 den Wert "20" erreicht, gibt die Vergleichsschaltung 51 ein Koinzidensignal an den Steuerkreis 27 ab, so daß der Steuerkreis 27 einen Impuls an den Zählkreis 38 abgibt, um die Zahl "2" auf den Anzeigen 39 und 41 in der gleichen Weise, wie oben beschrieben zur Anzeige zu bringen, und gibt ein Löschsignal an den Zählkreis 49 ab und gibt weiterhin das nächste Steuersignal ab. Da das Spritz-Start-Signal in der Speichereinrichtung 30 an der Lernposition P 1 gespeichert ist, wird das Spritz-Start-Signal in das Register 59 geladen, und dementsprechend ermittelt der Steuerkreis 27 nach Empfang des Koinzidenzsignals von der Vergleichsschaltung 51 den Ladezustand des Spritz-Start-Signals und gibt ein Betriebsstartsignal an die Antriebseinrichtung 60. Die Antriebseinrichtung 60 liefert auf Empfang des Betriebsstartsignals Spritzfarbe an die Düse 57, und dementsprechend wird Farbe aus der Düse 57 in der Position P 1 auf das Werkstück W gespritzt. Diese Vorgänge laufen anschließend in gleicher Weise an den Positionen P 2, . . ., P i , P (i+1), . . ., P n ab, auf die Düse 57 nacheinander gebracht wird, so daß dabei jeweils die notwendige Farbe auf das Werkstück W gesprüht wird. Nach dem Positionieren auf die Position P n wird der Inhalt des Registers 59 geprüft, und wenn das Spritz-Stopp-Signal darin geladen ist, dann liefert der Steuerkreis 27 ein Betriebsstoppsignal an die Antriebseinrichtung 60. Diese unterbricht die Farbzuführung bei Empfang des Betriebsstoppsignals, so daß der Spritzvorgang an der Düse 57 aufhört.
Die grundsätzliche Betriebsweise für die lineare Interpolation wird auf diese Weise ausgeführt, und der Oberflächenpolationsbetrieb bezüglich der zu bearbeitenden Oberfläche Wa wird nachfolgend beschrieben.
Zunächst sind im ersten Oberflächeninterpolationsbetrieb die Punkte P 0, P 1, P 2, P 3, P 4 und P 5 bereits eingelernt worden, wie in Fig. 2 gezeigt, und in der Speichereinrichtung 30 gespeichert. Der Steuerkreis 27 liest die Positionsdaten P 0 bis P 5 jeweils aus der Speichereinrichtung 30 aus, wenn der Startschalter 44 gedrückt wird. Die digitale Interpolationsschaltung 50 berechnet die Positionen für die Punkte P 231, P 232, P 233, P 234 und P 235, die auf der Linie verteilt sind, die die Punkte P 2 und P 3 miteinander verbindet, um die Durchlaufzahl n 1 aus der Durchlaufzahl n 1, z. B. 7, und die Oberflächenzahl m 1, z. B. 1 zu erhalten, die bereits auf die gleiche Weise, wie die lineare Interpolation, die oben beschrieben wurde, eingelernt und in der Speichereinrichtung 30 gespeichert sind, und die so berechneten Positionen werden in der Speichereinrichtung 30 aufgezeichnet. Auf die gleiche Weise liest die digitale Interpolationsschaltung 50 die Größen von P 1, P 4 aus der Speichereinrichtung 30 aus, berechnet die Positionen der Punkte P 141, P 142, P 143, P 144 und P 145 auf der Linie, die die Punkte P 1 und P 4 miteinander verbindet. Die so berechneten Positionen werden dann in der Speichereinrichtung 30 gespeichert. Sodann berechnet die Schaltung, wie benötigt, die Interpolationspunkte auch auf der Linie, die die Punkte P 0 und P 1 miteinander verbindet und zeichnet diese auf. Sie berechnet dann weiterhin die Interpolationspunkte auf der Linie, die den Punkt P 1 und P 2 miteinander verbindet, basierend auf der bereits eingelernten Interpolationszahl N, und zeichnet diese auf. Auf die gleiche Weise berechnet sie anschließend die Interpolationspunkte, basierend auf der Interpolationszahl N auf der Linie, die den Punkt P 231 und P 141 miteinander verbindet, auf der Linie, die den Punkt P 142 mit dem Punkt P 232 verbindet, auf der Verbindungslinie zwischen den Punkten P 233 und P 143, auf der Verbindungslinie zwischen den Punkten P 144 und P 234, auf der Verbindungslinie zwischen den Punkten P 235 und P 145 und auf der Verbindungslinie zwischen den Punkten P 4 und P 3 und zeichnet diese Werte auf. Auf diese Weise können Interpolationspunkte auf der zu bearbeitenden Oberfläche Wa erhalten werden, die von den Punkten P 1, P 2, P 3 und P 4 umgeben sind, basierend auf dem ersten Muster einer Oberflächeninterpolation, wie sie in Fig. 2 darstellt ist.
In Fig. 2 sind solche Punkte, die zwischen zwei Punkten auf der Grundlage der Interpolationszahl N interpoliert worden sind, durch ein Dreieck-Symbol gekennzeichnet, während die Punkte, die zwischen zwei Punkte auf der Grundlage der Durchlaufzahl interpoliert worden sind, durch Kreuz-Symbole gekennzeichnet sind. Die Bewegungsrichtung der Düse 57 ist durch Pfeile gekennzeichnet. Entsprechendes gilt für Fig. 3.
Die Interpolationspunkte werden auf einer identischen, zu bearbeitenden Oberfläche Wa auf der Grundlage eines zweiten Musters einer Oberflächeninterpolation bestimmt, die in Fig. 3 dargestellt ist. Wie Fig. 3 zeigt, ist die Ausführung der Interpolation auf der Grundlage des zweiten Musters grundsätzlich vergleichbar der Ausführung in Fig. 2. Da jedoch der Endpunkt bei der Ausführung des ersten Musters der Punkt P 3 ist, liegt der Startpunkt für das zweite Muster ebenfalls am Punkt P 3. Es wird dann die Durchlaufzahl n 2 auf "4" eingestellt, während die Interpolationszahl N 2 ebenfalls auf "4" eingestellt wird.
Auf diese Weise ist eine Reihe von Oberflächeninterpolationen an der zu bearbeitenden Werkstückoberfläche Wa ausgeführt worden. Während in der obigen Beschreibung die Oberflächenzahl gleich 2 ist, d. h. die Oberflächeninterpolation entsprechend dem ersten Muster und die Oberflächeninterpolation entsprechend dem zweiten Muster an der identischen Oberfläche ausgeführt wurden, kann die Oberflächeninterpolation auch nur gemäß demm ersten Muster ausgeführt werden, oder es können andererseits Oberflächeninterpolationen an der identischen Oberfläche auch entsprechend anderer als der ersten und zweiten oben beschriebenen Muster ausgeführt werden, je nach zu bearbeitendem Gegenstand. Der Steuerkreis 27 beginnt dann mit dem Auslesen des nächsten Positionssignals usw. aus der Speichereinrichtung 30. Da das Betriebsendesignal an der Adresse nach dem Speichern der Adresse für das Positionssignal usw. bezüglich der Lernposition P n eingeschrieben wird, vervollständigt der Steuerkreis 27 den Repetiersteuerbetrieb bei Ermittlung der Auslesung des Betriebsendesignals, und wird auf die Standby-Position P 5 gesetzt, um dort das Erscheinen des nächsten Startsignals zu erwarten. Der Steuerkreis 27 bestätigt nach der Ermittlung der Auslesung des Betriebsendesignals, daß der Repetierbetrieb normal ausgeführt worden ist, indem er den Speicherinhalt prüft, der an der "0"-Adresse der Speichereinrichtung 30 gespeichert ist, d. h., er prüft die Zahl n+1 für die Lernposition und den gezählten Inhalt in dem Zählkreis 38.
Obgleich in dem oben beschriebenen Repetierbetrieb auf eine digitale Interpolation Bezug genommen wird, die beide Fälle linearer Interpolation und Oberflächeninterpolation ausführt, ist diese Erfindung keinesfalls auf diese Fälle beschränkt, sondern es ist auch möglich, nur die digitale Interpolation auf der Grundlage der zum Zeitpunkt des Abschlusses des Lernvorgangs erhaltenen Lerndaten auszuführen, alle errechneten Ergebnisse in der Speichereinrichtung 30 zu speichern und die Düse 57 beim Repetierbetrieb zu positionieren, indem lediglich die Positionsdaten ausgelesen werden, die man als Ergebnis der Berechnung aus der Speichereinrichtung 30 erhält. Auf diese Weise kann die Betriebsgeschwindigkeit des Industrieroboters weiter gesteigert werden.
Diese Erfindung ist weiterhin auch auf einen Industrieroboter anwendbar, der in einem Polarkoordinatensystem positionsgesteuert ist, oder auf einen Industrieroboter der in einem kartesischen Koordinatensystem positionsgesteuerte ist.
Obgleich die vorangehend beschriebene Ausführungsform dazu eingerichtet ist, den Repetierbetrieb kontinuierlich sequentiell auszuführen, ist die Erfindung auf ein solches Ausführungsbeispiel nicht beschränkt. Beispielsweise kann der Industrieroboter nach der vorliegenden Erfindung auch so aufgebaut sein, daß ein Zwischenstoppschalter 61 als Korrektureinrichtung an einem tragbaren Korrigierer 34 angeordnet ist, wodurch der Betrieb des Steuerkreises 27 unterbrochen werden kann, bevor das neue Positionssignal ausgelesen wird, indem man den Schalter 61 beim Repetierbetrieb betätigt. Die Position, auf die die Düse 57 eingestellt wird, nachdem der Steuerbetrieb des Steuerkreises 27 unterbrochen worden ist, kann zusätzlich neu eingelernt werden. Wenn auf diese Weise ein Stoppschalter 61 so angeordnet ist, daß der Repetierbetrieb an jeder gewünschten Position unterbrochen werden kann, dann läßt sich die Lernposition ändern. Im Falle, daß eine spezifische Lernposition bei dieser Änderung unterdrückt werden soll, werden Positionssignale usw. der Lernposition, die der zu unterdrückenden Lernposition am nächsten liegen, an jeder der Adressen in der Speichereinrichtung 30 gespeichert, in denen die Positionssignale usw., die sich auf die zu unterdrückende Lernposition beziehen, gespeichert sind, und die Positionssignale an den nachfolgenden Lernpositionen können nacheinander hinaufgeschoben und an jeder der Adressen in der Speichereinrichtung 30 gespeichert werden. Wenn andererseits die Lernposition gesteigert werden soll, dann wird der Schalter 61 an einer Position, die um eine Stelle vor der zu steigernden Position liegt, während des Repetierbetriebs des Steuerkreises 27 angehalten, die zu steigernde Position wird im Lernbetrieb eingelernt, und Positionssignale usw. entsprechend der nachfolgenden Lernpositionen werden in entsprechend nach unten geschobenen Speicheradressen gespeichert. Der Auslesepunkt der richtigen Lernposition aus der Speichereinrichtung 30 beim Repetierbetrieb kann durch die Anzeigen 39 und 41 betätigt werden, die den Zählwert des Zählkreises 38 wiedergeben.
Mit Hilfe des Schalters 61 kann jede der Lernpositionen modifiziert werden und es kann außerdem die Anzahl der Lernpositionen gesteigert oder vermindert werden, um sich allen Verwendungszwecken in hervorragender Weise anzupassen. Es ist weiterhin möglich, nur die Positionssignale und dgl. für eine beliebige Position in der Speichereinrichtung 30 im Lernbetrieb zu speichern und die Lernvorgänge für alle anderen Lernpositionen in Form eines Korrekturbetriebes der vorbeschriebenen Art auszuführen. Weiterhin können ein Schrittbetriebsanzeigeschalter 62 und ein Kontinuitätsbetriebsanzeigeschalter 63 an dem Korrigierer 34 vorgesehen sein, und der Steuerkreis 27 kann so aufgebaut sein, daß nach Betätigung des Schalters 61 im Repetierbetrieb die Düse 57 schrittweise auf jede Lernposition bei jeder Betätigung des Schalters 62 bewegt wird, oder daß die Düse 57 während der Betätigung des Schalters 63 kontinuierlich bewegt wird. Außerdem kann ein Schalter 64 zur Bestimmung eines umgekehrten Repetierbetriebs vorgesehen sein, so daß der Repetierbetrieb in umgekehrter Richtung stattfindet, beispielsweise von P n ausgehend über P n-1, . . ., P 2, P 1 wenn der Schalter 64 betätigt wird. Weiterhin kann die Anordnung so ausgeführt sein, daß der erforderliche Verschiebeweg der Düse 57 in den vertikalen und horizontalen Richtungen durch einen Positionseinsteller 65 eingestellt werden können, der in dem Korrigierer 34 angeordnet ist, ohne Rücksicht auf die Positionssignale, die in der Speichereinrichtung 30 gespeichert sind, um die Düse 57 auf der Grundlage des eingestellten Verschiebeumfangs zu bewegen. Der Industrieroboter nach dieser Erfindung ist nicht auf nur diese Anwendungsfälle, d. h. auf das Lackieren beschränkt, sondern kann auch beim Schweißen verwendet werden, wobei eine Schweißflamme mit Hilfe des Hauptkörpers des Industrieroboters bewegt wird. Vielfältige weitere Einsatzmöglichkeiten sind denkbar.
Obgleich die obigen Erläuterungen bezüglich des Lernbetriebs und des Repetierbetriebs anhand eines Beispiels gegeben worden sind, bei dem das zu lackierende Werkstück W stationär gehalten wird, kann die Erfindung doch auch eine Bewegung des zu lackierenden Werkstücks W beim Lernvorgang und beim Repetiervorgang vorsehen. Sie kann dann so aufgebaut sein, daß der Steuerkreis 27 den Impuls vom Impulsgenerator 71 zum Schalterkreis 74 zuführt, wenn das zu lackierende Werkstück W an dem Detektor 72 vorbeiläuft, und der Schalterkreis 74 gibt dann den so zugeführten Impuls an den Zählkreis 49, wodurch der Lernbetrieb und der Repetierbetrieb synchron mit der Bewegung des Förderbandes 70 in Richtung X ausgeführt werden können. Alternativ kann die Erfindung so eingerichtet sein, daß der Impuls vom Impulsgenerator 48 durch Betätigung des Schalters 73 von dem Schalterkreis 74 abgegeben wird, welcher Schalter 73 an der Bedientafel 40 angeordnet ist, so daß der Lernbetrieb und der Repetierbetrieb ohne Synchronisation mit der Bewegung des Förderbandes 70 in der Richtung ausgeführt werden können.
Es ist oben beschrieben worden, daß gemäß der vorliegenden Erfindung viele Interpolationspositionen auf der zu bearbeitenden Oberfläche bestimmt werden, indem lediglich wenigstens vier Positionssignale eingelernt werden, die man in diskreter Art beim Lernbetrieb auf der bearbeitenden Oberfläche erhält. Der Umfang beim Einlernen des Roboters ist demnach gering, die Lernzeit kann bemerkenswert verkürzt und die Belastung der Bedienperson erleichtert werden. Da dann die Positionierung auf der Grundlage einer Vielzahl von Interpolationspositionen ausgeführt wird, die man auf die oben erläuterte Weise erhält, läßt sich der Positionierbetrieb sanft und gleichmäßig ausführen. Da die Anzahl der Unterteilungen von Distanzen nach Wunsch gewählt werden kann, läßt sich eine sehr feine Steuerung erzielen, wenn dies gewünscht wird. Komplizierte Bewegungsverläufe sind daher ebenfalls ausführbar.
Es ist lediglich notwendig, den Lernbetrieb für wenigstens vier Punkte bei dem dargestellten Beispiel auszuführen. Nur vier Punkte müssen wieder eingelernt werden, und die digitale Interpolation kann auf deren Grundlage ausgeführt werden, wenn die zu bearbeitende Oberfläche ausgetauscht wird, und dementsprechend kann die Bearbeitung mit relativ kleinem Zeitverlust beim Neueinlernen ausgeführt werden, selbst wenn die zu bearbeitenden Flächen sehr häufig ausgetauscht werden.
Da weiterhin die erforderliche Änderung der Position einfach mit Hilfe des Korrigierers ausgeführt werden kann, läßt sich die Arbeitseffektivität verbessern und die Produktivität bemerkenswert steigern.

Claims (4)

1. Industrieroboter, enthaltend:
einen Hauptkörper mit einer Mehrzahl beweglicher Glieder, die gelenkig miteinander verbunden sind, gekennzeichnet durch eine Detektoranordnung (14-18) zum Ermitteln der Relativpositionen zwischen den beweglichen Gliedern (2-5) an jedem der Gelenke,
eine Bestimmungsschaltung (27) zum Bestimmen von Positionssignalen der Detektoranordnung (14-18) beim Lernbetrieb,
eine Speichereinrichtung (30) zum aufeinanderfolgenden Speichern von Positionssignalen, die von der Bestimmungsschaltung (27) bestimmt worden sind, eine digitale Interpolationseinrichtung (50) zum Ausführen einer Interpolation auf der Grundlage von wenigstens vier aus der Speichereinrichtung (30) ausgelesenen Positionssignalen, um eine benötigte Anzahl gewünschter Positionen auf einer Ebene zu bestimmen, die von Punkten (P 1-P 4) entsprechend der vier Positionssignale umgeben ist, und
eine Servoeinrichtung zum Positionieren jedes der beweglichen Glieder des Roboterhauptkörpers (1) unter Verwendung eines Berechnungsergebnissignals aus der digitalen Interpolationseinrichtung (50) als Sollwerte und der Positionssignale von der Detektoranordnung (14-18) als laufende Werte beim Repetierbetrieb.
12. Industrieroboter nach Anspruch 1, dadurch gekennzeichnet, daß die Bestimmungsschaltung einen Schalter (37) enthält, der an dem Industrieroboterhauptkörper (1) angeordnet und dazu eingerichtet ist, die Positionssignale von der Detektoranordnung (14-18) durch Betätigung desselben zu bestimmen und in der Speichereinrichtung (30) zu speichern.
3. Industrieroboter nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß eine Einstelleinrichtung (35) vorhanden ist, mit der die Anzahl von Interpolationspositionen auf der Ebene, für die eine Interpolation durch die digitale Interpolationseinrichtung (50) ausgeführt wird, wahlfrei eingestellt werden kann.
4. Industrieroboter nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß ein Generator (48) zum Erzeugen von Impulsen vorgesehen ist, die den Beginn der Ausführung der digitalen Interpolation in bezug auf jede der Positionen auf der Ebene (Wa) definieren, und daß ein Intervall für das Auftreten der Impulse durch den Generator (48) nach Wunsch veränderlich eingestellt werden kann.
DE19863635265 1985-10-18 1986-10-16 Industrieroboter Granted DE3635265A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60232773A JPS6293710A (ja) 1985-10-18 1985-10-18 工業用ロボツト

Publications (2)

Publication Number Publication Date
DE3635265A1 true DE3635265A1 (de) 1987-04-23
DE3635265C2 DE3635265C2 (de) 1992-08-06

Family

ID=16944511

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19863635265 Granted DE3635265A1 (de) 1985-10-18 1986-10-16 Industrieroboter

Country Status (3)

Country Link
US (1) US4743819A (de)
JP (1) JPS6293710A (de)
DE (1) DE3635265A1 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4868473A (en) * 1987-02-24 1989-09-19 Mitsubishi Denki Kabushiki Kaisha Industrial robot device including a robot and a processing machine
JP2511072B2 (ja) * 1987-10-23 1996-06-26 三菱重工業株式会社 ロボットにおける教示デ―タの記録・再生方法
US5222198A (en) * 1988-05-06 1993-06-22 Kabushiki Kaisha Yaskawa Denki Seisakusho Control method and apparatus for a robot having multi-rotating axes
JP2512099B2 (ja) * 1988-08-24 1996-07-03 松下電器産業株式会社 ロボットの動作教示方法および制御装置
JP2735126B2 (ja) * 1988-12-27 1998-04-02 キヤノン株式会社 ロボットの制御方法及びその制御装置
US5600759A (en) * 1989-03-20 1997-02-04 Fanuc Ltd. Robot capable of generating patterns of movement path
JPH02250783A (ja) * 1989-03-20 1990-10-08 Fanuc Ltd 溶射ロボットの溶射方式
US5760560A (en) * 1993-10-21 1998-06-02 Fanuc, Ltd. Robot apparatus
DE19827155A1 (de) * 1998-06-18 1999-12-23 Roman Eissfeller Verfahren und Vorrichtung zum Bearbeiten von Bauteilen
EP0970811B1 (de) * 1998-07-06 2005-09-21 L.A.C. Corporation Automatische Beschichtungsvorrichtung
JP3903617B2 (ja) * 1998-11-16 2007-04-11 松下電器産業株式会社 ロボットの制御方法および制御システム
US20050053909A1 (en) * 2003-09-08 2005-03-10 Chan Kwok Hung Learn-and-play programming method for motorized toys and domestic appliances
JP2006099260A (ja) * 2004-09-28 2006-04-13 Fanuc Ltd ロボットプログラム作成装置
CN101309783B (zh) * 2005-11-16 2013-09-11 Abb股份有限公司 控制装有定位开关的工业机器人运动的方法、装置、***及其应用
JP6690213B2 (ja) * 2015-12-09 2020-04-28 セイコーエプソン株式会社 ロボット、制御装置およびロボットシステム
JP7057952B2 (ja) * 2020-04-28 2022-04-21 トヨタ自動車株式会社 可動式乾燥システム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2344108A (en) * 1939-08-17 1944-03-14 Vilbiss Co Means for moving spray guns or other devices through predetermined paths
DE2916702A1 (de) * 1978-04-26 1979-10-31 Fujitsu Fanuc Ltd Steuerung fuer einen industrieroboter
US4385358A (en) * 1979-10-19 1983-05-24 Tokico Ltd. Robot
US4420812A (en) * 1979-09-14 1983-12-13 Tokico, Ltd. Teaching- playback robot

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5577974A (en) * 1978-12-11 1980-06-12 Tanaka Seisakusho:Kk Operation control system of tracing device
JPS5717015A (en) * 1980-07-04 1982-01-28 Hitachi Ltd Robot control method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2344108A (en) * 1939-08-17 1944-03-14 Vilbiss Co Means for moving spray guns or other devices through predetermined paths
DE2916702A1 (de) * 1978-04-26 1979-10-31 Fujitsu Fanuc Ltd Steuerung fuer einen industrieroboter
US4420812A (en) * 1979-09-14 1983-12-13 Tokico, Ltd. Teaching- playback robot
US4385358A (en) * 1979-10-19 1983-05-24 Tokico Ltd. Robot

Also Published As

Publication number Publication date
US4743819A (en) 1988-05-10
DE3635265C2 (de) 1992-08-06
JPS6293710A (ja) 1987-04-30

Similar Documents

Publication Publication Date Title
DE3635265C2 (de)
DE3039094C2 (de) Manipulator
DE3344633C2 (de)
DE3034244A1 (de) Lernfaehiger roboter
DE69216167T2 (de) Gerät zur Steuerung eines Industrieroboters zur Durchführung koordinierter Arbeitsvorgänge unter Verwendung eines Playbackteachingverfahrens und dies-bezügliches Verfahren
DE3317263C2 (de)
DE2712169C2 (de) Verfahren zur Ausführung einer komplexen Bewegung durch einen Industrieroboter
DE2526504C3 (de) Verfahren zur Erstellung eines Programms für die rechnergeführte Steuerung der Arbeitsfunktionen und der Bewegung eines Roboterarmes und Vorrichtung zur Durchführung des Verfahrens
DE2330054C2 (de) Vorrichtung zur Steuerung der Bewegung eines Arbeitselementes eines Roboterarmes
DE10255037A1 (de) Verfahren und Vorrichtung zum Bearbeiten eines Werkstücks
DE3208435C2 (de) Steuerungsvorrichtung zum Führen eines Lichtbogenschweißautomaten
CH678506A5 (de)
DE2709335A1 (de) Programmierbarer manipulator
DE2402829B2 (de) Numerisch arbeitende Programmsteuerung für einen Manipulator
DE3236127A1 (de) Verfahren und steuerung eines industrieautomaten
EP0249171B1 (de) Verfahren zur Programmsteuerung insbesondere eines Industrieroboters für die selbsttätige Beschichtung von Werkstücken
DE69313590T2 (de) Verfahren zum Steuern des Betriebs eines Roboterarms
DE69420170T2 (de) Verfahren und Vorrichtung für eine numerisch gesteuerte Industriemaschine
DE3889981T2 (de) Roboterregelanordnung.
DE69122185T2 (de) Verfahren und Vorrichtung zum Steuern eines Gelenkroboters mit Redundanz
DE69218401T2 (de) Verfahren zur korrektur des kopfendes des werkzeuges
DE3931964A1 (de) Robotersteuerung fuer den bewegungsablauf mindestens eines von einem stellglied angesteuerten arbeitsgeraetes
DE69207018T2 (de) Verfahren zur Führung eines Roboterarmes durch definieren von Ersatzstrecken
DE3625914C2 (de)
DE69022407T2 (de) Nachfolgesteuerungssystem für eine zusätzliche roboterachse.

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8363 Opposition against the patent
8366 Restricted maintained after opposition proceedings
8305 Restricted maintenance of patent after opposition
D4 Patent maintained restricted
8339 Ceased/non-payment of the annual fee