DE10226140A1 - Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten - Google Patents

Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten Download PDF

Info

Publication number
DE10226140A1
DE10226140A1 DE2002126140 DE10226140A DE10226140A1 DE 10226140 A1 DE10226140 A1 DE 10226140A1 DE 2002126140 DE2002126140 DE 2002126140 DE 10226140 A DE10226140 A DE 10226140A DE 10226140 A1 DE10226140 A1 DE 10226140A1
Authority
DE
Germany
Prior art keywords
robot
joint
objects
time
work area
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.)
Ceased
Application number
DE2002126140
Other languages
English (en)
Inventor
El-Houssaine Waled
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 Roboter 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 Roboter GmbH filed Critical KUKA Roboter GmbH
Priority to DE2002126140 priority Critical patent/DE10226140A1/de
Publication of DE10226140A1 publication Critical patent/DE10226140A1/de
Ceased legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39097Estimate own stop, brake time, then verify if in safe distance
    • 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/40492Model manipulator by spheres for collision avoidance

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

Ein Verfahren zum Vermeiden von Kollisionen zwischen einem Roboter und wenigstens einem anderen Gegenstand, z. B. einem anderen Roboter, zeichnet sich dadurch aus, dass der Benutzer keinerlei programmtechnische Vorkehrungen beim Programmieren von Roboterbewegungen treffen muss, um Kollisionen zu vermeiden, wie ein Definieren gemeinsamer Arbeitsbereiche. Darüber hinaus erlaubt das erfindungsgemäße Verfahren eine automatische Konfiguration des Arbeitsbereichs vom Standpunkt der Kollisionsvermeidung aus. Es bestimmt automatisch, welche Bestandteile einem Kolisionsrisiko mit anderen Bestandteilen ausgesetzt sind. Da das erfindungsgemäße Verfahren auf einer Vorhersage von Konfigurationen bewegter Bestandteile über ein Zeitraum ausgeht, der hinreichend ist, um die Maschinen sicher anzuhalten und eine Behinderungsüberprüfung durchzuführen, ist eine vorherige Kenntnis der Bewegungsbahnen nicht erforderlich. Im Falle einer Kollisionsvorhersage werden die Maschinen längs oder abseits der Bahn gestoppt. Auf diese Weise kann das erfindungsgemäße Verfahren zur Kollisionsvermeidung auch als Absicherung mit vorbekannten expliziten Verfahren eingesetzt werden.

