DE102009007181A1 - Method for inputting commands into controller of e.g. multi-axis robot, involves comparing detected force with stored force, and outputting commands associated with stored force to controller if detected force corresponds to stored force - Google Patents

Method for inputting commands into controller of e.g. multi-axis robot, involves comparing detected force with stored force, and outputting commands associated with stored force to controller if detected force corresponds to stored force Download PDF

Info

Publication number
DE102009007181A1
DE102009007181A1 DE200910007181 DE102009007181A DE102009007181A1 DE 102009007181 A1 DE102009007181 A1 DE 102009007181A1 DE 200910007181 DE200910007181 DE 200910007181 DE 102009007181 A DE102009007181 A DE 102009007181A DE 102009007181 A1 DE102009007181 A1 DE 102009007181A1
Authority
DE
Germany
Prior art keywords
manipulator
force
end effector
detected
stored
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.)
Withdrawn
Application number
DE200910007181
Other languages
German (de)
Inventor
Günter Dr. Schreiber
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.)
KUKA Laboratories GmbH
Original Assignee
KUKA Roboter GmbH
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 KUKA Roboter GmbH filed Critical KUKA Roboter GmbH
Priority to DE200910007181 priority Critical patent/DE102009007181A1/en
Priority to PCT/EP2009/007874 priority patent/WO2010069430A1/en
Priority to EP09749012A priority patent/EP2212753B1/en
Priority to AT09749012T priority patent/ATE508401T1/en
Priority to DE502009000624T priority patent/DE502009000624D1/en
Priority to EP09748047A priority patent/EP2359205A1/en
Priority to US13/140,708 priority patent/US9063539B2/en
Priority to PCT/EP2009/007873 priority patent/WO2010069429A1/en
Priority to US13/140,123 priority patent/US8774969B2/en
Priority to KR1020117009485A priority patent/KR101660064B1/en
Priority to CN200980143891.3A priority patent/CN102203685B/en
Priority to CN200980149171.8A priority patent/CN102239454B/en
Publication of DE102009007181A1 publication Critical patent/DE102009007181A1/en
Withdrawn 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/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/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • 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/36068Change program at allowed point of time or program step
    • 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/36099Stop machine and correct position manually
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40562Position and orientation of end effector, teach probe, track them

Landscapes

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

Abstract

The method involves detecting a force that acts on a manipulator in a direction. The detected force is compared with stored force in a command input mode, where a command is assigned to the stored force. The commands associated with the stored force are outputted to a controller of the manipulator if the detected force corresponds to the stored force. The command input mode is activated by pressing an input device. Movement of the manipulator is compared with stored movements in the command input mode. An independent claim is also included for a device for inputting commands into a control of a manipulator.

Description

Die vorliegende Erfindung betrifft ein Verfahren zum Abfahren einer vorgegebenen Bahn durch einen Endeffektor eines Manipulators, insbesondere eines Roboters, eine Steuervorrichtung zur Durchführung eines solchen Verfahrens sowie einen Manipulator, insbesondere einen Roboter, mit einer solchen Steuervorrichtung.The The present invention relates to a method for tracing a predetermined path through an end effector of a manipulator, in particular one Robot, a control device for carrying out such a method and a manipulator, in particular a robot, with such Control device.

Eine typische Aufgabe eines Manipulators besteht darin, mit seinem Endeffektor eine vorgegebene Bahn abzufahren. Dabei kann die Bahn beispielsweise durch direktes Programmieren („direct teaching”), i. e. das manuelle Führen des Endeffektors in gewünschte Lagen in einem Lernmodus, oder durch indirektes Programmieren („off-line programming”), i. e. die Erstellung von Soll-Verläufen der Gelenkwinkel entsprechend der inversen Kinematik der gewünschten Endeffektorlagen vorgegeben worden sein.A typical task of a manipulator is with its end effector to depart a predetermined path. It can, for example, the train through direct programming, i. e. manual guiding the end effector in desired Laying in a learning mode, or through indirect programming ("off-line programming "), i. e. the creation of desired gradients of joint angles accordingly the inverse kinematics of the desired End effector layers have been specified.

Die Lage umfasst dabei eine Position und/oder Orientierung des Endeffektors, die beispielsweise durch einem Vektor x ∈ Rn der Dimension n beschrieben werden kann. Die Bahn des Endeffektors kann dann beispielsweise über einen Bahnparameter s parametrisiert werden (x = x(s)), den der Manipulator im normalen Betrieb entsprechend eines Zeitprofils ds/dt(t) abarbeitet, so dass der Endeffektor die Bahn mit einem entsprechenden Bahngeschwindigkeit dx/dt abfährt.The position includes a position and / or orientation of the end effector, which can be described for example by a vector x ∈ R n of dimension n. The path of the end effector can then be parameterized, for example, via a path parameter s (x = x (s)) which the manipulator executes in normal operation according to a time profile ds / dt (t), so that the end effector processes the path with a corresponding path velocity dx / dt leaves.

Da Manipulatoren, insbesondere Industrie- und Leichtbauroboter wie die Roboter der Baureihen LBR I-IV des Deutschen Zentrums für Luft- und Raumfahrt (DLR), in normalen Betrieb sehr schnell verfahren können und dies eine direkte Untersuchung einer Bahn oder einen rechtzeitigen manuellen Notstop bei fehlerhaften Bahnen erschwert, ist es betriebsintern bereits bekannt, die Bahngeschwindigkeit während des Abfahrens der Bahn durch einen Bediener manuell zu ändern, beispielsweise zu verringern, um bestimmte Bahnabschnitte zu untersuchen oder die Interaktion mit anderen Manipulatoren zu prüfen. Auf der anderen Seite können durch gezielte Vergrößerung der Bahngeschwindigkeit über den Normalbetrieb hinaus vorteilhafterweise sukzessive die dynamischen Grenzen des Manipulators ausgetestet werden.There Manipulators, in particular industrial and lightweight robots such as the robots of the LBR I-IV series of the German Aerospace Center Aerospace (DLR), very fast in normal operation can and this is a direct examination of a train or a timely one Manual emergency stop is difficult for faulty railways, it is internal to the company already known, the web speed during the departure of the train manually by an operator to change For example, to reduce to investigate certain sections of track or to check the interaction with other manipulators. On the other side can through targeted enlargement of the Web speed over the Normal operation also advantageously successively the dynamic Limits of the manipulator are tested.

Bisher wird diese Änderung der Bahngeschwindigkeit während des Betriebs („override”) manuell durch ein Bedienelement an einem Kontrollboard in die Steuerung des Manipulators eingegeben. Dies ist jedoch umständlich, insbesondere, wenn ein Bediener beispielsweise einen Fügeprozess eines Roboters aus der Nähe untersuchen und hierzu die Bahngeschwindigkeit entsprechend herabsetzen will. Denn in diesem Fall muss er mit einer Hand das Bedienelement betätigen.So far will this change the web speed during operation ("override") manually by a control on a control board in the controller entered by the manipulator. However, this is awkward in particular, if an operator, for example, a joining process Close up of a robot investigate and reduce the web speed accordingly want. Because in this case he has to control the operating element with one hand actuate.

Zusätzlich oder alternativ zur Bahngeschwindigkeit kann es wünschenswert sein, auch andere Prozessgrößen des Manipulators und/oder des von ihm durchgeführten Prozesses zu verändern. So sollen beispielsweise beim direkten Programmieren eines Füge- oder Schweißprozesses eine Andruckkraft des Manipulators bzw. ein Schweißstrom an einem Arbeitspunkt durch den Bediener einstellbar sein.Additionally or As an alternative to web speed, it may be desirable to include other process variables of the Manipulator and / or the process carried out by him to change. So for example, when directly programming a joint or welding process a pressure force of the manipulator or a welding current be adjustable by the operator an operating point.

Aufgabe der vorliegenden Erfindung ist es daher, eine komfortablere Änderung wenigstens einer Prozessgröße zu ermöglichen.task Therefore, the present invention is a more comfortable change to allow at least one process variable.

Diese Aufgabe wird durch ein Verfahren nach Anspruch 1 gelöst. Anspruch 13 stellt eine Vorrichtung zur Durchführung eines erfindungsgemäßen Verfahrens, Anspruch 15 einen Manipulator mit einer solchen Steuervorrichtung unter Schutz.These The object is achieved by a method according to claim 1. claim 13 shows an apparatus for carrying out a method according to the invention, Claim 15, a manipulator with such a control device under protection.

