EP4100216A1 - Betreiben einer applikation eines robotersystems - Google Patents

Betreiben einer applikation eines robotersystems

Info

Publication number
EP4100216A1
EP4100216A1 EP21703656.5A EP21703656A EP4100216A1 EP 4100216 A1 EP4100216 A1 EP 4100216A1 EP 21703656 A EP21703656 A EP 21703656A EP 4100216 A1 EP4100216 A1 EP 4100216A1
Authority
EP
European Patent Office
Prior art keywords
application
situation
robot system
situation module
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP21703656.5A
Other languages
English (en)
French (fr)
Inventor
Jürgen Bock
Zhicong Xian
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KUKA Deutschland GmbH
Original Assignee
KUKA Deutschland GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KUKA Deutschland GmbH filed Critical KUKA Deutschland GmbH
Publication of EP4100216A1 publication Critical patent/EP4100216A1/de
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1656Program controls characterised by programming, planning systems for manipulators
    • B25J9/1661Program controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1656Program controls characterised by programming, planning systems for manipulators
    • B25J9/1671Program controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1674Program controls characterised by safety, monitoring, diagnostic
    • 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/32Operator till task planning
    • G05B2219/32137Configure, connect, combine different program modules
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34202Reusable software, generic resource model library
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36174Program divided into modules
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the difficulty is exacerbated by the fact that the different components within the automation cell are per se closed systems and thus offer the user a heterogeneous landscape.
  • the user is thus confronted with a large number of different descriptions of different systems, including the process or application description of the application developer or system integrator, which in turn is of a different type.
  • a core idea of an embodiment of the present invention is to provide or use a situation module library which has several predetermined application-independent robot system situation modules for a robot system or the robot system, which each map at least one input signal to at least one output signal, and from there through Linking to create an application-specific application situation module or to provide or use an application situation module created in this way for operating an application of a robot system.
  • robot system situation modules can advantageously be created or made available in advance, in particular by a manufacturer, so that they can be used (again or further) for various applications.
  • Robot system situation modules from the situation module library; and or - One or more application class-specific application class situation modules which (each) are specified for a class of several, in particular similar, applications and (each) map one or more input signals to one or more output signals; and or
  • a computer program product can have an, in particular, non-volatile, storage medium for storing a program or with a program stored thereon, in particular Execution of this program causes a system or a controller, in particular a computer, to execute a method described here or one or more of its steps.
  • a formal knowledge representation approach is used for the situation modules, in one development an ontology, in another development another formalism that offers the possibility of automatically mapping logical combinations of elements of the knowledge base and drawing automatic conclusions, in particular a logic program or a Rule base.
  • an ontology-based approach is used in one embodiment, then in a further development an ontology is to be regarded as a set of axioms which describe logical relationships between entities.
  • An entity can in particular represent a concept, in this case specifically a situation (module).
  • the axioms therefore describe relationships between situations. This allows situations from very atomic, primitive and general situations to be combined into more complex and specific situations.
  • ontologies or situation modules of different abstraction levels are used in this way. These form a chain of ontology or situation module imports and represent in one embodiment the various layers from the robot as a movement machine to preconfigured standard cells and specific customer applications describe the relevant situations.
  • the user can report the symptom via a user interface. Via the ontology or the situation module, this can finally be combined with other situation primitives automatically determined from the data to form more complex situations and ultimately causes of errors, for example an incorrect load data configuration or the like.
  • an automatic reasoner algorithm is used for the logical evaluation of the ontology axioms or situation modules.
  • the ontology language OWL (“Web Ontology Language”) used in one embodiment advantageously enables the description of axioms and entities and is based on description logic (“Description Logic”). This means that established reasoning algorithms and implementations are available.
  • these robot system situation primitives are linked to form more complex robot system situation modules Ri, R2, R3.
  • the application can then be operated, in particular programmed, implemented, monitored and / or evaluated in a step S30, for example, causes can be determined from observable error symptoms or it can react dynamically to eventualities occurring in the application become.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

Ein erfindungsgemäßes Verfahren zum Betreiben einer Applikation eines Robotersystems umfasst die Schritte: Auswählen (S10) eines ersten Robotersystem-Situationsmoduls aus einer Situationsmodulbibliothek mit mehreren vorgegebenen applikationsunabhängigen Robotersystem-Situationsmodulen für das Robotersystem, die jeweils wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbilden; Verknüpfen (S20) dieses ersten Robotersystem-Situationsmoduls mit wenigstens einem weiteren ausgewählten Robotersystem-Situationsmodul aus der Situationsmodulbibliothek; und/oder wenigstens einem applikationsklassenspezifischen Applikationsklassen-Situationsmodul, das für eine Klasse von mehreren Applikationen vorgegeben ist und wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbildet; und/oder wenigstens einem applikationsspezifischen Applikations-Situationsmodul, das wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbildet, zu einem ersten Applikations-Situationsmodul, das Eingangssignale seiner verknüpften Situationsmodule auf wenigstens ein Ausgangssignal abbildet; und Betreiben (S30) der Applikation auf Basis des ersten Applikations-Situationsmoduls.

Description

Betreiben einer Applikation eines Robotersystems
Die vorliegende Erfindung betrifft ein Verfahren und System zum Betreiben einer Applikation eines Robotersystems sowie eine Situationsmodulbibliothek und ein Computerprogrammprodukt, zur Durchführung des Verfahrens.
Die roboterbasierte Automatisierung, insbesondere von Fertigungsaufgaben, erfordert regelmäßig Robotersysteme mit einer Menge von Ressourcen wie Robotern, Endeffektoren, Sensoren, Fixierungen, T ransport-, insbesondere Fördereinrichtungen und dergleichen, sowie einen sogenannten Systemintegrator, der diese Ressourcen zu einem Robotersystem, insbesondere einer Roboterzelle, zusammensetzt.
Zudem ist ein Applikationsentwickler erforderlich, der die Programmierung der einzelnen Komponenten durchführt. Die Rolle des Applikationsentwicklers wird häufig vom Systemintegrator mit übernommen.
Statische Applikationen können auf diese Weise mit, teilweise sehr hohem, Integrations- bzw. Programmieraufwand realisiert werden, und sind wirtschaftlich, sofern die Einsparnisse durch die Automatisierung diesen Integrations- bzw. Programmieraufwand kompensieren, also üblicherweise bei der Produktion von hohen Stückzahlen in Anlagen mit langer Betriebslaufzeit.
Der Integrations- bzw. Programmieraufwand erhöht sich deutlich, sofern die Applikation nicht statisch, sondern flexibel für eine Vielzahl von Aufgaben oder Varianten verwendet werden soll. Dies ist insbesondere dadurch begründet, dass eine deutlich höhere Vielfalt von Bedingungen, Fehlerfällen, und anderen Eventualitäten während der Ausführung berücksichtigt werden muss.
Eine vollständige Abdeckung aller Eventualitäten ist sehr aufwändig, daher oft unwirtschaftlich und dadurch eine Hemmschwelle gerade bei KMUs, welche andererseits stark von flexiblen Automatisierungslösungen profitieren könnten.
Eine Alternative zur vollständigen Abdeckung aller Eventualitäten ist es, einfach und flexibel auf neu eintretende Situationen während der Ausführung sowie auf mögliche Fehlerfälle reagieren zu können. Dazu muss jedoch ad hoc ein Experte, in diesem Fall der Anwendungsentwickler bzw. Systemintegrator hinzugezogen werden. Auch hier sind KMUs als typische Anwender in einer schwierigen Situation, da sie in der Regel keine eigenen Anwendungsentwickler bzw. Systemintegratoren im Hause haben.
Die Schwierigkeit wird dadurch verstärk, dass die unterschiedlichen Komponenten innerhalb der Automatisierungszelle per se abgeschlossene Systeme sind und dadurch dem Anwender auch eine heterogene Landschaft bieten. Der Anwender ist somit mit einer Vielzahl unterschiedlicher Beschreibungen von verschiedenen Systemen, einschl. der wiederum anders gearteten Prozess- bzw. Applikationsbeschreibung des Applikationsentwicklers bzw. Systemintegrators konfrontiert.
Ein Beispiel für die geschilderte Problematik ist eine Roboter(system)applikation zum automatischen Setzen von elektrischen Klemmen auf einer Hutschiene im Rahmen einer Schaltschrankmontage: die Komponenten werden von einem Roboter mit montiertem Universalgreifer aus einer Kiste entnommen und kraftgeregelt auf die Hutschiene geklippt. Verschiedene Faktoren können dazu führen, dass das Einschnappen auf der Hutschiene misslingt, beispielsweise eine falsche Komponente, ein defekter Schnappmechanismus, eine nicht vorhandene oder im falschen Winkel angeordnete Hutschiene, nicht vorhandene Komponente oder dergleichen. Je nach Fehler ist die Ursache auf eine einzelne Ressource, z.B. den Roboter oder den Greifer, oder aber auch auf den Prozess, oder externe Faktoren zurückzuführen. Ein unerfahrener Anwender ist dabei im Allgemeinen nicht in der Lage, die Fehlerursache gezielt einzugrenzen und zu beheben. Andererseits ist der dazu befähigte Anwendungsentwickler bzw. Systemintegrator üblicherweise nicht vor Ort, bzw. teuer einzubestellen.
Bisher intern verwendete Ansätze sind spezifisch für eine gegebene Applikation.
Insbesondere beim Auswerten der Applikations- und Ressourcendaten durch maschinelle Lernverfahren ist das gelernte Modell abhängig von der Applikation bzw. der konkreten Konfiguration. Ändert sich zum Beispiel die beim Lernen verwendete Montageposition, ist unter Umständen das Modell nicht mehr gültig und kann keine Fehlerursachen mehr identifizieren. Dasselbe gilt für einen ontologie- bzw. regelbasierten Ansatz, sofern dieser Situationen beschreibt, welche inhärent mit der vorliegenden Applikation verbunden sind.
Aufgabe der vorliegenden Erfindung ist es, das Betreiben einer Applikation eines Robotersystems zu verbessern, vorzugsweise einen oder mehrere der vorgenannten Nachteile wenigstens zu reduzieren, vorzugsweise zu vermeiden.
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Ansprüche 7-9 stellen ein System, Computerprogrammprodukt bzw. eine Situationsmodulbibliothek 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 Betreiben einer Applikation eines Robotersystems die Schritte auf:
- Auswählen eines Robotersystem-Situationsmoduls, das vorliegend ohne Beschränkung der Allgemeinheit als erstes Robotersystem-Situationsmodul bezeichnet wird, aus einer Situationsmodulbibliothek, die mehrere vorgegebene applikationsunabhängige Robotersystem-Situationsmodule für das Robotersystem aufweist, welche jeweils ein oder mehrere Eingangssignale auf ein oder mehrere Ausgangssignale abbilden, insbesondere hierzu vorgesehen, insbesondere eingerichtet, sind bzw. verwendet werden;
- Verknüpfen dieses ersten Robotersystem-Situationsmoduls mit
- einem oder mehreren weiteren ausgewählten Robotersystem-Situationsmodulen aus der Situationsmodulbibliothek; und/oder
- einem oder mehreren applikationsklassenspezifischen Applikationsklassen-Situationsmodulen, die (jeweils) für eine Klasse von mehreren, insbesondere gleichartigen, Applikationen vorgegeben sind und
(jeweils) ein oder mehrere Eingangssignale auf ein oder mehrere Ausgangssignale abbilden, insbesondere hierzu vorgesehen, insbesondere eingerichtet, sind bzw. verwendet werden; und/oder - einem oder mehreren applikationsspezifischen Applikations-Situationsmodulen, die (jeweils) ein oder mehrere Eingangssignale auf ein oder mehrere Ausgangssignale abbilden, insbesondere hierzu vorgesehen, insbesondere eingerichtet, sind bzw. verwendet werden, zu einem Applikations-Situationsmodul, das vorliegend ohne Beschränkung der Allgemeinheit als erstes Applikations-Situationsmodul bezeichnet wird und Eingangssignale seiner verknüpften Situationsmodule, d.h. des ersten Robotersystem-Situationsmoduls sowie des bzw. der weiteren ausgewählten Robotersystem-Situationsmodule und/oder des bzw. der Applikationsklassen-Situationsmodule und/oder des bzw. der damit verknüpften Applikations-Situationsmodule, auf ein oder mehrere Ausgangssignale abbildet, insbesondere hierzu vorgesehen, insbesondere eingerichtet, ist bzw. verwendet wird; und
- Betreiben der Applikation auf Basis des ersten Applikations-Situationsmoduls.
Eine Kernidee einer Ausführung der vorliegenden Erfindung besteht darin, eine Situationsmodulbibliothek zur Verfügung zu stellen bzw. zu verwenden, die mehrere vorgegebene applikationsunabhängige Robotersystem-Situationsmodule für ein bzw. das Robotersystem aufweist, die jeweils wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbilden, und hieraus durch Verknüpfen ein applikationsspezifisches Applikations-Situationsmodul zu erstellen bzw. ein solcherart erstelltes Applikations-Situationsmodul zur Betreiben einer Applikation eines Robotersystems zur Verfügung zu stellen bzw. zu verwenden.
Hierdurch können in einer Ausführung vorteilhaft Robotersystem-Situationsmodule vorab, insbesondere von einem Hersteller, er- bzw. zur Verfügung gestellt werden, so dass diese für verschiedene Applikationen (wieder- bzw. weiter)verwendet werden können.
Auf diese Weise kann in einer Ausführung das Betreiben der Applikation verbessert, insbesondere eine Zuverlässigkeit erhöht und/oder ein Inbetriebnahme- und/oder Wartungsaufwand reduziert werden.
Die vorliegende Erfindung kann mit besonderem Vorteil - zum Programmieren der Applikation,
- zum Durchführen der Applikation, insbesondere zur Reaktion auf fehlerhafte Zustände bzw. Situationen,
- zum Überwachen der Applikation, insbesondere auf fehlerhafte Zustände bzw. Situationen, und/oder
- zum Auswerten der Applikation, insbesondere zur Ermittlung von Ursachen für auf fehlerhafte Zustände bzw. Situationen, verwendet werden.
Entsprechend weist ein Betreiben einer Applikation eines Robotersystems im Sinne der vorliegenden Erfindung in einer Ausführung ein (solches) Programmieren, Durchführen, Überwachen und/oder Auswerten der Applikation auf.
Das erste Applikations-Situationsmodul kann in einer Ausführung nach dem Verknüpfen die verknüpften Module (weiterhin als solche) aufweisen. Gleichermaßen können diese verknüpften Module bzw. Verknüpfungen in einer Ausführung (bei bzw. in dem ersten Applikations-Situationsmodul) auch - wenigstens teilweise - aufgelöst sein, so dass das erste Applikations-Situationsmodul die Eingangssignale auf das wenigstens eine Ausgangssignal entsprechend von Regeln abbildet, die sich durch die Verknüpfung(en) ergeben (haben) bzw. diesen entsprechen, ohne dass die verknüpften Module selber noch vorhanden bzw. identifizierbar sind bzw, Ein- auf Ausgangssignale abbilden.
Das Robotersystem weist in einer Ausführung einen oder mehrere Roboter, insbesondere einen oder mehrere stationäre und/oder einen oder mehrere mobile Roboter, auf, wobei der bzw. einer oder mehrere der Roboter in einer Ausführung (jeweils) wenigstens drei, insbesondere wenigstens sechs, in einer Ausführung wenigstens sieben, Achsen bzw. Gelenke, insbesondere Drehgelenke, in einer Ausführung einen Roboterarm mit wenigstens drei, insbesondere wenigstens sechs, in einer Ausführung wenigstens sieben, Achsen bzw. Gelenken, insbesondere Drehgelenken, aufweist, in einer Ausführung ist.
Zusätzlich oder alternativ weist das Robotersystem in einer Ausführung ein oder mehrere, vorzugsweise robotergeführte, Roboterwerkzeuge, insbesondere Greifer, Beschichtungseinrichtungen, insbesondere Lackier- oder Klebeköpfe oder dergleichen, Schweißeinrichtungen, insbesondere -zangen, und/oder Bearbeitungseinrichtungen, insbesondere Bohrer, Fräser, Sägen, Laserköpfe oder dergleichen, auf.
Zusätzlich oder alternativ weist das Robotersystem in einer Ausführung eine oder mehrere Fixiereinrichtungen und/oder eine oder mehrere Transporteinrichtungen, insbesondere Fördereinrichtungen, T ransportfahrzeuge oder dergleichen, und/oder eine oder mehrere Lagereinrichtungen, insbesondere Speicher bzw. Magazine oder dergleichen auf.
Für solche Robotersysteme kann die vorliegende Erfindung, insbesondere aufgrund ihrer Komplexität, Variabilität, Arbeitsweise und/oder Sicherheitsanforderungen, mit besonderem Vorteil verwendet werden.
Das Verknüpfen ist in einer Ausführung ein logik- bzw. regelbasiertes Verknüpfen bzw. erfolgt in einer Ausführung auf Basis, insbesondere durch Vorgabe, einer oder mehrerer Regeln bzw. Axiome.
Ein Situationsmodul im Sinne der vorliegenden Erfindung weist in einer Ausführung (jeweils) eine, vorzugsweise abgespeicherte und/oder datentechnisch( implementierte, (Wissens)Repräsentation bzw. Beschreibung auf, insbesondere eine (Wissens)Repräsentation bzw. Beschreibung einer oder mehrerer Komponenten des Robotersystems, insbesondere einer oder mehrerer der vorgenannten Komponenten Roboter, Roboterwerkzeug, Fixiereinrichtung,
T ransporteinrichtung bzw. Lagereinrichtung, und/oder der Applikation bzw. Applikationen einer Applikationsklasse, insbesondere Zeiten, Stückzahlen, Fehlerzustände oder dergleichen. In einer Ausführung weist ein Situationsmodul eine oder mehrere Axiome bzw. Regeln bzw. (Abbildungs)Vorschriften, bzw. entsprechende Strukturen, insbesondere Datenstrukturen, auf.
In einer Ausführung bilden ein oder mehrere der Situationsmodule (jeweils) ein oder mehrere Positions-Eingangssignale, die in einer Ausführung (jeweils) eine ein- oder mehrdimensionale kartesische Lage, eine ein- oder mehrdimensionale kartesische Orientierung und/oder eine ein- oder mehrdimensionale Gelenkstellung quantifizieren, ein oder mehrere Bewegungs-Eingangssignale, die in einer Ausführung (jeweils) eine ein- oder mehrdimensionale Geschwindigkeit und/oder Beschleunigung quantifizieren, und/oder ein oder mehrere Last-Eingangssignale, die in einer Ausführung (jeweils) eine oder mehrere Kontakt- und/oder Gelenkkräfte und/oder -(dreh)momente quantifizieren, in einer Ausführung Positions-, Bewegungs- und/oder Last-Eingangssignal(e) einer oder mehrerer Komponenten des Robotersystems, insbesondere einer oder mehrerer der vorgenannten Komponenten Roboter, Roboterwerkzeug, Fixiereinrichtung, T ransporteinrichtung bzw. Lagereinrichtung, und/oder der Applikation bzw. Applikationen einer Applikationsklasse, insbesondere Zeiten, Stückzahlen, Fehlerzustände oder dergleichen, auf ein oder mehrere Ausgangssignale ab, die ihrerseits in einer Ausführung Eingangssignale von Situationsmodulen höherer Komplexitätsgrade sein können.
Solche Situationsmodule können mit besonderem Vorteil zum Programmieren der Applikation, zum Durchführen der Applikation, insbesondere zur Reaktion auf fehlerhafte Zustände bzw. Situationen, zum Überwachen der Applikation, insbesondere auf fehlerhafte Zustände bzw. Situationen, und/oder zum Auswerten der Applikation, insbesondere zur Ermittlung von Ursachen für auf fehlerhafte Zustände bzw. Situationen, verwendet werden.
In einer Ausführung weist die Situationsmodulbibliothek ein oder mehrere vorgegebene applikationsunabhängige Robotersystem-Situationsmodule einer ersten, niedrige(re)n, insbesondere niedrigsten, Komplexitätsstufe und ein oder mehrere vorgegebene applikationsunabhängige Robotersystem-Situationsmodule einer zweiten, höheren Komplexitätsstufe auf, in einer Ausführung zusätzlich (jeweils) ein oder mehrere vorgegebene applikationsunabhängige Robotersystem-Situationsmodule einer oder mehrerer weiterer, (jeweils noch) höheren Komplexitätsstufen.
Zusätzlich oder alternativ wird in einer Ausführung das erste Robotersystem-Situationsmodul mit wenigstens einem applikationsklassenspezifischen Applikationsklassen-Situationsmodul einer Komplexitätsstufe und wenigstens einem applikationsklassenspezifischen Applikationsklassen-Situationsmodul einer anderen Komplexitätsstufe verknüpft, die höher als diese eine Komplexitätsstufe ist. Zusätzlich oder alternativ wird in einer Ausführung das erste Robotersystem-Situationsmodul mit wenigstens einem applikationsspezifischen Applikations-Situationsmodul einer Komplexitätsstufe und wenigstens einem applikationsspezifischen Applikations-Situationsmodul einer anderen Komplexitätsstufe verknüpft, die höher als diese eine Komplexitätsstufe ist.
In einer Ausführung weist ein Situationsmodul einer höheren Komplexitätsstufe zwei oder mehr Situationsmodule einer niedrigeren Komplexitätsstufe auf.
Hierdurch können in einer Ausführung vorteilhaft aus einfache(re)n Situationsmodulen, in einer Weiterbildung aus einfachsten bzw. atomaren Situationsprimitiven, insbesondere sukzessive (zunehmend) komplexe(re) Situationsmodule erstellt bzw. genutzt werden. Dadurch kann in einer Ausführung die Flexibilität, Zuverlässigkeit und/oder Anwenderfreundlichkeit verbessert werden.
In einer Ausführung ist, insbesondere wird, die Abbildung des bzw. der Eingangssignale auf das bzw. die Ausgangssignale eines oder mehrerer der Situationsmodule maschinell gelernt, in einer Ausführung mittels Künstlicher Intelligenz. Hierdurch können in einer Ausführung besonders vorteilhafte, insbesondere flexible, robuste und/oder präzise, Situationsmodule genutzt 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 Auswählen eines ersten Robotersystem-Situationsmoduls aus einer Situationsmodulbibliothek, die mehrere vorgegebene applikationsunabhängige Robotersystem-Situationsmodule für das Robotersystem aufweist, welche jeweils ein oder mehrere Eingangssignale auf ein oder mehrere Ausgangssignale abbilden;
- Mittel zum Verknüpfen dieses ersten Robotersystem-Situationsmoduls mit
- einem oder mehreren weiteren ausgewählten
Robotersystem-Situationsmodulen aus der Situationsmodulbibliothek; und/oder - einem oder mehreren applikationsklassenspezifischen Applikationsklassen-Situationsmodulen, die (jeweils) für eine Klasse von mehreren, insbesondere gleichartigen, Applikationen vorgegeben sind und (jeweils) ein oder mehrere Eingangssignale auf ein oder mehrere Ausgangssignale abbilden; und/oder
- einem oder mehreren applikationsspezifischen Applikations-Situationsmodulen, die (jeweils) ein oder mehrere Eingangssignale auf ein oder mehrere Ausgangssignale abbilden, zu einem ersten Applikations-Situationsmodul, das Eingangssignale seiner verknüpften Situationsmodule, d.h. des ersten Robotersystem-Situationsmoduls sowie des bzw. der weiteren ausgewählten Robotersystem-Situationsmodule und/oder des bzw. der Applikationsklassen-Situationsmodule und/oder des bzw. der damit verknüpften Applikations-Situationsmodule, auf ein oder mehrere Ausgangssignale abbildet; und - Mittel zum Betreiben der Applikation auf Basis des ersten Applikations-Situationsmoduls.
Ein Mittel im Sinne der vorliegenden Erfindung kann hard- und/oder softwaretechnisch ausgebildet sein, insbesondere eine, vorzugsweise mit einem Speicher- und/oder Bussystem daten- bzw. signalverbundene, insbesondere digitale, Verarbeitungs-, insbesondere Mikroprozessoreinheit (CPU), Graphikkarte (GPU) oder dergleichen, und/oder ein oder mehrere Programme oder Programmmodule aufweisen. Die Verarbeitungseinheit kann dazu ausgebildet sein, Befehle, die als ein in einem Speichersystem abgelegtes Programm implementiert sind, abzuarbeiten, Eingangssignale von einem Datenbus zu erfassen und/oder Ausgangssignale an einen Datenbus abzugeben. Ein Speichersystem kann ein oder mehrere, insbesondere verschiedene, Speichermedien, insbesondere optische, magnetische, Festkörper- und/oder andere nicht-flüchtige Medien aufweisen. Das Programm kann derart beschaffen sein, dass es die hier beschriebenen Verfahren verkörpert bzw. auszuführen imstande ist, sodass die Verarbeitungseinheit die Schritte solcher Verfahren ausführen kann und damit insbesondere die Applikation des Robotersystems betreiben kann. Ein Computerprogrammprodukt kann in einer Ausführung ein, insbesondere nicht-flüchtiges, Speichermedium zum Speichern eines Programms bzw. mit einem darauf gespeicherten Programm aufweisen, insbesondere sein, wobei ein Ausführen dieses Programms ein System bzw. eine Steuerung, insbesondere einen Computer, dazu veranlasst, ein hier beschriebenes Verfahren bzw. einen oder mehrere seiner Schritte auszuführen.
In einer Ausführung werden ein oder mehrere, insbesondere alle, Schritte des Verfahrens vollständig oder teilweise automatisiert durchgeführt, insbesondere durch das System bzw. sein(e) Mittel.
In einer Ausführung weist das System bzw. sein(e) Mittel das Robotersystem und/oder eine hier beschriebene Situationsmodulbibliothek bzw. eine Situationsmodulbibliothek für ein hier beschriebenes Verfahren auf.
In einer Ausführung wird - insbesondere durch das bzw. die Robotersystem-Situationsmodule - eine Beschreibung einer aktuellen Roboter(system)situation berechnet und/oder zur Verfügung gestellt, welche applikationsunabhängig ist. Diese Beschreibung bzw.
Robotersystem-Situationsmodule sind in einer Ausführung formal, vorzugsweise maschineninterpretierbar, und/oder wiederverwendbar in verschiedenen Applikationskontexten. Insbesondere für eine solche Wiederverwendbarkeit wird bzw. ist in einer Ausführung eine modulare Erweiterung um applikationsspezifisches Wissen vorgesehen, insbesondere, um applikationsunabhängigen Aspekte um applikationsspezifische anzureichern.
Ein dadurch in einer Ausführung erzielter Vorteil ist, dass ein Komponentenhersteller mehrere, vorzugsweise alle, komponentenspezifischen, aber applikationsunabhängigen Situationsbeschreibungen (mit)liefem kann. Der Integrator bzw. Applikationsentwickler kann auf dieser Basis den applikationsspezifischen Teil hinzufügen. Somit ist jeder Beteiligte im Bereich seiner Expertise beteiligt und somit in der Lage konkretes Wissen abzubilden.
Im Beispiel des eingangs geschilderten Robotersystemapplikation des Klemmensetzens kann beispielsweise der Roboterhersteller die Erfassung der einzelnen T races bzw. Zeitreihen von verschiedenen Quellen, insbesondere Achswinkel und/oder -momente, kartesische Positionen oder dergleichen, sowie die Auswertung, insbesondere über Machine Learning basierte Klassifikation oder Data Analytics Verfahren, implementieren. Daraus kann er roboter(system)spezifische Situationsprimitive ableiten, beispielsweise „Achse 1 bewegt sich“, „gleichbleibende Kraft in Z-Richtung“, „Kraftimpuls in X-Richtung“ oder dergleichen, sowie durch, insbesondere logische, Kombination komplexe(re) Situationen modellieren, zum Beispiel „Roboter bewegt sich“, „Roboter ist im Kontakt“, „Kollision hat stattgefunden“ oder dergleichen.
Der Applikationsentwickler wird dadurch in einer Ausführung befähigt, applikationsspezifische Situationen auf Basis der applikationsunabhängigen zu beschreiben, beispielsweise „Roboter ist im Kontakt mit der Hutschiene“.
In einer Ausführung kann das erste Applikations-Situationsmodul dazu verwendet werden, Ursachen für beobachtbare Fehlersymptome zu ermitteln, insbesondere, indem die möglichen Symptome in den logischen Beschreibungen der komplexen Situationen und Fehlerursachen berücksichtigt werden. Eine Verwertungsoption liegt in der Eingrenzung von Fehlerursachen zu einem beobachteten Symptom.
In einer anderen Ausführung kann das erste Applikations-Situationsmodul dazu verwendet werden, dynamisch auf auftretende Eventualitäten in der Applikation zu reagieren, und situationsbasierte Entscheidungen zum weiteren Programmablauf zu treffen. Beispielsweise erfolgt nach „Roboter ist im Kontakt mit der Hutschiene“ die Rotationsbewegung zum Einschnappen. Hat kein Einschnappen stattgefunden, kann darauf mit „lege das Bauteil zur Seite und hole ein Neues“ reagiert werden. Hat eine unerwartete Kollision stattgefunden, kann darauf mit „aktiviere ein Vision-System“ reagiert werden, um eine weitere Beurteilung der Situation zu ermöglichen. Eine Ausführung der vorliegenden Erfindung wird in einer intelligenten Prozesssteuerung für flexible und wandlungsfähige Produktionsanlagen verwendet.
In einer Ausführung wird ein formaler Wissensrepräsentationsansatz für die Situationsmodule verwendet, in einer Weiterbildung eine Ontologie, in einer anderen Weiterbildung ein anderer Formalismus, der die Möglichkeit bietet, logische Kombinationen von Elementen der Wssensbasis automatisch abzubilden und automatische Schlussfolgerungen zu ziehen, insbesondere ein Logikprogramm oder eine Regelbasis. Wird in einer Ausführung ein ontologiebasierter Ansatz verwendet, so ist in einer Weiterbildung eine Ontologie als eine Menge von Axiomen zu betrachten, welche logische Zusammenhänge zwischen Entitäten beschreiben. Eine Entität kann insbesondere ein Konzept darstellen, in diesem Fall speziell ein(e) Situation(smodul). Die Axiome beschreiben in diesem Fall daher Zusammenhänge zwischen Situationen. Dadurch lassen sich Situationen von sehr atomaren, primitiven und allgemeinen Situationen zu komplexeren und spezifischeren Situationen kombinieren.
In einer Ausführung beschreibt ein Axiom bzw. ein Robotersystem-Situationsmodul, insbesondere logisch, den Zusammenhang, dass sich der Roboter bewegt, wenn sich mindestens eine seiner Achsen bewegt. Umgekehrt beschreibt ein Axiom bzw. Robotersystem-Situationsmodul, dass sich der Roboter nicht bewegt, wenn sich keine seiner Achsen bewegt.
In einer Ausführung beschreibt ein Axiom bzw. ein Robotersystem-Situationsmodul einer zweiten, höheren Komplexitätsstufe, dass sich der Roboter im Kontakt befindet, wenn sich in mindestens einer kartesischen Richtung eine konstante Kraft messen lässt. Umgekehrt befindet sich ein Roboter in freier Fahrt, wenn er sich nicht im Kontakt befindet, etc.
Diese Zusammenhänge lassen sich alle im Kontext der Systemkomponente Roboter beschreiben, sind also applikationsunabhängig.
In einer Ausführung sind die Ontologien bzw. Situationsmodule modular gestaltet, so dass zwei Ontologien bzw. Situationsmodule zusammen betrachtet eine neue Ontologie bzw. ein neues Situationsmodul ergeben, welche(s) aus der Vereinigungsmenge der beiden Axiomenmengen besteht. Insbesondere kann eine Ontologie 0_2 eine andere Ontologie 0_1 importieren, und ist damit in der Lage, die Entitäten, welche durch Axiome aus 0_1 beschrieben wurden, wiederzuverwenden und weitere Axiome hinzuzufügen.
Wenn zum Beispiel die Ontologie 0_1 durch ein Axiom "Roboter ist im Kontakt" beschreibt, kann die Ontologie 0_2 diese 0_1 importieren und dann die Situation bzw. Entität "Roboter ist im Kontakt" weiterverwenden und zu weiteren Situationen mittels eigener Axiome kombinieren. Beispielsweise "Roboter bewegt sich auf Hutschiene zu" und "Roboter ist im Kontakt" kann bedeuten "Roboter ist im Kontakt mit der Hutschiene".
Auf diese Weise lassen sich insbesondere Fehlerursachen beschreiben, wie beispielsweise "Roboter im Einschnappvorgang der elektronischen Komponenten" und "Kein Kraftimpuls" kann bedeuten "Schnappmechanismus defekt".
Die in diesem Beispiel beschriebenen Zusammenhänge lassen sich im Kontext der Applikation beschreiben, sind also applikationsspezifisch.
In einer Ausführung werden mehrere Ontologien bzw. Situationsmodule verschiedener Abstraktionsebenen auf diese Weise verwendet. Diese bilden eine Kette von Ontologie- bzw. Situationsmodulimporten und stellen in einer Ausführung die verschiedenen Schichten vom Roboter als Bewegungsmaschine über vorkonfigurierte Standardzellen bis hin zu spezifischen Kundenapplikationen dar. Eine oder mehrere der Ontologien bzw. Situationsmodule werden von dem zuständigen Akteur der jeweiligen Schicht erstellt und beschreiben die hierfür relevanten Situationen.
Beispielsweise beschreibt der Roboterhersteller die erste Ontologie mit Situationsprimitiven und Basissituationen wie "Roboter bewegt sich", aber auch "Roboter ist im Kontakt", sofern dies mit eingebauter Sensorik oder anderweitig, zum Beispiel über Motorströme oder dergleichen, ermittelbar ist. Ein Zellenlieferant kann diese Ontologie mit Situationen erweitern, wie sie für die Klasse der durch die Zelle realisierbaren Applikationen charakteristisch sind. Beispielsweise kann eine Pick-and- Place Zelle Situationen beschreiben wie "Objekt gegriffen" oder dergleichen. Eine konkrete Applikation auf Basis der Pick-and-Place Zelle kann spezifisch auf die Objekte bzw. die konkrete Umgebung eingehen und Situationen beschreiben wie "Elektrisches Bauteil gegriffen", "Ablageposition belegt", etc.
In einer Ausführung sind für eine Fehlerursachenermittlung auf einer oder mehreren Ebenen bzw. in einem oder mehreren Situationsmodulen (jeweils) die entsprechend den Ursachen zugeordneten beobachtbaren Symptome mit in der Ontologie bzw. dem Situationsmodul modelliert. Technisch unterscheiden sich diese Symptome in einer Ausführung nicht von Situationsprimitiven, mit der zusätzlichen Eigenschaft, dass Symptome im Kontext einer Problemsituation beschrieben sind. Situationsprimitive und/oder Symptome können in einer Ausführung automatisch aus den Daten erkannt und/oder durch Anwendereingaben bzw. -beobachtungen direkt gesetzt werden.
Falls zum Beispiel der Anwender ein fehlerhaftes Verhalten beobachtet, beispielsweise, dass der Roboter im Gravitationskompensationsmodus driftet, kann er über eine Benutzerschnittstelle das Symptom zu melden. Über die Ontologie bzw. das Situationsmodul kann dieses schließlich mit anderen aus den Daten automatisch ermittelten Situationsprimitiven zu komplexeren Situationen und letztendlich Fehlerursachen, beispielsweise einer falschen Lastdatenkonfiguration oder dergleichen, kombiniert werden.
In einer Ausführung wird zum logischen Auswerten der Ontologieaxiome bzw. Situationsmodule ein automatischer Schlussfolgerungsalgorithmus („Reasoner“) verwendet. Die in einer Ausführung verwendete Ontologiesprache OWL („Web Ontology Language“) ermöglicht vorteilhaft die Beschreibung von Axiomen und Entitäten und basiert auf Beschreibungslogik („Description Logic“). Dadurch sind etablierte Reasoning-Algorithmen und Implementierungen verfügbar.
Insbesondere, um den Applikationsentwickler zu befähigen, eine applikationsspezifische Ontologie bzw. ein applikationsspezifisches Applikations-Situationsmodul auf Basis der applikationsunabhängigen Ontologie bzw. der vorgegebenen applikationsunabhängigen Robotersystem-Situationsmodule des Komponentenanbieters zu modellieren, ist in einer Ausführung eine entsprechende Toolunterstützung vorhanden. Eine solche Toolunterstützung erfasst in einer Ausführung, vorzugsweise in benutzerfreundlicher Weise, insbesondere formularbasiert, die Zusammenhänge der Situationen und übersetzt diese entsprechend in die Ontologiesprache bzw. Situationsmodule.
Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:
Fig. 1 : ein Robotersystem nach einer Ausführung der vorliegenden Erfindung; Fig. 2: ein Verfahren zum Betreiben einer Applikation des Robotersystems nach einer Ausführung der vorliegenden Erfindung; und
Fig. 3: ein verknüpftes erstes Applikations-Situationsmodul nach einer Ausführung der vorliegenden Erfindung.
Fig. 1 zeigt ein Robotersystem beim Betreiben einer Applikation nach einer Ausführung der vorliegenden Erfindung.
Das Robotersystem weist einen Roboter(arm) 1 , der ein Roboterwerkzeug 2 führt, eine Fördereinrichtung 3 zum Fördern von Werkstücken 4, sowie eine Zellensteuerung 5 zum Steuern des Robotersystems auf.
Fig. 2 zeigt ein Verfahren zum Betreiben der Applikation des Robotersystems nach einer Ausführung der vorliegenden Erfindung.
In einem ersten Schritt S10 wählt ein Anwender ein erstes Robotersystem-Situationsmodul aus einer Situationsmodulbibliothek mit mehreren vorgegebenen applikationsunabhängigen Robotersystem-Situationsmodulen für das Robotersystem, die jeweils wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbilden.
Exemplarisch sind hierzu in Fig. 3 mehrere Robotersystem-Situationsmodule Ri, ,, i=1,... , 3 einer ersten, niedrigsten Komplexitätsstufe, d.h. mehrere Robotersystem-Situationsprimitive Ri, , angedeutet. Solche Robotersystem-Situationsprimitive bilden beispielsweise Sensordaten bzw. T races des Roboters 1 auf die Situation bzw. das Ausgangssignal „Achse 1 des Roboters 1 bewegt sich“, „Achse 2 des Roboters 1 bewegt sich“,... , „Achse 6 des Roboters 1 bewegt sich“ ab.
Weiter sind in Fig. 3 exemplarisch mehrere Robotersystem-Situationsmodule R2, i, i=1,... , 3 der ersten, niedrigsten Komplexitätsstufe, d.h. mehrere Robotersystem-Situationsprimitive R2, i angedeutet. Diese Robotersystem-Situationsprimitive bilden beispielsweise Sensordaten bzw. T races des Roboters 1 auf die Situation bzw. das Ausgangssignal „Keine Kontaktkraft auf den Roboter 1 in x-Richtung“, „Keine Kontaktkraft auf den Roboter 1 in y-Richtung“,... ab.
Wiederum exemplarisch sind diese Robotersystem-Situationsprimitive, wie in Fig. 3 ebenfalls angedeutet, zu komplexeren Robotersystem-Situationsmodulen Ri, R2, R3 verknüpft. Diese bilden die Ausgangssignale der Robotersystem-Situationsprimitive auf Ausgangssignale ab, beispielsweise gemäß der Vorschrift bzw. dem Axiom: „Wenigstens eine der Achsen des Roboters 1 bewegt sich <=> Roboter 1 bewegt sich“ bzw. „Keine der Achsen des Roboters 1 bewegt sich <=> Roboter 1 bewegt sich nicht“ (Ri) bzw. „Kontaktkraft in wenigstens einer Richtung auf den Roboter 1 <=> Roboter 1 in Kontakt“ bzw. „Keine Kontaktkraft in irgendeiner Richtung auf den Roboter 1 <= Roboter 1 nicht in Kontakt“ (R2) bzw. „Roboter 1 bewegt sich UND Roboter 1 nicht in Kontakt (kollisions)freie Fahrt“ bzw. „Roboter 1 bewegt sich nicht ODER Roboter 1 in Kontakt <=> keine (kollisions)freie Fahrt“ (R3).
Diese vorgegebenen applikationsunabhängigen Robotersystem-Situationsmodule aus der Situationsmodulbibliothek verknüpft der Anwender in einem Schritt S20 mit applikationsklassenspezifischen Applikationsklassen-Situationsmodulen und/oder applikationsspezifischen Applikations-Situationsmodulen, die in Fig. 3 durch Ai, i=1,... ,7 angedeutet sind und ihrerseits verschiedene Komplexitätsstufe aufweisen können. Beispielsweise kann ein applikationsklassenspezifisches Applikationsklassen-Situationsmodul „Bauteil vom Roboter gegriffen“, ein applikationsspezifisches, insbesondere erstes, Applikations-Situationsmodul „elektrisches Bauteil vom Roboter gegriffen“ oder dergleichen sein bzw. die entsprechenden Eingangs- auf entsprechende Ausgangssignale abbilden.
Auf Basis der so zu dem ersten Applikations-Situationsmodul verknüpften Situationsmodule kann dann in einem Schritt S30 die Applikation betrieben, insbesondere programmiert, durchgeführt, überwacht und/oder ausgewertet werden, zum Beispiel aus beobachtbaren Fehlersymptomen Ursachen ermittelt oder dynamisch auf auftretende Eventualitäten in der Applikation reagiert werden.
Obwohl in der vorhergehenden Beschreibung exemplarische Ausführungen erläutert wurden, sei darauf hingewiesen, dass eine Vielzahl von Abwandlungen möglich ist. Außerdem sei darauf hingewiesen, dass es sich bei den exemplarischen Ausführungen lediglich um Beispiele handelt, die den Schutzbereich, die Anwendungen und den Aufbau in keiner Weise einschränken sollen. Vielmehr wird dem Fachmann durch die vorausgehende Beschreibung ein Leitfaden für die Umsetzung von mindestens einer exemplarischen Ausführung gegeben, wobei diverse Änderungen, insbesondere in Hinblick auf die Funktion und Anordnung der beschriebenen Bestandteile, vorgenommen werden können, ohne den Schutzbereich zu verlassen, wie er sich aus den Ansprüchen und diesen äquivalenten Merkmalskombinationen ergibt. Bezugszeichenliste
1 Roboter(arm)
2 Roboterwerkzeug
3 T ransportvorrichtung
4 Werkstück
5 Zellensteuerung
Ri(, j) Robotersystem-Situationsmodul (i = 1, 2,... ; j = 1 , 2,...)
Ai Applikations(klassen)-Situationsmodul (i = 1, ... , 7)

Claims

Patentansprüche
1. Verfahren zum Betreiben einer Applikation eines Robotersystems, mit den Schritten:
Auswählen (S10) eines ersten Robotersystem-Situationsmoduls aus einer Situationsmodulbibliothek mit mehreren vorgegebenen applikationsunabhängigen Robotersystem-Situationsmodulen für das Robotersystem, die jeweils wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbilden;
Verknüpfen (S20) dieses ersten Robotersystem-Situationsmoduls mit wenigstens einem weiteren ausgewählten Robotersystem-Situationsmodul aus der Situationsmodulbibliothek; und/oder wenigstens einem applikationsklassenspezifischen Applikationsklassen-Situationsmodul, das für eine Klasse von mehreren Applikationen vorgegeben ist und wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbildet; und/oder wenigstens einem applikationsspezifischen Applikations-Situationsmodul, das wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbildet, zu einem ersten Applikations-Situationsmodul, das Eingangssignale seiner verknüpften Situationsmodule auf wenigstens ein Ausgangssignal abbildet; und Betreiben (S30) der Applikation auf Basis des ersten Applikations-Situationsmoduls.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Situationsmodulbibliothek wenigstens ein vorgegebenes applikationsunabhängiges Robotersystem-Situationsmodul einer ersten Komplexitätsstufe und wenigstens ein vorgegebenes applikationsunabhängiges Robotersystem-Situationsmodul einer zweiten, höheren Komplexitätsstufe aufweist.
3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Abbildung des wenigstens einen Eingangssignals auf das wenigstens eine Ausgangssignal wenigstens eines der Situationsmodule maschinell gelernt ist.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Robotersystem wenigstens einen Roboter (1), wenigstens ein Roboterwerkzeug (2), wenigstens eine Fixiereinrichtung, wenigstens eine T ransporteinrichtung (3) und/oder wenigstens eine Lagereinrichtung aufweist.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass wenigstens eines der Situationsmodule wenigstens ein Positions-Eingangssignal, Bewegungs-Eingangssignal und/oder Last-Eingangssignal, insbesondere wenigstens einer Komponente des Robotersystems, auf wenigstens ein Ausgangssignal abbildet.
6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Betreiben der Applikation ein Programmieren, Durchführen, Überwachen und/oder Auswerten der Applikation aufweist.
7. Situationsmodulbibliothek für ein Verfahren nach einem der vorhergehenden Ansprüche, die mehrere vorgegebene applikationsunabhängige Robotersystem-Situationsmodule für ein Robotersystem aufweist, die jeweils wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbilden.
8. System zum Betreiben einer Applikation eines Robotersystems, das zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche eingerichtet ist und/oder aufweist:
Mittel zum Auswählen eines ersten Robotersystem-Situationsmoduls aus einer Situationsmodulbibliothek mit mehreren vorgegebenen applikationsunabhängigen Robotersystem-Situationsmodulen für das Robotersystem, die jeweils wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbilden;
Mittel zum Verknüpfen dieses ersten Robotersystem-Situationsmoduls mit wenigstens einem weiteren ausgewählten Robotersystem-Situationsmodul aus der Situationsmodulbibliothek; und/oder wenigstens einem applikationsklassenspezifischen Applikationsklassen-Situationsmodul, das für eine Klasse von mehreren Applikationen vorgegeben ist und wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbildet; und/oder wenigstens einem applikationsspezifischen Applikations-Situationsmodul, das wenigstens ein Eingangssignal auf wenigstens ein Ausgangssignal abbildet, zu einem ersten Applikations-Situationsmodul, das Eingangssignale seiner verknüpften Situationsmodule auf wenigstens ein Ausgangssignal abbildet; und Mittel zum Betreiben der Applikation auf Basis des ersten Applikations-Situationsmoduls.
9. Computerprogrammprodukt mit einem Programmcode, der auf einem von einem
Computer lesbaren Medium gespeichert ist, zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche.
EP21703656.5A 2020-02-05 2021-02-04 Betreiben einer applikation eines robotersystems Pending EP4100216A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102020201398.5A DE102020201398B3 (de) 2020-02-05 2020-02-05 Betreiben einer Applikation eines Robotersystems
PCT/EP2021/052591 WO2021156328A1 (de) 2020-02-05 2021-02-04 Betreiben einer applikation eines robotersystems

Publications (1)

Publication Number Publication Date
EP4100216A1 true EP4100216A1 (de) 2022-12-14

Family

ID=74556900

Family Applications (1)

Application Number Title Priority Date Filing Date
EP21703656.5A Pending EP4100216A1 (de) 2020-02-05 2021-02-04 Betreiben einer applikation eines robotersystems

Country Status (5)

Country Link
US (1) US20230093024A1 (de)
EP (1) EP4100216A1 (de)
CN (1) CN115052718A (de)
DE (1) DE102020201398B3 (de)
WO (1) WO2021156328A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021206254A1 (de) 2021-06-18 2022-12-22 Kuka Deutschland Gmbh Steuern und/oder Überwachen einer Roboterapplikation
DE102021212134B3 (de) 2021-10-27 2023-02-02 Kuka Deutschland Gmbh Verfahren und System zum Betreiben eines Roboters
DE102022208769B3 (de) 2022-08-24 2023-11-09 Kuka Deutschland Gmbh Roboterbahnplanung und -steuerung

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1151016C (zh) * 1999-11-30 2004-05-26 索尼公司 机器人设备及其控制方法,和机器人性格判别方法
US20070294181A1 (en) * 2006-05-22 2007-12-20 Saurabh Chheda Flexible digital rights management with secure snippets
DE102009054112A1 (de) * 2009-11-20 2011-05-26 Kuka Roboter Gmbh Verfahren und Vorrichtung zur Planung und/oder Steuerung einer Roboterapplikation
DE102010004476A1 (de) * 2010-01-13 2011-07-14 KUKA Laboratories GmbH, 86165 Verfahren und Vorrichtung zum Kontrollieren einer Roboterapplikation
DE102010004477A1 (de) * 2010-01-13 2011-07-14 KUKA Laboratories GmbH, 86165 Entwicklungsumgebung und Verfahren zur Planung einer Roboterapplikation
DE102010012598A1 (de) * 2010-02-26 2011-09-01 Kuka Laboratories Gmbh Prozessmodulbibliothek und Programmierumgebung zur Programmierung eines Manipulatorprozesses
KR101789756B1 (ko) * 2010-12-29 2017-11-20 삼성전자주식회사 로봇 및 그 제어방법
US9092698B2 (en) * 2012-06-21 2015-07-28 Rethink Robotics, Inc. Vision-guided robots and methods of training them
CN103679837B (zh) * 2012-09-07 2018-05-18 发纳科机器人美国公司 监控/分析机器人相关信息并显示在智能装置上的系统
US8868241B2 (en) * 2013-03-14 2014-10-21 GM Global Technology Operations LLC Robot task commander with extensible programming environment
US9840007B1 (en) * 2014-08-25 2017-12-12 X Development Llc Robotic operation libraries
DE102015011910A1 (de) * 2015-09-11 2017-03-16 Kuka Roboter Gmbh Verfahren und System zum Steuern einer Roboteranordnung
JP6815891B2 (ja) * 2017-02-23 2021-01-20 パナソニック株式会社 歩行支援ロボット及び歩行支援システム
CN107398897A (zh) * 2017-09-20 2017-11-28 孟祥敦 可搭建任意构型任意尺寸并实现自动求解的机器人教育应用平台
CN110047341A (zh) * 2018-01-17 2019-07-23 希格纳姆国际股份有限公司 情景语言学习设备、系统和方法
CN113334384B (zh) * 2018-12-05 2024-03-01 北京百度网讯科技有限公司 移动机器人控制方法、装置、设备及存储介质
US12005585B2 (en) * 2019-12-27 2024-06-11 Intrinsic Innovation Llc Offline robot planning with online adaptation

Also Published As

Publication number Publication date
WO2021156328A1 (de) 2021-08-12
CN115052718A (zh) 2022-09-13
DE102020201398B3 (de) 2021-04-01
US20230093024A1 (en) 2023-03-23

Similar Documents

Publication Publication Date Title
DE112010000775B4 (de) Industrierobotersystem
DE102010045528B4 (de) Gerüst und Verfahren zum Steuern eines Robotersystems unter Verwendung eines verteilten Rechnernetzwerks
DE10152765B4 (de) Verfahren zur elektronischen Bereitstellung von Diensten für Maschinen über eine Datenkommunikationsverbindung
DE102010045345A1 (de) Eingebettetes System und Verfahren zur Diagnose, Prognose und zum Gesundheitsmanagement für einen humanoiden Roboter
EP4100216A1 (de) Betreiben einer applikation eines robotersystems
DE102019205651B3 (de) Verfahren und System zum Ausführen von Roboterapplikationen
DE102014224193B9 (de) Verfahren und Vorrichtung zur Fehlerhandhabung eines Roboters
EP1410122A1 (de) Verfahren und system zur elektronischen bereitstellung von diensten für maschinen über eine datenkommunikationsverbindung
EP2356527B1 (de) Sicherheitssteuerung und verfahren zum steuern einer automatisierten anlage mit einer vielzahl von anlagenhardwarekomponenten
DE102019206012A1 (de) Verfahren und System zum Betreiben eines Roboters
EP2359201A1 (de) Verfahren zum bestimmen einer sicherheitsstufe und sicherheitsmanager
DE112019007579T5 (de) Numerische-Steuerung-Vorrichtung und Maschinelles-Lernen-Gerät
EP4012517B1 (de) Ausführungsumgebung zur ausführung eines ereignisorientierten steuerprogramms
EP1703350B1 (de) Diagnose eines Automatisierungssystems
WO2024079318A1 (de) System und verfahren zur sicherheitsgerichteten überwachung einer technischen anlage
AT412131B (de) Automatisierungssystem zur lösung einer prozesstechnischen aufgabenstellung und verfahren hierzu
EP4109368A1 (de) Verfahren zum ermitteln einer fehlerursache in einem intralogistiksystem mithilfe eines graphenmodells
DE102017007909A1 (de) Produktionssteuerung, ausgestattet mit einer Funktion zur Identifizierung der Ursache nach einem Betriebsstop einer Produktionseinrichtung, die Fertigungseinrichtungen umfasst
EP3712720B1 (de) Verfahren und vorrichtung zur ansteuerung einer technischen anlage mittels einer adaptiven simplex architektur
DE102020205265B4 (de) Detektieren von Störungen in Roboteranordnungen
EP4200107A1 (de) Überwachung bei einem robotergestützten prozess
EP3710900B1 (de) Verfahren und system zum vorgeben bzw. lernen eines roboterbefehls
WO2020099648A1 (de) Verfahren zum visualisieren der automatisierung einer technischen einrichtung
DE102020103854B4 (de) Maschinelles Lernen einer erfolgreich abgeschlossenen Roboteranwendung
DE102014105381A1 (de) Verfahren zum Betrieb einer Automatisierungsanordnung

Legal Events

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

Free format text: STATUS: UNKNOWN

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

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

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

Free format text: ORIGINAL CODE: 0009012

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

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20220727

AK Designated contracting states

Kind code of ref document: A1

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

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230528

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

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20250715