EP2656980B1 - Method and means for determining and/or controlling a manipulator process - Google Patents

Method and means for determining and/or controlling a manipulator process Download PDF

Info

Publication number
EP2656980B1
EP2656980B1 EP13001650.4A EP13001650A EP2656980B1 EP 2656980 B1 EP2656980 B1 EP 2656980B1 EP 13001650 A EP13001650 A EP 13001650A EP 2656980 B1 EP2656980 B1 EP 2656980B1
Authority
EP
European Patent Office
Prior art keywords
manipulator
path
movement
point
switching
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.)
Active
Application number
EP13001650.4A
Other languages
German (de)
French (fr)
Other versions
EP2656980A3 (en
EP2656980A2 (en
Inventor
Günther WIEDEMANN
Andreas Hagenauer
Manfred Hüttenhofer
Martin Weiss
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 Deutschland GmbH
Original Assignee
KUKA Deutschland 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 Deutschland GmbH filed Critical KUKA Deutschland GmbH
Publication of EP2656980A2 publication Critical patent/EP2656980A2/en
Publication of EP2656980A3 publication Critical patent/EP2656980A3/en
Application granted granted Critical
Publication of EP2656980B1 publication Critical patent/EP2656980B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • 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/406Numerical 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 characterised by monitoring or safety
    • G05B19/4067Restoring data or position after power failure or other interruption
    • 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/4155Numerical 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 characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • 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/40511Trajectory optimization, coarse for arm, medium for wrist, fine for finger
    • 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/40518Motion and task planning
    • 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/40519Motion, trajectory planning
    • 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/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50103Restart, reverse, return along machined path, stop
    • 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/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50111Retract tool along path, reengage along same path

Definitions

  • the present invention relates to a method and a means for specifying and / or controlling a manipulator process.
  • a welding current is to be switched on or off in sections
  • an adhesive or paint nozzle is to be opened or closed
  • a clamp is to be opened or closed in order to enable a manipulator-guided tool to pass through.
  • This switching point routine TRIGGER specifies a switching path point at a distance from the end point Q of the section of the manipulator path between its path points P and Q, which is predetermined by SLIN Q as a Cartesian straight line.
  • a welding current (before and at time ⁇ 0) time executed is predetermined by the subroutine subroutine action according to the time switched open an adhesive or paint nozzle or a tensioner.
  • the EP 2 085 846 A2 discloses a method for restarting a robot, wherein a robot-guided atomizing device is placed on a target movement path after interruption of a machining program at a restart point and the atomizing device is reactivated in the vicinity of the position in which the atomizing was stopped due to an error.
  • the object of the present invention is to improve a manipulator process.
  • Claim 6 provides a means for performing such a method under protection.
  • One aspect of the present invention relates to a manipulator process for a manipulator arrangement with one or more manipulators, in particular industrial robots.
  • the manipulator process has a predetermined, oriented manipulator path of the manipulator arrangement.
  • a manipulator track is understood to mean, in particular, a discrete or continuous sequence of positions, in particular positions and / or orientations, of one or more manipulator-fixed reference points, in particular of a TCP of a manipulator, and / or of poses, in particular joint coordinates, of one or more manipulators.
  • the manipulator path can in particular by specifying discrete, in particular taught, path points and specifying a path between these path points, for example a straight line or a segment of a circle, in the work or configuration space, or by specifying a mapping or relation, for example a spline Function in the work or configuration room.
  • an oriented manipulator path is understood to mean, in particular, a manipulator path with a predetermined direction of direction or passage, which can be predetermined, for example, by a sequence of points to be approached and / or to be looped over.
  • one or more actions can be specified and / or carried out during this manipulator process or when its manipulator path is followed.
  • An action within the meaning of the present invention can in particular be a logical and / or arithmetic calculation and / or Memory operation, in particular the assignment of a variable, and / or a control of the manipulator arrangement, in particular one or more manipulator-guided and / or ambient-proof tools and / or process means, in particular.
  • An action within the meaning of the present invention can be, for example, assigning a value to an identifier, energizing a manipulator-guided welding tongs or closing a clamp that is stable in the environment.
  • one or more of these actions can be specified and / or executed as a function of an event-initiated reverse movement in the opposite direction to the oriented manipulator path and, in one embodiment, as a function of a return movement of the manipulator arrangement in the same direction as the oriented manipulator path.
  • an event-initiated movement is understood to mean, in particular, a movement of the manipulator arrangement that is initiated or executed on the basis of an external, in particular non-predetermined and / or irregular event.
  • an event-initiated backward movement can be initiated by manual input by an operator, for example by actuating a return button, and / or by a signal, in particular an error signal, for example due to the actuation of an emergency stop, a deviation from the manipulator path, an incorrect value for the welding current with an interrupted addition of the protective gas or the like.
  • an event-initiated movement is characterized in that it is not always initiated at the same point on the path each time the specified manipulator path is traversed and / or depends on other boundary conditions that are not specific to the manipulator path.
  • a reverse backward movement is understood to mean, in particular, a movement of the manipulator arrangement, in particular one or more manipulators, which - at least in sections - takes place against the direction of passage of the oriented manipulator path.
  • the backward movement can in particular have a starting point which lies on the manipulator path, that is to say emanating from the manipulator path, and with respect to this starting point can be locally opposite to the manipulator path.
  • the backward movement can have a section parallel to the manipulator path.
  • a parallel section is in particular one that is congruent in the working or configuration space Section, for example a parallel straight line, a concentric segment of a circle or the like understood.
  • the parallel section can also be identical to a section of the manipulator path that is to be traversed in opposite directions, ie the backward movement can take place - at least in sections - on the manipulator path.
  • the backward movement can have a section leading away from the manipulator path, which can be followed in particular by a parallel section, so that the manipulator path is traversed in opposite directions during the backward movement in sections with an offset or a deposit.
  • a return movement in the same direction is understood to mean, in particular, a movement of the manipulator arrangement, in particular one or more manipulators, which - at least in sections - takes place in the same direction of passage as the oriented manipulator path.
  • the return movement in the same direction can follow a reverse movement in the opposite direction, in particular immediately or after a break, and / or have an end point that lies on the manipulator path and with respect to which the return movement can be locally in the same direction as the manipulator path.
  • the end point or its projection can be identical to the starting point of a previous backward movement or its projection or - in the direction of passage of the manipulator path - lie in front of or behind it.
  • the specified manipulator path is continued after an event-initiated movement of the backward and return movement, starting at its end point.
  • the return movement can also have a section parallel to the manipulator path, in particular also be identical to a section of the manipulator path that is to be traversed again in the same direction, i.e. the return movement can take place - at least in sections - on the manipulator path. Equally, the return movement can have a section leading back to the manipulator path, in particular in order to compensate for an offset or offset of a previous backward movement.
  • One or more of the actions can be specified or executed depending on the backward movement.
  • one or more actions optionally, in particular also or only during the Backward movement. For example, a clamp that was closed when moving along the specified manipulator path after a manipulator-guided tool had passed through, can be opened again when moving backwards.
  • one or more actions can be specified or executed depending on the return movement.
  • one or more actions are optionally carried out, in particular also or only during the return movement. For example, a clamp that was opened again during a backward movement can be closed again during a return movement after a manipulator-guided tool has passed through.
  • One or more actions can be specified or executed in particular during or after the end of a backward movement and / or a return movement. For example, it can be expedient to repeat actions that were carried out at the beginning of the manipulator process, such as an optical or acoustic warning, flushing, temperature control or the like, when the backward movement and / or the return movement are ended. Equally, one or more actions can also be performed during the backward or reversal movement are executed, in particular as a function of the position of the manipulator arrangement in relation to the predetermined manipulator path.
  • One or more actions can be specified or executed differently in one execution depending on the backward movement and / or return movement.
  • this is understood in particular to mean that an action - for example the assignment of a value to a variable or the opening of a clamp - can be specified for a backward movement or carried out during a backward movement, and an action different therefrom - for example the assignment of a different value the variable or the closing of a tensioner - can be specified for a return movement or executed on a return movement.
  • the same or a different action - for example the assignment of a further value to the variable - can be specified for traveling along the specified manipulator path or carried out when traveling along the specified manipulator path will.
  • the action for the scheduled travel of the specified manipulator path, the event-initiated execution of a backward movement and / or a return movement, in particular a subsequent return movement can be specified differently or is optionally carried out.
  • An action can in particular also be carried out differently in that it is optionally carried out or not carried out.
  • switching path points are now also used to predetermine or carry out an action as a function of the backward movement and / or return movement, in particular optionally or differently.
  • the action can thus be specified or executed as a function of the backward movement and / or return movement and as a function of a switching path point, in particular differently.
  • the action can be specified or executed depending on a projected distance between the manipulator arrangement and a switching path point during the backward movement and / or the return movement, in particular differently.
  • a point characterizing the position of the manipulator arrangement for example the TCP in the work space or a vector of the joint coordinates in the configuration space, moves on the manipulator path specified in this space.
  • this point moves accordingly in the work or configuration space, in the case of a deposit beyond the manipulator path.
  • This point can be projected onto the manipulator path, in particular parallel to a normal to the manipulator path or the backward or reverse movement.
  • the switching path point can also be projected vice versa onto the backward or reverse movement, in particular if this takes place automatically in an embodiment of the present invention - at least in sections - and is thus given, for example parallel to a section of the manipulator path.
  • the projected point can also be offset in relation to the vertical projection on the manipulator or backward or reverse movement path in or against its direction of passage, in particular it can lead or lag an actual movement.
  • a projected distance of the manipulator arrangement is in particular the distance from a point, which characterizes the position of the manipulator arrangement and projected onto the manipulator path, to the switching path point or the distance of a point which characterizes the position of the manipulator arrangement to the backward or reversing movement ( sbahn) projected switching path point understood.
  • the action can then in particular be carried out when the projected distance falls below a limit value, in particular becomes zero, in particular when a point which characterizes the position of the manipulator arrangement and which is projected onto the manipulator path reaches or passes over a switching path point.
  • the projected point can be thought of as a point on the manipulator path which moves along with it in accordance with a backward or reverse movement on the manipulator path. If the backward or reverse movement takes place - at least in sections - on the manipulator path, the projection can be an identity.
  • an action can also be performed when a backward and / or Return movement take place depending on whether the projected distance of the manipulator arrangement to this switching path point is positive or negative.
  • actions whose switching path points have already been passed over when traveling over a section of the manipulator path can optionally be carried out again, especially if they are not projected over during the backward or reverse movement.
  • the switching point routine is preferably executed by default only when the manipulator path is traversed or by default always executed.
  • the subroutine can access the system variable or this can be transferred to it, for example in the form of a subroutine ( movement ).
  • the movement system variable is assigned "REGULAR”.
  • the Subroutine to this system variable movement and accordingly executes (“CASE #REGULAR") the regular action specified for this.
  • One aspect of the present invention relates to a method for specifying a manipulator process. Specification is understood to mean in particular creating and / or modifying, in particular parameterizing, a program for the manipulator arrangement, for example by using and parameterizing the above-explained extended functionality of a switching point and / or its subroutine. Another aspect of the present invention relates to a method for controlling such a manipulator process. In the present case, controlling is understood to mean, in particular, the transmission or implementation of movement and other control commands of the manipulator arrangement and / or their actuation, for example energizing drives and / or tools, in particular the execution of a program. Another aspect of the present invention relates to a means for specifying and / or controlling such a manipulator process.
  • a means within the meaning of the present invention can in particular be designed in terms of software and / or hardware.
  • it comprises a program, a computer program product, in particular a data carrier, with a program stored thereon, and / or a computer with an input / output device, in particular a keyboard, a screen or the like, a storage device and a processing or processing device.
  • the means is set up in particular for specifying and / or controlling the manipulator process and for this purpose can for example have one or more, in particular parameterizable, commands.
  • Fig. 1 shows a robot-guided welding gun electrode 1 and a robot control 2 of a manipulator arrangement according to an embodiment of the present invention in a manipulator process in the form of welding a workpiece 4 fixed by clamps 3, which has been specified or is being executed by means of a means or a method according to an embodiment of the present invention.
  • the robot controller 2 represents a means within the meaning of the present invention for specifying and controlling the manipulator process of the manipulator arrangement.
  • FIRE_COND (FALSE, FALSE, TRUE, FALSE)
  • FIRE_COND (TRUE, FALSE, FALSE, FALSE)
  • the welding gun electrode 1 moves automatically, as in FIG Fig. 1 shown in dashed lines.
  • Your vertical projection PR on the manipulator track (vertical in Fig. 1 ), in the Fig. 1 dotted for a position of the manipulator arrangement or its welding gun electrode 1 is indicated during the backward movement, passes over in this Backward movement first the third switching point S3.
  • FIRE_COND FALSE, TRUE, FALSE, FALSE
  • the manipulator process is predefined in a well-ordered and, in particular, automated manner even in the event of an event-initiated deviation from a regular movement of the manipulator path or can be controlled.

Description

Die vorliegende Erfindung betrifft ein Verfahren und ein Mittel zum Vorgeben und/oder Steuern eines Manipulatorprozesses.The present invention relates to a method and a means for specifying and / or controlling a manipulator process.

Beim Abfahren einer Manipulatorbahn sollen oft in Abhängigkeit von der Position auf der Bahn verschiedene Aktionen ausgeführt werden. Beispielsweise soll abschnittsweise ein Schweißstrom auf- oder abgeschaltet werden, eine Klebe- oder Farbdüse geöffnet oder geschlossen werden, oder ein Spanner geöffnet oder geschlossen werden, um einem manipulatorgeführten Werkzeug die Durchfahrt zu ermöglichen.When moving along a manipulator path, different actions should often be carried out depending on the position on the path. For example, a welding current is to be switched on or off in sections, an adhesive or paint nozzle is to be opened or closed, or a clamp is to be opened or closed in order to enable a manipulator-guided tool to pass through.

Hierzu ist es nach betriebsinterner Praxis bekannt, durch eine Schaltpunkt-Routine auf der Manipulatorbahn Schaltpunkte, im Folgenden Schalt-Bahnpunkte, vorzugeben, die eine Unterroutine zum Ausführen der Aktion aufweist, etwa in der Form:

  • ...
  • SLIN P
  • TRIGGER WHEN PATH=Abstand DELAY=Zeit DO Unterroutine
  • SLIN Q
  • ...
For this purpose, it is known from in-house practice to use a switching point routine on the manipulator path to specify switching points, hereinafter switching path points, which have a subroutine for carrying out the action, for example in the form:
  • ...
  • SLIN P
  • TRIGGER WHEN PATH = distance DELAY = time DO subroutine
  • SLIN Q
  • ...

Durch diese Schaltpunkt-Routine TRIGGER wird ein Schalt-Bahnpunkt im Abstand Abstand von dem Endpunkt Q des durch SLIN Q als kartesische Gerade vorgegebenen Abschnitts der Manipulatorbahn zwischen deren Bahnpunkten P und Q vorgegeben. Bei Erreichen des so vorgegebenen Schalt-Bahnpunktes wird nach (bzw. bei Zeit < 0 vor) der Zeit Zeit die durch die Unterroutine Unterroutine vorgegebene Aktion ausgeführt, beispielsweise ein Schweißstrom aufgeschaltet, eine Klebe- oder Farbdüse oder ein Spanner geöffnet.This switching point routine TRIGGER specifies a switching path point at a distance from the end point Q of the section of the manipulator path between its path points P and Q, which is predetermined by SLIN Q as a Cartesian straight line. On reaching the so predetermined switching point on the path, for example, a welding current (before and at time <0) time executed is predetermined by the subroutine subroutine action according to the time switched open an adhesive or paint nozzle or a tensioner.

Beim Abfahren einer vorgegebenen Manipulatorbahn kann es erforderlich sein, ein Stück zurückzufahren, beispielsweise nach Erkennen einer Störung des Prozesses. Nachteilig werden bei einer solchen Rückwärtsbewegung die vorstehend erläuterten Schaltpunkt-Routinen nicht ausgeführt. Musste beispielsweise ein Spanner geöffnet werden, um einem manipulatorgeführten Werkzeug die Durchfahrt zu ermöglichen, wird dieser bei der Rückwärtsbewegung durch die Schaltpunkt-Routine - die nur auf die Vorwärtsbewegung zwischen den Punkten P und Q bezogen ist - nicht erneut automatisch geöffnet.When traveling along a predetermined manipulator path, it may be necessary to move back a little, for example after recognizing a fault in the process. Those explained above become disadvantageous with such a backward movement Switching point routines not executed. For example, if a clamp had to be opened to allow a manipulator-guided tool to pass through, it is not automatically opened again during the backward movement by the switching point routine - which is only related to the forward movement between points P and Q.

Aus der US 6,360,143 B1 ist ein Verfahren zum Steuern eines robotergeführten Auftragsystems bekannt, bei dem nach Auftreten eines Fehlers ein Rücksetzabstand in Abhängigkeit von einer Operationsgeschwindigkeit des Roboters derart bestimmt und der Roboter in eine entsprechende Rücksetzposition positioniert wird, dass sichergestellt ist, dass der Roboter beim Erreichen einer Position in der Nähe der Position, in der das Aufbringen fehlerbedingt gestoppt wurde, wieder die Operationsgeschwindigkeit erreicht.From the US 6,360,143 B1 A method for controlling a robot-guided application system is known in which, after an error has occurred, a reset distance is determined as a function of an operating speed of the robot and the robot is positioned in a corresponding reset position so that it is ensured that the robot when it reaches a position in the The speed of the operation is reached again near the position in which the application was stopped due to an error.

Die EP 2 085 846 A2 offenbart ein Verfahren zum Wiederanfahren eines Roboters, wobei eine robotergeführte Zerstäubungsvorrichtung nach Unterbrechung eines Bearbeitungsprogramms an einem Wideranfahrpunkt auf einer Sollbewegungspfad aufgesetzt und die Zerstäubungsvorrichtung in der Nähe der Position, in der das Zerstäuben fehlerbedingt gestoppt wurde, wieder aktiviert wird.The EP 2 085 846 A2 discloses a method for restarting a robot, wherein a robot-guided atomizing device is placed on a target movement path after interruption of a machining program at a restart point and the atomizing device is reactivated in the vicinity of the position in which the atomizing was stopped due to an error.

Aufgabe der vorliegenden Erfindung ist es, einen Manipulatorprozess zu verbessern.The object of the present invention is to improve a manipulator process.

Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Anspruch 6 stellt ein Mittel zum Durchführen eines solchen Verfahrens unter Schutz.This object is achieved by a method with the features of claim 1. Claim 6 provides a means for performing such a method under protection.

Die Unteransprüche betreffen vorteilhafte Weiterbildungen.The subclaims relate to advantageous developments.

Ein Aspekt der vorliegenden Erfindung betrifft einen Manipulatorprozess für eine Manipulatoranordnung mit einem oder mehreren Manipulatoren, insbesondere Industrierobotern. Der Manipulatorprozess weist eine vorgegebene orientierte Manipulatorbahn der Manipulatoranordnung auf. Unter einer Manipulatorbahn wird vorliegend insbesondere eine diskrete oder kontinuierliche Abfolge von Positionen, insbesondere Lagen und/oder Orientierungen, von einem oder mehreren manipulatorfesten Referenzpunkten, insbesondere eines TCPs eines Manipulators, und/oder von Posen, insbesondere Gelenkkoordinaten, von einem oder mehreren Manipulatoren verstanden. Die Manipulatorbahn kann insbesondere durch die Vorgabe diskreter, insbesondere geteachter, Bahnpunkte und die Vorgabe einer Bahn zwischen diesen Bahnpunkten, etwa einer Geraden oder eines Kreissegments, im Arbeits- oder Konfigurationsraum, oder auch durch die Vorgabe einer Abbildung bzw. Relation, beispielsweise einer Spline-Funktion im Arbeits- oder Konfigurationsraum, vorgegeben werden. Unter einer orientierten Manipulatorbahn wird vorliegend insbesondere eine Manipulatorbahn mit einem vorgegebenen Richtungs- bzw. Durchlaufsinn verstanden, der beispielsweise durch eine Reihenfolge anzufahrender und/oder zu überschleifender Punkte vorgegeben sein kann.One aspect of the present invention relates to a manipulator process for a manipulator arrangement with one or more manipulators, in particular industrial robots. The manipulator process has a predetermined, oriented manipulator path of the manipulator arrangement. In the present case, a manipulator track is understood to mean, in particular, a discrete or continuous sequence of positions, in particular positions and / or orientations, of one or more manipulator-fixed reference points, in particular of a TCP of a manipulator, and / or of poses, in particular joint coordinates, of one or more manipulators. The manipulator path can in particular by specifying discrete, in particular taught, path points and specifying a path between these path points, for example a straight line or a segment of a circle, in the work or configuration space, or by specifying a mapping or relation, for example a spline Function in the work or configuration room. In the present case, an oriented manipulator path is understood to mean, in particular, a manipulator path with a predetermined direction of direction or passage, which can be predetermined, for example, by a sequence of points to be approached and / or to be looped over.

Für diesen Manipulatorprozess bzw. dessen Manipulatorbahn können nach einem Aspekt der vorliegenden Erfindung eine oder mehrere Aktionen vorgegeben und/oder bei diesem Manipulatorprozess bzw. dem Abfahren seiner Manipulatorbahn ausgeführt werden. Eine Aktion im Sinne der vorliegenden Erfindung kann insbesondere eine logische und/oder arithmetische Rechen- und/oder Speicheroperation, insbesondere die Zuweisung einer Variablen, und/oder eine Steuerung der Manipulatoranordnung, insbesondere eines oder mehrerer manipulatorgeführter und/oder umgebungsfester Werkzeuge und/oder Prozessmittel, umfassen, insbesondere sein. Eine Aktion im Sinne der vorliegende Erfindung kann beispielsweise eine Wertzuweisung eines Kennzeichners, ein Bestromen einer manipulatorgeführten Schweißzange oder das Schließen eines umgebungsfesten Spanners sein.For this manipulator process or its manipulator path, according to one aspect of the present invention, one or more actions can be specified and / or carried out during this manipulator process or when its manipulator path is followed. An action within the meaning of the present invention can in particular be a logical and / or arithmetic calculation and / or Memory operation, in particular the assignment of a variable, and / or a control of the manipulator arrangement, in particular one or more manipulator-guided and / or ambient-proof tools and / or process means, in particular. An action within the meaning of the present invention can be, for example, assigning a value to an identifier, energizing a manipulator-guided welding tongs or closing a clamp that is stable in the environment.

Eine oder mehrere dieser Aktionen können erfindungsgemäß in Abhängigkeit von einer zu der orientierten Manipulatorbahn gegensinnigen, ereignisinitiierten Rückwärtsbewegung undin einer Ausführung in Abhängigkeit von einer zu der orientierten Manipulatorbahn gleichsinnigen Rückkehrbewegung der Manipulatoranordnung vorgegeben und/oder ausgeführt werden. Unter einer ereignisinitiierten Bewegung wird vorliegend insbesondere eine Bewegung der Manipulatoranordnung verstanden, die aufgrund eines äußeren, insbesondere nicht vorgegebenen und/oder nicht regelmäßigen Ereignisses initiiert bzw. ausgeführt wird. In einer Ausführung kann eine ereignisinitiierten Rückwärtsbewegung durch eine manuelle Eingabe eines Bedieners, etwa durch die Betätigung einer Rückfahrtaste, und/oder durch ein Signal, insbesondere ein Fehlersignal, eingeleitet werden, etwa aufgrund der Betätigung eines Not-Halts, einer Abweichung von der Manipulatorbahn, eines fehlerhaften Wertes für den Schweißstrom unter einer unterbrochenen Zugabe des Schutzgases oder dergleichen. In einer Ausführung ist eine ereignisinitiierte Bewegung dadurch gekennzeichnet, dass sie nicht bei jedem Abfahren der vorgegebenen Manipulatorbahn stets an demselben Bahnpunkt eingeleitet wird und/oder von weiteren, nicht manipulatorbahneigenen, Randbedingungen abhängt.According to the invention, one or more of these actions can be specified and / or executed as a function of an event-initiated reverse movement in the opposite direction to the oriented manipulator path and, in one embodiment, as a function of a return movement of the manipulator arrangement in the same direction as the oriented manipulator path. In the present case, an event-initiated movement is understood to mean, in particular, a movement of the manipulator arrangement that is initiated or executed on the basis of an external, in particular non-predetermined and / or irregular event. In one embodiment, an event-initiated backward movement can be initiated by manual input by an operator, for example by actuating a return button, and / or by a signal, in particular an error signal, for example due to the actuation of an emergency stop, a deviation from the manipulator path, an incorrect value for the welding current with an interrupted addition of the protective gas or the like. In one embodiment, an event-initiated movement is characterized in that it is not always initiated at the same point on the path each time the specified manipulator path is traversed and / or depends on other boundary conditions that are not specific to the manipulator path.

Unter einer gegensinnigen Rückwärtsbewegung wird vorliegend insbesondere eine Bewegung der Manipulatoranordnung, insbesondere eines oder mehrerer Manipulatoren, verstanden, die - wenigstens abschnittsweise - entgegen dem Durchlaufsinn der orientierten Manipulatorbahn erfolgt. Die Rückwärtsbewegung kann insbesondere einen Startpunkt aufweisen, der auf der Manipulatorbahn liegt, d.h. von der Manipulatorbahn ausgehen, und bezüglich dieses Startpunktes lokal gegensinnig zu der Manipulatorbahn sein. Die Rückwärtsbewegung kann einen zu der Manipulatorbahn parallelen Abschnitt aufweisen. Unter einem parallelen Abschnitt wird vorliegend insbesondere ein im Arbeits- oder Konfigurationsraum kongruenter Abschnitt, beispielsweise eine parallele Gerade, ein konzentrisches Kreissegment oder dergleichen, verstanden. Insbesondere kann der parallele Abschnitt auch mit einem - gegensinnig abzufahrenden - Abschnitt der Manipulatorbahn identisch sein, d.h. die Rückwärtsbewegung - wenigstens abschnittsweise - auf der Manipulatorbahn erfolgen. Gleichermaßen kann die Rückwärtsbewegung einen von der Manipulatorbahn wegführenden Abschnitt aufweisen, an den sich insbesondere ein paralleler Abschnitt anschließen kann, so dass die Manipulatorbahn bei der Rückwärtsbewegung abschnittsweise mit einem Offset bzw. einer Ablage gegensinnig durchfahren wird.In the present case, a reverse backward movement is understood to mean, in particular, a movement of the manipulator arrangement, in particular one or more manipulators, which - at least in sections - takes place against the direction of passage of the oriented manipulator path. The backward movement can in particular have a starting point which lies on the manipulator path, that is to say emanating from the manipulator path, and with respect to this starting point can be locally opposite to the manipulator path. The backward movement can have a section parallel to the manipulator path. In the present case, a parallel section is in particular one that is congruent in the working or configuration space Section, for example a parallel straight line, a concentric segment of a circle or the like understood. In particular, the parallel section can also be identical to a section of the manipulator path that is to be traversed in opposite directions, ie the backward movement can take place - at least in sections - on the manipulator path. Equally, the backward movement can have a section leading away from the manipulator path, which can be followed in particular by a parallel section, so that the manipulator path is traversed in opposite directions during the backward movement in sections with an offset or a deposit.

Unter einer gleichsinnigen Rückkehrbewegung wird vorliegend insbesondere eine Bewegung der Manipulatoranordnung, insbesondere eines oder mehrerer Manipulatoren, verstanden, die - wenigstens abschnittsweise - mit dem gleichen Durchlaufsinn wie die orientierte Manipulatorbahn erfolgt. Die gleichsinnige Rückkehrbewegung kann in einer Ausführung im Anschluss an eine gegensinnige Rückwärtsbewegung, insbesondere unmittelbar oder nach einer Pause, erfolgen und/oder einen Endpunkt aufweisen, der auf der Manipulatorbahn liegt und bezüglich dessen die Rückkehrbewegung lokal gleichsinnig zu der Manipulatorbahn sein kann. Der Endpunkt bzw. dessen Projektion kann mit dem Startpunkt einer vorangehenden Rückwärtsbewegung bzw. dessen Projektion identisch sein oder - im Durchlaufsinn der Manipulatorbahn - vor oder hinter diesem liegen. In einer Ausführung wird die vorgegebene Manipulatorbahn nach einem ereignisinitiierten Abfahren der Rückwärts- und Rückkehrbewegung, beginnend an deren Endpunkt, weiter abgefahren.In the present case, a return movement in the same direction is understood to mean, in particular, a movement of the manipulator arrangement, in particular one or more manipulators, which - at least in sections - takes place in the same direction of passage as the oriented manipulator path. In one embodiment, the return movement in the same direction can follow a reverse movement in the opposite direction, in particular immediately or after a break, and / or have an end point that lies on the manipulator path and with respect to which the return movement can be locally in the same direction as the manipulator path. The end point or its projection can be identical to the starting point of a previous backward movement or its projection or - in the direction of passage of the manipulator path - lie in front of or behind it. In one embodiment, the specified manipulator path is continued after an event-initiated movement of the backward and return movement, starting at its end point.

Die Rückkehrbewegung kann ebenfalls einen zu der Manipulatorbahn parallelen Abschnitt aufweisen, insbesondere auch mit einem - gleichsinnig erneut abzufahrenden - Abschnitt der Manipulatorbahn identisch sein, d.h. die Rückkehrbewegung kann - wenigstens abschnittsweise - auf der Manipulatorbahn erfolgen. Gleichermaßen kann die Rückkehrbewegung einen auf die Manipulatorbahn zurückführenden Abschnitt aufweisen, insbesondere, um einen Offset bzw. eine Ablage einer vorangehenden Rückwärtsbewegung zu kompensieren.The return movement can also have a section parallel to the manipulator path, in particular also be identical to a section of the manipulator path that is to be traversed again in the same direction, i.e. the return movement can take place - at least in sections - on the manipulator path. Equally, the return movement can have a section leading back to the manipulator path, in particular in order to compensate for an offset or offset of a previous backward movement.

Eine oder mehrere der Aktionen können in Abhängigkeit von der Rückwärtsbewegung vorgegeben bzw. ausgeführt werden. Insbesondere kann vorgesehen sein, dass eine oder mehrere Aktionen wahlweise, insbesondere auch oder nur bei der Rückwärtsbewegung, ausgeführt werden. So kann beispielsweise ein Spanner, der beim Abfahren der vorgegebenen Manipulatorbahn nach dem Durchgang eines manipulatorgeführten Werkzeugs geschlossen wurde, bei einer Rückwärtsbewegung wieder geöffnet werden.One or more of the actions can be specified or executed depending on the backward movement. In particular, it can be provided that one or more actions optionally, in particular also or only during the Backward movement. For example, a clamp that was closed when moving along the specified manipulator path after a manipulator-guided tool had passed through, can be opened again when moving backwards.

Zusätzlich oder alternativ können eine oder mehrere Aktionen in Abhängigkeit von der Rückkehrbewegung vorgegeben bzw. ausgeführt werden. Insbesondere kann vorgesehen sein, dass eine oder mehrere Aktionen wahlweise, insbesondere auch oder nur bei der Rückkehrbewegung, ausgeführt werden. So kann beispielsweise ein Spanner, der bei einer Rückwärtsbewegung wieder geöffnet wurde, bei einer Rückkehrbewegung nach dem Durchgang eines manipulatorgeführten Werkzeugs wieder geschlossen werden.Additionally or alternatively, one or more actions can be specified or executed depending on the return movement. In particular, it can be provided that one or more actions are optionally carried out, in particular also or only during the return movement. For example, a clamp that was opened again during a backward movement can be closed again during a return movement after a manipulator-guided tool has passed through.

Eine oder mehrere Aktionen können insbesondere bei bzw. nach Beendigung einer Rückwärtsbewegung und/oder einer Rückkehrbewegung vorgegeben bzw. ausgeführt werden. Beispielsweise kann es zweckmäßig sein, Aktionen, die bei Beginn des Manipulatorprozesses ausgeführt wurden, etwa eine optische oder akustische Warnung, eine Spülung, Temperierung oder dergleichen, bei Beendigung der Rückwärtsbewegung und/oder der Rückkehrbewegung erneut auszuführen. Gleichermaßen können eine oder mehrere Aktionen auch während der Rückwärts-bzw. -kehrbewegung ausgeführt werden, insbesondere in Abhängigkeit der Position der Manipulatoranordnung in Relation zu der vorgegebenen Manipulatorbahn.One or more actions can be specified or executed in particular during or after the end of a backward movement and / or a return movement. For example, it can be expedient to repeat actions that were carried out at the beginning of the manipulator process, such as an optical or acoustic warning, flushing, temperature control or the like, when the backward movement and / or the return movement are ended. Equally, one or more actions can also be performed during the backward or reversal movement are executed, in particular as a function of the position of the manipulator arrangement in relation to the predetermined manipulator path.

Eine oder mehrere Aktionen können in einer Ausführung in Abhängigkeit von der Rückwärtsbewegung und/oder Rückkehrbewegung unterschiedlich vorgegeben bzw. ausgeführt werden. Hierunter wird vorliegend insbesondere verstanden, dass eine Aktion - beispielsweise die Zuweisung eines Wertes zu einer Variablen oder das Öffnen eines Spanners - für eine Rückwärtsbewegung vorgegeben bzw. bei einer Rückwärtsbewegung ausgeführt werden kann, und eine hiervon verschiedene Aktion - beispielsweise die Zuweisung eines anderen Wertes zu der Variablen oder das Schließen eines Spanners - für eine Rückkehrbewegung vorgegeben bzw. bei einer Rückkehrbewegung ausgeführt werden kann. Zusätzlich oder alternativ kann dieselbe oder eine hiervon verschiedene Aktion - beispielsweise die Zuweisung eines weiteren Wertes zu der Variablen - für das Abfahren der vorgegebenen Manipulatorbahn vorgegeben bzw. beim Abfahren der vorgegebenen Manipulatorbahn ausgeführt werden. Allgemein ist dabei vorgesehen, dass die Aktion für das planmäßige Abfahren der vorgegebenen Manipulatorbahn, das ereignisinitiierte Ausführen einer Rückwärtsbewegung und/oder einer, insbesondere daran anschließenden, Rückkehrbewegung unterschiedlich vorgebbar ist bzw. wahlweise ausgeführt wird. Eine Aktion kann insbesondere auch dadurch unterschiedlich ausgeführt werden, dass sie wahlweise ausgeführt oder nicht ausgeführt wird.One or more actions can be specified or executed differently in one execution depending on the backward movement and / or return movement. In the present case, this is understood in particular to mean that an action - for example the assignment of a value to a variable or the opening of a clamp - can be specified for a backward movement or carried out during a backward movement, and an action different therefrom - for example the assignment of a different value the variable or the closing of a tensioner - can be specified for a return movement or executed on a return movement. Additionally or alternatively, the same or a different action - for example the assignment of a further value to the variable - can be specified for traveling along the specified manipulator path or carried out when traveling along the specified manipulator path will. In general, it is provided that the action for the scheduled travel of the specified manipulator path, the event-initiated execution of a backward movement and / or a return movement, in particular a subsequent return movement, can be specified differently or is optionally carried out. An action can in particular also be carried out differently in that it is optionally carried out or not carried out.

Wie einleitend erläutert, ist es aus betriebsinterner Praxis bekannt, für eine Manipulatorbahn einen oder mehrere Schalt-Bahnpunkte vorzugeben, um beim planmäßigen Abfahren der Manipulatorbahn in Abhängigkeit von diesen Schalt-Bahnpunkten, insbesondere deren Erreichen bzw. Überfahren, eine vorgegebene Aktion auszulösen, beispielsweise einen Spanner zu öffnen, eine manipulatorgeführte Schweißzange zu bestromen oder dergleichen.As explained in the introduction, it is known from in-house practice to specify one or more switching path points for a manipulator path in order to trigger a specified action, for example one, when the manipulator path is traveled as planned, depending on these switching path points, in particular reaching or overriding them To open the clamp, to energize a manipulator-guided welding gun or the like.

Nach einer Ausführung der vorliegenden Erfindung werden solche Schalt-Bahnpunkte nunmehr auch genutzt, um eine Aktion in Abhängigkeit von der Rückwärtsbewegung und/oder Rückkehrbewegung, insbesondere wahlweise bzw. unterschiedlich, vorzugeben bzw. auszuführen. Die Aktion kann somit in Abhängigkeit von der Rückwärtsbewegung und/oder Rückkehrbewegung und in Abhängigkeit von einem Schalt-Bahnpunkt, insbesondere unterschiedlich, vorgegeben bzw. ausgeführt werden.According to one embodiment of the present invention, such switching path points are now also used to predetermine or carry out an action as a function of the backward movement and / or return movement, in particular optionally or differently. The action can thus be specified or executed as a function of the backward movement and / or return movement and as a function of a switching path point, in particular differently.

In einer Weiterbildung kann die Aktion in Abhängigkeit von einem projizierten Abstand der Manipulatoranordnung zu einem Schalt-Bahnpunkt bei der Rückwärtsbewegung und/oder der Rückkehrbewegung, insbesondere unterschiedlich, vorgegeben bzw. ausgeführt werden. Bei einem Abfahren der vorgegebenen Manipulatorbahn bewegt sich ein die Position der Manipulatoranordnung kennzeichnender Punkt, beispielsweise der TCP im Arbeitsraum oder ein Vektor der Gelenkkoordinaten im Konfigurationsraum, auf der in diesem Raum vorgegebenen Manipulatorbahn. Bei einer Rückwärts- bzw. -kehrbewegung bewegt sich dieser Punkt entsprechend im Arbeits- bzw. Konfigurationsraum, bei einer Ablage jenseits der Manipulatorbahn. Dieser Punkt kann, insbesondere parallel zu einer Normalen auf die Manipulatorbahn oder die Rückwärts- bzw. -kehrbewegung, auf die Manipulatorbahn projiziert werden. Gleichermaßen kann auch der Schalt-Bahnpunkt umgekehrt auf die Rückwärts- bzw. -kehrbewegung projiziert werden, insbesondere, wenn diese in einer Ausführung der vorliegenden Erfindung - wenigstens abschnittsweise - automatisiert erfolgt und somit vorgegeben ist, beispielsweise parallel zu einem Abschnitt der Manipulatorbahn. Der projizierte Punkt kann gegenüber der senkrechten Projektion auch auf der Manipulator- oder Rückwärts- bzw. -kehrbewegungsbahn in oder entgegen deren Durchlaufsinn versetzt sein, insbesondere einer tatsächlichen Bewegung voraus- oder nacheilen. Unter einem projizierten Abstand der Manipulatoranordnung wird vorliegend entsprechend insbesondere der Abstand eines die Position der Manipulatoranordnung kennzeichnenden, auf die Manipulatorbahn projizierten Punktes zu dem Schalt-Bahnpunkt oder der Abstand eines die Position der Manipulatoranordnung kennzeichnenden Punktes zu dem auf die Rückwärts- bzw. - kehrbewegung(sbahn) projizierten Schalt-Bahnpunkt verstanden. Die Aktion kann dann insbesondere ausgeführt werden, wenn der projizierte Abstand einen Grenzwert unterschreitet, insbesondere zu Null wird, insbesondere, wenn ein die Position der Manipulatoranordnung kennzeichnender, auf die Manipulatorbahn projizierter Punkt einen Schalt-Bahnpunkt erreicht bzw. überfährt. Bildlich kann der projizierte Punkt als Punkt auf der Manipulatorbahn gedacht werden, der sich entsprechend einer Rückwärts- bzw. -kehrbewegung auf der Manipulatorbahn mitbewegt. Erfolgt die Rückwärts- bzw. -kehrbewegung - wenigstens abschnittsweise - auf der Manipulatorbahn, so kann die Projektion eine Identität sein.In a further development, the action can be specified or executed depending on a projected distance between the manipulator arrangement and a switching path point during the backward movement and / or the return movement, in particular differently. When the specified manipulator path is traversed, a point characterizing the position of the manipulator arrangement, for example the TCP in the work space or a vector of the joint coordinates in the configuration space, moves on the manipulator path specified in this space. In the case of a backward or reverse movement, this point moves accordingly in the work or configuration space, in the case of a deposit beyond the manipulator path. This point can be projected onto the manipulator path, in particular parallel to a normal to the manipulator path or the backward or reverse movement. Equally, the switching path point can also be projected vice versa onto the backward or reverse movement, in particular if this takes place automatically in an embodiment of the present invention - at least in sections - and is thus given, for example parallel to a section of the manipulator path. The projected point can also be offset in relation to the vertical projection on the manipulator or backward or reverse movement path in or against its direction of passage, in particular it can lead or lag an actual movement. In the present case, a projected distance of the manipulator arrangement is in particular the distance from a point, which characterizes the position of the manipulator arrangement and projected onto the manipulator path, to the switching path point or the distance of a point which characterizes the position of the manipulator arrangement to the backward or reversing movement ( sbahn) projected switching path point understood. The action can then in particular be carried out when the projected distance falls below a limit value, in particular becomes zero, in particular when a point which characterizes the position of the manipulator arrangement and which is projected onto the manipulator path reaches or passes over a switching path point. Figuratively, the projected point can be thought of as a point on the manipulator path which moves along with it in accordance with a backward or reverse movement on the manipulator path. If the backward or reverse movement takes place - at least in sections - on the manipulator path, the projection can be an identity.

Zusätzlich oder alternativ zu einer, insbesondere unterschiedlichen, Ausführung der Aktion bei einem Erreichen bzw. Überfahren eines dieser Aktion zugeordneten Schalt-Bahnpunktes durch einen die Position der Manipulatoranordnung kennzeichnenden, auf die Manipulatorbahn projizierten Punktes kann eine Aktion auch bei Beendigung einer Rückwärts- und/oder Rückkehrbewegung in Abhängigkeit davon erfolgen, ob der projizierte Abstand der Manipulatoranordnung zu diesem Schalt-Bahnpunkt positiv oder negativ ist. Auf diese Weise können insbesondere Aktionen, deren Schalt-Bahnpunkte bei einem Abfahren eines Abschnitts der Manipulatorbahn bereits überfahren wurden, wahlweise nochmals ausgeführt werden, insbesondere auch, wenn sie bei der Rückwärts- bzw. -kehrbewegung nicht projiziert überfahren werden.In addition or as an alternative to an, in particular different, execution of the action when a switching path point assigned to this action is reached or passed through a point that characterizes the position of the manipulator arrangement and is projected onto the manipulator path, an action can also be performed when a backward and / or Return movement take place depending on whether the projected distance of the manipulator arrangement to this switching path point is positive or negative. In this way, in particular, actions whose switching path points have already been passed over when traveling over a section of the manipulator path can optionally be carried out again, especially if they are not projected over during the backward or reverse movement.

Wie einleitend ausgeführt, ist es aus betriebsinterner Praxis bekannt, durch eine Schaltpunkt-Routine Schalt-Bahnpunkte vorzugeben, die eine Unterroutine zum Ausführen der Aktion aufweist, etwa in der Form:

  • ...
  • SLIN P
  • TRIGGER WHEN PATH=Abstand DO Unterroutine
  • SLIN Q
  • ...
As stated in the introduction, it is known from in-house practice to specify switching path points using a switching point routine, which has a subroutine for carrying out the action, for example in the form:
  • ...
  • SLIN P
  • TRIGGER WHEN PATH = distance DO subroutine
  • SLIN Q
  • ...

In einer bevorzugten Ausführung ist die Funktionalität der Schaltpunkt-Routine so erweitert, dass diese in Abhängigkeit von der Rückwärtsbewegung und/oder Rückkehrbewegung, insbesondere unterschiedlich, vorgebbar ist bzw. ausgeführt wird, beispielsweise in der Form:

  • ...
  • SLIN P
  • TRIGGER WHEN PATH=Abstand DO Unterroutine [FIRE_COND=Bewegung]
  • SLIN Q
  • ...
In a preferred embodiment, the functionality of the switching point routine is extended so that it can be specified or executed depending on the backward movement and / or return movement, in particular differently, for example in the form:
  • ...
  • SLIN P
  • TRIGGER WHEN PATH = distance DO subroutine [FIRE_COND = movement ]
  • SLIN Q
  • ...

Die, vorzugsweise Boolsche und/oder mehrwertige, Größe Bewegung kann insbesondere eine Systemvariable sein, die angibt, welche Bewegungsart aktuell vorliegt. Über sie kann bestimmt werden, ob die Schaltpunkt-Routine ausgeführt wird, falls die vorgegebene Manipulatorbahn abgefahren wird (Bewegung = REGULAR), eine Rückwärtsbewegung ausgeführt wird (Bewegung = BACKWARD), eine Rückwärtsbewegung abgeschlossen ist (Bewegung = RESTART), eine Rückkehrbewegung ausgeführt wird (Bewegung = REPLAY) und/oder eine Rückkehrbewegung abgeschlossen ist. Vorzugsweise wird die Schaltpunkt-Routine defaultmäßig nur beim Abfahren der Manipulatorbahn oder defaultmäßig stets ausgeführt.The preferably Boolean and / or multivalued movement variable can in particular be a system variable that indicates which type of movement is currently present. It can be used to determine whether the switching point routine is executed if the specified manipulator path is followed ( movement = REGULAR), a backward movement is carried out ( movement = BACKWARD), a backward movement is completed ( movement = RESTART), a return movement is carried out ( Movement = REPLAY) and / or a return movement has been completed. The switching point routine is preferably executed by default only when the manipulator path is traversed or by default always executed.

Zusätzlich oder alternativ kann die Funktionalität der Unterroutine so erweitert werden, dass diese in Abhängigkeit von der Rückwärtsbewegung und/oder Rückkehrbewegung, insbesondere unterschiedlich, vorgebbar ist bzw. ausgeführt wird, beispielsweise in der Form:

  • ...
  • SLIN P
  • TRIGGER WHEN PATH=Abstand DO Unterroutine() [FIRE_COND=Bewegung]
  • SLIN Q
wobei in der Unterroutine der Bewegungskontext ausgewertet wird:
Figure imgb0001
Additionally or alternatively, the functionality of the subroutine can be expanded in such a way that it can be specified or executed depending on the backward movement and / or return movement, in particular differently, for example in the form:
  • ...
  • SLIN P
  • TRIGGER WHEN PATH = distance DO subroutine () [FIRE_COND = movement]
  • SLIN Q
where the movement context is evaluated in the subroutine:
Figure imgb0001

Die in der Schaltpunkt-Routine vorgegebene Unterroutine Unterroutine führt in Abhängigkeit von der Systemvariablen $TRIGGER_UP_CONTEXT = Bewegung eine Aktion unterschiedlich aus. Hierzu kann die Unterroutine auf die Systemvariable zurückgreifen oder diese ihr übergeben werden, etwa in der Form Unterroutine (Bewegung).The predefined in the switching point routine subroutine subroutine performs a function of the system variables $ TRIGGER_UP_CONTEXT = motion an action different. For this purpose, the subroutine can access the system variable or this can be transferred to it, for example in the form of a subroutine ( movement ).

Wird also im aktuellen Betrieb beispielsweise eine vorgegebene Manipulatorbahn abgefahren, ist die Systemvariable Bewegung mit "REGULAR" belegt. Entsprechend kann im oberen Beispiel der Trigger aktiviert werden, falls dies durch "FIRE_COND=REGULAR" vorgegeben worden ist. Im unteren Beispiel greift die Unterroutine auf diese Systemvariable Bewegung zu und führt entsprechend ("CASE #REGULAR") die hierfür vorgegebene Aktion RegularAction aus.If, for example, a specified manipulator path is traversed in current operation, the movement system variable is assigned "REGULAR". Correspondingly, the trigger can be activated in the above example if this has been specified by "FIRE_COND = REGULAR". In the example below, the Subroutine to this system variable movement and accordingly executes ("CASE #REGULAR") the regular action specified for this.

Ein Aspekt der vorliegenden Erfindung betrifft ein Verfahren zum Vorgeben eines Manipulatorprozesses. Unter einem Vorgeben wird insbesondere ein Erstellen und/oder Modifizieren, insbesondere Parametrieren, eines Programms für die Manipulatoranordnung verstanden, beispielsweise durch Verwenden und Parametrieren der oben erläuterten erweiterten Funktionalität einer Schaltpunkt- und/oder ihrer Unterroutine. Ein weiterer Aspekt der vorliegenden Erfindung betrifft ein Verfahren zum Steuern eines solchen Manipulatorprozesses. Unter einem Steuern wird vorliegend insbesondere das Übermitteln bzw. Umsetzen von Bewegungs- und anderen Steuerbefehlen der Manipulatoranordnung und/oder deren Aktuierung, beispielsweise eine Bestromung von Antrieben und/oder Werkzeugen, verstanden, insbesondere die Ausführung eines Programms. Ein weiterer Aspekt der vorliegenden Erfindung betrifft ein Mittel zum Vorgeben und/oder Steuern eines solchen Manipulatorprozesses. Ein Mittel im Sinne der vorliegenden Erfindung kann insbesondere soft- und/oder hardwaretechnisch ausgebildet sein. In einer Ausführung umfasst es ein Programm, ein Computerprogrammprodukt, insbesondere einen Datenträger, mit einem hierauf gespeicherten Programm, und/oder einen Computer mit einem Ein-/Ausgabemittel, insbesondere einer Tastatur, einem Bildschirm oder dergleichen, einem Speichermittel und einem Verarbeitungs- bzw. Rechenmittel. Das Mittel ist insbesondere zum Vorgeben und/oder Steuern des Manipulatorprozesses eingerichtet und kann hierzu beispielsweise einen oder mehrere, insbesondere parametrierbare, Befehle aufweisen.One aspect of the present invention relates to a method for specifying a manipulator process. Specification is understood to mean in particular creating and / or modifying, in particular parameterizing, a program for the manipulator arrangement, for example by using and parameterizing the above-explained extended functionality of a switching point and / or its subroutine. Another aspect of the present invention relates to a method for controlling such a manipulator process. In the present case, controlling is understood to mean, in particular, the transmission or implementation of movement and other control commands of the manipulator arrangement and / or their actuation, for example energizing drives and / or tools, in particular the execution of a program. Another aspect of the present invention relates to a means for specifying and / or controlling such a manipulator process. A means within the meaning of the present invention can in particular be designed in terms of software and / or hardware. In one embodiment, it comprises a program, a computer program product, in particular a data carrier, with a program stored thereon, and / or a computer with an input / output device, in particular a keyboard, a screen or the like, a storage device and a processing or processing device. Arithmetic means. The means is set up in particular for specifying and / or controlling the manipulator process and for this purpose can for example have one or more, in particular parameterizable, commands.

Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert, die einzige:

Fig. 1:
einen Teil einer Manipulatoranordnung beim Ausführen eines Manipulatorprozesses nach einer Ausführung der vorliegenden Erfindung.
Further advantages and features emerge from the subclaims and the exemplary embodiments. The only one shows, partly schematically:
Fig. 1:
a portion of a manipulator assembly performing a manipulator process according to an embodiment of the present invention.

Fig. 1 zeigt eine robotergeführte Schweißzangen-Elektrode 1 und eine Robotersteuerung 2 einer Manipulatoranordnung nach einer Ausführung der vorliegenden Erfindung bei einem Manipulatorprozess in Form eines Schweißens eines durch Spanner 3 fixierten Werkstücks 4, der mittels eines Mittels bzw. nach einem Verfahren nach einer Ausführung der vorliegenden Erfindung vorgegeben worden ist bzw. ausgeführt wird. Die Robotersteuerung 2 stellt ein Mittel im Sinne der vorliegenden Erfindung zum Vorgeben und Steuern des Manipulatorprozesses der Manipulatoranordnung dar. Fig. 1 shows a robot-guided welding gun electrode 1 and a robot control 2 of a manipulator arrangement according to an embodiment of the present invention in a manipulator process in the form of welding a workpiece 4 fixed by clamps 3, which has been specified or is being executed by means of a means or a method according to an embodiment of the present invention. The robot controller 2 represents a means within the meaning of the present invention for specifying and controlling the manipulator process of the manipulator arrangement.

In Fig. 1 ist ausgezogen die Manipulatorbahn des TCPs, hier der Spitze der Schweißzangen-Elektrode 1, eingezeichnet. Sie ist beispielsweise vorgegeben durch die Programmbefehle
TRIGGER WHEN PATH=Abstand0 DO TEMP FIRE_COND=(TRUE, FALSE, FALSE,
TRUE)
SLIN P
TRIGGER WHEN PATH=Abstand1 DO OPEN(FIRE_COND)
TRIGGER WHEN PATH=Abstand2 DO CLOSE(FIRE_COND)
SLIN Q
mit den geteachten Bahnpunkten P, Q.
In Fig. 1 the manipulator path of the TCP, here the tip of the welding gun electrode 1, is drawn in in full. It is specified, for example, by the program commands
TRIGGER WHEN PATH = distance 0 DO TEMP FIRE_COND = ( TRUE , FALSE, FALSE,
TRUE)
SLIN P
TRIGGER WHEN PATH = distance1 DO OPEN ( FIRE_COND )
TRIGGER WHEN PATH = distance2 DO CLOSE ( FIRE_COND )
SLIN Q
with the taught path points P , Q.

Die Größe FIRE_COND weist vier Boolsche Ausdrücke auf:

  • FIRE_COND = (TRUE, FALSE, FALSE, FALSE) gibt ein reguläres Abfahren der vorgegebenen Manipulatorbahn an,
  • FIRE_COND = (FALSE, TRUE, FALSE, FALSE) eine Rückwärtsbewegung (strichliert in Fig. 1),
  • FIRE_COND = (FALSE, FALSE, TRUE, FALSE) eine Rückkehrbewegung (strichpunktiert in Fig. 1), und
  • FIRE_COND = (FALSE, FALSE, FALSE, TRUE) die Beendigung einer Rückwärtsbewegung.
The quantity FIRE_COND has four Boolean expressions:
  • FIRE_COND = (TRUE, FALSE, FALSE, FALSE) indicates a regular movement of the specified manipulator path ,
  • FIRE_COND = (FALSE, TRUE, FALSE, FALSE) a backward movement (dashed in Fig. 1 ),
  • FIRE_COND = (FALSE, FALSE, TRUE, FALSE) a return movement ( dash-dotted in Fig. 1 ), and
  • FIRE_COND = (FALSE, FALSE, FALSE, TRUE) the termination of a backward movement.

Beim regulären Abfahren der vorgegebenen Manipulatorbahn, insbesondere im Automatikbetrieb, wird entsprechend FIRE_COND = (TRUE, FALSE, FALSE, FALSE) vorgegeben. Initiiert ein Ereignis, beispielsweise ein Fehlersignal oder die Betätigung einer Rückwärtsfahrtaste, eine Rückwärtsbewegung, wird die Größe auf FIRE_COND = (FALSE, TRUE, FALSE, FALSE) geändert. Wird die Rückwärtsbewegung beendet, beispielsweise weil die Rückwärtsfahrtaste nicht mehr betätigt ist oder ein automatisierter Rückzug infolge des Fehlersignals erreicht ist, wird die Größe auf FIRE_COND = (FALSE, FALSE, FALSE, TRUE) geändert. Bei der Rückkehrbewegung wird die Größe auf FIRE_COND = (FALSE, FALSE, TRUE, FALSE) geändert, beim Weiterfahren auf der Manipulatorbahn schließlich wieder in FIRE_COND = (TRUE, FALSE, FALSE, FALSE).When the specified manipulator path is traveled regularly , especially in automatic mode, FIRE_COND = (TRUE, FALSE, FALSE, FALSE) is specified accordingly. If an event, for example an error signal or the actuation of a reverse travel button, initiates a backward movement, the size is changed to FIRE_COND = (FALSE, TRUE, FALSE, FALSE). If the backward movement is ended, For example, because the reverse button is no longer pressed or an automated retraction is achieved as a result of the error signal, the size is changed to FIRE_COND = (FALSE, FALSE, FALSE, TRUE). During the return movement, the size is changed to FIRE_COND = (FALSE, FALSE, TRUE, FALSE), and finally to FIRE_COND = (TRUE, FALSE, FALSE, FALSE) when continuing on the manipulator path .

Zunächst wird ein reguläres Abfahren der Manipulatorbahn erläutert:
Erreicht die Schweißzangen-Elektrode 1 den ersten Schalt-Bahnpunkt S1, der Abstand0 vor dem Punkt P liegt, wird die Unterroutine TEMP aufgerufen, da die Schaltpunkt-Routine
TRIGGER WHEN PATH=Abstand0 DO TEMP FIRE_COND=(TRUE, FALSE, FALSE, TRUE)
ausgeführt wird, wenn der erste oder vierte Ausdruck von FIRE_COND "TRUE" ist. Diese Routine temperiert das Werkstück 4 vor.
First of all, a regular movement of the manipulator path is explained:
If the welding gun electrode 1 reaches the first switching path point S1, the distance 0 before point P , the subroutine TEMP is called, since the switching point routine
TRIGGER WHEN PATH = distance 0 DO TEMP FIRE_COND = (TRUE , FALSE, FALSE, TRUE)
is executed if the first or fourth expression of FIRE_COND is "TRUE". This routine pre-heats the workpiece 4.

Erreicht die Schweißzangen-Elektrode 1 den zweiten Schalt-Bahnpunkt S2, der Abstand1 vor dem Punkt Q liegt, wird die Unterroutine OPEN mit der Größe FIRE_COND = (TRUE, FALSE, FALSE, FALSE) aufgerufen. Diese Unterroutine öffnet den Spanner 3, falls der erste oder dritte Boolsche Ausdruck TRUE ist.If the welding gun electrode 1 reaches the second switching path point S2, the distance 1 lies in front of point Q , the subroutine OPEN is called with the variable FIRE_COND = (TRUE, FALSE, FALSE, FALSE). This subroutine opens the spanner 3 if the first or third Boolean expression is TRUE.

Die Schweißzangen-Elektrode 1 fährt an dem geöffneten Spanner 3 vorbei. Erreicht die Schweißzangen-Elektrode 1 den dritten Schalt-Bahnpunkt S3, der Abstand2 vor dem Punkt Q liegt, wird die Unterroutine CLOSE mit der Größe FIRE_COND = (TRUE, FALSE, FALSE, FALSE) aufgerufen. Diese Unterroutine schließt den Spanner 3, falls der erste oder dritte Boolsche Ausdruck TRUE ist.The welding gun electrode 1 moves past the opened clamp 3. If the welding gun electrode 1 reaches the third switching path point S3, the distance 2 is before the point Q , the subroutine CLOSE is called with the variable FIRE_COND = (TRUE, FALSE, FALSE, FALSE). This subroutine closes spanner 3 if the first or third Boolean expression is TRUE.

Initiiert ein Ereignis die Rückwärtsbewegung, so bewegt sich die Schweißzangen-Elektrode 1 automatisiert, wie in Fig. 1 strichliert dargestellt. Ihre senkrechte Projektion PR auf die Manipulatorbahn (vertikal in Fig. 1), die in Fig. 1 punktiert für eine Position der Manipulatoranordnung bzw. ihrer Schweißzangen-Elektrode 1 während der Rückwärtsbewegung angedeutet ist, überfährt bei dieser Rückwärtsbewegung zunächst den dritten Schaltpunkt S3. Die ihm zugeordnete Schaltpunkt-Routine
TRIGGER WHEN PATH=Abstand2 DO CLOSE(FIRE COND)
ruft dabei die Unterroutine CLOSE mit der Größe FIRE_COND = (FALSE, TRUE, FALSE, FALSE) auf. Diese öffnet (aufgrund der Rückwärtsbewegung) nun den Spanner 3, d.h. führt eine unterschiedliche Aktion aus, um der Schweißzangen-Elektrode 1 die Durchfahrt zu ermöglichen.
If an event initiates the backward movement, the welding gun electrode 1 moves automatically, as in FIG Fig. 1 shown in dashed lines. Your vertical projection PR on the manipulator track (vertical in Fig. 1 ), in the Fig. 1 dotted for a position of the manipulator arrangement or its welding gun electrode 1 is indicated during the backward movement, passes over in this Backward movement first the third switching point S3. The switching point routine assigned to it
TRIGGER WHEN PATH = distance2 DO CLOSE (FIRE COND)
calls the subroutine CLOSE with the size FIRE_COND = (FALSE, TRUE, FALSE, FALSE). This now opens the tensioner 3 (due to the backward movement), ie performs a different action in order to enable the welding gun electrode 1 to pass through.

Entsprechend schließt die Unterroutine OPEN, die mit FIRE_COND = (FALSE, TRUE, FALSE, FALSE) aufgerufen wird, nun den Spanner 3 nach Durchfahrt der Schweißzangen-Elektrode 1, wenn ihre Projektion den zweiten Schalt-Bahnpunkt S2 überfährt, um das Werkstück 4 wieder zu fixieren. Zur Verdeutlichung ist in Fig. 1 der projizierte Abstand PA der Projektion PR zu dem Schalt-Bahnpunkt S2 angedeutet: wird dieser Abstand zu Null, wird die Schaltpunkt-Routine aufgerufen.Correspondingly, the subroutine OPEN, which is called with FIRE_COND = (FALSE, TRUE, FALSE, FALSE), now closes the clamp 3 after the welding gun electrode 1 has passed when its projection passes the second switching path point S2 around the workpiece 4 again to fix. For clarification, in Fig. 1 the projected distance PA of the projection PR to the switching path point S2 is indicated: if this distance becomes zero, the switching point routine is called.

Ist die Rückwärtsbewegung beendet, wird die Größe auf FIRE_COND = (FALSE, FALSE, FALSE, TRUE) geändert. Da der erste Schaltpunkt S1 vor der Projektion der Schweißzangen-Elektrode 1 liegt, wird die ihm zugeordnete Schaltpunkt-Routine ausgeführt, d.h. eine - zwischenzeitlich gegebenenfalls nach Zeitablauf abgeschaltete - Vortemperierung erneut durchgeführt.When the backward movement has ended, the size is changed to FIRE_COND = (FALSE, FALSE, FALSE, TRUE). Since the first switching point S1 lies in front of the projection of the welding gun electrode 1, the switching point routine assigned to it is carried out, ie a pre-tempering is carried out again - in the meantime, if necessary, after the time has elapsed.

Nun fährt die Schweißzangen-Elektrode 1 automatisiert auf die Manipulatorbahn zurück (strichpunktiert in Fig. 1), die Größe wird auf FIRE_COND = (FALSE, FALSE, TRUE, FALSE) geändert.The welding gun electrode 1 now automatically moves back onto the manipulator track (dash-dotted line in Fig. 1 ), the size is changed to FIRE_COND = (FALSE, FALSE, TRUE, FALSE).

Überfährt bei dieser Rückkehrbewegung die Projektion der Schweißzangen-Elektrode 1 auf die Manipulatorbahn den zweiten bzw. dritten Schaltpunkt S2 bzw. S3, so rufen die diesen zugeordneten Schaltpunkt-Routinen die Unterroutine OPEN bzw. CLOSE mit der Größe FIRE_COND = (FALSE, FALSE, TRUE, FALSE) auf, die daraufhin - wie bei einem regulären Abfahren der Manipulatorbahn - den Spanner 3 öffnen bzw. schließen.If during this return movement the projection of the welding gun electrode 1 onto the manipulator path passes the second or third switching point S2 or S3, the switching point routines assigned to these call the subroutine OPEN or CLOSE with the variable FIRE_COND = (FALSE, FALSE, TRUE , FALSE), which then open or close the clamp 3 - as with a regular movement of the manipulator path.

Anschließend wird die Manipulatorbahn weiter abgefahren.Then the manipulator path is continued.

Man erkennt, dass durch die Erweiterung der Funktionalität der Schaltpunkt-Routinen bzw. ihrer Unterroutinen derart, dass sie in Abhängigkeit von einer Rückwärts- und Rückkehrbewegung ausgeführt werden, der Manipulatorprozess auch bei einer ereignisinitiierten Abweichung von einem regulären Abfahren der Manipulatorbahn wohlgeordnet und insbesondere automatisiert vorgegeben bzw. gesteuert werden kann.It can be seen that by expanding the functionality of the switching point routines or their subroutines in such a way that they are executed depending on a backward and return movement, the manipulator process is predefined in a well-ordered and, in particular, automated manner even in the event of an event-initiated deviation from a regular movement of the manipulator path or can be controlled.

Dabei kann es, insbesondere bei einfachen Unterroutinen, vorteilhaft sein, die Schaltpunkt-Routinen selber in Abhängigkeit von der Rückwärts- und Rückkehrbewegung aufzurufen bzw. auszuführen, wie am Beispiel der Schaltpunkt-Routine zum ersten Schaltpunkt exemplarisch erläutert. Gleichermaßen kann es vorteilhaft sein, die Unterroutine in Abhängigkeit von der Rückwärts- und Rückkehrbewegung unterschiedlich vorzugeben bzw. auszuführen, wie am Beispiel der Schaltpunkt-Routine zum zweiten und dritten Schaltpunkt exemplarisch erläutert.It can be advantageous, especially in the case of simple subroutines, to call up or execute the switching point routines themselves as a function of the backward and return movement, as explained using the example of the switching point routine for the first switching point. Equally, it can be advantageous to specify or execute the subroutine differently depending on the backward and return movement, as explained using the example of the switching point routine for the second and third switching point.

BezugszeichenlisteList of reference symbols

11
Schweißzangen-Elektrode (Manipulatoranordnung)Welding gun electrode (manipulator arrangement)
22
Robotersteuerung (Manipulatoranordnung)Robot control (manipulator arrangement)
33
Spanner (Manipulatoranordnung)Tensioner (manipulator arrangement)
44th
Werkstückworkpiece
S1, S2, S3S1, S2, S3
Schalt-BahnpunktSwitching path point
P, QP, Q
geteachte Bahnpunktetaught path points
PAPA
projizierter Abstandprojected distance
PRPR
Projektion auf ManipulatorbahnProjection on the manipulator track

Claims (10)

  1. A method of specifying and/or controlling a manipulator process for a manipulator arrangement (1, 2, 3) comprising at least one manipulator, in particular an industrial robot,
    wherein the manipulator process comprises a given oriented manipulator path of the manipulator arrangement,
    wherein
    the manipulator path has at least one switching path point (S1, S2, S3) in order to trigger a predetermined action as a function of this switching path point when the manipulator path is being traversed in accordance with a plan,
    characterised in that
    at least one action can be specified or is carried out, in particular in different ways, as a function of a reverse movement of the manipulator arrangement, which reverse movement of the manipulator arrangement is in the opposite direction to the oriented manipulator path and is initiated by an event, and/or as a function of a return movement of the manipulator arrangement, which return movement of the manipulator arrangement is in the same direction as the oriented manipulator path and which takes place following the reverse movement, in particular immediately after the reverse movement or after a pause, and which has an end point which is located on the manipulator path, and as a function of this switching path point.
  2. The method according to claim 1, wherein the action can be specified or is carried out, in particular in different ways, as a function of a projected distance (PA) of the manipulator arrangement to this switching path point during the reverse movement and/or during the return movement.
  3. The method according to any one of the preceding claims, further comprising a switching point routine (TRIGGER) which comprises a subroutine (TEMP, OPEN, CLOSE) for carrying out the action, wherein the switching point routine or the subroutine can be specified or is carried out, in particular in different ways, as a function of the reverse movement and/or as a function of the return movement.
  4. The method according to any one of the preceding claims, wherein the reverse movement has a starting point on the manipulator path, a portion leading away from the manipulator path and/or a portion running parallel to the manipulator path.
  5. The method according to any one of the preceding claims, wherein the return movement has a portion running parallel to the manipulator path, a portion leading back to the manipulator path and/or an end point on the manipulator path.
  6. A means for specifying and/or controlling a manipulator process for a manipulator arrangement (1, 2, 3) comprising at least one manipulator, in particular an industrial robot,
    wherein the manipulator process comprises a given oriented manipulator path of the manipulator arrangement,
    wherein
    the manipulator path has at least one switching path point (S1, S2, S3) in order to trigger a predetermined action as a function of this switching path point when the manipulator path is being traversed in accordance with a plan,
    characterised in that
    the means is set up to specify or to carry out, in particular in different ways, at least one action as a function of a reverse movement of the manipulator arrangement, which reverse movement of the manipulator arrangement is in the opposite direction to the oriented manipulator path and is initiated by an event, and/or as a function of a return movement of the manipulator arrangement, which return movement of the manipulator arrangement is in the same direction as the oriented manipulator path and which takes place following the reverse movement, in particular immediately after the reverse movement or after a pause, and which has an end point which is located on the manipulator path, and as a function of this switching path point.
  7. The means according to claim 6, wherein the action can be specified or is carried out, in particular in different ways, as a function of a projected distance (PA) of the manipulator arrangement to this switching path point during the reverse movement and/or during the return movement.
  8. The means according to any one of the preceding claims 6 to 7, wherein a switching point routine (TRIGGER) is provided which comprises a subroutine (TEMP, OPEN, CLOSE) for carrying out the action, wherein the switching point routine or the subroutine can be specified or is carried out, in particular in different ways, as a function of the reverse movement and/or as a function of the return movement.
  9. The means according to any one of the preceding claims 6 to 8, wherein the reverse movement has a starting point on the manipulator path, a portion leading away from the manipulator path and/or a portion running parallel to the manipulator path.
  10. The means according to any one of the preceding claims 6 to 9, wherein the return movement has a portion running parallel to the manipulator path, a portion leading back to the manipulator path and/or an end point on the manipulator path.
EP13001650.4A 2012-04-24 2013-03-28 Method and means for determining and/or controlling a manipulator process Active EP2656980B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102012008073A DE102012008073A1 (en) 2012-04-24 2012-04-24 Method and means for specifying and / or controlling a manipulator process

Publications (3)

Publication Number Publication Date
EP2656980A2 EP2656980A2 (en) 2013-10-30
EP2656980A3 EP2656980A3 (en) 2017-01-11
EP2656980B1 true EP2656980B1 (en) 2021-01-20

Family

ID=48087342

Family Applications (1)

Application Number Title Priority Date Filing Date
EP13001650.4A Active EP2656980B1 (en) 2012-04-24 2013-03-28 Method and means for determining and/or controlling a manipulator process

Country Status (5)

Country Link
US (1) US9446516B2 (en)
EP (1) EP2656980B1 (en)
KR (1) KR102050605B1 (en)
CN (1) CN103372863B (en)
DE (1) DE102012008073A1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015204599B3 (en) * 2015-03-13 2016-08-11 Kuka Roboter Gmbh Method for controlling a manipulator for executing a work process
DE102015222164A1 (en) 2015-11-11 2017-05-11 Kuka Roboter Gmbh Method and computer program for generating a graphical user interface of a manipulator program
DE102015222168B4 (en) 2015-11-11 2024-02-22 Kuka Roboter Gmbh METHOD AND COMPUTER PROGRAM FOR CORRECTING ERRORS IN A MANIPULATOR SYSTEM
DE102015222942A1 (en) * 2015-11-20 2017-05-24 Robert Bosch Gmbh Method for moving a manipulator and device with manipulator
CN106826834B (en) * 2016-12-26 2019-02-15 南京熊猫电子股份有限公司 A kind of robot welding automatic localization method
JP6825134B2 (en) * 2017-12-08 2021-02-03 株式会社Fuji Control device, work work device, work work system and control method
US11878418B2 (en) * 2021-03-30 2024-01-23 Honda Research Institute Europe Gmbh Controlling a robot based on constraint-consistent and sequence-optimized pose adaptation

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4055787A (en) * 1975-07-28 1977-10-25 Giddings & Lewis, Inc. Interruptable numerical contouring control system with return to path safeguards
JPS5731003A (en) * 1980-08-01 1982-02-19 Fanuc Ltd Numerical control system
US5014183A (en) * 1988-10-31 1991-05-07 Cincinnati Milacron, Inc. Method and means for path offsets memorization and recall in a manipulator
DE58908998D1 (en) * 1988-11-11 1995-03-23 Siemens Ag Process for operating an industrial robot.
DE69330144T2 (en) * 1992-12-28 2001-09-20 Mitsubishi Electric Corp Numerically controlled machine tool
SE9401012L (en) * 1994-03-25 1995-09-26 Asea Brown Boveri robot controller
JPH1011124A (en) * 1996-06-20 1998-01-16 Fanuc Ltd Robot control device provided with robot back executing function
US6360143B1 (en) * 2001-04-27 2002-03-19 Fanuc Robotics North America Error recovery methods for controlling robotic systems
DE10226853B3 (en) * 2002-06-15 2004-02-19 Kuka Roboter Gmbh Method for limiting the force of a robot part
US20050159840A1 (en) * 2004-01-16 2005-07-21 Wen-Jong Lin System for surface finishing a workpiece
JP4168002B2 (en) * 2004-04-07 2008-10-22 ファナック株式会社 Offline programming device
JP4027350B2 (en) * 2004-06-29 2007-12-26 ファナック株式会社 Robot standby position return program creation device
DE102008007438B4 (en) * 2008-02-01 2012-11-29 Abb Ag Method for restarting a robot
JP5436460B2 (en) * 2009-02-12 2014-03-05 三菱電機株式会社 Industrial robot system
WO2010108518A1 (en) * 2009-03-27 2010-09-30 Abb Ag Intrinsically safe small robot and method for controlling this robot

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None *

Also Published As

Publication number Publication date
KR20130119881A (en) 2013-11-01
CN103372863A (en) 2013-10-30
DE102012008073A1 (en) 2013-10-24
CN103372863B (en) 2016-08-03
US20130282177A1 (en) 2013-10-24
EP2656980A3 (en) 2017-01-11
EP2656980A2 (en) 2013-10-30
US9446516B2 (en) 2016-09-20
KR102050605B1 (en) 2019-11-29

Similar Documents

Publication Publication Date Title
EP2656980B1 (en) Method and means for determining and/or controlling a manipulator process
AT509927B1 (en) METHOD FOR PROGRAMMING OR PRESENTING MOVEMENTS OR RUNS OF AN INDUSTRIAL ROBOT
DE102009049172A1 (en) Method and device for controlling a manipulator
WO2010069430A1 (en) Method for allowing a manipulator to cover a predetermined trajectory, and control device for carrying out said method
DE102004019888A1 (en) Robot control method in which movement of robot within production hall is contained by definition of virtual safety limit which is used in conjunction with predicted positions of robot arm
DE102013113094A1 (en) SYNCHRONIZING THE PAINT EXTRACT OF MULTICARM ROBOTS
EP0530401B1 (en) Method to start position dependant operations during machining with a robot or machine tool
WO2018010842A1 (en) Redundancy resolution for a redundant manipulator
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
EP3408062A1 (en) Controlling a group of robots
WO2010066318A1 (en) Method and device for controlling a manipulator system
DE102019125326B3 (en) Predicted braking range of a robot manipulator
EP2208584B1 (en) Method for controlling industrial robots
DE102015008188B3 (en) Departure of a predetermined path with a robot
DE102018207919B3 (en) robot control
WO2019096636A1 (en) Method and system for defining or learning a robot command
DE102015222168B4 (en) METHOD AND COMPUTER PROGRAM FOR CORRECTING ERRORS IN A MANIPULATOR SYSTEM
WO2019158270A1 (en) Coordination system, handling device and method
EP3037220A1 (en) Override-based predictive speed capping
EP3268172B1 (en) Method for controlling a manipulator for carrying out a working process
DE102009054230A1 (en) Method and device for controlling manipulators
EP2409816B2 (en) Manipulator control
WO2021058201A1 (en) Stopping a production machine on a collision-free path
EP3689554A1 (en) Altered trajectory to protect a robot joint
WO2017216082A1 (en) Method for controlling a manipulator system

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

RIC1 Information provided on ipc code assigned before grant

Ipc: G05B 19/4067 20060101ALI20161207BHEP

Ipc: B25J 9/16 20060101AFI20161207BHEP

Ipc: G05B 19/4155 20060101ALI20161207BHEP

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20170710

RBV Designated contracting states (corrected)

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: KUKA DEUTSCHLAND GMBH

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20190417

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

INTG Intention to grant announced

Effective date: 20200806

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE PATENT HAS BEEN GRANTED

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

Free format text: NOT ENGLISH

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 502013015442

Country of ref document: DE

REG Reference to a national code

Ref country code: AT

Ref legal event code: REF

Ref document number: 1355976

Country of ref document: AT

Kind code of ref document: T

Effective date: 20210215

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

Free format text: LANGUAGE OF EP DOCUMENT: GERMAN

REG Reference to a national code

Ref country code: NL

Ref legal event code: MP

Effective date: 20210120

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG9D

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210421

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210520

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210420

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210420

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: RS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210520

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 502013015442

Country of ref document: DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: MC

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

REG Reference to a national code

Ref country code: BE

Ref legal event code: MM

Effective date: 20210331

26N No opposition filed

Effective date: 20211021

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210328

Ref country code: AL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210331

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210331

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210328

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

REG Reference to a national code

Ref country code: AT

Ref legal event code: MM01

Ref document number: 1355976

Country of ref document: AT

Kind code of ref document: T

Effective date: 20210328

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210520

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210331

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210328

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20230208

Year of fee payment: 11

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO

Effective date: 20130328

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20230202

Year of fee payment: 11

Ref country code: DE

Payment date: 20230131

Year of fee payment: 11

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210120

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230528