Ein Manipulator weist bezüglich einer vorgegebenen Bahn seines Endeffektors einen Lösungsraum auf, der alle Manipulatorstellungen umfasst, die derselben Endeffektorlage zugeordnet sind. Kann der Manipulator eine Endeffektorlage nicht darstellen, entartet der Lösungsraum zur leeren Menge. Ist beispielsweise eine dreidimensionale Position und Orientierung des Endeffektors im Raum, die durch je drei Koordinaten, etwa kartesische oder Polarkoordinaten bzw. Euler- oder Kardanwinkel beschrieben werden kann, durch einen sechsachsigen Manipulator eineindeutig realisierbar, enthält der Lösungsraum entsprechend nur eine Stellung.One Manipulator points a predetermined path of its end effector a solution space which encompasses all manipulator positions, the same end effector position assigned. The manipulator can not have an end effector posture represent, the solution space degenerates to the empty amount. For example, is a three-dimensional position and orientation of the end effector in the space, each by three coordinates, about Cartesian or polar coordinates or Euler or gimbal angle can be described by a six-axis manipulator one-to-one feasible, contains the solution space accordingly only one position.

Übersteigt die Anzahl f der Freiheitsgrade eines Manipulators jedoch die Dimension n der vorgegebenen Lage des Endeffektors um wenigstens 1 (f > n), ist dieser Manipulator bezüglich dieser vorgegebenen Bahn, gegebenenfalls mehrfach, redundant, i. e. sein Lösungsraum umfasst wenigstens zwei derselben Endeffektorlage zugeordneten Manipulatorstellungen. Ein solcher um mehrfache Stellungen erweiterte Lösungsraum wird im Folgenden als „Nullraum” bezeichnet. Dies kann zum einen daraus resultieren, dass der Manipulator sieben oder mehr Freiheitsgrade aufweist wie der vorstehend erwähnte Leichtbauroboter LBR III oder IV des DLR. Zum anderen kann die Dimension n der vorgegebenen Lage des Endeffektors auch kleiner als sechs sein, falls es beispielsweise auf die Orientierung des Endeffektors bezüglich einer Raumachse nicht ankommt, etwa beim Bohren in Richtung der letzten Drehachse eines sechsarmigen Industrieroboters. In diesem Fall ist der Manipulator bezüglich der Bahn, i. e. aufgabenredundant und enthält unendlich viele, derselben Endeffektorlage x ∈ R5 zugeordnete Manipulatorstellungen.However, if the number f of the degrees of freedom of a manipulator exceeds the dimension n of the predetermined position of the end effector by at least 1 (f> n), this manipulator is redundant with respect to this predetermined path, possibly multiple times, ie its solution space comprises at least two manipulator positions assigned to the same end effector position. Such a solution space extended by multiple positions is referred to below as "zero space". On the one hand, this can result from the fact that the manipulator has seven or more degrees of freedom, such as the above-mentioned lightweight robot LBR III or IV of the DLR. On the other hand, the dimension n of the predetermined position of the end effector may also be less than six, if, for example, the orientation of the end effector with respect to a spatial axis does not matter, for example when drilling in the direction of the last axis of rotation of a six-armed industrial robot. In this case, the manipulator is task redundant with respect to the path and contains infinitely many manipulator positions assigned to the same end effector position x ∈ R 5 .

Die der vorliegenden Erfindung zugrundeliegende Idee besteht nun darin, eine solche Redundanz eines Manipulators auszunutzen, um eine oder mehrere Prozessgrößen des Manipulators zu ändern bzw. vorzugeben.The basis of the present invention ing idea is to exploit such a redundancy of a manipulator to change or specify one or more process variables of the manipulator.

Dabei kann es sich um Prozessgrößen handeln, die einen von dem Manipulator durchgeführten Prozess (mit) bestimmen. Beispielsweise stellen der Schweißstrom einer vom Manipulator während eines Schweißprozesses geführten Schweißzange und deren Bahngeschwindigkeit den Schweißprozess (mit) bestimmende Prozessgrößen dar. Bei einem Fügeprozess stellt beispielsweise die Andruckkraft, mit der der Manipulator ein Werkstück fügt, eine den Fügeprozess (mit) bestimmende Prozessgröße dar. Bei einem Lackierprozess stellen wiederum die Bahngeschwindigkeit des Endeffektors des Manipulators sowie der Farbausstoß den Lackierprozess (mit) bestimmende Prozessgrößen dar. Im Folgenden wird die vorliegende Erfindung anhand der Bahngeschwindigkeit als Beispiel für eine zu ändernde Prozessgröße näher erläutert. Die vorliegende Erfindung ist jedoch nicht hierauf beschränkt – vielmehr können beliebige Prozessgrößen geändert werden. Der Begriff „Prozessgröße” im Sinne der vorliegenden Erfindung umfasst daher jede, insbesondere physikalische, Größe, die von einem Benutzer in Zusammenhang mit einem Manipulator einstell- bzw. veränderbar ist, beispielsweise die Helligkeit einer Lichtquelle, die vom Manipulator getragen wird und/oder dessen Arbeitsbereich beleuchtet, eine Temperatur einer Arbeitszelle des Manipulators, eine optische und/oder akustische Anzeige oder dergleichen.there can they be process variables determine a process performed by the manipulator. For example, the welding current is one from the manipulator while a welding process out welding gun and whose web speed determines (with) the welding process Process variables. In a joining process For example, represents the pressure force with which the manipulator a workpiece adds, one the joining process (with) determining process variable. In a painting process in turn set the web speed the end effector of the manipulator and the color output the painting process (with) determining process variables. In the following, the present invention is based on the web speed as an example for one to be changed Process variable explained in more detail. The however, the present invention is not limited thereto, but rather can be any Process variables are changed. The term "process variable" in the sense The present invention therefore includes any, especially physical, Size that by a user in connection with a manipulator. or changeable is, for example, the brightness of a light source, that of the manipulator is worn and / or illuminates the work area, a temperature a working cell of the manipulator, an optical and / or acoustic Display or the like.

In einer bevorzugten Ausführung der vorliegenden Erfindung wird der Endeffektor durch eine erfindungsgemäße Steuervorrichtung in an sich bekannter Weise stets in der vorgegebenen Lage entsprechend der vorgegebenen Bahn bewegt. Hierzu kann die Steuervorrichtung beispielsweise eine entsprechende Lageregelung für den Endeffektor aufweisen. Vorliegend umfasst der Begriff „Steuerung” daher auch eine Regelung, i. e. eine Ausgabe von Steuergrößen unter Berücksichtigung von Soll- und Ist-Größen und einer Regeldifferenz zwischen diesen.In a preferred embodiment According to the present invention, the end effector is constituted by a control device according to the invention in a conventional manner always in the predetermined position accordingly the predetermined path moves. For this purpose, the control device for example, have a corresponding position control for the end effector. In the present case, the term "control" therefore also includes a regulation i. e. an output of control variables below consideration of nominal and actual sizes and a control difference between these.

Auch bei Änderung der Manipulatorstellung im Nullraum durch einen Bediener kann dabei weiterhin die vorgegebene Bahn nachgefahren werden. Hierzu sind verschiedene Ausführungen von Admittanz-Regelungen und Impedanz-Regelungen bekannt, die eine Bewegung des Manipulators durch den Bediener ermöglichen. Soll beispielsweise ein sechsarmiger Industrieroboter mit seinem Endeffektor eine Bahn nachfahren, bei der die Orientierung des Endeffektors bezüglich der letzten Drehachse des Roboters nicht vorgegeben ist, kann eine Positionsregelung für diese Drehachse durch entsprechende Wahl des Proportionalitätsfaktors eines reinen Proportionalreglers so weich geschaltet werden, dass ein Bediener den Endeffektor manuell um diese Achse drehen kann. Fährt der vorstehend genannte siebenachsige LBR III eine Bahn nach, kann ein Benutzer bei entsprechender Admittanz-Regelung beispielsweise den Ellbogen manuell aus seiner Position drücken, wobei die Admittanz-Regelung den Endeffektor weiterhin in einer durch drei Positions- und drei Winkelkoordinaten eindeutig vorgegebenen Lage entlang der vorgegebenen Bahn führt. Eine solche Bewegung des Manipulators durch den Bediener führt somit stets zu einer Ablage des Manipulators in seinem Nullraum, i. e. einer Differenz zwischen zwei Manipulatorstellungen des Nullraumes.Also at change the manipulator position in zero space by an operator can thereby continue to follow the predetermined path. These are different versions known from admittance regulations and impedance regulations, the one Allow movement of the manipulator by the operator. For example a six-armed industrial robot with its end effector a train nachfahren, in which the orientation of the end effector with respect last rotation axis of the robot is not specified, a position control for this Rotary axis by appropriate choice of the proportionality factor a pure proportional controller are switched so soft that an operator can manually rotate the end effector around this axis. Does that drive The aforementioned seven-axis LBR III trajectory may include Users with appropriate admittance control, for example the Manually push elbows out of its position, taking the admittance control the end effector continues in one by three position and three Angular coordinates uniquely predetermined position along the given Train leads. Such a movement of the manipulator by the operator thus leads always to a filing of the manipulator in its zero space, i. e. a difference between two manipulator positions of the null space.

