WO2023194007A1 - Durchführung einer roboterapplikation und erstellen eines programms hierfür - Google Patents

Durchführung einer roboterapplikation und erstellen eines programms hierfür Download PDF

Info

Publication number
WO2023194007A1
WO2023194007A1 PCT/EP2023/055387 EP2023055387W WO2023194007A1 WO 2023194007 A1 WO2023194007 A1 WO 2023194007A1 EP 2023055387 W EP2023055387 W EP 2023055387W WO 2023194007 A1 WO2023194007 A1 WO 2023194007A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
indication
selection
programming
program
Prior art date
Application number
PCT/EP2023/055387
Other languages
English (en)
French (fr)
Inventor
Shashank Sharma
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 WO2023194007A1 publication Critical patent/WO2023194007A1/de

Links

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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators
    • 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/40397Programming language for robots, universal, user oriented

Definitions

  • the present invention relates to a method and system for creating a program for carrying out a robot application, which includes several actions, in particular movements, of a first robot, in particular a method and system for carrying out the robot application, as well as a computer program or computer program product for carrying out one described here procedure.
  • robots from different manufacturers are used, in particular robots from different manufacturers together, alternatively robots from different manufacturers or the like. These robots must be programmed individually or manufacturer-specifically.
  • JSON-LD a context-based data format or structure is known for the Internet, for example JSON-LD, which is particularly suitable as an interface between machines.
  • the object of the present invention is to improve the execution of robot applications or the creation of programs for this purpose.
  • a robot application includes several actions of a first robot.
  • one or more of these actions each include one or more movements of the first robot, and can in particular be such movements.
  • the first robot and/or the others mentioned below robots have (each) a robot arm with at least three, in particular at least six joints, in one embodiment swivel joints.
  • a method for creating a program for carrying out the robot application comprises the steps:
  • input names or keys or a lexicon or vocabulary with input names or keys are uniformly specified, in one embodiment by one, in a specific implementation, context, in further training using JSON-LD or a similar standard or data format or structure.
  • the programming inputs are then (each) based on the input name of these, in an execution by the context, uniformly predetermined input name or lexicon that is or is used by the respective programming input, and the content used for the input name used by the respective programming input, in particular one- or multi-dimensional value, is interpreted, in particular converted into machine-readable instructions of the program or for the first robot, in an execution using JSON-LD or a similar standard or Data format or structure.
  • the robot application can be advantageously programmed or carried out for or with different robot(s).
  • one or more of the programming inputs comprise one or more details (each) of a coordinate space (for the first robot), in a further development one or more selections (each) between one of several predetermined coordinate spaces , in one Execution of a coordinate space for a motion input and/or a coordinate space for a pose of the first robot.
  • the predetermined coordinate spaces in particular for a movement input and/or for a pose, comprise a joint coordinate space and/or one or more work spaces, in a further development an environment-fixed and/or an end-effector-fixed and/or a workpiece-fixed coordinate space; and/or an indication of a control method of the first robot, in particular a selection between one of several predetermined control methods, which in a further development include position control, speed control and/or force control, in particular impedance control and/or admittance control, and/or a parameterization of the, if necessary, selected, standard procedure; and/or an indication of a path of the first robot, in particular a selection between one of several predetermined path types, which in a further development is a point-to-point or PTP path, a circular segment or CIRC path, a straight line or LIN path, a spline or SPL path and/or one or more other path types, and/or a parameterization of the, if necessary, selected path (type
  • the robot application includes several actions of at least one further robot that is different from the first robot.
  • one or more of these actions each include one or more movements of the further robot, and can in particular be such movements.
  • the method includes the steps:
  • these programming inputs are used to program the actions of the further robot (each based on that) input name from the, in one embodiment by the context, uniformly specified input names or the lexicon, which is determined by the respective programming input is or is used, and the input name used for this content determined by the respective programming input, in particular one- or multi-dimensional value, is interpreted, in particular converted into machine-readable instructions of the program or for the further robot, in an execution using JSON LD or a similar standard or data format or structure.
  • the robot application can advantageously be programmed or carried out for several different robots.
  • one or more of the programming inputs for programming the actions of the additional robot include one or more details (each) of a coordinate space (for the further robot), in a further development one or more selections (each) between one of several predetermined coordinate spaces, in one embodiment a coordinate space for a movement input and / or a coordinate space for a pose of the another robot.
  • the predetermined coordinate spaces in particular for a movement input and/or for a pose, comprise a joint coordinate space and/or one or more work spaces, in a further development an environment-fixed and/or an end-effector-fixed and/or a workpiece-fixed coordinate space; and/or an indication of a control method of the further robot, in particular a selection between one of several predetermined control methods, which in a further development include position control, speed control and/or force control, in particular impedance control and/or admittance control, and/or a parameterization of the, if necessary, selected, standard procedure; and/or an indication of a path of the further robot, in particular a selection between one of several predetermined path types, which in a further development are a point-to-point or PTP path, a circular segment or CIRC path, a straight line or LIN path, a spline or SPL path and/or one or more other path types, and/or a parameterization of the, if necessary, selected path (type
  • robot applications for several different robots can be programmed or carried out particularly easily, variably and/or reliably.
  • the input names are uniformly specified by specifying a context, in one embodiment by specifying a type within a specified context and/or using JSON-LD.
  • one or more of the programmed actions are implemented using a state machine.
  • branches (IF...THEN", "IF... ELSE -- etc.) can advantageously be implemented in one embodiment.
  • a method for carrying out the robot application comprises the steps:
  • a system for creating the program for carrying out the robot application in particular a system for Implementation of the robot application, in terms of hardware and/or software, in particular program technology, is set up to carry out a method described here and/or has:
  • input names are uniformly specified and the means for creating the program has means for interpreting the programming inputs based on the input name used by the respective programming input and the specific content for this input name used by the respective programming input, in particular using JSON-LD.
  • At least one of the programming inputs includes at least one indication of a coordinate space (for the first robot), in particular at least one selection between one of several predetermined coordinate spaces, an indication of a control method of the first robot, in particular a selection between one of several predetermined control methods, an indication of a path of the first robot, in particular a selection between one of several predetermined path types, an indication of a pose of the first robot, in particular with a selection between one of several predetermined coordinate spaces for the pose, an indication of a tool action of the first Robot, in particular a selection between one of several predetermined tool actions, and / or an indication of a sensor type and / or action of the first robot, in particular a selection between one of several predetermined sensor types and / or actions.
  • the robot application includes several actions, in particular movements, of at least one further robot that is different from the first robot, and the system or its means include: means for acquiring programming inputs for programming these actions of the further robot; and
  • the means for creating the program has means for interpreting these programming inputs for programming the actions of the further robot on the basis of the input name used by the respective programming input, which in one embodiment is uniformly predetermined by the context, and the input name used for this the respective programming input contains specific content, in particular using JSON-LD.
  • At least one of the programming inputs for programming the actions of the further robot comprises at least one indication of a coordinate space (for the further robot), in particular at least one selection between one of several predetermined coordinate spaces, an indication of a control method and further Robot, in particular a selection between one of several predetermined control methods, an indication of a path of the further robot, in particular a selection between one of several predetermined path types, an indication of a pose of the further robot, in particular with a selection between one of several predetermined coordinate spaces for the pose , an indication of a tool action of the further robot, in particular a selection between one of several predetermined tool actions, and / or an indication of a sensor type and / or action of the further robot, in particular a selection between one of several predetermined sensor types and / or actions.
  • system or its means includes
  • a system and/or a means in the sense of the present invention can be designed in terms of hardware and/or software technology, in particular at least one processing unit, in particular a microprocessor unit, preferably connected to a memory and/or bus system with data or signals, in particular digital processing unit ( CPU), graphics card (GPU) or the like, and/or one or more programs or program modules.
  • CPU digital processing unit
  • GPU graphics card
  • 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 deliver 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 designed in such a way that it embodies or is able to execute the methods described here, so that the processing unit can carry out the steps of such methods and thus in particular can create or execute the program.
  • a computer program product can have, in particular, a storage medium, in particular a computer-readable and/or non-transitory storage medium, for storing a program or instructions or with a program or with instructions stored thereon.
  • execution of this program or instructions by a system or computer or array of computers causes the system or computer(s) to perform a method or one or more of its steps described herein , or the program or instructions have been set up for this purpose.
  • one or more, in particular all, steps of the method are carried out completely or partially automatically, in particular by the system or its means.
  • the system has the first robot and possibly also the further robot.
  • Fig. 1 a system for carrying out a robot application according to an embodiment of the present invention
  • Fig. 2 a method for carrying out the robot application according to an embodiment of the present invention.
  • Fig. 3, 4 Programming input structures.
  • Fig. 1 shows a system for carrying out a robot application using a first robot 1 and, in a further development, an optional further robot 2, which are controlled by a central or decentralized or distributed controller 3, which executes a created program and for this purpose a means 3.1 for Creating the program, which, as mentioned, can also be implemented decentrally, in particular by a dedicated computer with software running on it, a cloud or the like,
  • Fig. 2 shows a method for carrying out the robot application.
  • a first step S10 programming inputs for programming actions of the first and possibly also of the further robot are recorded.
  • a program for carrying out a robot application is created based on these recorded programming inputs.
  • a third step S30 the created program is executed using the first robot and, if necessary, also the further robot.
  • Fig. 3, 4 illustrate programming input structures.
  • the program inputs can include, for example, the following:
  • step 1 “Move command 1”,
  • step 2 “Move command 2”,
  • a context is specified by ' ⁇ context”: “https://schema.org”, whereby schema.org exemplifies a uniform ontology for structuring data on websites based on existing markup languages, through “@type”: “Robot Application” or “@type”: “Robot Application” a type within the context that can be generated or modified, in particular expanded, if necessary , in particular in such a way that it provides the programming input mentioned here.
  • program inputs can contain motion commands (“Motion Command”) with a choice between one of several predefined coordinate spaces (“K.raum” or “Domain”: “Joint” or “Joint “, “Cartesian” or “Cartesian”), a selection between one of several predefined control methods (“Algorithm” or “Range/Algorithm”: “Position”, “Speed” or “Velocity”, “Force-Impedance” or “Force Impedance”, “Force Admittance” or “Force Admittance”), a parameterization of the (selected) control method (“Stiffness” or “Stifness”, “Damping” or “Damping”, “Force " or “Force”), a selection between one of several predefined path types (“Trajectory” or “Trajectory”: “PTP”, “CIRC”, “LIN”, SPL”, “sampled path profile” or “Sampled Path Profile”, "
  • “Actions”) or their parameterization (“Open” or “Open”, “Closed” or “Close”), sensor types and/or actions (“Sensors” or “Sensors”: “Camera” or “Camera”, “accelerometer” or “accelerometer”, “...”) and other elements (“Other” or “Other”).
  • the respective programming input creates the corresponding content (“Stiffness” or “Stiffness”, “Damping” or “Damping”, “Force” or “Force”, “EE Frame”, “Redundancy” or “Redundancy”, “ Joint Pose” or “Joint Pose”, “Offen” or “Open”, “Closed” or “Close”).
  • step 3 of the program can be a
  • Movement commands can be recorded or implemented, which requires a position-controlled PTP Path in the joint angle space to a target pose, which is specified in the joint angle space by the values “joint pose” (or “joint pose”).
  • This is indicated in FIG. 4 by a line with the reference number 300, which is to be understood as “is of type” or represents this.
  • the reference number 100 is to be understood as “has name” or “has name” and the reference number 200 is to be understood as “has not” or “does not have” or represents this.
  • the JSON-LD data model represents an extension or serialization of the RDF model. This means that in one version the robot application can be represented in an RDF graph and then serialized to JSON-LD.
  • An RDF serialization in N-QUADS serialization would be, for example:

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)

Abstract

Ein Verfahren zum Erstellen eines Programms zur Durchführung einer Roboterapplikation, die mehrere Aktionen eines ersten Roboters (1) umfasst, umfasst die Schritte: Erfassen (S10) von Programmiereingaben zum Programmieren dieser Aktionen des ersten Roboters; und Erstellen (S20) des Programms auf Basis dieser erfassten Programmiereingaben; wobei zum Erstellen des Programms für unterschiedliche Roboter, insbesondere durch einen Kontext, Eingabenamen einheitlich vorgegeben sind und die Programmiereingaben auf Basis von dem durch die jeweilige Programmiereingabe verwendeten dieser Eingabenamen und dem für diesen verwendeten Eingabenamen durch die jeweilige Programmiereingabe bestimmten Inhalt interpretiert werden, insbesondere mittels JSON-LD; und/oder wenigstens eine der Programmiereingaben wenigstens eine Angabe eines Koordinatenraums, eine Angabe eines Regelverfahrens des ersten Roboters, eine Angabe einer Bahn des ersten Roboters, eine Angabe einer Pose des ersten Roboters, eine Angabe einer Werkzeugaktion des ersten Roboters, und/oder eine Angabe einer Sensorart und/oder -aktion des ersten Roboters umfasst.

Description

Beschreibung
Durchführung einer Roboterapplikation und Erstellen eines Programms hierfür
Die vorliegende Erfindung betrifft ein Verfahren und System zum Erstellen eines Programms zur Durchführung einer Roboterapplikation, die mehrere Aktionen, insbesondere Bewegungen, eines ersten Roboters umfasst, insbesondere ein Verfahren und System zur Durchführung der Roboterapplikation, sowie ein Computerprogramm bzw. Computerprogrammprodukt zur Durchführung eines hier beschriebenen Verfahrens.
In vielen Roboterapplikationen werden Roboter unterschiedlicher Hersteller eingesetzt, insbesondere Roboter unterschiedlicher Hersteller gemeinsam, alternativ Roboter unterschiedlicher Hersteller oder dergleichen. Dabei müssen diese Roboter jeweils individuell bzw. herstellerspezifisch programmiert werden.
Auf der anderen Seite ist beispielsweise für das Internet mit JSON-LD ein(e) kontextbasierte(s) Datenformat bzw. -Struktur bekannt, das bzw. die insbesondere als Schnittstelle zwischen Maschinen untereinander geeignet ist.
Aufgabe der vorliegenden Erfindung ist es, das Durchführen von Roboterapplikationen bzw. das Erstellen von Programmen hierfür zu verbessern.
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 bzw. 5 gelöst. Ansprüche 6, 7 stellen ein System bzw. Computerprogramm 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 eine Roboterapplikation mehrere Aktionen eines ersten Roboters.
In einer Ausführung umfassen eine oder mehrere dieser Aktionen jeweils eine oder mehrere Bewegungen des ersten Roboters, können insbesondere solche Bewegungen sein. Der erste Roboter und/oder der nachfolgend genannte weitere Roboter weisen in einer Ausführung (jeweils) einen Roboterarm mit wenigstens drei, insbesondere wenigstens sechs Gelenken, in einer Ausführung Drehgelenken, auf.
Nach einer Ausführung der vorliegenden Erfindung umfasst ein Verfahren zum Erstellen eines Programms zur Durchführung der Roboterapplikation die Schritte:
Erfassen von Programmiereingaben zum Programmieren der Aktionen des ersten Roboters; und
Erstellen des Programms auf Basis dieser erfassten Programmiereingaben.
Nach einer Ausführung der vorliegenden Erfindung sind, insbesondere werden, für unterschiedliche Roboter, insbesondere unterschiedliche Robotertypen und/oder Roboter unterschiedlicher Hersteller, Eingabenamen bzw. Schlüssel bzw. ein Lexikon bzw. Vokabular mit Eingabenamen bzw. Schlüsseln einheitlich vorgegeben, in einer Ausführung durch einen, in einer Ausführung vorgegebenen, Kontext, in einer Weiterbildung mittels JSON-LD oder einem/r ähnlichen Standard bzw. Datenformat bzw. -Struktur. Zum bzw. beim Erstellen des Programms werden die Programmiereingaben dann (jeweils) auf Basis von demjenigen) Eingabenamen von diesen, in einer Ausführung durch den Kontext, einheitlich vorgegebenen Eingabenamen bzw. dieses Lexikons, der durch die jeweilige Programmiereingabe verwendet wird bzw. ist, und dem für diesen verwendeten Eingabenamen durch die jeweilige Programmiereingabe bestimmten Inhalt, insbesondere ein- oder mehrdimensionalen Wert, interpretiert, insbesondere in maschinenlesbare Anweisungen des Programms bzw. für den ersten Roboter umgesetzt, in einer Ausführung mittels JSON-LD oder einem/r ähnlichen Standard bzw. Datenformat bzw. -Struktur.
Dadurch kann in einer Ausführung die Roboterapplikation vorteilhaft für bzw. mit unterschiedliche(n) Roboter(n) programmiert bzw. durchgeführt werden.
Zusätzlich oder alternativ umfassen nach einer Ausführung der vorliegenden Erfindung eine oder mehrere der Programmiereingaben (jeweils) eine oder mehrere Angaben (je) eines Koordinatenraums (für den ersten Roboter), in einer Weiterbildung eine oder mehrere Auswahlen (jeweils) zwischen einem von mehreren vorgegebenen Koordinatenräumen, in einer Ausführung eines Koordinatenraums für eine Bewegungseingabe und/oder eines Koordinatenraums für eine Pose des ersten Roboters. In einer Ausführung umfassen die vorgegebenen Koordinatenräume, insbesondere für eine Bewegungseingabe und/oder für eine Pose, einen Gelenkkoordinatenraum und/oder einen oder mehrere Arbeitsräume, in einer Weiterbildung einen umgebungsfesten und/oder einen endeffektorfesten und/oder einen werkstückfesten Koordinatenraum; und/oder eine Angabe eines Regelverfahrens des ersten Roboters, insbesondere eine Auswahl zwischen einem von mehreren vorgegebenen Regelverfahren, die in einer Weiterbildung eine Positionsregelung, Geschwindigkeitsregelung und/oder Kraftregelung, insbesondere Impedanzregelung und/oder Admittanzregelung, umfassen, und/oder eine Parametrierung des, gegebenenfalls ausgewählten, Regelverfahrens; und/oder eine Angabe einer Bahn des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Bahnarten, die in einer Weiterbildung eine Punkt-zu- Punkt- bzw. PTP-Bahn, eine Kreissegment- bzw. CIRC-Bahn, eine Geraden- bzw. LIN-Bahn, eine Spline- bzw. SPL-Bahn und/oder eine oder mehrere andere Bahnarten umfassen, und/oder eine Parametrierung der, gegebenenfalls ausgewählten, Bahn(art); und/oder eine Angabe, insbesondere Parametrierung, einer Pose, insbesondere Zielpose, des ersten Roboters, insbesondere unter Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen für die Pose, die in einer Weiterbildung einen Gelenkkoordinatenraum und/oder einen oder mehrere Arbeitsräume, in einer Weiterbildung einen umgebungsfesten und/oder einen endeffektorfesten und/oder einen werkstückfesten Koordinatenraum, umfassen; und/oder eine Angabe einer Werkzeugaktion des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Werkzeugaktionen und/oder eine Parametrierung der, gegebenenfalls ausgewählten, Werkzeugaktion; und/oder eine Angabe einer Sensorart und/oder -aktion des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Sensorarten und/oder -aktionen, wobei der Sensor in einer Ausführung ein durch den ersten Roboter geführter Sensor ist. Durch diese Programmiereingaben, insbesondere ein entsprechendes Lexikon bzw. einen entsprechenden Kontext, das bzw. der diese vorsieht bzw. zur Verfügung stellt, können Roboterapplikationen besonders einfach, variabel und/oder zuverlässig programmiert bzw. durchgeführt werden.
In einer Ausführung umfasst die Roboterapplikation mehrere Aktionen wenigstens eines weiteren, von dem ersten Roboter verschiedenen, Roboters. In einer Weiterbildung umfassen eine oder mehrere dieser Aktionen jeweils eine oder mehrere Bewegungen des weiteren Roboters, können insbesondere solche Bewegungen sein.
In einer Ausführung umfasst das Verfahren die Schritte:
Erfassen von Programmiereingaben zum Programmieren dieser Aktionen des weiteren Roboters; und
Erstellen des Programms auf Basis dieser erfassten Programmiereingaben.
In einer Ausführung werden zum bzw. beim Erstellen des Programms diese Programmiereingaben zum Programmieren der Aktionen des weiteren Roboters (jeweils) auf Basis von demjenigen) Eingabenamen von den, in einer Ausführung durch den Kontext, einheitlich vorgegebenen Eingabenamen bzw. des Lexikons, der durch die jeweilige Programmiereingabe verwendet wird bzw. ist, und dem für diesen verwendeten Eingabenamen durch die jeweilige Programmiereingabe bestimmten Inhalt, insbesondere ein- oder mehrdimensionalen Wert, interpretiert, insbesondere in maschinenlesbare Anweisungen des Programms bzw. für den weiteren Roboter umgesetzt, in einer Ausführung mittels JSON-LD oder einem/r ähnlichen Standard bzw. Datenformat bzw. -Struktur.
Dadurch kann in einer Ausführung die Roboterapplikation vorteilhaft für mehrere unterschiedliche Roboter programmiert bzw. durchgeführt werden.
Zusätzlich oder alternativ umfassen in einer Ausführung eine oder mehrere der Programmiereingaben zum Programmieren der Aktionen des weiteren Roboters (jeweils) eine oder mehrere Angaben (je) eines Koordinatenraums (für den weiteren Roboter), in einer Weiterbildung eine oder mehrere Auswahlen (jeweils) zwischen einem von mehreren vorgegebenen Koordinatenräumen, in einer Ausführung eines Koordinatenraums für eine Bewegungseingabe und/oder eines Koordinatenraums für eine Pose des weiteren Roboters. In einer Ausführung umfassen die vorgegebenen Koordinatenräume, insbesondere für eine Bewegungseingabe und/oder für eine Pose, einen Gelenkkoordinatenraum und/oder einen oder mehrere Arbeitsräume, in einer Weiterbildung einen umgebungsfesten und/oder einen endeffektorfesten und/oder einen werkstückfesten Koordinatenraum; und/oder eine Angabe eines Regelverfahrens des weiteren Roboters, insbesondere eine Auswahl zwischen einem von mehreren vorgegebenen Regelverfahren, die in einer Weiterbildung eine Positionsregelung, Geschwindigkeitsregelung und/oder Kraftregelung, insbesondere Impedanzregelung und/oder Admittanzregelung, umfassen, und/oder eine Parametrierung des, gegebenenfalls ausgewählten, Regelverfahrens; und/oder eine Angabe einer Bahn des weiteren Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Bahnarten, die in einer Weiterbildung eine Punkt-zu- Punkt- bzw. PTP-Bahn, eine Kreissegment- bzw. CIRC-Bahn, eine Geraden- bzw. LIN-Bahn, eine Spline- bzw. SPL-Bahn und/oder eine oder mehrere andere Bahnarten umfassen, und/oder eine Parametrierung der, gegebenenfalls ausgewählten, Bahn(art); und/oder eine Angabe, insbesondere Parametrierung, einer Pose, insbesondere Zielpose, des weiteren Roboters, insbesondere unter Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen für die Pose, die in einer Weiterbildung einen Gelenkkoordinatenraum und/oder einen oder mehrere Arbeitsräume, in einer Weiterbildung einen umgebungsfesten und/oder einen endeffektorfesten und/oder einen werkstückfesten Koordinatenraum, umfassen; und/oder eine Angabe einer Werkzeugaktion des weiteren Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Werkzeugaktionen und/oder eine Parametrierung der, gegebenenfalls ausgewählten, Werkzeugaktion; und/oder eine Angabe einer Sensorart und/oder -aktion des weiteren Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Sensorarten und/oder -aktionen, wobei der Sensor in einer Ausführung ein durch den ersten Roboter geführter Sensor ist.
Durch diese Programmiereingaben, insbesondere ein entsprechendes Lexikon bzw. einen entsprechenden Kontext, das bzw. der diese vorsieht bzw. zur Verfügung stellt, können Roboterapplikationen für mehrere unterschiedliche Roboter besonders einfach, variabel und/oder zuverlässig programmiert bzw. durchgeführt werden.
In einer Ausführung sind, in einer Weiterbildung werden, die Eingabenamen durch Angabe eines Kontexts, in einer Ausführung durch Angabe eines Typs innerhalb eines angegebenen Kontextes und/oder mittels JSON-LD, einheitlich vorgegeben.
Dadurch kann in einer Ausführung vorteilhaft wahlweise bzw. alternativ auf unterschiedliche Kontexte bzw. unterschiedliche Typen innerhalb eines angegebenen Kontextes zugegriffen bzw. mit JSON-LD ein global verfügbarer/s und wohlstrukturierter/s Standard bzw. Datenformat genutzt werden. Damit können in einer Ausführung Roboterapplikationen besonders variabel und/oder zuverlässig programmiert bzw. durchgeführt werden.
In einer Ausführung werden beim Erstellen des Programms eine oder mehrere der programmierten Aktionen mithilfe einer Zustandsmaschine implementiert.
Dadurch können in einer Ausführung vorteilhaft Verzweigungen („IF...THEN...“, „IF... ELSE...“ etc.) implementiert werden.
Nach einer Ausführung der vorliegenden Erfindung umfasst ein Verfahren zur Durchführung der Roboterapplikation die Schritte:
Erstellen eines Programms nach einem hier beschriebenen Verfahren; und Ausführen dieses erstellten Programms mithilfe des ersten Roboters und gegebenenfalls des weiteren Roboters.
Nach einer Ausführung der vorliegenden Erfindung ist ein System zum Erstellen des Programms zur Durchführung der Roboterapplikation, insbesondere ein System zur Durchführung der Roboterapplikation, hard- und/oder software-, insbesondere programmtechnisch, zur Durchführung eines hier beschriebenen Verfahrens eingerichtet und/oder weist auf:
Mittel zum Erfassen von Programmiereingaben zum Programmieren dieser Aktionen des ersten Roboters; und
Mittel zum Erstellen des Programms auf Basis dieser erfassten Programmiereingaben.
Nach einer Ausführung der vorliegenden Erfindung sind zum Erstellen des Programms für unterschiedliche Roboter, in einer Ausführung durch einen Kontext, Eingabenamen einheitlich vorgegeben und das Mittel zum Erstellen des Programms weist Mittel zum Interpretieren der Programmiereingaben auf Basis von dem durch die jeweilige Programmiereingabe verwendeten Eingabenamen und dem für diesen verwendeten Eingabenamen durch die jeweilige Programmiereingabe bestimmten Inhalt, insbesondere mittels JSON-LD, auf.
Zusätzlich oder alternativ umfasst nach einer Ausführung der vorliegenden Erfindung wenigstens eine der Programmiereingaben wenigstens eine Angabe eines Koordinatenraums (für den ersten Roboter), insbesondere wenigstens eine Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen, eine Angabe eines Regelverfahrens des ersten Roboters, insbesondere eine Auswahl zwischen einem von mehreren vorgegebenen Regelverfahren, eine Angabe einer Bahn des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Bahnarten, eine Angabe einer Pose des ersten Roboters, insbesondere unter Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen für die Pose, eine Angabe einer Werkzeugaktion des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Werkzeugaktionen, und/oder eine Angabe einer Sensorart und/oder -aktion des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Sensorarten und/oder -aktionen.
In einer Ausführung umfasst die Roboterapplikation mehrere Aktionen, insbesondere Bewegungen, wenigstens eines weiteren, von dem ersten Roboter verschiedenen, Roboters und das System bzw. seine Mittel umfassen: Mittel zum Erfassen von Programmiereingaben zum Programmieren dieser Aktionen des weiteren Roboters; und
Mittel zum Erstellen des Programms auf Basis dieser erfassten Programmiereingaben.
In einer Ausführung weist das Mittel zum Erstellen des Programms Mittel zum Interpretieren dieser Programmiereingaben zum Programmieren der Aktionen des weiteren Roboters auf Basis von dem durch die jeweilige Programmiereingabe verwendeten der, in einer Ausführung durch den Kontext, einheitlich vorgegebenen Eingabenamen und dem für diese verwendeten Eingabenamen durch die jeweilige Programmiereingabe bestimmten Inhalt, insbesondere mittels JSON-LD, auf.
Zusätzlich oder alternativ umfasst nach einer Ausführung der vorliegenden Erfindung wenigstens eine der Programmiereingaben zum Programmieren der Aktionen des weiteren Roboters wenigstens eine Angabe eines Koordinatenraums (für den weiteren Roboter), insbesondere wenigstens eine Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen, eine Angabe eines Regelverfahrens des weiteren Roboters, insbesondere eine Auswahl zwischen einem von mehreren vorgegebenen Regelverfahren, eine Angabe einer Bahn des weiteren Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Bahnarten, eine Angabe einer Pose des weiteren Roboters, insbesondere unter Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen für die Pose, eine Angabe einer Werkzeugaktion des weiteren Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Werkzeugaktionen, und/oder eine Angabe einer Sensorart und/oder -aktion des weiteren Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Sensorarten und/oder -aktionen.
In einer Ausführung umfasst das System bzw. seine Mittel
Mittel zum einheitlichen Vorgeben der Eingabenamen durch Angabe eines Kontexts, insbesondere durch Angabe eines Typs innerhalb eines angegebenen Kontextes und/oder mittels JSON-LD; und/oder Mittel zum Implementieren wenigstens einer der programmierten Aktionen beim Erstellen des Programms mithilfe einer Zustandsmaschine; und/oder Mittel zum Ausführen des erstellten Programms mithilfe des ersten Roboters und gegebenenfalls des weiteren Roboters. Ein System und/oder ein Mittel im Sinne der vorliegenden Erfindung kann hard- und/oder softwaretechnisch ausgebildet sein, insbesondere wenigstens 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 das Programm erstellen bzw. ausführen kann. Ein Computerprogrammprodukt kann in einer Ausführung ein, insbesondere computerlesbares und/oder nicht-flüchtiges, Speichermedium zum Speichern eines Programms bzw. von Anweisungen bzw. mit einem darauf gespeicherten Programm bzw. mit darauf gespeicherten Anweisungen aufweisen, insbesondere sein. In einer Ausführung veranlasst ein Ausführen dieses Programms bzw. dieser Anweisungen durch ein System bzw. einen Computer oder eine Anordnung von mehreren Computern, das System bzw. den bzw. die Computer, dazu, ein hier beschriebenes Verfahren bzw. einen oder mehrere seiner Schritte auszuführen, bzw. sind das Programm bzw. die Anweisungen hierzu eingerichtet.
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. seine Mittel.
In einer Ausführung weist das System den ersten Roboter und gegebenenfalls auch den weiteren Roboter auf.
Die vorliegende Erfindung ist mit Bezug auf JSON-LD erläutert, da dies ein(e) bekannte(rZs) und vorteilhafte(rZs) Standard bzw. Datenformat bzw. -Struktur ist, sie ist jedoch in keiner Weise hierauf beschränkt. Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:
Fig. 1 : ein System zur Durchführung einer Roboterapplikation nach einer Ausführung der vorliegenden Erfindung;
Fig. 2: ein Verfahren zur Durchführung der Roboterapplikation nach einer Ausführung der vorliegenden Erfindung; und
Fig. 3, 4: Programmiereingaben-Strukturen.
Fig. 1 zeigt ein System zur Durchführung einer Roboterapplikation mithilfe eines ersten Roboters 1 und in einer Weiterbildung eines optionalen weiteren Roboters 2, die durch eine zentrale oder dezentrale bzw. verteilte Steuerung 3 gesteuert werden, welche ein erstelltes Programm durchführt und hierzu ein Mittel 3.1 zum Erstellen des Programms aufweist, das wie erwähnt auch dezentral, insbesondere durch einen eigenen Computer mit darauf ablaufender Software, eine Cloud oder dergleichen implementiert sein kann, Fig. 2 ein Verfahren zur Durchführung der Roboterapplikation.
In einem ersten Schritt S10 werden Programmiereingaben zum Programmieren von Aktionen des ersten und gegebenenfalls auch des weiteren Roboters erfasst.
In einem zweiten Schritt S20 wird auf Basis dieser erfassten Programmiereingaben ein Programm zur Durchführung einer Roboterapplikation erstellt.
In einem dritten Schritt S30 wird das erstellte Programm mithilfe des ersten Roboters und gegebenenfalls auch des weiteren Roboters ausgeführt.
Fig. 3, 4 illustrieren hierzu Programmiereingaben-Strukturen.
Die Programmeingaben können exemplarisch folgendes umfassen:
# JSON-LD for Robot Application 1 {
“©context”: “https://schema.org”, “@type”: “Robot Application”
“name”: “Robot Application 1“,
„step 1“: „Motion Command 1“,
„step 2“: „Motion Command 2“,
} bzw.
# JSON-LD für Roboterapplikation 1
{
“©context”: “https://schema.org”,
“@type”: “Roboterapplikation”
“name”: “Roboterapplikation 1“,
„Schritt 1“: „Bewegungskommando 1“,
„Schritt 2“: „Bewegungskommando 2“,
} bzw.
# JSON-LD for Robotererapplikation 1
{
“©context”: “htps://schema.org”,
‘©type”: “Robot application”
“name”: “Roboterapplikation 1“,
„step 1“: „Bewegungskommando 1“,
„step 2“: „Bewegungskommando 2“,
} oder dergleichen.
Durch ‘©context”: “https://schema.org” wird ein Kontext angegeben, wobei schema.org exemplarisch eine einheitliche Ontologie für die Strukturierung von Daten auf Websites auf der Basis von bereits bestehenden Auszeichnungssprachen zur Verfügung stellt, durch “@type”: “Robot Application” bzw. “@type”: “Roboterapplikation” ein Typ innerhalb des Kontextes, der gegebenenfalls generiert bzw. modifiziert, insbesondere erweitert werden kann, insbesondere so, dass er hier genannte Programmiereingaben zur Verfügung stellt.
Wie aus Fig. 3, 4 erkennbar, können Programmeingaben Bewegungsbefehle bzw. - kommandos („Motion Command“) mit einer Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen („K.raum“ bzw. „Domain“: „Gelenk“ bzw. „Joint“, „kartesisch“ bzw. „Cartesian“), einer Auswahl zwischen einem von mehreren vorgegebenen Regelverfahren („Algorithmus“ bzw. „Range/Algorithm“: „Position“, „Geschwindigkeit“ bzw. „Velocity“, „Kraft-Impedanz“ bzw. „Force-Impedance“, „Kraft- Admittanz“ bzw. „Force-Admittance“), einer Parametrierung des (ausgewählten) Regelverfahren („Steifigkeit“ bzw. „Stifness“, „Dämpfung“ bzw. „Damping“, „Kraft“ bzw. „Force“), einer Auswahl zwischen einer von mehreren vorgegebenen Bahnarten („Trajektorie“ bzw. „Trajectory“: „PTP“, „CIRC“, „LIN“, SPL“, „gesampeltes Bahnprofil“ bzw. „Sampled Path Profile“, „MISC“) bzw. deren Parametrierung, Roboterposen („Roboterpose“ bzw. „Robot Pose“), insbesondere unter Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen („Gelenk“ bzw. „Joint“, „kartesisch“ bzw. „Cartesian“) für die Pose und deren Parametrierung („Gelenkpose“ bzw. „Joint pose“, „EE Frame“, „Redundanz“ bzw. „Redundancy“), Werkzeugaktionen („Greifer“ bzw. „Gripper“: „Aktionen“ bzw. „Actions“) bzw. deren Parametrierung („Offen“ bzw. „Open“, „Geschlossen“ bzw. „Close“), Sensorarten und/oder -aktion („Sensoren“ bzw. „Sensors“: „Kamera“ bzw. „Camera“, „Beschleunigungsmesser“ bzw. „Accelerometer“, „...“) und weiteren Elementen („Weitere“ bzw. „Other“) umfassen. Durch die jeweilige Programmiereingabe werden entsprechende Inhalte („Steifigkeit“ bzw. „Stiffness“, „Dämpfung“ bzw. „Damping“, „Kraft“ bzw. „Force“, „EE Frame“, „Redundanz“ bzw. „Redundancy“, „Gelenkpose“ bzw. „Joint Pose“, „Offen“ bzw. „Open“, „Geschlossen“ bzw. „Close“) bestimmt.
Wie Fig. 4 illustriert, kann beispielsweise als Schritt 3 des Programms ein
Bewegungsbefehl erfasst bzw. umgesetzt werden, der eine positionsgeregelte PTP- Bahn im Gelenkwinkelraum zu einer Zielpose umfasst, die im Gelenkwinkelraum durch die Werte „Gelenkpose“ (bzw. „Joint pose“) vorgegeben ist. Dies ist in Fig. 4 durch eine Linie mit dem Bezugszeichen 300 angedeutet, welches als „ist vom Typ“ bzw. „is of type“ zu verstehen ist bzw. dies darstellt. Analog sind in Fig. 3 das Bezugszeichen 100 als „hat Namen“ bzw. „has Name“ und das Bezugszeichen 200 als „hat nicht“ bzw. „does not have“ zu verstehen bzw. stellen dies dar.
Das Datenmodell von JSON-LD stellt eine Erweiterung bzw. Serialisierung des RDF- Modells dar. Somit kann in einer Ausführung die Roboterapplikation in einem RDF- Graphen representiert und dann zu JSON-LD serialisiert werden. Eine RDF- Serialisierung in N-QUADS Serialisierung wäre zum Beispiel:
_:b0 < http://schema.org/name> “Robot Application 1“. bzw.
_:b0 < http://schema.org/name> “Roboterapplikation 1“.
Obwohl in der vorhergehenden Beschreibung exemplarische Ausführungen erläutert wurden, sei darauf hingewiesen, dass eine Vielzahl von Abwandlungen möglich ist. So wurden vorstehend insbesondere zusätzlich englischsprachige Begriffe angegeben, da diese bei robotischen Anwendungen gebräuchlich(er) sind. 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. Bezuqszeichenliste
1 erster Roboter
2 weiterer Roboter 3 Steuerung
3.1 Mittel zum Erstellen eines Programms
100 „hat Namen“ („has Name“)
200 “hat nicht” („does not have“)
300 “ist vom Typ” („is of type“)