Description

  • Die Erfindung betrifft ein Verfahren zum Vermeiden von Kollisionen zwischen einem Roboter und wenigstens einem anderen Objekt sowie eine Steuerungsvorrichtung, die zum Umsetzen des erfindungsgemäßen Kollisions-Vermeidungsverfahrens einsetzbar ist.
  • Nach einer allgemeinen Definition findet eine Kollision zwischen zwei Objekten A und B statt, wenn diese sich zur gleichen Zeit in demselben Raumbereich aufhalten. Diese Definition ist gleichbedeutend damit, dass wenigstens ein Punkt von A und ein Punkt von B durch dieselben Koordinaten bezüglich eines gemeinsamen Bezugssystems darstellbar sind.
  • Ein Roboter und weitere Objekte, zwischen denen Kollisionen vermieden werden sollen, werden für gewöhnlich als zusammenwirkende Vorrichtungen bezeichnet, da sie in einem bestimmten industriellen Verfahren zusammenarbeiten. Die Zusammenarbeit kann entweder eine aktive (im Falle der Zusammenarbeit eines Roboters mit einem anderen Roboter als Bei spiel für eine zusammenwirkende Vorrichtung) oder eine passive sein. Bei modernen Industrierobotern, die sich mit erheblichen Geschwindigkeiten bewegen, führen Kollisionen in der Regel zu ernsthaften Schäden sowohl an den Robotern als auch an den von diesen gehandhabten Werkstücken und können zu kostspieligen Produktionsausfällen führen. Daher müssen derartige Kollisionen mit allen Mitteln verhindert werden, wenn Industrieroboter effizient eingesetzt werden sollen.
  • Verschiedene Arten von Kollisionen können innerhalb eines Arbeitsbereiches, d.h. eines Raumbereiches, den sich ein Roboter und andere (bewegliche) Objekte teilen, erfolgen. Zum Klassifizieren von Kollisionen müssen verschiedene Faktoren berücksichtigt werden, insbesondere (i) der Typ der zu berücksichtigenden Objekte, z.B. Roboter/Maschinen, stationäre Objekte usw.; (ii) der Kollisionsgrund, z.B. Bahnänderungen, Veränderung von Sensordaten, Programmierfehler usw.; (iii) die Produktionsphase, z.B. ob die Kollision während der Lernphase (manueller Betrieb), der Validierungsphase (automatischer Betrieb) oder während der normalen Produktion (automatischer Betrieb mit vorzugsweise hohen Geschwindigkeiten) erfolgt:
    Ein passives stationäres Objekt ist ein Objekt, das sich an einem festen Ort innerhalb des Arbeitsbereiches befindet und eine unveränderliche Form aufweist. Beispiele für passive stationäre Objekte sind Tische, Stangen usw. Derartige Objekte sind offensichtlich nicht durch irgendeine Steuerungseinrichtung gesteuert. Allerdings kann für derartige Objekte ein statisches Geometriemodell erstellt und gespeichert werden, so dass eine Kollisionsüberprüfung stattfinden kann. Dabei ist zwischen dem Körper eines Roboters (bestehend aus sogenannten Verbindungen, s.u.) und der Last (Werkzeuge oder Werkstücke) zu unterscheiden. Zwischen dem Körper eines Roboters und einem Objekt kann ein ständiges Kollisionspotential bestehen. Das Kollisionspotential zwischen einem Werkzeug und dem Objekt besteht so lange, wie das Werkzeug nicht mit einem auf dem Objekt verankerten Bezugssystem – steuerungstechnisch – verbunden ist. Sobald eine solche steuerungsrelevante Verbindung geschaffen wurde und sich das Werkzeug in einem mit dem Objekt verknüpften Bezugssystem bewegt, besteht grundsätzlich kein Kollisionspotential zwischen dem Werkzeug und dem Objekt, ausgenommen bei manuellem Betrieb, beispielsweise Lernphasen, oder im Falle von Programmierfehlern.
  • Ein aktives stationäres Objekt ist ein Objekt, das sich an einem festen Ort innerhalb des Arbeitsbereiches befindet, darüber hinaus jedoch eine veränderliche Form aufweist. Beispiele für aktive stationäre Objekte sind Einbauten und Paletten, die je nach Beladung variable Höhen aufweisen. Für gewöhnlich werden derartige Objekte nicht durch Robotersteuerungen gesteuert, so dass letztere keinerlei Informationen bezüglich des Zustandes (offen/geschlossen, Höhe usw.) besitzen. Daher ist eine Kollisionsüberprüfung mit derartigen Objekten schwierig. Allerdings kann die Kollisionswahrscheinlichkeit beseitigt werden, indem das Objekt als ein passives stationäres Objekt behandelt wird, dessen Volumen dem größtmöglichen Volumen des aktiven stationären Objektes entspricht. Die vorstehend beschriebene Unterscheidung zwischen dem Körper des Roboters und einer Last ist auch hier zu berücksichtigen.
  • Ein bewegliches Objekt ist ein Objekt, dessen Stellung (Ort und Ausrichtung) innerhalb des Arbeitsbereiches nicht festliegt. Ein Beispiel für ein bewegliches Objekt ist eine Kiste auf einem Förderband. Ein Überprüfen und Vermeiden von Kollisionen mit einem solchen Objekt erfordert aktuelles Wissen bezüglich seiner Stellung.
  • Bahnänderungen können sowohl erwartet als auch unerwartet sein. Eine erwartete Bahnänderung ist eine Änderung, die dem betrachteten industriellen Prozess inhärent ist und innerhalb bekannter Grenzen erfolgt. Eine derartige Änderung kann auf der Grundlage sensorischer Daten erfolgen, die den Roboter veranlassen, sich bei jedem Prozesszyklus auf einer anderen Bahn zu bewegen. Eine unerwartete Bahnänderung ist eine große oder kleine Änderung, die erfolgt, obwohl die Bahn eigentlich unveränderlich ist, oder die einen bestimmten Veränderungsgrenzwert überschreitet. Veränderungen bei an sich konstanter Bahn können z.B. von Nullpunktverschiebungen herrühren. Dramatische Veränderungen jenseits der Grenzen von erwarteten Veränderungen können das Ergebnis eines Sensorausfalls oder unbehandelter Fehler, wie z.B. ein ungesichertes Teil auf einem Förderer sein, das außerhalb der gewöhnlichen Ablagefläche abgelegt ist.
  • Darüber hinaus kann eine Vielzahl von Programmierfehlern zu Kollisionen führen. Solche Kollisionen können während der Überprüfungsphase oder gewöhnlicher Produktionsphasen erfolgen.
  • Kollisionen können auch während des Erlernens oder Wiederanfahrens von Punkten eines Bewegungsablaufs erfolgen, wenn Benutzerfehler oder unerwartete Bewegungen auftreten. Nachdem die Punkte gelehrt oder wieder angefahren worden sind, können Kollisionen während der Validierung aufgrund unerwarteter Programmierfehler auftreten. Selbst für den Fall, dass die Lern-/Wiederanfahr-Phasen kollisionsfrei waren, können Kollisionen noch während der normalen Produktion als Folge von Bahnänderungen oder Programmierfehlern erfolgen, die während der früheren Phasen nicht offenbar geworden sind. Grund hierfür kann sein, dass mehrere ungewöhnliche Umstände zeitgleich auftreten.
  • US 6,212,444 offenbart ein Verfahren zur Vermeidung von Behinderungen bei einem Industrieroboter. In dieser Druckschrift werden Behinderungen zwischen einem robotischem Handhabungssystem und einer weiteren mit diesem zusammenarbeitenden Vorrichtung dadurch vermieden, dass gemeinsame Bereiche definiert werden. Eine Vorrichtung wird so lange daran gehindert, in den gemeinsamen Bereich einzudringen, bis die andere Vorrichtung diesen verlassen hat. Die Kollisionsvermeidung mit gemeinsamen Arbeitsbereichen scheitert jedoch, wenn die Steuerungssoftware nicht fehlerfrei geschrieben ist, was im Falle der vorstehend beschriebenen Programmierfehler zu potentiell ernsthaften Kollisionen führt.
  • Andere Ansätze finden bei der Offline-Programmierung Verwendung, bei der kollisionsfreie Bahnen für die Maschinen (Roboter und andere zusammenwirkende Vorrichtungen) innerhalb des gemeinsamen Arbeitsbereiches generiert werden. Allerdings erfordern derartige Verfahren eine genaue Vorkenntnis der Roboterbahnen. Darüber hinaus müssen die Bahnen aller Maschinen im Arbeitsbereich repetierend sein, d.h. die Bewegungsbahnen müssen sich unverändert wiederholen und dürfen nicht durch externe Sensoren oder Vorränge beeinflussbar sein.
  • Bekannte Robotersteuerungen detektieren in der Regel eine Kollision erst, nachdem eine solche stattgefunden hat. Dazu wird unter Verwendung eines dynamischen Maschinenmodells ein Motorstrom bestimmt. Wenn der tatsächlich gemessene Strom den Modellstrom um einen bestimmten Wert überschreitet, wird eine Kollision angenommen und das System gestoppt, um den Schaden zu minimieren.
  • Der Erfindung liegt die Aufgabe zugrunde, das Problem von Kollisionen zwischen Robotern mit ihresgleichen bzw. ihrer Umgebung unter Vermeidung der vorstehend genannten Nachteile des Standes der Technik zu lösen.
  • Dazu schafft die Erfindung ein Verfahren der eingangs genannten Art, das regelmäßig beinhaltet:
    Bestimmen einer Anhaltzeit für eine automatisch oder manuell gesteuerte Roboterbewegung auf der Grundlage gegenwärtiger und früherer Gelenkstellungen und Gelenkgeschwindigkeiten für jedes Robotergelenk;
    Vorhersagen einer Konfiguration einer Bewegungsbahn des Roboters bei der Anhaltzeit;
    Überprüfen der vorhergesagten Konfiguration mittels Abstands-/Behinderungsalgorithmen bezüglich einer Behinderung von Teilen des Roboters durch Teile der anderen Objekte oder umgekehrt; und
    Anhalten des Roboters und/oder der anderen Objekte im Falle einer drohenden Kollision.
  • Im Rahmen der Erfindung wird die vorhergesagte Konfiguration unter Verwendung der Anhaltzeiten bestimmt, wobei angenommen ist, dass der Roboter sich mit seiner aktuellen Beschleunigung ausgehend von seiner aktuellen Stellung und Geschwindigkeit weiterbewegt. Auf diese Weise liefern die vorhergesagten Bewegungsbahnen eine sogenannte Anhaltkonfiguration, die als solche bezeichnet wird, obwohl sie für gewöhnlich eine von Null verschiedene Geschwindigkeit aufweist.
  • Um Kollisionen zu verhindern, werden demnach Konfigurationen nicht nur zur gegenwärtigen Zeit bezüglich Kollisionen überprüft, sondern auch zu einer zukünftigen Zeit, die aus reichend ist, damit die Maschinen vor einer ungewollten Berührung sicher stoppen können.
  • Nach einer Weiterbildung des erfindungsgemäßen Verfahrens wird der Roboter entlang seiner Bewegungsbahn abgebremst und kommt damit auf dieser zum Stehen. Auf diese Weise kann der Betrieb direkt aus der Anhaltstellung wiederaufgenommen werden, ohne dass weitere Stellungskorrekturen vorzunehmen wären oder es zu einem Werkstückausschuss käme. Darüber hinaus stellt eine Anhalten der Maschinen auf ihren Bahnen sicher, dass keine Kollisionen während der Abbremsphase auftreten.
  • Nach einer weiteren Ausgestaltung der Erfindung wird der Roboter ohne Beachtung seiner eigentlichen Bewegungsbahn abgebremst und stoppt damit in der Regel abseits seiner Bahn. Das bedeutet, dass jede Roboterachse von ihrer gegenwärtigen Geschwindigkeit auf Null abgebremst wird, wobei ein einstellbarer Bremsverlauf vorgegeben sein kann. Dies kann mittels Kurzschluss-Bremsen geschehen, wobei die Antriebe durch mechanische Bremsen und durch Generatorbetrieb abgebremst werden. Ein derartiger Bremsvorgang ist ratsam, wenn ein Antrieb aus irgendeinem Grund nicht längs der Bahn gestoppt werden kann, beispielsweise wenn die Bahnsteigung zu steil ist.
  • Um Kollisionen vorherzusagen oder bezüglich ihres Auftretens zu überprüfen, ist es erforderlich, die Abstände zwischen den Teilen des Roboters und der anderen Objekte zu ermitteln. Dies beinhaltet die Bestimmung des Abstands zwischen geometrischen Approximationen der betroffenen Gegenstände, bei denen es sich entweder um einfache Formen wie Quader oder Kugeln oder um komplexe Polyeder, d.h. vielflächige geschlossene geometrische Gebilde handeln kann. Die am meisten verbreitete Methode zum Bestimmen von Abständen zwischen konvexen Polyedern ist die Methode nach Gilbert-Johnson-Keerthi (GJK), eine iterative Methode, die die Geometrie in Simplexen unterteilt, bis sie zu einem minimalen Abstand zwischen den beiden Objekten konvergiert. Dabei ist abzuwägen zwischen der Genauigkeit der Näherung und der Leistungsfähigkeit (Ausführungszeit) des Kollisions-Detektionsalgorithmus', der im Rahmen der Erfindung zum Einsatz kommt. So stellt beispielsweise die Beschreibung aller Verbindungen eines Roboters durch einhüllende Zylinder, Quader oder Kugeln eine eher konservative Approximation dar, ermöglicht jedoch eine schnelle Ausführbarkeit des Kollisions-Detektionsalgorithmus'. Andererseits bedingt eine genauere Approximation der Verbindungsstruktur durch Polyeder eine geringere Leistungsfähigkeit des Kollisions-Detektionsalgorithmus'. Daher beinhaltet die geometrische Behinderungsüberprüfung nach einer bevorzugten Ausgestaltung der Erfindung ein Bestimmen von Abständen zwischen geometrischen Approximationen, die verschiedene Genauigkeitsstufen aufweisen, die gemäß einer gewünschten Genauigkeit der Abstandsüberprüfung geprüft werden. Beispielsweise ist es nicht erforderlich, die genaueren Approximationen zu überprüfen, wenn die betreffenden Strukturen weit voneinander entfernt sind.
  • Das Erstellen von geometrischen Approximationen ist eine anspruchsvolle und zeitintensive Aufgabe. Allerdings gibt es bereits kommerziell verfügbare Software, die automatisch CAD-Modelle in Geometriedateien übersetzt, die sich mit Kollisions-Detektionsalgorithmen verwenden lassen.
  • Kollisionsvermeidung beinhaltet eine genaue Vorgabe der Bewegungsbahnen. Da die Bewegung von Industrierobotern hinreichend gleichmäßig und ruckfrei erfolgt, sind relativ einfache Konfigurations-Vorhersagealgorithmen zum Vorhersagen der Bewegungsbahnen ausreichend. Ausgehend von den tat sächlichen Stellungen und Geschwindigkeiten jedes einzelnen Gelenkes i zu gegenwärtigen und frühren Zeiten lässt sich die Bewegungsbahn des Gelenks – ausgedrückt als zukünftige Gelenkstellung θi – mittels der Beziehung:θi = 1/2γiti,s 2 + . i,0ti,s + θi,0 (1)vorhersagen, wobei θi,0 und . i,0 die Gelenkstellung bzw. Gelenkgeschwindigkeit zur gegenwärtigen Zeit t, γi die geschätzte Gelenkbeschleunigung zur Zeit t und ti,s die Anhaltzeit bezeichnet. Die Gelenkbeschleunigung γi kann ausgehend von der Gelenkgeschwindigkeit zur Zeit t und zu früheren Zeiten t–k, t–k = t – k·Δt (k = 1, 2, 3, ...), abgeschätzt werden, wobei Δt das Überprüfungs-Zeitintervall bezeichnet, dessen Dauer der Abtastperiode der Robotersteuerung entsprechen und demgemäß beispielsweise Werte um 12 ms annehmen kann. Die Gelenkstellung θ und die Gelenkgeschwindigkeit . sind gegeben als Winkelstellung (Einheit: Grad) bzw Winkelgeschwindigkeit (Grad/s).
  • Nach einer bevorzugten Ausgestaltung der Erfindung wird die Geschwindigkeit . i des Gelenks i ausgehend von der Gelenkstellung θi,0 zur gegenwärtigen Zeit t und zu früheren Zeiten t–k unter Verwendung des Gear'schen Verfahrens, d.h. mittels der Beziehung:
    Figure 00090001
    abgeschätzt, wobei θi,–k = θi(t–k) und cf = 1/(12Δt) , c0 = 25, c1 = –48, c2 = 36, c3 = –16, c4 = 3.
  • Gleichfalls wird die Beschleunigung γi des Gelenkes i ausgehend von der Gelenkgeschwindigkeit . i,0; zur gegenwärtigen Zeit t und zu früheren Zeiten t–k, t–k = t – k·Δt, unter Verwendung von
    Figure 00100001
    abgeschätzt. Eine Untersuchung der Vorhersagegenauigkeit hat ergeben, dass diese bis hin zu Vorhersagezeiten von 240 ms für typische Roboteranwendungen ausreichend ist.
  • Nach einer weiteren Ausgestaltung der Erfindung umfasst die Konfigurationsvorhersage und Behinderungsüberprüfung:
    Bestimmen eines Anhaltabstands θi,stop des Gelenkes i gemäß . i,stop = . i,0 2/(2γi,max), wobei γi,max eine maximale negative Beschleunigung des Gelenkes bezeichnet;
    Addieren des Anhaltabstands zu der gegenwärtigen Stellung des Gelenkes, um so eine Konfiguration nach der Anhaltezeit zu erhalten; und Bestimmen eines Abstands zwischen Teilen des Roboters und der anderen Objekte bei dieser Konfiguration. Hierbei handelt es sich um einen eher konservativen Zugang: Beispielsweise betragen die maximale Geschwindigkeit und die maximale negative Beschleunigung des ersten Gelenkes eines Standard-Industrieroboters 240 Grad/s bzw. 880 Grad/s2. Daher beträgt der Anhaltewinkel des Gelenkes bei maximaler Geschwindigkeit etwa 33 Grad. Aufgrund dieses großen Anhalteabstands könnte für die Anhaltekonfiguration eine Kollision vorausgesagt werden, obwohl die geplante Bewegungsbahn eigentlich kollisionsfrei ist.
  • Um die Genauigkeit der Stellungsvorhersage zu verbessern, ist nach einer Weiterentwicklung des erfindungsgemäßen Verfahrens vorgesehen, einen Filter auf die Gelenkstellungs- und Geschwindigkeitsdaten anzuwenden, die zur Stellungsvorhersage benutzt werden. Vorzugsweise wird der Filter im Zeitbereich auf die Daten angewendet. Nach einer weiteren bevorzugten Ausgestaltung der Erfindung geschieht die Filterung durch Berechnen eines laufenden Mittels, welches die Daten effektiv glättet und auf diese Weise vor allem die hochfrequenten Anteile herausfiltert, die vor allem im Zuge abrupter Richtungswechsel der Roboterbewegung (Sprünge) auftreten. Die Filterlänge kann an die gewünschte Vorhersagegenauigkeit oder Irregularität des Bewegungsprofils angepasst werden. Alternativ dazu kann die Filterung auch im Frequenzbereich erfolgen.
  • Die Anhaltzeit einer Roboterachse hängt von den folgenden Parametern ab:
    • – Achsgeschwindigkeit: Je höher die Geschwindigkeit desto länger dauert es, den Roboter abzubremsen.
    • – Maximale erlaubte Geschwindigkeitsabnahme: Je größer die maximale erlaubte Geschwindigkeitsabnahme, desto weniger Zeit wird benötigt, um den Roboter abzubremsen;
    • – Roboterkonfiguration: Da die Trägheit des Roboters von seiner Konfiguration abhängt, hängt auch die Anhaltzeit einer gegebenen Achse von den Werten der verbleibenden Achsen ab, insbesondere von den Achsen am Ende der kinematischen Kette, d.h. in Richtung des distalen Endes des Roboters.
    • – Nutzlast: Je schwerer die Last und je größer ihre Trägheit, desto mehr Zeit wird benötigt, um den Roboter abzubremsen.
  • Die Anhaltzeit lässt sich anhand einer Nachschlagtabelle abschätzen. Allerdings schafft die Erfindung eine Vorrichtung zum Abschätzen der Anhaltzeiten der Achsen in einer Art und Weise, die trotz der großen Anzahl von Parametern auch für Echtzeit-Anwendungen geeignet ist:
    Aus diesem Grund ist zwecks weiterer Verbesserung sowohl der Genauigkeit als auch der Geschwindigkeit der Ermittlung der Anhaltzeit nach einer Weiterentwicklung der Erfindung vorgesehen, dass zur Konfigurationsvorhersage und Behinderungsüberprüfung wenigstens ein neuronales Netz zum Abschätzen von Anhaltzeiten für die Roboterachsen eingesetzt wird. Nach einer bevorzugten Ausgestaltung wird für jedes Robotergelenk ein neuronales Netz verwendet. Dadurch wird die Abschätzung der Anhaltzeit flexibler und lässt sich besser an eine bestimmte Situation anpassen.
  • Zu diesem Zweck verwendet das erfindungsgemäße Verfahren mehrschichtige neuronale Netze (NN) mit möglicher Rückübertragung von Informationen innerhalb des Netzes. Die neuronalen Netze verarbeiten als Eingangswerte die Parameter, die die Anhaltzeit der Achsen beeinflussen, und liefern eine Abschätzung der Anhaltzeit. Die neuronalen Netze werden mit Datensätzen trainiert, die durch Messung am Roboter gewonnen wurden. Die Trainings-Datensätze sollten den gesamten Bereich der relevanten Parameter abdecken und dabei eine oder mehrere Einflussgrößen wie Gelenkgeschwindigkeiten, Gelenkwinkel, Gelenkstellungen, Stellungen und Geschwindigkeiten der Roboterbasis sowie Werkzeug- oder Lastmassen beinhalten. Sobald die neuronalen Netze trainiert sind, können sie zur genauen Abschätzung der Anhaltzeiten eingesetzt werden.
  • US 6,356,806 B1 / DE 198 57 436 A1 offenbart die Verwendung einer Kombination eines Standard-PC-Betriebssystems und ei nes Echtzeit-Betriebssystems zur Robotersteuerung. Die Geometrie eines Roboters und eines Werkstücks werden mittels eines externen CAD- oder eines Offline-Simulationssystems näherungsweise dargestellt und die resultierenden Geometriedateien in Verbindung mit dem Standard-PC-Betriebssystem der Robotersteuerung gespeichert. Um die Geometriedatei, die in der Regel in Verbindung mit dem PC-Betriebssystem erzeugt und unterhalten wird, für Anwendungen nutzbar zu machen, die unter dem Echtzeit-Betriebssystem ablaufen, wenn das erfindungsgemäße Verfahren zur Kollisionsvermeidung zusammen mit einer derartigen dualen Steuerung Anwendung findet, werden vorzugsweise alle gewonnen Informationen bezüglich Kollisionen in einer Arbeitsbereich-Beschreibungsdatei gespeichert, um so zur Weiterleitung an das Echtzeit-Betriebssystem zur Verfügung zu stehen, das für die Steuerung der Roboterbewegung verantwortlich ist.
  • Nach einer Weiterentwicklung des erfindungsgemäßen Verfahrens enthält die Arbeitsbereich-Beschreibungsdatei Zeiger auf geometrische Approximationsdateien, die zum Beschreiben aller Objekte im Arbeitsbereich notwendig sind.
  • Nach einer alternativen Ausgestaltung des erfindungsgemäßen Verfahrens wird eine Kopie der Arbeitsbereich-Beschreibungsdatei in jeder Steuerung im Arbeitsbereich, d.h. in jeder zusammenwirkenden Vorrichtung unterhalten und aktualisiert. Darüber hinaus wird die Arbeitsbereich-Beschreibungsdatei zumindest dann aktualisiert, wenn eine geometrische Veränderung innerhalb des Arbeitsbereichs erfolgt, z.B. durch Befestigen eines neuen Werkzeugs am Roboter. Die Aktualisierung kann auch im Bereich des Echtzeit-Betriebssystems erfolgen.
  • Die meisten Roboteranwendungen erfordern ein gewisses Maß an zulässiger und gesteuerter Berührung, beispielsweise bei der Materialhandhabung, beim Schweißen usw. Daher muss die Robotersteuerung wissen, dass derartige Kontakte nicht wie potentiell gefährliche Kollisionen behandelt werden müssen, die zu einem Abbruch der Roboterbewegung führen. Aus diesem Grund wird im Vorfeld einer erlaubten Berührung zwischen dem Roboter und einem Objekt, z.B. während eines Handhabungsvorgangs, eine Verbindung geschaffen, die dafür sorgt, dass der Roboter und ggf. das Objekt während einer nachfolgenden "Kollision" nicht angehalten werden. Die Verbindung kann nach Beendigung der erlaubten Berührung wieder aufgelöst werden.
  • In diesem Zusammenhang muss unterschieden werden zwischen Situationen, in denen alle Maschinen in einem Arbeitsbereich sich längs bekannter, vorgegebener Bahnen bewegen, und Situationen, in denen die Bahnen in Echtzeit modifiziert werden, beispielsweise durch sensorische Informationen (Kameras oder dergleichen). Erstere werden im folgenden als "synchron" bezeichnet, während letztere "asynchron" genannt werden. Derartige Situationen ergeben sich auch im Verhältnis zwischen einem Roboter und einem Werkzeug, welches dieser benutzt. Ein Bestandteil des Arbeitsbereichs ist mit einem anderen Bestandteil verbunden, wenn sich ersterer in einem Bezugssystem bewegt, welches an letzterem angeheftet ist. Damit ist die Relativbewegung zwischen den beiden Bestandteilen synchron und es existiert keine potentielle Kollision zwischen ihnen, solange die Verbindung besteht. Beispielsweise führt eine Bewegung einer der beiden Bestandteile, wie eines ersten Roboters, zu einer entsprechenden Bewegung des anderen Bestandteils, wie eines zweiten Roboters. Ruf diese Weise ist das (räumliche) Verhältnis der beiden konstant. Ein Kollisionspotential kann vor Schaffung der Verbindung bestehen, oder nachdem die Verbindung gelöst worden ist. Demnach ist ein Werkzeug, das mit einem Werkstück in Berührung kommt, mit dem Werkstück ver bunden. Es bewegt sich daher in einem Bezugssystem, das an das Werkstück angeheftet ist. Der Vorgang ist demzufolge synchron, und es existiert kein Kollisionspotential zwischen dem Werkzeug und dem Werkstück. Allerdings handelt es sich bei bis zu 90% der im alltäglichen Einsatz von Industrierobotern auftretenden Fälle um asynchrone Fälle.
  • Um das vorstehend beschriebene Verfahren bei einem Roboter zur Kollisionsvermeidung zwischen dem Roboter und wenigstens einem anderen Objekt einsetzen zu können, schlägt die Erfindung weiterhin eine Steuerungsvorrichtung vor, die aufweist: Mittel zum regelmäßigen Bestimmen einer Anhaltezeit für eine automatisch oder manuell gesteuerte Roboterbewebung auf der Grundlage gegenwärtiger und frührer Gelenkstellungen und Gelenkgeschwindigkeiten für jedes Robotergelenk; Mittel zum regelmäßigen Vorhersagen einer Konfiguration einer Bewegungsbahn des Roboters nach den Anhaltezeiten; Mittel zum regelmäßigen Überprüfen der vorhergesagten Konfiguration mittels Abstands-/Behinderungs-Algorithmen bezüglich einer Behinderung von Teilen des Roboters durch Bestandteile der anderen Objekte, und Mittel zum Anhalten des Roboters und/oder der anderen Objekte im Falle einer drohenden Kollision.
  • Die erfindungsgemäße Steuerungsvorrichtung ist im folgenden als CAM (Collision Avoidance Manager) bezeichnet. Die CAM ist eine Steuerung, die für die Detektion von bzw. die Reaktion auf Kollisionen zwischen wenigstens zwei Bestandteilen des Arbeitsbereiches zuständig ist. In einem Arbeitsbereich kann mehr als eine CAM vorgesehen bzw. vorhanden sein.
  • Nach einer weiteren Ausgestaltung der erfindungsgemäßen Steuerungsvorrichtung besitzt diese Prozessormittel zum parallelen Ausführen von zwei Betriebssystemen, von denen ei nes ein Standard-PC-Betriebssystem und das andere ein Echtzeit-Betriebssystem zum Steuern der Roboterbewegung ist. Die Prozessormittel sind zum Ausführen eines Übersetzer-Programms für die Kommunikation zwischen dem PC- und dem Echtzeit-Betreibssystem ausgebildet. Auf diese Weise existiert für den Benutzer unter dem PC-Betriebssystem (z.B. WindowsTM) eine standardisierte Benutzeroberfläche, wodurch die Programmierung des Roboters sehr vereinfacht wird. Nach einer bevorzugten Ausgestaltung sind die Prozessormittel zum Ausführen von entsprechenden Teilen eines Programms ausgebildet, durch das ein Verfahren zur Kollisionsvermeidung implementiert ist. Nach einer weiteren Ausgestaltung der erfindungsgemäßen Steuerungsvorrichtung weist diese Speichereinheiten in Verbindung mit beiden Betriebssystemen zum Speichern von Geometriedaten für den Arbeitsbereich auf.
  • Wie bereits früher erwähnt, werden alle Informationen bezüglich Kollisionen (z.B. potentielle Kollisionen, Zeiger auf Geometriedateien usw.) in Speichereinheiten der CAM in speziellen Arbeitsbereich-Beschreibungsdateien gespeichert, die Arbeitsbereich-Diagramme (WorkCell Diagrams WCD) genannt werden. Für jeden Bestandteil des Arbeitsbereichs werden so Informationen bezüglich seiner potentiellen Kollisionen und Geometriedateien in den Speichereinheiten abgelegt. Diese Informationen werden in die Echtzeit-Steuerung geladen, so dass die vorstehend beschriebenen Kollisions-Vermeidungsaufgaben (Collision Avoidance Tasks CAT), beispielsweise die tatsächliche Vorhersage der Roboterbewegung und des Abbremsen auf oder abseits der Bahn gemäß des erfindungsgemäßen Verfahrens, diese in Echtzeit nutzen können.
  • Um Kollisions-Informationen zwischen den beiden Betriebssystemen zu kommunizieren, beinhaltet die erfindungsgemäße Steuerungsvorrichtung ein Übersetzungsprogramm (Interpreter), das vorzugsweise unter dem Echtzeit-Betriebssystem läuft.
  • Da ein Arbeitsbereich mehrere CAM in Verbindung mit einer Mehrzahl von kollisionsüberwachten Robotern oder dergleichen beinhalten kann, umfasst die erfindungsgemäße Steuerungsvorrichtung Prozessormittel zumindest in Verbindung mit dem Echtzeit-Betriebssystem, die für die Kommunikation mit den Echtzeit-Betriebssystemen entsprechender anderer Steuerungsvorrichtungen in einem gemeinsamen Arbeitsbereich ausgebildet sind. Die dadurch definierte Steuerungs-Kommunikationsaufgabe erhält Daten von den entsprechenden Robotersteuerungen (diejenigen Steuerungen, für die eine bestimmte CAM Kollisionen detektiert).
  • Kommunikation zwischen Steuerungen ist eine Voraussetzung für viele Aspekte des Zusammenwirkens von Robotern. Damit die erfindungsgemäße Kollisionsvermeidung funktioniert, müssen verschiedene Daten an die CAM übermittelt werden. Die CAM muss die Konfiguration aller Bestandteile des Arbeitsbereichs kennen. Daher sind für jeden Roboter oder jedes Objekt, das die CAM überwacht, die folgenden Wert zu übermitteln:
    • – Gelenkwerte: Diese definieren die Konfiguration des Roboters bezüglich seiner Basis;
    • – Basiskoordinaten: Diese definieren die Verbindung mit den Gelenkwerten die Konfiguration des Roboters im Arbeitsbereich. Die Basis kann selbst beweglich sein, beispielsweise wenn der Roboter auf einer Schiene angeordnet ist;
    • – Gelenkgeschwindigkeiten und Basisgeschwindigkeiten: Diese werden in den Kollisions-Vorhersagealgorythmen verwendet. Dabei ist die Geschwindigkeit des Basis-Bezugssystems für die Steuerung nicht ohne weiteres verfügbar und muss unter Verwendung von Daten gemessen oder geschätzt werden, die eine externe Maschine, die die Roboterbasis bewegt, zur Verfügung stellt;
    • – Werkstückänderungen;
    • – Werkzeugänderungen;
    • – Änderungen des Bewegungsziels; und
    • – Änderungen des Kollisionspotentials.
  • Werkzeug- und Werkstückänderungen am Roboter, der durch die CAM gesteuert wird, werden durch den Interpreter an die Echtzeit-Steuerung übermittelt.
  • Nach einer Weiterbildung der Erfindung weist die Steuerungsvorrichtung zusätzlich eine Eingabeeinrichtung zum Eingeben von Geometriedaten für den Arbeitsbereich auf. Auf diese Weise kann eine externe CAD-Geometriedatei der CAM einfach zur Verfügung gestellt werden. Die Eingabeeinrichtung kann beispielsweise als Diskettenlaufwerk oder Netz-Verbindungseinrichtung ausgebildet sein.
  • Aus der vorstehenden Beschreibung ist ersichtlich, dass die vorliegende Erfindung sich durch eine Vielzahl an Vorteilen gegenüber dem Stand der Technik auszeichnet:
    Der Benutzer muss beim Programmieren eines Roboters keinerlei Vorkehrungen zur Kollisionsvermeidung treffen, wie ein Definieren gemeinsamer Arbeitsbereiche. Darüber hinaus kann das erfindungsgemäße Verfahren als Absicherung zusammen mit vorbekannten expliziten Verfahren eingesetzt werden.
  • Weiterhin ermöglicht das erfindungsgemäße Verfahren ein automatisches Einrichten des Arbeitsbereiches vom Standpunkt der Kollisionsvermeidung. Es ermittelt automatisch, welche Teile ein Kollisionsrisiko bezüglich welcher anderen Teile aufweisen.
  • Da das erfindungsgemäße Verfahren darauf aufbaut, die Konfigurationen der bewegten Teile über einen Zeitraum vorauszusagen, der lang genug ist, um die Maschinen sicher abzubremsen, und anschließend diese Konfigurationen bezüglich möglicher Behinderungen überprüft, müssen die Bewegungsbahnen zuvor nicht bekannt sein. Wird eine Kollision vorausgesagt, so werden die Maschinen entlang oder abseits ihrer Bahn gestoppt.
  • Da vor allem die Lern- und Validierungsphasen sich durch langsame Geschwindigkeiten auszeichnen, sind in diesen Phasen auch die Anhaltezeiten und -abstände sehr gering. Aus diesem Grund ist das erfindungsgemäße Verfahren in diesen Fällen besonders gut geeignet.
  • Kollisionen, die durch Programmierfehler oder unerwartete große Bahnänderungen hervorgerufen werden, führen zu einer Berührung von Objekten, die unter normalen Umständen jederzeit weit voneinander entfernt sein sollten. In diesen Fällen ist das Vorhersagen einer Anhaltekonfiguration unter Umständen zu aufwändig und nicht erforderlich. Es reicht in diesen Fällen aus, den Abstand zwischen den entsprechenden Objekten zu überwachen und diese abzustoppen, falls sie sich einander bis auf einem bestimmten vorgegebenen Abstand annähern. Dieses vereinfachte Verfahren lässt sich in jeder Arbeitsphase und für jede Bewegungsgeschwindigkeit anwenden, wenn die Abstandsschwelle groß genug gewählt werden kann. Ist dies nicht der Fall, so ist das vorstehend beschriebene genauere Verfahren anzuwenden.
  • Bevorzugte Ausgestaltungen der Erfindung sind im folgenden mit Blick auf die Zeichnungen beschrieben. Es zeigt:
  • 1 ein Ablaufdiagramm des erfindungsgemäßen Verfahrens zur Kollisionsvermeidung;
  • 2 ein Blockschaltbild einer Robotersteuerung für den Einsatz des erfindungsgemäßen Verfahrens;
  • 3 schematische Darstellungen mit verschiedenen geometrischen Approximationen eines Roboters und seiner Teile bzw. Verbindungen;
  • 4 eine schematische Darstellung einer Roboterbewegung in der Nähe eines Hindernisses;
  • 5 Ergebnisse einer numerischen Simulation einer Kollisionsbewegung zweier Roboter; und
  • 6 eine schematische Darstellung eines dreischichtigen neuronalen Netzes, das zur Vorhersage der Anhaltzeit in Verbindung mit dem erfindungsgemäßen Verfahren zur Kollisionsvermeidung eingesetzt wird.
  • 1 zeigt eine Roboterbewegung M, die von einer bekannten Robotersteuerung (nicht gezeigt) gesteuert und zur Kollisionsvermeidung durch das erfindungsgemäße Verfahren 1.0 überwacht wird. Im Zuge einer Initialisierungsphase 1.1 werden potentielle Kollisionen zwischen Robotern, Werkzeu gen und stationären Objekten, d.h. Objekten, die an einem festen Ort innerhalb des Arbeitsbereichs angeordnet sind, ermittelt. Die Einhüllenden, d.h. die einhüllenden Fläche des Raumbereichs, den die Roboter im Arbeitsbetrieb erreichen können, werden benutzt, um zu ermitteln, ob Kollisionen mit anderen Robotern und/oder stationären Objekten möglich sind. Anschließend erfolgt eine Kollisionsüberwachung C durch das erfindungsgemäße Verfahren 1.0 regelmäßig zu Zeiten t, die voneinander durch Zeitintervalle Δt im Verlauf der Roboterbewegung M bebabstandet sind.
  • Sensordaten S vom Roboter und/oder aus dem Arbeitsbereich, z.B. Gelenkwinkel und Gelenkgeschwindigkeiten des Roboters, Kamerabilder usw. werden dem Verfahren zur Kollisionsvermeidung 1.0 zur Verfügung gestellt und zusammen mit anderen Parametern, wie der Nutzlast oder der Roboterkonfiguration, zum Abschätzen 1.2 der Anhaltzeit ts benutzt, z.B. mittels neuronaler Netze, wie in Verbindung mit 6 gezeigt.
  • Mittels der abgeschätzten Zeit ts sagt ein Algorithmus eine Roboterbahn während der Anhaltezeit voraus 1.3, die anschließend bei 1.4 zur Behinderungsüberprüfung benutzt wird, die ein Überprüfen des Abstandes zwischen Bestandteilen des Arbeitsbereichs umfasst. Wenn eine zukünftige Kollision detektiert wird, stoppt der Roboter 1.5a. Dies kann entweder längs der Roboterbahn oder abseits geschehen, beispielsweise durch einfaches mechanisches Bremsen. Wird keine Kollision detektiert 1.5b, so beginnt ein neuer Steuerzyklus C'.
  • Das im vorstehenden unter Bezugnahme auf 1 beschriebene Verfahren zur Kollisionsvermeidung wird bei der Steuerungsvorrichtung gemäß 2 implementiert, die im folgenden als CAM (Collision Avoidance Manager) 2.0, 2.0' be zeichnet ist. Die CAM besitzen Kenntnisse bezüglich der anderen Bestandteile eines Arbeitsbereichs 2.1, die nachfolgend beschrieben sind.
  • Innerhalb des Arbeitsbereichs 2.1 gemäß 2 befinden sich mehrere Roboter oder zusammenwirkende Vorrichtungen, von denen nur die an sich bekannten Steuerungen (Leistungsversorgungs- und Bewegungssteuerungen) 2.2, 2.2' gezeigt sind. Die CAM 2.0, 2.0' beinhalten einen PC-Bereich PC und einen Echtzeit-Bereich RT, die durch Ausführen eines Standard-PC-Betriebssystems, wie Microsoft WindowsTM, und eines Echtzeit-Betriebssystems, wie VxWorksTM, definiert sind, wozu entweder ein oder eine Mehrzahl von Prozessormittel/n PM1, PM2 in Form von Mikroprozessoren vorgesehen ist bzw. sind. In der gezeigten Ausgestaltung trifft dieser Sachverhalt auch auf die Robotersteuerungen 2.2, 2.2' zu.
  • Die PC-Bereiche PC der CAM 2.0, 2.0' weisen Prozessormittel PM1 und Speichereinheiten SM auf, die in beispielhafter Weise dargestellt und zum Ausführen und/oder Speichern zeitlich unabhängiger Geometriedateien 2.3, eines Arbeitsbereichs-Diagramms (WCD) 2.4 mit allen Informationen über Kollisionen im Arbeitsbereich 2.1 während einer programmierten Roboterbewegung M sowie zum Ausführen eines speziellen Programms 2.5 zum Kodifizieren einer Roboterbewegung M ausgebildet sind. Die Echtzeit-Bereiche RT der CAM 2.0, 2.0' weisen Prozessormittel PM2 und Speichereinheiten SM auf, die beispielhaft dargestellt und zum Ausführen und/oder Speichern eines Interpreters 2.6 zum Kommunizieren dynamischer Werkstück-/Werkzeugveränderungen 2.7 an der durch die CAM 2.0, 2.0' gesteuerten Vorrichtung an die RT ausgebildet sind. Die RT enthalten zusätzlich Geometriedaten 2.8, auf die eine Kollisionsvermeidungs-Aufgabe (Collision Avoidance Task CAT) 2.9 zugreift. Die CAT 2.9 erhält Eingangsdaten von einer Kommunikationsaufgabe 2.10, die den RT einer CAM 2.0 mit den RT unterschiedlicher CAM 2.0' und Robotersteuerungen 2.2, 2.2' verbindet. In der gezeigten Ausgestaltung teilen sich der PC und der RT der CAM 2.0 gemeinsame Speichereinheiten SM.
  • Die Geometriedatei 2.11, die den Arbeitsbereich 2.1 beschreibt, wird entweder im Arbeitsbereich 2.1 selbst oder außerhalb des Arbeitsbereichs 2.1 mittels CAD oder durch Offline-Simulation erzeugt. Eine Dateneingabe 2.12 der Geometriedatei 2.11 zu den PC der CAM 2.0, 2.0' geschieht über eine Netzverbindung oder ein Diskettenlaufwerk (in letzterem Fall mittels entnehmbarer Datenträger; nicht gezeigt).
  • Da die Robotersteuerung 2.2, 2.2' denselben Aufbau wie konventionelle Steuerungen besitzen, wird auf eine detaillierte Beschreibung verzichtet. Einzelheiten betreffend einer Robotersteuerung 2.2, 2.2' mit zwei Betriebssystemen findet sich in US 6,356,806 B1 / DE 198 57 436 A1 .
  • Sämtliche Informationen bezüglich Kollisionen, die sich aus der zur Verfügung gestellten Geometriedatei 2.3 ergeben, werden im WCD 2.4 gespeichert. In diesem Zusammenhang existieren zwei Arten von potentiellen Kollisionen: Bedingte potentielle Kollisionen (Conditional Potential Collisions CPC) und unbedingte potentielle Kollisionen (Un-Conditional Potential Collisions U-CPC). Eine CPC illustriert den Fall, wenn die potentielle Kollision nur unter bestimmten Umständen zwischen zwei Bestandteilen in einem Arbeitsbereich 2.1 gegeben ist. Beispielsweise könnte ein Werkstück X potentiell mit einem Werkzeug Y kollidieren, wenn Werkstück X durch einen bestimmten ersten Roboter unter Verwendung von Werkzeug Z gehandhabt und zugleich Werkzeug Y an einem bestimmten zweiten Roboter montiert ist. In allen anderen Fällen sind Werkstück X und Werkzeug Y so weit voneinander entfernt, dass kein Kollisionspotential existiert. Eine U- CPC beschreibt den Fall, wenn das Kollisionspotential zu allen Zeiten zwischen den Bestandteilen existiert. Beispielsweise kann eine U-CPC zwischen bestimmten Verbindungen zweier Roboter bestehen, wenn die Arbeitsvolumina, d.h. die von den beiden Robotern erreichbaren Raumbereiche sich zu allen Zeiten überlappen. Eine spezielle Eigenschaft der Geometriedatei im WCD 2.4 verweist auf die geometrische Approximation, die mit dem Gegenstand, z.B. dem Inhalt des Arbeitsbereichs 2.1, zu verwenden ist. Ein lokaler Teilsatz des WCD 2.4 wird in jeder CAM 2.0, 2.0' unterhalten und aktualisiert. Auf diese Weise kennt jede CAM 2.0, 2.0' alle potentiellen Verhältnisse im Arbeitsbereich 2.1. Bei einer Veränderung der Geometrie des Arbeitsbereichs 2.1, beispielsweise einer Werkzeugänderung, fügt ein spezieller Programmeditor (nicht gezeigt), der in Verbindung mit dem WCD 2.4 eingesetzt wird, eine entsprechende Anweisung in das Programm 2.5 ein, das den Interpreter 2.6 veranlasst, die dynamischen Werkzeug-/Werkstückinformationen 2.7 im RT zu aktualisieren, die den zeitlich veränderlichen Teil der Geometriedatei 2.3 beinhalten und auf die die CAT 2.9, die für die tatsächliche Vorhersage der Roboterbewegung und das im Gefährdungsfalle notwendige Abstoppen der Maschinen verantwortlich ist, in Echtzeit zugreifen kann.
  • Die dynamischen Werkzeug-/Werkstückinformationen 2.7 im RT der CAM 2.0, 2.0' umfassen Zeiger auf die Geometriedaten 2.8, die auch im RT enthalten und deshalb für die CAT 2.9 zur effizienten Kollisionsvermeidung in Echtzeit zugänglich sind. Die Ausführung der CAT 2.9 wird auch durch die Ausgabe der Kommunikationsaufgabe 2.10 beeinflusst, die eine Verbindung zwischen den RT weiterer CAM 2.0' und/oder Robotersteuerungen 2.2, 2.2' zur Verfügung stellt, sofern diese im Arbeitsbereich 2.1 vorhanden sind. Dies geschieht entweder durch direkte Kommunikation oder durch Veränderungen der Geometriedaten 2.8 und/oder der dynamischen Werkstück-/Werkzeuginformationen 2.7 innerhalb des RT der CAM 2.0.
  • 3 zeigt verschieden Möglichkeiten der Approximierung von Teilen oder Verbindungen eines Roboters 3.0 (3a) in vereinfachter schematischer Darstellung: 3b(a) zeigt eine hantelförmige Roboterverbindung 3.1 in einer Näherung als Quader oder Zylinder 3.2, 3b(b) zeigt eine Darstellung derselben Verbindung 3.1 als Kugel 3.3. Derartige näherungsweise Darstellungen 3.2, 3.3 sind recht konservativ, was eine Optimierung des verwendeten Raumbereiches angeht, ermöglichen jedoch eine schnelle Ausführbarkeit eines Kollisions-Detektionsalgorithmus' aufgrund ihrer geometrischen und mathematischen Einfachheit. Eine näherungsweise Darstellung von Verbindungen 3.1 mittels komplexerer Polyeder 3.4, d.h. vielseitiger geschlossener geometrischer Figuren führt zu einer größeren Genauigkeit, bedingt jedoch eine herabgesetzte Leistungsfähigkeit des Kollisions-Detektionsalgorithmus', was dessen Ausführgeschwindigkeit anbelangt (3b(c)). Daher verwendet das erfindungsgemäße Verfahren vorzugsweise hierarchisch aufgebaute Approximationen mit verschiedenen Genauigkeitsstufen 3.23.4. Wenn die Näherungsformen 3.23.4 der Verbindungen 3.1 des Roboters 3.0 in einem Arbeitsbereich 2.1 weit voneinander entfernt sind, ist es nicht notwendig, dass die CAT 2.9 die genaueren Darstellungen 3.4 der Verbindungen 3.1 überprüft, was demgemäß nur für dichte Annäherungen geschieht.
  • Die geometrischen Approximationen 3.23.4 der Verbindungen 3.1 eines Roboters 3.0 sind in der Geometriedatei 2.3 und den Geometriedaten 2.8 in Speichereinheiten SM der CAM 2.0, 2.0' gespeichert, so dass die CAT 2.9 in Echtzeit auf sie zugreifen kann, um so den eigentlichen erfindungsgemäßen Kollisions-Vermeidungsalgorithmus auszuführen.
  • Behinderungsüberprüfung geschieht mittels bekannter Techniken, wie dem Verfahren von Gilbert, Johnson und Keerthi (GJK), welches ein iteratives Verfahren darstellt, bei dem die Geometrie in Simplexen unterteilt wird, bis sie zum minimalen Abstand zwischen den beiden Objekten hin konvergiert. Derartige Verfahren sind nicht Gegenstand der eigentlichen Erfindung und daher hier nicht weiter erläutert.
  • 4 zeigt schematisch ein Objekt 4.0, z.B. eine Verbindung eines Roboters, der parallel zu einer horizontalen Oberfläche 4.1 und zugleich in Richtung einer vertikalen Wand 4.2 bewegt ist. Ein Anhalten des Objektes 4.0 auf seiner Bahn P im Falle einer vorhergesagten Kollision mit einem anderen Objekt 4.0' vermiedet ein Zusammenstoßen der Objekte 4.0 und 4.0'. Wird das Objekt 4.0 jedoch abseits der Bahn P gestoppt, so wird zwar ein Zusammenstoss verhindert, jedoch kann in der Folge eine Kollision mit der horizontalen Oberfläche 4.1 resultieren. Darüber hinaus würde das Vorhersagen einer Kollision mit der Oberfläche 4.1 einen ungewollten Fehlalarm auslösen. Daher werden im Zuge des erfindungsgemäßen Verfahrens Roboterbewegungen vorzugsweise längs der Bahn vorhergesagt und gestoppt.
  • Um das erfindungsgemäße Verfahren zur Vermeidung von Kollisionen zu überprüfen, wurden numerische Simulationen der Bewegung von zwei identischen Robotern 3.0, wie in 3a dargestellt, in einem gemeinsamen Arbeitsbereich 2.1 durchgeführt. Jede Verbindung 3.1 des Roboters 3.0 wurde modellhaft als Abfolgen von Kugeln 3.3 nachgebildet. Die Bahnen P, P' jedes der Roboter 3.0 wurden als eine Abfolge von Gelenkwinkeln vorgegeben, die unter Verwendung einer Spline-Funktin dritten Grades interpoliert wurden. Die Anhaltzeit ts wurde zu 100 ms angenommen.
  • Die Ergebnisse sind in 5 dargestellt. In einem ersten Beispiel führen die Bahnen der beiden Roboter zu einer Kollision. Der Abstand d zwischen den Robotern als Funktion der Zeit t ist in 5a dargestellt. 5b zeigt den Abstand d zwischen den Robotern unter Verwendung der CAM. Die Relativbewegung der Roboter wird durch die CAM gestoppt, bevor es zu einer Kollision kommt (d > 0 für alle Werte von t). In einer anderen Simulation (5c) bewegten sich die Roboter auf Bahnen, die ohne Kollision zu einer Annährung bis auf 0,5 mm führen. Ziel der Simulation ist eine Überprüfung, ob durch eine derartige Annäherung ein Fehlalarm ausgelöst wird. 5c zeigt, wie sich die Roboter einander annähern und anschließend wieder voneinander entfernen. Auch wenn die CAM eingeschaltet ist, wird keine Kollision längs der Bahn vorhergesagt, so dass die Maschinen – wie dies in der Praxis gewünscht ist – nicht anhalten müssen. Wenn die Roboter in einem konstanten gegenseitigen Abstand von 0,5 mm anstelle des vorstehend beschriebenen Annäherungs-und-Entfernungs-Szenarios gehalten werden (vergleiche 5c), ergibt sich dasselbe Simulationsergebnis, d.h. eine Kollision wurde nicht vorhergesagt, und keine der Maschinen wurde angehalten.
  • In der mit Blick auf 5 beschriebenen Simulation wurde die Anhaltzeit als konstant angenommen. Nach einer alternativen Ausgestaltung der Erfindung kann die Anhaltezeit mittels einer vorab gespeicherten Nachschlagtabelle aufgefunden werden. Allerdings schlägt die Erfindung mit Blick auf Echtzeit-Anwendungen vor, die Anhaltezeit der Roboterachsen unter Verwendung von neuronalen Netzen NN für jedes Gelenk des Roboters in Echtzeit abzuschätzen. Ein erfindungsgemäßes neuronales Netz zur Abschätzung der Anhaltezeit für eine Achse eines typischen Industrieroboters ist in 6 dargestellt.
  • Ein neuronales Netz NN ist eine Rechnerarchitektur, in der eine Mehrzahl von Elementarprozessoren (Knoten) 6.0 zum parallelen Verarbeiten von Informationen verbunden sind und auf diese Weise ein Netz bilden. Die Struktur neuronaler Netze ist von der Struktur des menschlichen Gehirns abgeleitet.
  • Neuronale Netze werden insbesondere für Aufgaben eingesetzt, die menschliches Verhalten imitieren, z.B. bei Verfahren zur Bilderkennung. Sie sind als solche bekannt und deshalb hier nicht detailliert beschrieben.
  • Die neuronalen Netze NN für die verschiedenen Achsen eines Industrieroboters weisen eine Mehrzahl von Schichten L2, L2, L3 aus Elementarprozessoren oder Knoten 6.0 auf, die von Schicht zu Schicht durch Signalpfade 6.1 verbunden sind. Die Schichten L1, L2, L3 heißen Eingabeschicht, Zwischenschicht bzw. Ausgabeschicht. Die Knoten 6.0 der Eingabeschicht L1 erhalten als Eingabedaten die Parameter, die die Anhaltzeit einer Achse beeinflussen, z.B. die Achsengeschwindigkeit . und die Nutzlast m. Diese Information breitet sich im Netz NN aus und erzeugt eine Abschätzung der Anhaltzeit ts der Achse in der Ausgabeschicht L3, die anschließend für die erfindungsgemäße Kollisionsdetektion benutzt wird.
  • 1.0
    Verfahren zur Kollisionsvermeidung
    1.1
    Initialisierungsphase
    1.2
    Abschätzung der Anhaltzeit
    1.3
    Konfigurationsvorhersage
    1.4
    Behinderungsüberprüfung
    1.5a
    Anhalten des Roboters
    1.5b
    Fortsetzung der Bewegung
    2.0, 2.0'
    Steuerung zur Kollisionsvermeidung CAM
    2.1
    Arbeitsbereich
    2.2, 2.2'
    Robotersteuerung
    2.3
    Geometriedatei
    2.4
    Arbeitsbereich-Beschreibungsdatei WCD
    2.5
    Programm
    2.6
    Interpreter
    2.7
    dynamische Werkzeug-/Werkstückveränderung
    2.8
    Geometriedaten
    2.9
    Kollisions-Vermeidungsaufgabe CAT
    2.10
    Kommunikationsaufgabe
    2.11
    Erzeugen der Geometriedatei
    2.12
    Dateneingabe
    3.0
    Roboter
    3.1
    Verbindung
    3.2
    Approximation (Quader, Zylinder)
    3.3
    Approximation (Kugel)
    3.4
    Approximation (Polyeder)
    4.0, 4.0'
    Objekt
    4.1
    horizontale Oberfläche
    4.2
    vertikale Wand
    6.0
    Knoten/Elementarprozessor
    6.1
    Signalpfad
    C, C'
    Steuerzyklus
    d
    Abstand
    L1
    Eingabeschicht
    L2
    Zwischenschicht
    L3
    Ausgabeschicht
    M
    Roboterbewegung
    m
    Nutzlast
    NN
    neuronales Netz
    P, P'
    Bahn
    PC
    Standard-PC-Bereich/-Betriebssystem
    PM1, PM2
    Prozessormittel
    RT
    Echtzeit-Bereich-/Betriebssystem
    S
    Sensordaten
    SM
    Speichereinheit
    t
    Zeit
    ts
    Anhaltezeit
    Δt
    Zeitintervall
    γ
    Beschleunigung
    θ
    Winkel
    .
    Geschwindigkeit

Claims (30)

  1. Verfahren zum Vermeiden von Kollisionen zwischen einem Roboter und wenigstens einem anderen Objekt, wobei das Verfahren beinhaltet: Bestimmen einer Anhaltezeit für eine automatisch oder manuell gesteuerte Roboterbewegung auf der Grundlage gegenwärtiger und früherer Gelenkstellungen und Gelenkgeschwindigkeiten für jedes Robotergelenk; Vorhersagen einer Konfiguration einer Bewegungsbahn des Roboters bei der Anhaltezeit; Überprüfen der vorhergesagten Konfiguration mittels Abstands-/Behinderungsalgorithmen hinsichtlich Behinderungen von Teilen des Roboters durch Teile der anderen Objekte oder umgekehrt; und Anhalten des Roboters und/oder der anderen Objekte im Falle einer drohenden Kollision.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Roboter entlang seiner Bewegungsbahn abgebremst wird.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Roboter ohne Beachtung seiner eigentlichen Bewegungsbahn abgebremst wird.
  4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Behinderungsüberprüfung ein Bestimmen von Abständen zwischen geometrischen Approximationen von Teilen des Roboters und der anderen Objekte umfasst.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass die geometrischen Approximationen verschiedene Genauigkeitsstufen aufweisen, die nach Maßgabe einer gewünschten Genauigkeit der Abstandsüberprüfung geprüft werden.
  6. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Vorhersage der Bewegungsbahn eines Gelenks mittels einer Beziehung θi = 1/2γiti,s 2 + . i,0ti,s + θi,0 erfolgt, wobei θi eine vorhergesagte Stellung des Gelenkes i, θi,0 und . i,0 eine Stellung bzw. eine Geschwindigkeit des Gelenkes i zu einer gegenwärtigen Zeit t, ti,s die Anhaltzeit des Gelenkes i und γi eine geschätzte gegenwärtige Gelenkbeschleunigung bezeichnet.
  7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass eine Geschwindigkeit des Gelenks i unter Berücksichtigung der Gelenkstellung zu einer gegenwärtigen Zeit und zu früheren Zeiten mittels einer Beziehung
    Figure 00330001
    bestimmt wird, wobei θi,–k = θi(t–k), t–k = t – k·Δt und cf = 1/(12Δt) , c0 = 25, c1 = –48, c2 = 36, c3 = –16, c4 = 3.
  8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass die Beschleunigung des Gelenkes i unter Berücksichtigung der Gelenkgeschwindigkeit zu einer gegenwärtigen Zeit und zu früheren Zeiten mittels der Beziehung
    Figure 00330002
    abgeschätzt wird.
  9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass die Konfigurationsvorhersage und die Behinderungsüberprüfung beinhalten: Bestimmen eines Anhalteabstands θi,stop des Gelenkes i aus θi,stop = . i,0 2/(2γi,max), wobei γi,max eine maximale negative Beschleunigung des Gelenkes bezeichnet; Addieren des Anhalteabstands zu der gegenwärtigen Stellung des Gelenkes, um so eine Konfiguration nach der Anhaltezeit zu erhalten; und Bestimmen eines Abstands zwischen Teilen des Roboters und der anderen Objekte bei dieser Konfiguration.
  10. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass ein Filter auf die Gelenkstellungs- und die Geschwindigkeitsdaten angewendet wird, die zur Stellungsvorhersage benutzt werden.
  11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass der Filter im Zeitbereich angewendet wird.
  12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass zum Filtern ein laufender Mittelwert gebildet wird.
  13. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Konfigurationsvorhersage und die Behinderungsüberprüfung mittels wenigstens eines neuronalen Netzes geschieht, das zum Abschätzen von Anhaltzeiten der Roboterachsen verwendet wird.
  14. Verfahren nach Anspruch 13, dadurch gekennzeichnet, dass für jedes Robotergelenk zumindest ein neuronales Netz verwendet wird.
  15. Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass Eingaben an die neuronalen Netze Gelenkgeschwindigkeiten, Gelenkwinkel, Gelenkstellungen, Stellungen und Geschwindigkeiten der Roboterbasis sowie Werkzeug- oder Lastmassen umfassen.
  16. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass alle gewonnenen Informationen über Kollisionen in einer Arbeitsbereich-Beschreibungsdatei zur Weiterleitung an ein Echtzeit-Betriebssystem gespeichert werden, dass für die Steuerung der Roboterbewegung verantwortlich ist.
  17. Verfahren nach Anspruch 16, dadurch gekennzeichnet, dass die Arbeitsbereich-Beschreibungsdatei Zeiger auf geometrische Approximationsdateien enthält, die zum Be schreiben aller im Arbeitsbereich vorhandenen Objekte benötigt werden.
  18. Verfahren nach Anspruch 17, dadurch gekennzeichnet, dass eine Kopie der Arbeitsbereich-Beschreibungsdatei in jeder Steuerungseinheit im Arbeitsbereich, d.h. in jeder zusammenwirkenden Vorrichtung unterhalten und aktualisiert wird.
  19. Verfahren nach Anspruch 18, dadurch gekennzeichnet, dass die Arbeitsbereich-Beschreibungsdatei zumindest bei einer geometrischen Veränderung im Arbeitsbereich, z.B. beim Befestigen eines neuen Werkzeugs an dem Roboter, aktualisiert wird.
  20. Verfahren nach Anspruch 19, dadurch gekennzeichnet, dass die Arbeitsbereich-Beschreibungsdatei zusammen mit einer Beschreibung der geometrischen Veränderung im Echtzeit-Betriebssystem aktualisiert wird.
  21. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass vor einer erlaubten Berührung zwischen dem Roboter und einem Objekt, beispielsweise während eines Handhabungsvorgangs, eine steuerungsrelevante Verbindung geschaffen wird, aufgrund derer der Roboter und ggf. das Objekt während einer nachfolgenden Kollision nicht angehalten werden.
  22. Verfahren nach Anspruch 21, dadurch gekennzeichnet, dass die Verbindung nach dem erlaubten Berührungsvorgang wieder gelöst wird.
  23. Steuerungsvorrichtung zum Vermeiden von Kollisionen zwischen einem Roboter und wenigstens einem anderem Objekt, die aufweist: – Mittel zum regelmäßigen Bestimmen einer Anhaltzeit für eine automatisch oder manuell gesteuerte Roboterbewebung auf der Grundlage gegenwärtiger und frührer Gelenkstellungen und Gelenkgeschwindigkeiten für jedes Robotergelenk; – Mittel zum regelmäßigen Vorhersagen einer Konfiguration einer Bewegungsbahn des Roboters nach den Anhaltzeiten; – Mittel zum regelmäßigen Überprüfen der vorhergesagten Konfiguration mittels Abstands-/Behinderungs-Algorithmen bezüglich einer Behinderung von Teilen des Roboters durch Teile der anderen Objekte; und – Mittel zum Anhalten des Roboters und/oder der anderen Objekte im Falle einer drohenden Kollision.
  24. Steuerungsvorrichtung nach Anspruch 23, gekennzeichnet durch Prozessormittel zum Ausführen zweier paralleler Betriebssysteme, bei denen es sich um ein Standard-PC-Betriebssystem und ein Echtzeit-Betriebssystem zum Steuern einer Roboterbewegung handelt.
  25. Steuerungsvorrichtung nach Anspruch 24, dadurch gekennzeichnet, dass Prozessormittel zumindest in Verbindung mit einem Echtzeit-Betriebssystem zum Kommunizieren mit Echtzeit-Betriebssystemen entsprechender anderer Steuerungseinrichtungen in einem gemeinsamen Arbeitsbereich ausgebildet sind.
  26. Steuerungsvorrichtung nach Anspruch 25, gekennzeichnet durch eine Eingabeeinrichtung zum Eingeben von Geometriedaten für den Arbeitsbereich.
  27. Steuerungsvorrichtung nach Anspruch 26, dadurch gekennzeichnet, dass die Eingabeeinrichtung als Diskettenlaufwerk oder Netz-Verbindungseinrichtung ausgebildet ist.
  28. Steuerungsvorrichtung nach einem der Ansprüche 24 bis 27, dadurch gekennzeichnet, dass die Prozessormittel zum Ausführen eines Übersetzungsprogramms zum Kommunizieren zwischen PC- und Echtzeitbetriebssystem ausgebildet sind.
  29. Steuerungsvorrichtung nach einem der Ansprüche 24 bis 28, dadurch gekennzeichnet, dass die Prozessormittel zum Ausführen entsprechender Teile eines Programms ausgebildet sind, durch das ein Verfahren zum Vermeiden von Kollisionen implementiert ist, insbesondere ein Verfahren nach den vorangehenden Ansprüchen 1 bis 22.
  30. Steuerungsvorrichtung nach einem der Ansprüche 24 bis 29, gekennzeichnet durch Speichereinrichtungen in Verbindung mit beiden Betriebssystemen zum Speichern von Geometriedaten für den Arbeitsbereich.