Erfindungsgemäß wird nun beim Abfahren einer vorgegebenen Bahn durch einen Endeffektor eines Manipulators, der bezüglich der vorgegebenen Bahn einen Nullraum mit wenigstens zwei derselben Endeffektorlage zugeordneten Manipulatorstellungen aufweist, i. e. bezüglich der vorgegebenen Bahn redundant ist, eine Ablage des Manipulators in dem Nullraum erfasst und wenigstens eine Prozessgröße, beispielsweise die Bahngeschwindigkeit des Endeffektors entsprechend der erfassten Ablage geändert.According to the invention will now when traveling a predetermined path through an end effector of a Manipulator referring to the predetermined path a null space with at least two of the same Endeffektorlage having associated manipulator positions, i. e. regarding the predetermined path is redundant, a filing of the manipulator in the zero space detected and at least one process variable, for example the web speed of the end effector corresponding to the detected Filing changed.

Hierdurch kann also, ohne die Lage des Endeffektors bezüglich der abzufahrenden Bahn zu verändern, die Prozessgröße auf einfache und direkte Weise verändert werden, indem die Ablage des Manipulators im Nullraum als Maß einer gewünschten Prozessgrößenänderung genutzt wird. Der Bediener kann den Manipulator direkt anfassen und muss zur Prozessgrößenänderung kein Bedienelement eines Kontrollboardes oder dergleichen betätigen.hereby can therefore, without the position of the end effector with respect to the trajectory to change, the process size to simple and changed direct way be by the storage of the manipulator in the zero space as a measure of desired process variable change is being used. The operator can touch the manipulator directly and has to process variable change do not operate an operating element of a control board or the like.

Eine solche Befehlseingabe kann vorteilhafterweise intuitiv bedient werden. Beispielsweise kann das Bewegen des Manipulators in Richtung der Bahn die Geschwindigkeit erhöhen, entgegen der Bahnrichtung reduzieren oder sogar ihr Vorzeichen ändern, so dass der Endeffektor auf der vorgegebenen Bahn rückwärts fährt. Gleichermaßen kann beispielsweise das Drücken des Ellbogens des LBR III oder das Drehen einer Endflansches eines Industrieroboters in seinem letzten Drehgelenk in eine Richtung eine Geschwindigkeits- oder Andruckkraftzunahme, ein Ziehen bzw. Drehen in die entgegengesetzte Richtung eine Abnahme der Bahngeschwindigkeit bzw. der Andruckkraft bewirken.A such command input can advantageously be operated intuitively. For example, moving the manipulator in the direction of Train to increase speed reduce or even change their sign, so that the end effector moves backwards on the given path. Likewise for example, pressing of the elbow of the LBR III or turning an end flange of a Industrial robot in its last swivel in one direction one Speed or Pressure increase, pulling in the opposite direction cause a decrease in the web speed or the pressing force.

Die Änderung der Bahngeschwindigkeit dx/dt kann auf verschiedene Arten realisiert werden. Beispielsweise kann zur Geschwindigkeitserhöhung ein vorgegebenen Geschwindigkeitstrapezprofil ds/dt(s) in Richtung der Zeitachse proportional verkürzt, zur Geschwindigkeitsverringerung gestreckt werden. Gleichermaßen kann einer einfachen Proportional-Differential-Regelung die nächste anzufahrende Lage der vorgegebenen Bahn früher bzw. später als Sollwert zugeführt werden, um die Geschwindigkeit zu erhöhen bzw. zu reduzieren.The change of the web speed dx / dt can be realized in different ways. For example, in order to increase the speed, a predefined speed trapezoidal profile ds / dt (s) can be proportionately shortened in the direction of the time axis and stretched for speed reduction. Similarly, a simple proportional-derivative control, the next to be approached position of the given path early or spä ter be supplied as a setpoint to increase or reduce the speed.

Bevorzugt ist zu jeder Endeffektorlage der vorgegebenen Bahn eine der Manipulatorstellungen des Nullraumes als Soll-Manipulatorstellung vorgegeben. Hierzu kann beispielsweise bei der Bahnplanung eine der Manipulatorstellungen des Nullraumes entsprechend geeigneter Kriterien ausgewählt werden, etwa die Manipulatorstellung, deren Anfahren einen minimalen Zeit- oder Energieaufwand erfordert, oder deren Unterschied zu einer vorausgegangenen Stellung am geringsten ist. Das letztgenannte Kriterium kann beispielsweise ein unerwünschtes Umspringen zwischen verschiedenen Roboterstellungen beim Anfahren der nächsten Lage vermeiden. Bei der direkten Programmierung durch manuelles Führen des Manipulators („direct teaching”) ergibt sich die Sollstellung von selbst aus der jeweiligen Stellung, in die der Bediener den Manipulator beim Teachen bringt.Prefers For each Endeffektorlage the predetermined path is one of the manipulator positions of the Nullraumes as a target manipulator position specified. For this purpose, for example, in the railway planning a the manipulator positions of the null space correspondingly suitable Criteria selected be, such as the manipulator position whose start a minimal Time or energy required, or their difference to one previous position is the lowest. The latter criterion may, for example, an undesired jump between different robot positions when approaching the next position avoid. In direct programming by manually guiding the Manipulator ("direct teaching ") if the nominal position results automatically from the respective position, in which the operator brings the manipulator while teaching.

Als Ablage kann dann die Differenz dieser Soll- zu der tatsächlichen Manipulatorstellung erfasst werden. Wird der Manipulator durch den Bediener aus seiner Sollstellung bewegt, führt dies entsprechend zu einer dauernden Ablage, solange der Manipulator nicht wieder in der Sollstellung ist. Ist beispielsweise eine bestimmte, konstante Winkelstellung des Endeffektors eines sechsachsigen Roboters bezüglich seiner letzten Drehachse als Sollstellung vorgegeben, so führt eine bleibende Verdrehung des Endeffektors in dieser Drehachse durch den Bediener zu einer konstanten Ablage und einer entsprechenden Änderung der Prozessgröße, beispielsweise der Bahngeschwindigkeit.When Filing can then be the difference between this setpoint and the actual one Manipulator position are detected. If the manipulator by the Operator moved from its nominal position, this leads to a corresponding permanent storage, as long as the manipulator is not back in the desired position is. For example, is a certain, constant angular position of the end effector of a six-axis robot with respect to it given last axis of rotation as a target position, so leads a permanent twisting of the end effector in this axis of rotation the operator to a constant filing and a corresponding change the process size, for example the web speed.

Die Prozessgröße kann in einer ersten Ausführung der vorliegenden Erfindung der erfassten Ablage entsprechen, beispielsweise proportional zu dieser sein. Hierzu kann einer bestimmten Größe der Ablage, beispielsweise dem Betrag eines Differenzvektors der Gelenkwinkel des Manipulators eine entsprechend Prozessgröße zugeordnet werden. Im vorstehend genannten Beispiel kann etwa die Bahngeschwindigkeit durch die Winkelstellung des Endeffektors vorgegeben werden, i. e. jedem Winkel entspricht eine bestimmte Geschwindigkeit dx/dt.The Process size can in a first embodiment correspond to the present invention, the detected storage, for example be proportional to this. For this purpose, a specific size of the tray, for example, the amount of a difference vector of the joint angle be assigned to the manipulator a corresponding process size. Im above example mentioned may be about the web speed through the angular position of the end effector, i. e. corresponds to every angle a certain speed dx / dt.

In einer zweiten Ausführung kann einer bestimmten Größe der Ablage stattdessen auch eine Änderung der Prozessgröße zugeordnet werden, so dass der Manipulator beispielsweise seine Geschwindigkeit erhöht, solange ein Bediener eine Ablage erzeugt. Auch hier kann die Änderung proportional zur Ablage erfolgen, i. e. größere Ablagen die Prozessgröße stärker ändern. Eine Rückkehr zur ursprünglichen Prozessgröße erfordert in diesem Fall im Gegensatz zur ersten Ausführung nicht nur eine Rücknahme der Ablage, sondern zusätzlich eine anschließende Ablage in der entgegengesetzten Richtung.In a second embodiment can be a specific size of the tray instead, a change as well assigned to the process variable so that the manipulator, for example, his speed elevated, as long as an operator creates a tray. Again, the change proportional to the filing, i. e. larger shelves change the process size more. A return to the original Process size required in this case, unlike the first embodiment, not just a return the filing, but in addition a subsequent one Storage in the opposite direction.

