DE102018215124A1 - Steuervorrichtung für eine Roboteranordnung, Roboteranordnung, Verfahren, Computerprogramm und maschinenlesbares Speichermedium - Google Patents

Steuervorrichtung für eine Roboteranordnung, Roboteranordnung, Verfahren, Computerprogramm und maschinenlesbares Speichermedium Download PDF

Info

Publication number
DE102018215124A1
DE102018215124A1 DE102018215124.5A DE102018215124A DE102018215124A1 DE 102018215124 A1 DE102018215124 A1 DE 102018215124A1 DE 102018215124 A DE102018215124 A DE 102018215124A DE 102018215124 A1 DE102018215124 A1 DE 102018215124A1
Authority
DE
Germany
Prior art keywords
control device
trajectory
robot
module
designed
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
DE102018215124.5A
Other languages
English (en)
Inventor
Sergey Alatartsev
Felix Beuke
Simon Jessen
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch 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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102018215124.5A priority Critical patent/DE102018215124A1/de
Priority to EP19739267.3A priority patent/EP3846976A1/de
Priority to PCT/EP2019/068559 priority patent/WO2020048664A1/de
Priority to JP2021512627A priority patent/JP7179971B2/ja
Publication of DE102018215124A1 publication Critical patent/DE102018215124A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40476Collision, planning for collision free path

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

Steuervorrichtung für eine Roboteranordnung 1, wobei die Roboteranordnung 1 mindestens einen Roboter 2 umfasst, wobei der Roboter 2 in einem Arbeitsbereich 3 betreibbar ist und einen Endeffektor 4 aufweist, wobei der Endeffektor 4 zur Durchführung eines Prozessablaufs 12 in dem Arbeitsbereich 3 bewegbar ist, mit einer Steuereinrichtung 7 zur Eingabe, Festlegung und/oder Einstellung des Prozessablaufs 12, wobei die Steuereinrichtung 7 ausgebildet ist, eine Trajektorie 6 zur Durchführung des Prozessablaufs 12 zu planen und den Roboter 2 basierend auf der Trajektorie 6 zur Durchführung des Prozessablaufs 12 anzusteuern, wobei die Steuereinrichtung 7 eine Prüffunktion aufweist und ausgebildet ist, vor Ansteuerung des Roboters 2 die Trajektorie 6 auf Kollisionsfreiheit zu prüfen.

