DE102014210544A1 - Verfahren zur Steuerung eines Manipulators bei einer point-to-point Bewegung - Google Patents

Verfahren zur Steuerung eines Manipulators bei einer point-to-point Bewegung Download PDF

Info

Publication number
DE102014210544A1
DE102014210544A1 DE102014210544.7A DE102014210544A DE102014210544A1 DE 102014210544 A1 DE102014210544 A1 DE 102014210544A1 DE 102014210544 A DE102014210544 A DE 102014210544A DE 102014210544 A1 DE102014210544 A1 DE 102014210544A1
Authority
DE
Germany
Prior art keywords
solution
data set
xmin
manipulator
axis
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.)
Granted
Application number
DE102014210544.7A
Other languages
English (en)
Other versions
DE102014210544B4 (de
Inventor
Gunter Burchardt
Julien Rausch
Jascha Friedrich
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 DE102014210544.7A priority Critical patent/DE102014210544B4/de
Publication of DE102014210544A1 publication Critical patent/DE102014210544A1/de
Application granted granted Critical
Publication of DE102014210544B4 publication Critical patent/DE102014210544B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2638Airconditioning

Landscapes

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

Abstract

Die Erfindung betrifft ein Verfahren zur Steuerung eines Manipulators (2) bei einer point-to-point Bewegung, mit den Schritten: Einlesen von einem Zielpunktdatensatz eines Zielpunkts (ZP) in Weltkoordinaten, Bestimmen von wenigstens einer ersten Lösung (I) ohne Armigkeitswechsel und wenigstens einer zweiten Lösung (II) mit einem Armigkeitswechsel in Achskoordinaten zum Anfahren des Zielpunkts (ZP), Einlesen von einem Grenzdatensatz (Xmin, Xmax), Vergleichen der Achskoordinaten der ersten Lösung und der zweiten Lösung des Zielpunktes (ZP) mit Achskoordinaten des Grenzdatensatzes (Xmin, Xmax), Auswählen einer Lösung (I, II) aus der wenigstens einer ersten Lösung (I) ohne Armigkeitswechsel und der wenigstens einen zweiten Lösung (II) mit einem Armigkeitswechsel auf Grundlage des Vergleichs, und Bewegen des Manipulators (2) gemäß der ausgewählten Lösung (I, II).

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zur Steuerung eines Manipulators bei einer point-to-point Bewegung sowie eine Recheneinheit und ein Computerprogramm zu dessen Durchführung.
  • Stand der Technik
  • Die Erfindung behandelt grundsätzlich die Bewegungssteuerung eines Manipulators, wie z.B. eines Roboters, wie z.B. in der EP 2 255 931 A2 oder EP 1 332 841 A2 beschrieben. Hierbei wird der ToolCenterPoint (TCP) des Manipulators auf erwünschte Punkte im Raum verlagert. Ein Manipulator hat üblicherweise mehrere relativ zueinander bewegliche Glieder bzw. Arme, die auch als Achsen bezeichnet werden. Der TCP sitzt meist am Ende eines Arms. Die Soll-Position des TCP kann als Punkt im Raum (Weltkoordinaten) oder durch zugehörige Soll-Werte (Positionen oder Winkel) der Achsen (Achskoordinaten) vorgegeben werden. Am Beispiel von 1 der EP 1 332 841 A2 kann der Punkt (x/y) vom TCP angefahren werden, indem die Winkel zwischen den Armen 1, 3 und 4 und die Lage des Arms 5 vorgegeben werden. Am Beispiel von 2 der EP 2 255 931 A2 wird der TCP durch die q-Koordinaten definiert.
  • Um von Punkten im Raum (Weltkoordinaten) auf die dazugehörigen Positionen der Achsen (Achskoordinaten) und umgekehrt zu schließen, wird eine Umrechenvorschrift (Transformation) benutzt. Diese ist mechanikabhängig und teilt sich in zwei Teile: Um von Achskoordinaten auf Weltkoordinaten zu schließen, wird eine sog. Vorwärtstransformation verwendet. Um von Weltkoordinaten auf Achskoordinaten zu schließen, wird eine sog. Rückwärtstransformation verwendet. Jedoch kann ein und derselbe Punkt in Weltkoordinaten oft durch mehrere Achskoordinaten erreicht werden. Aus der EP 1 332 841 A2 ist ersichtlich, dass zahlreiche Punkte erreicht werden können, indem die Arme nicht linksarmig (d.h. die Arme haben eine Winkelstellung entsprechend einem menschlichen linken Arm), sondern rechtsarmig (d.h. die Arme haben eine Winkelstellung entsprechend einem menschlichen rechten Arm) ausgerichtet werden. Die Rückwärtstransformation ist zweckmäßigerweise in der Lage, alle diese mehrdeutigen Lösungen zu berechnen. Weiterhin ist die Maschinensteuerung in der Lage, diese Mehrdeutigkeiten aufzulösen. Dabei wird üblicherweise die Lösung ausgewählt, die hinsichtlich der Armigkeit der Lösung der letzten Vorwärtstransformation entspricht.
  • In der Robotik ist es möglich, einen Zielpunkt im Raum mittels (linearer) Interpolation im Raum oder mittels achsweiser Interpolation (point-to-point, PTP) anzufahren. Bei der linearen Interpolation wird der TCP des Manipulators linear im Raum nach Maßgabe von Weltkoordinaten verlagert. Die zugehörige Verlagerung der Achsen ergibt sich aus der Rückwärtstransformation. Bei der achsweisen Interpolation wird jede Achse so interpoliert, dass sie gleichzeitig die Bewegung startet und gleichzeitig mit den anderen am Zielpunkt ankommt. Dabei sind die Abschnitte der Bewegung (Beschleunigen, konstante Geschwindigkeit, Abbremsen) bei jeder Achse zeitlich gleich. Aus den Achsbewegungen ergibt sich durch die Vorwärtstransformation ein Pfad im Raum, der nicht unbedingt linear sein muss. Der Vorteil der PTP-Bewegung ist, dass dies die zeitsparendste Bewegungsart ist.
  • Bei der Interpolation werden allgemein, um den Zielpunkt anzufahren, ausgehend vom Startpunkt die Zwischenpunkte interpoliert und der Reihe nach abgefahren.
  • Weiterhin ist es möglich, trotz (linearer) Interpolation im Raum den Zielpunkt der Bewegung in Achskoordinaten anzugeben. Hierbei wird der angegebene Zielpunkt in Achskoordinaten mittels der Vorwärtstransformation in Weltkoordinaten transformiert und dann vom Start zum Zielpunkt in Weltkoordinaten interpoliert.
  • Weiterhin ist es möglich, trotz achsweiser Interpolation den Zielpunkt der Bewegung in Weltkoordinaten anzugeben. Hierbei wird der angegebene Zielpunkt in Weltkoordinaten mittels der Rückwärtstransformation in Achskoordinaten transformiert und dann vom Start zum Zielpunkt in Achskoordinaten interpoliert. Hierbei können nun jedoch, wie erwähnt, mehrere Achskoordinaten unterschiedlicher Armigkeit für den Zielpunkt existieren, was dementsprechend mehrere Möglichkeiten für den Bewegungspfad der achsweisen Interpolation ergibt.
  • Dabei kann es vorkommen, dass der Zielpunkt eines möglichen Interpolationspfads außerhalb zulässiger Bereiche liegt. Wird so ein Interpolationspfad ausgewählt, wird der Manipulator beim Verlassen des zulässigen Bereichs gestoppt und in einen Fehlerzustand überführt, der manuell behoben werden muss.
  • Es ist daher wünschenswert, bei Vorliegen mehrerer, alternativer Lösungen mit unterschiedlichen Armigkeiten die Lösungen von der Auswahl auszuschließen, die zu einem Verfahren des Manipulators in einen nicht-zulässigen Bereich führen würden.
  • Offenbarung der Erfindung
  • Erfindungsgemäß werden ein Verfahren zur Steuerung eines Manipulators bei einer point-to-point Bewegung, eine Steuereinheit sowie ein Computerprogramm mit den Merkmalen der unabhängigen Patentansprüche vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.
  • Vorteile der Erfindung
  • Ein wesentlicher Aspekt der vorliegenden Erfindung besteht darin, dass bei einem Verfahren zur Steuerung eines Manipulators bei einer point-to-point Bewegung ein Zielpunktdatensatz eines Zielpunkts in Weltkoordinaten eingelesen wird. Es werden dann – sofern vorhanden – eine erste Lösung ohne Armigkeitswechsel und eine zweite Lösung mit einem Armigkeitswechsel in Achskoordinaten zum Anfahren des Zielpunkts bestimmt. Nun wird ein Grenzdatensatz in Achskoordinaten eingelesen und die Achskoordinaten der unterschiedlichen Lösungen mit den Achskoordinaten des Grenzdatensatzes verglichen. Eine der Lösung, die den Grenzdatensatz nicht verletzt, wird dann auf Grundlage des Vergleichs ausgewählt. Anschließend wird der Manipulator gemäß der ausgewählten Lösung bewegt. Hierdurch wird erreicht, dass durch den Vergleich der unterschiedlichen Lösungen für den Zielpunkt mit dem Grenzdatensatz unzulässige Lösungen, die insbesondere zu Fehlerzuständen führen würden, ausgeschlossen werden.
  • Der Grenzdatensatz kann die bauartbedingten maximal zulässigen Achskoordinaten jeder Achse enthalten. Er kann auch vom Bediener definierte maximal zulässige Achskoordinaten enthalten. Der Bediener kann die maximal zulässigen Achskoordinaten so definieren, dass er bestimmte Armigkeitswechsel erzwingen kann. Dies erlaubt z.B. eine Auswahl der zeitoptimalsten Lösung aus zwei Lösungen, die sich z.B. hinsichtlich der erforderlichen Zeitdauer für das Verfahren der Manipulatorarme des Manipulators zum Erreichen der gleichen der Zielposition unterscheiden. Somit kann die erforderliche Zeitdauer bis zum Erreichen einer Zielposition durch Herbeiführen eines Armigkeitswechsels verkürzt werden.
  • Gemäß einer Ausführungsform wird der Grenzdatensatz zumindest teilweise in Achskoordinaten eingelesen. So kann der Grenzdatensatz bauartbedingte maximal zulässige Achskoordinaten jeder Achse enthalten, die in zweckmäßiger Weise bereits in Achskoordinaten vorliegen. So wird eine besonders einfache Berücksichtigung der bauartbedingten maximal zulässigen Achskoordinaten jeder Achse erreicht. Alternativ oder zusätzlich zu den bauartbedingten maximal zulässigen Achskoordinaten jeder Achse kann der Grenzdatensatz einen oder mehrere Grenzwerte enthalten, die wahlfrei von einem Anwender vorgegeben werden.
  • Gemäß einer weiteren Ausführungsform wird der Grenzdatensatz zumindest teilweise in Weltkoordinaten eingelesen und in Achskoordinaten umgewandelt. Eine besonders einfache Bedienung für den Anwender wird erreicht, wenn der Anwender einen Grenzwert in Weltkoordinaten eingeben kann und dann eine Umwandlung von Weltkoordinaten in Achskoordinaten durchgeführt wird.
  • Gemäß einer Ausführungsform werden zur Auswahl einer Lösung die Achskoordinaten der jeweiligen Lösungen mit den Achskoordinaten des Grenzdatensatzes verglichen, und auf ein Überschreiten der Achskoordinaten des Grenzdatensatzes durch wenigstens eine Achskoordinate einer Lösung für den Zielpunkt hin wird diese Lösung verworfen. Insbesondere werden zur Auswahl einer Lösung die Achskoordinaten der ersten Lösung mit Armigkeitswechsel mit den Achskoordinaten des Grenzdatensatzes verglichen, und auf ein Überschreiten der Achskoordinaten des Grenzdatensatzes durch wenigstens eine Achskoordinate der ersten Lösung hin wird die erste Lösung ohne Armigkeitswechsel verworfen und die zweite Lösung mit Armigkeitswechsel wird ausgewählt. Hierdurch wird erreicht, dass ein Armigkeitswechsel durch Auswahl der zweiten Lösung nur dann erfolgt, wenn die erste Lösung ohne Armigkeitswechsel zu einer Überschreitung des Grenzdatensatzes führt. Dies führt dazu, dass Armigkeitswechsel nur durchgeführt werden, wenn es auch notwendig ist.
  • Gemäß einer weiteren Ausführungsform weist der Grenzdatensatz einen Achsgrenzwert des Manipulators auf. Hierdurch wird erreicht, dass Achsgrenzwerte des Manipulators, die die Beweglichkeit des Manipulators einschränken, wie z.B. Längen- oder Winkelbeschränkungen, mitberücksichtigt werden können.
  • Gemäß einer weiteren Ausführungsform weist der Grenzdatensatz einen oder mehrere von einem Anwender vorgegebene Grenzwerte auf. Hierdurch wird erreicht, dass von einem Anwender durch Vorgabe von Grenzwerten ein Armigkeitswechsel indirekt ausgelöst werden kann, um z.B. eine Zeitoptimierung beim Erreichen einer Zielposition des Manipulators zu bewirken.
  • Gemäß einer weiteren Ausführungsform beschreibt der Grenzdatensatz die Form einer geraden oder gekrümmten Linie oder einer ebenen oder gekrümmten Fläche und grenzt dadurch einen oder mehrere zweidimensionale oder dreidimensionale Bereiche ab, die vom Manipulator nicht befahren werden dürfen oder sollen. Der Grenzdatensatz kann, wie erläutert, direkt in Achskoordinaten vorgegeben sein oder kann in Weltkoordinaten vorgegeben und in Achskoordinaten transformiert sein.
  • Eine erfindungsgemäße Recheneinheit, z.B. ein Steuergerät zur Steuerung einer point-to-point Bewegung eines Manipulators, ist, insbesondere programmtechnisch, dazu eingerichtet, ein erfindungsgemäßes Verfahren durchzuführen.
  • Auch die Implementierung der Erfindung in Form von Software ist vorteilhaft, da dies besonders geringe Kosten ermöglicht, insbesondere wenn eine ausführende Recheneinheit noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Geeignete Datenträger zur Bereitstellung des Computerprogramms sind insbesondere Disketten, Festplatten, Flash-Speicher, EEPROMs, CD-ROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich.
  • Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.
  • Es versteht sich, dass die vorstehend genannten und die nachfolgend noch zu erläuternden Merkmale nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen.
  • Die Erfindung ist anhand eines Ausführungsbeispiels in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung ausführlich beschrieben.
  • Figurenbeschreibung
  • 1 zeigt einen beispielhaften Manipulator in schematischer Darstellung.
  • 2 zeigt den Manipulator in der 1, der von einem Startpunkt zu einem Zielpunkt verlagert werden soll.
  • 3 zeigt den Manipulator mit Achsgrenzwerten und einem Grenzwert, der einen zulässigen Bereich von einem nicht-zulässigen Bereich abtrennt.
  • 4 zeigt eine Steuereinheit für den Manipulator in schematischer Darstellung.
  • 5 zeigt einen Verfahrensablauf zur Steuerung des Manipulators in schematischer Darstellung.
  • Detaillierte Beschreibung der Zeichnung
  • In 1 ist ein Manipulator 2 grob schematisch dargestellt. Im vorliegenden Ausführungsbeispiel ist der Manipulator 2 als Roboter ausgebildet. Der Manipulator 2 im vorliegenden Ausführungsbeispiel weist einen ersten Manipulatorarm 16 und einen zweiten Manipulatorarm 18 auf, die eine Bewegung des Manipulators 2 in zwei Bewegungsfreiheitsgraden ermöglichen. Im vorliegenden Ausführungsbeispiel kann der Manipulator 2 translatorisch in Richtung der X-Achse (Achskoordinate A1) verlagert werden. Ferner kann der Manipulator 2 im vorliegenden Ausführungsbeispiel um eine Drehrichtung gedreht werden, die sich senkrecht zu der X-Achse und der Y-Achse (also aus der Zeichenebene heraus) erstreckt (Achskoordinate A2).
  • Durch eine Bewegung in Richtung A1 und Drehrichtung A2 kann ein an dem distalen Ende des Manipulators 2 befindlicher Referenzpunkt TCP (Tool Center Point) in der durch die X-Achse und Y-Achse gebildete Ebene (Weltkoordinaten) nahezu beliebig positioniert werden. Dementsprechend existiert eine eindeutige Abbildung von Achskoordinaten A1/A2 in Weltkoordinaten X/Y, welche als Vorwärtstransformation bezeichnet wird: X = A1 + R·cos(A2 ) Y = R·sin(A2)
  • R:
    Armlänge des zweiten Manipulatorarms 18
  • Jedoch existiert keine eindeutige Abbildung von Weltkoordinaten X/Y in Achskoordinaten A1/A2, welche als Rückwärtstransformation bezeichnet wird. Eine Umkehr der sin- und cos-Funktionen führt in den meisten Fällen zu zwei Lösungen in Achskoordinaten für einen Punkt in Weltkoordinaten.
  • In 2 ist ein Szenario dargestellt, bei dem der Referenzpunkt TCP des Manipulatorarms 2 von einem Startpunkt SP aus zu einem Zielpunkt ZP verlagert werden soll, wobei der Startpunkt SP und der Zielpunkt ZP in Weltkoordinaten vorliegen. Dabei beschreiben die Weltkoordinaten das Gesamtkoordinatensystem des Manipulators 2 und sind unabhängig von Bewegungen des Manipulators 2.
  • Der Zielpunkt ZP ist dabei im vorliegenden Ausführungsbeispiel mittels achsweiser Interpolation (point-to-point, PTP) anzufahren. Bei der achsweisen Interpolation beginnen und beenden alle Gelenke ihre Bewegung synchron, also gleichzeitig. Mit der achsweisen Interpolation oder auch Punktsteuerung ist es möglich, den Zielpunkt ZP exakt anzufahren. Jedoch ist der Bahnverlauf zwischen dem Startpunkt SP und dem Zielpunkt ZP nicht definiert. Eingesetzt werden kann die achsweise Interpolation vorteilhaft bei Manipulatoren 2, die z.B. zum Beschicken, Punktschweißen, Stanzen, Bohren oder Palettieren verwendet werden.
  • Gemäß der ersten Lösung I wird der Zielpunkt ZP in 2 erreicht, indem der erste Manipulatorarm 16 translatorisch in Richtung der X-Achse durch eine große translatorische Bewegung B1 verlagert wird, während keine Drehbewegung des zweiten Manipulatorarms 18 durchgeführt wird. Insbesondere erfolgt kein Armigkeitswechsel.
  • Gemäß der zweiten Lösung II wird der Zielpunkt ZP in 2 erreicht, indem eine große Drehbewegung B2' des zweiten Manipulatorarms 18 durchgeführt wird, während der erste Manipulatorarm 16 translatorisch in Richtung der X-Achse durch eine kleine translatorische Bewegung B1' verlagert wird. Insbesondere erfolgt ein Armigkeitswechsel.
  • In 3 ist dargestellt, dass ein Grenzdatensatz Xmin, Xmax den Bewegungsspielraum des Manipulators 2 einschränkt. Im vorliegenden Ausführungsbeispiel weist der Grenzdatensatz einen unteren Achsgrenzwert Xmin und einen oberen Achsgrenzwert Xmax in Achskoordinaten auf. Der untere Achsgrenzwert Xmin und der obere Achsgrenzwert Xmax sind z.B. durch die Kinematik des Manipulators 2 oder den Arbeitsbereich vorgegeben und in einem Speicher abgespeichert. Jedoch können die Grenzwerte auch von einem Anwender vorgegeben sein, um Armigkeitswechsel zu erzwingen.
  • Somit wird eine translatorische Bewegung des ersten Manipulatorarms 16 des Manipulators 2 entlang der X-Achse durch den unteren Achsgrenzwert Xmin und den oberen Achsgrenzwert Xmax begrenzt. Eine Verlagerung des Manipulators 2 über den unteren Achsgrenzwert Xmin und den oberen Achsgrenzwert Xmax hinaus ist nicht möglich.
  • Bestimmte Zielpositionen in 3 können nur mit einer Armigkeit erreicht werden, z.B. Zielpositionen links von dem unteren Achsgrenzwert Xmin nur linksarmig, während Zielpositionen rechts von dem oberen Achsgrenzwert Xmax nur rechtarmig erreicht werden können.
  • Der Zielpunkt ZP in 3 ist wie in 2 ausgehend von dem Startpunkt SP grundsätzlich gemäß der ersten Lösung I und der zweiten Lösung II erreichbar. Ein Verfahren des Manipulators 2 gemäß der ersten Lösung I bedeutet, dass der erste Manipulatorarm 16 translatorisch entlang der X-Achse durch die große translatorische Bewegung B1 verlagert wird. Ein Verfahren des Manipulators 2 gemäß der zweiten Lösung II bedeutet, dass die große Drehbewegung B2' des zweiten Manipulatorarms 18 durchgeführt wird, während der erste Manipulatorarm 16 translatorisch entlang der X-Achse durch die kleine translatorische Bewegung B1' verlagert wird.
  • In dem in 3 dargestellten Szenario hat die Verlagerung gemäß der ersten Lösung I zur Folge, dass der erste Manipulatorarm 16 translatorisch entlang der X-Achse durch die große translatorische Bewegung B1 über den unteren Achsgrenzwert Xmin hinweg verlagert werden müsste, während dies bei der zweiten Lösung II nicht der Fall ist. Somit stellt die erste Lösung I eine unzulässige Lösung und die zweite Lösung II eine zulässige Lösung dar und der Manipulator 2 wird gemäß der zweiten Lösung II bewegt.
  • In 4 ist eine beispielhafte Steuereinheit 4 des Manipulators 2 in einem Blockdiagramm dargestellt.
  • Die Steuereinheit 4 weist im vorliegenden Ausführungsbeispiel eine Einleseeinheit 6, eine Bestimmungseinheit 8, eine Vergleichseinheit 10 und eine Ausgabeeinheit 12 auf.
  • Mit der Einleseeinheit 6 kann die Steuereinheit 4 einen Zielpunktdatensatz eines Zielpunktes ZP in Weltkoordinaten einlesen. Ferner kann die Steuereinheit 4 mit der Einleseeinheit 6 einen Grenzdatensatz Xmin, Xmax mit dem unteren Achsgrenzwert Xmin und dem oberen Achsgrenzwert Xmax in Achskoordinaten einlesen.
  • Mit der Bestimmungseinheit 8 kann die Steuereinheit 4 die erste Lösung I zum Anfahren des Zielpunkts ZP durch Rückwärtstransformation bestimmen. Ferner ist die Bestimmungseinheit 8 dazu ausgebildet, neben der ersten Lösung I zum Anfahren des Zielpunkts ZP die zweite Lösung II zum Anfahren des Zielpunkts ZP durch Rückwärtstransformation zu bestimmen, sowie gegebenenfalls weitere Lösungen zum Anfahren des Zielpunkts ZP, wenn weitere Lösungen zum Anfahren des Zielpunktes ZP existieren.
  • Mit der Vergleichseinheit 10 können die Achskoordinaten des Zielpunktes ZP der einzelnen Lösungen mit dem unteren Achsgrenzwert Xmin und dem oberen Achsgrenzwert Xmax verglichen werden. Dabei ist die Vergleichseinheit 10 im vorliegenden Ausführungsbeispiel dazu ausgebildet, die erste Lösung I ohne Armigkeitswechsel auszuwählen, wenn die erste Lösung I, also die Lösung ohne Armigkeitswechsel, dazu führt, dass der untere Achsgrenzwert Xmin oder der obere Achsgrenzwert Xmax nicht überschritten werden. Wenn hingegen die erste Lösung I dazu führt, dass der untere Achsgrenzwert Xmin oder der obere Achsgrenzwert Xmax überschritten werden, wird die zweite Lösung II mit einem Armigkeitswechsel ausgewählt.
  • Mit der Ausgabeeinheit 12 kann die ausgewählte Lösung, also die erste Lösung I oder die zweite Lösung II ausgegeben werden, damit sie von einer Steuerung (nicht dargestellt) in Steuersignale zum Anfahren des Zielpunktes ZP gemäß der ausgewählten Lösung, hier die zweite Lösung II mit einem Armigkeitswechsel, umgesetzt werden kann.
  • Die Einleseeinheit 6, die Bestimmungseinheit 8, die Vergleichseinheit 10 und/oder die Ausgabeeinheit 12 können Hard- und/oder Softwarekomponenten aufweisen.
  • Es wird nun anhand der 5 ein Verfahrensablauf zur Steuerung des Manipulators 2 erläutert.
  • In einem ersten Schritt 100 wird von der Einleseeinheit 6 der Zielpunktdatensatz des Zielpunktes ZP in Weltkoordinaten eingelesen.
  • In einem weiteren Schritt 200 wird von der Bestimmungseinheit 8 die erste Lösung I zum Anfahren des Zielpunkts ZP durch Rückwärtstransformation bestimmt. Anschließend prüft die Bestimmungseinheit 8, ob weitere Lösungen existieren und bestimmt durch Rückwärtstransformation die zweite Lösung II sowie gegebenenfalls noch weitere Lösungen.
  • In einem weiteren Schritt 300 werden von der Vergleichseinheit 10 die Achskoordinaten des Zielpunktes ZP der einzelnen Lösungen I, II, ... nacheinander mit dem unteren Achsgrenzwert Xmin und dem oberen Achsgrenzwert Xmax verglichen, wobei der untere Achsgrenzwert Xmin und der obere Achsgrenzwert Xmax von der Vergleichseinheit 10 aus dem Speicher ausgelesen wurden. Wenn die erste Lösung I zu einer Überschreitung des unteren Achsgrenzwertes Xmin oder des oberen Achsgrenzwert Xmax führt, d.h. die X-Achskoordinate des Zielpunkts ZP befindet außerhalb des unteren Achsgrenzwertes Xmin oder des oberen Achsgrenzwertes Xmax, wird die erste Lösung I verworfen und die zweite Lösung II ausgewählt und zweckmäßigerweise ebenfalls überprüft, bis eine zulässige Lösung gefunden wird.
  • Es wird im vorliegenden Ausführungsbeispiel die zweite Lösung II ausgewählt, da sich die X-Achskoordinate des Zielpunkts ZP der ersten Lösung I außerhalb des unteren Achsgrenzwertes Xmin befindet und sich die X-Achskoordinate des Zielpunkts ZP der zweiten Lösung II weder außerhalb des unteren Achsgrenzwertes Xmin noch des oberen Achsgrenzwertes Xmax befindet.
  • In einem weiteren Schritt 400 wird dann der Manipulator 2 gemäß der ausgewählten Lösung II von dem Startpunkt SP zu dem Zielpunkt ZP verlagert.
  • 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
    • EP 2255931 A2 [0002, 0002]
    • EP 1332841 A2 [0002, 0002, 0003]

Claims (10)

  1. Verfahren zur Steuerung eines Manipulators (2) bei einer point-to-point Bewegung, mit den Schritten: Einlesen von einem Zielpunktdatensatz eines Zielpunkts (ZP) in Weltkoordinaten, Bestimmen von wenigstens einer ersten Lösung (I) ohne Armigkeitswechsel und wenigstens einer zweiten Lösung (II) mit einem Armigkeitswechsel in Achskoordinaten zum Anfahren des Zielpunkts (ZP), Einlesen von einem Grenzdatensatz (Xmin, Xmax), Vergleichen der Achskoordinaten der ersten Lösung und der zweiten Lösung des Zielpunktes (ZP) mit Achskoordinaten des Grenzdatensatzes (Xmin, Xmax), Auswählen einer Lösung (I, II) aus der wenigstens einer ersten Lösung (I) ohne Armigkeitswechsel und der wenigstens einen zweiten Lösung (II) mit einem Armigkeitswechsel auf Grundlage des Vergleichs, und Bewegen des Manipulators (2) gemäß der ausgewählten Lösung (I, II).
  2. Verfahren nach Anspruch 1, bei dem der Grenzdatensatz (Xmin, Xmax) zumindest teilweise in Achskoordinaten eingelesen wird.
  3. Verfahren nach Anspruch 1 oder 2, bei dem der Grenzdatensatz (Xmin, Xmax) zumindest teilweise in Weltkoordinaten eingelesen und in Achskoordinaten umgewandelt wird.
  4. Verfahren nach einem der vorstehenden Ansprüche, bei dem zur Auswahl einer Lösung (I, II) die Achskoordinaten der Lösung (I, II) mit den Achskoordinaten des Grenzdatensatzes (Xmin, Xmax) verglichen werden, und auf ein Überschreiten wenigstens einer der Achskoordinaten des Grenzdatensatzes (Xmin, Xmax) durch eine entsprechende Achskoordinate der Lösung (I, II) die Lösung verworfen wird.
  5. Verfahren nach einem der vorstehenden Ansprüche, bei dem der Grenzdatensatz (Xmin, Xmax) einen Achsgrenzwert (Xmin, Xmax) des Manipulators (2) aufweist.
  6. Verfahren nach einem der vorstehenden Ansprüche, bei dem der Grenzdatensatz (Xmin, Xmax) einen von einem Anwender vorgegebenen Grenzwert aufweist.
  7. Verfahren nach einem der vorstehenden Ansprüche, bei dem der Grenzdatensatz (Xmin, Xmax) die Form einer geraden oder gekrümmten Linie oder Fläche beschreibt.
  8. Recheneinheit, die dazu eingerichtet ist, ein Verfahren nach einem der vorstehenden Ansprüche durchzuführen.
  9. Computerprogramm, das eine Recheneinheit veranlasst, ein Verfahren nach einem der Ansprüche 1 bis 7 durchzuführen, wenn es auf der Recheneinheit ausgeführt wird.
  10. Maschinenlesbares Speichermedium mit einem darauf gespeicherten Computerprogramm nach Anspruch 9.
DE102014210544.7A 2014-06-04 2014-06-04 Verfahren zur Steuerung eines Manipulators bei einer point-to-point Bewegung Active DE102014210544B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102014210544.7A DE102014210544B4 (de) 2014-06-04 2014-06-04 Verfahren zur Steuerung eines Manipulators bei einer point-to-point Bewegung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102014210544.7A DE102014210544B4 (de) 2014-06-04 2014-06-04 Verfahren zur Steuerung eines Manipulators bei einer point-to-point Bewegung

Publications (2)

Publication Number Publication Date
DE102014210544A1 true DE102014210544A1 (de) 2015-12-17
DE102014210544B4 DE102014210544B4 (de) 2023-04-13

Family

ID=54706369

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014210544.7A Active DE102014210544B4 (de) 2014-06-04 2014-06-04 Verfahren zur Steuerung eines Manipulators bei einer point-to-point Bewegung

Country Status (1)

Country Link
DE (1) DE102014210544B4 (de)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1332841A2 (de) 2002-01-16 2003-08-06 Dürr Systems GmbH Verfahren zur Steuerung eines Roboters und Steuereinheit für einen Roboter
DE102007037077A1 (de) * 2007-08-06 2009-02-12 Kuka Roboter Gmbh Verfahren zur Einhaltung von Arbeitsraumgrenzen eines Arbeitsmittels eines Roboters
US20090171505A1 (en) * 2006-07-04 2009-07-02 Yasunao Okazaki Device and method for controlling robot arm, robot, and robot arm control program
EP2255931A2 (de) 2009-05-29 2010-12-01 KUKA Roboter GmbH Verfahren und Vorrichtung zur Steuerung eines Manipulators
US20100318224A1 (en) * 2008-03-06 2010-12-16 Akinobu Okuda Manipulator and method of controlling the same
DE102010046327A1 (de) * 2010-09-23 2012-03-29 Kuka Laboratories Gmbh Überwachung eines mobilen Manipulators
US8180488B2 (en) * 2007-12-07 2012-05-15 Kabushiki Kaisha Yaskawa Denki Robot system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1332841A2 (de) 2002-01-16 2003-08-06 Dürr Systems GmbH Verfahren zur Steuerung eines Roboters und Steuereinheit für einen Roboter
US20090171505A1 (en) * 2006-07-04 2009-07-02 Yasunao Okazaki Device and method for controlling robot arm, robot, and robot arm control program
DE102007037077A1 (de) * 2007-08-06 2009-02-12 Kuka Roboter Gmbh Verfahren zur Einhaltung von Arbeitsraumgrenzen eines Arbeitsmittels eines Roboters
US8180488B2 (en) * 2007-12-07 2012-05-15 Kabushiki Kaisha Yaskawa Denki Robot system
US20100318224A1 (en) * 2008-03-06 2010-12-16 Akinobu Okuda Manipulator and method of controlling the same
EP2255931A2 (de) 2009-05-29 2010-12-01 KUKA Roboter GmbH Verfahren und Vorrichtung zur Steuerung eines Manipulators
DE102010046327A1 (de) * 2010-09-23 2012-03-29 Kuka Laboratories Gmbh Überwachung eines mobilen Manipulators

Also Published As

Publication number Publication date
DE102014210544B4 (de) 2023-04-13

Similar Documents

Publication Publication Date Title
EP1722935B9 (de) Verfahren zum einmessen eines arbeitspunktes von werkzeugen für industrieroboter
DE102015015093B4 (de) Roboterprogrammiervorrichtung zum Instruieren eines Roboters für eine Bearbeitung
DE102006007623B4 (de) Roboter mit einer Steuereinheit zum Steuern einer Bewegung zwischen einer Anfangspose und einer Endpose
DE102009008121A1 (de) Verfahren und Vorrichtung zum Erzeugen von transformierten Steuerdaten zum Steuern eines Werkzeugs an einer Werkzeugmaschine
DE102011108282A1 (de) Numerische Steuerung für eine Mehrachsenmaschine zum Bearbeiten einer geneigten Bearbeitungsebene
DE102018218298A1 (de) Bearbeitungssystem
DE102015223258A1 (de) Verfahren zum Bearbeiten der Oberfläche eines dreidimensionalen Objekts
DE102006039356A1 (de) Verfahren zum Steuern eines Karosserierohbau-Laserschweißsystems und Karosserierohbau-Laserschweißsystem
DE102014105456A1 (de) Verfahren zur Vermessung der Außenkontur von dreidimensionalen Messobjekten und zugehöriges Messsystem
EP2919081B1 (de) Bearbeitungsmaschine mit Berücksichtigung von Lagefehlern bei Kollisionsprüfung
DE102014104774A1 (de) Ausschweiß-Spannvorrichtung
DE102018118031A1 (de) Bearbeitungsvorrichtung und Verfahren zur Bearbeitung
EP3221094A1 (de) Verfahren und system zur korrektur einer bearbeitungsbahn eines robotergeführten werkzeugs
EP3471928B1 (de) Konfigurieren und/oder steuern einer roboteranordnung
EP0271691B1 (de) Verfahren zum Steuern der dreidimensionalen Relativbewegung eines Roboters gegenüber einem an einem Werkstückträger befestigten Werkstück
DE102012022190B4 (de) Inverse Kinematik
AT518498B1 (de) Positionsüberwachung einer Kinematik
WO2019197669A1 (de) Biegevorrichtung mit werkstückführung durch mehrgelenkarmroboter
WO2018091141A1 (de) Vermessen einer bewegungsachse eines roboters
EP3569367A1 (de) Rechnergestütztes ermitteln einer bewegung einer vorrichtung
DE102015008188B3 (de) Abfahren einer vorgegebenen Bahn mit einem Roboter
DE102014210544A1 (de) Verfahren zur Steuerung eines Manipulators bei einer point-to-point Bewegung
EP0449039A1 (de) Verfahren zur Steuerung von Positioniersystemen
DE102015012956A1 (de) Gelenkstruktur, die einen Längenspielraum einer Versorgungsleitung optimieren kannn, und Industrieroboter mit der Gelenkstruktur
DE102021204148B3 (de) Verfahren und System zum koordinierten Abfahren vorgegebener Roboterbahnen

Legal Events

Date Code Title Description
R163 Identified publications notified
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final