Da die Ablage, insbesondere von einer dem Bediener unbekannten Sollstellung, von diesem nur schwer intuitiv erkannt wird, wird vorteilhafterweise eine Regelung zur Verringerung der Ablage durchgeführt. Lässt der Bediener den Manipulator los, kehrt dieser infolge der Regelung dann selbstständig in seine Sollstellung im Nullraum zurück. Dies ist zum einen vorteilhaft, wenn die Sollstellungen beispielsweise zur Kollisionsvermeidung des redundanten Manipulators vorgegeben werden. Zum anderen vereinfacht es die vorstehend beschriebene zweite Ausführung, da der Manipulator in seine Sollstellung im Nullraum zurückkehrt, wenn der Bediener keine Kraft mehr auf ihn ausübt, so dass die Prozessgröße solange geändert wird, solange der Bediener den Manipulator aktiv im Nullraum aus seiner Sollstellung bewegt, und der Manipulator anschließend mit der geänderten Prozessgröße weiterfährt.There the storage, in particular of a nominal position unknown to the operator, is recognized by this difficult intuitive, is advantageously a Control to reduce the filing performed. The operator leaves the manipulator go, this returns then as a result of the scheme independently in his Reference position in zero space back. This is on the one hand advantageous if the debit positions, for example specified for collision avoidance of the redundant manipulator become. On the other hand, it simplifies the second one described above Execution, because the manipulator returns to its nominal position in null space, if the operator no longer exerts any force on him, so that the process size as long changed is active as long as the operator from the manipulator in the null space moves its nominal position, and then the manipulator with the changed one Process size continues.

Alternativ kann auch eine Regelung durchgeführt werden, die eine vom Benutzer geänderte Stellung im Nullraum als neuen Sollwert zugrundelegt. Dies ist insbesondere in Verbindung mit der vorstehend beschriebenen ersten Ausführung vorteilhaft, bei der der Bediener durch Auswahl einer der möglichen Manipulatorstellungen im Nullraum eine Prozessgröße vorgeben kann. Hierzu können beispielsweise anhand eines mathematischen Ersatzmodells des Manipulators und der neuen, vom Bediener vorgegebenen Manipulatorstellung Motormomente berechnet und als Sollwerte einer Kraftregelung zugeführt werden, die Gewichts-, Reibungs- und/oder dynamische Kräfte im Wesentlichen kompensieren und den Manipulator so in der neuen vorgegebenen Stellung halten.alternative can also be a regulation being a user-changed position is based in zero space as a new setpoint. This is special advantageous in connection with the first embodiment described above, in which the operator by selecting one of the possible manipulator positions specify a process variable in zero space can. You can do this for example, based on a mathematical replacement model of the manipulator and the new, given by the operator manipulator position motor moments calculated and supplied as nominal values of a force control, substantially compensate for weight, friction and / or dynamic forces and hold the manipulator in the new predetermined position.

Bevorzugt wird die Prozessgröße, beispielsweise die Bahngeschwindigkeit entsprechend einer Größe und/oder Richtung der erfassten Ablage geändert. Eine Änderung entsprechend der betragsmäßigen Größe, beispielsweise des Betrags eines Differenzvektors in den Gelenkwinkeln, ermöglicht das Abfahren der Bahn mit verschiedenen Geschwindigkeiten, die vom Bediener intuitiv durch größere oder kleinere Ablagen vorgebbar sind. Eine Änderung entsprechend der Richtung ermöglicht insbesondere ein Abfahren der vorgegebenen Bahn in umgekehrter Richtung.Prefers becomes the process size, for example the web speed according to a size and / or direction of the detected Filing changed. A change according to the magnitude, for example the amount of a difference vector in the joint angles, allows the shutdown the web at different speeds, intuitive by the operator by larger or smaller Trays can be specified. A change according to the direction allows in particular a departure of the predetermined path in the reverse direction.

Der Manipulator kann die vorgegebene Bahn lagegeregelt abfahren. Hierzu können beispielsweise die Sollstellungen im Nullraum vorgegeben sein und durch Proportional-Differential-Integral-(PID)-Regler nacheinander angefahren werden.Of the Manipulator can leave the predetermined path position-controlled. For this can For example, the desired positions in the zero space to be specified and by Proportional differential integral (PID) controller successively be approached.

Gleichermaßen kann der Manipulator auch kraftgeregelt werden. Hierzu können beispielsweise anhand eines mathematischen Ersatzmodells des Manipulators die zum Abfahren der vorgegebenen Bahnen erforderlichen Drehmomente in den Motoren des Manipulators errechnet und als Sollwerte Kraftreglern der Motoren zugeführt werden.Likewise, the manipulator can also be force-controlled. For example, this can be done calculated on the basis of a mathematical replacement model of the manipulator for driving the predetermined paths required torques in the motors of the manipulator and fed as set values force regulators of the motors.

Sowohl bei lage- als auch kraftgeregelten Manipulatoren ist es vorteilhaft, diese nachgiebig zu regeln, so dass ein Bediener manuell die Stellung des Manipulators im Nullraum ändern kann. Dies kann beispielsweise bei herkömmlichen Industrierobotern mit PID-Einzelgelenkregelung durch Reduzierung des Proportionalanteils und Deaktivieren des Integralreglers realisiert werden. Bei kraftgeregelten Manipulatoren können Kraftreglern der Motoren Sollwerte vorgegeben werden, die im Wesentlichen nur die Trägheits-, Reibungs- und Gewichtskräfte des Manipulators kompensieren.Either with position-controlled and force-controlled manipulators, it is advantageous to regulate this yielding, so that an operator can manually adjust the position of the Change Manipulator in Null Space can. This can, for example, in conventional industrial robots with PID single-joint control by reducing the proportional component and deactivating the integral controller can be realized. For force-controlled manipulators can Force regulators of the engine setpoints are given, which are essentially only the inertia, Friction and weight forces of the manipulator.

Die Ablage kann anhand von Bewegungen und/oder Kräften in Gelenken des Manipulators erfasst werden. In der Regel verfügen die Bewegungsachsen eines Manipulators über eine Positionserfassung, beispielsweise über Drehgeber oder dergleichen. Anhand der Änderung in den einzelnen Gelenken kann dann eine Ablage des Manipulators im Nullraum erfasst werden. Gleichermaßen können auch, sofern entsprechende Kraftsensoren vorhanden sind, Kräfte gemessen werden, die ein Bediener auf den Manipulator ausübt, um ihn in seinem Nullraum zu bewegen. Vorliegend werden dabei gegensinnige Kräftepaare, i. e. Drehmomente verallgemeinernd ebenfalls als Kräfte bezeichnet.The Storage can be based on movements and / or forces in joints of the manipulator be recorded. As a rule, the axes of motion have a Manipulator over a position detection, for example via encoders or the like. Based on the change in the individual joints can then be a filing of the manipulator be detected in the null space. Likewise, provided appropriate force sensors are present, forces an operator applies the manipulator to him to move in its null space. In the present case opposing pairs of forces, i. e. Generalizing torques also referred to as forces.

In einer bevorzugten Ausführung der vorliegenden Erfindung ist ein Führungsgriff vorgesehen, der fest oder lösbar an dem Manipulator befestigt ist. An diesem Führungsgriff kann ein Bediener gezielt eine Ablage des Manipulators in seinem Nullraum hervorrufen, indem er den Manipulator mittels des Führungsgriffes bewegt. Durch einen solchen Führungsgriff wird eine Angriffsmöglichkeit geschaffen, die dem Bediener intuitiv klarmacht, wo und in welche Richtung er den Manipulator bewegen muss, um eine Ablage zu erzeugen. Bevorzugt können in dem Führungsgriff Bedienelemente vorgesehen sein, beispielsweise ein Sicherheitselement, dass aktiv bedient werden muss, um ein Verfahren des Manipulators, eine Bewegung des Manipulators im Nullraum durch den Bediener, oder eine manuelle Änderung der Prozessgröße zu ermöglichen.In a preferred embodiment The present invention provides a guide handle which fixed or detachable attached to the manipulator. At this guide handle can be an operator specifically cause a storage of the manipulator in its zero space, by moving the manipulator by means of the guide handle. By such a leadership becomes an attack option created, which intuitively clarifies the operator, where and in which direction he has to move the manipulator to create a tray. Prefers can in the guide handle Be provided controls, such as a security element, that actively must be operated to a procedure of the manipulator, a movement of the manipulator in neutral space by the operator, or a manual change of To allow process size.

Weitere Aufgaben, Merkmale und Vorteile ergeben sich aus den Unteransprüchen und den nachfolgenden Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:Further Objects, features and advantages emerge from the dependent claims and the following embodiments. This shows, partially schematized:

1 einen sechsachsigen Manipulator nach einer Ausführung der vorliegenden Erfindung; 1 a six-axis manipulator according to an embodiment of the present invention;

2 einen siebenachsigen Manipulator nach einer weiteren Ausführung der vorliegenden Erfindung. 2 a seven-axis manipulator according to another embodiment of the present invention.