Description

  • Stand der Technik
  • Die vorliegende Erfindung bezieht sich auf eine Steuervorrichtung für eine Roboteranordnung, wobei die Roboteranordnung mindestens einen Roboter umfasst, wobei der Roboter in einem Arbeitsbereich betreibbar ist und einen Endeffektor aufweist, wobei der Endeffektor zur Durchführung eines Prozessablaufs in dem Arbeitsbereich bewegbar ist, mit einer Steuereinrichtung zur Eingabe, Festlegung und/oder Einstellung des Prozessablaufs, wobei die Steuereinrichtung ausgebildet ist, eine Trajektorie zur Durchführung des Prozessablaufs zu planen und den Roboter basierend auf der Trajektorie zur Durchführung des Prozessablaufs anzusteuern.
  • In Produktionsanlagen, wie z.B. in der Logistik und in anderen Anlagen, kommen häufig Kinematiken (Roboter) zum Einsatz, um beispielsweise Teile zu transportieren und/oder zu montieren. Die Bewegungen beziehungsweise Aufgaben, die die Roboter abarbeiten sollen, programmiert ein Benutzer typischerweise vorher ein. Dazu muss der Benutzer genau wissen, wie sich der Roboter verhält und/oder bewegt, um Kollisionen zwischen Roboter und der Umgebung und/oder zwischen Roboter und Roboter zu vermeiden. Probleme entstehen insbesondere dann, wenn dynamische Startpunkte und/oder Zielpunkte hinzukommen, die beispielsweise ein Sensor vorgibt. Für den Benutzer ist es dann beliebig kompliziert, eine kollisionsfreie Bewegung des Roboters zu jedem Zeitpunkt zu gewährleisten.
  • Die Druckschrift DE 10 2013 203 547 A1 , die wohl den nächstkommenden Stand der Technik bildet, beschreibt eine Roboterarbeitsplatzanordnung mit einem Roboter, der in einem Arbeitsbetrieb und in einem Kollaborationsbetrieb betreibbar ist und eine Erfassungseinrichtung zur Erfassung einer Person in dem Erfassungsbereich aufweist. Ferner umfasst die Roboterarbeitsplatzanordnung eine Steuereinrichtung zur Ansteuerung des Roboters, wobei die Steuereinrichtung den Roboter bei der Erfassung der Person im Erfassungsbereich dazu ansteuert, vom Arbeitsbetrieb in den Kollaborationsbetrieb zu wechseln. Bei einem Heraustreten der Person aus dem Erfassungsbereichsabschnitt wird der Roboter noch für eine Blockierdauer blockiert.
  • Offenbarung der Erfindung
  • Erfindungsgemäß wird eine Steuervorrichtung für eine Roboteranordnung mit den Merkmalen des Anspruchs 1 vorgeschlagen. Ferner wird eine Roboteranordnung, ein Verfahren, ein Computerprogramm und ein maschinenlesbares Speichermedium vorgeschlagen. Bevorzugte und/oder vorteilhafte Ausführungsformen ergeben sich aus der nachfolgenden Beschreibung, den Unteransprüchen und den beigefügten Figuren.
  • Es wird eine Steuervorrichtung für eine Roboteranordnung vorgeschlagen. Insbesondere kann die Steuervorrichtung integrierbar und/oder integriert in der Roboteranordnung sein. Die Steuervorrichtung ist vorzugsweise als ein Hardwaremodul ausgebildet, alternativ kann die Steuervorrichtung als ein Softwaremodul ausgebildet sein. Die Roboteranordnung ist beispielsweise eine Roboteranordnung in der Produktion, in der Messtechnik oder in der Logistik. Mittels der Roboteranordnung können Gegenstände bearbeitet, transportiert und/oder vermessen werden. Beispielsweise ist die Roboteranordnung Teil einer Fertigungslinie oder einer Logistiklinie. Im Besonderen kann die Steuervorrichtung für mehrere Roboteranordnungen ausgelegt sein, wobei die Steuervorrichtung mit der und/oder mit den Roboteranordnungen datentechnisch verbunden ist.
  • Die Roboteranordnung umfasst mindestens einen Roboter. Vorzugsweise umfasst die Roboteranordnung eine Mehrzahl an Robotern, beispielsweise mindestens fünf oder zehn Roboter. Bei den Robotern kann es sich um kartesische Roboter, um Scara-Roboter oder um Knickarmroboter handeln. Insbesondere kann der Roboter auch als eine lineare Achse ausgebildet sein. Umfasst die Roboteranordnung mehrere Roboter, so können die Roboter gleichartig oder unterschiedlich ausgebildet sein. Ferner ist es vorgesehen, dass die Roboter einer Roboteranordnung miteinander interagieren können und zum Kollaborationsbetrieb ausgebildet sind.
  • Der Roboter ist in einem Arbeitsbereich betreibbar und/oder angeordnet. Der Arbeitsbereich ist beispielsweise ein Abschnitt der Produktionslinie, der Logistiklinie oder der Fertigungsanlage. Der Arbeitsbereich ist insbesondere ein räumlicher Bereich. Der Roboter weist einen Endeffektor auf. Der Endeffektor ist insbesondere als ein Greifer und/oder Werkzeug ausgebildet. Mittels des des Endeffektors ist ein Objekt, ein Gegenstand und/oder ein Werkstück greifbar, haltbar, bearbeitbar und/oder vermessbar. Insbesondere kann ein Roboter mehr als einen Effektor aufweisen, wobei die Endeffektoren vorzugsweise miteinander zur Kollaboration ausgebildet sind, und beispielsweise ein Objekt von einem Aktor zum nächsten Aktor übergeben werden kann. Der Robotoer weist beispielsweise einen Roboterarm auf, wobei der Roboterarm den Endeffektor umfasst. Der Endeffektor ist in dem Arbeitsbereich bewegbar. Beispielsweise ist der Endeffektor in dem Arbeitsbereich verschwenkbar, verfahrbar und/oder verdrehbar.
  • Der Roboter ist zur Durchführung eines Prozessablaufs ausgebildet. Der Prozessablauf ist beispielsweise ein Teilschritt oder ein gesamter Ablauf zur Herstellung, zur Bearbeitung, zum Transport und/oder zum Vermessen des Werkstücks, des Objektes und/oder des Gegenstandes. Ein Prozessablauf kann insbesondere mehrere Prozessschritte umfassen, beispielsweise transportieren, greifen, bearbeiten und/oder halten. Der Prozessablauf weist insbesondere einen Abfolgeplan der Prozessschritte auf, in welchem die Prozessschritte durchzuführen sind. Im Speziellen sind mittels des Roboters und/oder der Roboteranordnung unterschiedliche Prozessabläufe darstellbar, betreibbar und/oder ausführbar.
  • Die Steuervorrichtung weist eine Steuereinrichtung auf. Die Steuereinrichtung ist vorzugsweise ein Hardwaremodul. Alternativ kann die Steuereinrichtung als ein Softwaremodul ausgebildet sein, beispielsweise auf einer Rechnereinheit, einem Prozessor oder einem Mikrochip. Die Steuereinrichtung ist vorzugsweise eine zentrale Steuereinrichtung für den und/oder die Mehrzahl an Robotern. Roboter und Steuereinrichtung sind dabei datentechnisch miteinander verbunden, beispielsweise durch eine Kabelleitung, alternativ durch eine kabellose Verbindung.
  • Auf der Steuereinrichtung ist der Prozessablauf einstellbar, eingebbar und/oder festlegbar durch einen Benutzer. Beispielsweise weist dazu die Steuereinrichtung eine Eingabeeinheit auf. Mittels der Eingabeeinheit kann der Benutzer den Prozessablauf konfigurieren, eingeben und/oder festlegen. Beispielsweise ist die Eingabe und/oder die Festlegung des Prozessablaufes die Zusammenstellung, insbesondere der zeitliche Ablauf der einzelnen Prozessschritte. Ferner kann die Eingabe und/oder Festlegung des Prozessablaufes auch eine Zuordnung von Robotern zu Prozessschritten aufweisen. Beispielsweise wird von dem Benutzer festgelegt, dass ein erster Prozessschritt des Prozessablaufs durch einen ersten Roboter ausgeführt werden soll, wobei ein weiterer Prozessschritt gleichzeitig und/oder danach durch einen weiteren Roboter der Roboteranordnung auszuführen ist. Vorzugsweise erfolgt die Eingabe, Festlegung und/oder Einstellung des Prozessablaufes in einer Programmierumgebung. Die Programmierumgebung ermöglicht beispielsweise ein grafisches Eingeben, Festlegen und/oder Einstellen des Prozessablaufes. Alternativ kann die Programmierumgebung ein kommandozeilenbasiertes Eingabeverfahren ermöglichen. Insbesondere sind mittels der Steuereinrichtung bei der Eingabe, Festlegung und/oder Einstellung des Prozessablaufes ein Startpunkt und/oder ein Endpunkt der Prozessschritte und/oder des Prozessablaufes festlegbar.
  • Die Steuereinrichtung ist ausgebildet, eine Trajektorie zur Durchführung des Prozessablaufes zu planen und den Roboter basierend auf der Trajektorie zur Durchführung des Prozessablaufes anzusteuern. Insbesondere kann die Steuereinrichtung ausgebildet sein eine Bahn zur Durchführung des Prozessablaufs zu planen. Im Speziellen kann im Folgenden als Trajektorie allgemein auch die Bahn verstanden werden. Als Bahn wird insbesondere eine Funktion des Weges verstanden, beispielsweise des Pfades. Als Trajektorie wird vorzugsweise eine Funktion der Zeit verstanden, wobei insbesondere Beschleunigungen und/oder kinematische Begrenzungen des Roboters berücksichtigt werden. Vorzugsweise erfolgt die Planung der Trajektorie und/oder der Bahn und das Ansteuern des Roboters in einem gemeinsamen Modul und/oder in der gemeinsamen Programmierumgebung. Die Trajektorie ist insbesondere ein Pfad und/oder eine Beschreibung der Bewegung des Endeffektors im Arbeitsbereich. Die Trajektorie kann im Pfad beispielsweise in Form eines Ortsvektors erfolgen, wobei der Ortsvektor zeitabhängig ist, und jeden Zeitpunkt t einem Ortsvektor des Endeffektors zuordnet, wobei diese Zuordnung in einem Referenzsystem oder Schwerpunktsystem erfolgt. Ferner kann die Trajektorie als eine Zuordnung von Achsstellungen des Roboters, insbesondere Knickarmroboters, zu jedem Zeitpunkt bilden.
  • Die Steuereinrichtung weist eine Prüffunktion auf. Die Prüffunktion kann ein Modul, ein Softwarebaustein oder einen Verfahrensschritt bilden. Beispielsweise ist die Prüffunktion ein Verfahrens- und/oder ein Programmschritt. Die Steuereinrichtung und insbesondere die Prüffunktion ist ausgebildet, die Trajektorie auf eine Kollisionsfreiheit zu prüfen. Die Überprüfung der Trajektorie auf Kollisionsfreiheit erfolgt insbesondere vor der Ansteuerung des Roboters zur Durchführung des Prozessablaufes. Vorzugsweise erfolgt zuerst die Einstellung und/oder Festlegung des Prozessablaufes sowie beispielsweise die Planung der Trajektorie zur Durchführung des Projektablaufes, worauf die Überprüfung auf Kollisionsfreiheit folgt und anschließend die Ansteuerung erfolgt. Die Kollisionsfreiheitsprüfung ist insbesondere eine Prüfung auf eine Kollisionsfreiheit des Roboters, insbesondere des Endeffektors, mit Gegenständen im Arbeitsbereich und/oder der Umgebung, wobei diese Gegenstände vorzugsweise fest angebrachte Gegenstände und/oder unbewegliche Gegenstände sind. Ferner kann die Prüfung der Kollisionsfreiheit auch eine Prüfung auf Kollisionsfreiheit eines Roboters mit einem anderen Roboter sein, sodass beispielsweise beide Roboter der Roboteranordnung gleichzeitig ohne Kollision betreibbar sind. Insbesondere ist es vorgesehen, dass die Prüffunktion und/oder die Prüfung der Kollisionsfreiheit der Trajektorie in dem gleichen Programm und/oder Programmierumgebung durchführbar und/oder aufrufbar ist. Dieser Ausgestaltung liegt die Überlegung zugrunde, dass der Benutzer, der die Eingabe, Festlegung und/oder Einstellung des Prozessablaufs in der Steuereinrichtung vornimmt, auch die Prüfung der Kollisionsfreiheit übernehmen kann. Eingabe, Festlegung und/oder Einstellung des Prozessablaufes, sowie Planung der Trajektorie und die Überprüfung auf Kollisionsfreiheit ist damit in einer gemeinsamen Steuereinrichtung ausführbar, aufrufbar und/oder bedienbar.
  • Der Erfindung liegt die Überlegung zugrunde, dass bisher Benutzer nicht in einer gewohnten Programmierung und/oder Programmierumgebung arbeiten können, wenn sie eine Trajektorie auf Kollisionsfreiheit überprüfen möchten. Bisher müssen sich Benutzer beispielsweise mit unterschiedlichen Programmierungen und/oder Logiken auseinandersetzen, da zur Festlegung und/oder Einstellung des Programmablaufs und zur Trajektorienplanung unterschiedliche Einheiten zuständig sind. Ferner sind insbesondere in Einheiten zur Kollisionsüberwachung Roboterfunktionalitäten nicht abbildbar und/oder integrierbar. Der Schulungsaufwand für Personal und/oder Benutzer der Roboteranordnung ist daher bisher sehr immens und verursacht hohe Kosten. Durch die Bereitstellung der Kollisionsüberprüfung als eine Funktionalität in der Steuereinrichtung selbst, insbesondere als eine höherwertige Funktion, kann der Schulungsaufwand reduziert und die Kosten gesenkt werden. Der Benutzer mit seiner Fachkenntnis in der roboterspezifischen Steuerung hat so die Möglichkeit, zusätzlich die Funktion der Kollisionsüberprüfung nutzen zu können, ohne sich mit der Logik und/oder Programmierung einer anderen Einheit befassen zu müssen. Insbesondere sind bisherige Roboteranordnungen mittels der Steuervorrichtung nachrüstbar.
  • Als Vorteil ergeben sich somit insbesondere, dass der Benutzer weiterhin den Funktionsumfang der bisherigen Robotersteuerung nutzen kann und in seiner gewohnten roboterspezifischen Programmierumgebung arbeiten kann. Der Benutzer muss so keine neue Programmiersprache lernen, um ein übergeordnetes System und/oder Einheit zur Trajektorienüberprüfung bedienen zu können und/oder die Trajektorie darauf basierend editieren zu können.
  • Besonders bevorzugt ist es, dass die Prüffunktion von einem Benutzer mittels einer Eingabeeinrichtung auswählbar ist. Insbesondere ist die Eingabeeinrichtung Teil der Steuereinrichtung. Beispielsweise ist die Prüffunktion als eine Applikation, als ein Softwaremodul oder als eine abrufbare Anwendung auswählbar. Mittels dem Auswählen der Prüffunktion wird insbesondere die Prüfung der Trajektorie auf Kollisionsfreiheit ausgeführt. So ist es beispielsweise möglich, dass der Benutzer zuerst den Prozessablauf festlegt und eine Trajektorie für diesen Prozessablauf bestimmt, wobei nach der Einstellung des Prozessablaufs und der Planung der Trajektorie durch Aufrufen und/oder Auswählen der Prüffunktion diese festgelegte Trajektorie auf Kollisionsfreiheit überprüft wird. Dieser Ausgestaltung liegt die Überlegung zugrunde, dass der Benutzer so weiterhin die Robotersteuerung in seiner gewohnten Programmierumgebung verwenden kann und die Trajektorie dort kollisionsfrei planen kann Überprüfung auf Kollision durch Auswahl der Prüffunktion veranlassen kann, ohne Kenntnisse in der Programmierung und/oder Funktionalität der Kollisionsüberwachung haben zu müssen.
  • Optional ist es vorgesehen, dass die Steuereinrichtung ausgebildet ist, die Trajektorie basierend auf dem Prozessablauf kollisionsfrei zu planen und/oder umzuplanen. Beispielsweise kann die Steuereinrichtung ausgebildet sein, eine Trajektorie zur Durchführung des Prozessablaufs auf Kollisionen und/oder Kollisionsfreiheit zu überprüfen und beispielsweise bei festgestellter Kollision die Trajektorie so umzuplanen, dass der Prozessablauf weiter durchführbar ist, die Trajektorie dann jedoch kollisionsfrei ist. Insbesondere erfolgt die Umplanung und/oder die Planung der kollisionsfreien Trajektorie so, dass die umgeplante Trajektorie und/oder die kollisionsfreie Trajektorie möglichst wenig von einer Minimaltrajektorie abweicht, wobei die Minimaltrajektorie insbesondere die Trajektorie und/oder der Pfad ist, der den Prozessablauf möglichst schnell, kostengünstig ausführt und/oder eine andere Nebenbedingung optimiert. Beispielsweise kann es vorgesehen sein, dass von der Steuereinrichtung bei der Festlegung und/oder nach der Festlegung, Eingabe und/oder Einstellung des Prozessablaufes eine Mehrzahl an Trajektorien zur Durchführung des Prozessablaufes geplant werden und die Steuereinrichtung ausgebildet ist, insbesondere basierend auf der Prüffunktion und/oder nach Auswahl der Prüffunktion, die Trajektorien auf Kollisionsfreiheit zu prüfen und die und/oder eine der kollisionsfreien Trajektorien als Trajektorie zur Ansteuerung und/oder Durchführung des Prozessablaufes auszuwählen. Beispielsweise legt der Benutzer als Prozessablauf fest, einen Gegenstand von einer Position aufzunehmen und zu einer anderen Position zu transportieren, wobei die Steuereinrichtung dann ausgebildet ist, eine Trajektorie zu bestimmen, die das Aufnehmen, Transportieren und Ablegen des Gegenstandes kollisionsfrei durchführt.
  • Eine besonders bevorzugte Ausgestaltung der Erfindung sieht vor, dass die Steuereinrichtung ausgebildet ist, aus dem Prozessablauf und/oder der Trajektorie zu dem Prozessablauf einen Startpunkt und/oder einen Endpunkt zu extrahieren. Beispielsweise muss der Benutzer bei der Festlegung des Prozessablaufes den Startpunkt und/oder eine Startkoordinate festlegen, ferner kann es sein, dass der Benutzer einen Endpunkt und/oder eine Endkoordinate festlegen muss. Die Steuereinrichtung kann ferner ausgebildet sein, Zwischenpunkte des Prozessablaufes und/oder der Trajektorie zu extrahieren. Beispielsweise sind Zwischenpunkte Punkte des Prozessablaufes, bei welchen ein Bearbeitungsschritt, ein Übergabeschritt oder ein Halteschritt stattfindet. Dabei ist es insbesondere vorgesehen, dass die Prüfung der Kollisionsfreiheit und/oder die Planung der kollisionsfreien Trajektorie und/oder die Umplanung der Trajektorie zu einer kollisionsfreien Trajektorie auf dem Startpunkt, dem Endpunkt und/oder den Zwischenpunkten basiert. Beispielsweise ist die Steuereinheit ausgebildet, eine Trajektorie zwischen Startpunkt und Endpunkt so zu planen, dass keine Kollision mit der Umgebung und dem Roboter eintritt.
  • Insbesondere ist es vorgesehen, dass die Steuervorrichtung eine oder mehrere Sensorvorrichtungen umfasst. Die Sensorvorrichtung ist ausgebildet, Umgebungsdaten zu bestimmen. Beispielsweise sind die Sensorvorrichtungen zur optischen, akustischen, mechanischen oder elektrischen Überwachung der Umgebung und/oder des Roboters ausgebildet. Umgebungsdaten sind beispielsweise Koordinaten und/oder Positionen von Gegenständen im Arbeitsbereich und/oder eine Position des Roboters und/oder des Endeffektors bei und/oder während der Durchführung des Prozessablaufs. Beispielsweise umfasst die Sensorvorrichtung in regelmäßigen Abständen den Arbeitsbereich, beispielsweise, ob Veränderungen stattgefunden haben, und/oder Hindernisse hinzugekommen sind oder weggefallen sind. Die Steuereinrichtung ist insbesondere ausgebildet, basierend auf den Umgebungsdaten die Kollisionsfreiheit zu überprüfen. Ferner kann die Steuervorrichtung ausgebildet sein, die kollisionsfreie Trajektorie und/oder die Umplanung zur kollisionsfreien Trajektorie basierend auf den Umgebungsdaten durchzuführen. Beispielsweise ist die Steuereinrichtung ausgebildet, jeden Punkt der Trajektorie und/oder des Pfades mit den Umgebungsdaten abzugleichen.
  • Eine Ausgestaltung der Erfindung sieht vor, dass die Steuereinrichtung ein Prozessmodul und ein Trajektorienprüfmodul umfasst, wobei das Trajektorienprüfmodul insbesondere die Prüffunktion aufweist und/oder zur Durchführung der Trajektorienprüfung ausgebildet ist. Das Trajektorienprüfmodul bildet insbesondere eine übergeordnete Einheit. Das Trajektorienprüfmodul und das Prozessmodul bilden vorzugsweise zwei physikalisch getrennte Module und/oder Einheiten. Beispielsweise ist das Trajektorienprüfmodul ein übergeordnetes Modul und bildet beispielsweise eine Rechnereinheit. Die beiden, insbesondere auch physiklaisch getrennten Module, können beide vom Roboter und/oder der Steuereinrichtung umfasst sein. Das Prozessmodul und das Trajektorienprüfmodul können logisch getrennte Module bilden und beispielsweise Programmabschnitte bilden.
  • Das Trajektorienprüfmodul ist zum Prüfen der Trajektorie und/oder der Bahn auf Kollisionsfreiheit ausgebildet. Das Prozessmodul ist zur Eingabe, Festlegung und/oder Einstellung des Prozessablaufs durch den Benutzer ausgebildet. Ferner kann das Prozessmodul eine erste Trajektorie und/oder die Trajektorie planen. Alternativ und/oder ergänzend ist die Planung der kollisionsfreien Trajektorie und/oder die Umplanung der Trajektorie zur kollisionsfreien Trajektorie auf dem Trajektorienprüfmodul implementiert und/oder ausführbar. Das Trajektorienprüfmodul und das Prozessmodul sind datentechnisch miteinander verbunden. Insbesondere sind über das Prozessmodul dem Trajektorienprüfmodul der Startpunkt, der Endpunkt und/oder Zwischenpunkte bereitstellbar. Die Prüffunktion ist insbesondere vom Prozessmodul aus auf dem Trajektorienprüfmodul abrufbar und zur Überprüfung der Trajektorie auf Kollisionsfreiheit anwendbar. Dieser Ausgestaltung liegt die Überlegung zugrunde, die rechentechnisch aufwendige Überprüfung der Trajektorie und/oder Umplanung sowie Planung einer kollisionsfreien Trajektorie auf ein übergeordnetes System, beispielsweise eine zentrale Rechnereinheit, auszulagern, wobei die Funktion der Kollisionsfreiheitsprüfung, Planung und/oder Umplanung weiterhin von der Steuereinrichtung und insbesondere dem Prozessmodul aus aufrufbar und/oder anwendbar ist, sodass der Benutzer in seiner bekannten Umgebung arbeiten kann, jedoch die komplexe Prüffunktion anwenden kann.
  • Besonders bevorzugt ist es, dass Eingabe, Festlegung und Einstellung des Prozessablaufes sowie die Prüfung der Kollisionsfreiheit in einer gemeinsamen Programmierumgebung implementiert sind und/oder von einem Benutzer dort anwendbar sind. Insbesondere kann in dieser Programmierumgebung auch die Funktionalität der Umplanung der Trajektorie zur kollisionsfreien Trajektorie sowie das Planen einer kollisionsfreien Trajektorie in dieser Programmierumgebung implementiert sein. Beispielsweise ist die Programmierumgebung zu einer grafischen Eingabe, Festlegung, Einstellung und/oder Prüfung ausgebildet, sodass insbesondere keine expliziten Programmiersprachen und/oder Programmierkenntnisse zur Bedienung der Steuereinrichtung und/oder Steuervorrichtung nötig sind.
  • Optional ist es vorgesehen, dass die Steuereinrichtung eine Funktionsdatenbank aufweist. Insbesondere ist die Funktionsdatenbank eine erweiterbare Funktionsdatenbank. Die Funktionsdatenbank weist vorzugsweise Programmabläufe, Prozessabläufe, Prozessablaufbausteine und/oder typische Funktionalitäten auf. Insbesondere ist eine Funktionsdatenbank für jeden Roboter der Roboteranordnung hinterlegt und/oder hinterlegbar. Die Prozessablaufbausteine repräsentieren beispielsweise den Funktionsumfang des Roboters, wobei diese Prozessablaufbausteine zur Durchführung des Prozessablaufes auswählbar und/oder in einer zeitlichen Reihenfolge anwendbar sind. Insbesondere ist die Prüffunktion als ein Funktionsbaustein in der Steuereinrichtung implementiert. Ferner kann als Prozessablaufbaustein und/oder als Funktion in der Funktionsdatenbank das Umplanen der Trajektorie zur kollisionsfreien Trajektorie sowie das Planen einer kollisionsfreien Trajektorie hinterlegt sein. Dieser Ausgestaltung liegt die Überlegung zugrunde, ein besonders intuitiv handelbares Steuern der Roboteranordnung zu ermöglichen.
  • Eine Ausgestaltung der Erfindung sieht vor, dass die Steuereinrichtung ausgebildet ist, eine Roboterposition zu bestimmen und/oder eine Roboterposition eingebbar oder extrahierbar ist. Beispielsweise kann die Steuereinrichtung die aktuelle Position des Roboters und/oder der Roboter extrahieren und/oder bestimmen. Die Steuereinheit ist insbesondere ausgebildet, beispielsweise bei Auswahl und/oder Ausführung der Prüffunktion die Roboterposition auf eine Kollision zu überprüfen, beispielsweise, ob die Position aktuell oder zukünftig zu einer Kollision führen wird.
  • Optional ist es vorgesehen, dass über die Steuereinrichtung, insbesondere mittels der Eingabeeinrichtung, von einem Benutzer ein Trajektorientyp einstellbar ist. Ein Trajektorientyp ist beispielsweise die Art der Trajektorie und/oder des Pfades. Im Speziellen ist ein Trajektorientyp eine lineare Trajektorie, eine gekrümmte Trajektorie, eine parabelförmige Trajektorie oder eine Trajektorie in Form eines geschlossenen Pfades. Die Steuereinrichtung ist ausgebildet, die Trajektorie so zu bestimmen, dass sie dem Trajektorientyp entspricht. Insbesondere ist die Steuereinrichtung ausgebildet, eine kollisionsfreie Trajektorie des entsprechenden Trajektorientyps zu bestimmen.
  • Einen weiteren Gegenstand der Erfindung bildet eine Roboteranordnung. Die Roboteranordnung weist dabei mindestens einen Roboter, vorzugsweise eine Mehrzahl an Robotern, auf. Der Roboter und/oder die Roboter sind in einem Arbeitsbereich betreibbar. Insbesondere sind die Roboter in einem gemeinsamen Arbeitsbereich betreibbar. Der Roboter und/oder die Roboter weisen jeweils mindestens einen Endeffektor auf, wobei der Endeffektor beispielsweise als ein Aktor ausgebildet ist. Der Endeffektor ist zur Durchführung des Prozessablaufs in dem Arbeitsbereich des Roboters und/oder im Arbeitsbereich der Roboteranordnung bewegbar. Die Roboteranordnung weist die Steuereinrichtung, insbesondere wie vorher beschrieben, auf. Mittels der Steuereinrichtung ist eine Trajektorie zur Durchführung eines Prozessablaufes durch den Roboter und/oder durch die Roboteranordnung planbar. Insbesondere ist der Prozessablauf durch den Benutzer an der Steuereinrichtung eingebbar, festlegbar und/oder einstellbar. Die Roboteranordnung mit der Steuervorrichtung ist ausgebildet, die geplante Trajektorie auf eine Kollisionsfreiheit zu prüfen, wobei es auch vorgesehen sein kann, dass mittels der Steuereinrichtung eine kollisionsfreie Trajektorie bestimmt wird. Insbesondere ist es vorgesehen, dass die Steuereinrichtung der Roboteranordnung ein Trajektorienprüfmodul und ein Prozessmodul aufweist, wobei das Trajektorienprüfmodul insbesondere ein zentrales Trajektorienprüfmodul für eine Mehrzahl an Robotern ist, und das Trajektorienprüfmodul mit dem Prozessmodul und/oder den Prozessmodulen datentechnisch verbunden ist. Das Prozessmodul ist vorzugsweise Teil des Roboters.
  • Einen weiteren Gegenstand der Erfindung bildet ein Verfahren zur Steuerung einer Roboteranordnung. Dabei ist es vorgesehen, dass, insbesondere mittels der Steuereinrichtung, durch einen Benutzer ein Prozessablauf festgelegt, eingegeben und/oder eingestellt wird. Insbesondere kann der Benutzer durch Auswahl von Prozessablaufbausteinen den Prozessablauf konfigurieren, eingeben und/oder festlegen. Die Eingabe, Festlegung oder Einstellung erfolgt insbesondere in einer Programmierumgebung. Durch den Benutzer ist eine Prüffunktion auswählbar. Bei Auswählen der Prüffunktion wird die Trajektorie auf Kollisionsfreiheit geprüft. Insbesondere kann die Trajektorie so geplant und/oder umgeplant werden, dass sie kollisionsfrei den Prozessablauf durchführt. Die Prüfung auf Kollisionsfreiheit und/oder die Auswahl der Prüffunktion zur Prüfung auf Kollisionsfreiheit erfolgt insbesondere in der gleichen Programm- und/oder Programmierumgebung. Das Verfahren sieht damit vor, dass ein Benutzer das Festlegen des Prozessablaufes sowie die Trajektorienplanung und Überprüfung auf Kollisionsfreiheit in einer gleichen Programmierumgebung durchführen kann und nicht mehrere Programmiersprachen und/oder unterschiedliche Module separat ansteuern und/oder bedienen muss.
  • Einen weiteren Gegenstand der Erfindung bildet ein Computerprogramm. Das Computerprogramm ist insbesondere auf einem Datenträger gespeichert und/oder speicherbar. Der Datenträger ist vorzugsweise eine CD, eine DVD oder ein anderweitiger Massenspeicher. Das Computerprogramm ist ausgebildet, bei Ausführung auf einem Computer, einem Rechner, der Roboteranordnung und/oder der Steuervorrichtung die Schritte des vorherigen Verfahrens durchzuführen.
  • Einen weiteren Gegenstand der Erfindung bildet ein maschinenlesbares Speichermedium. Das maschinenlesbare Speichermedium ist insbesondere als der Datenträger ausgebildet und im Speziellen eine CD, DVD oder USB-Stick. Auf dem maschinenlesbaren Speichermedium ist das Computerprogramm wie vorher beschrieben gespeichert.
  • Weitere Vorteile, Wirkungen und Ausgestaltungen der Erfindung ergeben sich aus den beigefügten Figuren und deren Beschreibung. Dabei zeigen:
    • 1 eine Roboteranordnung als ein Ausführungsbeispiel;
    • 2 Steuerung einer Roboteranordnung im Stand der Technik;
    • 3 beispielhafte Steuerung mit der Steuervorrichtung;
    • 4 beispielhafter Ablauf zur kollisionsfreien Bahnplanung;
    • 5 beispielhafter Programmablauf zur Ansteuerung basierend auf einer kollisionsfreien Trajektorie;
    • 6 beispielhafter Programmablauf zur Überprüfung einer Kollisionsfreiheit in einer Roboterposition.
  • 1 zeigt eine Roboteranordnung 1. Die Roboteranordnung 1 ist beispielsweise Teil einer Fertigungs-, Produktions- oder Transportanlage. Die Roboteranordnung 1 umfasst mindestens einen Roboter 2. Die Roboteranordnung 1 kann auch mehr als fünf oder mehr als zwanzig Roboter 2 umfassen. Der Roboter 2 ist in einem Arbeitsbereich 3 angeordnet. Der Arbeitsbereich 3 wird beispielsweise durch einen Abschnitt der Produktionshalle, Logistikzentrale oder eines Raums gebildet. Der Roboter 2 weist einen Endeffektor 4 auf. Der Endeffektor 4 weist einen Aktor 5 als Greifer auf. Der Endeffektor 4 ist in dem Arbeitsbereich 3 bewegbar, verschwenkbar und/oder verdrehbar. Der Roboter 2 bildet dabei beispielsweise einen Knickarmroboter. Mittels des Aktors 5 kann ein Objekt gegriffen und/oder gehalten werden. Der Roboter 2 ist ausgebildet, den Endeffektor 4 und/oder das gegriffene Objekt entlang einer Trajektorie 6 transportieren zu können. Die Trajektorie 6 ist ein Pfad im Arbeitsbereich 3. Mittels des Roboters 2 kann ein Prozessablauf oder ein Prozessschritt des Prozessablaufs durchgeführt werden.
  • Die Roboteranordnung 1 umfasst eine Steuereinrichtung 7. Die Steuereinrichtung 7 weist ein Prozessmodul 8 und ein Trajektorienprüfmodul 9 auf. Das Trajektorienprüfmodul 9 ist vorzugsweise als eine zentrale Rechnereinheit ausgebildet. Das Prozessmodul 8 kann als eine Rechnereinheit ausgebildet sein, vorzugsweise ist das Prozessmodul 8 in den Roboter 2 integriert. Das Prozessmodul 8 ist datentechnisch mit dem Trajektorienprüfmodul 9 verbunden. Ferner ist das Prozessmodul 8, und damit auch die Steuereinrichtung 7, datentechnisch mit dem Roboter 2 zu dessen Steuerung verbunden.
  • Das Prozessmodul 8 weist eine Eingabeeinrichtung 10 auf. Die Eingabeeinrichtung 10 ist beispielsweise als ein Touchpad ausgebildet, alternativ und/oder ergänzend weist die Eingabeeinrichtung 10 eine Tastatur, eine Maus und/oder einen Joystick auf. Mittels der Eingabeeinrichtung 10 kann ein Benutzer einen Prozessablauf eingeben, festlegen und/oder einstellen. Beispielsweise sind dazu Prozessablaufbausteine hinterlegt, welche der Benutzer auswählen kann. Beispielsweise kann der Benutzer einen Startpunkt und/oder einen Endpunkt festlegen sowie Arbeitsabläufe, Haltezeiten und/oder Haltepunkte. Durch das Festlegen des Prozessablaufes kann eine Trajektorie und/oder kann eine Mehrzahl an Trajektorien bestimmt werden. Das Prozessmodul 8 ist datentechnisch mit dem Trajektorienprüfmodul 9 verbunden. Dem Trajektorienprüfmodul 9 ist der Prozessablauf, wie er von dem Benutzer eingestellt und/oder festgelegt wurde, bereitgestellt. Das Trajektorienprüfmodul 9 bezieht insbesondere auch Startpunkt, Endpunkt und/oder Zwischenpunkte vom Prozessmodul 8. Das Trajektorienprüfmodul 9 ist ausgebildet, eine kollisionsfreie Trajektorie zur Durchführung des Prozessablaufs zu planen. Insbesondere prüft das Trajektorienprüfmodul 9 die Kollisionsfreiheit der berechneten Trajektorie 6. Die berechnete kollisionsfreie Trajektorie wird dem Prozessmodul 8 datentechnisch bereitgestellt, wobei das Prozessmodul 8 den Roboter 2 basierend auf der kollisionsfreien Trajektorie 6 zur Durchführung des Prozessablaufs ansteuert. Insbesondere ist durch den Benutzer auf dem Prozessmodul 8 eine Funktion auswählbar, welche das Trajektorienprüfmodul 9 ansteuert und veranlasst, die kollisionsfreie Trajektorie 6 zu bestimmen und/oder auf Kollisionsfreiheit zu prüfen. Durch das Betätigen der Prüffunktion auf dem Prozessmodul 8 wird das Trajektorienprüfmodul 9 insbesondere auch veranlasst, die kollisionsfreie Trajektorie dem Prozessmodul 8 bereitzustellen.
  • Die Roboteranordnung 1 weist ferner eine Sensorvorrichtung 11 auf. Die Sensorvorrichtung 11 ist beispielsweise als eine Videokamera ausgebildet, welche den Arbeitsbereich 3 videotechnisch überwacht. Insbesondere sind mittels der Sensorvorrichtung 11 Hindernisse, beispielsweise Gegenstände, Fahrzeuge oder Personen, im Arbeitsbereich 3 detektierbar, wobei die detektierten Gegenstände als Umgebungsdaten der Steuereinrichtung 7 bereitgestellt sind, wobei die Steuereinrichtung 7, und insbesondere das Trajektorienprüfmodul 9, basierend auf den Umgebungsdaten die Kollisionsfreiheit der Trajektorie bestimmen und/oder prüfen kann.
  • 2 zeigt ein Konzept zur Steuerung einer Roboteranordnung, wie es beispielsweise im Stand der Technik zu finden ist. Dabei wird der Prozessablauf 12 nicht auf der Roboterbewegungssteuerung 13 implementiert, sondern in einer übergeordneten Einheit, beispielsweise einer übergeordneten Rechnereinheit 14. Der Roboter wird dabei von der Übergeordneten Einheit als Remotesteuerung gesteuert. Diese übergeordnete Rechnereinheit 14 weist ein Planungsmodul 15 auf, wobei das Planungsmodul 15 eine kollisionsfreie Bahn zwischen einem Start- und Zielpunkt berechnen kann. In der Komponente zur Bestimmung des Prozessablaufs 4 programmiert der Benutzer den logischen Ablauf des Roboters 2 und kann dabei durch das Modul 15 kollisionsfreie Bahnen zwischen Punkten berechnen. Die Komponente zur Festlegung des Prozessablaufs 12 steuert während des Betriebs die Roboterbewegungssteuerung 13 an (Remote-Control), welche wiederum den Roboter 2 und dessen Kinematik 16 ansteuert, und so den Roboter 2 kollisionsfrei bewegt.
  • Beispielsweise wird mit dieser der Prozessablauf „Griff in die Kiste“ erstellt und geplant. Dabei wird die Greifposition von einer Sensorvorrichtung, beispielsweise 3D-Sensor, vorgegeben, wobei die Zielposition beispielsweise ein Transportband ist, auf dem das Objekt abgelegt werden soll. Der Benutzer implementiert den Prozessablauf hier wie folgt: 1. Berechnen der kollisionsfreien Bahn von IstPosition zur Grundstellung. 2. Öffnen Greifer. 3. Fahre den Roboter entlang der berechneten Bahn in Grundstellung. 4. Berechne die kollisionsfreie Bahn von Grundstellung zu Greifposition in Kiste. 5. Fahre den Roboter entlang der berechneten Bahn in die Greifposition in der Kiste. 6. Schließe Greifer. 7. Berechne die kollisionsfreie Bahn von Greiferposition in der Kiste zum Ablagepunkt. 8. Fahre den Roboter entlang der berechneten Bahn in den Ablagepunkt. 9. Öffne Greifer. 10. Berechne die kollisionsfreie Bahn vom Ablagepunkt zur Greiferposition in der Kiste. 11. Fahre den Roboter entlang der berechneten Bahn in die Greifposition in der Kiste. 12. Schließe Greifer. 13. Wie Punkt 7 fortfolgende.
  • Der hauptsächliche Nachteil eines solchen Ansatzes ist der, dass der Benutzer nicht mehr in seiner gewohnten Programmierumgebung arbeiten kann, sondern sich mit einer neuen Programmierung eines übergeordneten Systems beschäftigen muss und das nötige Wissen sich aneignen. Oft kann aber ein solches übergeordnetes Programmiersystem spezielle Roboterfunktionalitäten nicht oder nur teilweise abbilden. Zusätzlich muss das Instandhaltungs- und/oder Servicepersonal mit dem unbekannten Gesamtsystem zurechtkommen, was erhöhten Schulungsaufwand verursacht.
  • Daher ist es eine Überlegung der Erfindung, die Funktionalität der kollisionsfreien Bahnplanung als eine höherwertige Funktion direkt auf der Robotersteuerung, Roboterbewegungssteuerung und/oder Steuereinrichtung bereitzustellen. Der Benutzer kann daher weiterhin seine robotersteuerungsspezifischen Fachkenntnisse anwenden.
  • 3 zeigt die Funktionsverteilung eines Ausführungsbeispiels einer Roboteranordnung 1. Die Steuereinrichtung 7 weist das Trajektorienprüfmodul 9 und das Prozessmodul 8 auf. Das Prozessmodul 8 ist zum Steuern des Trajektorienprüfmoduls 9 und zum Steuern des Roboters 2. Das Prozessmodul 8 weist eine Eingabeeinrichtung 10 auf, wobei auf der Eingabeeinrichtung 10 der Benutzer den Programmablauf 12 festlegen und/oder einstellen kann. Die Eingabeeinrichtung ist beispielsweise als ein Bildschirm mit Tastatur und/oder Mouse ausgebildet. Alternativ oder ergäneznd ist die Eingabeeinrichtung 10 als Touchpad ausgebildet. Beispielsweise ist eine Bibliothek mit Prozessablaufbausteinen hinterlegt, aus welchen der Benutzer auswählen kann. Insbesondere bildet das Prozessmodul 8 ein Interface zum Steuern des Trajektorienprüfmoduls 9 und des Roboters 2. Das Prozessmodul ist Teil des Roboters 2, wobei auch vorzugsweise die Eingabeeinrichtung 10 Teil des Roboters ist und der Benutzer darüber den Roboter programmieren kann und den Programmablauf festlegen und/oder einstellen kann.
  • Will der Benutzer nach der Einstellung und/oder Festlegung des Prozessablaufes auf dem Prozessmodul 8 eine kollisionsfreie Trajektorie bestimmen lassen, so wählt er auf dem Prozessmodul 8 beispielsweise mittels der Eingabeeinheit 10 eine entsprechende Funktion, beispielsweise die Prüffunktion, aus. Nach Auswahl der Prüffunktion wird die gewünschte Start- und/oder Zielposition an das Trajektorienprüfmodul 9 übergeben. Das Trajektorienprüfmodul 9 bestimmt basierend auf den Umgebungsdaten, der Startposition und der Zielposition eine kollisionsfreie Trajektorie und übergibt diese kollisionsfreie Trajektorie an das Prozessmodul 8. Der Benutzer erhält so die kollisionsfreie Trajektorie zur Verfügung gestellt. Das Prozessmodul 8 ist dann ausgebildet, basierend auf der bereitgestellten kollisionsfreien Trajektorie den Roboter 2 anzusteuern. Das Prozessmodul 8 übergibt der übergeordneten Einheit, dem Trajektorienprüfmodul 9, den Prozessablauf 12, wobei das Trajektorienprüfmodul 12 den die Trajektorie kollisionsfrei plant und die kollisionsfreie Trajektorie dem Prozessmodul 8 übermittelt. Die Ansteuerung des Roboters mit der kollisionsfreien Trajektorie erfolgt durch das Prozessmodul 8 und somit nicht im Remotbetrieb durch die übergeordnete Einheit. Es ist damit insbesondere nur Logik und/oder Rechenleistung zur kollisionsfreien Bahnplanung im Trajektorienprüfmodul 12 abgelegt und/oder ausgelagert, wobei die restliche Logik und/oder Programmierung im Planungsmodul 12 verblebleibt und damit im Roboter 2 ist und/oder auf Roboterebene liegt.
  • 4 zeigt schematisch den Ablauf zur Steuerung der Roboteranordnung 1. In dem Prozessmodul 8 kann der Benutzer einen Prozessablauf 12 festlegen und/oder einstellen. Das Prozessmodul 8 ist insbesondere ausgebildet, aus dem Prozessablauf eine Startposition, eine Endposition und/oder Achsenkonfigurationen zu bestimmen. Ferner kann die Startposition, die Endposition und/oder die Achsenkonfiguration auch durch den Benutzer einstellbar und/oder vorgebbar sein. Der Prozessablauf 12, die Startposition, die Endposition und/oder die Achsenkonfiguration werden einem Zwischenmodul 17 bereitgestellt, welches insbesondere als ein Interface agieren kann. Dieses Zwischenmodul 17 stellt die Applikation 12, die Startposition, die Endposition und/oder die Achsenkonfiguration insbesondere in einem Datenformat, welches von dem Trajektorienprüfmodul 9 verarbeitet werden kann, dem Trajektorienprüfmodul 9 zur Verfügung. Das Trajektorienprüfmodul 9 umfasst eine Rechnereinheit 18, welche basierend auf dem bereitgestellten Prozessablauf, Startposition, Endposition und/oder Achsenkonfiguration eine kollisionsfreie Trajektorie 19 bestimmen kann. Die Trajektorie 19 wird datentechnisch dem Prozessmodul 8 bereitgestellt, welches insbesondere von dem Zwischenmodul 17 aufgefangen und/oder angenommen wird und beispielsweise in ein Datenformat oder Programmformat umgewandelt wird, welches im Prozessmodul 8 und insbesondere durch den Benutzer verwertbar und/oder anwendbar ist. Die kollisionsfreie Trajektorie 19 ist dann dem Benutzer bereitgestellt. Insbesondere ist sie dem Benutzer an der Eingabeeinrichtung 10 bereitgestellt, welche auch eine Ausgabeeinrichtung wie einen Bildschirm umfassen kann.
  • 5 zeigt den Ablauf zur Steuerung ähnlich wie in 4, wobei statt dem Ausgeben der kollisionsfreien Trajektorie auf der Eingabeeinrichtung 10 die kollisionsfreie Trajektorie umgesetzt wird. Dazu wird von dem Zwischenmodul 17 die kollisionsfreie Trajektorie 19 in einem Bewegungsbefehl 20 umgesetzt. Der Bewegungsbefehl 20 wird von dem Prozessmodul 8 genutzt, den Roboter und/oder den Aktor zur Durchführung der Prozessfunktion und zur Bewegung entlang der kollisionsfreien Trajektorie anzusteuern. Nach der Durchführung und/oder Ansteuerung mit der kollisionsfreien Trajektorie wird von dem Zwischenmodul 17 ein Bestätigungsbefehl 21 ausgegeben, welcher auf der Eingabeeinrichtung 10 angezeigt wird und dem Benutzer signalisieren soll, dass der Prozessablauf abgeschlossen ist und/oder durchgeführt wurde. Ferner kann hierbei eine Fehlermeldung angezeigt werden, wenn die Durchführung des Prozessablaufs nicht stattfinden konnte und/oder abgebrochen werden musste.
  • 6 zeigt einen beispielhaften Ablauf zur Überprüfung einer Position des Roboters. Dabei ist auf dem Prozessmodul, insbesondere mittels der Eingabeeinrichtung 10, durch den Benutzer eine Roboterposition 22 eingebbar. Beispielsweise ist die Roboterposition eine Wunschposition, ein Startpunkt oder ein Endpunkt. Die Roboterposition 22 wird im Prozessmodul 8 dem Zwischenmodul 17 bereitgestellt, welches insbesondere eine Umwandlung in ein Datenformat vornimmt, und die umgewandelte Roboterposition 22 dem Trajektorienprüfmodul 9 bereitstellt. Das Trajektorienprüfmodul 9 ist ausgebildet, die Roboterposition zu überprüfen und zu untersuchen, ob an dieser Position eine Kollision mit der Umgebung stattfinden würde. Das Ergebnis 23 der Kollisionsüberprüfung wird von dem Trajektorienprüfmodul 9 dem Prozessmodul 8 bereitgestellt, wobei das Zwischenmodul 17 die bereitgestellte Information 23 in ein Format wandelt, welches der Eingabeeinrichtung 10 bereitstellbar ist und von dieser als Information für den Benutzer ausgebbar ist. Beispielsweise kann ein OK ausgegeben werden, wenn die Position kollisionsfrei ist, oder ein Kollision, wenn an dieser Position eine Kollision vorliegen würde. Der Benutzer kann auf diese Art und Weise bei der Festlegung des Prozessablaufes vorher prüfen, ob gewisse Punkte, beispielsweise Ziel, Start oder Zwischenpunkte, kollisionsgefährlich sind.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • DE 102013203547 A1 [0003]

