EP4326497A1 - Erstellen eines roboterprogramms und betreiben eines roboters - Google Patents

Erstellen eines roboterprogramms und betreiben eines roboters

Info

Publication number
EP4326497A1
EP4326497A1 EP22717550.2A EP22717550A EP4326497A1 EP 4326497 A1 EP4326497 A1 EP 4326497A1 EP 22717550 A EP22717550 A EP 22717550A EP 4326497 A1 EP4326497 A1 EP 4326497A1
Authority
EP
European Patent Office
Prior art keywords
blending
pose
block
robot
distance
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.)
Pending
Application number
EP22717550.2A
Other languages
English (en)
French (fr)
Inventor
Andreas Hagenauer
Andreas Glück
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 EP4326497A1 publication Critical patent/EP4326497A1/de
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1656Program controls characterised by programming, planning systems for manipulators
    • B25J9/1664Program controls characterised by programming, planning systems for manipulators characterised by motion, path, 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
    • G05B19/00Program-control systems
    • G05B19/02Program-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 program data in numerical form
    • G05B19/41Numerical 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 program data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34088Chamfer, corner shape calculation
    • 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/34Director, elements to supervisory
    • G05B2219/34175Overlap, between two blocks, continuous, smooth speed change, movement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36211Using different cutter sizes, largest as possible for minimizing machining time
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49164Corner, making corner

Definitions

  • the present invention relates to a method for creating a robot program for a robot and/or operating a robot and a system and computer program product for carrying out the method.
  • a robot program is created that has a number of consecutive movement sets, each of which has a predetermined target pose for a reference of the robot and specifies a section of the path.
  • the motion blocks PTP PO LIN P1 LIN P2 can be used to program a robot path in order to move from the TCP pose PO approached by unsynchronized axis adjustments to pose P1 on a straight line in the workspace and from there to pose P2 on a straight line in the workspace , as illustrated in FIG.
  • the target pose P1 of the motion block LIN P1 forms the start pose of its successor motion block LIN P2
  • a problem arises, for example, if on the straight lines [PO; P1] and [P1 ; P2] different orientations of the TCP are desired, for example, in order to align a tool in sections perpendicular to a machining surface or the like.
  • driving down the straight [PO; P1] can be switched accordingly.
  • the object of the present invention is to improve the operation of robots, preferably to remedy the above problem.
  • This object is achieved by a method having the features of claims 1 and 8, respectively.
  • Claims 9, 15 provide a system or computer program product Carrying out a procedure described here under protection.
  • the dependent claims relate to advantageous developments.
  • a method for creating a robot program for a robot includes the step: creating a robot program, on the basis of which or during the processing or execution of which a robot follows a robot path or which prompts the robot to do so or is set up for this purpose , wherein the robot program has a plurality of motion blocks that jointly specify the path in whole or in part, in particular each specifying a section of the path, one or more of these motion blocks of the robot program each having a specified target pose of a reference, in one version of the TCP or a tool , the robot has.
  • one or more of these motion sets is a blending set for which (each)
  • an approach from a path section specified by a preceding motion block can be parameterized, in one version parameterized, in one variant only the blending pose, only the approach to the path section specified by the successor motion block, only the approach from that specified by the preceding motion block specified path section, only the blending pose and the approach to the path section specified by the successor motion block, only the blending pose and the approach to the path section specified by the predecessor motion block, only the approach to the path section specified by the successor motion block and the approach to that the path section specified by the preceding motion block or both the blending pose and the approach to the path section specified by the successor motion block also the approach is parameterized by the path section specified by the previous motion block.
  • an advantageous robot path and/or a robot path can be advantageously programmed simply, reliably and/or quickly.
  • the blending pose is or is parameterized as a virtual start pose for the successor motion block for one or more of the blending blocks (in each case)
  • reorientation and/or repositioning can be advantageous in one embodiment, particularly simple(r) (more) reliably and/or quickly (more) and/or an advantageous reorientation and/or repositioning can be programmed.
  • a desired or advantageous touchdown can occur on this path section can be programmed advantageously, in particular easily (more), reliably (more) and/or quickly (more).
  • a desired or advantageous and/or permissible deviation from this path section can be programmed advantageously, in particular more simply, more reliably and/or more quickly.
  • one embodiment uses one or more blending blocks as motion blocks, each of which involves parameterizing a blending pose as a virtual start pose for a successor motion block, moving to a path section specified by this successor motion block, and moving to a by a predecessor movement set allow or are set up for this purpose or have a corresponding parameterization option or in which a corresponding parameterization option is provided, with in a further development in one or more of these blending or motion blocks (each) a blending pose as a virtual Start pose is or is parameterized for a successor motion block.
  • this successor motion block or path section of the robot program is cut off by the previous blending block or path section specified thereby, or the corresponding part of the successor motion block or path section specified thereby the parameterized approach is replaced or, in the case of parameterized approach, the preceding motion block or path section of the robot program is cut off from the path section specified by the preceding motion block by the following blending block or path section specified thereby, or the corresponding part of the preceding motion block or specified by it Path section replaced by the parameterized approach.
  • a distance from its blending pose within which a position of the reference may deviate from a path section specified by the successor motion block (of the respective blending block) can be parameterized for one or more of the blending blocks, or a corresponding parameterization option is provided , wherein in a further development such a distance is or is parameterized in one or more of these blending or movement blocks (in each case).
  • a distance from its blending pose, within which an orientation of the reference may deviate from a path section specified by the successor motion block can be parameterized or a corresponding parameterization option is provided, whereby in a further development in or such a distance is or is parameterized in one or more of these blending or motion blocks (in each case).
  • a distance from its blending pose, within which a position of the reference may deviate from a path section specified by the preceding motion block can be parameterized or a corresponding parameterization option is provided, whereby in a further development in which or in one or more of these blending or movement blocks (in each case) such a distance is or is parameterized.
  • a distance from its blending pose, within which an orientation of the reference may deviate from a path section specified by the preceding motion block can be parameterized or a corresponding parameterization option is provided, whereby in a further development in which or in one or more of these blending or movement blocks (in each case) such a distance is or is parameterized.
  • a distance from a pose, preferably the start or end pose, of the successor motion block of this blending block, within which a position of the reference may deviate from a path section specified by the successor motion block parameterizable or a corresponding parameterization option is provided, with such a distance being or being parameterized in one or more of these blending or movement blocks (in each case).
  • a distance from a pose, preferably the start or end pose, of the preceding motion block of this blending block, within which a position of the reference may deviate from a path section specified by the preceding motion block parameterizable or a corresponding parameterization option is provided, with such a distance being or being parameterized in one or more of these blending or movement blocks (in each case).
  • a distance from a pose, preferably the start or end pose, of the preceding motion block of this blending block, within which an orientation of the reference may deviate from a path section specified by the preceding motion block parameterizable or a corresponding parameterization option is provided, with such a distance being or being parameterized in one or more of these blending or movement blocks (in each case).
  • a distance of the reference relative to the blending pose can be parameterized when the blending block is traversed, or a corresponding parameterization option is provided, with one or more of these blending or Motion sets (each) such a distance is parameterized and/or the distance depends on a Cartesian distance of the reference of the robot from the respective blending pose, in a further development is equal to the distance.
  • a particularly advantageous robot path and/or a robot path can be programmed particularly advantageously, particularly simply, reliably and/or quickly, in particular a reorientation and/or repositioning and/or a desired or advantageous and/or permissible deviation from the corresponding path section.
  • an obligatory passage through the blending pose can be specified; in a further development, an obligatory passage through the blending pose is or is specified for one or more of the blending sets (in particular by appropriate parameterization).
  • a non-mandatory passing through the blending pose can be specified, in a further development it is or is for one or more of the blending sets (in particular by appropriate parameterization). a non-obligatory passing through the blending pose is specified.
  • an impermissible passing through the blending pose can be specified; permissible passage through the blending pose is specified.
  • an impermissible passage through a blending pose can be or is specified or is or is specified for an impermissible or impermissible passing through by specifying or parameterizing a (non-zero) minimum distance relative to the blending pose a minimum distance dimension (different from zero) relative to the blending pose can be specified or specified in a blending pose.
  • a maximum distance measure (other than zero) relative to the blending pose can be or will be specified for a non-mandatory or non-mandatory passing through of a blending pose.
  • minimum and maximum distances specify a lower (minimum distance) and upper (maximum distance) limit value for the distance that the reference must maintain or have as a minimum (minimum distance) or maximum relative to the blending pose when the blending set is traversed allowed (maximum distance).
  • a placement direction relative to the blending pose can be specified or specified for a non-permissible or non-mandatory or in the case of a non-permissible or non-mandatory passing through a blending pose, for example whether the reference of the robot, based, for example, on path section(s) specified by the preceding and/or following motion block, (if applicable) is to pass the blending pose on the outside or inside, or the like.
  • a placement direction relative to the blending pose can specify in particular whether the reference should deviate from the blending pose towards or away from the path sections specified by the preceding and/or following motion block.
  • one or more boundary surfaces can be parameterized for the or one or more of the blending blocks, in a further development at least one boundary surface is or will be parameterized for the or one or more of the blending blocks (in each case), in one embodiment by specifying one or several points of the interface and/or a surface normal of the interface.
  • the reference of the robot penetrates when traversing the If the blending block or approach to the path section specified by its successor motion block or approach from the path section specified by its predecessor motion block does not touch the boundary surface, it can touch it in one embodiment, or is or will be the movement (of the reference) of the robot when moving away of the blending block or approaching the path section specified by its successor motion block or approaching the path section specified by its predecessor motion block is planned or controlled accordingly.
  • different boundary surfaces can be parameterized for approaching the path section specified by the successor motion block and for approaching the path section specified by the predecessor motion block; in a further development, for approaching the path section specified by the successor motion block and different boundary surfaces are parameterized for the approach from the path section specified by the previous motion block.
  • a desired or advantageous approach or further movement, in particular departure can be programmed particularly advantageously, in particular simply, reliably and/or quickly.
  • At least one strategy for an unfulfillable restriction of the or one or more of the blending blocks can be parameterized, in a development at least one strategy for an unfulfillable restriction is or will be parameterized for the or one or more of the blending blocks (each).
  • Such a strategy can in particular include the output of a message, in particular a warning or error message, stopping the robot or the like.
  • the robot path can be particularly advantageous and/or can be programmed particularly advantageously, in particular simply, reliably and/or quickly.
  • a speed for the traversing of the or one or more of the blending blocks can be parameterized, in a further development a speed for the traversing of the or one or more of the blending blocks (in each case) is or is parameterized.
  • a robot path can be particularly advantageous and/or can be programmed particularly advantageously, in particular easily, reliably and/or quickly, in particular a reorientation and/or repositioning and/or a desired or advantageous and/or permissible deviation from that corresponding track section.
  • the successor motion block of at least one blending block can itself be or be used as a blending block; in a further development, the successor motion block of at least one blending block is itself a blending block (used). Additionally or alternatively, in one embodiment (as) the preceding motion block of at least one blending block can itself be or be used as a blending block, in a further development the preceding motion block of at least one blending block is or is itself a blending block (used). In other words, in one embodiment, two or more blending sets can directly follow one another or be lined up next to one another.
  • a robot path can be particularly advantageous and/or can be programmed particularly advantageously, in particular easily, reliably and/or quickly, in particular particularly flexibly.
  • a method for operating a robot comprises the step: the robot follows a robot path by executing a robot program that is (was) created according to a method described here, in a further development in addition to the creation of the robot program in here described way.
  • the method for operating a robot comprises the steps: creating a robot program in the manner described here and traversing a robot path through the robot by executing this robot program.
  • the traversing of a blending block or a path section specified by it includes the optionally parameterized approach to the path section specified by its successor motion block and/or approach from the path section specified by its predecessor motion block, can in particular consist of this.
  • a further path section of the blending block can be present between the approach to the path section specified by the preceding motion block and the approach to the path section specified by the subsequent motion block.
  • the path section specified by the blending block and the path section specified by the preceding motion block and/or the path section specified by the blending block and the path section specified by the succeeding motion block merge continuously, preferably smoothly, into one another.
  • a system for creating a robot program and/or operating a robot in particular hardware and/or software, in particular programming, is set up to carry out a method described here and/or has:
  • Means for creating a robot program for traversing a robot path which has a plurality of motion sets for specifying the path, at least one of which has a specified target pose for a reference of the robot, wherein at least one of the motion sets is a blending block for which a blending pose is used as a virtual starting pose for a successor movement block, approaching a path section predetermined by this successor movement block, and approaching one by one
  • path section specified in the preceding motion block can be parameterized; and/or means for a robot to follow a robot path by executing a robot program that is created using a method described here.
  • system or its means(s) has:
  • system or its means(s) has:
  • Means for parameterizing a speed for running the rounding block
  • Means for stringing together at least two sets of smoothing are provided.
  • a system and/or means within the meaning of the present invention can be designed in terms of hardware and/or software, in particular a processing unit (CPU), in particular a microprocessor unit, which is preferably data- or signal-connected to a memory and/or bus system. , Graphics card (GPU) or the like, and/or have one or more programs or program modules.
  • the processing unit can be designed to process commands that are implemented as a program stored in a memory system, to detect input signals from a data bus and/or to output output signals to a data bus.
  • a storage system can have one or more, in particular different, storage media, in particular optical, magnetic, solid-state and/or other non-volatile media.
  • the program can be such that it embodies or is able to execute the methods described here, so that the processing unit can execute the steps of such methods and thus in particular provide a programming option or environment for creating a robot program and/or the robot can operate.
  • a system and/or means within the meaning of the present invention can have, in particular be, a programming environment, programming language and/or program library.
  • a computer program product can have, in particular be a, in particular non-volatile, storage medium for storing a program or with a program stored thereon, with the execution of this program causing a system or a controller, in particular a computer, to carry out the method described or one or more of its steps.
  • one or more, in particular all, steps of the method are carried out fully or partially automatically, in particular by the system or its means.
  • the system includes the robot.
  • operating a robot within the meaning of the present invention includes creating a robot program and/or executing a or the robot program by or with a robot, can in particular consist of creating a robot program, executing a or the robot program by or with a robot or creating a robot program and executing a or the robot program by or with a robot.
  • a computer program product comprises program code, stored on a computer-readable medium, for performing a method according to any one of the claims.
  • Fig. 1 a conventionally programmed robot path of a
  • Figures 2-6 show robot paths of a robot's TCP programmed according to an embodiment of the present invention
  • Figure 7 shows a system according to an embodiment of the present invention.
  • Figure 8 a method according to an embodiment of the present invention.
  • FIG. 1 illustrates a robot trajectory of a TCP 11 of a robot 10 (see FIG. 7) which is programmed in a conventional manner, for example by the motion blocks PTP PO LIN P1 LIN P2
  • Figure 2 illustrates a robot trajectory programmed according to an embodiment of the present invention, for example by the motion sets
  • BLEND P11 with BLENDPARA is a blending block with the blending pose P11 and the parameters BLENDPARA.
  • the blending pose P11 only includes the orientation of the target pose P2 of the successor motion block LIN P2, the position is therefore not changed or corresponds to the position of the target pose P1 of the preceding motion block LIN P1.
  • An orientation that deviates from the target pose of the preceding motion block LIN P1 can thus be specified as a virtual start pose for the successor motion block LIN P2 with P11, and a desired orientation can thereby be implemented on a path section specified by the successor motion block.
  • a radius R1 around the blending pose P11 is or is parameterized with the parameters BLENDPARA, for example, from which a position of the TCP may deviate from the path section specified by the preceding motion block LIN P1 and the path section specified by the following motion block LIN P2.
  • the BLENDPARA parameters can be used, for example, to parameterize a radius R2 around the blending pose P11, from which an orientation of the TCP indicated by arrows in FIG Successor movement block LIN P2 may deviate from the specified path section.
  • the Both radii R1, R2 can be identical (Fig. 2) or different. The latter is illustrated in FIG. 3, which otherwise corresponds to FIG.
  • different radii can also be parameterized for the deviation from the position of the preceding motion block LIN P1 and for the deviation from the position of the subsequent motion block LIN P2. Additionally or alternatively, different radii can be parameterized for the deviation from the orientation of the preceding motion block LIN P1 and for the deviation from the orientation of the subsequent motion block LIN P2.
  • the parameters BLENDPARA can be used to specify whether the blending pose P11 must be passed through when executing the blending block BLEND P11 with BLENDPARA or not.
  • 2, 3 show a non-obligatory passage
  • FIG. 4 which otherwise corresponds to FIG. 2
  • FIG. 5 illustrates a predetermined passage through the blending pose P11
  • FIGS. 5 which otherwise corresponds to FIGS.
  • a predetermined minimum distance D which depends on a distance from the blending pose P11, in particular can be the same as the (minimum) distance, and a placement direction relative to the blending pose P11, in the exemplary embodiment driving around the blending pose P11 from the outside, based on the orientation or predecessor and successor -Movement set LIN P1 , LIN P2.
  • Figure 6 illustrates a robot trajectory programmed according to another embodiment of the present invention, for example by the motion sets
  • BLEND with BLENDPARA2 With the parameters BLENDPARA1 of the first blending block "BLEND SP with BLENDPARA1" with the parameterized blending pose SP is or is specified, for example, that within a specified distance from SP, which is indicated in Fig. 6 by RSTART, in terms of position and / or orientation of may deviate from the spline path specified by the successor motion block. In this way, it is ensured that the spline path is followed from point PB, in order, for example, to apply a bead of adhesive from here with a correspondingly oriented tool or the like. Additionally or alternatively, the parameters BLENDPARA1 can be used, for example, to parameterize a plane that contains SP with the surface (outward) normal, which is indicated by NS in FIG.
  • the second blending block "BLEND with BLENDPARA2" means that from the point PE at a distance REND from ZP, you can deviate again from the spline path in terms of position and/or orientation, with the BLENDPARA2 parameters in turn creating a plane containing ZP. can be parameterized with the surface (outward) normal, which is indicated by NE in FIG.
  • the second blending block BLEND with BLENDPARA2 illustrates that a blending pose does not have to be parameterized for a blending block, especially if, as here, no successor motion block is provided for which such a blending pose determines or would determine a virtual start pose .
  • the two blending blocks illustrate that approaching a path section specified by a preceding motion block (cf. first blending block) or approaching a path section specified by a successor motion block (cf. second blending block) are not necessarily available or parameterized got to.
  • a computer for programming and/or controlling the robot 10 is indicated at 20 in FIG. 7, which is set up or used to carry out a method described here.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

Ein Verfahren zum Erstellen eines Roboterprogramms für einen Roboter (10) umfasst den Schritt: Erstellen eines Roboterprogramms zum Abfahren einer Roboterbahn, das mehrere Bewegungssätze zum Vorgeben der Bahn aufweist, von denen wenigstes einer eine vorgegebene Zielpose (P0, P1, P2; ZP) einer Referenz (11) des Roboters aufweist, wobei wenigstens einer der Bewegungssätze ein Überschleifsatz ist, für den eine Überschleifpose (P11; SP) als eine virtuelle Startpose für einen Nachfolger-Bewegungssatz, ein Anfahren eines durch diesen Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts sowie ein Anfahren von einem durch einen Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt parametrierbar ist. In einer Ausführung 10 wird eine Roboterbahn durch einen Roboter durch Ausführen (S20) des erstellten Roboterprogramms abgefahren.

Description

Beschreibung
Erstellen eines Roboterprogramms und Betreiben eines Roboters
Die vorliegende Erfindung betrifft ein Verfahren zum Erstellen eines Roboterprogramms für einen Roboter und/oder Betreiben eines Roboters sowie ein System und Computerprogrammprodukt zur Durchführung des Verfahrens.
Herkömmlicherweise wird zum Abfahren einer Roboterbahn ein Roboterprogramm erstellt, das mehrere aufeinanderfolgende Bewegungssätze aufweist, die jeweils eine vorgegebene Zielpose einer Referenz des Roboters aufweisen und einen Abschnitt der Bahn vorgeben. Beispielsweise kann durch die Bewegungssätze PTP PO LIN P1 LIN P2 eine Roboterbahn programmiert werden, um von der durch unsynchronisierte Achsverstellungen angefahren TCP-Pose PO auf einer Geraden im Arbeitsraum in die Pose P1 und von dieser auf einer Geraden im Arbeitsraum in die Pose P2 zu fahren, wie dies in Fig. 1 illustriert ist.
Da die Zielpose P1 des Bewegungssatzes LIN P1 die Startpose von dessen Nachfolger-Bewegungssatz LIN P2 bildet, ergibt sich beispielsweise ein Problem, wenn auf den Geraden [PO; P1] und [P1 ; P2] unterschiedliche Orientierungen des TCPs gewünscht sind, beispielsweise, um ein Werkzeug abschnittsweise senkrecht zu einer Bearbeitungsfläche auszurichten oder dergleichen. Hier müsste die Orientierung nach Abfahren der Geraden [PO; P1] entsprechend umgeschaltet werden.
Aufgabe der vorliegenden Erfindung ist es, den Betrieb von Robotern zu verbessern, vorzugsweise obigem Problem abzuhelfen. Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 bzw. 8 gelöst. Ansprüche 9, 15 stellen ein System bzw. Computerprogrammprodukt zur Durchführung eines hier beschriebenen Verfahrens unter Schutz. Die Unteransprüche betreffen vorteilhafte Weiterbildungen.
Nach einer Ausführung der vorliegenden Erfindung umfasst ein Verfahren zum Erstellen eines Roboterprogramms für einen Roboter den Schritt: Erstellen eines Roboterprogramms, aufgrund dessen bzw. bei dessen Abarbeitung bzw. Ausführung ein Roboter eine Roboterbahn abfährt bzw. das den Roboter hierzu veranlasst bzw. hierzu eingerichtet ist, wobei das Roboterprogramm mehrere Bewegungssätze aufweist, die gemeinsam die Bahn ganz oder teilweise vorgeben, insbesondere jeweils einen Teilabschnitt der Bahn vorgeben, wobei von diesen Bewegungssätzen des Roboterprogramms einer oder mehrere jeweils eine vorgegebene Zielpose einer Referenz, in einer Ausführung des TCPs bzw. eines Werkzeugs, des Roboters aufweist.
Nach einer Ausführung der vorliegenden Erfindung ist einer dieser Bewegungssätze oder sind mehrere dieser Bewegungssätze (jeweils) ein Überschleifsatz, für den (jeweils)
- eine Überschleifpose als eine virtuelle Startpose für einen Nachfolger-Bewegungssatz,
- ein Anfahren eines durch diesen Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts, sowie
- ein Anfahren von einem durch einen Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt parametrierbar ist, in einer Ausführung parametriert wird, in einer Ausführung nur die Überschleifpose, nur das Anfahren des durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts, nur das Anfahren von dem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitts, nur die Überschleifpose und das Anfahren des durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts, nur die Überschleifpose und das Anfahren von dem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitts, nur das Anfahren des durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts und das Anfahren von dem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitts oder sowohl die Überschleifpose als auch das Anfahren des durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnittsais auch das Anfahren von dem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitts parametriert ist.
Dadurch kann in einer Ausführung eine vorteilhafte Roboterbahn und/oder einfach, zuverlässig und/oder rasch eine Roboterbahn vorteilhaft programmiert werden. Wenn in einer Ausführung für den bzw. einen oder mehrere der Überschleifsätze (jeweils) die Überschleifpose als virtuelle Startpose für den Nachfolger-Bewegungssatz parametriert wird bzw. ist, kann in einer Ausführung eine Umorientierung und/oder Umpositionierung vorteilhaft, insbesondere einfach(er), zuverlässig(er) und/oder rasch(er) und/oder eine vorteilhafte Umorientierung und/oder Umpositionierung programmiert werden. Wenn (zusätzlich oder alternativ) in einer Ausführung für den bzw. einen oder mehrere der Überschleifsätze (jeweils) ein Anfahren eines durch den (jeweiligen) Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts parametriert wird bzw. ist, kann in einer Ausführung ein gewünschtes bzw. vorteilhaftes Aufsetzen auf diesen Bahnabschnitt vorteilhaft, insbesondere einfach(er), zuverlässig(er) und/oder rasch(er) programmiert werden. Wenn (zusätzlich oder alternativ) in einer Ausführung für den bzw. einen oder mehrere der Überschleifsätze (jeweils) ein Anfahren von einem durch einen Vorgänger-Bewegungssatz des jeweiligen Überschleifsatzes vorgegebenen Bahnabschnitt parametriert wird bzw. ist, kann in einer Ausführung ein gewünschtes bzw. vorteilhaftes und/oder zulässiges Abweichen von diesem Bahnabschnitt vorteilhaft, insbesondere einfach(er), zuverlässig(er) und/oder rasch(er) programmiert werden.
Entsprechend werden beim Erstellen des Roboterprogramms in einer Ausführung ein oder mehrere Überschleifsätze als Bewegungssätze verwendet, die jeweils ein Parametrieren einer Überschleifpose als virtuelle Startpose für einen Nachfolger-Bewegungssatz, eines Anfahrens eines durch diesen Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts sowie eines Anfahrens von einem durch einen Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt erlauben bzw. hierzu eingerichtet sind bzw. eine entsprechende Parametrierungsmöglichkeit aufweisen bzw. in denen eine entsprechende Parametrierungsmöglichkeit vorgesehen ist, wobei in einer Weiterbildung in dem bzw. einem oder mehreren dieser Überschleif- bzw. Bewegungssätze (jeweils) eine Überschleifpose als virtuelle Startpose für einen Nachfolger-Bewegungssatz parametriert wird bzw. ist. Zusätzlich oder alternativ wird bzw. ist in einer Weiterbildung in dem bzw. einem oder mehreren der Überschleif- bzw. Bewegungssätze (jeweils) ein Anfahren eines durch den Nachfolger-Bewegungssatz (des jeweiligen Überschleifsatzes) vorgegebenen Bahnabschnitts parametriert. Zusätzlich oder alternativ wird bzw. ist in einer Weiterbildung in dem bzw. einem oder mehreren der Überschleif- bzw. Bewegungssätze (jeweils) ein Anfahren von einem durch einen Vorgänger-Bewegungssatz (des jeweiligen Überschleifsatzes) vorgegebenen Bahnabschnitt parametriert.
In einer Ausführung wird sozusagen bei parametriertem Anfahren des durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts dieser Nachfolger-Bewegungssatz bzw. Bahnabschnitt des Roboterprogramms durch den vorangegangenen Überschleifsatz bzw. dadurch vorgegebene Bahnabschnitt abgeschnitten bzw. der entsprechende Teil des Nachfolger-Bewegungssatzes bzw. dadurch vorgegebenen Bahnabschnitts durch das parametrierte Anfahren ersetzt bzw. bei parametriertem Anfahren von dem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt dieser Vorgänger-Bewegungssatz bzw. Bahnabschnitt des Roboterprogramms durch den nachfolgenden Überschleifsatz bzw. dadurch vorgegebene Bahnabschnitt abgeschnitten bzw. der entsprechende Teil des Vorgänger-Bewegungssatzes bzw. dadurch vorgegebenen Bahnabschnitts durch das parametrierte Anfahren ersetzt.
In einer Ausführung ist für den bzw. einen oder mehrere der Überschleifsätze jeweils eine Entfernung von dessen Überschleifpose, innerhalb der eine Position der Referenz von einem durch den Nachfolger-Bewegungssatz (des jeweiligen Überschleifsatzes) vorgegebenen Bahnabschnitt abweichen darf, parametrierbar bzw. eine entsprechende Parametrierungsmöglichkeit vorgesehen, wobei in einer Weiterbildung in dem bzw. einem oder mehreren dieser Überschleif- bzw. Bewegungssätze (jeweils) eine solche Entfernung parametriert wird bzw. ist.
Zusätzlich oder alternativ ist für den bzw. einen oder mehrere der Überschleifsätze jeweils eine Entfernung von dessen Überschleifpose, innerhalb der eine Orientierung der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, parametrierbar bzw. eine entsprechende Parametrierungsmöglichkeit vorgesehen, wobei in einer Weiterbildung in dem bzw. einem oder mehreren dieser Überschleif- bzw. Bewegungssätze (jeweils) eine solche Entfernung parametriert wird bzw. ist.
Zusätzlich oder alternativ ist für den bzw. einen oder mehrere der Überschleifsätze jeweils eine Entfernung von dessen Überschleifpose, innerhalb der eine Position der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, parametrierbar bzw. eine entsprechende Parametrierungsmöglichkeit vorgesehen, wobei in einer Weiterbildung in dem bzw. einem oder mehreren dieser Überschleif- bzw. Bewegungssätze (jeweils) eine solche Entfernung parametriert wird bzw. ist.
Zusätzlich oder alternativ ist für den bzw. einen oder mehrere der Überschleifsätze jeweils eine Entfernung von dessen Überschleifpose, innerhalb der eine Orientierung der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, parametrierbar bzw. eine entsprechende Parametrierungsmöglichkeit vorgesehen, wobei in einer Weiterbildung in dem bzw. einem oder mehreren dieser Überschleif- bzw. Bewegungssätze (jeweils) eine solche Entfernung parametriert wird bzw. ist.
Zusätzlich oder alternativ ist für den bzw. einen oder mehrere der Überschleifsätze jeweils eine Entfernung von einer Pose, vorzugsweise Anfangs- oder Endpose, des Nachfolger-Bewegungssatzes dieses Überschleifsatzes, innerhalb der eine Position der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, parametrierbar bzw. eine entsprechende Parametrierungsmöglichkeit vorgesehen, wobei in einer Weiterbildung in dem bzw. einem oder mehreren dieser Überschleif- bzw. Bewegungssätze (jeweils) eine solche Entfernung parametriert wird bzw. ist.
Zusätzlich oder alternativ ist für den bzw. einen oder mehrere der Überschleifsätze jeweils eine Entfernung von einer Pose, vorzugsweise Anfangs- oder Endpose, des Nachfolger-Bewegungssatzes dieses Überschleifsatzes, innerhalb der eine Orientierung der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, parametrierbar bzw. eine entsprechende Parametrierungsmöglichkeit vorgesehen, wobei in einer Weiterbildung in dem bzw. einem oder mehreren dieser Überschleif- bzw. Bewegungssätze (jeweils) eine solche Entfernung parametriert wird bzw. ist.
Zusätzlich oder alternativ ist für den bzw. einen oder mehrere der Überschleifsätze jeweils eine Entfernung von einer Pose, vorzugsweise Anfangs- oder Endpose, des Vorgänger-Bewegungssatzes dieses Überschleifsatzes, innerhalb der eine Position der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, parametrierbar bzw. eine entsprechende Parametrierungsmöglichkeit vorgesehen, wobei in einer Weiterbildung in dem bzw. einem oder mehreren dieser Überschleif- bzw. Bewegungssätze (jeweils) eine solche Entfernung parametriert wird bzw. ist.
Zusätzlich oder alternativ ist für den bzw. einen oder mehrere der Überschleifsätze jeweils eine Entfernung von einer Pose, vorzugsweise Anfangs- oder Endpose, des Vorgänger-Bewegungssatzes dieses Überschleifsatzes, innerhalb der eine Orientierung der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, parametrierbar bzw. eine entsprechende Parametrierungsmöglichkeit vorgesehen, wobei in einer Weiterbildung in dem bzw. einem oder mehreren dieser Überschleif- bzw. Bewegungssätze (jeweils) eine solche Entfernung parametriert wird bzw. ist.
Zusätzlich oder alternativ ist für den bzw. einen oder mehrere der Überschleifsätze jeweils ein Abstandsmaß der Referenz relativ zu der Überschleifpose beim Abfahren des Überschleifsatzes parametrierbar bzw. eine entsprechende Parametrierungsmöglichkeit vorgesehen, wobei in einer Weiterbildung in dem bzw. einem oder mehreren dieser Überschleif- bzw. Bewegungssätze (jeweils) ein solches Abstandsmaß parametriert wird bzw. ist und/oder das Abstandsmaß von einem, in einer Ausführung kartesischen, Abstand der Referenz des Roboters von der jeweiligen Überschleifpose abhängt, in einer Weiterbildung gleich dem Abstand ist.
Dadurch kann in einer Ausführung jeweils, insbesondere in Kombination von zwei oder mehr dieser Merkmale, eine besonders vorteilhafte Roboterbahn und/oder eine Roboterbahn besonders vorteilhaft, insbesondere einfach, zuverlässig und/oder rasch, programmiert werden, insbesondere eine Umorientierung und/oder Umpositionierung und/oder ein gewünschtes bzw. vorteilhaftes und/oder zulässiges Abweichen von dem entsprechenden Bahnabschnitt.
In einer Ausführung ist, in einer Weiterbildung durch Parametrieren des Abstandsmaßes, ein obligatorisches Durchfahren der Überschleifpose vorgebbar, in einer Weiterbildung wird bzw. ist für den bzw. einen oder mehrere der Überschleifsätze (insbesondere durch entsprechende Parametrierung) jeweils ein obligatorisches Durchfahren der Überschleifpose vorgegeben.
Dies kann beispielsweise bei Lackierbahnen oder dergleichen besonders vorteilhaft sein, um sicherzustellen, dass gewünschte Werkstückbereiche lackiert werden.
Zusätzlich oder alternativ ist in einer Ausführung, in einer Weiterbildung durch entsprechendes Parametrieren, insbesondere des Abstandsmaßes, ein nicht obligatorisches Durchfahren der Überschleifpose vorgebbar, in einer Weiterbildung wird bzw. ist für den bzw. einen oder mehrere der Überschleifsätze (insbesondere durch entsprechende Parametrierung) jeweils ein nicht obligatorisches Durchfahren der Überschleifpose vorgegeben.
Dies kann beispielsweise bei Kleberaupen oder dergleichen besonders vorteilhaft sein, bei denen eine ausreichende Nähe zu bestimmten Werkstückbereichen ausreichen kann, ein Anfahren dieser Werkstückbereiche aber nicht ausgeschlossen, sondern gegebenenfalls sogar besonders vorteilhaft ist. Entsprechend wird unter einem Vorgeben eines nicht obligatorischen Durchfahrens einer Überschleifpose in einer Ausführung verstanden, dass das Durchfahren (zwar) zugelassen bzw. möglich, aber nicht (zwingend) erforderlich bzw. vorgeschrieben ist.
Zusätzlich oder alternativ ist in einer Ausführung, in einer Weiterbildung durch Parametrieren des Abstandsmaßes, ein nicht zulässiges Durchfahren der Überschleifpose, vorgebbar, in einer Weiterbildung wird bzw. ist für den bzw. einen oder mehrere der Überschleifsätze (insbesondere durch entsprechende Parametrierung) jeweils ein nicht zulässiges Durchfahren der Überschleifpose vorgegeben.
Dies kann beispielsweise zur Vermeidung von Kollisionen besonders vorteilhaft sein. In einer Ausführung ist bzw. wird ein nicht zulässiges Durchfahren einer Überschleifpose durch Vorgabe bzw. Parametrierung eines (von Null verschiedenen) Mindestabstandsmaßes relativ zu der Überschleifpose vorgebbar bzw. vorgegeben bzw. ist bzw. wird für ein nicht zulässiges bzw. bei einem nicht zulässigen Durchfahren einer Überschleifpose ein (von Null verschiedenes) Mindestabstandsmaß relativ zu der Überschleifpose vorgebbar bzw. vorgegeben.
Zusätzlich oder alternativ ist bzw. wird in einer Ausführung für ein nicht obligatorisches bzw. bei einem nicht obligatorischen Durchfahren einer Überschleifpose ein (von Null verschiedenes) Höchstabstandsmaßes relativ zu der Überschleifpose vorgebbar bzw. vorgegeben.
Mindest- bzw. Höchstabstandsmaß geben in einer Ausführung einen unteren (Mindestabstandsmaß) bzw. oberen (Höchstabstandsmaß) Grenzwert für das Abstandsmaß an, das die Referenz relativ zu der Überschleifpose beim Abfahren des Überschleifsatzes minimal einhalten bzw. aufweisen muss (Mindestabstandsmaß) bzw. maximal aufweisen darf (Höchstabstandsmaß).
Zusätzlich oder alternativ ist bzw. wird in einer Ausführung für ein nicht zulässiges oder nicht obligatorisches bzw. bei einem nicht zulässigen oder nicht obligatorischen Durchfahren einer Überschleifpose eine Ablagerichtung gegenüber der Überschleifpose vorgebbar bzw. vorgegeben, beispielsweise, ob die Referenz des Roboters, bezogen beispielsweise auf durch Vorgänger- und/oder Nachfolger- Bewegungssatz vorgegebene Bahnabschnitt(e), (gegebenenfalls) außen oder innen an der Überschleifpose vorbeifahren soll oder dergleichen. Dabei kann eine Ablagerichtung gegenüber der Überschleifpose insbesondere vorgeben, ob die Referenz von der Überschleifpose zu durch Vorgänger- und/oder Nachfolger- Bewegungssatz vorgegebenen Bahnabschnitten hin oder hiervon weg abweichen soll.
In einer Ausführung sind eine oder mehrere Grenzflächen für den bzw. einen oder mehrere der Überschleifsätze parametrierbar, in einer Weiterbildung ist bzw. wird für den bzw. einen oder mehrere der Überschleifsätze (jeweils) wenigstens eine Grenzfläche parametriert, in einer Ausführung durch Vorgabe eines oder mehrerer Punkte der Grenzfläche und/oder einer Oberflächennormale der Grenzfläche. In einer Ausführung durchdringt die Referenz des Roboters beim Abfahren des Überschleifsatzes bzw. Anfahren des durch dessen Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts bzw. Anfahren von dem durch dessen Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt die Grenzfläche nicht, kann sie in einer Ausführung berühren, bzw. ist bzw. wird Bewegung (der Referenz) des Roboters beim Abfahren des Überschleifsatzes bzw. Anfahren des durch dessen Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts bzw. Anfahren von dem durch dessen Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt entsprechend geplant bzw. gesteuert. In einer Ausführung sind für das Anfahren des durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts und das Anfahren von dem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt unterschiedliche Grenzflächen parametrierbar, in einer Weiterbildung sind bzw. werden für das Anfahren des durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts und das Anfahren von dem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt unterschiedliche Grenzflächen parametriert.
Hierdurch kann in einer Ausführung ein gewünschtes bzw. vorteilhaftes An- bzw. Weiter-, insbesondere Wegfahren besonders vorteilhaft, insbesondere einfach, zuverlässig und/oder rasch, programmiert werden.
In einer Ausführung ist wenigstens eine Strategie für eine unerfüllbare Restriktion des bzw. eines oder mehrerer der Überschleifsätze parametrierbar, in einer Weiterbildung ist bzw. wird für den bzw. einen oder mehrere der Überschleifsätze (jeweils) wenigstens eine Strategie für eine unerfüllbare Restriktion parametriert. Eine solche Strategie kann insbesondere die Ausgabe einer Meldung, insbesondere Warn- oder Fehlermeldung, das Stoppen des Roboters oder dergleichen umfassen.
Hierdurch kann in einer Ausführung die Roboterbahn besonders vorteilhaft sein und/oder besonders vorteilhaft, insbesondere einfach, zuverlässig und/oder rasch, programmiert werden.
In einer Ausführung ist eine Geschwindigkeit für das Abfahren des bzw. eines oder mehrerer der Überschleifsätze parametrierbar, in einer Weiterbildung ist bzw. wird für den bzw. einen oder mehrere der Überschleifsätze (jeweils) eine Geschwindigkeit für dessen Abfahren parametriert. Dadurch kann in einer Ausführung eine Roboterbahn besonders vorteilhaft sein und/oder besonders vorteilhaft, insbesondere einfach, zuverlässig und/oder rasch, programmiert werden, insbesondere eine Umorientierung und/oder Umpositionierung und/oder ein gewünschtes bzw. vorteilhaftes und/oder zulässiges Abweichen von dem entsprechenden Bahnabschnitt.
In einer Ausführung kann (als) der Nachfolger-Bewegungssatz wenigstens eines Überschleifsatzes seinerseits ein Überschleifsatz sein bzw. verwendet werden, in einer Weiterbildung ist bzw. wird (als) der Nachfolger-Bewegungssatz wenigstens eines Überschleifsatzes seinerseits ein Überschleifsatz (verwendet). Zusätzlich oder alternativ kann in einer Ausführung (als) der Vorgänger-Bewegungssatz wenigstens eines Überschleifsatzes seinerseits ein Überschleifsatz sein bzw. verwendet werden, in einer Weiterbildung ist bzw. wird (als) der Vorgänger-Bewegungssatz wenigstens eines Überschleifsatzes seinerseits ein Überschleifsatz (verwendet). Mit anderen Worten können in einer Ausführung zwei oder mehr Überschleifsätze unmittelbar aufeinander folgen bzw. aneinandergereiht werden.
Dadurch kann in einer Ausführung eine Roboterbahn besonders vorteilhaft sein und/oder besonders vorteilhaft, insbesondere einfach, zuverlässig und/oder rasch, programmiert werden, insbesondere besonders flexibel.
Nach einer Ausführung der vorliegenden Erfindung umfasst ein Verfahren zum Betreiben eines Roboters den Schritt: Abfahren einer Roboterbahn durch den Roboter durch Ausführen eines Roboterprogramms, das nach einem hier beschriebenen Verfahren erstellt (worden) ist, in einer Weiterbildung zusätzlich zu dem Erstellen des Roboterprogramms in hier beschriebener Weise. Somit umfasst in einer Ausführung das Verfahren zum Betreiben eines Roboters die Schritte: Erstellen eines Roboterprogramms in hier beschriebener Weise und Abfahren einer Roboterbahn durch den Roboter durch Ausführen dieses Roboterprogramms. Durch die Verwendung bzw. das Ausführen eines nach einem hier beschriebenen Verfahren erstellten Roboterprogramms kann in einer Ausführung der Betrieb des Roboters verbessert, insbesondere eine Zuverlässigkeit, Präzision und/oder Flexibilität erhöht und/oder ein Energieverbrauch und/oder eine Roboterbelastung reduziert werden. In einer Ausführung umfasst das Abfahren eines Überschleifsatzes bzw. eines durch diesen vorgegebenen Bahnabschnitts das gegebenenfalls parametrierte Anfahren des durch dessen Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts und/oder Anfahren von dem durch dessen Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt, kann insbesondere hieraus bestehen. Gleichermaßen kann in einer Ausführung zwischen dem Anfahren von dem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt und dem Anfahren des durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts ein weiterer Bahnabschnitt des Überschleifsatzes vorhanden sein. In einer Ausführung gehen der durch Überschleifsatz vorgegebene Bahnabschnitt und der durch den Vorgänger-Bewegungssatz vorgegebene Bahnabschnitt und/oder der durch Überschleifsatz vorgegebene Bahnabschnitt und der durch den Nachfolger-Bewegungssatz vorgegebene Bahnabschnitt stetig, vorzugsweise glatt, ineinander über.
Nach einer Ausführung der vorliegenden Erfindung ist ein System zum Erstellen eines Roboterprogramms und/oder Betreiben eines Roboters, insbesondere hard- und/oder Software-, insbesondere programmtechnisch, zur Durchführung eines hier beschriebenen Verfahrens eingerichtet und/oder weist auf:
Mittel zum Erstellen eines Roboterprogramms zum Abfahren einer Roboterbahn, das mehrere Bewegungssätze zum Vorgeben der Bahn aufweist, von denen wenigstes einer eine vorgegebene Zielpose einer Referenz des Roboters aufweist, wobei wenigstens einer der Bewegungssätze ein Überschleifsatz ist, für den eine Überschleifpose als eine virtuelle Startpose für einen Nachfolger-Bewegungssatz, ein Anfahren eines durch diesen Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts sowie ein Anfahren von einem durch einen
Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt parametrierbar ist; und/oder Mittel zum Abfahren einer Roboterbahn durch einen Roboter durch Ausführen eines Roboterprogramms, das nach einem hier beschriebenen Verfahren erstellt ist.
In einer Ausführung weist das System bzw. sein(e) Mittel auf:
Mittel zum Parametrieren einer Entfernung für den wenigstens einen Überschleifsatz, innerhalb der eine Position der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, von der Überschleifpose des Überschleifsatzes; Mittel zum Parametrieren eine Entfernung für den wenigstens einen Überschleifsatz, innerhalb der eine Position der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, von einer Pose des Nachfolger-Bewegungssatzes dieses Überschleifsatzes;
Mittel zum Parametrieren einer Entfernung für den wenigstens einen Überschleifsatz, innerhalb der eine Orientierung der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, von der Überschleifpose des Überschleifsatzes;
Mittel zum Parametrieren einer Entfernung für den wenigstens einen Überschleifsatz, innerhalb der eine Orientierung der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, von einer Pose des Nachfolger-Bewegungssatzes dieses Überschleifsatzes;
Mittel zum Parametrieren einer Entfernung für den wenigstens einen Überschleifsatz, innerhalb der eine Position der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, von der Überschleifpose des Überschleifsatzes;
Mittel zum Parametrieren einer Entfernung für den wenigstens einen Überschleifsatz, innerhalb der eine Position der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, von einer Pose des Vorgänger-Bewegungssatzes dieses Überschleifsatzes;
Mittel zum Parametrieren einer Entfernung für den wenigstens einen Überschleifsatz, innerhalb der eine Orientierung der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, von der Überschleifpose des Überschleifsatzes;
Mittel zum Parametrieren einer Entfernung für den wenigstens einen Überschleifsatz, innerhalb der eine Orientierung der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf, von einer Pose des Vorgänger-Bewegungssatzes dieses Überschleifsatzes; und/oder Mittel zum Parametrieren eines Abstandsmaßes der Referenz relativ zu der Überschleifpose des Überschleifsatzes beim Abfahren des Überschleifsatzes für den wenigstens einen Überschleifsatz.
In einer Ausführung weist das System bzw. sein(e) Mittel auf:
Mittel zum Vorgeben eines obligatorischen Durchfahrens, eines nicht obligatorischen oder nicht zulässigen Durchfahren der Überschleifpose, insbesondere eines Mindest- oder Höchstabstandsmaßes relativ zu der Überschleifpose und/oder einer Ablagerichtung gegenüber der Überschleifpose;
Mittel zum Parametrieren wenigstens einer Grenzfläche für den Überschleifsatz;
Mittel zum Parametrieren wenigstens einer Strategie für eine unerfüllbare Restriktion des Überschleifsatzes;
Mittel zum Parametrieren einer Geschwindigkeit für das Abfahren des Überschleifsatzes; und/oder
Mittel zum Aneinanderreihen von wenigstens zwei Überschleifsätzen.
Ein System und/oder Mittel im Sinne der vorliegenden Erfindung kann hard- und/oder softwaretechnisch ausgebildet sein, insbesondere eine, vorzugsweise mit einem Speicher- und/oder Bussystem daten- bzw. signalverbundene, insbesondere digitale, Verarbeitungs-, insbesondere Mikroprozessoreinheit (CPU), Graphikkarte (GPU) oder dergleichen, und/oder ein oder mehrere Programme oder Programmmodule aufweisen. Die Verarbeitungseinheit kann dazu ausgebildet sein, Befehle, die als ein in einem Speichersystem abgelegtes Programm implementiert sind, abzuarbeiten, Eingangssignale von einem Datenbus zu erfassen und/oder Ausgangssignale an einen Datenbus abzugeben. Ein Speichersystem kann ein oder mehrere, insbesondere verschiedene, Speichermedien, insbesondere optische, magnetische, Festkörper- und/oder andere nicht-flüchtige Medien aufweisen. Das Programm kann derart beschaffen sein, dass es die hier beschriebenen Verfahren verkörpert bzw. auszuführen imstande ist, sodass die Verarbeitungseinheit die Schritte solcher Verfahren ausführen kann und damit insbesondere eine Programmiermöglichkeit bzw. -Umgebung zum Erstellen eines Roboterprogramms zur Verfügung stellen und/oder den Roboter betreiben kann. Insbesondere kann ein System und/oder Mittel im Sinne der vorliegenden Erfindung eine Programmierumgebung, Programmiersprache und/oder Programmbibliothek aufweisen, insbesondere sein. Ein Computerprogrammprodukt kann in einer Ausführung ein, insbesondere nicht flüchtiges, Speichermedium zum Speichern eines Programms bzw. mit einem darauf gespeicherten Programm aufweisen, insbesondere sein, wobei ein Ausführen dieses Programms ein System bzw. eine Steuerung, insbesondere einen Computer, dazu veranlasst, ein hier beschriebenes Verfahren bzw. einen oder mehrere seiner Schritte auszuführen. In einer Ausführung werden ein oder mehrere, insbesondere alle, Schritte des Verfahrens vollständig oder teilweise automatisiert durchgeführt, insbesondere durch das System bzw. sein(e) Mittel.
In einer Ausführung weist das System den Roboter auf.
Ein Betreiben eines Roboters im Sinne der vorliegenden Erfindung umfasst in einer Ausführung ein Erstellen eines Roboterprogramms und/oder Ausführen eines bzw. des Roboterprogramms durch bzw. mit einem Roboter, kann insbesondere aus dem Erstellen eines Roboterprogramms, dem Ausführen eines bzw. des Roboterprogramms durch bzw. mit einem Roboter oder aus dem Erstellen eines Roboterprogramms und dem Ausführen eines bzw. des Roboterprogramms durch bzw. mit einem Roboter bestehen.
In einer Ausführung umfasst ein Computerprogrammprodukt Programmcode, der auf einem von einem Computer lesbaren Medium gespeichert ist, zur Durchführung eines Verfahrens nach einem der Ansprüche.
Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:
Fig. 1 : eine in herkömmlicher weise programmierte Roboterbahn eines
TCPs eines Roboters;
Fig. 2-6: nach einer Ausführung der vorliegenden Erfindung programmierte Roboterbahnen eines TCPs eines Roboters;
Fig. 7: ein System nach einer Ausführung der vorliegenden Erfindung; und
Fig. 8: ein Verfahren nach einer Ausführung der vorliegenden Erfindung.
Fig. 1 illustriert eine Roboterbahn eines TCPs 11 eines Roboters 10 (vgl. Fig. 7), die in herkömmlicher Weise programmiert wird bzw. ist, beispielsweise durch die Bewegungssätze PTP PO LIN P1 LIN P2
Fig. 2 illustriert eine Roboterbahn, die nach einer Ausführung der vorliegenden Erfindung programmiert wird bzw. ist, beispielsweise durch die Bewegungssätze
PTP PO LIN P1
BLEND P11 with BLENDPARA
LIN P2 Dabei ist „BLEND P11 with BLENDPARA“ ein Überschleifsatz mit der Überschleifpose P11 und den Parametern BLENDPARA.
Die Überschleifpose P11 umfasst in diesem Ausführungsbeispiel nur die Orientierung der Zielpose P2 des Nachfolger-Bewegungssatzes LIN P2, die Position wird somit nicht geändert bzw. entspricht der Position der Zielpose P1 des Vorgänger-Bewegungssatzes LIN P1. Somit kann für den Nachfolger-Bewegungssatz LIN P2 mit P11 eine von der Zielpose des Vorgänger-Bewegungssatzes LIN P1 abweichende Orientierung als virtuelle Startpose vorgegeben und dadurch auf einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt eine gewünschte Orientierung realisiert werden. Mit den Parametern BLENDPARA wird bzw. ist beispielsweise ein Radius R1 um die Überschleifpose P11 parametriert, ab der eine Position des TCPs von dem durch den Vorgänger-Bewegungssatz LIN P1 vorgegebenen Bahnabschnitt und dem durch den Nachfolger-Bewegungssatz LIN P2 vorgegebenen Bahnabschnitt abweichen darf.
Zusätzlich oder alternativ kann mit den Parametern BLENDPARA beispielsweise ein Radius R2 um die Überschleifpose P11 parametriert werden bzw. sein, ab der eine in Fig. 2 durch Pfeile angedeutete Orientierung des TCPs von dem durch den Vorgänger -Bewegungssatz LIN P1 vorgegebenen Bahnabschnitt und dem durch den Nachfolger-Bewegungssatz LIN P2 vorgegebenen Bahnabschnitt abweichen darf. Die beiden Radien R1 , R2 können identisch (Fig. 2) oder unterschiedlich sein. Letzteres ist in Fig. 3 illustriert, die im Übrigen Fig. 2 entspricht.
In einer Abwandlung können für das Abweichen von der Position des Vorgänger-Bewegungssatzes LIN P1 und für das Abweichen von der Position des Nachfolger-Bewegungssatzes LIN P2 auch verschiedene Radien parametriert werden bzw. sein. Zusätzlich oder alternativ können für das Abweichen von der Orientierung des Vorgänger-Bewegungssatzes LIN P1 und für das Abweichen von der Orientierung des Nachfolger-Bewegungssatzes LIN P2 unterschiedliche Radien parametriert werden bzw. sein.
Zusätzlich oder alternativ kann mit den Parametern BLENDPARA vorgegeben werden bzw. sein, ob die Überschleifpose P11 beim Abfahren des Überschleifsatzes BLEND P11 with BLENDPARA durchfahren werden muss oder nicht durchfahren werden muss. Fig. 2, 3 zeigen ein nicht obligatorisches Durchfahren, Fig. 4, die im Übrigen Fig. 2 entspricht, illustriert ein vorgegebenes Durchfahren der Überschleifpose P11 , Fig. 5, die im Übrigen Fig. 2, 4 entspricht, illustriert exemplarisch ein vorgegebenes Mindestabstandsmaß D, das von einer Entfernung von der Überschleifpose P11 abhängt, insbesondere gleich der (Mindest)Entfernung sein kann, und eine Ablagerichtung gegenüber der Überschleifpose P11 , im Ausführungsbeispiel ein Umfahren der Überschleifpose P11 von außen, bezogen auf die Orientierung bzw. Vorgänger - und Nachfolger-Bewegungssatz LIN P1 , LIN P2.
Fig. 6 illustriert eine Roboterbahn, die nach einer weiteren Ausführung der vorliegenden Erfindung programmiert wird bzw. ist, beispielsweise durch die Bewegungssätze
BLEND SP with BLENDPARA 1
SPLINE
SPL ZP ENDSPLINE
BLEND with BLENDPARA2 Mit den Parametern BLENDPARA1 des ersten Überschleifsatzes „BLEND SP with BLENDPARA1“ mit der parametrierten Überschleifpose SP wird bzw. ist beispielsweise vorgegeben, dass innerhalb einer vorgegebenen Entfernung gegenüber SP, die in Fig. 6 durch RSTART angedeutet ist, positions- und/oder orientierungsmäßig von der Spline-Bahn abgewichen werden darf, die durch den Nachfolger-Bewegungssatz vorgegeben ist. Auf diese Weise ist sichergestellt, dass ab dem Punkt PB auf der Spline-Bahn gefahren wird, um beispielsweise ab hier eine Kleberaupe mit entsprechend orientiertem Werkzeug aufzubringen oder dergleichen. Zusätzlich oder alternativ kann mit den Parametern BLENDPARA1 beispielsweise eine Ebene, die SP enthält, mit der Flächen(auswärts)normalen, die in Fig. 6 mit NS angedeutet ist, parametriert werden, die bei Abfahren innerhalb RSTART berührt, aber nicht durchdrungen werden darf.
Der zweite Überschleifsatz „BLEND with BLENDPARA2“ bewirkt, dass ab dem Punkt PE mit einem Abstand REND von ZP positions- und/oder orientierungsmäßig wieder von der Spline-Bahn abgewichen werden darf, wobei durch die Parameter BLENDPARA2 wiederum eine Ebene, die ZP enthält, mit der Flächen(auswärts)normalen, die in Fig. 6 mit NE angedeutet ist, parametriert werden kann, die bei Abfahren innerhalb REND berührt, aber nicht durchdrungen werden darf.
Dabei illustriert der zweite Überschleifsatz BLEND with BLENDPARA2, dass für einen Überschleifsatz eine Überschleifpose nicht notwendig parametriert werden bzw. sein muss, insbesondere, wenn wie hier kein Nachfolger-Bewegungssatz mehr vorgesehen ist, für den eine solche Überschleifpose eine virtuelle Startpose bestimmt bzw. bestimmen würde.
Zudem illustrieren die beiden Überschleifsätze, dass ein Anfahren von einem durch einen Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt (vgl. erster Überschleifsatz) oder Anfahren eines durch einen Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts (vgl. zweiter Überschleifsatz) nicht notwendig vorhanden bzw. parametriert werden bzw. sein muss.
Mit 20 ist in Fig. 7 ein Computer zum Programmieren und/oder Steuern des Roboters 10 angedeutet, der zur Durchführung eines hier beschriebenen Verfahrens eingerichtet ist bzw. verwendet wird. In einer Ausführung wird eine hier beschriebene Roboterbahn durch den Roboter 10 durch Ausführen eines Roboterprogramms, das nach einem hier beschriebenen Verfahren erstellt wird bzw. worden ist, abgefahren. Dies illustriert Fig. 8, in der in Schritt S10 das Roboterprogramm erstellt und in Schritt S20 ausgeführt wird. Obwohl in der vorhergehenden Beschreibung exemplarische Ausführungen erläutert wurden, sei darauf hingewiesen, dass eine Vielzahl von Abwandlungen möglich ist. Außerdem sei darauf hingewiesen, dass es sich bei den exemplarischen Ausführungen lediglich um Beispiele handelt, die den Schutzbereich, die Anwendungen und den Aufbau in keiner Weise einschränken sollen. Vielmehr wird dem Fachmann durch die vorausgehende Beschreibung ein Leitfaden für die Umsetzung von mindestens einer exemplarischen Ausführung gegeben, wobei diverse Änderungen, insbesondere in Hinblick auf die Funktion und Anordnung der beschriebenen Bestandteile, vorgenommen werden können, ohne den Schutzbereich zu verlassen, wie er sich aus den Ansprüchen und diesen äquivalenten Merkmalskombinationen ergibt.
Bezugszeichenliste
10 Roboter
11 TCP 20 Steuerung
PO, P1, P2, ZP Zielpose P11 , SP Überschleifpose PB, PE Bahnpunkt D Mindestabstandsmaß
NS, NE Flächen(auswärts)normalen
R1, R2, RSTART, REND Entfernung

Claims

Patentansprüche
1. Verfahren zum Erstellen eines Roboterprogramms für einen Roboter (10), mit dem Schritt:
Erstellen (S10) eines Roboterprogramms zum Abfahren einer Roboterbahn, das mehrere Bewegungssätze zum Vorgeben der Bahn aufweist, von denen wenigstes einer eine vorgegebene Zielpose (PO, P1 , P2; ZP) einer Referenz (11) des Roboters aufweist, dadurch gekennzeichnet, dass wenigstens einer der Bewegungssätze ein Überschleifsatz ist, für den eine Überschleifpose (P11; SP) als eine virtuelle Startpose für einen Nachfolger-Bewegungssatz, ein Anfahren eines durch diesen Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts sowie ein Anfahren von einem durch einen Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt parametrierbar ist.
2. Verfahren nach Anspruch 1 , dadurch gekennzeichnet, dass für den wenigstens einen Überschleifsatz: eine Entfernung von der Überschleifpose dieses Überschleifsatzes, innerhalb der eine Position der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder eine Entfernung von einer Pose des Nachfolger-Bewegungssatzes dieses
Überschleifsatzes, innerhalb der eine Position der Referenz von einem durch den
Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder eine Entfernung von der Überschleifpose dieses Überschleifsatzes, innerhalb der eine Orientierung der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder eine Entfernung von einer Pose des Nachfolger-Bewegungssatzes dieses
Überschleifsatzes, innerhalb der eine Orientierung der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder eine Entfernung von der Überschleifpose dieses Überschleifsatzes, innerhalb der eine Position der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder eine Entfernung von einer Pose des Vorgänger-Bewegungssatzes dieses Überschleifsatzes, innerhalb der eine Position der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder eine Entfernung von der Überschleifpose dieses Überschleifsatzes, innerhalb der eine Orientierung der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder eine Entfernung von einer Pose des Vorgänger-Bewegungssatzes dieses Überschleifsatzes, innerhalb der eine Orientierung der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder ein Abstandsmaß der Referenz relativ zu der Überschleifpose dieses Überschleifsatzes beim Abfahren des Überschleifsatzes parametrierbar ist.
3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass, insbesondere durch Parametrieren des Abstandsmaßes, ein obligatorisches Durchfahren der Überschleifpose und/oder ein nicht obligatorisches Durchfahren der Überschleifpose und/oder ein nicht zulässiges Durchfahren der Überschleifpose, insbesondere ein Mindest- und/oder Höchstabstandsmaß relativ zu der Überschleifpose und/oder eine Ablagerichtung gegenüber der Überschleifpose, vorgebbar ist.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass wenigstens eine Grenzfläche für den Überschleifsatz parametrierbar ist.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass wenigstens eine Strategie für eine unerfüllbare Restriktion des Überschleifsatzes parametrierbar ist.
6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass eine Geschwindigkeit für das Abfahren des Überschleifsatzes parametrierbar ist.
7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass als Nachfolger-Bewegungssatz und/oder als Vorgänger-Bewegungssatz wenigstens eines Überschleifsatzes ein Überschleifsatz verwendbar ist, insbesondere verwendet wird.
8. Verfahren zum Betreiben eines Roboters (10), mit dem Schritt:
Abfahren einer Roboterbahn durch einen Roboter durch Ausführen (S20) eines Roboterprogramms, das nach einem Verfahren nach einem der vorhergehenden Ansprüche erstellt ist.
9. System (20) zum Erstellen eines Roboterprogramms und/oder Betreiben eines Roboters (10), das zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche eingerichtet ist und/oder aufweist:
Mittel zum Erstellen eines Roboterprogramms zum Abfahren einer Roboterbahn, das mehrere Bewegungssätze zum Vorgeben der Bahn aufweist, von denen wenigstes einer eine vorgegebene Zielpose (PO, P1 , P2; ZP) einer Referenz (11) des Roboters aufweist, wobei wenigstens einer der Bewegungssätze ein Überschleifsatz ist, für den eine Überschleifpose (P11 ; SP) als eine virtuelle Startpose für einen Nachfolger-Bewegungssatz, ein Anfahren eines durch diesen Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitts sowie ein Anfahren von einem durch einen Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt parametrierbar ist; und/oder
Mittel zum Abfahren einer Roboterbahn durch den Roboter durch Ausführen eines Roboterprogramms, das nach einem Verfahren nach einem der vorhergehenden Ansprüche erstellt ist.
10. System nach dem vorhergehenden Anspruch, gekennzeichnet durch Mittel zum Parametrieren für den wenigstens einen Überschleifsatz von: einer Entfernung von der Überschleifpose dieses Überschleifsatzes, innerhalb der eine Position der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder einer Entfernung von einer Pose des Nachfolger-Bewegungssatzes dieses
Überschleifsatzes, innerhalb der eine Position der Referenz von einem durch den
Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder einer Entfernung von der Überschleifpose dieses Überschleifsatzes, innerhalb der eine Orientierung der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder einer Entfernung von einer Pose des Nachfolger-Bewegungssatzes dieses
Überschleifsatzes, innerhalb der eine Orientierung der Referenz von einem durch den Nachfolger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder einer Entfernung von der Überschleifpose dieses Überschleifsatzes, innerhalb der eine Position der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder einer Entfernung von einer Pose des Vorgänger-Bewegungssatzes dieses Überschleifsatzes, innerhalb der eine Position der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder einer Entfernung von der Überschleifpose dieses Überschleifsatzes, innerhalb der eine Orientierung der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder einer Entfernung von einer Pose des Vorgänger-Bewegungssatzes dieses Überschleifsatzes, innerhalb der eine Orientierung der Referenz von einem durch den Vorgänger-Bewegungssatz vorgegebenen Bahnabschnitt abweichen darf; und/oder eines Abstandsmaßes (D) der Referenz relativ zu der Überschleifpose dieses Überschleifsatzes beim Abfahren des Überschleifsatzes.
11. System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass, insbesondere durch Parametrieren des Abstandsmaßes, ein obligatorisches Durchfahren der Überschleifpose und/oder ein nicht obligatorisches Durchfahren der Überschleifpose und/oder ein nicht zulässiges Durchfahren der Überschleifpose, insbesondere ein Mindest- und/oder Höchstabstandsmaß relativ zu der Überschleifpose und/oder eine Ablagerichtung gegenüber der Überschleifpose, vorgebbar ist.
12. System nach einem der vorhergehenden Ansprüche, gekennzeichnet durch Mittel zum Parametrieren wenigstens einer Grenzfläche für den Überschleifsatz.
13. System nach einem der vorhergehenden Ansprüche, gekennzeichnet durch Mittel zum Parametrieren wenigstens einer Strategie für eine unerfüllbare Restriktion des Überschleifsatzes.
14. System nach einem der vorhergehenden Ansprüche, gekennzeichnet durch Mittel zum Parametrieren einer Geschwindigkeit für das Abfahren des Überschleifsatzes; und/oder Mittel zum Aneinanderreihen von wenigstens zwei Überschleifsätzen.
15. Computerprogrammprodukt mit einem Programmcode, der auf einem von einem Computer lesbaren Medium gespeichert ist, zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche 1 bis 8.
EP22717550.2A 2021-04-21 2022-03-22 Erstellen eines roboterprogramms und betreiben eines roboters Pending EP4326497A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102021204004.7A DE102021204004B3 (de) 2021-04-21 2021-04-21 Erstellen eines Roboterprogramms und Betreiben eines Roboters
PCT/EP2022/057413 WO2022223215A1 (de) 2021-04-21 2022-03-22 Erstellen eines roboterprogramms und betreiben eines roboters

Publications (1)

Publication Number Publication Date
EP4326497A1 true EP4326497A1 (de) 2024-02-28

Family

ID=81344336

Family Applications (1)

Application Number Title Priority Date Filing Date
EP22717550.2A Pending EP4326497A1 (de) 2021-04-21 2022-03-22 Erstellen eines roboterprogramms und betreiben eines roboters

Country Status (4)

Country Link
US (1) US20240238970A1 (de)
EP (1) EP4326497A1 (de)
DE (1) DE102021204004B3 (de)
WO (1) WO2022223215A1 (de)

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19507561A1 (de) 1994-03-09 1995-09-14 Siemens Ag Verfahren und Vorrichtung zum Überschleifen bei numerisch gesteuerten Maschinen
DE59406892D1 (de) * 1994-09-29 1998-10-15 Siemens Ag Überschleifen mit maximaler Achsbeschleunigung
US7180253B2 (en) * 2003-09-30 2007-02-20 Rockwell Automation Technologies, Inc. Method and system for generating multi-dimensional motion profiles
DE102007050282B4 (de) * 2006-11-09 2015-11-26 Sew-Eurodrive Gmbh & Co Kg Vorrichtung zur Bewegung eines Objektes, Verfahren zur Bestimmung einer Bahnkurve, Verfahren zum Betreiben einer Maschine oder Anlage
US8452458B2 (en) * 2007-05-03 2013-05-28 Motek Bv Method and system for real time interactive dynamic alignment of prosthetics
KR100856824B1 (ko) * 2007-07-23 2008-09-05 재단법인서울대학교산학협력재단 캐릭터 시뮬레이션 방법 및 시스템
US7979158B2 (en) * 2007-07-31 2011-07-12 Rockwell Automation Technologies, Inc. Blending algorithm for trajectory planning
US8363057B2 (en) * 2008-05-28 2013-01-29 Autodesk, Inc. Real-time goal-directed performed motion alignment for computer animated characters
US8373706B2 (en) * 2008-05-28 2013-02-12 Autodesk, Inc. Real-time goal-directed performed motion alignment for computer animated characters
US8350860B2 (en) * 2008-05-28 2013-01-08 Autodesk, Inc. Real-time goal-directed performed motion alignment for computer animated characters
US20110012903A1 (en) * 2009-07-16 2011-01-20 Michael Girard System and method for real-time character animation
US9226796B2 (en) * 2012-08-03 2016-01-05 Stryker Corporation Method for detecting a disturbance as an energy applicator of a surgical instrument traverses a cutting path
HUE043828T2 (hu) * 2013-03-15 2019-09-30 Univ Carnegie Mellon Felügyelt autonóm robot rendszer komplex felületvizsgálathoz és feldolgozáshoz
US10168674B1 (en) * 2013-04-22 2019-01-01 National Technology & Engineering Solutions Of Sandia, Llc System and method for operator control of heterogeneous unmanned system teams
EP2999940A4 (de) * 2013-05-22 2017-11-15 Neurala Inc. Verfahren und vorrichtung zur frühen sensorischen integration und robusten erfassung von wissen der realen welt
DE102013225890A1 (de) 2013-12-13 2015-06-18 Robert Bosch Gmbh Verfahren zur Steuerung eines Manipulators
JP6363642B2 (ja) * 2016-02-29 2018-07-25 ファナック株式会社 接線連続のコーナにおけるコーナ経路の最適化機能を有する数値制御装置
US10456103B2 (en) * 2016-06-14 2019-10-29 Shanghai United Imaging Healthcare Co., Ltd. Unified trajectory generation process and system
DE102016211470B4 (de) 2016-06-27 2022-05-05 Kuka Roboter Gmbh Verfahren zur planung einer bewegungsbahn eines manipulators
DE102016220577A1 (de) 2016-10-20 2018-05-09 Robert Bosch Gmbh Verfahren zum Optimieren von Bewegungskonturen eines Manipulators
DE102017200084A1 (de) 2016-12-06 2018-06-07 Robert Bosch Gmbh Verfahren zum Bereitstellen einer Bewegungskontur für einen Manipulator entlang vorgegebener Orientierungspunkte
CN110996826B (zh) * 2017-07-27 2023-04-25 直观外科手术操作公司 医疗装置手柄
DE102018203078B3 (de) 2018-03-01 2019-05-09 Kuka Deutschland Gmbh Verfahren zum automatischen Erzeugen einer Bewegungstrajektorie und zugehöriges Computerprogrammprodukt
KR20220082868A (ko) * 2019-10-16 2022-06-17 로코메이션, 인크. 자율 팔로워 차량들에 관한 요구를 감소시키는 거동들
WO2021105865A1 (en) * 2019-11-27 2021-06-03 3M Innovative Properties Company Robotic repair control systems and methods
US20210197377A1 (en) * 2019-12-26 2021-07-01 X Development Llc Robot plan online adjustment
AU2020277094C1 (en) * 2020-03-26 2023-06-29 Commonwealth Scientific And Industrial Research Organisation Path Planning
EP4149730A1 (de) * 2020-05-14 2023-03-22 Universal Robots A/S Eingabeformungssteuerung eines roboterarms in verschiedenen referenzräumen
US11958529B2 (en) * 2020-08-20 2024-04-16 Nvidia Corporation Controlling position of robot by determining goal proposals by using neural networks
US20220395978A1 (en) * 2021-06-15 2022-12-15 Sisu Devices Llc Enhanced robotic camera control
WO2023055857A1 (en) * 2021-09-28 2023-04-06 Intrinsic Innovation Llc Online planning satisfying constraints
JP2023058446A (ja) * 2021-10-06 2023-04-25 オリジン ワイヤレス, インコーポレイテッド 無線センシング、モニタリング及びトラッキングのための方法、装置及びシステム