3 einen Leichtbauroboter nach einer weiteren Ausführung der vorliegenden Erfindung; und 3 a lightweight robot according to another embodiment of the present invention; and

4 ein Ablaufdiagramm eines Verfahrens nach einer Ausführung der vorliegenden Erfindung. 4 a flowchart of a method according to an embodiment of the present invention.

1 zeigt einen Manipulator in Form eines sechsachsigen Roboters 1 nach einer Ausführung der vorliegenden Erfindung. Seine Stellung wird durch die Gelenkwinkel q = [q1, q2, ... q6] beschrieben. 1 shows a manipulator in the form of a six-axis robot 1 according to an embodiment of the present invention. Its position is described by the joint angles q = [q1, q2, ... q6].

Der Endeffektor des Roboters 1, symbolisiert durch den Tool center point TCP, soll eine vorgegebene horizontale Bahn x(s) abfahren, die in 1 strichliiert angedeutet ist. Dabei ist der Winkel q6 des Endeffektors TOP nicht vorgegeben, da ein daran befestigtes Werkzeug (nicht dargestellt) rotationssymmetrisch zur sechsten, letzten Bewegungsachse des Roboters 1 ist. Die Lage x ∈ R5 des Endeffektors TOP kann daher beispielsweise durch drei kartesische Koordinaten und die beiden Winkel zur Zeichenebene bzw. zur Horizontalen in der Zeichenebene der 1 beschrieben werden.The end effector of the robot 1 , symbolized by the tool center point TCP, is to descend a given horizontal trajectory x (s), which in 1 is indicated by dashed lines. In this case, the angle q6 of the end effector TOP is not predetermined, since a tool attached thereto (not shown) is rotationally symmetrical to the sixth, last movement axis of the robot 1 is. The position x ∈ R 5 of the end effector TOP can therefore be determined, for example, by three Cartesian coordinates and the two angles to the plane of the drawing or to the horizontal in the plane of the drawing 1 to be discribed.

Der sechsachsige Roboter 1 ist daher bezüglich der vorgegebenen Bahn x(s) redundant. I. e., er kann eine vorgegebene Lage x(s) des Endeffektors TOP, die nur durch die Gelenkwinkel q1, ... q5 bestimmt ist, durch unendlich viele verschiedene Manipulatorstellungen [q1, ... q5, q6 ∈ [0, 2π]) realisieren, die durch Drehung des Endeffektors TOP um die sechste Bewegungsachse auseinander hervorgehen und zusammen den Nullraum des Roboters 1 bezüglich der vorgegebenen Bahn x(s) bilden.The six-axis robot 1 is therefore redundant with respect to the given path x (s). I. e., He can a predetermined position x (s) of the end effector TOP, which is determined only by the joint angle q1, ... q5, by infinitely many different manipulator positions [q1, ... q5, q6 ∈ [0, 2π]), which emerge apart by rotation of the end effector TOP about the sixth axis of movement and together the zero space of the robot 1 form x (s) with respect to the given path.

Zwei dieser Manipulatorstellungen, die alle derselben Endeffektorlage zugeordnet sind, sind in 1 gezeigt. Dabei ist eine erste Stellung q durchgezogen, eine zweite Stellung q' strichliiert dargestellt. Jede Stellung wird durch einen Vektor der Gelenkwinkel beschrieben: q = [q1, q2, ... q6 = 0] ; q' = [q1', q2', ... q6' = π].Two of these manipulator positions, which are all associated with the same end effector position, are in 1 shown. In this case, a first position q is pulled through, a second position q 'shown by dashed lines. Each position is described by a vector of joint angles: q = [q1, q2, ... q6 = 0]; q '= [q1', q2 ', ... q6' = π].

Als Soll-Stellung qsoll im Nullraum ist die in 1 durchgezogene Stellung (q6 = 0) vorgegeben, da der Endeffektor TOP beim Teachen entsprechend geführt wurde.As nominal position qsoll in null space is the in 1 solid position (q6 = 0) given because the end effector TOP was performed accordingly during teaching.

Der Roboter fährt die vorgegebene Bahn x(s) mit seinem Endeffektor TOP in Betrieb standardmäßig mit einer konstanten Geschwindigkeit dx/dt = v ab. Hierzu werden Proportional-Integral-Reglern (nicht dargestellt) für die ersten fünf Bewegungsachsen alle 10 ms neue Sollwerte q1soll, ... q5soll zugeführt, so dass der Roboter 1 jeweils in die neue Stellung q verfährt und dabei seinen Endeffektor TOP entlang der Bahn x(s) bewegt.By default, the robot travels the predetermined path x (s) with its end effector TOP in operation at a constant speed dx / dt = v. For this purpose, proportional integral controllers (not shown) are supplied with new setpoint values q1soll, ... q5soll every 10 ms for the first five axes of motion leads, so the robot 1 each moved to the new position q while its end effector TOP along the path x (s) moves.

Der sechsten Achse ist ein reiner Proportionalregler (nicht dargestellt) aufgeschaltet, dessen Proportionalitätskonstante so gering gewählt ist, dass ein Bediener den Endeffektor TOP manuell um die sechste Bewegungsachse verdrehen kann.Of the sixth axis is a pure proportional controller (not shown) switched, whose proportionality constant is chosen so low that an operator manually the end effector TOP around the sixth axis of movement can twist.

In einer Steuervorrichtung (nicht dargestellt) des Roboters 1 wird unter anderem der Gelenkwinkel q6 ist erfasst. Verdreht nun der Bediener den Endeffektor TOP, während der Roboter 1 die Bahn x(s) abfährt, erfasst die Steuereinrichtung die Ablage qist – qsoll, die im Ausführungsbeispiel einen Vektor [0, ... 0, q6ist – q6soll] bildet. Dessen Betrag |q6ist – q6soll| wird linear so skaliert, dass eine Verdrehung aus der Solllage um 0° einem Faktor K = 1, eine Verdrehung um +180° einem Faktor K = 2 und eine Verdrehung um –180° einem Faktor K = 0 entspricht. Die Steuervorrichtung bewegt nun den Endeffektor mit einer konstanten Geschwindigkeit K × v, indem beispielsweise bei K = 2 den Reglern für die ersten fünf Bewegungsachsen alle 5 ms die nächsten Sollwerte q1soll, ... q5soll zugeführt werden. Verdreht entsprechend der Bediener den Endeffektor um –180°, hält der Roboter 1 den Endeffektor TOP zeitweise völlig an. Verdreht der Bediener den Endeffektor noch weiter, beispielsweise um insgesamt – 360°, fährt der Endeffektor TOP die vorgegebene Bahn x(s) mit der Geschwindigkeit –v rückwärts ab, indem nun für die ersten fünf Bewegungsachsen alle 10 ms die bereits abgefahrenen Sollstellungen in umgekehrter Reihenfolge sukzessive als neue Sollwerte vorgegeben werden.In a control device (not shown) of the robot 1 Among other things, the joint angle q6 is detected. Now the operator twists the end effector TOP, while the robot 1 If the path x (s) leaves, the control device records the bin qist - qsoll, which forms a vector [0,... 0, q6act-q6set] in the exemplary embodiment. Whose amount | q6is - q6soll | is linearly scaled so that a rotation from the target position by 0 ° corresponds to a factor K = 1, a rotation by + 180 ° to a factor K = 2 and a rotation by -180 ° to a factor K = 0. The control device now moves the end effector at a constant speed K × v, for example, at K = 2, supplying the regulators for the first five axes of movement every 5 ms with the next setpoint values q1soll, ... q5soll. If the operator twists the end effector by -180 °, the robot stops 1 the end effector TOP at times completely. If the operator twists the end effector even further, for example by a total of 360 °, the end effector TOP moves the predetermined path x (s) backwards at the speed -v, by reversing the already traveled desired positions in reverse for the first five movement axes every 10 ms Sequence successively as new setpoints are specified.

Lässt der Bediener den Endeffektor TOP los, dreht der Proportionalregler für die sechste Achse den Endeffektor wieder in die Solllage q6soll = 0, die Steuervorrichtung ändert die Bahngeschwindigkeit entsprechend wieder auf v, da der Faktor K auf 1 zurückgeht.Leaves the Operator loses the end effector TOP, the proportional controller rotates for the sixth Axis the end effector back to the desired position q6soll = 0, the control device changes the Path speed accordingly back to v, since the factor K on 1 goes back.