Claims (14)

  1. Steuervorrichtung für eine Roboteranordnung (1), wobei die Roboteranordnung (1) mindestens einen Roboter (2) umfasst, wobei der Roboter (2) in einem Arbeitsbereich (3) betreibbar ist und einen Endeffektor (4) aufweist, wobei der Endeffektor (4) zur Durchführung eines Prozessablaufs (12) in dem Arbeitsbereich (3) bewegbar ist, mit einer Steuereinrichtung (7) zur Eingabe, Festlegung und/oder Einstellung des Prozessablaufs (12), wobei die Steuereinrichtung (7) ausgebildet ist, eine Trajektorie (6) zur Durchführung des Prozessablaufs (12) zu planen und den Roboter (2) basierend auf der Trajektorie (6) zur Durchführung des Prozessablaufs (12) anzusteuern, dadurch gekennzeichnet, dass die Steuereinrichtung (7) eine Prüffunktion aufweist und ausgebildet ist, vor Ansteuerung des Roboters (2) die Trajektorie (6) auf Kollisionsfreiheit zu prüfen.
  2. Steuervorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die Prüffunktion von einem Benutzer mittels einer Eingabeeinrichtung (10) auswählbar ist.
  3. Steuervorrichtung nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass Steuereinrichtung (7) ausgebildet ist, die Trajektorie (6) basierend auf dem Prozessablauf (12) kollisionsfrei zu planen.
  4. Steuervorrichtung nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass die Steuereinrichtung (7) ausgebildet ist, aus dem Prozessablauf (12) und/oder der Trajektorie (6) einen Startpunkt und einen Endpunkt zu extrahieren, wobei die Prüfung auf Kollisionsfreiheit und/oder die Planung der kollisionsfreien Trajektorie (6) auf dem Startpunkt und dem Endpunkt basiert.
  5. Steuervorrichtung nach einem der vorherigen Ansprüche, gekennzeichnet durch eine Sensorvorrichtung (11) zur Erfassung von Umgebungsdaten, wobei die Steuereinrichtung (7) ausgebildet ist, die Prüfung auf Kollisionsfreiheit basierend auf den Umgebungsdaten durchzuführen.
  6. Steuervorrichtung nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass die Steuereinrichtung (7) ein Prozessmodul (8) und ein Trajektorienprüfmodul (9) aufweist, wobei das Trajektorienprüfmodul (9) eine übergeordnete Einheit bildet und zum Prüfen auf Kollisionsfreiheit ausgebildet ist, wobei das Prozessmodul (8) zur Eingabe, Festlegung und/oder Einstellung des Prozessablaufs (12) ausgebildet ist, wobei das Trajektorienprüfmodul (9) und das Prozessmodul (8) datentechnisch verbunden sind und die Prüffunktion durch das Prozessmodul (8) aufrufbar und/oder anwendbar ist.
  7. Steuervorrichtung nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass Eingabe, Festlegung und/oder Einstellung des Prozessablaufs (12) und Prüfung der Kollisionsfreiheit in einer gemeinsamen Programmierumgebung implementiert und/oder anwendbar sind.
  8. Steuervorrichtung nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass die Steuereinrichtung (7) eine Funktionsdatenbank mit Prozessabläufen (12) und/oder Prozessablaufbausteinen umfasst.
  9. Steuervorrichtung nach einem der vorherigen Ansprüche, dadurch gekennzeichnet dass über die Steuereinrichtung (7) eine Roboterposition eingebbar ist, wobei die Steuereinheit ausgebildet bei Auswahl und/oder Ausführung der Prüffunktion die Roboterposition (22) auf Kollisionen zu überprüfen.
  10. Steuervorrichtung nach einem der vorherigen Ansprüche, dadurch gekennzeichnet dass über die Steuereinrichtung (7) ein Trajektorientyp einstellbar ist, insbesondere linearer oder gekrümmter Pfad, wobei die Steuereinrichtung (7) ausgebildet ist eine Trajektorie (19) des entsprechenden Trajektroientyps zu bestimmen.
  11. Roboteranordnung (1) mit mindestens einem Roboter (2), gekennzeichnet durch eine Steuervorrichtung nach einem der vorherigen Ansprüche.
  12. Verfahren zur Steuerung einer Roboteranordnung (1), insbesondere mittels der Steuereinrichtung (7) nach einem der Ansprüche 1 bis 10, wobei durch einen Benutzer ein Prozessablauf (12) festgelegt, eingegeben und/oder eingestellt wird, wobei durch den Benutzer ist eine Prüffunktion ausgewählt wird, wobei bei Auswählen der Prüffunktion die Trajektorie (19) auf Kollisionsfreiheit geprüft wird, wobei Festlegen, Eingeben und/oder Einstellen sowie auswählen der Prüffunktion in einem gemeinsamen Modul erfolgt.
  13. Computerprogramm, insbesondere auf einem Datenträger, zur Durchführung des Verfahrens nach Anspruch 12.
  14. Maschinenlesbares Speichermedium, auf dem das Computerprogramm nach Anspruch 13 gespeichert ist.
DE102018215124.5A 2018-09-06 2018-09-06 Steuervorrichtung für eine Roboteranordnung, Roboteranordnung, Verfahren, Computerprogramm und maschinenlesbares Speichermedium Pending DE102018215124A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102018215124.5A DE102018215124A1 (de) 2018-09-06 2018-09-06 Steuervorrichtung für eine Roboteranordnung, Roboteranordnung, Verfahren, Computerprogramm und maschinenlesbares Speichermedium
EP19739267.3A EP3846976A1 (de) 2018-09-06 2019-07-10 Steuervorrichtung für eine roboteranordnung, roboteranordnung, verfahren, computerprogramm und maschinenlesbares speichermedium
PCT/EP2019/068559 WO2020048664A1 (de) 2018-09-06 2019-07-10 Steuervorrichtung für eine roboteranordnung, roboteranordnung, verfahren, computerprogramm und maschinenlesbares speichermedium
JP2021512627A JP7179971B2 (ja) 2018-09-06 2019-07-10 ロボット装置のための制御装置、ロボット装置、方法、コンピュータプログラム及び機械可読記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102018215124.5A DE102018215124A1 (de) 2018-09-06 2018-09-06 Steuervorrichtung für eine Roboteranordnung, Roboteranordnung, Verfahren, Computerprogramm und maschinenlesbares Speichermedium