Also Published As

Publication number Publication date
DE102021204004B3 (de) 2022-07-07
WO2022223215A1 (de) 2022-10-27
US20240238970A1 (en) 2024-07-18

Similar Documents

Publication Publication Date Title
EP3292445B1 (de) Trajektorienbestimmungsverfahren für nebenzeitbewegungen
EP3067165B1 (de) Verändern einer initial vorgegebenen roboterbahn
EP3434424A1 (de) Effiziente programmierung von robotern für die bearbeitung von werkstücken mit verschiedenen varianten
EP3569367B1 (de) Rechnergestütztes ermitteln einer bewegung einer vorrichtung
EP2919081A1 (de) Bearbeitungsmaschine mit Berücksichtigung von Lagefehlern bei Kollisionsprüfung
EP3056322A1 (de) Verfahren und system zum betreiben einer mehrachsigen maschine, insbesondere eines roboters
DE102016211470A1 (de) Verfahren zur planung einer bewegungsbahn eines manipulators
DE102015008188B3 (de) Abfahren einer vorgegebenen Bahn mit einem Roboter
EP4326497A1 (de) Erstellen eines roboterprogramms und betreiben eines roboters
DE102022131537A1 (de) Automatische online-verriegelungsstrategie
EP3810377B1 (de) Verfahren und system zum überführen eines endeffektors eines roboters zwischen einer endeffektorpose und einer weiteren endeffektorpose
WO2019219790A1 (de) Robotersteuerung
EP3720663B1 (de) Betreiben eines roboters
DE102024125914A1 (de) Planung schneller werkzeugmaschinenbewegungen
EP4191350B1 (de) Verfahren zum bestimmen einer werkzeugbahn und verfahren zur materialabtragenden bearbeitung eines werkstücks
WO2019076711A1 (de) Laseranlage mit optimierter steuerung
EP4057088B1 (de) Sicherer betrieb einer mehrachskinematik
DE102022208769B3 (de) Roboterbahnplanung und -steuerung
WO2019224224A1 (de) Verfahren und steuerung zum steuern eines roboters
DE102017010244A1 (de) Verfahren und Steuermittel zum Steuern einer Roboteranordnung
WO2022228792A1 (de) Verfahren und system zum koordinierten abfahren vorgegebener roboterbahnen
EP2420360B1 (de) Verfahren und Programmiermittel zum Programmieren eines Roboters
EP3994533B1 (de) Vom maschinenhersteller parametrierbare numerische steuerung
DE102023206924B3 (de) Ermitteln von Soll-Stellungen von Bewegungsachsen einer Roboteranordnung
EP3887911A1 (de) Verfahren zum steuern eines automatisierungsprozesses in echtzeit

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

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

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

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

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: 20231025

AK Designated contracting states

Kind code of ref document: A1

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

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

Free format text: CASE NUMBER: APP_33453/2024

Effective date: 20240605

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)