DE2002126140 2002-06-13 2002-06-13 Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten Ceased DE10226140A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE2002126140 DE10226140A1 (de) 2002-06-13 2002-06-13 Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2002126140 DE10226140A1 (de) 2002-06-13 2002-06-13 Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten

Publications (1)

Publication Number Publication Date
DE10226140A1 true DE10226140A1 (de) 2004-01-08

Family

ID=29718995

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2002126140 Ceased DE10226140A1 (de) 2002-06-13 2002-06-13 Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten

Country Status (1)

Country Link
DE (1) DE10226140A1 (de)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006029432A2 (de) * 2004-09-15 2006-03-23 Wfl Millturn Technologies Gmbh & Co. Kg Verfahren zur kollisionsvermeidung
DE102005015317A1 (de) * 2005-04-01 2006-10-05 Siemens Ag Verfahren und Steuereinrichtung zur gezielten Reaktion bei einem Kontakt zwischen einem Maschinenelement einer Maschine mit einem Gegenstand
WO2008014909A1 (de) * 2006-07-31 2008-02-07 Pilz Gmbh Co. Kg Kamarabasierte überwachung von maschinen mit beweglichen maschinenelementen zur kollisionsverhinderung
EP1906281A1 (de) * 2006-09-30 2008-04-02 ABB Technology AG Verfahren und System zur Auslegung und Überprüfung von Sicherheitsbereichen eines Roboters
DE102007037077A1 (de) * 2007-08-06 2009-02-12 Kuka Roboter Gmbh Verfahren zur Einhaltung von Arbeitsraumgrenzen eines Arbeitsmittels eines Roboters
DE102007037078A1 (de) * 2007-08-06 2009-02-12 Kuka Roboter Gmbh Verfahren zur Einhaltung von Arbeitsraumgrenzen eines Arbeitsmittels eines Roboters
DE102007059492A1 (de) * 2007-12-11 2009-06-18 Kuka Roboter Gmbh Industrieroboter
DE102008043360A1 (de) * 2008-10-31 2010-05-12 Kuka Roboter Gmbh Industrieroboter und Verfahren zum Programmieren eines Industrieroboters
DE102009006256A1 (de) * 2009-01-27 2010-07-29 Deutsches Forschungszentrum für künstliche Intelligenz GmbH Verfahren zur Vermeidung von Kollisionen gesteuert beweglicher Teile einer Anlage
DE102009017151A1 (de) * 2009-04-15 2010-10-21 Eisenmann Anlagenbau Gmbh & Co. Kg Anlage zur Tauchbehandlung
DE102010033768A1 (de) * 2010-08-09 2012-02-09 Dürr Systems GmbH Steuersystem und Steuerverfahren für einen Roboter
DE102008016604B4 (de) * 2008-04-01 2014-07-17 Kuka Laboratories Gmbh Verfahren und Vorrichtung zur Eigenkollisionsüberwachung eines Manipulators
DE202013104860U1 (de) 2013-10-30 2015-02-02 Daimler Ag Arbeitsvorrichtung
CN104944168A (zh) * 2015-05-19 2015-09-30 电子科技大学 一种基于图像三维重构的码垛机器人安全控制方法
DE102012007254B4 (de) * 2011-04-18 2015-10-15 Fanuc Corporation Verfahren und Vorrichtung zum Vorausberechnen einer Behinderung zwischen einem Zielteil eines Roboters und einem peripheren Objekt
CN106182040A (zh) * 2014-12-23 2016-12-07 库卡罗伯特有限公司 机器人系统
EP3323565A1 (de) * 2016-11-21 2018-05-23 Siemens Aktiengesellschaft Verfahren und vorrichtung zur inbetriebnahme eines mehrachssystems
DE102017007359A1 (de) * 2017-08-04 2019-02-07 Kuka Deutschland Gmbh Verfahren und System zum Überprüfen und/oder Modifizieren eines Arbeitsprozesses eines Roboters
CN110293558A (zh) * 2018-03-21 2019-10-01 波音公司 用于对工件进行操作的机器人系统和方法
CN110871315A (zh) * 2018-09-03 2020-03-10 苏州睿牛机器人技术有限公司 一种爬行弧焊机器人及爬行弧焊机器人的安全检测方法、装置
DE102006055359B4 (de) 2005-11-24 2021-07-22 Denso Wave Inc. Roboter und Verfahren zur Vermeidung einer Interferenz bei vielen Robotern
JP2021122924A (ja) * 2020-02-10 2021-08-30 住友重機械工業株式会社 作業装置
DE102020203636A1 (de) 2020-03-20 2021-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung eingetragener Verein Ermittlung von Sicherheitsbereichen um eine automatisiert arbeitende Maschine
CN114365047A (zh) * 2019-09-13 2022-04-15 三菱电机株式会社 数控装置及机器学习装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4001493A1 (de) * 1990-01-19 1991-07-25 Pietzsch Ibp Gmbh Verfahren und einrichtung zur selbsttaetigen steuerung von bewegbaren geraeten
DE4111354A1 (de) * 1991-04-09 1992-10-22 Bodenseewerk Geraetetech Einrichtung zur fuehrung des endeffektors eines roboters laengs einer sollbahn
EP0412619B1 (de) * 1989-08-11 1995-11-29 Koninklijke Philips Electronics N.V. Verfahren und Gerät zur Feststellung möglicher Kollisionen durch den Gebrauch von Angaben geometrischer Hubvolumenstrukturen
DE19517771A1 (de) * 1995-05-15 1996-11-21 Siemens Ag Verfahren zum Betrieb einer numerisch gesteuerten Werkzeugmaschine oder eines Roboters
EP0582715B1 (de) * 1992-01-28 1997-11-12 Fanuc Ltd. Verfahren zum steuern von mehreren robotern
DE19810341A1 (de) * 1998-03-10 1999-09-16 Deutsch Zentr Luft & Raumfahrt Verfahren zur automatischen Kollisionsvermeidung eines Manipulators in einem durch Hindernisse beschränkten Arbeitsraum
DE19857436A1 (de) * 1998-12-12 2000-06-21 Kuka Roboter Gmbh Verfahren zum Behandeln des Spannungsabfalls in der Steuerung eines Roboters und zum Wiederanfahren eines Roboters nach Spannungsabfall

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0412619B1 (de) * 1989-08-11 1995-11-29 Koninklijke Philips Electronics N.V. Verfahren und Gerät zur Feststellung möglicher Kollisionen durch den Gebrauch von Angaben geometrischer Hubvolumenstrukturen
DE4001493A1 (de) * 1990-01-19 1991-07-25 Pietzsch Ibp Gmbh Verfahren und einrichtung zur selbsttaetigen steuerung von bewegbaren geraeten
DE4111354A1 (de) * 1991-04-09 1992-10-22 Bodenseewerk Geraetetech Einrichtung zur fuehrung des endeffektors eines roboters laengs einer sollbahn
EP0582715B1 (de) * 1992-01-28 1997-11-12 Fanuc Ltd. Verfahren zum steuern von mehreren robotern
DE19517771A1 (de) * 1995-05-15 1996-11-21 Siemens Ag Verfahren zum Betrieb einer numerisch gesteuerten Werkzeugmaschine oder eines Roboters
DE19810341A1 (de) * 1998-03-10 1999-09-16 Deutsch Zentr Luft & Raumfahrt Verfahren zur automatischen Kollisionsvermeidung eines Manipulators in einem durch Hindernisse beschränkten Arbeitsraum
DE19857436A1 (de) * 1998-12-12 2000-06-21 Kuka Roboter Gmbh Verfahren zum Behandeln des Spannungsabfalls in der Steuerung eines Roboters und zum Wiederanfahren eines Roboters nach Spannungsabfall

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
BORGOLTE,U., FREUND,E.:"Ein Algorithmus zur Kolli- sionserkennung und- Vermeidung bei Robotern mit zylinderförmigen Arbeitsraum" In: Robotersysteme 6, 1990, S.1-10
BORGOLTE,U., FREUND,E.:"Ein Algorithmus zur Kolli-sionserkennung und- Vermeidung bei Robotern mit zylinderförmigen Arbeitsraum" In: Robotersysteme 6, 1990, S.1-10 *
FREUND,E., HOYER,H.:"Pathfinding in Multi-robot Systems: Solutions and Appliavations" In: Procee- dings of the 1986 IEEE International Conference on Robotics and Automation, vol.3, S.103-111 *
JUANG, J.-G.:" Collision avoidance using potential fields" In: Industrial Robots, Vol.25, No.6, 1998 , S.408-415
JUANG, J.-G.:" Collision avoidance using potential fields" In: Industrial Robots, Vol.25, No.6, 1998, S.408-415 *

