DE3635265C2 - - Google Patents

Info

Publication number
DE3635265C2
DE3635265C2 DE3635265A DE3635265A DE3635265C2 DE 3635265 C2 DE3635265 C2 DE 3635265C2 DE 3635265 A DE3635265 A DE 3635265A DE 3635265 A DE3635265 A DE 3635265A DE 3635265 C2 DE3635265 C2 DE 3635265C2
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.)
Expired - Fee Related
Application number
DE3635265A
Other languages
English (en)
Other versions
DE3635265A1 (de
Inventor
Junji Yokohama Kanagawa Jp 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)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Spray Control Apparatus (AREA)
  • Manipulator (AREA)

Description

Die vorliegende Erfindung bezieht sich auf einen Industrieroboter gemäß Oberbegriff des Anspruchs 1.
Ein solcher Industrieroboter ist in der Technik bekannt (US 43 85 358). Wenn beispielsweise mit Hilfe eines Industrieroboters dieser Art Lackierar­ beiten 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 Oberfläche bewegt, um einen Spritzvorgang an dem zu lackierenden Werkstück zu simulieren, und gleichzeitig wird Information über diesen simulierten Vorgang, die in vorbestimmten Entfernungsabständen aus­ gegeben wird, in einem Speicher gespeichert, was im all­ gemeinen 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 erzeugt, indem das Intervall zwischen zwei 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 Play­ backbetrieb 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 bear­ beiteten 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 Information über die Bearbeitung, die dem Roboter be­ reits vermittelt worden ist, wird weiterhin in der Weise ausgeführt, daß ein ähnlicher Lernvorgang erneut durch­ gefü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 der eingangs genannten Art 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 Kennzeichnungsteil des Anspruchs 1 angegebenen Merkmale 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 Be­ stimmung 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 In­ dustrieroboters nach Fig. 4;
Fig. 6 eine Seitenansicht des Hauptkörpers des Industrieroboters nach Fig. 4;
Fig. 7 ein Blockschaltbild für elektrische und hy­ draulische 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₁, P₂, P₃ und P₄ einlernt, die die Fläche Wa umgeben, die bearbeitet werden soll, wie Fig. 1 zeigt. Weiterhin werden zusätzlich zu den we­ nigstens vier Positionsdaten die Anzahl der Hin- und Herbewegungen eines Werkzeugs, beispielsweise einer Spritzdüse, über die zu bearbeitende Oberfläche, die An­ zahl der Durchgänge, die Anzahl der Interpolationsstel­ len 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 wenig­ stens 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 bevor­ zugten 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 Winkelbereichs 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 Ge­ lenks 8 verbunden ist. Der Arm 3 ist gegenüber dem Ständer 4 innerhalb eines Winkelbereiches 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 verbunden, 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 ge­ genüber dem 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 ver­ bunden, um den Ständer 4 gegenüber dem Sockel 5 inner­ halb der Winkelbereiche D und E verschwenken bzw. ver­ drehen 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 ermit­ teln 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 Potentiometer 17 und 18 sind dem Gelenk 8 zu­ geordnet, 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 vom Kopf 2 beim Repe­ tierbetrieb 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 ver­ stärkt. Die jeweiligen Signale von den Potentiometern 14-18, die der Eingangsschaltung 21 zugeführt werden, gelangen an eine Wählschaltung oder einen Analogmulti­ plexer 26. Die Potentiometer 14, 15, 16, 17 und 18 und die Eingangsschaltung 21 bilden eine Detektoreinrich­ tung.
Die Wählschaltung 26 wählt nacheinander die Positions­ signale aus, die von den 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 Positions­ signale mit Hilfe des Steuersignals vom Steuerkreis 27 beim Lernbetrieb einer Speichereinrichtung 30 zu. Sie liefert Positionsdatensignale, Interpolationszahlsignale, Durchlaufzahlsignale, Interpolationsoberflächen­ zahlsignale 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 Positionsignale, das vom A/D-Wandler 28 über die Schaltung 29 zur Steuerung der Signalübertragung zugeführt worden ist, die Interpola­ tionszahlsignale, die von dem in einem Korrigierer 34 angeordneten Interpolationszahleinsteller 35 zugeführt werden, Durchlaufzahlsignale und Interpolationsober­ flächenzahlsignale, die von einem Tastenfeld 25 auf einer Bedientafel 40 eingegeben werden, und Spritz­ lackier-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 P i . Dies erfolgt sequentiell.
Ein Schalter 37 als eine Bestimmungsschaltung zur Be­ stimmung der Lernposition P i am zu lackierenden Gegen­ stand 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 Speicherein­ richtung 30 unter der Steuerung durch das Betätigungs­ signal 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 numeri­ schen Anzeige 41, die an der Bedientafel 40 der Steuer­ tafel 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 Positionsda­ tensignalen bezüglich der Lernposition P i erzeugt wird, weiterhin das Interpolationszahlsignal, das Durchlauf­ zahlsignal, das Oberflächenzahlsignal und das Spritz- Start/Stopp-Signal beim Repetierbetrieb. Das heißt, die Zählschaltung 38 zählt beim Repetierbetrieb (Playback­ betrieb) 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 Ar­ beitspunkt 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 Hydraulikdruckquellenein­ schalter 42, ein Lern/Repetiermode-Umschalter 43, ein Startschalter 44, ein Stoppschalter 45 und ein Betriebs­ geschwindigkeitseinsteller 46, der ein einstellbarer Wi­ derstand 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 Hydraulikdruckquelle 47 unterbricht, wenn der Schal­ ter 42 ausgeschaltet wird. Das Ein/Aus-Signal vom Schalter 43 wird dem Steuerkreis 27 zugeführt, und der Steu­ erkreis 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 Lernbe­ triebsart 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 Repetierbe­ trieb synchronisiert. Die vom Generator 48 erzeugten Im­ pulse 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 Interpola­ tionsschaltung 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 Impulsgene­ rator 48 und der Zählschaltung 49 unter der Steuerung durch den Steuerkreis 27 zugeführt werden. Die Ver­ gleichsschaltung 51 vergleicht das in dem Register 33 geladene Interpolationszahlsignal mit dem Zählwert der Zählschaltung 49, und wenn keine Differenz bei dem Ver­ gleich ermittelt wird, dann gibt sie ein Null-Signal an den Steuerkreis 27. In diesem Fall werden Positionssig­ nale in die Register 31 und 32 geladen, während das In­ terpolationszahlsignal beim Repetierbetrieb in das Re­ gister 33 geladen wird.
Die digitale Interpolationsschaltung 50 führt eine lineare Interpolation zwischen den Lernpositionen P i und P (i+1) aus, um den Wert davon von jedem der Werte X ai -X ei für die Positionssignale an der i-ten Lernpo­ sition P i 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 Interpolations­ zahlsignal 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 X ar bezüglich des Bereichs des Winkels A an der Interpolationsstelle zwischen den Positionen P i und P (i+1) bei jedem Auftreten eines Impulses vom Generator 58 zu bestimmen, basierend auf dem Wert X ai für das Positionssignal vom Register 31, dem Wert Xa (i+1) für das Positionssignal vom Regi­ ster 32, dem Wert N (i+1) für das Interpolationszahlsig­ nal vom Register 33 und vom gezählten Wert von der Zähl­ schaltung 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 Berechnungs­ ergebnissignals hält. Die digitale Interpolationsschal­ tung 50, der D/A-Wandler 52 und die analoge Speicher­ schaltung 53 bilden eine digitale Interpolationseinrich­ tung. Die digitale Interpolationseinrichtung ist jeweils entsprechend der Positionssteuerung innerhalb des Win­ kels 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 Berechnungsergebnissignals 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 zuge­ führter laufender Wert mit dem Positionssignal als Soll­ wert von der Speicherschaltung 53 beim Repetierbetrieb und führt das Differenzsignal als das Ergebnis des Ver­ gleiches jeweils einem Servoverstärker 55 zu. Der Ver­ stärker 55 verstärkt das so zugeführte Differenzsignal in geeigneter Weise und liefert das so verstärkte Diffe­ renzsignal 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 Servoein­ richtung bezüglich der Positionssteuerung beispielsweise des Kopfes 2 innerhalb des Winkelbereichs A, und die Po­ sition des Kopfes 2 als das bewegliche Element wird auf die aufeinanderfolgend dem Komparator 54 eingegebenen Sollwerte eingestellt. Die Servoschaltungen 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 ange­ ordnet. Das Spritz-Start/Stopp-Signal, das beim Lernbe­ trieb vom Schalter 58 erzeugt wird, wird über den Steu­ erkreis 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 ausgelesen 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ähl­ kreis 26, der Steuerkreis 27, der A/D-Wandler 29, die Schaltung zur Steuerung der Signalübertragung, die Spei­ chereinrichtung 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 Hy­ draulikdruckquelle 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 geben, um diesen in den 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₀ 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 ge haltenen Werkstück W ausgeführt wird, sei doch betont, daß der Lehrbetrieb auch beispielsweise an einem bewegten Werkstück W ausgeführt werden kann. Die Positions­ signale, die von den Potentiometern 14-18 an der Position P₀ bei Betätigung des Schalters 37 abgegeben werden, werden jeweils in der Speichereinrichtung 30 ge­ speichert. 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ähl­ schaltung 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 be­ wirken, daß die von der Schaltung 29 für die Steuerung der Signalübertragung gesendeten Positionssignale nach­ einander in vorbezeichnete Speicheradressen gespeichert werden, beispielsweise als das Positionssignal vom Po­ tentiometer 14 in die erste Adresse, das Positionssignal vom Potentiometer 15 in die zweite Adresse usw. nach­ einander, bis zum Positionssignal vom Potentiometer 18 in die fünfte Adresse. Im Falle des Lernbetriebs an der Position P₀ schreibt der Steuerkreis 27, wenn der Schal­ ter 58 nicht betätigt wird, das Spritz-Stopp-Signal in die sechste Adresse der Speichereinrichtung 30.
Der Steuerkreis 27 speichert weiterhin das Interpola­ tionszahlsignal, das in den Interpolationzahleinsteller 35 eingestellt ist, in die siebente Adresse der Spei­ chereinrichtung 30. Der Interpolationszahleinsteller 35 enthält einen Digitalschalter, der eine Dezimalanzeige hat, und kann auf Wunsch die Werte beispielsweise von 2 bis 40 als der Wert N für das Interpolationszahl­ signal eingestellt werden, und die eingestellten Werte werden in eine Binärzahl umgewandelt und als das Inter­ polationszahlsignal 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ähl­ schaltung 38 die Größe "1" nach dem Lernbetrieb der Po­ sition P₀ an.
Wenn dann der Griff 19 bewegt und die Düse 57 in die zweite Lernposition P₁ bewegt wird, dann wird der Schalter 37 erneut betätigt, und Positionssignale von den Po­ tentiometern 14-18 an der Position P₁ 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 Be­ ginns des Aufsprühens von Farbe durch die Düse 57 auf das Werkstück W bei der Position P₁ wird der Schalter 58 betätigt, wodurch das Spritz-Start-Signal in der Spei­ chereinrichtung 30 eingespeichert wird. Auf gleiche Weise, wie oben beschrieben, wird weiterhin der gezählte Wert im Zählkreis 38 nach dem Lernbetrieb in der Posi­ tion P₁ um 1 erhöht, und der auf den Anzeigen 39 und 41 dargestellte Wert ist daher nun "2". Die beschriebenen Prozeduren werden in gleicher Weise nachfolgend ausgeführt, wenn die Düse 57 in die Positionen P₂, ..., 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 einge­ speichert. 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 Ober­ flächeninterpolation an der zu bearbeitenden Werkstück­ oberfläche Wa lehrt dementsprechend die Bedienperson zu­ nächst die Positionen für die Punkte P₁, P₂, P₃ und P₄, die die zu bearbeitende Oberfläche Wa am Werkstück W um­ geben, wie in Fig. 1 gezeigt. P₀ ist der Startpunkt und P₅ ist eine Warteposition. Der Lernbetrieb bezüglich der Punkte P₀ bis P₅ wird in der gleichen Weise ausgeführt, wie für P i , wie oben entsprechend beschrieben, und die Ergebnisse werden jeweils in der Speicher­ einrichtung 30 eingespeichert.
Gleichzeitig werden ein Ort, der sich vom Punkt P₁ zum Punkt P₂ auf der zu bearbeitenden Oberfläche Wa des Werkstücks W bewegt, d. h. eine Querdurchlaufzahl n₁ und die Oberflächenzahl m₁, wie in Fig. 2 gezeigt, einge­ stellt. Dann werden die Durchlaufzahl n₂ und die Ober­ flächenzahl m₂ 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ängs­ durchlaufzahl wird als n₂ eingestellt. Die Oberflächen­ zahl, 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 Spei­ chereinrichtung 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 Pum­ pe 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 Repetierbe­ trieb. Zunächst liefert der Steuerkreis 27 ein Rücksetz­ signal an den Zählkreis 38 bei Empfang des Betriebssig­ nals vom Schalter 44, um den in dem Zählkreis 38 gezählten Wert zu löschen, und liefert gleichzeitig ein Steu­ ersignal zum Auslesen der in der Lernposition P₀ gespei­ cherten Positionssignale, des Interpolationszahlsignals, des Spritz-Start/Stopp-Signal, des Durchlaufsignals und des Oberflächensignals 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 ge­ laden werden. Gleichzeitig gibt der Steuerkreis 27 ein Steuersignal an die Register 32 und 31, so daß die zuvor in dem Register 32 geladenen Positionssignale in das Re­ gister 31 umgeladen werden. Der Wert des zuvor im Re­ gister 32 geladenen Positionssignals ist eine binäre "0", wenn der Steuerkreis 27 so eingerichtet ist, daß er die Inhalte in den Register 31, 32 usw. unmittelbar beim Empfang des Startsignals vom Schalter 44 löscht. Zur Vereinfachung der Erläuterung sei jedoch angenommen, daß der Wert X an (der Suffix a meint die Daten bezüglich des Kopfes) für das Positionssignal, das man an der Lernposition P n erhält, zuvor in das Register 32 geladen worden ist. Dementsprechend ist im Register 31 der Wert X an für das Positionssignal geladen, im Register 32 ist der Wert X a 0 für das an der Position P₀ erhaltene Posi­ tionssignal geladen, die Durchlaufzahl n ist im Register 22 geladen, die Oberflächenzahl m ist im Register 23 ge­ laden, die Zahl N₀ 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ührt der Steuerkreis 27 ein Impulserzeugungsstartsignal an den Impulsgenerator 48. Der Impulsgenerator 48 erzeugt dann einen einzelnen Im­ puls. Der erzeuge Impuls wird der digitalen Interpola­ tionsschaltung 50 und dem Zählkreis 49 zugeführt, und der gezählte Wert in dem Zählkreis 49 wird auf 1 ge­ setzt. Die digitale Interpolationsschaltung 50 führt eine digitale Interpolation durch, während sie mit dem Im­ puls 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 aus­ gegeben.
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 Spei­ cherschaltung 53 zugeführt. Der Komparator 54 ver­ gleicht das Positionssignal von dem analogen Speicher­ kreis 53 mit dem laufenden Positionssignal von der Ein­ gangsschaltung 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 n 01, die auf der geraden Linie liegt, die die Positionen P₀ und P n verbindet, wobei die Position P n 01 gegenüber der Position P n in Richtung auf die Position P₀ um den Bruchteil 1/N₀ des Segmentes PP n verschoben ist. Im Falle, daß N₀ gleich 2 ist, liegt diese Position etwa in der Mitte des Segmentes PP n . So­ dann wird nach Verstreichen der Zeit T, die zusätzlich durch den Betriebsgeschwindigkeitseinsteller 46 nach Er­ zeugung des 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 dementsprechend führt beispielsweise die digitale Interpolationsschaltung 50 die folgende Berechnung aus, während sie mit dem zweiten Impuls vom Impuls­ generator 48 synchronisiert wird:
Die Berechnungen werden für den Wert X b 0 für das Posi­ tionssignal des Kopfes 2 innerhalb des Winkelbereiches B auf die gleiche Weise ausgeführt. Ähnliches gilt für den Wert X c 0 für das Positionssignal des Armes 3 innerhalb des Winkelbereiches C, für den Wert X d 0 für das Posi­ tionssignal des Ständers 4 innerhalb des Winkelbereiches D und für den Wert X e 0 für das Positionssignal des Stän­ ders 4 innerhalb des Winkelbereiches E.
Der Impulsgenerator 48 erzeugt eine Serie von Impulsen mit einer bestimmten Periode, während er mit der Steuerun 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₀ gibt, wenn der Wert N₀ 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 Interpola­ tionsschaltung 50 den Wert X a 0 für das Positionssignal als das Ergebnis der Berechnung ab, und andererseits stellt die Vergleichsschaltung 51, die den Inhalt des Registers 33 mit dem in Zählkreis 49 gezählten Wert ver­ gleicht, die Koinzidenz fest und gibt ein Koinzidenzermittlungssignal an den Steuerkreis 27 ab. Der Wert X a 0 für das Positionssignal von der digitalen Interpolationsschaltung 50 wird in ein Analogsignal um­ gewandelt, in der analogen Speicherschaltung 53 gespei­ chert und als ein Sollwert dem Servokreis zugeführt, durch den die Düse 57 auf die Position P₀ gesetzt wird.
Der Steuerkreis 27 gibt auf Empfang des Koinzidenzsig­ nals von der Vergleichsschaltung 51 einen Rücksetzimpuls an den Zählkreis 38 ab, um den gezählten Wert im Zähl­ kreis um 1 zu erhöhen, und gibt andererseits einen Rücksetzimpuls an den Zählkreis 49 ab, um den darin ge­ zä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 Regi­ ster 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₀ nicht bezeichnet ist und dementsprechend das Spritz-Start-Signal in diesem Zeitpunkt nicht in das Register 59 geladen wird, findet kein Farbauftrag 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₁ 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 Regi­ stern 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 Regi­ ster 31 zu überführen. Daher werden das Positionssignal an der Lernposition P₀ in das Register 31 und das Posi­ tionssignal an der Lernposition P₁ in das Register 32 ge­ laden. 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₀ 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 Interpolations­ schaltung 50 führt dieselbe Berechnung aus, wie oben be­ schrieben, wenn sie den einzelnen 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₁ und P₂, beispielsweise in Fig. 2, wird der Wert N für das Inter­ polationszahlsignal als Wert des Nenners verwendet, während die Durchlaufzahl n als Wert für den Nenner verwendet wird, wenn die digitale Interpolation zwischen P₁ und P₄ 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 Win­ kelbereiches C, bezüglich des Wertes für das Positions­ signal 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₁ für das Interpolationszahlsignal für die Lernposition P₁ 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₀ und P₁ miteinander verbindet, wobei die einzelnen Stellen gegeneinander um etwa 1/20 des Segmentes PP₁ zwischen der Position P₀ und der Position P₁ gegeneinander versetzt sind, was jeweils mit der Änderung des Zählwertes in dem Zählkreis 49 einhergeht.
Das Positionssignal von der digitalen Interpolations­ schaltung 50 wird über den D/A-Wandler 52 und den Spei­ cherkreis 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 Ein­ gangskreis 21 als laufender Wert. Wenn der gezählte Wert im Zählkreis 49 den Wert "20" erreicht, gibt die Ver­ gleichsschaltung 51 ein Koinzidenzsignal an den Steuer­ kreis 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 Steu­ ersignal ab. Das das Spritz-Start-Signal in der Speicher­ einrichtung 30 an der Lernposition P₁ gespeichert ist, wird das Spritz-Start-Signal in das Register 59 geladen, und dementsprechend ermittelt der Steuerkreis 27 nach Empfang des Konizidenzsignals 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 Posi­ tion P₁ auf das Werkstück W gespritzt. Diese Vorgänge laufen anschließend in gleicher Weise an den Positionen P₂, ..., P i , P (i+1), ... P n ab, auf die 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-Start-Signal darin geladen ist, dann liefert der Steuerkreis 27 ein Betriebsstoppsignal an die Antriebs­ einrichtung 60. Diese unterbricht die Farbzuführung bei Empfang des Betriebsstoppsignals, so daß der Spritzvor­ gang an der Düse 57 aufhört.
Die grundsätzliche Betriebsweise für die lineare Inter­ polation wird auf diese Weise ausgeführt, und der Oberflächeninterpolationsbetrieb bezüglich der zu bear­ beitenden Oberfläche Wa wird nachfolgend beschrieben.
Zunächst sind im ersten Oberflächeninterpolationsbetrieb die Punkte P₀, P₁, P₂, P₃, P₄ und P₅ bereits eingelernt worden, wie in Fig. 2 gezeigt, und in der Speicherein­ richtung 30 gespeichert. Der Steuerkreis 27 liest die Positionsdaten P₀ bis P₅ jeweils aus der Speicherein­ richtung 30 aus, wenn der Startschalter 44 gedrückt wird. Die digitale Interpolationsschaltung 50 berechnet die Positionen für die Punkte P₂₃₁, P₂₃₂, P₂₃₃, P₂₃₄ und P₂₃₅, die auf der Linie verteilt sind, die die Punkte P₂ und P₃ miteinander verbindet, um die Durchlaufzahl n₁ aus der Durchlaufzahl n₁, z. B. 7, und die Oberflächen­ zahl m₁, 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₁, P₄ aus der Speichereinrichtung 30 aus, berechnet die Positionen der Punkte P₁₄₁, P₁₄₂, P₁₄₃, P₁₄₄ und P₁₄₅ auf der Linie, die die Punkte P₁ und P₄ miteinander verbindet. Die so berechneten Positionen werden dann in der Speichereinrichtung 30 gespeichert. Sodann berechnet die Schaltung, wie benötigt, die Inter­ polationspunkte auch auf der Linie, die die Punkte P₀ und P₁ miteinander verbindet und zeichnet diese auf. Sie berechnet dann weiterhin die Interpolationspunkte auf der Linie, die den Punkt P₁ und P₂ miteinander verbindet, basierend auf der bereits eingelernten Interpola­ tionszahl 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₂₃₁ und P₁₄₁ miteinander verbindet, auf der Linie, die den Punkt P₁₄₂ mit dem Punkt P₂₃₂ verbindet, auf der Verbindungslinie zwischen den Punkten P₂₃₃ und P₁₄₃, auf der Verbindungslinie zwischen den Punkten P₁₄₄ und P₂₃₄, auf der Verbindungslinie zwischen den Punkten P₂₃₅ und P₁₄₅ und auf der Verbindungslinie zwischen den Punkten P₄ und P₃ 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₁, P₂, P₃ und P₄ umgeben sind, basierend auf dem ersten Muster einer Oberflächeninterpolation, wie sie in Fig. 2 dargestellt 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 Punkten auf der Grundlage der Durchlaufzahl interpoliert worden sind, durch Kreuz-Symbole gekennzeichnet sind. Die Bewegungs­ richtung der Düse 57 ist durch Pfeile gekennzeichent. 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₃ ist, liegt der Startpunkt für das zweite Muster ebenfalls am Punkt P₃. Es wird dann die Durchlaufzahl n₂ auf "4" eingestellt, während die Interpolationszahl N₂ ebenfalls auf "4" eingestellt wird.
Auf diese Weise ist eine Reihe von Oberflächeninterpolationen an der zu bearbeitenden Werk­ stü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 er­ sten Muster und die Oberflächeninterpolation entsprechend dem zweiten Muster an der identischen Oberfläche ausgeführt wurden, kann die Oberflächeninterpolation auch nur gemäß dem 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 Steuer­ kreis 27 beginnt dann mit dem Auslesen des nächsten Po­ sitionssignals 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₅ gesetzt, um dort das Erscheinen des nächsten Startsignals zu erwarten. Der Steuerkreis 27 bestätigt nach der Ermittlung der Auslesung des Be­ triebsendesignals, daß der Repetierbetrieb normal ausge­ fü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ächeninter­ polation 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 er­ hält. Auf diese Weise kann die Betriebsgeschwindigkeit des Industrieroboters weiter gesteigert werden.
Diese Erfindung ist weiterhin auch auf einen Industrie­ roboter anwendbar, der in einem Polarkoordinatensystem positionsgesteuert ist, oder auf einen Industrieroboter, der in einem kartesischen Koordinatensystem positionsge­ steuert 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. Beispiels­ weise kann der Industrieroboter nach der vorliegenden Erfindung auch so aufgebaut sein, daß ein Zwischenstopp­ schalter 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 Posi­ tionssignale usw. der Lernposition, die der zu unter­ drü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 un­ terdrückende Lernposition beziehen, gespeichert sind, und die Positionssignale an den nachfolgenden Lernposi­ tionen 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 Lern­ betrieb eingelernt, und Positionssignale usw. entsprechend der nachfolgenden Lernpositionen werden in ent­ sprechend nach unten geschobenen Speicheradressen ge­ speichert. Der Auslesepunkt der richtigen Lernposition aus der Speichereinrichtung 30 beim Repetierbetrieb kann durch die Anzeigen 39 und 41 bestä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 Positions­ signale 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 auszu­ fü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 Lern­ position 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 Repe­ tierbetriebs vorgesehen sein, so daß der Repetierbetrieb in umgekehrter Richtung stattfindet, beispielsweise von P n ausgehend über P n-1, ..., P₂, P₁, wenn der Schalter 64 betätigt wird. Weiterhin kann die Anordnung so ausge­ fü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 In­ dustrieroboter nach dieser Erfindung ist nicht auf nur diese Anwendungsfälle, d. h. auf das Lackieren be­ schrä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 Lernbe­ triebs und des Repetierbetriebs anhand eines Beispiels gegeben worden sind, bei dem das zu lackierende Werk­ stü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 Im­ puls vom Impulsgenerator 71 zum Schalterkreis 74 zu­ führt, wenn das zu lackierende Werkstück W an dem Detek­ tor 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 einge­ richtet sein, daß der Impuls vom Impulsgenerator 48 durch Betätigung des Schalters 73 von dem Schaltkreis 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 zu be­ arbeitenden Oberfläche erhält. Der Umfang beim Einlernen des Roboters ist demnach gering, die Lernzeit kann be­ merkenswert 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 eben­ falls 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,
eine Detektoranordnung (14-18) zum Ermitteln der Relativpositionen zwischen den beweglichen Gliedern (2-5) an jedem der Gelenke,
eine Bestimmungsschaltung (27) zum Bestimmen von Posi­ tionssignalen der Detektoranordnung (14-18) beim Lernbe­ trieb,
eine Speichereinrichtung (30) zum aufeinanderfolgenden Speichern von Positionssignalen, die von der Bestim­ mungsschaltung (27) bestimmt worden sind,
eine digitale Interpolationseinrichtung (50) zum Ausführen einer In­ terpolation auf der Grundlage von gespeicherten Positionssignalen und
eine Servoeinrichtung zum Positionieren jedes der beweglichen Glieder des Robotorhauptkörpers (1) unter Verwendung eines Berechnungsergebnissignals aus der digitalen Interpolationseinrichtung (50) als Sollwerte und der Po­ sitionssignale von der Detektoranordnung (14-18) als laufende Werte beim Repetierbetrieb,
dadurch gekennzeichnet, daß die Interpolation auf der Grundlage von wenigstens vier aus der Speichereinrichtung (30) ausgelesenen Positionssig­ nalen erfolgt um einen benötigte Anzahl gewünschter Positionen auf einer Ebene zu bestimmen, die von Punkten (P₁-P₄) entsprechend der wenigstens vier Positionssignale umgeben ist.
2. Industrieroboter nach Anspruch 1, dadurch gekennzeichnet, daß die Bestimmungsschaltung einen Schalter (37) enthält, der an dem Industrieroboterhauptkörper (1) angeordnet und dazu eingrichtet ist, die Positionssig­ nale 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 ge­ kennzeichnet, daß eine Einstelleinrichtung (35) vorhanden ist, mit der die Anzahl von Interpolationspositionen auf der Ebene, für die eine Interpolation durch die di­ gitale Interpolationseinrichtung (50) ausgeführt wird, wahlfrei eingestellt werden kann.
4. Industrieroboter nach Anspruch 1 oder 2, dadurch ge­ kennzeichnet, daß ein Generator (48) zum Erzeugen von Impulsen vorgesehen ist, die den Beginn der Ausführung der digitalen Interpolation in bezug auf jede der Posi­ tionen auf der Ebene (Wa) definieren, und daß den Gene­ rator (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 DE3635265A1 (de) 1987-04-23
DE3635265C2 true 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 ロボットプログラム作成装置
EP1951482A2 (de) * 2005-11-16 2008-08-06 Abb Ab Verfahren und vorrichtung zur steuerung der bewegung eines industrieroboters
JP6690213B2 (ja) * 2015-12-09 2020-04-28 セイコーエプソン株式会社 ロボット、制御装置およびロボットシステム
JP7057952B2 (ja) * 2020-04-28 2022-04-21 トヨタ自動車株式会社 可動式乾燥システム

Family Cites Families (6)

* 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
JPS5858682B2 (ja) * 1978-04-26 1983-12-27 ファナック株式会社 産業用ロボツトの制御方式
JPS5577974A (en) * 1978-12-11 1980-06-12 Tanaka Seisakusho:Kk Operation control system of tracing device
US4420812A (en) * 1979-09-14 1983-12-13 Tokico, Ltd. Teaching- playback robot
US4385358A (en) * 1979-10-19 1983-05-24 Tokico Ltd. Robot
JPS5717015A (en) * 1980-07-04 1982-01-28 Hitachi Ltd Robot control method

Also Published As

Publication number Publication date
US4743819A (en) 1988-05-10
JPS6293710A (ja) 1987-04-30
DE3635265A1 (de) 1987-04-23

Similar Documents

Publication Publication Date Title
DE3635265C2 (de)
DE3039094C2 (de) Manipulator
DE3344633C2 (de)
DE3034244A1 (de) Lernfaehiger roboter
DE60035651T2 (de) Steuerungssystem zum synchronen kooperativen Betreiben einer Mehrzahl von Robotern
DE2712169C2 (de) Verfahren zur Ausführung einer komplexen Bewegung durch einen Industrieroboter
DE3317263C2 (de)
DE2709335C2 (de)
DE2330054C2 (de) Vorrichtung zur Steuerung der Bewegung eines Arbeitselementes eines Roboterarmes
DE3208435C2 (de) Steuerungsvorrichtung zum Führen eines Lichtbogenschweißautomaten
DE2402829C3 (de) Numerisch arbeitende Programmsteuerung für einen Manipulator
DE102011108282B4 (de) Numerische Steuerung für eine Mehrachsenmaschine zum Bearbeiten einer geneigten Bearbeitungsebene
DE10255037A1 (de) Verfahren und Vorrichtung zum Bearbeiten eines Werkstücks
DE2526504B2 (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
DE3806966C2 (de)
DE102015114013A1 (de) Verfahren und Vorrichtung zur Steuerung des Betriebs eines Roboters
DE2017535C3 (de) Steueranordnung fur Kopierwerk zeugmaschinen
EP0249171B1 (de) Verfahren zur Programmsteuerung insbesondere eines Industrieroboters für die selbsttätige Beschichtung von Werkstücken
DE2904777A1 (de) Positioniereinrichtung fuer ein geraet
DE3931964A1 (de) Robotersteuerung fuer den bewegungsablauf mindestens eines von einem stellglied angesteuerten arbeitsgeraetes
DE2012858A1 (de) Programmgesteuerter Manipulator
DE3625914C2 (de)
DE3827383C2 (de)
DE2406493C2 (de) Programmierbares Servosystem zur Führung eines Werkzeuges, insbesondere einer Spritzpistole
DE3022173C2 (de)

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