Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND APPARATUS FOR DETERMINING AN OPTIMISED SEQUENCE OF MOVEMENTS OF A ROBOT DEVICE
Document Type and Number:
WIPO Patent Application WO/2019/162070
Kind Code:
A1
Abstract:
The invention relates to a method for determining an optimised sequence of movements of a robot device for moving a first object in such a way that the first object is brought into a target position independently of an uncertainty of a position of the first object in relation to a second object and/or independently of an uncertainty of a position of the robot device. The method comprises: simulating movement portions of the robot device taking account of the uncertainty of the position of the first object and/or the uncertainty of the position of the robot device; and determining the optimised sequence of movements of the robot device taking account of the simulated movement portions and boundary conditions which specify at least one starting position and the target position of the first object. An optimised sequence of movements is determined, by which the robot device can guide the first object reliably into its target position.

Inventors:
SCHMITT, Philipp Sebastian (Friedrich-Engels-Bogen 5, München, 81735, DE)
WIRNSHOFER, Florian (Linprunstrasse 12, München, 80335, DE)
Application Number:
EP2019/052607
Publication Date:
August 29, 2019
Filing Date:
February 04, 2019
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SIEMENS AKTIENGESELLSCHAFT (Werner-von-Siemens-Straße 1, München, 80333, DE)
International Classes:
B25J9/16
Other References:
LAVALLE S M ET AL: "AN OBJECTIVE-BASED FRAMEWORK FOR MOTION PLANNING UNDER SENSING AND CONTROL UNCERTAINTIES", INTERNATIONAL JOURNAL OF ROBOTICS RESEARCH, SAGE SCIENCE PRESS, THOUSAND OAKS, US, vol. 17, no. 1, 1 January 1998 (1998-01-01), pages 19 - 42, XP000734918, ISSN: 0278-3649
KIM SUNG-KYUN ET AL: "Parts assembly planning under uncertainty with simulation-aided physical reasoning", 2017 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION (ICRA), IEEE, 29 May 2017 (2017-05-29), pages 4074 - 4081, XP033127210, DOI: 10.1109/ICRA.2017.7989468
YIFENG HUANG ET AL: "Collision-probability constrained PRM for a manipulator with base pose uncertainty", INTELLIGENT ROBOTS AND SYSTEMS, 2009. IROS 2009. IEEE/RSJ INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 10 October 2009 (2009-10-10), pages 1426 - 1432, XP031580528, ISBN: 978-1-4244-3803-7
MELCHIOR N A ET AL: "Particle RRT for Path Planning with Uncertainty", 2007 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION - 10-14 APRIL 2007 - ROMA, ITALY, IEEE, PISCATAWAY, NJ, USA, 10 April 2007 (2007-04-10), pages 1617 - 1624, XP031389026, ISBN: 978-1-4244-0601-2
S. M. LAVALLE ET AL.: "An objective-based framework for motion planning under sensing and control uncertainties", INTERNATIONAL JOURNAL OF ROBOTICS RESEARCH, vol. 1, January 1998 (1998-01-01)
S. KIM ET AL.: "Parts assembly planning under uncertainty with simulation-aided physical reasoning", IEEE CONFERENCE ON ROBOTICS AND AUTOMATION, 29 May 2017 (2017-05-29)
Y. HUANG ET AL.: "Collision-probability constrained PRM for a manipulator with base pose uncertainty", INTELLIGENT ROBOTS AND SYSTEMS, 2009
Download PDF:
Claims:
Patentansprüche

1. Verfahren zum Bestimmen eines optimierten Bewegungsab laufs (8) einer Robotereinrichtung (3) zur Bewegung eines ersten Gegenstandes (1, la - ld) derart, dass der erste Ge genstand (1, la - ld) unabhängig von einer Unsicherheit einer Pose des ersten Gegenstands (1, la - ld) in Bezug auf einen zweiten Gegenstand (2) und/oder unabhängig von einer Unsi cherheit einer Pose der Robotereinrichtung (3) in eine Ziel pose (ZP) gebracht wird, wobei das Verfahren umfasst:

Simulieren (Sl) von Bewegungsabschnitten der Roboterein richtung (3) unter Berücksichtigung der Unsicherheit der Pose des ersten Gegenstands (1, la - ld) und/oder der Unsicherheit der Pose der Robotereinrichtung (3); und

Bestimmen (S2) des optimierten Bewegungsablaufs (8) der Robotereinrichtung (3) unter Berücksichtigung der simulierten Bewegungsabschnitte und von Randbedingungen, die zumindest eine Startpose (SP) und die Zielpose (ZP) des ersten Gegen stands (1, la - ld) angeben, wobei

die Robotereinrichtung (3) eine Nachgiebigkeit aufweist, welche einer partiellen Kompensation der Robotereinrichtung (3) für die Unsicherheit der Pose des ersten Gegenstands (1, la - ld) und/oder der Unsicherheit der Pose der Roboterein richtung (3) dient; und wobei

das Simulieren der Bewegungsabschnitte ferner unter Be rücksichtigung einer vorbestimmten Nachgiebigkeit der Robote reinrichtung (3) erfolgt.

2. Verfahren nach Anspruch 1,

dadurch gekennzeichnet,

dass das Bestimmen des optimierten Bewegungsablaufs (8) ein Bestimmen einer optimierten Nachgiebigkeit der Roboterein richtung (3) umfasst.

3. Verfahren nach Anspruch 1 oder 2,

dadurch gekennzeichnet,

dass die Unsicherheit der Pose des ersten Gegenstands (1, la - ld) und/oder der Robotereinrichtung (3) ein gewählter Wert, insbesondere ein stichprobenartig gewählter Wert, einer sta tistischen Unsicherheitsverteilung ist.

4. Verfahren nach einem der Ansprüche 1 - 3,

dadurch gekennzeichnet,

dass das Simulieren der mehreren Bewegungsabschnitte unter Berücksichtigung unterschiedlicher Werte der Unsicherheit der Pose des ersten Gegenstands (1, la - ld) und/oder der Robote reinrichtung (3) erfolgt.

5. Verfahren nach einem der Ansprüche 1 - 4,

dadurch gekennzeichnet,

dass beim Simulieren (Sl) der Bewegungsabschnitte zufällig mehrere Bewegungsabschnitte bestimmt werden (Sil) , die alle von einer selben Bewegungsabschnittstartpose der Roboterein richtung (3) ausgehen; wobei das Verfahren ferner umfasst: zufälliges Auswählen (S12) einer Bewegungsabschnittziel - pose einer der mehreren simulierten Bewegungsabschnitte und Festlegen (S13) dieser ausgewählten Bewegungsabschnittzielpo- se als eine neue Bewegungsabschnittstartpose ; und

Wiederholen des Simulierens (Sil) der Bewegungsabschnit te, des zufälligen Auswählens (S12) einer Bewegungsabschnitt- zielpose und des Festlegens (S13) der ausgewählten Bewegungs abschnittzielpose als eine neue Bewegungsabschnittstartpose, bis eine Bewegungsabschnittzielpose einer der mehreren simu lierten Bewegungsabschnitten in einem vorbestimmten Zielbe reich liegt.

6. Verfahren nach einem der Ansprüche 1 - 5,

dadurch gekennzeichnet,

dass das Bestimmen (S2) des optimierten Bewegungsablaufs (8) der Robotereinrichtung (3) durch ein Aneinandersetzen von mindestens zwei der simulierten Bewegungsabschnitte erfolgt.

7. Verfahren nach einem der Ansprüche 1 - 6,

dadurch gekennzeichnet,

dass beim Simulieren (Sl) der Bewegungsabschnitte zumindest eine Robotereinrichtungseigenschaft, eine erste Gegenstands- eigenschaft des ersten Gegenstands (1, la - ld) und/oder eine zweite Gegenstandseigenschaft des zweiten Gegenstands (2) be rücksichtigt wird; wobei die Robotereinrichtungseigenschaft zumindest umfasst:

eine durch die Robotereinrichtung (3) anwendbare maximale Kraft ;

eine Modelldarstellung der Robotereinrichtung (3) ;

und/oder

mögliche Bewegungen der Robotereinrichtung (3); und/oder wobei

die erste und/oder zweite Gegenstandseigenschaft zumindest umfasst :

einen Reibungskoeffizienten des ersten Gegenstands (1, la - ld) und/oder des zweiten Gegenstands (2) ;

eine Größe und/oder Form des ersten Gegenstands (1, la - ld) und/oder des zweiten Gegenstands (2) ;

eine Modelldarstellung des ersten Gegenstands (1, la - ld) und/oder des zweiten Gegenstands (2) ;

ein Gewicht des ersten Gegenstands (1, la - ld) und/oder des zweiten Gegenstands (2) ; und/oder

eine Materialeigenschaft des ersten Gegenstands (1, la - ld) und/oder des zweiten Gegenstands (2) .

8. Verfahren nach einem der Ansprüche 1 - 7,

dadurch gekennzeichnet,

dass das Bestimmen (S2) des optimierten Bewegungsablaufs (8) umfasst :

Berechnen (S3) einer Kostenfunktion für jeden simulierten Bewegungsabschnitt; und

Bestimmen (S3) des optimierten Bewegungsablaufs (8) in Abhängigkeit der berechneten Kostenfunktionen.

9. Verfahren nach Anspruch 8,

gekennzeichnet durch

Bestimmen von mehreren Bewegungsabläufen anhand der simu lierten Bewegungsabschnitte; Berechnen (S21) einer Gesamtkostenfunktion für jeden Be wegungsablauf anhand der Kostenfunktionen der Bewegungsab schnitte der jeweiligen Bewegungsabläufe; und

Auswahlen des Bewegungsablaufs mit der minimalen Gesamt kostenfunktion aus den mehreren Bewegungsabläufen als den op timierten Bewegungsablauf (8) .

10. Verfahren nach Anspruch 8,

gekennzeichnet durch

Bestimmen eines ersten Bewegungsablaufs anhand der simu lierten Bewegungsabschnitte;

Bestimmen eines Bewegungsablaufteils , der zumindest zwei Bewegungsabschnitte umfasst;

Berechnen der Kostenfunktion des Bewegungsablaufteils ; und

Weiterverfolgen des Bewegungsablaufteils , falls die Kos tenfunktion des Bewegungsablaufteils geringer als eine Kos tenfunktion des ersten Bewegungsablaufs ist.

11. Verfahren nach einem der Ansprüche 8 bis 10,

dadurch gekennzeichnet,

dass die Kostenfunktion eine Angabe enthält, über:

eine Qualität des simulierten Bewegungsabschnitts;

eine Länge einer dem simulierten Bewegungsabschnitt ent sprechenden Bahn;

eine Dauer eines Durchführens des simulierten Bewegungs abschnitts ;

einen Energieverbrauch des Durchführens des simulierten Bewegungsabschnitts; und/oder

eine beim Durchführen des simulierten Bewegungsabschnitts auftretende Kraft auf den ersten und/oder zweiten Gegenstand (1, la - ld, 2) .

12. Verfahren nach einem der Ansprüche 1 bis 11,

dadurch gekennzeichnet,

dass die Unsicherheit der Pose des ersten Gegenstands (1, la - ld) eine Unsicherheit eines verwendeten Modells des ersten und/oder zweiten Gegenstands (1, la - ld, 2) und/oder eine Fertigungstoleranz des ersten und/oder zweiten Gegenstands (1, la - ld, 2) repräsentiert.

13. Computerprogrammprodukt, welches auf einer programmge steuerten Einrichtung die Durchführung des Verfahrens nach einem der Ansprüche 1 bis 12 veranlasst.

14. Vorrichtung (4) zum Bestimmen eines optimierten Bewe gungsablaufs (8) einer Robotereinrichtung (3) zur Bewegung eines ersten Gegenstandes (1, la - ld) derart, dass der erste Gegenstand (1, la - ld) unabhängig von einer Unsicherheit ei ner Pose des ersten Gegenstands (1, la - ld) in Bezug auf ei nen zweiten Gegenstand (2) und/oder unabhängig von einer Un sicherheit einer Pose der Robotereinrichtung (3) in eine Zielpose (ZP) gebracht wird, wobei die Vorrichtung (4) um fasst :

eine Simulationseinheit (5) zum Simulieren von Bewegungs abschnitten der Robotereinrichtung (3) unter Berücksichtigung der Unsicherheit der Pose des ersten Gegenstands (1, la - ld) und/oder der Unsicherheit der Pose der Robotereinrichtung (3) ; und

eine Bestimmungseinheit (6) zum Bestimmen des optimierten Bewegungsablaufs (8) der Robotereinrichtung (3) unter Berück sichtigung der simulierten Bewegungsabschnitte und von Rand bedingungen, die zumindest eine Startpose (SP) und die Ziel pose (ZP) des ersten Gegenstands (1, la - ld) angeben, wobei die Robotereinrichtung (3) eine Nachgiebigkeit aufweist, welche einer partiellen Kompensation der Robotereinrichtung (3) für die Unsicherheit der Pose des ersten Gegenstands (1, la - ld) und/oder der Unsicherheit der Pose der Roboterein richtung (3) dient; und wobei

das Simulieren der Bewegungsabschnitte durch die Simula tionseinheit (5) ferner unter Berücksichtigung einer vorbe stimmten Nachgiebigkeit der Robotereinrichtung (3) erfolgt.

15. Vorrichtung nach Anspruch 14 zum Durchführen des Verfah rens nach einem der Ansprüche 2 bis 12.

Description:
Beschreibung

Verfahren und Vorrichtung zum Bestimmen eines optimierten Be wegungsablaufs einer Robotereinrichtung

Die vorliegende Erfindung betrifft ein Verfahren zum Bestim men eines optimierten Bewegungsablaufs einer Robotereinrich tung sowie eine Vorrichtung zur Durchführung eines solchen Verfahrens .

Robotereinrichtungen können zum Beispiel in industriellen An lagen eingesetzt werden, um Gegenstände, insbesondere Werk stücke, zu bewegen und/oder zusammenzuführen. Im Allgemeinen kann davon gesprochen werden, dass ein erster Gegenstand in Bezug auf einen zweiten Gegenstand durch einen Bewegungsab lauf der Robotereinrichtung in eine Zielpose gebracht wird.

Es kann dabei gewünscht sein, den Bewegungsablauf derart zu optimieren, dass der erste Gegenstand auch bei Störungen und/oder bei Fehlern in Modelldarstellungen der Gegenstände richtig in die Zielpose gebraucht wird.

Das Dokument "An obj ective-based framework for motion plan- ning under sensing and control uncertainties " von S. M. La- valle et al . (International journal of robotics research, 1. Januar 1998) betrifft das Optimieren von Roboterbewegungsab läufen. Dazu werden unter Berücksichtigung einer Unsicherheit in der Pose von zu bewegenden Gegenständen Zukunftszustände simuliert und ausgewertet.

Das Dokument "Parts assembly planning under uncertainty with simulation-aided physical reasoning" von S. Kim et al . (2017

IEEE Conference on robotics and automation, 29. Mai 2017) be schreibt ein Optimieren eines Zusammenführens von Gegenstän den mit einem Roboter.

Das Dokument "Collision-probability constrained PRM for a ma- nipulator with base pose uncertainty" von Y. Huang et al . (Intelligent robots and Systems, 2009) befasst sich mit der Bewegungsplanung eines Roboters, der auf einer mobilen Platt form angeordnet ist.

Vor diesem Hintergrund besteht eine Aufgabe der vorliegenden Erfindung darin, ein verbessertes Bestimmen eines optimierten Bewegungsablaufs einer Robotereinrichtung bereitzustellen.

Gemäß einem ersten Aspekt wird ein Verfahren zum Bestimmen eines optimierten Bewegungsablaufs einer Robotereinrichtung zur Bewegung eines ersten Gegenstandes derart, dass der erste Gegenstand unabhängig von einer Unsicherheit einer Pose des ersten Gegenstands in Bezug auf einen zweiten Gegenstand und/oder unabhängig von einer Unsicherheit einer Pose der Ro botereinrichtung in eine Zielpose gebracht wird, vorgeschla gen. Das Verfahren umfasst:

Simulieren von Bewegungsabschnitten der Robotereinrich tung unter Berücksichtigung der Unsicherheit der Pose des ersten Gegenstands und/oder der Unsicherheit der Pose der Ro botereinrichtung; und

Bestimmen eines optimierten Bewegungsablaufs der Roboter einrichtung unter Berücksichtigung der simulierten Bewegungs abschnitte und von Randbedingungen, die zumindest eine Start pose und die Zielpose des ersten Gegenstands angeben.

Die Robotereinrichtung ist zum Beispiel ein Roboter, ein Ro boterarm oder eine Einrichtung, die einen vorgegebenen Bewe gungsablauf und/oder Bewegungsabschnitte durchführen kann.

Die Robotereinrichtung kann in einem automatisierten Herstel lungsverfahren, insbesondere in einer industriellen Anlage, oder in einem Verpackungsverfahren Einsatz finden.

Die Robotereinrichtung ist insbesondere geeignet, den ersten Gegenstand in Bezug auf den zweiten Gegenstand in die Zielpo se zu bringen. Hierbei können der erste und der zweite Gegen stand, im Folgenden zusammen auch als „Gegenstände" bezeich net, zum Beispiel zusammengeführt werden. Der erste Gegen stand kann durch die Robotereinrichtung in den zweiten Gegen- stand hineingesteckt werden oder auf den zweiten Gegenstand gelegt werden, um die Gegenstände anschließend aneinander zu befestigen. Die Endpose des ersten Gegenstands in Bezug auf die Pose des zweiten Gegenstands kann als Zielpose bezeichnet werden .

Unter der „Pose" eines Objekts wird insbesondere eine Positi on und/oder eine Orientierung dieses Objekts verstanden. Die Begriffe „Zielpose" und „Startpose" können analog definiert werden .

Unter einem Bewegungsablauf kann eine Abfolge von Einzelbewe gungen der Robotereinrichtung verstanden werden. Der Bewe gungsablauf kann eine Vielzahl an Bewegungsabschnitten umfas sen. Insbesondere sind mehrere Bewegungsabschnitte derart an- einandersetzbar, dass sie einen Bewegungsablauf bilden. Der Bewegungsablauf und/oder der Bewegungsabschnitt kann zum Bei spiel angeben, in welche Richtung entlang eines Koordinaten systems die Robotereinrichtung den ersten Gegenstand bewegen soll, mit welcher Geschwindigkeit die Robotereinrichtung den ersten Gegenstand bewegen soll und/oder welche Kraft die Ro botereinrichtung dabei aufbringen soll, insbesondere im Rah men einer Impedanzregelung.

Bei der Simulation der Bewegungsabschnitte handelt es sich insbesondere um physikalische Simulationen. Zum Simulieren der Bewegungsabschnitte kann ein Simulator eingesetzt werden. Bei dem Simulator handelt es sich zum Beispiel um einen Fest körpersimulator, der das dynamische System (erster Gegenstand und Robotereinrichtung) abbildet. Insbesondere kann jeder Be wegungsabschnitt durch eine Bewegungsabschnittstartpose und eine Bewegungsabschnittzielpose beschrieben werden. Im Rahmen der Simulation können, ausgehend von einer Anfangspose, zu fällige Bewegungsabschnitte bestimmt werden. Mehrere der si mulierten Bewegungsabschnitte können zusammenhängend einen Bewegungsablauf bilden. Der Simulator ist insbesondere geeignet, komplexe Bewegungs abschnitte zu simulieren. Tatsächlich kann der Bewegungsab lauf Bewegungen in bis zu sechs Freiheitsgraden (drei rotato rische und drei translatorische) umfassen. Zudem kann der Kontakt der Robotereinrichtung mit dem ersten Gegenstand und/oder der Kontakt zwischen den beiden Gegenständen eine gewisse Nichtlinearität bewirken, welche schwierig zu model lieren ist. Zudem ist der Prozess, in dem der erste Gegen stand in die Zielpose geführt wird, ein dynamischer Prozess, weshalb zumindest Geschwindigkeiten in die Simulation mit einfließen können.

Die Unsicherheit der Pose des ersten Gegenstands bezeichnet insbesondere eine Unbestimmtheit darüber, wo der erste Gegen stand genau vorliegt. Die Unsicherheit der Pose des ersten Gegenstands ist insbesondere in Bezug auf den zweiten Gegen stand definiert, weshalb auch Unsicherheiten der Pose des zweiten Gegenstandes durch die Unsicherheit der Pose des ers ten Gegenstandes abgedeckt werden können. Die Unsicherheit der Pose des ersten Gegenstands kann dadurch auftreten, dass der erste und/oder zweite Gegenstand eine gewisse Elastizität und/oder einen bestimmten Reibungskoeffizienten aufweist, die nicht durch Modelldarstellungen des ersten und/oder zweiten Gegenstands berücksichtigt werden. Die Unsicherheit der Pose des ersten Gegenstands ist insbesondere nicht immer konstant und kann von Gegenstand zu Gegenstand unterschiedlich sein.

Die Unsicherheit der Robotereinrichtung beschreibt insbeson dere eine Ungewissheit darüber, wo sich die Robotereinrich tung genau befindet. Die Ungewissheit der Robotereinrichtung kann auch eine Abbildung für ungenaue Modelldarstellungen der Robotereinrichtung sein. Ferner kann die Ungewissheit der Ro botereinrichtung eine Störung einer Bewegung der Roboterein richtung repräsentieren.

In dem beschriebenen Verfahren können mehrere Bewegungsab schnitte, insbesondere zwanzig Bewegungsabschnitte oder noch mehr, simuliert werden. Bei jeder dieser Simulationen können die Unsicherheit der Pose des ersten Gegenstands und/oder die Unsicherheit der Pose der Robotereinrichtung berücksichtigt werden. Im Folgenden werden die Unsicherheit der Pose des ersten Gegenstandes und die der Robotereinrichtung zusammen als „Unsicherheit der Pose" bezeichnet.

Insbesondere wird bei jeder Simulation eines Bewegungsab schnitts ein unterschiedlicher Wert für die Unsicherheit der Pose berücksichtigt. Es können zudem Eigenschaften der Robo tereinrichtung, auch Robotereinrichtungseigenschaften, und/oder Gegenstandseigenschaften des ersten und/oder zweiten Gegenstands, welche im Folgenden noch näher beschrieben wer den, berücksichtigt werden.

Durch das Simulieren der Bewegungsabschnitte wird insbesonde re eine Vielzahl von simulierten Bewegungsabschnitten erhal ten. Die einzelnen simulierten Bewegungsabschnitte werden an schließend zum Beispiel im Hinblick auf deren Qualität ausge wertet. Sie können auch zusammengesetzt werden, um einen op timierten Bewegungsablauf zu bilden.

Die Auswertung der simulierten Bewegungsabschnitte führt ins besondere dazu, dass ein optimierter Bewegungsablauf der Ro botereinrichtung bestimmt wird. Zur Bestimmung des optimier ten Bewegungsablaufs können die Startpose und die Zielpose des ersten Gegenstands als Randbedingungen berücksichtigt werden. Die Startpose ist dabei insbesondere eine Pose des ersten Gegenstands, bevor die Robotereinrichtung den ersten Gegenstand gemäß einem Bewegungsablauf bewegt und in die Zielpose führt.

Der optimierte Bewegungsablauf ist ein Bewegungsablauf, der der Robotereinrichtung insbesondere ermöglicht, den ersten Gegenstand in die Zielpose zu führen, selbst wenn eine Unsi cherheit der Pose des ersten Gegenstands und/oder der Robote reinrichtung vorliegt. Das heißt, dass zwei unterschiedliche erste Gegenstände, die mit der Robotereinrichtung entlang desselben optimierten Bewegungsablaufs bewegt werden, beide in die Zielpose geführt werden können, auch wenn sie mit un terschiedlichen Unsicherheiten behaftet sind.

Die Bestimmung eines optimierten Bewegungsablaufs ermöglicht insbesondere ein verlässliches Bewegen des ersten Gegenstands in die Zielpose. Es wird insbesondere ein optimierter Bewe gungsablauf bereitgestellt, der den ersten Gegenstand - trotz Modellfehlern und anderen variablen Störungen - in die ge wünschte Zielpose führt. Es ist dabei beispielsweise nicht notwendig, in aufwendiger Weise zu probieren, die Modellfeh ler so weit wie möglich zu reduzieren, und/oder Störungen so weit wie möglich auszuschließen.

Das Bestimmen des optimierten Bewegungsablaufs kann auf fle xible Weise erfolgen, weil es automatisch durchgeführt wird. Es kann insbesondere auch bereits für eine Bewegung, die nur ein einziges Mal oder nur wenige Male mit der Robotereinrich tung durchgeführt werden soll, ein optimierter Bewegungsab lauf bestimmt werden, weil die Bestimmung des optimierten Be wegungsablaufs mit geringen Aufwand erfolgen kann. Dadurch, dass die Bestimmung des optimierten Bewegungsablaufs unter Berücksichtigung der Unsicherheit der Pose des ersten Gegen stands und/oder der Unsicherheit der Pose der Robotereinrich tung erfolgt, kann das beschriebene Verfahren besonders viel seitig eingesetzt werden. Bei dem Bestimmen des optimierten Bewegungsablaufs kann auch von einem Planen, insbesondere von einem kinodynamischen Planen des optimierten Bewegungsablaufs gesprochen werden.

In Ausführungsformen umfasst das Verfahren ferner ein Durch führen des optimierten Bewegungsablaufs mit der Roboterein richtung derart, dass der erste Gegenstand in Bezug auf den zweiten Gegenstand in die Zielpose geführt wird.

Gemäß einer Ausführungsform weist die Robotereinrichtung eine Kompensationseigenschaft auf, welche einer partiellen Kompen sation der Robotereinrichtung für die Unsicherheit der Pose des ersten Gegenstands und/oder für die Unsicherheit der Pose der Robotereinrichtung dient; und wobei

das Bestimmen des optimierten Bewegungsablaufs ein Be stimmen einer optimierten Kompensationseigenschaft der Robo tereinrichtung umfasst, oder das Simulieren der Bewegungsab schnitte ferner unter Berücksichtigung einer vorbestimmten Kompensationseigenschaft der Robotereinrichtung erfolgt.

Die Kompensationseigenschaft der Robotereinrichtung, die der partiellen Kompensation der Robotereinrichtung für die Unsi cherheit der Pose dient, wird im Folgenden auch als „Nachgie bigkeit" bezeichnet. Es handelt sich dabei zum Beispiel um ein Federverhalten oder um ein Dämpfverhalten der Roboterein richtung. Zudem kann die Kompensation der Robotereinrichtung für die Unsicherheit der Pose auch anhand einer Nachgiebig keitsregelung, insbesondere anhand einer Impedanzkontrolle, der Robotereinrichtung erfolgen.

Die Nachgiebigkeit kann beim Bestimmen des optimierten Bewe gungsablaufs bestimmt, insbesondere berechnet, werden. Alter nativ kann die Nachgiebigkeit bereits ein Eingabewert bei der Simulation der Bewegungsabschnitte sein, sodass das Simulie ren der Bewegungsabschnitte unter Berücksichtigung einer vor bestimmten Nachgiebigkeit der Robotereinrichtung erfolgt.

Die Nachgiebigkeit der Robotereinrichtung dient insbesondere dazu, zu verhindern, dass die Robotereinrichtung sich selbst, den ersten Gegenstand und/oder den zweiten Gegenstand zer stört, weil sie wegen einer der Unsicherheiten daneben greift .

Gemäß einer weiteren Ausführungsform ist die Unsicherheit der Pose des ersten Gegenstands und/oder der Robotereinrichtung ein gewählter Wert einer statistischen Unsicherheitsvertei lung .

Insbesondere werden die Unsicherheit der Pose des ersten Ge genstands anhand einer ersten Unsicherheitsverteilung und die Unsicherheit der Pose der Robotereinrichtung anhand einer weiteren Unsicherheitsverteilung modelliert. Die Unsicherheit kann insbesondere unterschiedliche Werte annehmen. Eine Ver teilung dieser Werte kann in der statistischen Unsicherheits verteilung wiedergegeben sein. Die Unsicherheit der Pose des ersten Gegenstands und/oder der Robotereinrichtung, dessen Wert bei dem Simulieren der Bewegungsabschnitte verwendet wird, kann aus dieser Unsicherheitsverteilung gewählt sein.

Gemäß einer weiteren Ausführungsform wird die Unsicherheit der Pose des ersten Gegenstands und/oder der Robotereinrich tung stichprobenartig aus der statistischen Unsicherheitsver teilung gewählt.

Das heißt insbesondere, dass die Unsicherheit der Pose des ersten Gegenstands und/oder der Robotereinrichtung zufallsba siert aus der Unsicherheitsverteilung gewählt wird. Die stichprobenartige Auswahl dient insbesondere der Abbildung der Unsicherheitsdichtefunktion.

Gemäß einer weiteren Ausführungsform erfolgt das Simulieren der mehreren Bewegungsabschnitte unter Berücksichtigung un terschiedlicher Werte der Unsicherheit der Pose des ersten Gegenstands und/oder der Robotereinrichtung.

Zum Beispiel wird für mehrere Simulationen eines selben Bewe gungsabschnitts ein unterschiedlicher Unsicherheitswert ver wendet. Diese unterschiedlichen Unsicherheitswerte können der statistischen Unsicherheitsverteilung entnommen werden.

Gemäß einer weiteren Ausführungsform werden bei dem Simulie ren der Bewegungsabschnitte zufällig mehrere Bewegungsab schnitte bestimmt, die alle von einer selben Bewegungsab schnittstartpose der Robotereinrichtung ausgehen. Dabei um fasst das Verfahren ferner:

zufälliges Auswählen einer Bewegungsabschnittzielpose ei ner der mehreren simulierten Bewegungsabschnitte und Festle- gen dieser ausgewählten Bewegungsabschnittzielpose als eine neue Bewegungsabschnittstartpose ;

Wiederholen des Simulierens der Bewegungsabschnitte, des zufälligen Auswählens einer Bewegungsabschnittzielpose und des Festlegens der ausgewählten Bewegungsabschnittzielpose als eine neue Bewegungsabschnittstartpose, bis eine Bewe gungsabschnittzielpose einer der mehreren simulierten Bewe gungsabschnitten in einem vorbestimmten Zielbereich liegt.

Beim Simulieren der Bewegungsabschnitte wird insbesondere zu nächst von der Bewegungsabschnittstartpose ausgegangen. Bei der Bewegungsabschnittstartpose kann es sich um die Startpose des ersten Gegenstands handeln. Von dieser Bewegungsab schnittstartpose können mehrere Bewegungsabschnitte simuliert werden. Diese Bewegungsabschnitte sind insbesondere zufällige Bewegungsabschnitte, die alle die Bewegungsabschnittstartpose als Anfangspose haben. Die einzelnen simulieren Bewegungsab schnitte können jedoch unterschiedliche Bewegungsabschnitt- zielposen haben.

Im Rahmen des Simulierens wird insbesondere aus diesen mehre ren Bewegungsabschnittzielposen eine einzige Bewegungsab schnittzielpose zufällig ausgewählt. Die ausgewählte Bewe gungsabschnittzielpose wird als ein neuer Startpunkt, also als eine neue Bewegungsabschnittstartpose, definiert. Von dieser neuen Bewegungsabschnittstartpose können erneut mehre re Bewegungsabschnitte zufällig simuliert werden, welche wie derum unterschiedliche (neue) Bewegungsabschnittzielposen ha ben können. Es kann erneut eine zufällige Auswahl einer der (neuen) Bewegungsabschnittzielposen erfolgen, um diese als weitere Bewegungsabschnittstartpose zu verwenden.

Die Schritte der Simulation der Bewegungsabschnitte, der zu fälligen Auswahl einer Bewegungsabschnittzielpose und des Festlegens der ausgewählten Bewegungsabschnittzielpose als neue Bewegungsabschnittstartpose können iterativ wiederholt werden. Insbesondere werden sie wiederholt, bis erkannt wird, dass sich eine Bewegungsabschnittzielpose eines simulierten Bewegungsabschnitts in dem Zielbereich befindet. Der Zielbe reich umfasst insbesondere die Zielpose.

Liegt eine Bewegungsabschnittzielpose in dem Zielbereich, kann mit dem Simulieren aufgehört werden, und die einzelnen Bewegungsabschnitte, die zu dem Zielbereich geführt haben, können aneinander gesetzt werden, um so den optimierten Bewe gungsablauf zu erhalten.

Gemäß einer weiteren Ausführungsform erfolgt das Bestimmen des optimierten Bewegungsablaufs der Robotereinrichtung durch ein Aneinandersetzen von mindestens zwei der simulierten Be wegungsabschnitte .

Gemäß einer weiteren Ausführungsform wird beim Simulieren der Bewegungsabschnitte zumindest eine Robotereinrichtungseigen schaft, eine erste Gegenstandseigenschaft des ersten Gegen stands und/oder eine zweite Gegenstandseigenschaft des zwei ten Gegenstands berücksichtigt.

Gemäß einer weiteren Ausführungsform umfasst die Roboterein richtungseigenschaft zumindest:

eine durch die Robotereinrichtung anwendbare maximale Kraft ;

eine Modelldarstellung der Robotereinrichtung; und/oder mögliche Bewegungen der Robotereinrichtung.