Cited By (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006029432A3 (de) * 2004-09-15 2006-11-09 Wfl Millturn Tech Gmbh & Co Kg Verfahren zur kollisionsvermeidung
WO2006029432A2 (de) * 2004-09-15 2006-03-23 Wfl Millturn Technologies Gmbh & Co. Kg Verfahren zur kollisionsvermeidung
US8577591B2 (en) 2004-09-15 2013-11-05 WFL Millturn Technologies GmbH & Co. KG. Method for preventing a collision between a part movable along an axis and an obstacle
DE102005015317A1 (de) * 2005-04-01 2006-10-05 Siemens Ag Verfahren und Steuereinrichtung zur gezielten Reaktion bei einem Kontakt zwischen einem Maschinenelement einer Maschine mit einem Gegenstand
DE102005015317B4 (de) * 2005-04-01 2007-02-01 Siemens Ag Verfahren und Steuereinrichtung zur gezielten Reaktion bei einem Kontakt zwischen einem Maschinenelement einer Maschine mit einem Gegenstand
US8457787B2 (en) 2005-04-01 2013-06-04 Siemens Aktiengesellschaft Method and control device for targeted reaction in the event of a contact between a machine element of a machine and an object
DE102006055359B4 (de) 2005-11-24 2021-07-22 Denso Wave Inc. Roboter und Verfahren zur Vermeidung einer Interferenz bei vielen Robotern
CN101512452B (zh) * 2006-07-31 2011-02-02 皮尔茨公司 基于摄像机监控具有移动机器部件的机器以防碰撞
WO2008014909A1 (de) * 2006-07-31 2008-02-07 Pilz Gmbh Co. Kg Kamarabasierte überwachung von maschinen mit beweglichen maschinenelementen zur kollisionsverhinderung
DE102006048163B4 (de) * 2006-07-31 2013-06-06 Pilz Gmbh & Co. Kg Kamerabasierte Überwachung bewegter Maschinen und/oder beweglicher Maschinenelemente zur Kollisionsverhinderung
US9122266B2 (en) 2006-07-31 2015-09-01 Pilz Gmbh & Co. Kg Camera-based monitoring of machines with mobile machine elements for collision prevention
US8326590B2 (en) 2006-09-30 2012-12-04 Abb Technology Ag Method and system for designing and checking safety zones of a robot
CN101573670B (zh) * 2006-09-30 2012-06-20 Abb技术股份有限公司 用于设计与检查自控装置的安全区的方法及系统
EP1906281A1 (de) * 2006-09-30 2008-04-02 ABB Technology AG Verfahren und System zur Auslegung und Überprüfung von Sicherheitsbereichen eines Roboters
WO2008037491A1 (de) * 2006-09-30 2008-04-03 Abb Technology Ag Verfahren und system zur auslegung und überprüfung von sicherheitsbereichen eines roboters
DE102007037077B4 (de) * 2007-08-06 2019-02-21 Kuka Roboter Gmbh Verfahren zur Einhaltung von Arbeitsraumgrenzen eines Arbeitsmittels eines Roboters
DE102007037078B4 (de) 2007-08-06 2022-01-27 Kuka Roboter Gmbh Verfahren zur Einhaltung von Arbeitsraumgrenzen eines Arbeitsmittels eines Roboters
DE102007037078A1 (de) * 2007-08-06 2009-02-12 Kuka Roboter Gmbh Verfahren zur Einhaltung von Arbeitsraumgrenzen eines Arbeitsmittels eines Roboters
DE102007037077A1 (de) * 2007-08-06 2009-02-12 Kuka Roboter Gmbh Verfahren zur Einhaltung von Arbeitsraumgrenzen eines Arbeitsmittels eines Roboters
DE102007059492A1 (de) * 2007-12-11 2009-06-18 Kuka Roboter Gmbh Industrieroboter
DE102007059492B4 (de) 2007-12-11 2018-06-28 Kuka Deutschland Gmbh Industrieroboter
DE102008016604B4 (de) * 2008-04-01 2014-07-17 Kuka Laboratories Gmbh Verfahren und Vorrichtung zur Eigenkollisionsüberwachung eines Manipulators
DE102008043360A1 (de) * 2008-10-31 2010-05-12 Kuka Roboter Gmbh Industrieroboter und Verfahren zum Programmieren eines Industrieroboters
DE102009006256B4 (de) 2009-01-27 2019-01-03 Deutsches Forschungszentrum für künstliche Intelligenz GmbH Verfahren zur Vermeidung von Kollisionen gesteuert beweglicher Teile einer Anlage
DE102009006256A1 (de) * 2009-01-27 2010-07-29 Deutsches Forschungszentrum für künstliche Intelligenz GmbH Verfahren zur Vermeidung von Kollisionen gesteuert beweglicher Teile einer Anlage
US8607729B2 (en) 2009-04-15 2013-12-17 Eisenmann Ag Dip coating line
DE102009017151A1 (de) * 2009-04-15 2010-10-21 Eisenmann Anlagenbau Gmbh & Co. Kg Anlage zur Tauchbehandlung
CN102395519B (zh) * 2009-04-15 2013-12-04 艾森曼股份公司 用于浸渍处理的设备
CN102395519A (zh) * 2009-04-15 2012-03-28 艾森曼股份公司 用于浸渍处理的设备
DE102010033768A1 (de) * 2010-08-09 2012-02-09 Dürr Systems GmbH Steuersystem und Steuerverfahren für einen Roboter
WO2012019733A1 (de) 2010-08-09 2012-02-16 Dürr Systems GmbH Steuersystem und steuerverfahren für einen roboter
DE102012007254B4 (de) * 2011-04-18 2015-10-15 Fanuc Corporation Verfahren und Vorrichtung zum Vorausberechnen einer Behinderung zwischen einem Zielteil eines Roboters und einem peripheren Objekt
DE202013104860U1 (de) 2013-10-30 2015-02-02 Daimler Ag Arbeitsvorrichtung
WO2015074841A1 (de) * 2013-10-30 2015-05-28 Kuka Systems Gmbh Arbeitsvorrichtung und betriebsverfahren
CN106182040A (zh) * 2014-12-23 2016-12-07 库卡罗伯特有限公司 机器人系统
CN106182040B (zh) * 2014-12-23 2021-10-15 库卡罗伯特有限公司 机器人系统
CN104944168A (zh) * 2015-05-19 2015-09-30 电子科技大学 一种基于图像三维重构的码垛机器人安全控制方法
CN108081267A (zh) * 2016-11-21 2018-05-29 西门子公司 用于启动多轴系统的方法和装置
US10482589B2 (en) 2016-11-21 2019-11-19 Siemens Aktiengesellschaft Method and apparatus for the start-up operation of a multi-axis system
EP3323565A1 (de) * 2016-11-21 2018-05-23 Siemens Aktiengesellschaft Verfahren und vorrichtung zur inbetriebnahme eines mehrachssystems
DE102017007359B4 (de) 2017-08-04 2021-07-08 Kuka Deutschland Gmbh Verfahren und System zum Überprüfen und/oder Modifizieren eines Arbeitsprozesses eines Roboters
DE102017007359A1 (de) * 2017-08-04 2019-02-07 Kuka Deutschland Gmbh Verfahren und System zum Überprüfen und/oder Modifizieren eines Arbeitsprozesses eines Roboters
CN110293558A (zh) * 2018-03-21 2019-10-01 波音公司 用于对工件进行操作的机器人系统和方法
CN110871315A (zh) * 2018-09-03 2020-03-10 苏州睿牛机器人技术有限公司 一种爬行弧焊机器人及爬行弧焊机器人的安全检测方法、装置
CN114365047A (zh) * 2019-09-13 2022-04-15 三菱电机株式会社 数控装置及机器学习装置
CN114365047B (zh) * 2019-09-13 2023-02-03 三菱电机株式会社 数控装置及机器学习装置
DE112019007579B4 (de) 2019-09-13 2023-11-09 Mitsubishi Electric Corporation Numerische-Steuerung-Vorrichtung und Maschinelles-Lernen-Gerät
JP2021122924A (ja) * 2020-02-10 2021-08-30 住友重機械工業株式会社 作業装置
JP7378309B2 (ja) 2020-02-10 2023-11-13 住友重機械工業株式会社 作業装置
DE102020203636A1 (de) 2020-03-20 2021-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung eingetragener Verein Ermittlung von Sicherheitsbereichen um eine automatisiert arbeitende Maschine

Similar Documents

Publication Publication Date Title
EP1366867B1 (de) Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten
DE10226140A1 (de) Verfahren und Vorrichtung zum Vermeiden von Kollisionen zwischen Industrierobotern und anderen Objekten
EP2838698B2 (de) Roboteranordnung und verfahren zum steuern eines roboters
DE102018121388B4 (de) Robotersystem
DE102018122376B3 (de) Verfahren und Vorrichtung zur kollisionsfreien Bewegungsplanung eines Manipulators
EP2825812B1 (de) Verfahren und vorrichtung zum absichern eines gefährlichen arbeitsbereichs einer automatisiert arbeitenden maschine
DE102004019888B4 (de) Verfahren und Vorrichtung zur Begrenzung der Bewegung eines Roboters, sowie ein mit der Vorrichtung versehener Roboter
DE102007059480B4 (de) Verfahren und Vorrichtung zur Posenüberwachung eines Manipulators
DE102017001298B4 (de) Robotersimulationsvorrichtung, die einen überstrichenen Raum berechnet
WO2014173725A1 (de) Vorrichtung und verfahren zum absichern einer automatisiert arbeitenden maschine
WO2006037137A1 (de) Arbeitsbereichsüberwachung für automatisierte, programmgesteuerte maschinen und roboter
EP3556521B1 (de) Bremswegüberwachung einer kinematik
DE102015224641A1 (de) Verfahren zum Erkennen einer Kollision eines Roboterarms mit einem Objekt und Roboter mit einem Roboterarm
DE102009006256A1 (de) Verfahren zur Vermeidung von Kollisionen gesteuert beweglicher Teile einer Anlage
EP3227061A1 (de) Verfahren zur bewegungssimulation eines manipulators
DE102010010875A1 (de) Verfahren zum Überwachen der räumlichen Umgebung eines bewegbaren Geräts, insbesondere eines medizinischen Geräts
DE102007059481A1 (de) Verfahren und Vorrichtung zur Bereichsüberwachung eines Manipulators
WO2021186068A1 (de) Ermittlung von sicherheitsbereichen um eine automatisiert arbeitende maschine
DE102016222245A1 (de) Einrichtung und Verfahren zur Einwirkung auf Gegenstände
EP2208584B1 (de) Verfahren zur Steuerung von Industrierobotern
DE102022122663A1 (de) Verfahren zur dynamischen geschwindigkeitsändrung für ein robotiksystem
DE102014226787B3 (de) Sicherer Roboter mit Bahnfortschrittsvariablen
EP2082852B1 (de) Verfahren und Vorrichtung zur Überwachung eines Manipulators
DE102017106791A1 (de) Überwachungsverfahren und Überwachungssystem
EP4056331A1 (de) Sicherer betrieb einer mehrachskinematik

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection