DE3422107C2 - Roboter-Steuerungsvorrichtung - Google Patents

Roboter-Steuerungsvorrichtung

Info

Publication number
DE3422107C2
DE3422107C2 DE3422107A DE3422107A DE3422107C2 DE 3422107 C2 DE3422107 C2 DE 3422107C2 DE 3422107 A DE3422107 A DE 3422107A DE 3422107 A DE3422107 A DE 3422107A DE 3422107 C2 DE3422107 C2 DE 3422107C2
Authority
DE
Germany
Prior art keywords
control device
section
robot
robot control
object position
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
DE3422107A
Other languages
English (en)
Other versions
DE3422107A1 (de
Inventor
Shunji Mori
Masanobu Ito
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE3422107A1 publication Critical patent/DE3422107A1/de
Application granted granted Critical
Publication of DE3422107C2 publication Critical patent/DE3422107C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33263Conversion, transformation of coordinates, cartesian or polar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36088Machining parameters, overide
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36503Adapt program to real coordinates, software orientation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45083Manipulators, robot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49221Control of scale

Description

Die Erfindung betrifft eine Roboter-Steuerungsvorrichtung insbesondere zur Positions- und Geschwindigkeitssteuerung eines Roboters, auf der Grundlage von Bewegungsbefehlen.
Eine solche Roboter-Steuerungsvorrichtung ist aus der DE 24 33 003 A1 bekannt. Dort werden mit einer ersten Einrichtung Bewegungsbefehle erzeugt, welche einer zweiten Einrichtung zugeführt werden, die daraus schrittweise eine Anzahl von Objektpositions­ variablen erzeugt, welche aufeinanderfolgende Positionen auf einer von den Bewegungsbefehlen definierten Ortskurve angeben. Aus den Objektpositionsvariablen erzeugt eine Positionssteuereinrichtung Positionsbefehle, die einer Antriebseinrichtung des Roboters zugeführt werden, so daß dieser der Ortskurve folgt.
Eine konventionelle Roboter-Steuerungsvorrichtung dieser Art ist so aufgebaut, wie aus Fig. 1 ersichtlich. In Fig. 1 bezeichnet das Bezugszeichen 1 einen Programmspeicher zur Speicherung eines Programmes, welches durch einen Benutzer eingegeben wird und variable Positionsdaten, welche durch Lehr­ unterweisung oder manuelle Dateneingabe zusammengestellt werden. Bezugszeichen 2 bezeichnet einen Instruktionsdekodierer zum Dekodieren von Programminstruktionen, die in dem Programmspeicher 1 abgespeichert sind und die im vorliegenden Falle ausgeführt werden. Bezugszeichen 3 bezeichnet eine Instruktionsausführungssteuerung zur Ausführung der Instruktionen eines Programmes gemäß den deko­ dierten Instruktionen, die durch den Instruktionsdekodierer 2 geliefert werden. Bezugszeichen 4 bezeichnet einen Objektpositionsvariablen-Erzeugungsabschnitt zur Bildung einer Objektpositionsvariablen des Roboters, wenn er eine Bewegungsinstruktion ausführt oder zur Bildung einer veränderlichen Position. Bezugszeichen 5 bezeichnet eine Objektpositionsvariable, die vom Objektpositionsvariablen- Erzeugungsabschnitt abgegeben wird.
Die Objektpositionsvariable 5 hängt von der Bewegungsinstruktion ab. Bei einer Bewegungsinstruktion mit linearer Interpolation wird die Objektpositionsvariable durch die Kombination der Koordinaten (X, Y, Z) des Greifers (Finger) des Roboters am Bestimmungsort und durch die Koordinaten-Eulerscher Winkel (α, β, γ) - angezeigt, welche die Winkelorientierung des Greifers des Roboters kennzeichnen. Im Falle einer Gelenkbewegung wird die Objektpositionsvariable durch die Koordinaten (J₁,. . .,Jk,. . .) der Achsen des Roboters am Bestimmungsort angezeigt (wobei Jk die Koordinate der k-ten Achse ist) . Für die folgende Beschreibung der Roboterbewegung wird die Objektpositionsvariable im orthogonalen Koordinatensystem angegeben.
Außerdem ist in Fig. 1 mit 6 eine Positionssteuerung bezeichnet, die einen Geschwindigkeitsbefehlserzeugungsabschnitt 7 zur Durchführung der Geschwindigkeitsteuerung und Regelung während der Bewegung des Roboters sowie einen Positionsbefehlserzeugungsabschnitt 8 aufweist, um Bewegungsbefehle in vorgegebenen Zeitpunkten zu erzeugen. Die Bezugssymbole und bezeichnen jeweils einen erlaubten bzw. zulässigen Geschwindigkeits- und Beschleunigungswert, der für die Robotersteuereinrichtung zulässig ist. Das Bezugszeichen 9 bezeich­ net einen Geschwindigkeitskompensationsabschnitt, der die vorerwähnte Geschwindigkeit - und Beschleunigung in Abhängigkeit von einer Instruktion von der Instruktionsausführungssteuerung 3 erzeugt. Bezugszeichen 10 bezeichnet einen Koordinatentransformationsabschnitt zur Umwandlung eines Positionsbefehles, der in dem orthogonalen Koordinatensystem (X, Y, Z, α, β, γ) von der Positionssteuereinheit 6 erzeugt wird, in einen Positionsbefehl, der in dem Koordinatensystem (J₁,. . ., Jk) der Achsen des Roboters ausgedrückt wird. Bezugszeichen 11 bezeichnet einen Positionsbefehl, der durch den Koordinatenumwandlungsabschnitt ausgegeben wird und der durch die Koordinaten der Achsen des Roboters ausgedrückt wird. Bezugszeichen 12 bezeichnet einen Positionssteuerabschnitt, der auf einen Positionsbefehl 13 hin die Positionierung im Hinblick auf die Bewegung des Roboters ausführt.
Die Wirkungsweise der Robotersteuerungsvorrichtung dieser Art wird nun beschrieben.
Wenn eines der in dem Programmspeicher 1 abgespeicherten Programme ausgewählt wird, beginnt der Instruktionsdekodierer 2 die Instruktionen in dem so ausgewählten Programm zu dekodieren. Die als Ergebnis der Instruktionsdekodierung erhaltenen Daten werden an die Instruktionsausführungssteuerung 3 weitergegeben. Wenn die Instruktion im Programm, die durch den Instruktionsdekodierer 2 dekodiert wurde, die Bewegung des Roboters betrifft, instruiert die Instruktionsausführungssteuerung 3 den Objektpositionsvariablen-Erzeugungsabschnitt 4, um eine Position anzugeben, in die der Roboter bewegt werden soll. Wenn der Objektpositionsvariablen-Erzeugungsabschnitt 4 die Objektpositionsvariable 5 erzeugt, führt die Positionssteuerung 6 eine Positionssteuerung und eine Ge­ schwindigkeitsortskurvensteuerung bezüglich der Bewegung des Roboters zur angegebenen Position aus unter Verwendung der erlaubten Geschwindigkeit und der Beschleunigung , welche durch den Geschwindigkeitskompensationsabschnitt eingestellt wurden.
Die Positionssteuerung 6 umfaßt den Geschwindigkeitsbefehlserzeugungsabschnitt 7 sowie den Positionsbefehlserzeugungsabschnitt 8, wie bereits beschrieben. Der Geschwindigkeitsbefehlserzeugungsabschnitt 7 führt die Geschwindigkeitssteuerung und die Ortskurvensteuerung für die Bewegung des Roboters aus. Der Positionsbefehlserzeugungsabschnitt 8 führt die Positionssteuerung aus.
Die Geschwindigkeitssteuerung und Positionssteuerung werden zeitlich schrittweise ausgeführt. Das bedeutet, daß eine Geschwindigkeit und eine Position jeweils nacheinander nach einer vorgegebenen Zeitperiode Δt abgegeben werden. Wenn die vorhergehende (Δt vorher) Geschwindigkeit i-1, die Objektpositionsvariable d-, die Position i-1, die erlaubte Geschwindigkeit und die Beschleunigung , die durch die Geschwindigkeitskompensationsauswahl erzeugt wurde, eingegeben werden, stellt der Geschwindigkeitsbefehlserzeugungsabschnitt 7 die Richtung der momentanen Geschwindigkeit i ein und gleichfalls die des Vektors -d - i-1. Außerdem bestimmt der Abschnitt 7, ob die vorliegende Geschwindigkeit zulässig ist oder gleich oder geringer als die vorhergehende Geschwindigkeit gemacht werden sollte. Der Positionsbefehlserzeugungsabschnitt 8 erzeugt die momentane Position i gemäß der vorhergehenden Position i-1 und der momentanen Geschwindigkeit i von dem Geschwindigkeitsbefehlserzeugungsabschnitt 7. Die momentane Geschwindigkeit i und die Position i, die so erhalten wurden, werden für die Berechnung der nächstfolgenden Geschwindigkeit i+1 und Position i+1- nach dem Ablauf des Zeitintervalles Δt berechnet.
Wenn die momentane Position i ermittelt ist, führt der Koordinatentransformationsabschnitt 10 die Koordinatentransformation von dem orthogonalen Koordinatensystem (X, Y, Z, α, β, γ) in das Koordinatensystem (J₁,. . ., J₆) der Roboterachsen aus.
Die Positionssteuerung 12 ermittelt die gegenwärtigen Bewegungen der Achsen gemäß den Koordinaten 11, die in der oben beschriebenen Weise erhalten wurden. Die gegenwärtigen so ermittelten Bewegungen der Achsen werden durch einen D/A Umwandler auf entsprechende Motoren übertragen. Als Ergebnis wird der Roboter zur momentanen Position (i) bewegt.
Die zuvor beschriebenen Operationen werden in wiederholter Weise ausgeführt, bis der Roboter die Position d erreicht.
Die konventionelle Roboter-Steuerungsvorrichtung der oben beschriebenen Art darf nur eine Objektpositionsvariable in der Bewegung des Greifers des Roboters ausführen. Daher ist es bei der Steuerung einer geometrischen Ortskurve, die aus einer Serie von Punkten besteht, notwendig, die Objektpositionsvariable bei jedem Punkt zu ändern. Es ist unmöglich, eine kontinuierliche Ortskurve einschließlich einer Zeitachse zu verwirklichen. Außerdem ist die konventionelle Roboter-Steuerungsvorrichtung nachteilig dadurch, daß die Orientierung des Greifers des Roboters, der in die Position bewegt wurde, nicht durch die Ausgangssignale eines visuellen Sen­ sors oder eines Berührungssensors geändert werden kann.
Aus EP 0 075 792 A2 ist eine Roboter-Steuerungsvorrichtung bekannt, bei der mehr als zwei Positionspunkte aus einem Speicher ausgelesen werden. Für drei Punkte wird ein Interpolationsvorgang geschildert, durch den Interpolationspunkte berechnet werden, die auf einer geglätteten Bahn zwischen den beiden Endpunkten der drei ausgelesenen Punkte liegen. Der dritte ausgelesene Punkt wird vom Roboter nicht durchlaufen, sondern dient als reiner Stützpunkt für den Interpolationsvorgang.
Aufgabe der vorliegenden Erfindung ist es, eine Roboter­ steuerungsvorrichtung zu schaffen, bei der eine kontinuierliche Ortskurve vom Robotergreifer durchlaufen werden kann und ein schnelles Ansprechen auf Umgebungsgegebenheiten sowie leichte Änderbarkeit gewährleistet ist.
Gelöst wird diese Aufgabe durch eine Robotersteuerungsvorrichtung mit den Merkmalen des Patentanspruchs 1. Vorteilhafte Ausgestaltungen ergeben sich aus den Unteransprüchen.
Im folgenden wird ein Ausführungsbeispiel der Erfindung anhand der Figuren beschrieben. Es zeigt
Fig. 1 ein Blockdiagramm einer konventionellen Roboter- Steuerung,
Fig. 2 ein Blockdiagramm einer erfindungsgemäßen Roboter-Steuerung,
Fig. 3 ein Blockdiagramm eines Sensor- Kompensationsabschnittes von Fig. 2, und
Fig. 4 ein Blockdiagramm eines manuellen Schaltknopfpositionskompensationsabschnittes gemäß Fig. 2.
In Fig. 2 umfaßt eine erste Einrichtung zur Erzeugung von Bewegungsbefehlen einen Programmspeicher 1, einen Instruktionsdekodierer 2, eine Instruktionsausführungssteuerung 3 und eine Geschwindigkeitskompensationseinrichtung 9.
Eine zweite Einrichtung zur Bildung einer Objektionpositionsvariablen umfaßt einen Objektpositionsvariablen-Erzeugungsabschnitt 4, einen Sensor-Kompensationsabschnitt 17 und einen manuellen Schaltknopfpositionskompensationsabschnitt 18. Der Objektpositionsvariablen-Erzeugungsabschnitt 4 erzeugt eine Vielzahl von Objektpositionsvariablen (n Objektpositionsvariable) in Abhängigkeit von den Bewegungsbefehlen.
Der Sensorkompensationsabschnitt 17 umfaßt gemäß Fig. 3 einen Positionserfassungssensor 19, eine Sensorschnittstelle 20 und einen Positionsberechnungsabschnitt 21. Der Positionserfassungssensor 19 bestimmt eine Verschiebung relativ zur Position, die mitgeteilt wurde. Die erfaßten Daten werden über die Sensorschnittstelle 20 zum Positionsberechnungsabschnitt 21 übertragen. Der Positionsberechnungsabschnitt 21 korrigiert die mitgeteilte Position gemäß den so übertragenen Detektordaten.
Der Positionskompensationsabschnitt mit manueller Schalterbetätigung gemäß Fig. 4 umfaßt eine Box 20 mit von Hand betätigbaren Tasten, einen Detektorabschnitt 23 für die von Hand betätigbaren Betätigungsschalter und einen Positions- Berechnungsabschnitt 24 für die von Hand betätigbaren Betätigungsschalter. Wenn an der manuellen Schalterbetätigungsbox 22 eine Taste entsprechend den Koordinaten betätigt wird, bestimmt der Detektorabschnitt für den Handbetätigungsschalter den Betätigungsvorgang des von Hand betätigten Schalters. Die beim Niederdrücken des Handschalters erzeugten Daten werden dem Positionsberechnungsabschnitt für den Handbetätigungsschalter 24 übermittelt, von dem die gewünschte Position berechnet wird.
In Fig. 2 bezeichnen 5a, 5b und 5c die erste, j-te und n-te Objektposition, die durch die Objektpositionsvariablen- Erzeugungsabschnitte ausgegeben werden. Diese objektpositionsvariablen werden im orthogonalen Koordinatensystem (X, Y, Z, α, β, γ) ausgedrückt.
Das Komprimieren oder Vergrößern der objektpositionsvariablen wird durch einen Gewichtungsfunktionserzeugungsabschnitt 17 und einen Gewichtungsabschnitt 15 ausgeführt. Der Gewichtungsfunktionserzeugungsabschnitt 17 erzeugt Gewichtungsfunktionen W₁,. . ., Wj,. . . und Wn für die Objektpositionsvariablen, die durch den Objektpositionsvariablen-Erzeugungsabschnitt 4 erzeugt werden. Der Gewichtungsabschnitt 15 komprimiert oder vergrößert die Objektpositionsvariablen unter Benutzung der Gewichtungsfunktionen.
Positionssteuereinrichtungen 6a, 6b und 6c sind jeweils für die Objektpositionsvariablen 5a, 5b und 5c vorgesehen. Die Positionssteuereinrichtung 6a weist einen Geschwindigkeitsbefehlserzeugungsabschnitt 7a und einen Positionsbefehlserzeugungsabschnitt 8a auf. Die Positionssteuereinrichtung 6b ist aus einem Geschwindigkeitsbefehlserzeugungsabschnitt 7b und einem Positionsbefehlserzeugungsabschnitt 8b zusammengesetzt. Ähnlich umfaßt die Positionssteuereinrichtung 6c einen Geschwindigkeitsbefehlserzeugungsabschnitt 7c und einen Po­ sitionsbefehlserzeugungsabschnitt 8c. jede der Positionssteuereinrichtungen 6a, 6b und 6c ist hinsichtlich der Funktion gleich der Positionssteuereinrichtung 6 gemäß Fig. 1. Beim Empfang der Objektpositionsvariablen 5b, der Gewichtungsfunktion Wj zum Komprimieren oder Vergrößern der Objektpositionsvariablen, der erlaubten Geschwindigkeit j und der Beschleunigung j-, die durch den Geschwindigkeitskompensationsabschnitt 9 erzeugt werden, führt der Geschwindigkeitsbefehlserzeugungsabschnitt 7b eine Geschwindigkeitssteuerung für die Bewegung in die j-te gewichtete Objektposition aus. Der Positionsbefehlserzeugungsabschnitt 8b führt eine Positionssteuerung in vorgegebenen Zeitabschnitten während der Bewegung in die j-te gewichtete Objektposition aus.
Die Objektpositionsbefehlseinheit umfaßt eine Positionsbefehl-Additionseinrichtung 16. In der Objektpositionsbefehlseinheit wird eine Vielzahl von Objektpositionsbefehlen bzw. gleichbedeutend die Ausgangssignale der Positionssteuereinrichtungen 6a, 6b und 6c, die in vorgegebenen Zeitpunkten für die gewichteten Objektpositonsvariablen geschaffen wurden, in jedem Zeitpunkt zusammengefaßt, um in diesem Zeitpunkt einen Positionsbefehl zu erzeugen.
Der Betrieb bzw. die Arbeitsweise der Robotersteuerung nach der Erfindung wird nun beschrieben.
Wenn eines der in dem Programmspeicher 1 gespeicherten Programme ausgewählt ist, startet der Instruktionsdekodierer 2 die Dekodierung der Instruktionen im somit ausgewählten Programm. Die Ergebnisse jeder dekodierten Instruktion werden dem Instruktionsausführungssteuerabschnitt 3 zugeführt. Wenn eine Instruktion im durch den Instruktionsdekodierer 2 dekodierten Programm die Bewegung des Roboters betrifft, instruiert der Instruktionsausführungssteuerabschnitt 3 den Objektpositionsvariablen-Erzeugungsabschnitt 4, um Objektpositionsvariablen zu erzeugen, die durch die Bewegungsinstruktion an oder zugewiesen werden. Die Anzahl der Objektpositionsvariablen ändert sich in Abhängigkeit mit der Art der Bewegungsinstruktion.
Wenn die Anzahl der Objektpositionsvariablen 5a bis 5c, die durch den Objektpositionserzeugungsabschnitt erzeugt wurden, durch n dargestellt wird und eine Objektpositionsvariable für die j-te Positionssteuereinheit 6b durch dj dargestellt wird (wobei j = 1,. . ., n) dann kann die Variable Pdj durch eine der folgenden Arten oder Wege geschaffen werden.
  • (1) dj wird durch Anweisung gegeben und sie ist die laufende Position, die im Zeitpunkt der Anweisung verfügbar ist und wird in dem Programmspeicher 1 abgespeichert.
  • (2) dj wird durch Substitution eines Wertes erhalten und der Wert wird in dem Programmspeicher 1 abgespeichert.
  • (3) dj ist durch Unterziehung einer durch Anweisung erhaltenen Position in einer Positionskompensation in dem Sensorkompensationsabschnitt 17 gegeben.
  • (4) Nach einer anderen Möglichkeit ist Pdj durch einen Bewegungsbefehl entsprechend einem Betätigungsschalter gegeben, wobei ein von Hand betätigbarer Betätigungsschalter in der Hand betätigbaren Schalterbox 22 bei vorgegebenen Koordinaten betätigt wird.
Wenn d0 = (X₀, Y₀, Z₀, α₀, β₀, γ₀) eine objektpositionsvariable ist, die durch den Programmspeicher 1 oder den sensorkompensationsabschnitt 17 geliefert wird und j0 (ΔX, ΔY, ΔZ, Δα, Δβ, Δγ) eine Objektpositionsvariable ist, die der Positionskompensationsabschnitt 18 für den von Hand betätigbaren Schalter bei Betätigung des Handschalters erzeugt, dann wird die Objektpositionsvariable Pdj wie folgt ausgedrückt:
Die N Objektpositionsvariablen, die auf diese Weise gebildet wurden, werden durch die Gewichtungsfunktion Wj gewichtet, die durch den Gewichtungsfunktionserzeugungsabschnitt 14 erzeugt wird, und zwar in vorgegebenen Zeitpunkten. Die Gewichtungsfunktionen werden dargestellt durch W₁,. . ., Wj,. . . und W. Die j-te Gewichtsfunktion wird für die Objektpositionsvariable dj- (5b) verwendet, die der j-ten Positionssteuereinrichtung 6b zugeführt wird, wobei auf diese Weise Pdj komprimiert oder vergrößert wird. Die j-te Gewichtungsfunktion wird wie folgt definiert:
Mit anderen Worten bedeutet dies, daß die Gewichtungsfunktion Wj die Abhängigkeit einer objektpositionsvariablen Pdj im Hinblick auf die Bewegung in die Position von der momentanen Position ausdrückt.
Die gewichtete objektpositionsvariable Wj dj wird der j-ten Positionssteuereinrichtung 6b zugeführt. Die Positionssteuereinrichtung 6b führt die Positionssteuerung und Geschwin­ digkeitssteuerung aus unter Verwendung der erlaubten Geschwindigkeit j und der Beschleunigung j-, die durch den Geschwindigkeitskompensationsabschnitt 9 für die Bewegung nach Wj dj vorgesehen sind. Diese Steuerungen werden unabhängig durch die Positionssteuereinrichtung ausgeführt.
Wenn eine Geschwindigkeit -j und eine Beschleunigung j dem System zugewiesen werden, spezifiziert der Geschwindigkeitskompensationsabschnitt 9 in Abhängigkeit von der Gewichtungsfunktion, die durch den Gewichtungsfunktionserzeugungsabschnitt 14 erzeugt wurde, erlaubte Geschwindigkeiten und Beschleunigungen für die Positionssteuereinrichtung, und zwar wie folgt:
In diesem Falle bedeuten
Daher führt jede Positionssteuereinrichtung eine Positionssteuerung und Geschwindigkeitssteuerung mit der Geschwindigkeit und Beschleunigung, die durch das System bestimmt wurde, aus.
Die j-te Positionssteuereinrichtung 6b umfaßt den Geschwindigkeitsbefehlserzeugungsabschnitt 7b und den Positionsbefehlserzeugungsabschnitt 8b, wie bereits vorher beschrieben wurde. Der Geschwindigkeitsbefehlserzeugungsabschnitt 7b bestimmt den momentanen Geschwindigkeitsbefehl j,i gemäß der gewichteten Objektpositionsvariablen Wj dj, der Geschwindigkeit j, der Beschleunigung j, von dem vorhergehenden Geschwindigkeitsbefehl j,i-1- und dem vorhergehenden Positionsbefehl j,i-1.
-
Die Richtung des momentanen Geschwindigkeitsvektors j,i ist parallel zur Richtung von Wj dj - j,i-1. Seine Größe wird in Abhängigkeit vom Abstand |Wj dj - j,i-1 | durch Prüfung ermittelt, ob die Geschwindigkeit erhöht werden kann, gleich der vorhergehenden Geschwindigkeit aufrecht erhalten werden kann oder verringert werden kann. Auf diese Weise führt der Geschwindigkeitsbefehlserzeugungsabschnitt in jeder Positionssteuereinrichtung eine Beschleunigungs- und Verzögerungssteuerung sowie Ortskurvensteuerung aus.
Der Positionsbefehlserzeugungsabschnitt 8b in der j-ten Positionssteuereinrichtung 6b erzeugt den momentanen Positionsbefehl j,i gemäß dem momentanen Geschwindigkeitsbefehl j-1- der durch den Geschwindigkeitsbefehlsabschnitt 7b und dem vorhergehenden Positionsbefehl j,i-1 erzeugt wurde. Die Positionsbefehle Pj,i, die durch die Positionssteuereinrichtung erzeugt wurden, werden der Vektoraddition in dem Positionsbefehlsadditionsabschnitt 16 unterzogen, wobei als Ergebnis der folgende Objektpositionsbefehl erzeugt wird:
Wenn der Objektpositionsbefehl Pi dem Koordinatentransformationsabschnitt 10 zugeführt wird, wird Pi ausgedrückt in dem orthogonalen Koordinatensystem (X, Y, Z, α, β, γ) der Koordinatentransformation im Koordinatensystem (J₁,. . . ,Jk,. . .) der Achsen des Roboters unterzogen. Die Positionie­ rungssteuerung 12 bestimmt die Beträge der Bewegung für die Achsen entsprechend dem vorhergehenden Positionsbefehl ausgedrückt in dem Koordinatensystem (J₁,. . ., Jk,). . .) und dem aktuellen Befehl und führt Bewegungsimpulswerte seinem D/A Wandler zu, wobei als Ergebnis der Roboter in die momentane Zielposition bewegt wird.
Die oben beschriebenen Operationen werden wiederholt ausgeführt, bis der Roboter über eine Vielzahl von Zielpositionen in seine endgültige Zielposition bewegt wurde.
In der oben beschriebenen Vorrichtung werden eine Vielzahl von Objektpositionsvariablen Pd1 bis Pdn in dem orthogonalen Koordinatensystem (X, Y, Z, α, β, γ) ausgedrückt. Die Positionssteuerung und Geschwindigkeit und Ortskurvensteuerung werden ausgeführt, um den Roboter zur Bewegung in die Objektposition zu veranlassen. Die Objektpositionsvariablen Pd1 bis Pdn können jedoch in dem Koordinatensystem (J₁,. . ., Jk. . .) der Steuerachsen des Roboters ausgedrückt werden. In diesem Falle können im Hinblick auf die Bewegung des Roboters die Geschwindigkeitseinstellungssteuerung und die Positionssteuerung ausgeführt werden, ohne Stoppen in einer Vielzahl von Positionen oder einer Serie von Punkten in einem Gelenkverbindungsbetriebsmodus, was bedeutet, daß diese Steuerungen durch Beschreibung einer geglätteten und gekrümmten Ortskurve entlang dieser Positionen erreicht werden kann.
Wie aus der obigen Beschreibung ersichtlich ist, sind in der Roboter-Steuerung nach der Erfindung eine Vielzahl von Objektpositionen und Positionssteuereinheiten, die in ihrer Zahl gleich der der Objektpositionen sind, vorgesehen. Die Ausgangssignale der Positionssteuereinheiten werden der Ad­ dition unterzogen, um den untergeordneten Objektpositionen die Beeinflussung der Hauptobjektposition zu gestatten. Daher wird eine Steuerung einer Ortskurve, bestehend aus einer Serie von Punkten realisiert. Außerdem kann der Anschluß bzw. der Greifer des Roboters, der in eine Objektposition bewegt wurde, die von verschiedenen Objektpositionsvariablen und Gewichtungsfunktionen erhalten wurde, dazu gebracht werden, schnell zu reagieren, und zwar auf Änderungen im Umfeld des Roboters durch Verwendung von Daten, die durch einen visuellen Sensor, Berührungssensor oder ähnlichem Sensor abgegeben werden.

Claims (15)

1. Roboter-Steuerungsvorrichtung mit
  • - einer ersten Einrichtung (1, 2, 3, 17, 18), die Bewegungsbefehle erzeugt;
  • - einer zweiten Einrichtung (4), der die Bewegungsbefehle zugeführt werden und die schrittweise eine Anzahl von Objektpositionsvariablen Pd1. . .Pdn (5a, 5b, 5c) erzeugt, welche aufeinanderfolgende Positionen auf einer von den Bewegungsbefehlen definierten Ortskurve angeben;
  • - einer Gewichtungseinrichtung (14, 15), der die Objektpositionsvariablen Pd1. . .Pdn zugeführt werden und die die Objektpositionsvariablen Pd1. . .Pdn mittels einer entsprechenden Anzahl von Gewichtungsfunktionen W₁. . .Wn gewichtet, die jeweils den Objektpositionsvariablen Pd1. . .Pdn zugeordnet sind;
  • - mehreren Positionssteuereinrichtungen (6a, 6b, 6c), deren Anzahl gleich der Anzahl der Objektpositionsvariablen Pd1. . .Pdn ist, denen jeweils eine der gewichteten Objektpositionsvariablen W₁Pd1. . .WnPdn zugeführt wird und die jeweils einen momentanen Positionsbefehl Pÿ abgeben;
  • - einer Positionsbefehl-Additionseinrichtung (16), der die momentanen Positionsbefehle Pÿ zugeführt werden und die einen Objektpositionsbefehl Pi erzeugt, der der Summe der Positionsbefehle Pj,i entspricht; und
  • - einer Antriebseinrichtung (10, 12), der der Objektpositionsbefehl Pi zugeführt wird und die in Abhängigkeit von dem Objektpositionsbefehl Pi Signale erzeugt, die den Roboter antreiben, so daß er der Ortskurve folgt;
  • - wobei die Gewichtungsfunktion W₁. . .Wn derart festgelegt sind, daß eine Bewegung des Roboters entlang einer geglätteten Ortskurve erfolgt.
2. Roboter-Steuerungsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß zumindest eine Kompensationseinrichtung (17, 18) zur Korrektur der Objektpositionsvariablen Pd1. . .Pdn (5a, 5b, 5c) vorgesehen ist.
3. Roboter-Steuerungsvorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Kompensationseinrichtung ein Sensorkompensationsabschnitt (17) ist.
4. Roboter-Steuerungsvorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Kompensationseinrichtung ein manuell betätigbarer Schalterkompensationsabschnitt (18) ist.
5. Roboter-Steuerungsvorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Kompensationseinrichtung einen Sensorkompensationsabschnitt (17) und einen manuell betätigbaren Schalterkompensationsabschnitt (18) aufweist.
6. Roboter-Steuerungsvorrichtung nach Anspruch 3 oder 5, dadurch gekennzeichnet, daß der Sensorpositionskompensationsabschnitt (17) einen Roboterpositionsbestimmungssensor (19) und einen Sensorpositionsberechnungsabschnitt (20) aufweist, der Detektordaten von dem Roboterpositionsbestimmungssensor erhält, um diese und eine mitgeteilte Position zu verarbeiten, um einen Korrekturbefehl abzugeben.
7. Roboter-Steuerungsvorrichtung nach Anspruch 4 oder 5, dadurch gekennzeichnet, daß der manuell betätigbare Schalterkompensationsabschnitt (18) eine manuelle Tastschalterbox (22) und einen Berechnungsabschnitt (24) aufweist, um einen Korrekturbefehl in Abhängigkeit von Daten abzugeben, die bei Betätigung eines manuellen Tastschalters in der manuellen Schalterbox (22) erzeugt werden.
8. Roboter-Steuerungsvorrichtung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß die Gewichtungseinrichtung einen Gewichtungsfunktionserzeugungsabschnitt (14) und einen Gewichtungsabschnitt (15) aufweist.
9. Roboter-Steuerungsvorrichtung nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß die Gewichtungsfunktionen, die durch den Gewichtungserzeugungsabschnitt (14) erzeugt werden, die folgende Beziehung erfüllen:
10. Roboter-Steuerungsvorrichtung nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, daß die erste Einrichtung zur Bildung eines Bewegungsbefehles einen Programmspeicher (1) zur Speicherung von Programmen und Daten, einen Instruktionsdekodierer (2) zur Dekodierung von Instruktionen in den im Programmspeicher gespeicherten Programmen und eine Instruktionsausführungssteuerung (3) zur Ausführung von Instruktionen aufweist, die durch den Instruktionsdekodierer dekodiert wurden.
11. Roboter-Steuerungsvorrichtung nach einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, daß ein Geschwindigkeitskompensationsabschnitt (9) zur Abgabe einer Geschwindigkeit v und einer Beschleunigung a für die in der Robotersteuerungsvorrichtung zulässige Bewegung vorgesehen ist.
12. Roboter-Steuerungsvorrichtung nach Anspruch 11, dadurch gekennzeichnet, daß der Geschwindigkeitskompensationsabschnitt (9) die zulässige Geschwindigkeit und Beschleunigung in Abhängigkeit von einer Instruktion von der Instruktionsausführungssteuerung (3) und der entsprechenden Gewichtungsfunktion bestimmt.
13. Roboter-Steuerungsvorrichtung nach einem der Ansprüche 1 bis 12, dadurch gekennzeichnet, daß jede der Positionssteuereinrichtungen (6a, 6b, 6c) einen Geschwindigkeitsbefehlserzeugungsabschnitt (7a, 7b, 7c) und eine Positionsbefehlserzeugungsabschnitt (8a, 8b, 8c) aufweist.
14. Roboter-Steuerungsvorrichtung nach Anspruch 13, dadurch gekennzeichnet, daß jeweils dem Geschwindigkeitsbefehlserzeugungsabschnitt (7a, 7b, 7c) die entsprechende gewichtete zulässige Geschwindigkeit W₁v. . .Wnv und die entsprechende gewichtete, zulässige Beschleunigung W₁a. . .Wna zugeführt wird.
15. Roboter-Steuerungsvorrichtung nach einem der Ansprüche 1 bis 14, dadurch gekennzeichnet, daß die Antriebseinrichtung einen Koordinaten- Transformationsabschnitt (10) zur Transformation des Objektpositionsbefehls in das Koordinatensystem der Achsen des Roboters vorgesehen ist.
DE3422107A 1983-06-14 1984-06-14 Roboter-Steuerungsvorrichtung Expired - Fee Related DE3422107C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58106035A JPS59231607A (ja) 1983-06-14 1983-06-14 ロボツトの制御装置

Publications (2)

Publication Number Publication Date
DE3422107A1 DE3422107A1 (de) 1984-12-20
DE3422107C2 true DE3422107C2 (de) 1995-11-02

Family

ID=14423379

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3422107A Expired - Fee Related DE3422107C2 (de) 1983-06-14 1984-06-14 Roboter-Steuerungsvorrichtung

Country Status (3)

Country Link
US (1) US4625285A (de)
JP (1) JPS59231607A (de)
DE (1) DE3422107C2 (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4975856A (en) * 1986-02-18 1990-12-04 Robotics Research Corporation Motion controller for redundant or nonredundant linkages
US4973215A (en) * 1986-02-18 1990-11-27 Robotics Research Corporation Industrial robot with servo
US4908556A (en) * 1986-11-20 1990-03-13 Unimation Inc. Modular robot control system
US4962338A (en) * 1986-11-20 1990-10-09 Staubli International Ag. Universal robot control board configuration
JP2719345B2 (ja) * 1988-03-30 1998-02-25 豊田工機株式会社 力センサを用いた加工制御装置
US5250886A (en) * 1988-12-27 1993-10-05 Canon Kabushiki Kaisha Method of controlling robot and robot control apparatus
JP2735126B2 (ja) * 1988-12-27 1998-04-02 キヤノン株式会社 ロボットの制御方法及びその制御装置
SE461383B (sv) * 1989-01-11 1990-02-12 Inst Mash Im A Ablagonravova A Foerfarande foer styrning av en s k mekanisk resonanshand
JPH0366589A (ja) * 1989-05-31 1991-03-22 An Ey-Rang ロボットの駆動制御回路
KR930011004B1 (ko) * 1990-10-26 1993-11-19 삼성전자 주식회사 로보트의 위치제어방법
JP2643683B2 (ja) * 1990-10-29 1997-08-20 三菱電機株式会社 ロボットの制御方法
JP3078009B2 (ja) * 1990-11-30 2000-08-21 本田技研工業株式会社 脚式移動ロボットの歩行制御装置
JP2997036B2 (ja) * 1990-11-30 2000-01-11 本田技研工業株式会社 脚式移動ロボットの歩行制御装置
JPH0743296B2 (ja) * 1991-01-16 1995-05-15 株式会社堀場製作所 自動車自動運転ロボットの制御方法
GB2256290B (en) * 1991-05-27 1994-07-20 Honda Motor Co Ltd Servomotor control system for multi-axes
JP2764485B2 (ja) * 1991-08-27 1998-06-11 ファナック株式会社 リアルタイムセンサの診断方法
US5294873A (en) * 1992-10-27 1994-03-15 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Kinematic functions for redundancy resolution using configuration control
DE4238938C2 (de) * 1992-11-19 2003-10-30 Bosch Gmbh Robert Verfahren zur Interpolation eines Lageführungssignals
DE19841716A1 (de) * 1998-09-11 2000-03-16 Siemens Ag Steuerungsverfahren und numerische Steuerung zur Bewegungsführung von industriellen Bearbeitungsmaschinen
US6204620B1 (en) 1999-12-10 2001-03-20 Fanuc Robotics North America Method of controlling an intelligent assist device
US6313595B2 (en) 1999-12-10 2001-11-06 Fanuc Robotics North America, Inc. Method of controlling an intelligent assist device in a plurality of distinct workspaces
FI119136B (fi) * 2006-06-06 2008-07-31 Abb Oy Sähkökäyttöjärjestelmä
KR101314570B1 (ko) * 2011-10-12 2013-10-07 서울대학교산학협력단 정밀한 제어를 위한 뇌-기계 인터페이스 장치 및 방법
TWI558525B (zh) * 2014-12-26 2016-11-21 國立交通大學 機器人及其控制方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5024686A (de) * 1973-07-09 1975-03-15
US4140953A (en) * 1976-03-03 1979-02-20 Unimation, Inc. Real time program modification apparatus
JPS51119070A (en) * 1976-03-26 1976-10-19 Osaka Soda Co Ltd Method of producing crosslinking foam
JPS5622106A (en) * 1979-07-31 1981-03-02 Fujitsu Ltd Servocontrol device
US4403281A (en) * 1981-04-03 1983-09-06 Cincinnati Milacron Industries, Inc. Apparatus for dynamically controlling the tool centerpoint of a robot arm off a predetermined path
DE3277087D1 (en) * 1981-09-24 1987-10-01 Hitachi Ltd Control system for robot hand
US4453221A (en) * 1982-05-13 1984-06-05 Cincinnati Milacron Inc. Manipulator with adaptive velocity controlled path motion

Also Published As

Publication number Publication date
DE3422107A1 (de) 1984-12-20
US4625285A (en) 1986-11-25
JPH0565889B2 (de) 1993-09-20
JPS59231607A (ja) 1984-12-26

Similar Documents

Publication Publication Date Title
DE3422107C2 (de) Roboter-Steuerungsvorrichtung
DE4291618C2 (de) Computernumerisch-gesteuerte Maschine mit einer manuellen Bedieneinheit zur Steuerung eines programmierten Verfahrwegs
DE69735269T2 (de) Steuerverfahren zum schrittbetrieb eines roboters
DE60035651T2 (de) Steuerungssystem zum synchronen kooperativen Betreiben einer Mehrzahl von Robotern
DE3317263C2 (de)
DE102005015810B4 (de) Bearbeitungszeit-Berechnungsvorrichtung
EP0113010A1 (de) Robotersteuerung
DE3727462A1 (de) Bandlegemaschine zur bildung einer schichtstruktur aus einem verbundwerkstoff auf einer komplex konstruierten verlegeform sowie verfahren zur herstellung einer solchen schichtstruktur
DE3210675A1 (de) Vorrichtung zum dynamischen steuern des werkzeugmittelpunkts eines roboterarms abseits einer vorbestimmten bahn
DE3344633A1 (de) Verfahren und vorrichtung zur steuerung eines roboters
DE69837741T2 (de) Verfahren und system zur steuerung eines roboters
DE102007006422A1 (de) Verfahren zum Betreiben von Maschinen mit anpassbaren Bewegungsprofilen
EP2209596B1 (de) Industrieroboter und verfahren zum steuern der bewegung eines industrieroboters
DE4103420C2 (de) Steuervorrichtung und Dateneingabeverfahren für Industrieroboter
EP0419706A1 (de) Verfahren zur numerischen Positions- oder Bahnsteuerung
EP0184075B1 (de) Einrichtung und Verfahren zum Regeln eines Industrieroboters
EP0706103B1 (de) Verfahren und Vorrichtung zur numerischen Bahnsteuerung von Werkzeugmaschinen oder Robotern
DE3306877A1 (de) Verfahren zum betreiben eines industrieroboters
EP0564538B1 (de) Verfahren zur computergestützten steuerung einer maschine bzw. eines prozesses
EP0340538B1 (de) Verfahren zum Steuern der Bewegung eines Maschinenelementes
DE102018009999A1 (de) Numerische steuerung
EP0417337B1 (de) Verfahren zum Betrieb einer numerisch gesteuerten Werkzeugmaschine oder eines Roboters
DE112022000265T5 (de) Numerische Steuerung
DE4026413C2 (de) Positionier-Steuervorrichtung
DE102019009083A1 (de) Numerische Steuervorrichtung

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee