WO2025149348A1 - Verfahren und system zum durchführen einer roboterapplikation - Google Patents
Verfahren und system zum durchführen einer roboterapplikationInfo
- Publication number
- WO2025149348A1 WO2025149348A1 PCT/EP2024/087508 EP2024087508W WO2025149348A1 WO 2025149348 A1 WO2025149348 A1 WO 2025149348A1 EP 2024087508 W EP2024087508 W EP 2024087508W WO 2025149348 A1 WO2025149348 A1 WO 2025149348A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- robot
- state
- action
- application
- arrangement
- 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
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Program-controlled manipulators
- B25J9/16—Program controls
- B25J9/1656—Program controls characterised by programming, planning systems for manipulators
Definitions
- the present invention relates to a method and system for carrying out a robot application and to a computer program or computer program product for carrying out the method.
- Claims 12, 13 represent a system or computer program or
- a method for performing a robot application comprises the step:
- the robot arrangement comprises one or more robots, wherein in a further development the robot(s) comprises (each) at least one robot arm and/or a stationary or mobile base, in particular a chassis.
- the robots in particular the robot arm(s)
- the present invention is particularly advantageous for such robots (assemblies), particularly due to their design and operating conditions.
- the method comprises the steps:
- the robot application comprises a plurality of application routines to be processed, in particular application routines which are to be processed during a regular or error-free or fault-free execution of the robot application and/or for carrying out the robot application or achieving a work result or process success of the robot application or whose processing is provided or planned, in particular necessary, during a regular or error-free or fault-free execution of the robot application and/or for carrying out the robot application or achieving a work result or process success of the robot application.
- the first state or event, or its presence or occurrence can advantageously trigger the first action, and a type of reversal of this (presence or occurrence of the) first state or event can trigger a further action, in particular at least partially reverse the first action.
- a first state or event in the form of a virtual laser (focal) point striking a workpiece can trigger a first action in the form of supplying energy to a robot-guided laser
- a complementary further state or event in the form of the virtual laser (focal) point no longer striking the workpiece can trigger a further action in the form of no energy being supplied to the laser, which reverses the first action.
- the or at least one of the further actions at least partially undoes the first action.
- tools can be activated and deactivated again, or the like, by the or the first and the or one or more further states or events.
- the first geometric condition has a predetermined geometric relationship, in one development a distance, between at least one robot-side reference, in one development at least one robot-side geometric primitive, and at least one environment-side or other robot-side reference, in one development at least one environment-side or other robot-side geometric primitive.
- the or at least one of the further geometric conditions has a predetermined geometric relationship, in one development a distance, between at least one robot-side reference, in one development at least one robot-side geometric primitive, and at least one environment-side or other robot-side reference, in one development at least one environment-side or other robot-side geometric primitive.
- condition can be programmed advantageously, in particular more simply and/or flexibly, and/or the actions can be triggered advantageously, in particular more simply and/or flexibly.
- the first action comprises specifying a value of an output of a robot controller or a flag and/or executing, preferably calling, a routine or method of a robot program and/or actuating, preferably activating, or not actuating, preferably Deactivation of a device for carrying out the robot application, which in a further development is controlled by the robot arrangement or separate from the robot arrangement.
- the first state in a further development the first event, is defined on the basis of a user input
- the method for carrying out the robot application comprises (the step) that the first state or event is defined on the basis of a user input.
- the or at least one of the further states in a further development the or at least one of the further event(s), is defined on the basis of a user input
- the method for carrying out the robot application comprises (the step) that the further state or the or at least one of the further states or event(s) is defined on the basis of a user input.
- the method for carrying out the robot application comprises (the step) that the or at least one of the further action(s) is specified on the basis of a user input.
- the robot arrangement for carrying out the robot application it is cyclically checked whether the first state, in a further development the first event, is present, in a further development the first state or the first event has occurred, and in a Further training, preferably every time this review shows that the first condition, in a further training the first event, preferably in the first observation period, preferably since the last review, is present, in a further training the first action is triggered.
- a system in particular hardware and/or software, in particular program technology, is set up to carry out a method described here and/or comprises:
- system or its means comprises: Means for initiating at least one of the plurality of application routines to be executed, which comprises the application routines to be executed by the robot application, based on the first action.
- system or its means has:
- system or its means in one embodiment comprises:
- a means within the meaning of the present invention can be designed in hardware and/or software, in particular at least one, preferably data- or signal-connected, especially digital, processing unit, especially microprocessor unit (CPU), graphics card (GPU) or the like, and/or one or more programs or program modules, preferably with a memory and/or bus system.
- the processing unit can be designed to execute commands implemented as a program stored in a memory system, to acquire input signals from a data bus and/or to transmit 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.
- a computer program product can have, in particular be, a storage medium, in particular a computer-readable and/or non-volatile one, for storing a program or instructions or with a program or instructions stored thereon.
- execution of this program or these instructions by a system or a controller, in particular a computer or an arrangement of multiple computers causes the system or the controller, in particular the computer(s), to execute a method described here or one or more of its steps, or the program or instructions are configured to do so.
- one or more, in particular all, steps of the method are fully or partially computer-implemented or one or more, in particular all, steps of the method are fully or partially automated, in particular by the system or its means.
- the system comprises the robot assembly and/or (robot assembly) controller and/or device(s) to be (de)activated for carrying out the robot application.
- operating a robot arrangement to perform a robot application comprises controlling the robot arrangement and/or moving the robot arrangement, preferably by means of its drives.
- Fig. 1 a system for performing a robot application according to embodiments of the present invention.
- Fig. 2 a method for performing the robot application according to embodiments of the present invention.
- Fig. 1 , 2 show a system and method for performing a robot application according to various embodiments of the present invention.
- the robot application comprises, in one embodiment, a gripping of objects 10, 11 from a container 2 by means of a robot arm 30 of a robot arrangement using a determination of gripping positions using a camera 4 and is programmed by a robot program which, among other things, includes the instructions if (distance(gripper.surface, camera.field of view) > 0.001 AND
- ⁇ includes.
- a first geometric condition for the robot arrangement is specified, which has a distance between a robot-side reference and an environment-side reference in the form of a predetermined minimum distance of 0.001 mm between a surface of the gripper 31 of the robot 30 and a field of view of the camera 4.
- Jf (distance(gripper.surface, camera.field of view) > 0.001 AND NOT cameraTriggered 1 a first state or a first event for the robot arrangement is defined using a logical AND combination of this predefined first geometric condition and an additional predefined condition in the form of a switched off flag “cameraTriggered 1” .
- a further geometric condition for the robot arrangement is specified by “(distance(gripper.surface, camera.field of view) ⁇ 0.001” and a further state or event for the robot arrangement is defined by “if (distance(gripper.surface, camera.field of view) ⁇ 0.001 AND cameraTriggered 1” using an AND combination of this specified further geometric condition and an additional specified condition in the form of the switched-on flag “cameraTriggered 1” .
- step S10 during operation of the robot arrangement for carrying out the robot application, it is checked cyclically for the first and further state or event whether this first or further state or event is present or, in an execution since the last check, has occurred.
- a first action is triggered (Fig. 2: S20), which is predefined for the first state or event.
- step S10 If the check shows that neither the first nor the further state or event exists or has occurred, for example because the gripper surface is at a sufficient distance from the camera field of view, but an image has already been taken and a new gripping position has been determined, none of the actions are triggered, but the check of step S10 is repeated.
- This example illustrates the triggering of new images by cameras during bin picking.
- the images should only be taken when the gripper is no longer in the camera's field of view to avoid false detections.
- a further condition (cameraTriggered) is added in addition to the specified first or subsequent geometric condition. This means that the first action is only triggered once, when the gripper first leaves the camera's field of view. This allows for better recognition of possible components and the determination of possible gripping positions more reliably and quickly.
- the re-entry of the gripper into the camera's field of view can be used to reset the additional condition (cameraTriggered).
- Event ('else') and a first action specified for the first state or event ('SetDigitalOutputC $OUT[35]', TRUE') and a further action specified for the further state or event ('SetDigitalOutputC $OUT[35]', FALSE"), which undoes the first action, can be programmed:
- the output signal is set to this value or this value is maintained, whereby the laser (beam) is no longer supplied with energy (the return arrow to step S10 without executing step S20 or S30 in Fig. 2 can be omitted in this modification, just like gripper 31, camera 4 and container 2 in Fig. 1, since one of the two conditions is always present with each new check, cf. "if... else").
- This makes it possible to describe or program in a simple and flexible way that the laser point is or will only be activated when it hits the workpiece and is or will be deactivated otherwise. In the situation of Fig.
- the laser 5 would be activated by switching on the output signal $OUT[35] and would be deactivated again - again independent of the path - as soon as the virtual laser (focal) point of the laser 5 no longer hits the workpiece 6.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
Ein Verfahren zum Durchführen einer Roboterapplikation weist die Schritte auf: Betreiben einer Roboteranordnung zum Durchführen der Roboterapplikation; Überprüfen während dieses Betriebs der Roboteranordnung, ob ein erster Zustand vorliegt, der mithilfe einer vorgegebenen ersten geometrischen Bedingung für die Roboteranordnung definiert ist; und Auslösen einer ersten Aktion, die für den erste Zustand vorgegeben ist, falls diese Überprüfung ergibt, dass der erste Zustand vorliegt. Die Erfindung betrifft außerdem ein System bzw. Computerprogramm(produkt).
Description
Beschreibung
Verfahren und System zum Durchführen einer Roboterapplikation
Die vorliegende Erfindung betrifft ein Verfahren und System zum Durchführen einer Roboterapplikation sowie ein Computerprogramm bzw. Computerprogrammprodukt zur Durchführung des Verfahrens.
Nach betriebsinterner Praxis ist es bekannt, abzuarbeitende Applikationsroutinen von Roboterapplikationen mittels bahnbezogener Schaltpunkte zu initiieren: dabei bewirkt beispielsweise das Erreichen eines Bahnpunktes, dass eine Routine eines Roboterprogramms aufgerufen oder ein Ausgang einer Robotersteuerung gesetzt wird, der seinerseits zum Beispiel ein robotergeführtes Werkzeug (de)aktiviert oder dergleichen.
Aufgabe der vorliegenden Erfindung ist es, das Durchführen von Roboterapplikationen zu verbessern.
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Ansprüche 12, 13 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 weist ein Verfahren zum Durchführen einer Roboterapplikation den Schritt auf:
- Betreiben einer Roboteranordnung zum Durchführen der Roboterapplikation.
Die Roboteranordnung weist in einer Ausführung einen oder mehrere Roboter auf, wobei der bzw. einer oder mehrere der Roboter in einer Weiterbildung (jeweils) wenigstens einen Roboterarm und/oder eine stationäre oder mobile Basis, insbesondere ein Fahrwerk, aufweist bzw. aufweisen. In einer Ausführung weist (einer oder mehrere) der Roboter, insbesondere der Roboterarm(e), (jeweils) wenigstens drei, insbesondere wenigstens sechs, in einer Ausführung wenigstens sieben, (Bewegungs)Achsen bzw. translatorische und/oder rotatorische Gelenke auf, die durch, vorzugsweise elektromotorische, Antriebe des Roboters verstellbar sind bzw.
verstellt werden, um den Roboter zu bewegen. Für solche Roboter(anordnungen) ist die vorliegende Erfindung, insbesondere aufgrund von deren Aufbau und Einsatzbedingungen, besonders vorteilhaft.
Nach einer Ausführung der vorliegenden Erfindung weist das Verfahren die Schritte auf:
- Überprüfen während dieses Betriebs der Roboteranordnung, ob ein Zustand, in einer Weiterbildung ein Ereignis („event“), vorliegt, in einer Ausführung ob der Zustand bzw. das Ereignis eingetreten ist; und
- Auslösen einer Aktion, die für diesen Zustand bzw. dieses Ereignis vorgegeben ist, falls diese Überprüfung ergibt, dass dieser Zustand bzw. dieses Ereignis vorliegt bzw. eingetreten ist, wobei der Zustand bzw. das Ereignis mithilfe einer vorgegebenen geometrischen Bedingung für die Roboteranordnung definiert ist und diese(r/s) Zustand, Ereignis, Bedingung bzw. Aktion ohne Beschränkung der Allgemeinheit als erste(s) Zustand, Ereignis, Bedingung bzw. Aktion bezeichnet werden, was keine zeitliche oder hierarchische Position bzw. Ordnung implizieren soll.
In einer Weiterbildung wird bei diesem Überprüfen, ob ein erstes Ereignis eingetreten ist, überprüft, ob das erste Ereignis innerhalb eines (ersten) (Beobachtungs)Zeitraums eingetreten ist, in einer Ausführung, ob das erste Ereignis seit Beginn der Roboterapplikation bzw. des Betreibens der Roboteranordnung zum Durchführen der Roboterapplikation oder seit einem vorangegangenen, in einer Weiterbildung dem letzten (durchgeführten) bzw. (unmittelbar) vorhergehenden Überprüfen(, ob ein bzw. das erste(s) Ereignis eingetreten ist) eingetreten ist, wobei die erste Aktion, die für das erste Ereignis vorgegeben ist, ausgelöst wird, falls diese Überprüfung ergibt, dass das erste Ereignis innerhalb dieses (ersten) (Beobachtungs)Zeitraums eingetreten ist.
In einer Ausführung weist das Verfahren für ein oder mehrere weitere Zustände, in einer Weiterbildung ein oder mehrere weitere Ereignisse, jeweils die Schritte auf:
- Überprüfen während des Betriebs der Roboteranordnung zum Durchführen der Roboterapplikation, ob der jeweilige weitere Zustand bzw. das jeweilige weitere Ereignis vorliegt, in einer Ausführung eingetreten ist, der bzw. das jeweils mithilfe einer vorgegebenen weiteren geometrischen Bedingung für die Roboteranordnung definiert ist; und
Auslösen einer weiteren Aktion, die für diesen weiteren Zustand bzw. dieses weitere Ereignis vorgegeben ist, falls diese Überprüfung ergibt, dass dieser weitere Zustand bzw. dieses weitere Ereignis vorliegt bzw. eingetreten ist.
In einer Weiterbildung wird für das bzw. eines oder mehrere dieser Ereignisse (jeweils) bei diesem Überprüfen, ob das jeweilige weitere Ereignis eingetreten ist, überprüft, ob das jeweilige weitere Ereignis innerhalb eines (weiteren) (Beobachtungs)Zeitraums eingetreten ist, in einer Ausführung, ob das jeweilige weitere Ereignis seit Beginn der Roboterapplikation bzw. des Betreibens der Roboteranordnung zum Durchführen der Roboterapplikation oder seit einem vorangegangenen, in einer Weiterbildung dem letzten (durchgeführten) bzw. (unmittelbar) vorhergehenden Überprüfen(, ob das jeweilige weitere Ereignis eingetreten ist) eingetreten ist, wobei die jeweilige weitere Aktion, die für dieses weitere Ereignis vorgegeben ist, ausgelöst wird, falls diese Überprüfung ergibt, dass das jeweilige weitere Ereignis innerhalb dieses (jeweiligen weiteren) (Beobachtungs)Zeitraums eingetreten ist.
Hierdurch können insbesondere im Vergleich zu bahnbezogenen Schaltpunkten abzuarbeitende Applikationsroutinen von Roboterapplikationen besonders vorteilhaft, insbesondere einfach(er) und/oder flexibel bzw. flexibler, programmiert und/oder ausgelöst werden.
Entsprechend umfasst in einer besonders bevorzugten Ausführung die Roboterapplikation mehrere abzuarbeitende Applikationsroutinen, insbesondere Applikationsroutinen, die bei einer regulären bzw. fehler- bzw. störungsfreien Durchführung der Roboterapplikation und/oder zum Durchführen der Roboterapplikation bzw. Erzielen eines Arbeitsergebnisses bzw. Prozesserfolgs der Roboterapplikation abzuarbeiten sind bzw. deren Abarbeitung bei einer regulären bzw. fehler- bzw. störungsfreien Durchführung der Roboterapplikation und/oder zum Durchführen der Roboterapplikation bzw. Erzielen eines Arbeitsergebnisses bzw. Prozesserfolgs der Roboterapplikation vorgesehen bzw. geplant, insbesondere erforderlich, ist.
In einer Ausführung wird wenigstens eine dieser abzuarbeitenden Applikationsroutinen auf Basis der ersten Aktion initiiert, insbesondere ausgelöst. In einer Weiterbildung wird eine, vorzugsweise andere, der abzuarbeitenden
Applikationsroutinen auf Basis (einer) der weiteren Aktion(en) initiiert, insbesondere ausgelöst, in einer Ausführung dieser Weiterbildung wird eine weitere, vorzugsweise andere, der abzuarbeitenden Applikationsroutinen auf Basis einer anderen der weiteren Aktionen initiiert, insbesondere ausgelöst.
Hierdurch können insbesondere im Vergleich zu bahnbezogenen Schaltpunkten diese abzuarbeitenden Applikationsroutinen besonders vorteilhaft, insbesondere einfach(er) und/oder flexibel bzw. flexibler, programmiert und/oder ausgelöst werden.
In einer Ausführung können der erste Zustand, in einer Weiterbildung das erste Ereignis, und der bzw. wenigstens einer der weitere(n) Zustände, in einer Weiterbildung das bzw. wenigstens eines der weitere(n) Ereignis(se), nicht gleichzeitig vorliegen, in einer Weiterbildung nicht gleichzeitig eintreten, sie können insbesondere komplementär zueinander sein bzw. der bzw. das erste und der bzw. das weitere Zustand bzw. Ereignis so definiert sein, dass ein Überprüfen, ob der bzw. das erste Zustand bzw. Ereignis vorliegt bzw. eingetreten ist, und ob der bzw. das weitere Zustand bzw. Ereignis vorliegt bzw. eingetreten ist, stets entweder ergibt, dass der bzw. das erste Zustand bzw. Ereignis vorliegt bzw. eingetreten ist, oder bzw. dann, wenn dieses Überprüfen ergibt, dass der bzw. das erste Zustand bzw. Ereignis nicht vorliegt bzw. eingetreten ist, ergibt, dass der bzw. das weitere Zustand bzw. Ereignis vorliegt bzw. eingetreten ist, beispielsweise „IF-ELSE“-artig bzw. in Pseudocode „IF erster Zustand (THEN) erste Aktion ELSE [=weiterer Zustand] weitere Aktion“. Dadurch kann in einer Ausführung vorteilhaft der erste Zustand bzw. das erste Ereignis bzw. dessen Vorliegen bzw. Eintreten die erste Aktion auslösen und eine Art Umkehrung dieses (Vorliegens bzw. Eintreten des) ersten Zustandes bzw. Ereignisses eine weitere Aktion auslösen, insbesondere die erste Aktion wenigstens teilweise wieder rückgängig machen. So kann zum Beispiel ein ersterAs Zustand bzw. Ereignis in Form eines Auftreffens eines virtuellen Laser(brenn)punktes auf ein Werkstück eine erste Aktion in Form einer Energieversorgung eines robotergeführten Lasers und ein hierzu komplementärerAs weitererAs Zustand bzw. Ereignis in Form eines Nicht(mehr)auftreffens des virtuellen Laser(brenn)punktes auf das Werkstück eine weitere Aktion in Form einer Nicht-Energieversorgung des Lasers auslösen, die die erste Aktion wieder rückgängig macht.
In einer Ausführung stimmen der erste Zustand, in einer Weiterbildung das erste Ereignis, und der bzw. wenigstens einer der weitere(n) Zustände, in einer Weiterbildung das bzw. wenigstens eines der weitere(n) Ereignis(se), wenigstens teilweise überein.
Dadurch können in einer Ausführung vorteilhaft der erste Zustand bzw. das erste Ereignis bzw. dessen Vorliegen bzw. Eintreten die erste Aktion auslösen, wobei gegebenenfalls aufgrund der wenigstens teilweisen Übereinstimmung auch der weitere Zustand bzw. das weitere Zustand (vorliegt bzw. eintritt und) eine weitere Aktion auslöst. Exemplarisch kann in obigem Beispiel ein ersterAs Zustand bzw. Ereignis in Form eines Auftreffens eines virtuellen Laser(brenn)punktes auf ein Werkstück eine erste Aktion in Form einer Energieversorgung eines robotergeführten Lasers und ein wenigstens teilweise übereinstimmenderAs weitererAs Zustand bzw. Ereignis in Form eines Auftreffens des virtuellen Laser(brenn)punktes innerhalb eines Mindestabstands eine weitere Aktion in Form einer abstandsspezifischen Vorgabe der Lasersollleistung auslösen.
In einer Ausführung macht die bzw. wenigstens eine der weitere(n) Aktion(en) die erste Aktion wenigstens teilweise rückgängig. We vorstehend bereits exemplarisch erläutert, können so durch den bzw. das erste(n) und den bzw. das bzw. ein(en) weitere(nAs) Zustand bzw. Ereignis Werkzeuge aktiviert und wieder deaktiviert werden oder dergleichen.
Hierdurch können jeweils Roboterapplikationen besonders vorteilhaft, insbesondere einfach(er) und/oder flexibel bzw. flexibler, programmiert und/oder durchgeführt werden.
In einer Ausführung ist der erste Zustand, in einer Weiterbildung das erste Ereignis, mithilfe einer Kombination von wenigstens zwei vorgegebenen Bedingungen definiert, wobei eine dieser Bedingungen die vorgegebene erste geometrische Bedingung für die Roboteranordnung aufweist, vorzugsweise ist, und wobei diese Kombination in einer Weiterbildung wenigstens eine logische UND-Verknüpfung und/oder wenigstens eine logische ODER-Verknüpfung und/oder wenigstens eine logische NICHT- Verknüpfung, vorzugsweise mit der erste geometrische Bedingung, aufweist. Zusätzlich oder alternativ ist in einer Ausführung der bzw. wenigstens einer der
weiteren Zustände, in einer Weiterbildung das bzw. wenigstens eines der weitere(n) Ereignis(se), mithilfe einer Kombination von wenigstens zwei vorgegebenen Bedingungen definiert, wobei eine dieser Bedingungen die (jeweilige) vorgegebene weitere geometrische Bedingung für die Roboteranordnung aufweist, vorzugsweise ist, und wobei diese Kombination in einer Weiterbildung wenigstens eine logische UND- Verknüpfung und/oder wenigstens eine logische ODER-Verknüpfung und/oder wenigstens eine logische NICHT-Verknüpfung, vorzugsweise mit der jeweiligen vorgegebenen weiteren geometrische Bedingung, aufweist.
Hierdurch können jeweils Roboterapplikationen besonders vorteilhaft, insbesondere einfach(er) und/oder flexibel bzw. flexibler, programmiert und/oder durchgeführt werden.
In einer Ausführung weist die erste geometrischen Bedingung eine vorgegebene geometrische Beziehung, in einer Weiterbildung einen Abstand, zwischen wenigstens einer roboterseitigen Referenz, in einer Weiterbildung wenigstens einem roboterseitigen geometrischen Primitiv, und wenigstens einer umgebungsseitigen oder anderen roboterseitigen Referenz, in einer Weiterbildung wenigstens einem umgebungsseitigen oder anderen roboterseitigen geometrischen Primitiv, auf. Zusätzlich oder alternativ weist in einer Ausführung die bzw. wenigstens eine der weitere(n) geometrische(n) Bedingung eine vorgegebene geometrische Beziehung, in einer Weiterbildung einen Abstand, zwischen wenigstens einer roboterseitigen Referenz, in einer Weiterbildung wenigstens einem roboterseitigen geometrischen Primitiv, und wenigstens einer umgebungsseitigen oder anderen roboterseitigen Referenz, in einer Weiterbildung wenigstens einem umgebungsseitigen oder anderen roboterseitigen geometrischen Primitiv, auf.
Hierdurch können die Bedingung vorteilhaft, insbesondere einfach(er) und/oder flexibel bzw. flexibler, programmiert, und/oder die Aktionen vorteilhaft, insbesondere einfach(er) und/oder flexibel bzw. flexibler, ausgelöst werden.
In einer Ausführung weist die erste Aktion ein Vorgeben eines Wertes eines Ausgangs einer Robotersteuerung oder eines Flags und/oder ein Durchführen, vorzugsweise Aufrufen, einer Routine bzw. Methode eines Roboterprogramms und/oder eine Betätigung, vorzugsweise Aktivierung, oder Nichtbetätigung, vorzugsweise
Deaktivierung, einer, in einer Weiterbildung von der Roboteranordnung geführten oder von der Roboteranordnung separaten, Vorrichtung zum Durchführen der Roboterapplikation auf. Zusätzlich oder alternativ weist in einer Ausführung die bzw. wenigstens eine der weitere(n) Aktion(en) ein Vorgeben eines Wertes eines Ausgangs einer Robotersteuerung oder eines Flags und/oder ein Durchführen, vorzugsweise Aufrufen, einer Routine bzw. Methode eines Roboterprogramms und/oder eine Betätigung, vorzugsweise Aktivierung, oder Nichtbetätigung, vorzugsweise Deaktivierung, einer, in einer Weiterbildung von der Roboteranordnung geführten oder von der Roboteranordnung separaten, Vorrichtung zum Durchführen der Roboterapplikation auf. Das Vorgeben eines Wertes eines Ausgangs bzw. Flags kann insbesondere ein Umschalten auf diesen Wert (falls der Ausgang bzw. Flag diesen Wert (noch) nicht aufweist) oder ein Beibehalten dieses Wertes (falls der Ausgang bzw. Flag diesen Wert (bereits) aufweist) sein, so dass nach diesem Vorgeben der Ausgang bzw. Flag diesen Wert aufweist. Gleichermaßen kann das Durchführen einer Routine bzw. Methode eines Roboterprogramms ein Aufrufen der Routine bzw. Methode (falls die Routine bzw. Methode (noch) nicht ausgeführt wird) oder ein weiteres Durchführen der Routine bzw. Methode (falls die Routine bzw. Methode (bereits) ausgeführt wird) sein. Gleichermaßen kann die Betätigung einer Vorrichtung zum Durchführen der Roboterapplikation eine Aktivierung der Vorrichtung (falls die Vorrichtung (noch) nicht aktiviert ist) oder ein weiteres Betreiben der Vorrichtung (falls die Vorrichtung (bereits) aktiviert ist) sein bzw. die Nichtbetätigung einer Vorrichtung zum Durchführen der Roboterapplikation eine Deaktivierung der Vorrichtung (falls die Vorrichtung (noch) nicht deaktiviert ist) oder ein weiteres Nichtbetreiben der Vorrichtung (falls die Vorrichtung (bereits) deaktiviert ist) sein.
Hierdurch können jeweils Roboterapplikationen besonders vorteilhaft, insbesondere einfach(er) und/oder flexibel bzw. flexibler, programmiert und/oder durchgeführt werden.
In einer Ausführung ist, in einer Weiterbildung wird, der erste Zustand, in einer Weiterbildung das erste Ereignis, auf Basis einer Benutzereingabe definiert, in einer Weiterbildung umfasst das Verfahren zum Durchführen der Roboterapplikation (den Schritt), dass der bzw. das erste Zustand bzw. Ereignis auf Basis einer Benutzereingabe definiert wird.
Zusätzlich oder alternativ ist, in einer Weiterbildung wird, in einer Ausführung der bzw. wenigstens einer der weiteren Zustände, in einer Weiterbildung das bzw. wenigstens eines der weitere(n) Ereignis(se), auf Basis einer Benutzereingabe definiert, in einer Weiterbildung umfasst das Verfahren zum Durchführen der Roboterapplikation (den Schritt), dass der weitere Zustand bzw. das bzw. wenigstens einerAs der weitere(n) Zustände bzw. Ereignis(se) auf Basis einer Benutzereingabe definiert wird.
Zusätzlich oder alternativ ist, in einer Weiterbildung wird, in einer Ausführung die erste geometrische Bedingung auf Basis einer Benutzereingabe vorgegeben, in einer Weiterbildung umfasst das Verfahren zum Durchführen der Roboterapplikation (den Schritt), dass die erste geometrische Bedingung auf Basis einer Benutzereingabe vorgegeben wird.
Zusätzlich oder alternativ ist, in einer Weiterbildung wird, in einer Ausführung die bzw. wenigstens eine der weitere(n) geometrische(n) Bedingung(en) auf Basis einer Benutzereingabe vorgegeben, in einer Weiterbildung umfasst das Verfahren zum Durchführen der Roboterapplikation (den Schritt), dass die bzw. wenigstens eine der weitere(n) geometrische(n) Bedingung(en) auf Basis einer Benutzereingabe vorgegeben wird.
Zusätzlich oder alternativ ist, in einer Weiterbildung wird, in einer Ausführung die erste Aktion auf Basis einer Benutzereingabe vorgegeben, in einer Weiterbildung umfasst das Verfahren zum Durchführen der Roboterapplikation (den Schritt), dass die erste Aktion auf Basis einer Benutzereingabe vorgegeben wird.
Zusätzlich oder alternativ ist, in einer Weiterbildung wird, in einer Ausführung die bzw. wenigstens eine der weitere(n) Aktion(en) auf Basis einer Benutzereingabe vorgegeben, in einer Weiterbildung umfasst das Verfahren zum Durchführen der Roboterapplikation (den Schritt), dass die bzw. wenigstens eine der weitere(n) Aktion(en) auf Basis einer Benutzereingabe vorgegeben wird.
Zusätzlich oder alternativ wird in einer Ausführung während des Betriebs der Roboteranordnung zum Durchführen der Roboterapplikation zyklisch überprüft, ob der erste Zustand, in einer Weiterbildung das erste Ereignis, vorliegt, in einer Weiterbildung der erste Zustand bzw. das erste Ereignis eingetreten ist, und in einer
Weiterbildung, vorzugsweise jedes Mal, wenn diese Überprüfung ergibt, dass der erste Zustand, in einer Weiterbildung das erste Ereignis, vorzugsweise in dem ersten Beobachtungszeitraum, vorzugsweise seit der letzten Überprüfung, vorliegt, in einer Weiterbildung eingetreten ist, die erste Aktion ausgelöst.
Zusätzlich oder alternativ wird in einer Ausführung während des Betriebs der Roboteranordnung zum Durchführen der Roboterapplikation zyklisch überprüft, ob der bzw. wenigstens einer der weiteren Zustände, in einer Weiterbildung das bzw. wenigstens eines der weitere(n) Ereignis(se), vorliegt, in einer Weiterbildung eingetreten ist, und in einer Weiterbildung, vorzugsweise jedes Mal, wenn diese Überprüfung ergibt, dass der jeweilige weitere Zustand, in einer Weiterbildung das jeweilige weitere Zustand, vorzugsweise in dem jeweiligen weiteren Beobachtungszeitraum, vorzugsweise seit der letzten Überprüfung, vorliegt, in einer Weiterbildung eingetreten ist, die jeweilige weitere Aktion ausgelöst.
Hierdurch können die Roboterapplikationen jeweils besonders vorteilhaft, insbesondere einfach(er) und/oder flexibel bzw. flexibler, programmiert und/oder durchgeführt werden.
Nach einer Ausführung der vorliegenden Erfindung ist ein System, insbesondere hard- und/oder software-, insbesondere programmtechnisch, zur Durchführung eines hier beschriebenen Verfahrens eingerichtet und/oder weist auf:
- Mittel zum Betreiben einer Roboteranordnung zum Durchführen der Roboterapplikation;
- Mittel zum, vorzugsweise zyklischen, Überprüfen während dieses Betriebs der Roboteranordnung, ob ein erster Zustand, in einer Weiterbildung ein erstes Ereignis, vorliegt, in einer Ausführung der erste Zustand, in einer Weiterbildung das erste Ereignis, eingetreten ist, welcher/-s mithilfe einer vorgegebenen ersten geometrischen Bedingung für die Roboteranordnung definiert ist; und
- Mittel zum Auslösen einer ersten Aktion, die für den bzw. das erste(n) Zustand bzw. Ereignis vorgegeben ist, falls diese Überprüfung ergibt, dass der bzw. das erste Zustand bzw. Ereignis vorliegt bzw. eingetreten ist.
In einer Ausführung weist das System bzw. sein(e) Mittel auf:
Mittel zum Initiieren wenigstens einer der mehreren abzuarbeitenden Applikationsroutinen, die die Roboterapplikation abzuarbeitende Applikationsroutinen umfasst, auf Basis der ersten Aktion.
Zusätzlich oder alternativ weist das System bzw. sein(e) Mittel in einer Ausführung für wenigstens einen weiteren Zustand, in einer Weiterbildung wenigstens ein weiteres Ereignis, welcherAs mithilfe einer vorgegebenen weiteren geometrischen Bedingung für die Roboteranordnung definiert ist, auf:
- Mittel zum, vorzugsweise zyklischen, Überprüfen während des Betriebs der Roboteranordnung zum Durchführen der Roboterapplikation, ob der bzw. das (jeweilige) weitere Zustand bzw. Ereignis vorliegt bzw. eingetreten ist; und
- Mittel zum Auslösen einer weiteren Aktion, die für diesenAs weitere(n) Zustand bzw. Ereignis vorgegeben ist, falls diese Überprüfung ergibt, dass dieserAs weitere Zustand bzw. Ereignis vorliegt bzw. eingetreten ist.
In einer Weiterbildung weist das System bzw. sein(e) Mittel auf:
- Mittel zum Initiieren wenigstens einer der mehreren abzuarbeitenden Applikationsroutinen, die die Roboterapplikation abzuarbeitende Applikationsroutinen umfasst, auf Basis (wenigstens einer) der weiteren Aktion(en).
Zusätzlich oder alternativ weist das System bzw. sein(e) Mittel in einer Ausführung auf:
- Mittel zum Definieren des ersten und/oder (wenigstens eines der) weiteren
Zustandes bzw. Zustände bzw. Ereignis(ses) auf Basis einer Benutzereingabe;
- Mittel zum Vorgeben der ersten und/oder (wenigstens eines der) weiteren geometrischen Bedingung(en) und/oder Aktion(en) auf Basis einer Benutzereingabe.
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 die Roboterapplikation durchführen bzw. die Roboteranordnung (hierzu) betreiben 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. eine Steuerung, insbesondere einen Computer oder eine Anordnung von mehreren Computern, das System bzw. die Steuerung, insbesondere 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 sind ein oder mehrere, insbesondere alle, Schritte des Verfahrens vollständig oder teilweise computerimplementiert bzw. 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 die Roboteranordnung und/oder (Roboteranordnungs)Steuerung und/oder zu (de)aktivierende Vorrichtung(en) zum Durchführen der Roboterapplikation auf.
In einer Ausführung umfasst ein Betreiben einer Roboteranordnung zum Durchführen einer Roboterapplikation ein (An)Steuern der Roboteranordnung und/oder ein Bewegen der Roboteranordnung, vorzugsweise mittels derer Antriebe.
Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:
Fig. 1 : ein System zum Durchführen einer Roboterapplikation nach Ausführungen der vorliegenden Erfindung; und
Fig. 2: ein Verfahren zum Durchführen der Roboterapplikation nach Ausführungen der vorliegenden Erfindung.
Fig. 1 , 2 zeigen ein System bzw. Verfahren zum Durchführen einer Roboterapplikation nach verschiedenen Ausführungen der vorliegenden Erfindung.
Die Roboterapplikation umfasst in einem Ausführungsbeispiel ein Greifen von Gegenständen 10, 11 aus einem Behälter 2 mittels eines Roboterarms 30 einer Roboteranordnung unter Verwendung einer Bestimmung von Greifpositionen mithilfe einer Kamera 4 und ist durch ein Roboterprogramm programmiert, das unter anderem die Anweisungen if (distance(Greifer.Oberfläche, Kamera. Sichtfeld) > 0.001 AND
NOT cameraTriggered {
BildAufnehmenO; cameraTriggered := True;
BestimmeNeueGreifpositionO;
} if (distance(Greifer.Oberfläche, Kamera. Sichtfeld) < 0.001 AND cameraTriggered { cameraTriggered := False;
} umfasst.
Durch „(distance(Greifer.Oberfläche, Kamera. Sichtfeld) > 0.001“ ist eine erste geometrische Bedingung für die Roboteranordnung vorgegeben, die einen Abstand zwischen einer roboterseitigen Referenz und einer umgebungsseitigen Referenz in Form eines vorgegebenen Mindestabstands von 0,001 mm zwischen einer Oberfläche des Greifers 31 des Roboters 30 und einem Sichtfeld der Kamera 4 aufweist.
Durch Jf (distance(Greifer.Oberfläche, Kamera. Sichtfeld) > 0.001 AND NOT cameraTriggered1 ist mithilfe einer logischen UND-Kombination dieser vorgegebenen ersten geometrischen Bedingung und einer zusätzlichen vorgegebenen Bedingung in Form eines ausgeschalteten Flags „cameraTriggered1 ein erster Zustand bzw. ein erstes Ereignis für die Roboteranordnung definiert.
Analog hierzu ist durch „(distance(Greifer.Oberf lache, Kamera. Sichtfeld) < 0.001“ eine weitere geometrische Bedingung für die Roboteranordnung vorgegeben und durch „if (distance(Greifer.Oberfläche, Kamera. Sichtfeld) < 0.001 AND cameraTriggered1 mithilfe einer UND-Kombination dieser vorgegebenen weiteren geometrischen Bedingung und einer zusätzlichen vorgegebenen Bedingung in Form des eingeschalteten Flags „cameraTriggered1 ein weiterer Zustand bzw. ein weiteres Ereignis für die Roboteranordnung definiert.
In diesem Beispiel schließen der bzw. das erste und weitere Zustand bzw. Ereignis einander aus.
In einem Schritt S10 wird während eines Betreibens bzw. Betriebs der Roboteranordnung zum Durchführen der Roboterapplikation für den bzw. das erste und weitere Zustand bzw. Ereignis jeweils zyklisch überprüft, ob dieserAs erste bzw. weitere Zustand bzw. Ereignis vorliegt bzw., in einer Ausführung seit der letzten Überprüfung, eingetreten ist.
Falls diese Überprüfung ergibt, dass der bzw. das erste Zustand bzw. Ereignis vorliegt bzw. eingetreten ist (S10: „2“), wird eine erste Aktion ausgelöst (Fig. 2: S20), die für den bzw. das erste Zustand bzw. Ereignis vorgegeben ist. Diese erste Aktion umfasst eine Betätigung bzw. Aktivierung einer von der Roboteranordnung separaten Vorrichtung zum Durchführen der Roboterapplikation in Form eines Aufnehmens eines Bildes mittels der Kamera 4 (,,BildAufnehmen();“), ein Einschalten des Flags „cameraTriggered“ („cameraTriggered := True;“) und ein Aufrufen einer Subroutine des Roboterprogramms zur Bestimmung einer Greifposition auf Basis dieses mithilfe der Kamera 4 aufgenommenen Bildes (,,BestimmeNeueGreifposition();“).
Falls diese Überprüfung hingegen ergibt, dass der bzw. das weitere Zustand bzw.
Ereignis vorliegt bzw. eingetreten ist (S10: „3“), wird eine weitere Aktion ausgelöst (Fig.
2: S30), die für den bzw. das weitere(n) Zustand bzw. Ereignis vorgegeben ist. Diese weitere Aktion umfasst ein Ausschalten des Flags
„cameraTriggered“ („cameraTriggered := False;“) und macht die erste Aktion teilweise rückgängig.
Falls die Überprüfung ergibt, dass weder der bzw. das erste noch der bzw. das weitere Zustand bzw. Ereignis vorliegt bzw. eingetreten ist, weil beispielsweise zwar die Greiferoberfläche ausreichenden Abstand zum Kamerasichtfeld aufweist, aber bereits ein Bild aufgenommen und eine neue Greifposition bestimmt worden ist, wird keine der Aktionen ausgelöst, sondern die Überprüfung des Schrittes S10 wiederholt.
Dieses Beispiel illustriert das Triggern von neuen Aufnahmen durch Kameras beim Bin Picking. Die Aufnahmen sollen erst durchgeführt werden, wenn der Greifer nicht mehr im Sichtfeld der Kamera ist, um fehlerhafte Erkennungen zu vermeiden.
Aufgrund von Taktzeit ist das Anfahren einer separaten Roboterpose, in welcher der Greifer außerhalb des Sichtfelds der Kamera ist, nachteilig. Für die Beschreibung der Zustände bzw. Ereignisse wird neben der vorgegebenen ersten bzw. weiteren geometrischen Bedingung noch eine weitere Bedingung (cameraTriggered) hinzugefügt, sodass die erste Aktion jeweils nur einmal beim erstmaligen Verlassen des Sichtfelds der Kamera durch den Greifer ausgelöst und damit die möglichen Bauteile besser erkannt und mögliche Greifpositionen zuverlässig(er) und rasch(er) bestimmt werden. Für das Zurücksetzen der weiteren Bedingung (cameraTriggered) kann der erneute Eintritt des Greifers in das Sichtfeld der Kamera verwendet werden.
In einer in Fig. 1 gestrichelt angedeuteten Abwandlung, in der Greifer 31 , Kamera 4 und Behälter 2 wegzudenken ist, kann analog beispielsweise das bereits erläuterte Beispiel eine (Nicht)Energiversorgung eines robotergeführten Lasers 5, der eine roboter(anordnungs)geführte Vorrichtung zum Durchführen einer Roboterapplikation darstellt und in Fig. 1 gestrichelt dargestellt ist, infolge eines (Nicht)auftreffens eines virtuellen Laser(brenn)punktes auf ein Fig. 1 gestrichelt dargestelltes Werkstück 6 durch einen ersten Zustand bzw. ein erstes Ereignis (,,(distance(VirtuellerLaserpunkt, Werkstück) < 0.0001“), ein hierzu komplementärer/-s weiterer/-s Zustand bzw.
Ereignis („eise“) und eine für den bzw. das erste Zustand bzw. Ereignis vorgegebene erste Aktion („SetDigitalOutputC $OUT[35]’, TRUE') und eine für den bzw. das weitere(n) Zustand bzw. Ereignis vorgegebene weitere Aktion („SetDigitalOutputC
$OUT[35]’, FALSE“), welche die erste Aktion rückgängig macht, programmiert werden bzw. sein:
If (distance(VirtuellerLaserpunkt, Werkstück) < 0.0001) SetDigitalOutput(’ $OUT[35]’, TRUE); eise SetDigitalOutputC $OUT[35]’, FALSE);
Somit wird überprüft, ob die Distanz zwischen dem virtuellen Laserpunkt und dem Werkstück kleiner als ein vorgegebener Wert ist. Falls dies der Fall ist (Fig. 2: S10: „2“), wird ein aktiver, beispielsweise positiver, Wert des digitalen Ausgangssignals $OUT[35] vorgegeben d.h. das Ausgangssignal auf diesen Wert gesetzt oder dieser Wert beibehalten(S20), wodurch der Laser(strahl) mit Energie versorgt wird. Andernfalls (Fig. 2: S10: „3“), wird ein passiver Wert des digitalen Ausgangssignals $OUT[35], beispielsweise ein negativer Wert oder Null, vorgegeben, d.h. das Ausgangssignal auf diesen Wert gesetzt oder dieser Wert beibehalten, wodurch der Laser(strahl) nicht mehr mit Energie versorgt wird (der Rückkehrpfeil zu Schritt S10 ohne Ausführung von Schritt S20 oder S30 in Fig. 2 ist bei dieser Abwandlung ebenso wie Greifer 31 , Kamera 4 und Behälter 2 in Fig. 1 wegzudenken, da bei jeder neuen Überprüfung immer eine der beiden Bedingungen vorliegt, vgl. „if... eise“). Dadurch kann in einfacher und flexibler Weise beschrieben bzw. programmiert werden, dass der Laserpunkt nur aktiviert ist bzw. wird, wenn er auf das Werkstück trifft und ansonsten deaktiviert ist bzw. wird. In der Situation der Fig. 1 würde beispielsweise bei Bewegung des Laser- 5 nach links - bahnunabhängig - der Laser 5 durch Einschalten des Ausgangssignals $OUT[35] aktiviert und gleichermaßen - wiederum bahnunabhängig - wieder deaktiviert, sobald der virtuelle Laser(brenn)punkt des Lasers 5 nicht mehr auf das Werkstück 6 trifft.
In der vorliegenden Offenbarung impliziert „weist ein X auf“ allgemein keine abschließende Aufzählung, sondern ist eine Kurzform von „weist wenigstens ein X auf“ und umfasst auch „weist zwei oder mehr X auf“ sowie „weist außer X auch Y auf“. 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.
Bezuqszeichenliste
2 Behälter
4 Kamera 5 Laser
6 Werkstück
10, 11 Gegenstand
30 Roboterarm
31 Greifer
Claims
1. Verfahren zum Durchführen einer Roboterapplikation, wobei das Verfahren die Schritte aufweist:
- Betreiben einer Roboteranordnung zum Durchführen der Roboterapplikation;
- Überprüfen während dieses Betriebs der Roboteranordnung, ob ein erster Zustand vorliegt, der mithilfe einer vorgegebenen ersten geometrischen Bedingung für die Roboteranordnung definiert ist; und
- Auslösen einer ersten Aktion, die für den ersten Zustand vorgegeben ist, falls diese Überprüfung ergibt, dass der erste Zustand vorliegt.
2. Verfahren nach Anspruch 1 , dadurch gekennzeichnet, dass die Roboterapplikation mehrere abzuarbeitende Applikationsroutinen umfasst, wobei wenigstens eine dieser abzuarbeitenden Applikationsroutinen auf Basis der ersten Aktion initiiert wird.
3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass für wenigstens einen weiteren Zustand, der mithilfe einer vorgegebenen weiteren geometrischen Bedingung für die Roboteranordnung definiert ist, während des Betriebs der Roboteranordnung zum Durchführen der Roboterapplikation überprüft wird, ob dieser weitere Zustand vorliegt, und eine weitere Aktion, die für diesen weiteren Zustand vorgegeben ist, ausgelöst wird (S30), falls diese Überprüfung ergibt, dass dieser weitere Zustand vorliegt.
4. Verfahren nach Anspruch 2 und 3, dadurch gekennzeichnet, dass wenigstens eine der abzuarbeitenden Applikationsroutinen auf Basis der weiteren Aktion initiiert wird.
5. Verfahren nach Anspruch 3 oder 4, dadurch gekennzeichnet, dass der erste und der weitere Zustand nicht gleichzeitig vorliegen können.
6. Verfahren nach Anspruch 3 oder 4, dadurch gekennzeichnet, dass der erste und der weitere Zustand wenigstens teilweise übereinstimmen.
7. Verfahren nach einem der Ansprüche 3-6, dadurch gekennzeichnet, dass die weitere Aktion die erste Aktion wenigstens teilweise rückgängig macht.
8. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der erste und/oder weitere Zustand mithilfe einer Kombination von wenigstens zwei vorgegebenen Bedingungen definiert ist.
9. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die erste und/oder weitere geometrische Bedingung eine vorgegebene geometrische Beziehung, insbesondere einen Abstand, zwischen wenigstens einer roboterseitigen Referenz, insbesondere wenigstens einem roboterseitigen geometrischen Primitiv, und wenigstens einer umgebungsseitigen oder anderen roboterseitigen Referenz, insbesondere wenigstens einem umgebungsseitigen oder anderen roboterseitigen geometrischen Primitiv, aufweist.
10. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die erste und/oder weitere Aktion ein Vorgeben eines Wertes eines Ausgangs einer Robotersteuerung oder eines Flags und/oder ein Durchführen einer Routine eines Roboterprogramms und/oder eine Betätigung oder Nichtbetätigung einer von der Roboteranordnung geführten oder von der Roboteranordnung separaten Vorrichtung zum Durchführen der Roboterapplikation aufweist.
11 . Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der erste und/oder weitere Zustand auf Basis einer Benutzereingabe definiert ist und/oder die erste und/oder weitere geometrische Bedingung und/oder Aktion auf Basis einer Benutzereingabe vorgegeben ist und/oder während des Betriebs der Roboteranordnung zum Durchführen der Roboterapplikation zyklisch überprüft wird, ob der erste und/oder weitere Zustand vorliegt.
12. System zum Durchführen einer Roboterapplikation, das zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche eingerichtet ist und/oder aufweist:
Mittel zum Betreiben einer Roboteranordnung zum Durchführen der Roboterapplikation;
- Mittel zum Überprüfen während dieses Betriebs der Roboteranordnung, ob ein erster Zustand vorliegt, der mithilfe einer vorgegebenen ersten geometrischen Bedingung für die Roboteranordnung definiert ist; und
- Mittel zum Auslösen einer ersten Aktion, die für den ersten Zustand vorgegeben ist, falls diese Überprüfung ergibt, dass der erste Zustand vorliegt.
13. 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 12 den oder die Computer oder das System dazu veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 11 durchzuführen.
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102024100437.1A DE102024100437A1 (de) | 2024-01-09 | 2024-01-09 | Bewegen eines Roboters |
| DE102024100437.1 | 2024-01-09 | ||
| DE102024116593.6A DE102024116593A1 (de) | 2024-06-13 | 2024-06-13 | Verfahren und System zum Durchführen einer Roboterapplikation |
| DE102024116593.6 | 2024-06-13 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025149348A1 true WO2025149348A1 (de) | 2025-07-17 |
Family
ID=94192584
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2024/087508 Pending WO2025149348A1 (de) | 2024-01-09 | 2024-12-19 | Verfahren und system zum durchführen einer roboterapplikation |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2025149348A1 (de) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20200254610A1 (en) * | 2019-02-11 | 2020-08-13 | Beckhoff Automation Gmbh | Industrial robot system and method for controlling an industrial robot |
| DE102020119453B4 (de) * | 2019-10-18 | 2022-06-09 | Mujin, Inc. | Verfahren und Steuersystem zum Verifizieren und Aktualisieren von Kalibrierinformationen zur Robotersteuerung |
-
2024
- 2024-12-19 WO PCT/EP2024/087508 patent/WO2025149348A1/de active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20200254610A1 (en) * | 2019-02-11 | 2020-08-13 | Beckhoff Automation Gmbh | Industrial robot system and method for controlling an industrial robot |
| DE102020119453B4 (de) * | 2019-10-18 | 2022-06-09 | Mujin, Inc. | Verfahren und Steuersystem zum Verifizieren und Aktualisieren von Kalibrierinformationen zur Robotersteuerung |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3966731B1 (de) | Maschinelles lernen einer objekterkennung mithilfe einer robotergeführten kamera | |
| DE102015009048B3 (de) | Steuern eines nachgiebig geregelten Roboters | |
| EP2977149B1 (de) | Verfahren und mittel zum auslegen und/oder betreiben eines roboters | |
| EP3959046A1 (de) | Verfahren und system zum betreiben eines roboters | |
| EP3408061A1 (de) | Verfahren und system zur bahnplanung eines redundanten roboters | |
| DE102014010638A1 (de) | Verfahren und Vorrichtung zum Steuern eines Roboters | |
| DE102017001131C5 (de) | Verfahren und System zum Betreiben eines Roboters | |
| DE102013014873A1 (de) | Aufnahmevorrichtung, die die Halteposition und -orientierung eines Roboters auf der Grundlage einer Auswahlbedingung bestimmt | |
| DE102018216034A1 (de) | Robotersystem | |
| EP2656980B1 (de) | Verfahren und Mittel zum Vorgeben und/oder Steuern eines Manipulatorprozesses | |
| EP3740353A1 (de) | Verfahren und system zum steuern eines roboters | |
| WO2017129360A1 (de) | Steuern eines roboterverbands | |
| DE102015209773B3 (de) | Verfahren zur kontinuierlichen Synchronisation einer Pose eines Manipulators und einer Eingabevorrichtung | |
| DE112018007703C5 (de) | Robotersteuerung | |
| DE102019219930B3 (de) | Verfahren und System zum Steuern eines Roboters | |
| DE102022205883A1 (de) | Erhöhung der Greifrate | |
| DE102024116593A1 (de) | Verfahren und System zum Durchführen einer Roboterapplikation | |
| DE102015222168A1 (de) | Verfahren und computerprogramm zur korrektur von fehlern eines manipulatorsystems | |
| EP3710900B1 (de) | Verfahren und system zum vorgeben bzw. lernen eines roboterbefehls | |
| WO2019224224A1 (de) | Verfahren und steuerung zum steuern eines roboters | |
| EP4543636A1 (de) | Verfahren und system zum betreiben eines roboters | |
| EP1746335A1 (de) | Verfahren zur Sicherung einer Biegepresse und optoelektronischer Sensor zur Durchführung eines solchen Verfahrens | |
| DE102019213676B3 (de) | Robotersteuerung | |
| WO2023194007A1 (de) | Durchführung einer roboterapplikation und erstellen eines programms hierfür | |
| WO2024125919A1 (de) | Betreiben eines roboters mit greifer |
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: 24833667 Country of ref document: EP Kind code of ref document: A1 |