Publications (1)

Publication Number Publication Date
DE102018215124A1 true DE102018215124A1 (de) 2020-03-12

Family

ID=67253899

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018215124.5A Pending DE102018215124A1 (de) 2018-09-06 2018-09-06 Steuervorrichtung für eine Roboteranordnung, Roboteranordnung, Verfahren, Computerprogramm und maschinenlesbares Speichermedium

Country Status (4)

Country Link
EP (1) EP3846976A1 (de)
JP (1) JP7179971B2 (de)
DE (1) DE102018215124A1 (de)
WO (1) WO2020048664A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112757288A (zh) * 2020-11-17 2021-05-07 上海智殷自动化科技有限公司 一种工艺参数自适应的工业机器人运动控制方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112828881B (zh) * 2020-11-27 2022-07-12 智昌科技集团股份有限公司 一种三流融合的工业机器人控制方法
CN113910269B (zh) * 2021-10-27 2022-12-20 因格(苏州)智能技术有限公司 一种机器人总控系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013203547B4 (de) 2013-03-01 2022-08-11 Robert Bosch Gmbh Roboterarbeitsplatzanordnung und Verfahren zum Betreiben der Roboterarbeitsplatzanordnung
US9555545B2 (en) 2014-05-21 2017-01-31 Bot & Dolly, Llc Systems and methods for time-based parallel robotic operation
US9403275B2 (en) * 2014-10-17 2016-08-02 GM Global Technology Operations LLC Dynamic obstacle avoidance in a robotic system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112757288A (zh) * 2020-11-17 2021-05-07 上海智殷自动化科技有限公司 一种工艺参数自适应的工业机器人运动控制方法
CN112757288B (zh) * 2020-11-17 2023-12-26 上海智殷自动化科技有限公司 一种工艺参数自适应的工业机器人运动控制方法

Also Published As

Publication number Publication date
EP3846976A1 (de) 2021-07-14
WO2020048664A1 (de) 2020-03-12
JP2022500260A (ja) 2022-01-04
JP7179971B2 (ja) 2022-11-29

Similar Documents

Publication Publication Date Title
DE112019002310B4 (de) Ausführen einer "peg in hole"-aufgabe mit unbekannter neigung
WO2020048664A1 (de) Steuervorrichtung für eine roboteranordnung, roboteranordnung, verfahren, computerprogramm und maschinenlesbares speichermedium
EP3098034B1 (de) Auswahl eines gerätes oder eines objektes mit hilfe einer kamera
DE102015106227B3 (de) Steuern und/oder Regeln von Motoren eines Roboters
DE102013113370A1 (de) Roboteraufgabensteuerungskomponente mit erweiterbarer programmierumgebung
DE112019000097B4 (de) Steuervorrichtung, Arbeitsroboter, Programm und Steuerverfahren
DE102020207085A1 (de) Verfahren zum steuern eines roboters und robotersteuereinheit
DE102017202439A1 (de) Eingabeeinrichtung, Verfahren zur Bereitstellung von Bewegungsbefehlen an einen Aktor und Aktorsystem
DE102018106812A1 (de) Interaktives Greifsystem
EP3397431B1 (de) Roboter und verfahren zum betreiben eines roboters
DE102012213188B4 (de) Verfahren und System zum Steuern einer Ausführungssequenz eines geschickten Roboters unter Verwendung einer Zustandsklassifizierung
DE102021204697B4 (de) Verfahren zum Steuern einer Robotervorrichtung
DE102021113636B3 (de) Verfahren zum Bestimmen externer Interaktionskräfte und/oder Interaktionsmomente eines Roboters, Roboter und Computerprogrammprodukt
DE102021201918A1 (de) Vorrichtung und Verfahren zum Steuern ein oder mehrerer Roboter
EP3374135B1 (de) Verfahren zum vereinfachten ändern von applikationsprogrammen zur steuerung einer industrieanlage
DE102019216262A1 (de) Roboteranordnung, Verfahren zum Betreiben der Roboteranordnung Computerprogramm sowie maschinenlesbares Speichermedium
DE102015009892A1 (de) Verfahren und System zum Steuern eines Roboters
DE102020200165B4 (de) Robotersteuereinrichtung und Verfahren zum Steuern eines Roboters
EP3965999A1 (de) Verfahren und system zur bestimmung von optimierten programmparametern für ein roboterprogramm
EP3710900B1 (de) Verfahren und system zum vorgeben bzw. lernen eines roboterbefehls
DE102015117306A1 (de) Mehrachs-Maus für einen Mehrachsroboter
EP3752327A1 (de) Koordinierungsanlage, handhabungseinrichtung und verfahren
EP3934858A1 (de) Verfahren, system sowie nichtflüchtiges speichermedium
DE102018109320A1 (de) Verfahren zur Erkennung einer Intention eines Partners gegenüber einer mehrgliedrigen aktuierten Kinematik
DE102022212638B3 (de) Vorrichtung und Verfahren zum Steuern eines Roboters