-
Die Erfindung betrifft ein Robotersystem zum Bearbeiten eines Werkstücks.
-
Aufgabe der Erfindung ist es, das Bearbeiten eines Werkstücks zu vereinfachen, und insbesondere die Definition der zu bearbeitenden Kanten oder Flächen eines Werkstücks zu vereinfachen.
-
Die Erfindung ergibt sich aus den Merkmalen der unabhängigen Ansprüche. Vorteilhafte Weiterbildungen und Ausgestaltungen sind Gegenstand der abhängigen Ansprüche.
-
Ein erster Aspekt der Erfindung betrifft ein Robotersystem zum Bearbeiten eines Werkstücks, wobei das Robotersystem einen Robotermanipulator mit einem Endeffektor und eine Recheneinheit aufweist, wobei der Endeffektor zum Bearbeiten des Werkstücks ausgeführt ist und wobei die Recheneinheit dazu ausgeführt ist,
- - den Robotermanipulator so anzusteuern, dass er von einem Anwender manuell führbar ist,
- - eine jeweils aktuelle Position des Endeffektors zu ermitteln, wenn der Anwender über eine Eingabeeinheit ein Signal während des manuellen Führens dazu gibt,
- - die jeweils aktuelle Position des Endeffektors als jeweiligen Referenzpunkt abzuspeichern,
- - einen jeweiligen in einem für die Recheneinheit bereitgestellten CAD-Modell des Werkstücks vordefinierten Ort des Werkstücks dem jeweiligen Referenzpunkt zuzuordnen,
- - auf Basis der Zuordnung des jeweiligen Orts zu dem jeweiligen Referenzpunkt eine Transformation zwischen einem robotereigenen Koordinatensystem und einem im CAD-Modell des Werkstücks definierten Koordinatensystemen des Werkstücks zu ermitteln, und
- - auf Basis der Transformation den Robotermanipulator zum Bearbeiten des Werkstücks gemäß einer bezüglich des CAD-Modells vorgegebenen Aufgabe anzusteuern.
-
Der Robotermanipulator weist insbesondere eine Vielzahl von durch Gelenken miteinander verbundenen Gliedern auf. Insbesondere an den Gelenken sind bevorzugt elektrische Aktuatoren angeordnet, die zum Bewegen des Robotermanipulators dienen. Insbesondere am distalen Ende des Robotermanipulators ist ein Endeffektor angeordnet, der zum Bearbeiten des Werkstücks ausgeführt ist. Die Bearbeitung des Werkstücks kann insbesondere durch Polieren, Schweißen, Lackieren, Schneiden, oder Schleifen erfolgen.
-
Bevorzugt sind an den Gelenken des Robotermanipulators auch Gelenkwinkelsensoren angeordnet, die einen Winkel zwischen zwei aneinander angrenzenden Glieder erfassen. Aus der Vielzahl lässt sich so errechnen, welche Position im Raum ein vordefinierter Punkt auf dem Endeffektor hat. Zur Vereinfachung wird im Obigen und im Folgenden die Position des vordefinierten Punkts auf dem Endeffektor schlicht als Position des Endeffektors bezeichnet. Bevorzugt über solche Gelenkwinkelsensoren ermittelt die Recheneinheit somit die Position des Endeffektors.
-
Wenn der Robotermanipulator von der Recheneinheit so angesteuert wird, dass er durch einen Anwender manuell führbar ist, dann werden insbesondere die Aktuatoren an den Gelenken des Robotermanipulators so angesteuert, dass die von einem Anwender auf den Robotermanipulator aufgebrachte externe Kraft oder das aufgebrachte Moment erfasst werden und der Robotermanipulator entweder nachgiebig geregelt wird oder mit einem genau solchen Moment angesteuert wird, dass der Robotermanipulator eine Bewegung ausführt, die der Richtung oder der Orientierung und der Höhe der Kraft des Anwenders bzw. des Moments entspricht.
-
Die Eingabeeinheit ist bevorzugt ein Knopf oder ein Schalter am Robotermanipulator oder am Endeffektor oder an einem von extern an den Robotermanipulator anbringbarem Eingabeelement, oder ein Touchscreen am Robotermanipulator, oder ein Touchscreen außerhalb des Robotermanipulators, insbesondere ein Touchscreen, der an einem Anwenderrechner angeordnet ist, der mit der Recheneinheit des Robotermanipulators verbunden ist, oder eine Tastatur des Anwenderrechners, oder eine Maus des Anwenderrechners, oder ein Spracheingabemodul der Recheneinheit des Robotermanipulators, oder der Robotermanipulator zusammen mit seiner Recheneinheit selbst, die zum Erfassen von Gesten ausgeführt sind, sodass insbesondere der Robotermanipulator selbst durch manuelle Führung eines Anwenders als Eingabeeinheit dienen kann.
-
Die Abkürzung CAD-Modell beschreibt ein datenbasiertes, insbesondere vektorbasiertes, Modell des Werkstücks, wobei die Abkürzung „CAD“ für „Computer-aided-design“ steht.
-
Das robotereigene Koordinatensystem ist vom Robotersystem zu jeder Zeit bekannt, ohne externe Informationen dafür zu benötigen. Bevorzugt ist das robotereigene Koordinatensystem ein erdfestes Koordinatensystem, dessen Ursprung insbesondere an der Basis des Robotermanipulators gedacht angeordnet ist. In einem solchen Koordinatensystem kann die Position des Endeffektors insbesondere durch die Gesamtheit aller bekannten Gelenkwinkel ermittelt werden. Während in diesem Fall das Koordinatensystem mit einer erdfest montierten Basis des Robotermanipulators korreliert, das heißt nicht mit der Bewegung der weiteren Glieder des Robotermanipulators mitbewegt wird, können auch andere robotereigene Koordinatensysteme verwendet werden, insbesondere ein Koordinatensystem, das sich mit einem um einen Azimutwinkel drehbares erstes Glied des Robotermanipulators mitbewegt - das sogenannte Karusell. Dagegen ist das Koordinatensystem des Werkstücks körperfest gedacht am Werkstück angeordnet, sodass sich das Koordinatensystem des Werkstücks bei einer Orientierungsänderung oder einer Positionsänderung des Werkstücks zusammen mit dem Werkstück mitbewegt.
-
Sind beide Koordinatensysteme bekannt, kann zu jedem Zeitpunkt über die Kenntnis der Gelenkwinkel eine Position des Endeffektors gegenüber dem Werkstück mittels einer Koordinatensystemtransformation bestimmt werden. Auf diese Weise kann im CAD-Modell die Aufgabe definiert werden, und die Aufgabe am realen Werkstück ausgeführt werden. Durch die Zuordnung des jeweiligen Orts des im CAD Modell definierten Werkstücks zu dem jeweiligen Referenzpunkt sind für die Recheneinheit ausreichend Informationen vorhanden, um beispielsweise eine im CAD-Modell definierte Bahnkurve auch am realen Werkstück abzufahren.
-
Es ist eine vorteilhafte Wirkung der Erfindung, dass das Ausführen einer Aufgabe an einem Werkstück, insbesondere das Bearbeiten eines Werkstücks, leicht zu definieren ist und nach der Definition unmittelbar ausgeführt werden kann, wofür nur das Einlernen einer oder mehrerer Orte des Werkstücks in seiner aktuellen Position und in seiner aktuellen Orientierung notwendig ist.
-
Gemäß einer vorteilhaften Ausführungsform ist die Recheneinheit dazu ausgeführt, den Robotermanipulator schwerkraftkompensiert anzusteuern. Bei der schwerkraftkompensierten Ansteuerung des Robotermanipulators werden die Aktuatoren so angesteuert, dass sich das von den Aktuatoren erzeugte Moment bzw. die von den Aktuatoren erzeugte Kraft mit der auf den Robotermanipulator wirkenden Schwerkraft neutralisiert und der Robotermanipulator daher scheinbar schwerelos in seiner Ruhestellung verbleibt. Vorteilhaft erleichtert dies das manuelle Führen des Robotermanipulators, da dieser, wenn in eine bestimmte Position gebracht, auch in dieser verbleibt und nicht durch Schwerkraft beeinflusst sich beschleunigt bewegt.
-
Gemäß einer weiteren vorteilhaften Ausführungsform ist die Recheneinheit dazu ausgeführt, zumindest zwei zueinander verschiedene aktuelle Positionen des Endeffektors zu ermitteln und als jeweiligen Referenzpunkt abzuspeichern, wobei das Koordinatensystem des Werkstücks ein ebenes ist. Das ebene Koordinatensystem des Werkstücks ist insbesondere ein kartesisches Koordinatensystem mit zwei aufeinander senkrecht stehenden Koordinatenachsen; alternativ bevorzugt können in dieser betrachteten Ebene des Werkstücks Radialkoordinaten verwendet werden. Vorteilhaft wird somit ein sehr sparsamer Datensatz von Koordinaten verwendet, der beispielsweise für eine Platte oder Papier oder andere flächig dominierte Werkstücke völlig ausreichend ist.
-
Gemäß einer weiteren vorteilhaften Ausführungsform ist die Recheneinheit dazu ausgeführt, zumindest drei zueinander verschiedene aktuelle Positionen des Endeffektors zu ermitteln und als jeweiligen Referenzpunkt abzuspeichern, wobei das Koordinatensystem des Werkstücks ein räumliches ist. Das räumliche Koordinatensystem des Werkstücks weist im Falle eines kartesischen Koordinatensystems drei paarweise aufeinander senkrecht stehende Achsen auf, sodass jeder räumliche Punkt des Werkstücks in diesem Koordinatensystem beschrieben werden kann. Dies führt vorteilhaft zu der vielseitigsten Möglichkeit einer Beschreibung des Werkstücks.
-
Gemäß einer weiteren vorteilhaften Ausführungsform ist die Eingabeeinheit dazu ausgeführt, eine erste Eingabe des Anwenders zu erfassen und die erfasste erste Eingabe an die Recheneinheit zu übermitteln, wobei die Recheneinheit dazu ausgeführt ist, auf Basis der erfassten ersten Eingabe im CAD-Modell eine Kante oder eine Fläche des Werkstücks auszuwählen, und wobei die Recheneinheit ferner dazu ausgeführt ist, die jeweilige aktuelle Position der im CAD-Modell ausgewählten Kante oder Fläche des Werkstücks zuzuordnen. Insbesondere ist die ausgewählte Kante oder Flcähe des Werkstücks die zu bearbeitende Fläche oder Kante des Werkstücks, die durch diese Ausführungsform besonders effizient ausgewählt wird. Weiterhin sind weniger Daten bezüglich der Referenzpunkte und der Orte am Werkstück notwendig, da so weniger Daten notwendig sind, um eine Transformation zwischen dem Koordinatensystem des Werkstücks und dem robotereigenen Koordinatensystem zu ermitteln.
-
Gemäß einer weiteren vorteilhaften Ausführungsform weist das Robotersystem weiterhin eine Spannvorrichtung auf, wobei die Spannvorrichtung zum Fixieren des Werkstücks in zumindest einer Richtung ausgeführt ist. Die Spannvorrichtung des Robotermanipulators erlaubt es vorteilhaft, dass weniger Positionen des Endeffektors gespeichert werden müssen, um die Transformation zwischen dem robotereigenen Koordinatensystem und dem Koordinatensystem des Werkstücks zu ermitteln. Denn die Spannvorrichtung nimmt durch die Fixierung des Werkstücks unbekannte Koordinaten vorweg, da die Spannvorrichtung das Werkstück in zumindest einer Koordinate fixiert. Der Aufwand für das manuelle Führen an die entsprechenden Orte des Werkstücks, wie sie im CAD-Modell definiert sind, wird dadurch kleiner.
-
Gemäß einer weiteren vorteilhaften Ausführungsform ist die Recheneinheit dazu ausgeführt, einen jeweiligen Referenzpunkt aus zumindest zwei ermittelten aktuellen Positionen des Endeffektors durch Mitteln zu ermitteln. Vorteilhaft erhöht dies die Genauigkeit insbesondere dann, wenn ein im CAD-Modell vordefinierter Ort des Werkstücks durch das manuelle Führen des Robotermanipulators mit dem Endeffektor mehr als einmal berührt wird. Ungenauigkeiten im manuellen Führen durch den Anwender werden durch das wiederholte Führen des Endeffektors des Robotermanipulators an den jeweiligen Ort des Werkstücks ausgemittelt.
-
Gemäß einer weiteren vorteilhaften Ausführungsform ist die Recheneinheit dazu ausgeführt, aus einer Vielzahl von Referenzpunkten oder aus einer Vielzahl von in dem CAD-Modell des Werkstücks vordefinierten Orten des Werkstücks eine Bahnkurve für den Endeffektor zu ermitteln. Die Bahnkurve für den Endeffektor des Robotermanipulators wird insbesondere durch Erzeugen einer entsprechend interpolierten Kurve basierend auf den Referenzpunkten oder basierend auf den Orten am Werkstück, wie sie im CAD-Modell definiert sind, ermittelt.
-
Gemäß einer weiteren vorteilhaften Ausführungsform ist die Recheneinheit dazu ausgeführt, beim Abfahren der Bahnkurve eine Qualität der Folgbarkeit und/oder einen vordefinierten Abstand zum Werkstück zu überprüfen und bei negativem Ergebnis der Überprüfung die Bahnkurve anzupassen. Würde insbesondere gemäß der ermittelten Bahnkurve des Endeffektors diese durch das Werkstück führen, sodass die Bahnkurve in ihrer vordefinierten Form nicht ausführbar ist, so kann die ermittelte Bahnkurve an solche Fehler angepasst werden. Vorteilhaft werden insbesondere die gespeicherten Referenzpunkte so angepasst und verbessert.
-
Gemäß einer weiteren vorteilhaften Ausführungsform ist die Eingabeeinheit dazu ausgeführt, eine zweite Eingabe des Anwenders zu erfassen und die zweite Eingabe an die Recheneinheit zu übermitteln, wobei die Recheneinheit zum Erzeugen des jeweiligen vordefinierten Orts aus der zweiten Eingabe ausgeführt ist. Gemäß dieser Ausführungsform wird nicht nur auf eine Eingabe des Anwenders hin die aktuelle Position des Endeffektor als Referenzpunkt abgespeichert, sondern der Anwender kann auch über eine weitere Eingabe den jeweiligen interessierenden Ort am CAD-Modell des Werkstücks definieren. Vorteilhaft erfolgt dies über die gleiche Eingabeeinheit wie die erste Eingabe des Anwenders, insbesondere am Robotermanipulator selbst. Vorteilhaft kann somit der Anwender beim manuellen Führen des Robotermanipulators ohne seine Hände vom Robotermanipulator zu nehmen, sowohl den jeweiligen Referenzpunkt im Raum als auch den jeweiligen zugehörigen Ort am CAD-Modell definieren.
-
Ein weiterer Aspekt der Erfindung betrifft ein Verfahren zum Bearbeiten eines Werkstücks durch ein Robotersystem, aufweisend einen Robotermanipulator mit einem Endeffektor und aufweisend eine Recheneinheit, wobei der Endeffektor zum Bearbeiten des Werkstücks dient, aufweisend die Schritte:
- - Ansteuern des Robotermanipulators so, dass er von einem Anwender manuell führbar ist,
- - Ermitteln einer jeweils aktuellen Position des Endeffektors, wenn der Anwender über eine Eingabeeinheit ein Signal während des manuellen Führens dazu gibt,
- - Abspeichern der jeweils aktuellen Position des Endeffektors als jeweiligen Referenzpunkt,
- - Zuordnen eines jeweiligen in einem für die Recheneinheit bereitgestellten CAD-Modell des Werkstücks vordefinierten Orts des Werkstücks zu dem jeweiligen Referenzpunkt,
- - auf Basis der Zuordnung des jeweiligen Orts zu dem jeweiligen Referenzpunkt:
- Ermitteln einer Transformation zwischen einem robotereigenen Koordinatensystem und einem im CAD-Modell des Werkstücks definierten Koordinatensystemen des Werkstücks, und
- - auf Basis der Transformation: Ansteuern des Robotermanipulators zum Bearbeiten des Werkstücks gemäß einer bezüglich des CAD-Modells vorgegebenen Aufgabe.
-
Vorteile und bevorzugte Weiterbildungen des vorgeschlagenen Verfahrens ergeben sich durch eine analoge und sinngemäße Übertragung der im Zusammenhang mit dem vorgeschlagenen Robotersystem vorstehend gemachten Ausführungen.
-
Weitere Vorteile, Merkmale und Einzelheiten ergeben sich aus der nachfolgenden Beschreibung, in der - gegebenenfalls unter Bezug auf die Zeichnung - zumindest ein Ausführungsbeispiel im Einzelnen beschrieben ist. Gleiche, ähnliche und/oder funktionsgleiche Teile sind mit gleichen Bezugszeichen versehen.
-
Es zeigen:
- 1 ein Robotersystem gemäß einem Ausführungsbeispiel der Erfindung, und
- 2 ein Verfahren gemäß dem Ausführungsbeispiel der Erfindung nach 1.
-
Die Darstellungen in den Figuren sind schematisch und nicht maßstäblich.
-
1 zeigt ein Robotersystem 1 zum Bearbeiten eines Werkstücks. Das Robotersystem 1 weist einen Robotermanipulator 3 mit einem Endeffektor 5 zum Polieren der Seitenfläche des Werkstücks und eine Recheneinheit 7 auf. Die Recheneinheit 7 ist der robotereigene Computer, der auch als Steuereinheit zum Ansteuern der Aktuatoren des Robotermanipulators 3 dient. Die Recheneinheit 7 steuert den Robotermanipulator 3 schwerkraftkompensiert in einer Admittanzregelung an. Daher können die Glieder des Robotermanipulators 3 einzeln und ohne großen Kraftaufwand von einem Anwender manuell geführt werden. Winkelgeber an den Gelenken des Robotermanipulators 3 erfassen die Gelenkwinkel, woraus die Recheneinheit 7die jeweils aktuelle Position P1, P2, P3 des Endeffektors 5 ermittelt, wenn der Anwender über eine als Knopf am Robotermanipulator 3 ausgeführte Eingabeeinheit 9 ein Signal während des manuellen Führens dazu gibt. Die jeweils aktuelle Position P1, P2, P3 des Endeffektors 5 als wird als jeweiliger Referenzpunkt von der Recheneinheit 7 abgespeichert. Die Recheneinheit 7 ordnet ferner einen jeweiligen in einem für die Recheneinheit 7 bereitgestellten CAD-Modell des Werkstücks vordefinierten Ort P1, P2, P3 des Werkstücks dem jeweiligen Referenzpunkt zu und ermittelt auf Basis dieser Zuordnung des jeweiligen Orts zu dem jeweiligen Referenzpunkt eine Transformation zwischen einem basisfesten robotereigenen Koordinatensystem und einem im CAD-Modell des Werkstücks definierten Koordinatensystemen des Werkstücks. Diese Transformation dient weiterhin der Recheneinheit 7 als Grundlage der Ansteuerung des Robotermanipulators 3 zum Bearbeiten des Werkstücks gemäß einer bezüglich des CAD-Modells vorgegebenen Aufgabe anzusteuern. Zum Bearbeiten des Werkstücks wird der Endeffektor 5 entlang einer im CAD-Modell des Werkstücks vorgegebenen Bahnkurve für den Endeffektor 5 verfahren. Diese Bahnkurve wird am CAD-Modell von der Recheneinheit 7 aus den vorgegebenen Orten P1, P2, P3 an dem Werkstück ermittelt. Die Orte P1, P2, P3 des Werkstücks selbst werden durch eine Eingabe des Anwenders an der Eingabeeinheit 9 des Robotermanipulators 3 definiert. Die Orte P1, P2, P3 des Werkstücks liegen alle an der vordefinierten Seitenflächen des Werkstücks, sodass nur die Orte P1, P2, P3, im CAD-Modell vorgegeben werden. Genau diese Orte P1, P2, P3 werden durch manuelles Führen des Robotermanipulators 3 erfasst, indem der Endeffektor 5 an die zu diesen im CAD-Modell definierten Orte P1, P2, P3 per Hand geführt wird und bei Berührung des Endeffektors 5 am Werkstück an der zum jeweiligen Ort P1, P2, P3 zugehörigen Position am realen Werkstück auf ein Signal hin des Anwenders als Referenzpunkt des Endeffektors 5 abgespeichert werden.
-
2 zeigt ein Verfahren zum Bearbeiten eines Werkstücks durch ein Robotersystem 1, aufweisend einen Robotermanipulator 3 mit einem Endeffektor 5 und aufweisend eine Recheneinheit 7, wobei der Endeffektor 5 zum Bearbeiten des Werkstücks dient. Das Verfahren der 2 ist dasjenige Verfahren, das auf dem Robotersystem 1 der 1 ausgeführt wird. Für weitere Erklärungen zu dem Verfahren können daher auch die Erläuterungen der 1 herangezogen werden. Das Verfahren weist die folgenden Schritte auf:
- - Ansteuern S1 des Robotermanipulators 3 so, dass er von einem Anwender manuell führbar ist,
- - Ermitteln S2 einer jeweils aktuellen Position des Endeffektors 5, wenn der Anwender über eine Eingabeeinheit 9 ein Signal während des manuellen Führens dazu gibt,
- - Abspeichern S3 der jeweils aktuellen Position des Endeffektors 5 als jeweiligen Referenzpunkt,
- - Zuordnen S4 eines jeweiligen in einem für die Recheneinheit 7 bereitgestellten CAD-Modell des Werkstücks vordefinierten Orts des Werkstücks zu dem jeweiligen Referenzpunkt,
- - auf Basis der Zuordnung des jeweiligen Orts zu dem jeweiligen Referenzpunkt:
- Ermitteln S5 einer Transformation zwischen einem robotereigenen Koordinatensystem und einem im CAD-Modell des Werkstücks definierten Koordinatensystemen des Werkstücks, und
- - auf Basis der Transformation: Ansteuern S6 des Robotermanipulators 3 zum Bearbeiten des Werkstücks gemäß einer bezüglich des CAD-Modells vorgegebenen Aufgabe.
-
Obwohl die Erfindung im Detail durch bevorzugte Ausführungsbeispiele näher illustriert und erläutert wurde, so ist die Erfindung nicht durch die offenbarten Beispiele eingeschränkt und andere Variationen können vom Fachmann hieraus abgeleitet werden, ohne den Schutzumfang der Erfindung zu verlassen. Es ist daher klar, dass eine Vielzahl von Variationsmöglichkeiten existiert. Es ist ebenfalls klar, dass beispielhaft genannte Ausführungsformen wirklich nur Beispiele darstellen, die nicht in irgendeiner Weise als Begrenzung etwa des Schutzbereichs, der Anwendungsmöglichkeiten oder der Konfiguration der Erfindung aufzufassen sind. Vielmehr versetzen die vorhergehende Beschreibung und die Figurenbeschreibung den Fachmann in die Lage, die beispielhaften Ausführungsformen konkret umzusetzen, wobei der Fachmann in Kenntnis des offenbarten Erfindungsgedankens vielfältige Änderungen, beispielsweise hinsichtlich der Funktion oder der Anordnung einzelner, in einer beispielhaften Ausführungsform genannter Elemente, vornehmen kann, ohne den Schutzbereich zu verlassen, der durch die Ansprüche und deren rechtliche Entsprechungen, wie etwa weitergehende Erläuterungen in der Beschreibung, definiert wird.
-
Bezugszeichenliste
-
- 1
- Robotersystem
- 3
- Robotermanipulator
- 5
- Endeffektor
- 7
- Recheneinheit
- 9
- Eingabeeinheit
- S1
- Ansteuern
- S2
- Ermitteln
- S3
- Abspeichern
- S4
- Zuordnen
- S5
- Ermitteln
- S6
- Ansteuern