2 zeigt in 1 entsprechender Darstellung einen Manipulator in Form eines siebenachsigen Roboters 1 nach einer weiteren Ausführung der vorliegenden Erfindung. Seine Stellung wird entsprechend durch die Gelenkwinkel q = [q1, q2, ... q7] beschrieben. Dabei sind der Ausführung gemäß 1 entsprechende Elemente durch gleiche Bezugszeichen bezeichnet, so dass zu deren Erläuterung auf die vorstehenden Ausführungen verwiesen werden darf und nachfolgend nur auf die Unterscheide eingegangen wird. 2 shows in 1 corresponding representation of a manipulator in the form of a seven-axis robot 1 according to another embodiment of the present invention. Its position is described by the joint angles q = [q1, q2, ... q7]. In this case, the execution according to 1 corresponding elements are denoted by the same reference numerals, so that reference may be made to the above statements to explain them and will be discussed below only on the distinction.

In der weiteren Ausführung soll der Endeffektor TOP wiederum die Bahn x(s) abfahren, wobei diesmal jedoch auch seine Orientierung um die gestrichelt eingezeichnete Bahn vorgegeben ist, um beispielsweise eine Schleifscheibe (nicht dargestellt) an einer Oberfläche entlang zu führen. Die Lage x ∈ R6 des Endeffektors TOP wird daher beispielsweise durch die Position des Endeffektors im Raum und dessen Orientierung, definiert durch drei Euler-Winkel, beschrieben.In the further embodiment, the end effector TOP is again intended to travel the web x (s), this time, however, also being given its orientation around the dashed web in order, for example, to guide a grinding wheel (not shown) along a surface. The position x ∈ R 6 of the end effector TOP is therefore described, for example, by the position of the end effector in space and its orientation, defined by three Euler angles.

Da der Roboter 1 jedoch sieben Gelenke aufweist, ist er redundant, i. e. die vorgegebene Lage x des Endeffektors kann durch unendlich viele verschiedene Manipulatorstellungen dargestellt werden, die auseinander durch Drehung des übrigen Roboters 1 um die letzte Bewegungsachse eines festgehaltenen Endeffektors 6 bei inertialfester Basis hervorgehen und zusammen den Nullraum bilden. Als Sollstellung im Nullraum wird bei der Bahnplanung die energieoptimale Stellung, in der der Roboter 1 die geringsten statischen und dynamischen Kräfte aufbringen muss, bestimmt.Because the robot 1 However, it has seven joints, it is redundant, ie the predetermined position x of the end effector can be represented by an infinite number of different manipulator positions that apart by rotation of the rest of the robot 1 around the last axis of movement of a held end effector 6 emerge at inertial solid base and together form the null space. As a target position in zero space is in the path planning, the energy-optimal position in which the robot 1 the least static and dynamic forces must be applied.

Der Roboter 1 verfügt über eine Admittanz-Regelung, die es ermöglicht, den Ellbogen, der durch das vierte Gelenk mit dem Gelenkwinkel q3 gebildet wird, manuell zu bewegen, wobei der Endeffektor TCP seine vorgegebene Lage x beibehält.The robot 1 has an admittance control which makes it possible to manually move the elbow formed by the fourth joint with the joint angle q3, the end effector TCP maintaining its predetermined position x.

Bewegt der Bediener nun den Ellbogen in Richtung der vorgegebenen Bahn, i. e. nach rechts in 2, so erhöht die Steuervorrichtung, wie vorstehend beschrieben, entsprechend der Ablage, i. e. des Betrags des Differenzvektors qist – qsoll die Geschwindigkeit dx/dt, mit der der Endeffektor die vorgegebene Bahn x(s) abfährt. Lässt der Bediener den Ellbogen los, führt die Admittanz-Regelung ihn in die Sollstellung zurück, wodurch sich die Bahngeschwindigkeit wieder auf den Ausgangswert reduziert. Bewegt hingegen der Bediener den Ellbogen entgegen der vorgegebenen Bahn (nach links in 2), i. e. „hält” den die Bahn abfahrenden Roboter am Ellbogen, so verringert die Steuervorrichtung, wie vorstehend beschrieben, entsprechend der Ablage, i. e. des Betrags des Differenzvektors qist – qsoll die Geschwindigkeit dx/dt, mit der der Endeffektor die vorgegebene Bahn x(s) abfährt. Bewegt der Bediener den Ellbogen dabei entgegen der vorgegebenen Bahn entsprechend weit, so hält der Roboter 1 völlig an, i. e. reduziert seine Geschwindigkeit auf Null, oder fährt die bereits durchlaufene Bahn x(s) sogar rückwärts ab.The operator now moves the elbow in the direction of the predetermined path, ie to the right in 2 Thus, as described above, the control device increases the speed dx / dt at which the end effector departs from the predetermined path x (s) according to the storage, ie, the amount of the difference vector qact-qsoll. When the operator releases the elbow, the admittance control returns him to the set position, which reduces the web speed back to its original value. On the other hand, the operator moves his elbow against the predetermined path (to the left in 2 ), ie, "holds" the web-departing robot at the elbow, the controller reduces the velocity dx / dt at which the end-effector approaches the predetermined path x (as described above) according to the bin, ie the magnitude of the difference vector qact-qsoll. s) leaves. If the operator moves the elbow correspondingly far in the opposite direction to the given path, the robot stops 1 completely, ie it reduces its speed to zero, or even traverses the already traversed path x (s) even backwards.

Durch die vorliegende Erfindung wird es daher ermöglicht, die Geschwindigkeit, mit der ein bezüglich einer vorgegebenen Bahn redundanter Roboter diese abfährt, einfach und direkt und damit entsprechend komfortabel zu ändern.By the present invention thus enables the speed, with the one regarding a predefined course of redundant robots this leaves, simply and to change it directly and thus comfortably.

3 zeigt in stark schematisierter perspektivischen Darstellung einen Leichtbauroboter LBR des Deutschen Zentrums für Luft- und Raumfahrt beim Abfahren einer vorgegebenen Bahn x(s) mit dem Tool Center Point seines Greifers. Die dargestellte Greiferlage kann der LBR durch mehrere Manipulatorstellungen realisieren, die jeweils durch seine Gelenkwinkel eindeutig bestimmt sind, und von denen in 3 eine erste, durch die Gelenkwinkel q definierte Manipulatorstellung strichliert, eine zweite, durch die Gelenkwinkel q' definierte Manipulatorstellung durchgezogen und eine dritte, durch die Gelenkwinkel q'' definierte Manipulatorstellung punktiert eingezeichnet sind. 3 shows in a highly schematic perspective view of a lightweight robot LBR of the German Aerospace Center on the departure of a predetermined path x (s) the Tool Center Point of his gripper. The illustrated gripper position can realize the LBR by several manipulator positions, which are uniquely determined by its joint angle, and of which in 3 a first, defined by the joint angle q manipulator position dashed lines, a second, through the joint angle q 'defined manipulator position pulled through and a third, by the joint angle q''defined manipulator position are shown dotted.

Als Ablage ist in diesem Ausführungsbeispiel der Winkel a zwischen der Vertikalen und dem Lot vom Ellbogen des LBRs auf die Verbindungslinie zwischen Schulter- und Handwurzelgelenk gewählt, der in der ersten Manipulatorstellung in 3 0°, in der zweiten Manipulatorstellung 30° und in der dritten Manipulatorstellung 180° beträgt.As a shelf in this embodiment, the angle a between the vertical and the perpendicular from the elbow of the LBRs on the connecting line between shoulder and carpal joint is selected, which in the first manipulator position in 3 0 °, in the second manipulator position is 30 ° and in the third manipulator position 180 °.

Der Bediener kann den LBR nun in einer Nachgiebigkeitsregelung am Ellbogen anfassen und ihn längs einer in 3 strichliert dargestellten Kurve in seinem Nullraum bewegen, ohne dass die Endeffektorlage sich ändert.The operator can now grip the LBR in a compliance control at the elbow and place it along an in 3 dashed curve in its zero space move without the Endeffektorlage changes.

In einer Steuervorrichtung 2 des LBRs werden nun während des Abfahrens der vorgegebenen Bahn x(s) in einem Schritt S10 die Gelenkwinkel q' erfasst, die sich in der Manipulatorstellung ergeben, in die der Bediener den LBR bewegt. Hieraus berechnet die Steuervorrichtung 2 auf Basis der bekannten Kinematik des LBRs den Winkel a und öffnet den Greifer auf eine lichte Weite A, die sich ergibt, indem der Winkel a mit einer von Bediener vorab eingestellten Konstanten k multipliziert wird. Bewegt der Bediener den LBR also am Ellbogen längs der strichliert dargestellten Kurve in seinem Nullraum bei gleichbleibender Endeffektorlage von der ersten in die zweite Manipulatorstellung, öffnet sich der zunächst geschlossene Greifer. Bewegt der Bediener den LBR am Ellbogen längs der strichliert dargestellten Kurve bei gleichbleibender Endeffektorlage weiter von der zweiten in die dritte Manipulatorstellung, öffnet sich der Greifer noch weiter. Alternativ zur Greiferöffnung kann als Prozessgröße natürlich wie in den vorhergehenden Ausführungsbeispielen auch die Geschwindigkeit längs der Bahn x(s) geändert werden.In a control device 2 of the LBR, the joint angles q 'which occur in the manipulator position into which the operator moves the LBR are now detected during the travel of the predetermined path x (s) in a step S10. The control device calculates from this 2 based on the known kinematics of the LBRs the angle a and opens the gripper to a clear width A, which is obtained by the angle a multiplied by an operator set in advance constant k. If the operator moves the LBR at the elbow along the dashed curve in its zero space with the end effector position remaining the same from the first to the second manipulator position, the initially closed gripper opens. If the operator moves the LBR at the elbow along the dashed curve with the end effector position remaining the same, from the second to the third manipulator position, the gripper opens even further. As an alternative to the gripper opening, the speed along the path x (s) can of course also be changed as a process variable, as in the preceding embodiments.