Bei der durch die Robotereinrichtung anwendbaren maximalen Kraft handelt es sich insbesondere um eine Kraftgrenze der Robotereinrichtung entlang einer bestimmten Richtung. Die Mo delldarstellung der Robotereinrichtung kann ein CAD-Modell (Computer Aided Design) sein und zum Beispiel angeben, wie groß die Robotereinrichtung ist. Die möglichen Bewegungen der Robotereinrichtung bezeichnen zudem insbesondere diejenigen Bewegungen, die die Robotereinrichtung durchführen kann. Gemäß einer weiteren Ausführungsform umfasst die erste und/oder zweite Gegenstandseigenschaft (im Folgenden auch zu sammen als „Gegenstandseigenschaften" bezeichnet) zumindest: einen Reibungskoeffizienten des ersten und/oder des zwei ten Gegenstands;

eine Größe und/oder Form des ersten und/oder des zweiten Gegenstands ;

eine Modelldarstellung des ersten und/oder des zweiten Gegenstands ;

ein Gewicht des ersten und/oder des zweiten Gegenstands; und/oder

eine Materialeigenschaft des ersten und/oder des zweiten Gegenstands .

Die Modelldarstellung des ersten und/oder des zweiten Gegen stands kann ein CAD-Modell sein. Dadurch, dass das Bestimmen des optimierten Bewegungsablaufs unter Berücksichtigung der Robotereinrichtungseigenschaft und/oder der Gegenstandeigen schaften erfolgt, kann der optimierte Bewegungsablauf anwen dungsspezifisch bestimmt werden.

Gemäß einer weiteren Ausführungsform umfasst das Bestimmen des optimierten Bewegungsablaufs:

Berechnen einer Kostenfunktion für jeden simulierten Be wegungsabschnitt; und

Bestimmen des optimierten Bewegungsablaufs in Abhängig keit der berechneten Kostenfunktionen.

Die Kostenfunktion ist insbesondere eine Angabe dafür, wie geeignet ein simulierter Bewegungsabschnitt ist.

Gemäß einer Ausführungsform umfasst das Verfahren ferner:

Bestimmen von mehreren Bewegungsabläufen anhand der simu lierten Bewegungsabschnitte;

Berechnen einer Gesamtkostenfunktion für jeden Bewegungs ablauf anhand der Kostenfunktionen der Bewegungsabschnitte der jeweiligen Bewegungsabläufe; und Auswahlen des Bewegungsablaufs mit der minimalen Gesamt kostenfunktion aus den mehreren Bewegungsabläufen als den op timierten Bewegungsablauf.

Ein aus mehreren Bewegungsabschnitten zusammengestellter Be wegungsablauf kann eine Gesamtkostenfunktion haben, die eine Summe der Kostenfunktionen der einzelnen Bewegungsabschnitte des Bewegungsablaufs ist. Der optimierte Bewegungsablauf kann der Bewegungsablauf sein, der nach mehreren Durchläufen der jenige ist, dessen Gesamtkostenfunktion minimal ist.

Gemäß einer Ausführungsform umfasst das Verfahren ferner:

Bestimmen eines ersten Bewegungsablaufs anhand der simu lierten Bewegungsabschnitte;

Bestimmen eines Bewegungsablaufteils , der zumindest zwei Bewegungsabschnitte umfasst;

Berechnen der Kostenfunktion des Bewegungsablaufteils ; und

Weiterverfolgen des Bewegungsablaufteils , falls die Kos tenfunktion des Bewegungsablaufteils geringer als eine Kos tenfunktion des ersten Bewegungsablaufs ist.

Die Bestimmung eines Bewegungsablaufs erfolgt insbesondere schrittweise. Bei jedem Schritt kann ein Bewegungsabschnitt an den bestehenden Bewegungsablaufteil angehängt werden und überprüft werden, ob die Kostenfunktion des entstandenen Be wegungsablaufteils einen vorbestimmten Wert überscheitet. Bei dem vorbestimmten Wert kann es sich um die Kostenfunktion ei nes zuvor bestimmten Bewegungsablaufs, nämlich des ersten Be wegungsablaufs, handeln. Falls die Kostenfunktion des Bewe gungsablaufteils bereits größer als die Kostenfunktion des ersten Bewegungsablaufs ist, wird dieser Bewegungsablaufteil insbesondere nicht weiterverfolgt. Das heißt zum Beispiel, dass keine weiteren Bewegungsabschnitte angehängt werden, um einen vollständigen Bewegungsablauf zu erhalten. Es kann ins besondere sichergestellt werden, dass nur Bewegungsablauftei - le weiterverfolgt werden, die im Hinblick auf die Kostenfunk tion gut sind. Dadurch kann der Rechenaufwand deutlich redu- ziert werden. Insbesondere kann eine Lösung für den optimier ten Bewegungsablauf mit wenig Rechenaufwand gefunden werden.

Gemäß einer weiteren Ausführungsform enthält die Kostenfunk tion eine Angabe über:

eine Qualität des simulierten Bewegungsabschnitts;

eine Länge einer dem simulierten Bewegungsabschnitt ent sprechenden Bahn;

eine Dauer eines Durchführens des simulierten Bewegungs abschnitts ;

einen Energieverbrauch des Durchführens des simulierten Bewegungsabschnitts; und/oder

eine beim Durchführen des simulierten Bewegungsabschnitts auftretende Kraft auf den ersten und/oder zweiten Gegenstand.

Die Bahn, auch Bewegungsbahn, ist insbesondere eine Strecke, entlang der sich der erste Gegenstand bewegt, wenn die Robo tereinrichtung den simulierten Bewegungsabschnitt durchführt.

Gemäß einer weiteren Ausführungsform repräsentiert die Unsi cherheit der Pose des ersten Gegenstands eine Unsicherheit eines verwendeten Modells für den ersten und/oder zweiten Ge genstand und/oder eine Fertigungstoleranz des ersten und/oder zweiten Gegenstands.

Bei der Unsicherheit des verwendeten Modells kann es sich zum Beispiel um einen Fehler in der Modelldarstellung des ersten Gegenstands und/oder des zweiten Gegenstands handeln. Solch ein Fehler kann beispielsweise sein, dass das Modell die Elastizität des ersten und/oder zweiten Gegenstands nicht be rücksichtigt .

Gemäß einem zweiten Aspekt wird ein Computerprogrammprodukt vorgeschlagen, welches auf einer programmgesteuerten Einrich tung die Durchführung des Verfahrens gemäß dem ersten Aspekt oder gemäß einer Ausführungsform des ersten Aspekts veran lasst . Ein Computerprogrammprodukt, wie z.B. ein Computerprogramm- Mittel, kann beispielsweise als Speichermedium, wie z.B.

Speicherkarte, USB-Stick, CD-ROM, DVD, oder auch in Form ei ner herunterladbaren Datei von einem Server in einem Netzwerk bereitgestellt oder geliefert werden. Dies kann zum Beispiel in einem drahtlosen Kommunikationsnetzwerk durch die Übertra gung einer entsprechenden Datei mit dem Computerprogrammpro dukt oder dem Computerprogramm-Mittel erfolgen.

Gemäß einem dritten Aspekt wird eine Vorrichtung zum Bestim men eines optimierten Bewegungsablaufs einer Robotereinrich tung zur Bewegung eines ersten Gegenstandes derart, dass der erste Gegenstand unabhängig von einer Unsicherheit einer Pose des ersten Gegenstands in Bezug auf einen zweiten Gegenstand und/oder unabhängig von einer Unsicherheit einer Pose der Ro botereinrichtung in eine Zielpose gebracht wird, vorgeschla gen. Die Vorrichtung umfasst:

eine Simulationseinheit zum Simulieren von Bewegungsab schnitten der Robotereinrichtung unter Berücksichtigung der Unsicherheit der Pose des ersten Gegenstands und/oder der Un sicherheit der Pose der Robotereinrichtung; und

eine Bestimmungseinheit zum Bestimmen des optimierten Be wegungsablaufs der Robotereinrichtung unter Berücksichtigung der simulierten Bewegungsabschnitte und von Randbedingungen, die zumindest eine Startpose und die Zielpose des ersten Ge genstands angeben.

Die jeweilige Einheit, zum Beispiel die Simulationseinheit oder die Bestimmungseinheit, kann hardwaretechnisch und/oder auch softwaretechnisch implementiert sein. Bei einer hard waretechnischen Implementierung kann die jeweilige Einheit als Vorrichtung oder als Teil einer Vorrichtung, zum Beispiel als Computer oder als Mikroprozessor oder als Steuerrechner eines Fahrzeuges ausgebildet sein. Bei einer softwaretechni schen Implementierung kann die jeweilige Einheit als Compu terprogrammprodukt, als eine Funktion, als eine Routine, als Teil eines Programmcodes oder als ausführbares Objekt ausge bildet sein. Gemäß einer Ausführungsform ist die Vorrichtung geeignet, das Verfahren gemäß dem ersten Aspekt oder gemäß einer Ausfüh rungsform des ersten Aspekts durchzuführen.

Die für das vorgeschlagene Verfahren beschriebenen Ausfüh rungsformen und Merkmale gelten für die vorgeschlagene Vor richtung entsprechend.

Weitere mögliche Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmale oder Ausführungsformen. Dabei wird der Fachmann auch Einzelaspekte als Verbesserungen oder Ergänzungen zu der je weiligen Grundform der Erfindung hinzufügen.

Weitere vorteilhafte Ausgestaltungen und Aspekte der Erfin dung sind Gegenstand der Unteransprüche sowie der im Folgen den beschriebenen Ausführungsbeispiele der Erfindung. Im Wei teren wird die Erfindung anhand von bevorzugten Ausführungs formen unter Bezugnahme auf die beigelegten Figuren näher er läutert .

Fig. 1 zeigt ein Beispiel einer Herstellungsvorrichtung, in der ein erster Gegenstand in einer Startpose ist;

Fig. 2 zeigt ein Beispiel der Herstellungsvorrichtung, in der der erste Gegenstand in einer Zielpose ist;

Fig. 3 zeigt ein Verfahren zum Bestimmen eines optimierten

Bewegungsablaufs einer Robotereinrichtung gemäß einer ersten Ausführungsform;

Fig. 4 zeigt ein Verfahren zum Bestimmen eines optimierten

Bewegungsablaufs einer Robotereinrichtung gemäß einer zweiten Ausführungsform; Fig. 5 zeigt ein Beispiel eines Bewegens eines ersten Gegen stands entlang eines optimierten Bewegungsablaufs; und

Fig. 6 zeigt eine Vorrichtung zum Bestimmen eines optimierten

Bewegungsablaufs einer Robotereinrichtung gemäß einer Ausführungsform .

In den Figuren sind gleiche oder funktionsgleiche Elemente mit denselben Bezugszeichen versehen worden, sofern nichts anderes angegeben ist.

Die Fig. 1 zeigt ein Beispiel einer Herstellungsvorrichtung 10. Die Herstellungsvorrichtung 10 ist Teil eines automati sierten industriellen Systems. Sie umfasst eine Roboterein richtung 3, einen ersten Gegenstand 1 und einen zweiten Ge genstand 2.

Bei dem ersten Gegenstand 1 handelt es sich um ein zylinder förmiges Werkstück aus Kunststoff. Die Größe des ersten Ge genstands 1 ist derart gewählt, dass der erste Gegenstand 1 in eine Bohröffnung 9 des zweiten Gegenstands 2 hineinge steckt werden kann. Bei dem zweiten Gegenstand 2 handelt es sich um ein weiteres Kunststoffteil .

Die Robotereinrichtung 3 ist ein Roboter, der zum Zusammen führen von Bauteilen dient. Die Robotereinrichtung 3 ist da bei zur Durchführung unterschiedlicher Bewegungsabläufe pro grammierbar. Sie kann zum Beispiel den ersten Gegenstand 1 in die Bohröffnung 9 des zweiten Gegenstands 2 führen. Hierzu umfasst die Robotereinrichtung 3 einen Roboterarm 11, der den ersten Gegenstand 1 greifen kann.

In der Fig. 1 ist dargestellt, wie der Roboterarm 11 den ers ten Gegenstand 1 in einer Startpose SP hält. Anhand eines ge eigneten programmierten Bewegungsablaufs führt die Roboter einrichtung 3 den ersten Gegenstand 1 in die Bohröffnung 9 des zweiten Gegenstands 2, sodass der erste Gegenstand 1 eine Zielpose ZP erreicht. Dieses ist in der Fig. 2 dargestellt. Die Pose des ersten Gegenstands 1 bezeichnet eine Kombination aus einer Position und einer Orientierung des ersten Gegen stands und wird relativ zu einer Pose (Position und Orientie rung) des zweiten Gegenstands 2 definiert.

Die Pose des ersten Gegenstands 1 in Bezug auf den zweiten Gegenstand 2 weist eine gewisse Unsicherheit auf. Diese Unsi cherheit tritt aufgrund der physikalischen Eigenschaften des ersten und zweiten Gegenstands 1, 2 auf, welche schwer ein schätzbar und modellierbar sind. Diese physikalischen Eigen schaften können zum Beispiel die Elastizität oder der Rei bungskoeffizient des Materials, das den ersten und/oder zwei ten Gegenstand 1, 2 bildet, sein.

Darüber hinaus weist auch die Pose der Robotereinrichtung 3 eine gewisse Unsicherheit auf.

Der Bewegungsablauf, der der Robotereinrichtung 3 vorgegeben wird, führt den ersten Gegenstand 1 unabhängig von der Unsi cherheit der Pose des ersten Gegenstands 1 und unabhängig von der Unsicherheit der Pose der Robotereinrichtung 3, zuverläs sig in seine Zielpose ZP. Solch ein Bewegungsablauf wird ins besondere „optimierter Bewegungsablauf" genannt.

Die Robotereinrichtung 3 weist eine Kompensationseigenschaft (im Folgenden auch „Nachgiebigkeit") auf, die zu einer zumin dest partiellen Kompensation der Unsicherheit der Pose des ersten Gegenstands 1 und/oder der Unsicherheit der Pose der Robotereinrichtung 3 dient. Hierzu weist die Robotereinrich tung 3 ein nicht dargestelltes Federsystem auf.

Der optimierte Bewegungsablauf kann anhand eines Verfahrens zum Bestimmen des optimierten Bewegungsablaufs der Roboter einrichtung 3 bestimmt werden. Die Fig. 3 zeigt ein Beispiel eines solchen Verfahrens gemäß einer ersten Ausführungsform. In einem (fakultativen) Vorbereitungsschritt SO werden die Robotereinrichtung 3 und die beiden Gegenstände 1, 2 bereit gestellt .

In einem Schritt S1 werden Bewegungsabschnitte der Roboter einrichtung 3 simuliert. Ein Bewegungsabschnitt entspricht einer Abfolge an Bewegungen der Robotereinrichtung 3. Zum Si mulieren der Bewegungsabschnitte wird ein Festkörpersimulator eingesetzt. Insgesamt werden mindestens dreißig Bewegungsab schnitte simuliert. Die Simulationen der Bewegungsabschnitte erfolgen alle unter Berücksichtigung derselben vorbestimmten Robotereinrichtungseigenschaften und derselben ersten und zweiten Gegenstandseigenschaften des ersten und des zweiten Gegenstands 1, 2. Bei den Robotereinrichtungseigenschaften handelt es sich um durch die Robotereinrichtung 3 maximal an wendbare Kräfte sowie um mögliche Bewegungen der Roboterein richtung 3. Bei den Gegenstandseigenschaften handelt es sich um eine CAD-Modelldarstellung des ersten und des zweiten Ge genstands 1, 2 und um Materialeigenschaften dieser Gegenstän de 1, 2. Diese Eigenschaften kann ein Benutzer dem Simulator vorgeben .

Bei der Simulation der unterschiedlichen Bewegungsabläufe werden unterschiedliche Werte der Unsicherheit der Pose des ersten Gegenstands 1 und der Unsicherheit der Pose der Robo tereinrichtung 3 berücksichtigt. Die Unsicherheitswerte wer den dabei zufallsbasiert aus statistischen Unsicherheitsver teilungen gewählt.

In einem Schritt S2 wird anhand der in dem Schritt S1 simu lierten Bewegungsabschnitte ein optimierter Bewegungsablauf bestimmt. Dies erfolgt unter Berücksichtigung der Startpose SP und der Zielpose ZP des ersten Gegenstands 1. In dem

Schritt S2 werde mehrere der simulierten Bewegungsabschnitte aneinander gesetzt, sodass sie einen Bewegungsablauf für die Robotereinrichtung 3 bilden, mit dem die Robotereinrichtung 3 den ersten Gegenstand 1 von der Startpose SP in die Zielpose ZP führen kann. Dieser aus mehreren simulierten Bewegungsab- schnitten zusammengesetzter Bewegungsablauf entspricht dem optimierten Bewegungsablauf. Anhand des optimierten Bewe gungsablaufs kann die Robotereinrichtung 3 den ersten Gegen stand 1 unabhängig von der Unsicherheit der Pose des ersten Gegenstands 1 und unabhängig von der Unsicherheit der Pose der Robotereinrichtung verlässlich in die Zielpose ZP führen. Die durch die Robotereinrichtung 3 anzuwendende Nachgiebig keit wird als Teil des optimierten Bewegungsablaufs bestimmt.

Die Fig. 4 zeigt ein Verfahren zum Bestimmen eines optimier ten Bewegungsablaufs einer Robotereinrichtung gemäß einer zweiten Ausführungsform. Der Schritt SO des Verfahrens gemäß der zweiten Ausführungsform entspricht dem Schritt SO, der im Hinblick auf das Verfahren gemäß der ersten Ausführungsform (Fig. 3) bereits beschrieben wurde und wird deswegen nicht nochmal beschrieben.

In den Verfahren gemäß der zweiten Ausführungsform umfasst der Schritt des Simulierens S1 die Schritte S10 - S13. In dem Schritt S10 werden zufällig mehrere Bewegungsabschnitte be stimmt, die alle von einer selben Bewegungsabschnittstartpose der Robotereinrichtung ausgehen. Bei der Bewegungsabschnitt- startpose handelt es sich bei dem ersten Durchlauf um die Startpose des ersten Gegenstands 1. Die simulierten Bewe gungsabschnitte weisen unterschiedliche Bewegungsabschnitt- zielposen auf.

In dem Schritt Sil wird ermittelt, ob eine der Bewegungsab schnittzielposen in einem Zielbereich liegt. Der Zielbereich kann die Zielpose des ersten Gegenstands 1 umfassen.

Falls keine Bewegungsabschnittzielpose in dem Zielbereich liegt, werden die Schritte S12 und S13 durchgeführt. In dem Schritt S12 wird eine Bewegungsabschnittzielpose einer der mehreren simulierten Bewegungsabschnitte zufällig ausgewählt. In dem Schritt S13 wird die in dem Schritt S12 ausgewählte Bewegungsabschnittzielpose als eine neue Bewegungsabschnitt- startpose festgelegt. Nach den Schritten S12 und S13 werden die Schritte S10 und Sil erneut durchgeführt. Das heißt, es werden erneut mehrere Bewegungsabschnitte simuliert, welche dieses Mal alle diesel be neue Bewegungsabschnittstartpose als Bewegungsabschnitt - startpose haben.

Die Schritte S10, Sil und ggf. S12 und S13 werden wiederholt, bis in dem Schritt Sil ermittelt wird, dass eine der anhand der Simulation erhaltene Bewegungsabschnittzielposen sich in dem Zielbereich befindet.

In diesem Fall wird der Schritt S2 durchgeführt. Der Schritt S2 umfasst die Schritte S20, S21, S22, S23 und S24. In dem Schritt S20 werden die simulierten Bewegungsabschnitte, die dazu geführt haben, dass eine Bewegungsabschnittzielpose in dem Zielbereich vorliegt, zusammengeführt. Diese zusammenge führten Bewegungsabschnitte bilden einen Bewegungsablauf.

In dem Schritt S21 wird eine Gesamtkostenfunktion des in dem Schritt S20 gebildeten Bewegungsablaufs berechnet. Hierzu werden Kostenfunktionen der einzelnen Bewegungsabschnitte, die den Bewegungsabschnitt bilden, berechnet und zusammenge zählt. Die Kostenfunktion ist hier eine Angabe einer Dauer des Durchführens des simulierten Bewegungsabschnitts. Es ist wünschenswert, die Dauer des Durchführens des gesamten Bewe gungsablaufs zu minimieren, weil dadurch eine Herstellungs menge bei gegebener Zeit erhöht werden kann. Die Berechnung der Gesamtkostenfunktion dient somit dazu, ein Bestimmen des optimierten Bewegungsablaufs zu vereinfachen.

In dem Schritt S22 wird ermittelt, ob die Gesamtkostenfunkti on geringer als eine zuvor berechnete Gesamtkostenfunktion eines zuvor bestimmten (ersten) Bewegungsablaufs ist. Falls dies der Fall ist, wird der in dem Schritt S20 bestimmte Be wegungsablauf behalten (Schritt S23) . Falls die Gesamtkosten funktion nicht geringer als die zuvor berechnete Gesamtkos tenfunktion des zuvor bestimmten (ersten) Bewegungsablaufs ist, wird der in dem Schritt S20 bestimmte Bewegungsablauf verworfen (Schritt S24) . Falls es sich bei dem in dem Schritt S20 bestimmten Bewegungsablauf um den ersten Bewegungsablauf handelt, wird der Schritt S23 durchgeführt.

Die Schritte S1 und S2 können beliebig oft wiederholt werden, um den in dem Schritt S20 bestimmten Bewegungsablauf zu opti mieren. Die Wiederholung ist in der Fig. 4 anhand der Pfeils W dargestellt. Nach einer vorbestimmten Anzahl an Wiederho lungen, d.h. Durchläufen, wird in einem Schritt S3 der zu letzt in dem Schritt S23 behaltene Bewegungsablauf als der optimierte Bewegungsablauf bestimmt.

In einem Schritt S4 bewegt die Robotereinrichtung 3 den ers ten Gegenstand 1 entlang des in dem Schritt S3 festgelegten optimierten Bewegungsablaufs und führt den ersten Gegenstand 1 dabei in die Zielpose ZP. Dieses Bewegen des ersten Gegen stands 1 ist in der Fig. 5 gezeigt.

Die Fig. 5 zeigt ein Beispiel eines Bewegens eines ersten Ge genstands la - ld entlang eines optimierten Bewegungsablaufs 8. In der Fig. 5 sind vier erste Gegenstände la - ld darge stellt. Diese vier ersten Gegenstände la - ld entsprechen dem in Bezug auf die Fig. 1 beschriebenen ersten Gegenstand 1.

Die ersten Gegenstände la - ld unterscheiden sich voneinander durch ihre genaue Pose in Bezug auf den zweiten Gegenstand 2, sind aber ansonsten identisch. Die Posenunterschiede entspre chen der zuvor beschriebenen Unsicherheit der Pose des ersten Gegenstands la - ld und der zuvor beschriebenen Unsicherheit der Pose der Robotereinrichtung 3.

Die Fig. 5 stellt Posen I - V der ersten Gegenstände la - ld dar, wobei die Pose I der Startpose SP der ersten Gegenstände la - ld und die Pose V der Zielpose ZP der ersten Gegenstände la - ld entspricht. Die Posen II, III und IV entsprechen Po sen der ersten Gegenstände la - ld zwischen der Startpose SP und der Zielpose ZP. In jeder der in der Fig. 5 dargestellten Posen I - V sind die ersten Gegenstände la - ld übereinander dargestellt. Es wird allerdings zu jedem Zeitpunkt nur ein einziger erster Gegen stand la - ld zum zweiten Gegenstand 2 geführt. Die ersten Gegenstände la - ld werden durch die Robotereinrichtung 3 be wegt, auch wenn diese in der Fig. 5 aus Gründen der Über sichtlichkeit nicht dargestellt ist.

In den Posen II, III und IV ist jeweils der Teil 8a - 8c des optimierte Bewegungsablaufs 8, entlang den die Roboterein richtung 3 den ersten Gegenstand 1 geführt hat, dargestellt. Der gesamte optimierte Bewegungsablauf 8 ist in der Pose V sichtbar .

Die ersten Gegenstände la - ld werden, trotz der Unterschiede in deren Posen, alle entlang des gleichen optimierten Bewe gungsablaufs 8 in die Zielpose ZP geführt. In der Zielpose ZP sind alle ersten Gegenstände la - ld richtig in der Bohröff nung 9 des zweiten Gegenstands 2 angeordnet. Der optimierte Bewegungsablauf ermöglicht somit ein zuverlässiges Führen der ersten Gegenstände la - ld in ihre Zielpose ZP, unabhängig von Unsicherheiten in den Posen der ersten Gegenstände la - ld und unabhängig von den Unsicherheiten in der Pose der Ro botereinrichtung 3.

Die Fig. 6 zeigt eine Vorrichtung 4 zum Bestimmen eines opti mierten Bewegungsablaufs einer Robotereinrichtung 3 gemäß ei ner Ausführungsform. Die Vorrichtung 4 umfasst eine Simulati onseinheit 5 und eine Bestimmungseinheit 6, welche beispiels weise über eine interne Leitung 7 miteinander verbunden sind.

Die Simulationseinheit 5 ist zum Simulieren von Bewegungsab schnitten der Robotereinrichtung 3 unter Berücksichtigung der Unsicherheit der Pose des ersten Gegenstands 1, la - ld und/oder der Unsicherheit der Pose der Robotereinrichtung 3 geeignet. Die Bestimmungseinheit 6 ist zum Bestimmen des op timierten Bewegungsablaufs der Robotereinrichtung 3 unter Be rücksichtigung der simulierten Bewegungsabschnitte und von Randbedingungen, die zumindest die Startpose SP und die Ziel- pose ZP des ersten Gegenstands 1, la - ld angeben, geeignet.

Die Vorrichtung 4 ist geeignet, das Verfahren zum Bestimmen des optimierten Bewegungsablaufs gemäß der ersten und/oder zweiten Ausführungsform (Fig. 3 und 4) durchzuführen.

Obwohl die vorliegende Erfindung anhand von Ausführungsbei spielen beschrieben wurde, ist sie vielfältig modifizierbar. Es ist zum Beispiel möglich, bereits während des Simulierens der Bewegungsabschnitte Bewegungsablaufteile zu bestimmen und eine Kostenfunktion für diese Bewegungsablaufteile zu berech nen. Insbesondere werden nur Bewegungsablaufteile weiter ver folgt, die eine Kostenfunktion haben, die geringer als eine Kostenfunktion eines zuvor bestimmten Bewegungsablaufs ist.

Es ist auch denkbar, dass der erste Gegenstand 1 durch die Robotereinrichtung 3 auf den zweiten Gegenstand 2 gelegt oder gepresst wird. Die Kostenfunktion kann auch zusätzlich oder alternativ zur Angabe der Dauer des Durchführens des simu lierten Bewegungsabschnitts zum Beispiel einen Energiever brauch des Durchführens des simulierten Bewegungsabschnitts und/oder eine auf den ersten Gegenstand auftretende Kraft an geben .




 
Previous Patent: SELF-SERVICE CHECKOUT SYSTEM

Next Patent: GROUND FAULT DETECTION