Claims

Patentansprüche Verfahren zum Erstellen eines Programms zur Durchführung einer Roboterapplikation, die mehrere Aktionen, insbesondere Bewegungen, eines ersten Roboters (1) umfasst, mit den Schritten:
Erfassen (S10) von Programmiereingaben zum Programmieren dieser Aktionen des ersten Roboters; und
Erstellen (S20) des Programms auf Basis dieser erfassten Programmiereingaben; wobei zum Erstellen des Programms für unterschiedliche Roboter, insbesondere durch einen Kontext, Eingabenamen einheitlich vorgegeben sind und die Programmiereingaben auf Basis von dem durch die jeweilige Programmiereingabe verwendeten dieser Eingabenamen und dem für diesen verwendeten Eingabenamen durch die jeweilige Programmiereingabe bestimmten Inhalt interpretiert werden, insbesondere mittels JSON-LD; und/oder wenigstens eine der Programmiereingaben wenigstens eine Angabe eines Koordinatenraums, insbesondere wenigstens eine Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen, eine Angabe eines Regelverfahrens des ersten Roboters, insbesondere eine Auswahl zwischen einem von mehreren vorgegebenen Regelverfahren, eine Angabe einer Bahn des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Bahnarten, eine Angabe einer Pose des ersten Roboters, insbesondere unter Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen für die Pose, eine Angabe einer Werkzeugaktion des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Werkzeugaktionen, und/oder eine Angabe einer Sensorart und/oder -aktion des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Sensorarten und/oder -aktionen, umfasst. Verfahren nach Anspruch 1 , dadurch gekennzeichnet, dass die Roboterapplikation mehrere Aktionen, insbesondere Bewegungen, wenigstens eines weiteren, von dem ersten Roboter verschiedenen, Roboters (2) umfasst und das Verfahren die Schritte umfasst: Erfassen von Programmiereingaben zum Programmieren dieser Aktionen des weiteren Roboters; und
Erstellen des Programms auf Basis dieser erfassten Programmiereingaben; wobei diese Programmiereingaben auf Basis von dem durch die jeweilige Programmiereingabe verwendeten der, insbesondere durch den Kontext, einheitlich vorgegebenen Eingabenamen und dem für diesen verwendeten Eingabenamen durch die jeweilige weitere Programmiereingabe bestimmten Inhalt interpretiert werden, insbesondere mittels JSON-LD; und/oder wenigstens eine der Programmiereingaben wenigstens eine Angabe eines Koordinatenraums, insbesondere wenigstens eine Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen, eine Angabe eines Regelverfahrens des weiteren Roboters, insbesondere eine Auswahl zwischen einem von mehreren vorgegebenen Regelverfahren, eine Angabe einer Bahn des weiteren Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Bahnarten, eine Angabe einer Pose des weiteren Roboters, insbesondere unter Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen für die Pose, eine Angabe einer Werkzeugaktion des weiteren Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Werkzeugaktionen, und/oder eine Angabe einer Sensorart und/oder -aktion des weiteren Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Sensorarten und/oder -aktionen, umfasst. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Eingabenamen durch Angabe eines Kontexts, insbesondere durch Angabe eines Typs innerhalb eines angegebenen Kontextes und/oder mittels JSON-LD, einheitlich vorgegeben sind, insbesondere werden. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass beim Erstellen des Programms wenigstens eine der programmierten Aktionen mithilfe einer Zustandsmaschine implementiert wird. Verfahren zur Durchführung einer Roboterapplikation, die mehrere Aktionen, insbesondere Bewegungen, eines ersten Roboters umfasst, mit den Schritten:
Erstellen eines Programms nach einem der vorhergehenden Ansprüche; und Ausführen dieses erstellten Programms mithilfe des ersten Roboters, insbesondere auch mithilfe des weiteren Roboters. System zum Erstellen eines Programms zur Durchführung einer Roboterapplikation, die mehrere Aktionen, insbesondere Bewegungen, eines ersten Roboters umfasst, insbesondere System zur Durchführung der Roboterapplikation, wobei das System zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche eingerichtet ist und/oder aufweist:
- Mittel zum Erfassen von Programmiereingaben zum Programmieren dieser Aktionen des ersten Roboters; und
- Mittel zum Erstellen des Programms auf Basis dieser erfassten Programmiereingaben; wobei zum Erstellen des Programms für unterschiedliche Roboter, insbesondere durch einen Kontext, Eingabenamen einheitlich vorgegeben sind und das Mittel zum Erstellen des Programms Mittel zum Interpretieren der Programmiereingaben auf Basis von dem durch die jeweilige Programmiereingabe verwendeten Eingabenamen und dem für diesen verwendeten Eingabenamen durch die jeweilige Programmiereingabe bestimmten Inhalt, insbesondere mittels JSON-LD, aufweist; und/oder wenigstens eine der Programmiereingaben wenigstens eine Angabe eines Koordinatenraums, insbesondere wenigstens eine Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen, eine Angabe eines Regelverfahrens des ersten Roboters, insbesondere eine Auswahl zwischen einem von mehreren vorgegebenen Regelverfahren, eine Angabe einer Bahn des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Bahnarten, eine Angabe einer Pose des ersten Roboters, insbesondere unter Auswahl zwischen einem von mehreren vorgegebenen Koordinatenräumen für die Pose, eine Angabe einer Werkzeugaktion des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Werkzeugaktionen, und/oder eine Angabe einer Sensorart und/oder -aktion des ersten Roboters, insbesondere eine Auswahl zwischen einer von mehreren vorgegebenen Sensorarten und/oder -aktionen, umfassen. Computerprogramm oder Computerprogrammprodukt, wobei das Computerprogramm oder Computerprogrammprodukt, insbesondere auf einem computerlesbaren und/oder nicht-flüchtigen Speichermedium gespeicherte, Anweisungen enthält, die bei der Ausführung durch einen oder mehrere Computer oder ein System nach Anspruch 6 den oder die Computer oder das System dazu veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 5 durchzuführen.
PCT/EP2023/055387 2022-04-06 2023-03-03 Durchführung einer roboterapplikation und erstellen eines programms hierfür WO2023194007A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102022203406.6A DE102022203406A1 (de) 2022-04-06 2022-04-06 Durchführung einer Roboterapplikation und Erstellen eines Programms hierfür
DE102022203406.6 2022-04-06

Publications (1)

Publication Number Publication Date
WO2023194007A1 true WO2023194007A1 (de) 2023-10-12

Family

ID=85556679

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2023/055387 WO2023194007A1 (de) 2022-04-06 2023-03-03 Durchführung einer roboterapplikation und erstellen eines programms hierfür

Country Status (2)

Country Link
DE (1) DE102022203406A1 (de)
WO (1) WO2023194007A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003108220A (ja) * 2001-09-28 2003-04-11 Omron Corp 制御プログラム開発支援方法及び装置
JP6958884B1 (ja) * 2021-06-15 2021-11-02 ソプラ株式会社 プログラムコード自動生成システム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE29605700U1 (de) 1996-03-27 1996-06-05 Siemens Ag Vorrichtung zum Übersetzen von eine Werkzeugmaschine, einen Roboter o.dgl. steuernden Programmanweisungen
DE102015116086A1 (de) 2015-09-23 2017-03-23 Universität Bayreuth Robotersteuerung
DE102017202439B4 (de) 2017-02-15 2022-03-31 Festo Se & Co. Kg Eingabeeinrichtung, Verfahren zur Bereitstellung von Bewegungsbefehlen an einen Aktor und Aktorsystem
DE102017216093B4 (de) 2017-09-12 2019-05-02 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur Parametrierung eines robotischen Manipulators
US20210129325A1 (en) 2019-10-31 2021-05-06 Automation Anywhere, Inc. Productivity plugin for integration with robotic process automation
US20210191367A1 (en) 2019-12-20 2021-06-24 UiPath, Inc. System and computer-implemented method for analyzing a robotic process automation (rpa) workflow
US20220067272A1 (en) 2020-09-01 2022-03-03 UiPath Inc. Robotic Process Automation Systems and Methods Using A Helper Spreadsheet

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003108220A (ja) * 2001-09-28 2003-04-11 Omron Corp 制御プログラム開発支援方法及び装置
JP6958884B1 (ja) * 2021-06-15 2021-11-02 ソプラ株式会社 プログラムコード自動生成システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GÜNTER SCHREIBER ET AL: "The Fast Research Interface for the KUKA Lightweight Robot", ICRA 2010 WORKSHOP ON INNOVATIVE ROBOT CONTROL ARCHITECTURES FOR DEMANDING (RESEARCH) APPLICATIONS, 3 May 2010 (2010-05-03), pages 15 - 21, XP055614534 *

Also Published As

Publication number Publication date
DE102022203406A1 (de) 2023-10-12

Similar Documents

Publication Publication Date Title
DE102012218297B4 (de) Verfahren zur dynamischen Optimierung einer Robotersteuerschnittstelle
EP2977149B1 (de) Verfahren und mittel zum auslegen und/oder betreiben eines roboters
DE112008003963B4 (de) System und Verfahren zur Off-line-Programmierung eines Industrieroboters
DE10352815B4 (de) Simulationsverfahren für eine Bearbeitung eines Werkstücks durch eine Werkzeugmaschine und korrespondierender Rechner
DE102017001131C5 (de) Verfahren und System zum Betreiben eines Roboters
DE102019206444A1 (de) Maschinelles Lernen einer Objekterkennung mithilfe einer robotergeführten Kamera
WO2017129352A1 (de) Verfahren und system zur bahnplanung eines redundanten roboters
WO2020216569A1 (de) Verfahren und system zum betreiben eines roboters
DE102014010638A1 (de) Verfahren und Vorrichtung zum Steuern eines Roboters
EP3374135B1 (de) Verfahren zum vereinfachten ändern von applikationsprogrammen zur steuerung einer industrieanlage
WO2017220199A1 (de) Konfigurieren und/oder steuern einer roboteranordnung
EP3710900B1 (de) Verfahren und system zum vorgeben bzw. lernen eines roboterbefehls
WO2023194007A1 (de) Durchführung einer roboterapplikation und erstellen eines programms hierfür
DE102019128583B4 (de) Optimierungsmodi für Steuerprogramme eines Robotermanipulators
DE102020103852B4 (de) Erzeugen und Optimieren eines Steuerprogramms für einen Robotermanipulator
DE112008003870T5 (de) Verfahren und System zum Steuern eines Industrieroboters in Übereinstimmung mit einem Bewegungssteuerungs-Parametersatz
DE102019219930B3 (de) Verfahren und System zum Steuern eines Roboters
EP4018275A1 (de) System und verfahren zur steuerung zumindest einer maschine, insbesondere eines kollektivs von maschinen
WO2019224224A1 (de) Verfahren und steuerung zum steuern eines roboters
WO2019243128A1 (de) Verfahren und system zum überführen eines endeffektors eines roboters zwischen einer endeffektorpose und einer weiteren endeffektorpose
DE102022112439B3 (de) Sicherer Roboter
DE102019213676B3 (de) Robotersteuerung
DE102022111226B3 (de) Gekapselte Sicherheit für den Betrieb eines Robotermanipulators
DE102018112647B4 (de) Verfahren zum Betreiben eines Roboters mittels eines speziellen Prozesskalküls
WO2022084452A1 (de) Verfahren zum betreiben eines automatisierungssystems einer maschine oder einer anlage

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23709943

Country of ref document: EP

Kind code of ref document: A1