11
Roboterrobot
22
Steuervorrichtungcontrol device
LBRLBR
Leichtbauroboterlightweight robot
q1, q2, ... q7q1, q2, ... q7
Gelenkwinkeljoint angle
TCPTCP
Tool Center Pointtool Center Point
x(s)x (s)
Sollbahnset path

Claims (15)

Verfahren zum Abfahren einer vorgegebenen Bahn (x(s)) durch einen Endeffektor (TCP) eines Manipulators, insbesondere eines Roboters (1; LBR), wobei der Manipulator bezüglich der vorgegebenen Bahn einen Nullraum mit wenigstens zwei derselben Endeffektorlage zugeordneten Manipulatorstellungen (q, q', q'') aufweist, mit den Schritten: – Erfassen einer Ablage (q–q'; a) des Manipulators in dem Nullraum (S10, S20); – Ändern wenigstens einer Prozessgröße (dx/dt; A) entsprechend der erfassten Ablage (S30).Method for traversing a predetermined path (x (s)) through an end effector (TCP) of a manipulator, in particular a robot ( 1 ; LBR), wherein the manipulator with respect to the predetermined path a zero space with at least two of the same Endeffektorlage associated manipulator positions (q, q ', q''), comprising the steps: - Detecting a filing (q-q'; a) of the manipulator in the null space (S10, S20); - Changing at least one process variable (dx / dt; A) according to the recorded file (S30). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass in dem Nullraum zu jeder Endeffektorlage eine Soll-Manipulatorstellung (qsoll) vorgegeben wird und als Ablage die Differenz (qist – qsoll) der Soll- zu der tatsächlichen Manipulatorstellung erfasst wird.Method according to claim 1, characterized in that that in the zero space for each Endeffektorlage a desired manipulator position (qsoll) is specified and as a difference the difference (qist - qsoll) the target to the actual Manipulator position is detected. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass eine Regelung zur Verringerung der Ablage durchgeführt wird.Method according to claim 2, characterized in that that a scheme for reducing the storage is performed. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Prozessgröße entsprechend einer Größe und/oder Richtung der erfassten Ablage geändert wird.Method according to one of the preceding claims, characterized characterized in that the process size corresponding to a size and / or Direction of the recorded filing changed becomes. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass die Prozessgröße proportional zu der erfassten Ablage geändert wird.Method according to claim 4, characterized in that that the process size is proportional changed to the recorded storage becomes. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Manipulator lagegeregelt wird.Method according to one of the preceding claims, characterized characterized in that the manipulator is position-controlled. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 5, dadurch gekennzeichnet, dass der Manipulator kraftgeregelt wird.Method according to one of the preceding claims 1 to 5, characterized in that the manipulator is force-controlled. Verfahren nach Anspruch 6 oder 7, dadurch gekennzeichnet, dass der Manipulator nachgiebig geregelt wird.Method according to claim 6 or 7, characterized that the manipulator is relentlessly regulated. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Ablage anhand von Bewegungen und/oder Kräften in Gelenken des Manipulators erfasst wird.Method according to one of the preceding claims, characterized characterized in that the tray is based on movements and / or forces in Joint of the manipulator is detected. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass die Ablage anhand von Kräften in Gelenken des Manipulators auf Basis eines mathematischen Ersatzmodells des Manipulators erfasst wird.Method according to claim 9, characterized in that that the filing by forces in joints of the manipulator based on a mathematical replacement model of the manipulator is detected. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Bahngeschwindigkeit durch eine Ablage im Wesentlichen auf Null reduzierbar ist.Method according to one of the preceding claims, characterized characterized in that the web speed by a shelf in the Essentially reducible to zero. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Durchlaufsinn der vorgegebenen Bahn durch eine Ablage änderbar ist.Method according to one of the preceding Claims, characterized in that the passage sense of the predetermined path can be changed by a tray. Steuervorrichtung (2) für einen Manipulator, insbesondere eines Roboters (1; LBR), mit einem Endeffektor (TCP), zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche, mit – einer Erfassungseinrichtung zum Erfassen einer Ablage (q–q'; a) des Manipulators in dem Nullraum; und – einer Änderungseinrichtung zum Ändern einer Prozessgröße (dx/dt; A) entsprechend der durch die Erfassungseinrichtung erfassten Ablage.Control device ( 2 ) for a manipulator, in particular a robot ( 1 ; LBR), having an end effector (TCP), for carrying out a method according to one of the preceding claims, having - a detection device for detecting a storage (q-q '; a) of the manipulator in the null space; and changing means for changing a process quantity (dx / dt; A) according to the bin detected by the detecting means. Steuervorrichtung nach Anspruch 13, dadurch gekennzeichnet, dass sie einen Führungsgriff umfasst, um den Manipulator (1) im Nullraum aus einer Manipulatorstellungen in eine andere Manipulatorstellungen zu bewegen, die derselben Endeffektorlage zugeordnet ist.Control device according to claim 13, characterized in that it comprises a guide handle to move the manipulator ( 1 ) to move in null space from a manipulator positions in another manipulator positions, which is assigned to the same Endeffektorlage. Manipulator (1), insbesondere Roboter, mit einer Steuervorrichtung nach Anspruch 13 oder 14, dadurch gekennzeichnet, dass der Manipulator wenigstens sieben Freiheitsgrade aufweist.Manipulator ( 1 ), in particular robots, with a control device according to claim 13 or 14, characterized in that the manipulator has at least seven degrees of freedom.
DE200910007181 2008-12-17 2009-02-03 Method for inputting commands into controller of e.g. multi-axis robot, involves comparing detected force with stored force, and outputting commands associated with stored force to controller if detected force corresponds to stored force Withdrawn DE102009007181A1 (en)

Priority Applications (12)

Application Number Priority Date Filing Date Title
DE200910007181 DE102009007181A1 (en) 2009-02-03 2009-02-03 Method for inputting commands into controller of e.g. multi-axis robot, involves comparing detected force with stored force, and outputting commands associated with stored force to controller if detected force corresponds to stored force
PCT/EP2009/007874 WO2010069430A1 (en) 2008-12-17 2009-11-03 Method for allowing a manipulator to cover a predetermined trajectory, and control device for carrying out said method
EP09749012A EP2212753B1 (en) 2008-12-17 2009-11-03 Method for allowing a manipulator to cover a predetermined trajectory, and control device for carrying out said method
AT09749012T ATE508401T1 (en) 2008-12-17 2009-11-03 METHOD FOR TRAVELING A PREFINED PATH BY A MANIPULATOR, AND CONTROL DEVICE FOR PERFORMING SUCH A METHOD
DE502009000624T DE502009000624D1 (en) 2008-12-17 2009-11-03 METHOD FOR DEPOSITING A PREDETTED TRACK THROUGH A MANIPULATOR, AND A CONTROL DEVICE
EP09748047A EP2359205A1 (en) 2008-12-17 2009-11-03 Method and device for inputting commands into a control of a manipulator
US13/140,708 US9063539B2 (en) 2008-12-17 2009-11-03 Method and device for command input in a controller of a manipulator
PCT/EP2009/007873 WO2010069429A1 (en) 2008-12-17 2009-11-03 Method and device for inputting commands into a control of a manipulator
US13/140,123 US8774969B2 (en) 2008-12-17 2009-11-03 Method for allowing a manipulator to cover a predetermined trajectory, and control device for carrying out said method
KR1020117009485A KR101660064B1 (en) 2008-12-17 2009-11-03 Method for allowing a manipulator to cover a predetermined trajectory, and control device for carrying out said method
CN200980143891.3A CN102203685B (en) 2008-12-17 2009-11-03 Method for allowing a manipulator to cover a predetermined trajectory, and control device for carrying out said method
CN200980149171.8A CN102239454B (en) 2008-12-17 2009-11-03 Method and device for inputting commands into a control of a manipulator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200910007181 DE102009007181A1 (en) 2009-02-03 2009-02-03 Method for inputting commands into controller of e.g. multi-axis robot, involves comparing detected force with stored force, and outputting commands associated with stored force to controller if detected force corresponds to stored force

Publications (1)

Publication Number Publication Date
DE102009007181A1 true DE102009007181A1 (en) 2010-08-05

Family

ID=42308953

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200910007181 Withdrawn DE102009007181A1 (en) 2008-12-17 2009-02-03 Method for inputting commands into controller of e.g. multi-axis robot, involves comparing detected force with stored force, and outputting commands associated with stored force to controller if detected force corresponds to stored force

Country Status (1)

Country Link
DE (1) DE102009007181A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE202011000456U1 (en) 2011-02-28 2012-05-31 Kuka Systems Gmbh joining device
EP2660014A1 (en) * 2010-12-28 2013-11-06 Kawasaki Jukogyo Kabushiki Kaisha Control device and teaching method for seven-shaft multi-joint robot
DE102014011999A1 (en) 2014-08-12 2015-03-12 Daimler Ag Method for operating a kinematically redundant robot
DE102014226936B3 (en) * 2014-11-14 2016-03-17 Deutsches Zentrum für Luft- und Raumfahrt e.V. Full-body impedance for mobile robots
WO2016146510A1 (en) * 2015-03-13 2016-09-22 Kuka Roboter Gmbh Method for controlling a manipulator for carrying out a working process
DE102017011130A1 (en) * 2017-12-01 2019-06-06 Kuka Deutschland Gmbh Method and system for controlling a robot
DE102019101072B3 (en) * 2019-01-16 2020-03-12 Franka Emika Gmbh Support manual guidance of a robot manipulator
DE102019202456A1 (en) * 2019-02-22 2020-08-27 Kuka Deutschland Gmbh Method and system for performing a given task by a robot
WO2020193343A1 (en) * 2019-03-27 2020-10-01 Franka Emika Gmbh Robot gripper

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4999553A (en) * 1989-12-28 1991-03-12 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Method and apparatus for configuration control of redundant robots
DE19547121A1 (en) * 1995-12-16 1996-05-30 Percy Dahm Determining analytical inverse dynamics of robot arm with seven degrees of freedom
US6385508B1 (en) * 2000-10-31 2002-05-07 Fanuc Robotics North America, Inc. Lead-through teach handle assembly and method of teaching a robot assembly
US20020120363A1 (en) * 1998-12-08 2002-08-29 J. Kenneth Salisbury Mater having redundant degrees of freedom
DE102004021468A1 (en) * 2004-04-30 2005-11-24 Kuka Roboter Gmbh Method for controlling a machine, in particular an industrial robot
DE102005054575B3 (en) * 2005-11-16 2007-04-26 Deutsches Zentrum für Luft- und Raumfahrt e.V. Robot arm regulating method, for medical engineering, involves utilizing redundancy of hinges to optimize quality factor to adjust hinges at angle that is perpendicular to instrument axis, where force caused by regulating hinges is zero
DE602005005306T2 (en) * 2005-05-31 2009-05-07 Honda Research Institute Europe Gmbh Control of the path of a gripper

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4999553A (en) * 1989-12-28 1991-03-12 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Method and apparatus for configuration control of redundant robots
DE19547121A1 (en) * 1995-12-16 1996-05-30 Percy Dahm Determining analytical inverse dynamics of robot arm with seven degrees of freedom
US20020120363A1 (en) * 1998-12-08 2002-08-29 J. Kenneth Salisbury Mater having redundant degrees of freedom
US6385508B1 (en) * 2000-10-31 2002-05-07 Fanuc Robotics North America, Inc. Lead-through teach handle assembly and method of teaching a robot assembly
DE102004021468A1 (en) * 2004-04-30 2005-11-24 Kuka Roboter Gmbh Method for controlling a machine, in particular an industrial robot
DE602005005306T2 (en) * 2005-05-31 2009-05-07 Honda Research Institute Europe Gmbh Control of the path of a gripper
DE102005054575B3 (en) * 2005-11-16 2007-04-26 Deutsches Zentrum für Luft- und Raumfahrt e.V. Robot arm regulating method, for medical engineering, involves utilizing redundancy of hinges to optimize quality factor to adjust hinges at angle that is perpendicular to instrument axis, where force caused by regulating hinges is zero

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2660014A1 (en) * 2010-12-28 2013-11-06 Kawasaki Jukogyo Kabushiki Kaisha Control device and teaching method for seven-shaft multi-joint robot
EP2660014A4 (en) * 2010-12-28 2014-09-17 Kawasaki Heavy Ind Ltd Control device and teaching method for seven-shaft multi-joint robot
DE202011000456U1 (en) 2011-02-28 2012-05-31 Kuka Systems Gmbh joining device
DE102014011999A1 (en) 2014-08-12 2015-03-12 Daimler Ag Method for operating a kinematically redundant robot
DE102014226936B3 (en) * 2014-11-14 2016-03-17 Deutsches Zentrum für Luft- und Raumfahrt e.V. Full-body impedance for mobile robots
WO2016146510A1 (en) * 2015-03-13 2016-09-22 Kuka Roboter Gmbh Method for controlling a manipulator for carrying out a working process
DE102017011130A1 (en) * 2017-12-01 2019-06-06 Kuka Deutschland Gmbh Method and system for controlling a robot
DE102017011130B4 (en) * 2017-12-01 2021-03-04 Kuka Deutschland Gmbh Method and system for controlling a robot
US11826911B2 (en) 2017-12-01 2023-11-28 Kuka Deutschland Gmbh Method and system for controlling a robot
DE102019101072B3 (en) * 2019-01-16 2020-03-12 Franka Emika Gmbh Support manual guidance of a robot manipulator
DE102019202456A1 (en) * 2019-02-22 2020-08-27 Kuka Deutschland Gmbh Method and system for performing a given task by a robot
WO2020193343A1 (en) * 2019-03-27 2020-10-01 Franka Emika Gmbh Robot gripper

Similar Documents

Publication Publication Date Title
EP2212753B1 (en) Method for allowing a manipulator to cover a predetermined trajectory, and control device for carrying out said method
DE102009007181A1 (en) Method for inputting commands into controller of e.g. multi-axis robot, involves comparing detected force with stored force, and outputting commands associated with stored force to controller if detected force corresponds to stored force
DE102008062622B9 (en) Method and device for entering commands into a controller of a manipulator
EP1950010B1 (en) Robot and method for programming a robot
DE102009049172B4 (en) Method and device for controlling a manipulator
EP2868445B1 (en) Method for programming sequences of movements of a redundant industrial robot and associated industrial robot
EP2851162B1 (en) Method for manually handled adjustment of the pose of an industrial robot manipulator arm of an industrial robot and associated industrial robot
EP1591209A2 (en) Method of controlling a machine, in particular an industrial robot
DE102011079117B4 (en) Method of programming a robot
EP2905111A2 (en) Method for programming an industrial robot and associated industrial robot
DE10255037A1 (en) Method and device for machining a workpiece
WO2010040493A1 (en) Industrial robot and path planning method for controlling the movement of an industrial robot
DE102007060680A1 (en) Method and device for controlling a manipulator
EP3037905B1 (en) Device and method for holding workpieces
DE102017001131A1 (en) Method and system for operating a robot
DE102016211470B4 (en) METHOD OF PLANNING A MOVEMENT PATH OF A MANIPULATOR
EP3854943B1 (en) Excavation device
DE102014204452A1 (en) A method of operating a robot and associated robot with a mechanical sensing device
EP2208584A1 (en) Method and device for controlling industrial robots
EP3448631A1 (en) Robot comprising a mobile support and a manipulator
DE3022173A1 (en) Programmable industrial robot with path control - has actuators co-ordinated by signals from differential operational amplifiers
DE102012017062A1 (en) Manipulator for supporting people during e.g. process workflows, has pivots and/or arm arranged for movement in space, and process unit arranged at arm and regulated and/or controlled by measurement unit that sends and receives signal
DE102019102427B4 (en) Coordination of trajectories of two robotic manipulators
EP3468752B1 (en) Method for controlling a manipulator system
DE112021005445T5 (en) CONTROL DEVICE, MECHANICAL SYSTEM, METHOD AND COMPUTER PROGRAM FOR PERFORMING PLANNED WORK BY MOVING A VARIETY OF MOVEMENT MACHINES

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R081 Change of applicant/patentee

Owner name: KUKA LABORATORIES GMBH, DE

Free format text: FORMER OWNER: KUKA ROBOTER GMBH, 86165 AUGSBURG, DE

Effective date: 20110505

R120 Application withdrawn or ip right abandoned

Effective date: 20120525