[go: up one dir, main page]

DE102016008576B4 - Robotersimulationsvorrichtung für ein menschliches Eingreifen umfassendes Robotersystem - Google Patents

Robotersimulationsvorrichtung für ein menschliches Eingreifen umfassendes Robotersystem Download PDF

Info

Publication number
DE102016008576B4
DE102016008576B4 DE102016008576.2A DE102016008576A DE102016008576B4 DE 102016008576 B4 DE102016008576 B4 DE 102016008576B4 DE 102016008576 A DE102016008576 A DE 102016008576A DE 102016008576 B4 DE102016008576 B4 DE 102016008576B4
Authority
DE
Germany
Prior art keywords
robot
activity
human
speed
movement
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.)
Active
Application number
DE102016008576.2A
Other languages
English (en)
Other versions
DE102016008576A1 (de
Inventor
Yuuki KIMOTO
Yoshiharu Nagatsuka
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Publication of DE102016008576A1 publication Critical patent/DE102016008576A1/de
Application granted granted Critical
Publication of DE102016008576B4 publication Critical patent/DE102016008576B4/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
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40202Human robot coexistence

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Robotersimulationsvorrichtung (10) für ein menschliches Eingreifen umfassendes Robotersystem, wobei ein Roboter (18) und ein Mensch (20), die sich in einem virtuellen Raum (16) befinden, eine gemeinsame Tätigkeit durchführen und sich dabei einen Arbeitsraum teilen und einen oder mehrere Artikel (22) transportieren, wobei die Robotersimulationsvorrichtung umfasst:- ein Tätigkeitsverteilungsteil (24), das basierend auf einem Gewicht des bei jeder Tätigkeit zu bearbeitenden Artikels, einer Transportstrecke des Artikels und einer bei jeder Tätigkeit erforderlichen Zeitdauer eine Mehrzahl in der gemeinsamen Tätigkeit enthaltener Tätigkeiten an den Roboter und den Menschen verteilt, wobei, wenn das Gewicht des Artikels einen vorbestimmten zulässigen Wert überschreitet, oder wenn eine minimale Transportzeit durch den Roboter, die basierend auf der Transportstrecke berechnet wird, niedriger als eine erforderliche Zeit ist, das Tätigkeitsverteilungsteil die entsprechende Tätigkeit an den Roboter verteilt;- ein Programmerzeugungsteil (26), das basierend auf einem durch das Tätigkeitsverteilungsteil erhaltenen Tätigkeitsverteilungsergebnis ein Bewegungsprogramm für den Roboter und den Menschen erzeugt, und- ein Zyklusdauerberechnungsteil (28), das eine Simulation des Bewegungsprogramms ausführt und eine Zyklusdauer des Bewegungsprogramms berechnet.

Description

  • Hintergrund der Erfindung
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine Robotersimulationsvorrichtung zum Durchführen einer Simulation eines menschliches Eingreifen umfassenden Robotersystems, die in einem Roboter-Offline-System verwendet wird.
  • Beschreibung des zugehörigen Standes der Technik
  • Bei einem neueren Fertigungssystem zur Montage von Komponenten etc. kann ein menschliches Eingreifen umfassendes Robotersystem verwendet werden, bei dem ein menschliches Eingreifen umfassender Roboter zum Durchführen einer gemeinsamen Tätigkeit mit einem Menschen betrieben wird. Bei einem solchen Robotersystem kann es erforderlich sein, vor einem Betrieb eines tatsächlichen Systems eine Simulation in einem Offline-System durchzuführen.
  • Als Dokument des zugehörigen Standes der Technik offenbart JP 2010-211726 A ein Simulationsverfahren, das die Schritte umfasst: Festlegen einer Bewegungseigenschaft, die einen Bewegungsbereich und eine Bewegungsgeschwindigkeit jedes Körperteils eines Bedieners umfasst, Berechnen einer Zeitdauer, die für einen Fertigungsbetrieb erforderlich ist, der eine Zusammenarbeit zwischen dem Bediener und einem Roboter umfasst, durch Simulieren der Bewegung für jede Kombination zuweisbarer Positionen des Bedieners und zuweisbarer Positionen des Roboters, und Bestimmen der Kombination der Bedienerposition und der Roboterposition, wobei die Kombination die kürzeste erforderliche Zeitdauer unter den berechneten erforderlichen Zeitdauern aufweist.
  • Die Technik von JP 2010-211726 A soll es ermöglichen, eine Simulation des Menschen durch Festlegen eines Bewegungsbereichs und einer Bewegungsgeschwindigkeit des Menschen auszuführen und eine Zyklusdauer durch Ändern der Position des Menschen und des Roboters zu optimieren. Bei dem Verfahren gemäß dem Stand der Technik ist es jedoch erforderlich, vor dem Ausführen der Simulation Inhalte der Tätigkeiten und die Bewegungsgeschwindigkeiten des Roboters und des Menschen zu bestimmen. Ferner wird beim Stand der Technik die Zyklusdauer durch Ändern der Position des Roboters und des Menschen optimiert, wohingegen ein Bewegungsprogramm nicht geändert wird, um die Zyklusdauer zu optimieren.
  • Das Dokument JP 2011 - 227 773 A offenbart ein Produktionssystem, bei welchem einzelne Tätigkeiten sowohl von einem Roboter als auch von einem Menschen ausgeführt werden können. Das Produktionssystem umfasst hierbei eine Robotersteuerung, die dem Roboter die jeweils auszuführenden Tätigkeiten zuweist.
  • Das Dokument DE 2010 005 708 A1 betrifft ein Produktionssystem, bei dem ein Roboter und ein Mensch zusammenwirken. Der Roboter und der Mensch teilen sich hierbei einen gemeinsamen Arbeitstisch. Eine Robotersteuerung ist hierbei dazu eingerichtet, die Bewegungsgeschwindigkeit des Roboters in einem gemeinsamen Arbeitsbereich des Roboters und des Menschen zu begrenzen.
  • Weitere Steuerungen für Roboter, die mit Menschen zusammenwirken, sind aus den Dokumenten DE 10 2012 015 975 A1 , US 2011 / 0 179 627 A1 und US 2014 / 0 135 984 A1 bekannt.
  • Zusammenfassung der Erfindung
  • Die Erfindung ist durch den Hauptanspruch sowie den nebengeordneten Anspruch 4 definiert.
  • Ein Ziel der vorliegenden Erfindung besteht darin, eine Robotersimulationsvorrichtung bereitzustellen, durch die sich eine Berechnung einer Zyklusdauer und eine Simulation eines menschliches Eingreifen umfassenden Robotersystems mit geringerem Aufwand leicht durch einen Bediener durchführen lassen.
  • Zum Erreichen des vorstehenden Ziels stellt die vorliegende Erfindung eine Robotersimulationsvorrichtung für ein menschliches Eingreifen umfassendes Robotersystem bereit, wobei ein Roboter und ein Mensch, die sich in einem virtuellen Raum befinden, eine gemeinsame Tätigkeit durchführen und sich dabei einen Arbeitsraum teilen und einen oder mehrere Artikel transportieren, wobei die Robotersimulationsvorrichtung umfasst: ein Tätigkeitsverteilungsteil, das basierend auf einem Gewicht des bei jeder Tätigkeit zu bearbeitenden Artikels, einer Transportstrecke des Artikels und einer bei jeder Tätigkeit erforderlichen Zeitdauer eine Mehrzahl in der gemeinsamen Tätigkeit enthaltener Tätigkeiten an den Roboter und den Menschen verteilt, ein Programmerzeugungsteil, das basierend auf einem durch das Tätigkeitsverteilungsteil erhaltenen Tätigkeitsverteilungsergebnis ein Bewegungsprogramm für den Roboter und den Menschen erzeugt, und ein Zyklusdauerberechnungsteil, das eine Simulation des Bewegungsprogramms ausführt und eine Zyklusdauer des Bewegungsprogramms berechnet.
  • Die Robotersimulationsvorrichtung kann ferner ein Ausführungsbeurteilungsteil umfassen, das basierend auf einer Bedingung, die nicht das Gewicht des bei jeder Tätigkeit zu bearbeitenden Artikels, die Transportstrecke des Artikels und die bei jeder Tätigkeit erforderliche Zeitdauer umfasst, entscheidet, ob die an den Roboter verteilte Tätigkeit durch den Roboter ausgeführt werden kann, oder ob die an den Menschen verteilte Tätigkeit durch den Menschen ausgeführt werden kann.
  • Die Robotersimulationsvorrichtung kann ferner ein Bewegungsgeschwindigkeitsbeurteilungsteil umfassen, das entscheidet, ob der Roboter mit einer Geschwindigkeit betrieben werden kann, die gleich oder höher als eine Bewegungsgeschwindigkeit des Menschen ist, wenn das Tätigkeitsverteilungsteil eine Tätigkeit an den Roboter und den Menschen verteilt, bei der der Roboter und der Mensch gemeinsam einen Artikel transportieren. In diesem Fall kann das Programmerzeugungsteil das Bewegungsprogramm erzeugen, in dem die Geschwindigkeit des Menschen auf eine Maximalgeschwindigkeit des Roboters festgelegt ist, wenn das Bewegungsbeurteilungsteil entscheidet, dass der Roboter nicht mit der Geschwindigkeit betrieben werden kann, die gleich oder höher als die Bewegungsgeschwindigkeit des Menschen ist.
  • Die Robotersimulationsvorrichtung kann ferner ein Bewegungsgeschwindigkeitsbegrenzungsteil, das eine Bewegungsgeschwindigkeit des Roboters verringert, wenn sich der Mensch dem Roboter nähert, welcher innerhalb einer konstanten Entfernung zum Roboters betrieben wird, für den Fall, dass das Tätigkeitsverteilungsteil unterschiedliche Tätigkeiten an den Roboter und den Menschen verteilt, und ein Zyklusdauerverlängerungsbegrenzungsteil umfassen, das dem Bewegungsprogramm eine Wartezeit hinzufügt, um zu verhindern, dass, wenn der Roboter und der Mensch gemeinsam arbeiten, sich die Zyklusdauer aufgrund einer Verzögerung der Bewegungsgeschwindigkeit des Roboters verlängert, die aufgrund der Annäherung des Menschen an den Roboter aufgetreten ist.
  • Figurenliste
  • Das vorstehende und andere Ziele, Merkmale und Vorteile der vorliegenden Erfindung gehen aus der folgenden Beschreibung ihrer bevorzugten Ausführungsformen unter Bezugnahme auf die begleitenden Zeichnungen genauer hervor. Es zeigt:
    • 1 ein Beispiel einer Systemkonfiguration einer Robotersimulationsvorrichtung gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung;
    • 2 ein Funktionsblockdiagramm der Robotersimulationsvorrichtung gemäß 1,
    • 3 ein Flussdiagramm, das ein Beispiel für ein Verfahren in der erfindungsgemäßen Robotersimulationsvorrichtung darstellt;
    • 4 ein Beispiel, bei dem eine Mehrzahl Tätigkeiten jeweils an einen Roboter und einen Menschen verteilt wird;
    • 5 ein Flussdiagramm, das ein Verfahren zum Entscheiden erläutert, ob die an den Roboter oder den Menschen verteilte Tätigkeit durch den Roboter oder den Menschen durchgeführt werden kann, an den die Tätigkeit verteilt wird;
    • 6 ein Flussdiagramm, das ein Verfahren zum Entscheiden erläutert, ob der Roboter mit einer einem Bewegungsprogramm des Menschen entsprechenden Geschwindigkeit betrieben werden kann, wenn eine Tätigkeit an den Roboter und den Menschen verteilt wird, bei der der Roboter und der Mensch gemeinsam einen Artikel transportieren; und
    • 7 ein Flussdiagramm, das ein Verfahren zum Begrenzen einer Zyklusdauerverlängerung erläutert, wenn um den Roboter ein Niedriggeschwindigkeitsbereich definiert wird.
  • Genaue Beschreibung
  • 1 ist ein Beispiel einer Systemkonfiguration einer Robotersimulationsvorrichtung (nachstehend auch nur als „Simulationsvorrichtung“ bezeichnet) 10 gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung, und 2 ist ein Funktionsblockdiagramm der Simulationsvorrichtung. Die Simulationsvorrichtung 10 ist beispielsweise ein Arbeitsplatzrechner mit einer Eingabeeinrichtung, wie etwa einer Tastatur 12 und/oder einer Maus 14, und ist dazu eingerichtet, eine Simulation eines menschliches Eingreifen umfassenden Robotersystems auszuführen, wobei ein Roboter 18 und ein Mensch (oder Bediener) 20, die sich in einem virtuellen Raum (oder auf einer Anzeigeeinrichtung) 16 befinden, eine gemeinsame Tätigkeit ausführen, wobei sich der Roboter und der Mensch einen Arbeitsraum teilen und einen oder mehrere Artikel 22 transportieren. Die Simulationsvorrichtung 10 umfasst: ein Tätigkeitsverteilungsteil 24, das basierend auf einem Gewicht eines bei jeder Tätigkeit zu bearbeitenden Artikels 22, einer Transportstrecke des Artikels 22 und einer bei jeder Tätigkeit erforderlichen Zeitdauer eine Mehrzahl in der gemeinsamen Tätigkeit enthaltener Tätigkeiten an den Roboter 18 und den Menschen 20 verteilt, ein Programmerzeugungsteil 26, das basierend auf einem durch das Tätigkeitsverteilungsteil 24 erhaltenen Tätigkeitsverteilungsergebnis ein Bewegungsprogramm für den Roboter 18 und den Menschen 20 erzeugt, und ein Zyklusdauerberechnungsteil 28, das eine Simulation des Bewegungsprogramms ausführt und eine Zyklusdauer des Bewegungsprogramms berechnet.
  • Als Nächstes wird unter Bezugnahme auf ein Flussdiagramm gemäß 3 die Funktion der Simulationsvorrichtung 10 erläutert. Zunächst wird in Schritt S1 eine Mehrzahl durch das menschliches Eingreifen umfassende Robotersystem durchzuführender Tätigkeiten nach Typ klassifiziert. Bei dieser Ausführungsform wird, wie in 4 veranschaulicht, die Mehrzahl Tätigkeiten als Typ A, B und C klassifiziert.
  • Als Nächstes wird in Schritt S2 aus den nach Typ klassifizierten Tätigkeiten ein Tätigkeitstyp ausgewählt und ein Gewicht des bei der ausgewählten Tätigkeit zu bearbeitenden Artikels mit einem vorgegebenen zulässigen Wert verglichen (Schritt S3). Wenn das Gewicht des Artikels den zulässigen Wert übersteigt, wird die ausgewählte Tätigkeit an den Roboter verteilt (Schritt S4). Der zulässige Wert wird beispielsweise so eingestellt, dass der Mensch den Artikel transportieren kann.
  • Wenn das Gewicht des Artikels den zulässigen Wert nicht übersteigt, wird in Schritt S5 entschieden, ob eine Mindesttransportdauer (D/Vmax), die durch Dividieren einer Transportstrecke D des Artikels durch eine Maximalgeschwindigkeit Vmax des Roboters erhalten wird, gleich oder größer als eine vorgegebene erforderliche Zeitdauer ist. Wenn die Mindesttransportdauer kleiner als die erforderliche Zeitdauer ist, kann die entsprechende Tätigkeit innerhalb der erforderlichen Zeitdauer durch den Roboter durchgeführt werden, so dass die Tätigkeit an den Roboter verteilt oder diesem zugewiesen wird (Schritt S4). Wenn die Mindesttransportdauer hingegen gleich oder größer als die erforderliche Zeitdauer ist, wird die entsprechende Tätigkeit an den Menschen verteilt oder diesem zugewiesen (Schritt S6), da die Bewegungsgeschwindigkeit des Menschen normalerweise höher ist als die des Roboters. In 4 werden beispielsweise die Tätigkeiten A und B an den Roboter 18 verteilt und die Tätigkeit C an den Menschen 20.
  • Im nächsten Schritt S7 wird entschieden, ob alle Tätigkeiten verteilt worden sind. Wenn eine oder mehrere Tätigkeiten nicht verteilt worden sind, werden die Vorgänge von S2 bis S6 wiederholt. Somit werden alle nach Typ klassifizierten Tätigkeiten jeweils dem Menschen oder dem Roboter zugewiesen.
  • Nachdem alle Tätigkeiten verteilt worden sind, wird basierend auf einem Verteilungsergebnis ein Bewegungsprogramm des Roboters und des Menschen erzeugt (Schritt S8). Dann wird eine Simulation des erzeugten Bewegungsprogramms ausgeführt, so dass eine Zyklusdauer der Simulation in dem menschliches Eingreifen umfassenden System berechnet wird (Schritt S9).
  • Wie erläutert, kann bei der vorliegenden Erfindung jede der Mehrzahl Tätigkeiten basierend auf dem Gewicht des Artikels und der erforderlichen Zeitdauer (oder der Transportdauer) automatisch dem Roboter oder dem Menschen zugewiesen (oder an diesen verteilt werden) und das anhand des Verteilungsergebnisses erzeugte Bewegungsprogramm simuliert werden. Daher kann die Zyklusdauer des menschliches Eingreifen umfassenden Robotersystems automatisch und zweckmäßig berechnet und ausgewertet werden.
  • Wie in 2 gezeigt, kann die Simulationsvorrichtung 10 ferner ein Ausführungsbeurteilungsteil 30 umfassen, das basierend auf einer Bedingung, die nicht das Gewicht des bei jeder Tätigkeit zu bearbeitenden Artikels, die Transportstrecke des Artikels und die bei jeder Tätigkeit erforderliche Zeitdauer umfasst, entscheidet, ob die durch das Tätigkeitsverteilungsteil 24 an den Roboter verteilte Tätigkeit durch den Roboter durchgeführt werden kann, oder ob die durch das Tätigkeitsverteilungsteil 24 an den Menschen verteilte Tätigkeit durch den Menschen durchgeführt werden kann. Wahlweise kann nach Schritt S4 oder S6 in 3 basierend auf der anderen Bedingung entschieden werden, ob die an den Roboter oder den Menschen verteilte Tätigkeit durch den Roboter oder den Menschen durchgeführt werden kann.
  • Wie in 5 veranschaulicht, kann Schritt S10 nach Schritt S4 eingefügt werden, um zu entscheiden, ob die an den Roboter verteilte Tätigkeit (Tätigkeiten A und B in dem Beispiel von 4) durch den Roboter durchgeführt werden kann. Als konkrete Bedingung dafür kann verwendet werden, ob die verteilte Tätigkeit innerhalb des Bewegungsbereichs des Roboters durch den Roboter durchgeführt werden kann, oder ob die Bewegungsgeschwindigkeit des Roboters während der verteilten Tätigkeit nicht die zulässige Geschwindigkeit des Roboters übersteigt. Wenn eine solche Bedingung erfüllt wird, fährt das Verfahren mit Schritt S7 von 3 fort. Anderenfalls ist es bevorzugt, da die an den Roboter verteilte Tätigkeit nicht durch den Roboter durchgeführt werden kann, das Verfahren zu beenden.
  • Ebenso kann, wie in 5 gezeigt, Schritt S11 nach Schritt S6 eingefügt werden, um zu entscheiden, ob die an den Menschen verteilte Tätigkeit (Tätigkeit C in dem Beispiel von 4) durch den Menschen durchgeführt werden kann. Als konkrete Bedingung dafür kann verwendet werden, ob die verteilte Tätigkeit innerhalb des Bewegungsbereichs des Menschen durch den Menschen durchgeführt werden kann, oder ob die Bewegungsgeschwindigkeit des Menschen während der verteilten Tätigkeit nicht die zulässige Geschwindigkeit des Menschen übersteigt. Wenn eine solche Bedingung erfüllt wird, fährt das Verfahren mit Schritt S7 in 3 fort. Anderenfalls ist es bevorzugt, da die an den Menschen verteilte Tätigkeit nicht durch den Menschen durchgeführt werden kann, das Verfahren zu beenden.
  • Wie in 2 gezeigt, kann die Simulationsvorrichtung 10 ferner ein Bewegungsgeschwindigkeitsbeurteilungsteil 32 aufweisen, das entscheidet, ob der Roboter mit einer Geschwindigkeit betrieben werden kann, die gleich oder höher als die Bewegungsgeschwindigkeit des Menschen ist, wenn das Tätigkeitsverteilungsteil 24 eine Tätigkeit an den Roboter und den Menschen verteilt, bei der der Roboter und der Mensch gemeinsam einen Artikel transportieren.
  • Die Tätigkeit, bei der der Roboter und der Mensch gemeinsam einen Artikel transportieren, wird sowohl an den Roboter als auch den Menschen verteilt. In diesem Fall kann, wie in 6 gezeigt, nachdem das Programmerzeugungsteil 26 das Bewegungsprogramm erzeugt hat (z.B. nach Schritt S8 in 3), das Bewegungsgeschwindigkeitsbeurteilungsteil 32 Schritt S12 einfügen, um zu entscheiden, ob der Roboter mit der Geschwindigkeit betrieben werden kann, die gleich oder höher als die Bewegungsgeschwindigkeit des Menschen ist. Im Allgemeinen ist die Bewegungsgeschwindigkeit des Menschen höher als die des Roboters. Daher erzeugt das Programmerzeugungsteil 26, wenn entschieden wird, dass der Roboter nicht mit der Geschwindigkeit betrieben werden kann, die gleich oder höher als die Bewegungsgeschwindigkeit des Menschen ist, das Bewegungsprogramm solcherart, dass die Bewegungsgeschwindigkeit des Menschen auf die Maximalgeschwindigkeit des Roboters festgelegt wird (d.h. die Bewegungsgeschwindigkeit des Menschen wird herabgesetzt) (Schritt S13). Wenn hingegen die Bewegungsgeschwindigkeit des Menschen immer niedriger als die Maximalgeschwindigkeit des Roboters ist, fährt das Verfahren mit Schritt S9 fort, ohne Schritt S13 auszuführen. Mittels eines solchen Verfahrens kann das Problem vermieden werden, dass die Simulation aufgrund der niedrigen Bewegungsgeschwindigkeit des Roboters nicht richtig ausgeführt werden kann.
  • Des Weiteren kann die Simulationsvorrichtung 10, wie in 2 gezeigt, ferner ein Bewegungsgeschwindigkeitsbegrenzungsteil 34, das die Bewegungsgeschwindigkeit des Roboters verringert, wenn sich der Mensch dem Roboter nähert, welcher innerhalb einer konstanten Entfernung zum Roboter betrieben wird, für den Fall, dass das Tätigkeitsverteilungsteil 24 unterschiedliche Tätigkeiten an den Roboter und den Menschen verteilt, und ein Zyklusdauerverlängerungsbegrenzungsteil 36 aufweisen, das dem Bewegungsprogramm eine Wartezeit hinzufügt, um zu verhindern, dass, wenn der Roboter und der Mensch gemeinsam arbeiten, sich die Zyklusdauer aufgrund einer Verzögerung der Bewegungsgeschwindigkeit des Roboters verlängert, die aufgrund der Annäherung des Menschen an den Roboter aufgetreten ist. Ein Beispiel des Verfahrens, das durch das Bewegungsgeschwindigkeitsbegrenzungsteil 34 und das Zyklusdauerverlängerungsbegrenzungsteil 36 ausgeführt wird, ist unter Bezugnahme auf ein Flussdiagramm gemäß 7 erläutert.
  • Das Bewegungsgeschwindigkeitsbegrenzungsteil 34 weist eine Funktion zum Verringern der Bewegungsgeschwindigkeit des Roboters auf, wenn sich der Mensch dem Roboter nähert, welcher innerhalb der konstanten Entfernung zum Roboter betrieben wird, für den Fall, dass an den Roboter und den Menschen jeweils unterschiedliche Tätigkeiten verteilt werden. Mit anderen Worten, das Bewegungsgeschwindigkeitsbegrenzungsteil 34 ist dazu eingerichtet, einen Bereich innerhalb einer vorgegebenen Entfernung zum Roboter als Niedriggeschwindigkeitsbereich zu definieren und die Bewegungsgeschwindigkeit des Roboters zu verringern, wenn der Mensch den Niedriggeschwindigkeitsbereich betritt.
  • Wie in 7 gezeigt, wird, nachdem das Programmerzeugungsteil 26 das Bewegungsprogramm erzeugt hat (z.B. nach Schritt S8 in 3), entschieden, ob wenigstens eine Bewegung, bei der der Mensch den Niedriggeschwindigkeitsbereich betritt, im Bewegungsprogramm enthalten ist (Schritt S14). Wenn die Bewegung, bei der der Mensch den Niedriggeschwindigkeitsbereich betritt, im Bewegungsprogramm enthalten ist, wird eine auf dem Bewegungsprogramm basierende Simulation ausgeführt und eine Ausführungsdauer (oder Zyklusdauer) des Bewegungsprogramms berechnet (Schritt S15). Die berechnete Zyklusdauer wird als erste Zyklusdauer (oder Zyklusdauer 1) in einem geeigneten Speicher gespeichert.
  • Als Nächstes wird im Bewegungsprogramm für den Menschen eine Bewegung, bevor (z.B. direkt bevor) der Mensch den Niedriggeschwindigkeitsbereich betritt, ausgewählt (Schritt S16) und ein Wartebefehl, der eine vorgegebene Wartezeit enthält, direkt vor der ausgewählten Bewegung eingefügt (Schritt S17). Dann wird basierend auf dem Bewegungsprogramm, zu dem der Wartebefehl (Wartezeit) hinzugefügt ist, eine Simulation ausgeführt und eine Ausführungsdauer (oder Zyklusdauer) des Bewegungsprogramms als zweite Zyklusdauer (oder Zyklusdauer 2) berechnet (Schritt S18). Die vorgegebene Wartezeit wird beispielsweise auf einen (bevorzugt konstanten) Wert von zwei bis zehn Sekunden eingestellt.
  • Bei dem nächsten Schritt S19 werden die erste und zweite Zyklusdauer miteinander verglichen. Wenn die Zyklusdauer nach dem Hinzufügen des Wartebefehls (d.h. die zweite Zyklusdauer) kleiner als die erste Zyklusdauer ist, tritt die zweite Zyklusdauer an die Stelle der ersten Zyklusdauer (Schritt S20). Dann wird die Wartezeit zum Bewegungsprogramm hinzugefügt und die erste und zweite Zyklusdauer werden erneut miteinander verglichen. Dieses Verfahren wird wiederholt bis die Zyklusdauer 2 gleich oder größer als die Zyklusdauer 1 ist.
  • Wenn die zweite Zyklusdauer in Schritt S19 gleich oder größer als die erste Zyklusdauer ist, könnte der zuletzt hinzugefügte Wartebefehl (oder die Wartezeit) als nicht notwendig aufgefasst werden, so dass die letzte Änderung (oder Ergänzung) des Bewegungsprogramms des menschlichen Programms gelöscht wird (Schritt S21). Darüber hinaus ist es bevorzugt, dass das vorstehend beschriebene Verfahren zum Hinzufügen des Wartebefehls (Wartezeit) in Bezug auf alle Bewegungen ausgeführt wird, bei denen der Mensch den Niedriggeschwindigkeitsbereich betritt (Schritt S22).
  • Das Beispiel von 7 soll verhindern, dass die Bewegungsgeschwindigkeit des Roboters aufgrund des Eintretens des Menschen in den Niedriggeschwindigkeitsbereich herabgesetzt (und die Zyklusdauer verlängert) wird, so dass das Beispiel von 7 ein konkretes Mittel zum Hinzufügen der Wartezeit aufzeigt, um einen Zeitpunkt zu verzögern, zu dem der Mensch den Niedriggeschwindigkeitsbereich betritt, wodurch der Roboter die Tätigkeit schnell durchführen kann, ohne seine Bewegungsgeschwindigkeit zu verringern. Des Weiteren kann bei dem Beispiel von 7 durch Vergleichen der Zyklusdauer vor und nach dem Hinzufügen der Wartezeit in geeigneten Zeitintervallen das Bewegungsprogramm mit der Mindestzyklusdauer automatisch erzeugt werden.
  • Darüber hinaus können die in den 5 bis 7 gezeigten Beispiele unabhängig voneinander oder in Kombination miteinander verwendet werden.
  • Bei dem Beispiel von 1 ist die Robotersimulationsvorrichtung der vorliegenden Erfindung als Arbeitsplatzrechner beschrieben. Die Robotersimulationsvorrichtung kann jedoch in der Robotersteuereinrichtung zum Steuern des tatsächlichen zu simulierenden Roboters enthalten sein. Mit anderen Worten, die Robotersteuereinrichtung kann die Funktionen der Robotersimulationsvorrichtung aufweisen. Aufgrund dessen kann die Simulation des menschliches Eingreifen umfassenden Robotersystems durch die Robotersteuereinrichtung durchgeführt werden, wodurch die Bewegung des tatsächlichen Roboters basierend auf dem Simulationsergebnis reibungslos durchgeführt werden kann.
  • Gemäß der vorliegenden Erfindung kann basierend auf einem Gewicht eines bei jeder Tätigkeit zu bearbeitenden Artikels, einer Transportstrecke des Artikels und einer bei jeder Tätigkeit erforderlichen Zeitdauer eine Mehrzahl Tätigkeiten automatisch an einen Roboter und einen Menschen verteilt werden, so dass das Bewegungsprogramm des Menschen und des Roboters simuliert wird, um eine Zyklusdauer des Bewegungsprogramms zu berechnen. Daher kann der Bediener das menschliches Eingreifen umfassende Robotersystem leicht simulieren und dessen Zyklusdauer mit geringerem Aufwand auswerten.

Claims (4)

  1. Robotersimulationsvorrichtung (10) für ein menschliches Eingreifen umfassendes Robotersystem, wobei ein Roboter (18) und ein Mensch (20), die sich in einem virtuellen Raum (16) befinden, eine gemeinsame Tätigkeit durchführen und sich dabei einen Arbeitsraum teilen und einen oder mehrere Artikel (22) transportieren, wobei die Robotersimulationsvorrichtung umfasst: - ein Tätigkeitsverteilungsteil (24), das basierend auf einem Gewicht des bei jeder Tätigkeit zu bearbeitenden Artikels, einer Transportstrecke des Artikels und einer bei jeder Tätigkeit erforderlichen Zeitdauer eine Mehrzahl in der gemeinsamen Tätigkeit enthaltener Tätigkeiten an den Roboter und den Menschen verteilt, wobei, wenn das Gewicht des Artikels einen vorbestimmten zulässigen Wert überschreitet, oder wenn eine minimale Transportzeit durch den Roboter, die basierend auf der Transportstrecke berechnet wird, niedriger als eine erforderliche Zeit ist, das Tätigkeitsverteilungsteil die entsprechende Tätigkeit an den Roboter verteilt; - ein Programmerzeugungsteil (26), das basierend auf einem durch das Tätigkeitsverteilungsteil erhaltenen Tätigkeitsverteilungsergebnis ein Bewegungsprogramm für den Roboter und den Menschen erzeugt, und - ein Zyklusdauerberechnungsteil (28), das eine Simulation des Bewegungsprogramms ausführt und eine Zyklusdauer des Bewegungsprogramms berechnet.
  2. Robotersimulationsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die Robotersimulationsvorrichtung ferner umfasst: - ein Ausführungsbeurteilungsteil (30), das entscheidet: ob eine an den Roboter verteilte Tätigkeit durch den Roboter ausgeführt werden kann, wobei die Entscheidung darauf basiert ob die verteilte Tätigkeit innerhalb eines Bewegungsbereichs des Roboters durch den Roboter ausgeführt werden kann, oder ob die Bewegungsgeschwindigkeit des Roboters während der verteilten Tätigkeit nicht die zulässige Geschwindigkeit des Roboters übersteigt, und/oder ob eine an den Menschen verteilte Tätigkeit durch den Menschen ausgeführt werden kann, wobei die Entscheidung darauf basiert, ob die verteilte Tätigkeit innerhalb eines Bewegungsbereichs des Menschen durch den Menschen ausgeführt werden kann, oder ob die Bewegungsgeschwindigkeit des Menschen während der verteilten Tätigkeit nicht die zulässige Geschwindigkeit des Menschen übersteigt.
  3. Robotersimulationsvorrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Robotersimulationsvorrichtung ferner umfasst: - ein Bewegungsgeschwindigkeitsbeurteilungsteil (32), das feststellt, ob der Roboter mit einer Geschwindigkeit betrieben werden kann oder nicht, die gleich oder höher als eine Bewegungsgeschwindigkeit des Menschen ist, wenn das Tätigkeitsverteilungsteil eine Tätigkeit an den Roboter und den Menschen verteilt, bei der der Roboter und der Mensch gemeinsam einen Artikel transportieren, - wobei das Programmerzeugungsteil das Bewegungsprogramm erzeugt, in dem die Geschwindigkeit des Menschen auf eine Maximalgeschwindigkeit des Roboters festgelegt ist, wenn das Bewegungsgeschwindigkeitsbeurteilungsteil feststellt, dass der Roboter nicht mit der Geschwindigkeit betrieben werden kann, die gleich oder höher als die Bewegungsgeschwindigkeit des Menschen ist.
  4. Robotersimulationsvorrichtung (10) für ein menschliches Eingreifen umfassendes Robotersystem, wobei ein Roboter (18) und ein Mensch (20), die sich in einem virtuellen Raum (16) befinden, eine gemeinsame Tätigkeit durchführen und sich dabei einen Arbeitsraum teilen und einen oder mehrere Artikel (22) transportieren, wobei die Robotersimulationsvorrichtung umfasst: - ein Tätigkeitsverteilungsteil (24), das basierend auf einem Gewicht des bei jeder Tätigkeit zu bearbeitenden Artikels, einer Transportstrecke des Artikels und einer bei jeder Tätigkeit erforderlichen Zeitdauer eine Mehrzahl in der gemeinsamen Tätigkeit enthaltener Tätigkeiten an den Roboter und den Menschen verteilt, - ein Programmerzeugungsteil (26), das basierend auf einem durch das Tätigkeitsverteilungsteil erhaltenen Tätigkeitsverteilungsergebnis ein Bewegungsprogramm für den Roboter und den Menschen erzeugt, und - ein Zyklusdauerberechnungsteil (28), das eine Simulation des Bewegungsprogramms ausführt und eine Zyklusdauer des Bewegungsprogramms berechnet, - ein Bewegungsgeschwindigkeitsbegrenzungsteil (34), das eine Bewegungsgeschwindigkeit des Roboters verringert, wenn sich der Mensch dem Roboter nähert, welcher innerhalb einer konstanten Entfernung zum Roboter betrieben wird, für den Fall, dass das Tätigkeitsverteilungsteil unterschiedliche Tätigkeiten an den Roboter und den Menschen verteilt, und - ein Zyklusdauerverlängerungsbegrenzungsteil (36), das dem Bewegungsprogramm eine Wartezeit hinzufügt, um zu verhindern, dass, wenn der Roboter und der Mensch gemeinsam arbeiten, sich die Zyklusdauer aufgrund einer Verzögerung der Bewegungsgeschwindigkeit des Roboters verlängert, die aufgrund der Annäherung des Menschen an den Roboter aufgetreten ist.
DE102016008576.2A 2015-07-21 2016-07-14 Robotersimulationsvorrichtung für ein menschliches Eingreifen umfassendes Robotersystem Active DE102016008576B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-144229 2015-07-21
JP2015144229A JP6426547B2 (ja) 2015-07-21 2015-07-21 人間協調型ロボットシステムのロボットシミュレーション装置

Publications (2)

Publication Number Publication Date
DE102016008576A1 DE102016008576A1 (de) 2017-01-26
DE102016008576B4 true DE102016008576B4 (de) 2020-08-27

Family

ID=57738949

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016008576.2A Active DE102016008576B4 (de) 2015-07-21 2016-07-14 Robotersimulationsvorrichtung für ein menschliches Eingreifen umfassendes Robotersystem

Country Status (4)

Country Link
US (1) US10239209B2 (de)
JP (1) JP6426547B2 (de)
CN (1) CN106363622B (de)
DE (1) DE102016008576B4 (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ITUA20163608A1 (it) * 2016-05-19 2017-11-19 Milano Politecnico Procedimento e dispositivo per il controllo della movimentazione di uno o più robot collaborativi
JP6487489B2 (ja) 2017-05-11 2019-03-20 ファナック株式会社 ロボット制御装置及びロボット制御プログラム
JP6992312B2 (ja) * 2017-08-04 2022-01-13 オムロン株式会社 シミュレーション装置、制御装置、及びシミュレーションプログラム
JP6848759B2 (ja) 2017-08-04 2021-03-24 オムロン株式会社 シミュレーション装置、制御装置、及びシミュレーションプログラム
JP7087316B2 (ja) * 2017-09-27 2022-06-21 オムロン株式会社 情報処理装置、情報処理方法およびプログラム
US12055920B2 (en) * 2017-11-03 2024-08-06 Apple Inc. Real time anomaly detection systems and methods
JP7058126B2 (ja) * 2018-01-12 2022-04-21 株式会社日立製作所 ロボット制御装置および自動組立システム
JP6863927B2 (ja) 2018-04-25 2021-04-21 ファナック株式会社 ロボットのシミュレーション装置
JP7172138B2 (ja) * 2018-05-25 2022-11-16 富士通株式会社 情報処理装置、時間推定方法及び時間推定プログラム
WO2020075368A1 (ja) * 2018-10-09 2020-04-16 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
JP7383999B2 (ja) * 2019-11-25 2023-11-21 オムロン株式会社 協調作業システム、解析装置および解析プログラム
US11554482B2 (en) * 2020-07-16 2023-01-17 Hitachi, Ltd. Self-learning industrial robotic system
CN112247962B (zh) * 2020-10-19 2021-10-08 中国科学技术大学 面向上肢穿戴机器人的人机博弈控制方法及系统
US11657345B2 (en) * 2021-03-24 2023-05-23 International Business Machines Corporation Implementing machine learning to identify, monitor and safely allocate resources to perform a current activity
WO2024116285A1 (ja) * 2022-11-29 2024-06-06 ファナック株式会社 ロボットシステムのシミュレーション装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010005708A1 (de) * 2009-01-26 2010-07-29 FANUC LTD, Oshino-mura Produktionssystem mit überlappendem Bearbeitungsbereich zwischen Mensch und Roboter
JP2010211726A (ja) * 2009-03-12 2010-09-24 Fanuc Ltd シミュレーション方法
US20110179627A1 (en) * 2010-01-28 2011-07-28 Honda Motor Co., Ltd. Workpiece assembling method
JP2011227773A (ja) * 2010-04-21 2011-11-10 Panasonic Electric Works Co Ltd 生産システム
DE102012015975A1 (de) * 2012-08-11 2013-03-21 Daimler Ag Verfahren zum Betreiben eines Sicherheitssystems für eine Produktionsstation und Sicherheitssystem für eine Produktionsstation
US20140135984A1 (en) * 2012-11-12 2014-05-15 Kabushiki Kaisha Yaskawa Denki Robot system

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0696087A (ja) * 1991-10-24 1994-04-08 Honda Motor Co Ltd 生産ラインの製造方法
JP2778922B2 (ja) * 1994-11-24 1998-07-23 株式会社神戸製鋼所 複数台ロボットの作業順及び作業分担の決定方法
JP3872387B2 (ja) * 2002-06-19 2007-01-24 トヨタ自動車株式会社 人間と共存するロボットの制御装置と制御方法
US7860614B1 (en) * 2005-09-13 2010-12-28 The United States Of America As Represented By The Secretary Of The Army Trainer for robotic vehicle
JP2007076807A (ja) * 2005-09-14 2007-03-29 Institute Of Physical & Chemical Research パワーアシスト装置とその適応モデル予測制御方法
JP5035768B2 (ja) * 2006-04-18 2012-09-26 独立行政法人産業技術総合研究所 人間ロボット共存作業用安全装置
CN101646534B (zh) * 2007-06-27 2012-03-21 松下电器产业株式会社 机器手控制装置及控制方法、机器人
JP5100525B2 (ja) * 2008-06-17 2012-12-19 パナソニック株式会社 物品管理システム及び物品管理方法及び物品管理プログラム
DE112011103155B4 (de) * 2010-09-21 2026-01-29 Toyota Jidosha Kabushiki Kaisha Beweglicher Körper
JP5180414B2 (ja) 2011-01-27 2013-04-10 パナソニック株式会社 ロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路
JP6186730B2 (ja) * 2013-01-24 2017-08-30 セイコーエプソン株式会社 生産システム、ロボット、制御装置、生産方法及び制御プログラム
CN103170973B (zh) * 2013-03-28 2015-03-11 上海理工大学 人机协作装置及实现人机协作的方法
JP6055002B2 (ja) * 2015-02-20 2016-12-27 ファナック株式会社 ロボットを退避動作させる人間協調ロボットシステム
US9671777B1 (en) * 2016-06-21 2017-06-06 TruPhysics GmbH Training robots to execute actions in physics-based virtual environment
US9811074B1 (en) * 2016-06-21 2017-11-07 TruPhysics GmbH Optimization of robot control programs in physics-based simulated environment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010005708A1 (de) * 2009-01-26 2010-07-29 FANUC LTD, Oshino-mura Produktionssystem mit überlappendem Bearbeitungsbereich zwischen Mensch und Roboter
JP2010211726A (ja) * 2009-03-12 2010-09-24 Fanuc Ltd シミュレーション方法
US20110179627A1 (en) * 2010-01-28 2011-07-28 Honda Motor Co., Ltd. Workpiece assembling method
JP2011227773A (ja) * 2010-04-21 2011-11-10 Panasonic Electric Works Co Ltd 生産システム
DE102012015975A1 (de) * 2012-08-11 2013-03-21 Daimler Ag Verfahren zum Betreiben eines Sicherheitssystems für eine Produktionsstation und Sicherheitssystem für eine Produktionsstation
US20140135984A1 (en) * 2012-11-12 2014-05-15 Kabushiki Kaisha Yaskawa Denki Robot system

Also Published As

Publication number Publication date
US10239209B2 (en) 2019-03-26
CN106363622B (zh) 2021-06-04
JP6426547B2 (ja) 2018-11-21
CN106363622A (zh) 2017-02-01
US20170021501A1 (en) 2017-01-26
DE102016008576A1 (de) 2017-01-26
JP2017024113A (ja) 2017-02-02

Similar Documents

Publication Publication Date Title
DE102016008576B4 (de) Robotersimulationsvorrichtung für ein menschliches Eingreifen umfassendes Robotersystem
DE102015004932B4 (de) Simulationsvorrichtung für mehrere Roboter
DE602006000648T2 (de) Offline-Lehrgerät für einen Roboter
DE102019002928B4 (de) Simulationsvorrichtung für Roboter
DE102016120763B4 (de) Verfahren zur kollisionsfreien Bewegungsplanung
DE102011113590B4 (de) Planen simultaner Pfade mit einem oder mehreren humanoiden Robotern
DE102016008994B4 (de) Werkzeugmaschine, simulationsvorrichtung und maschineneinlerngerät
EP2977149B1 (de) Verfahren und mittel zum auslegen und/oder betreiben eines roboters
EP3511126A1 (de) Verfahren zur rechnergestützten planung eines durch einen roboter ausführbaren arbeitsablaufs
DE102017124502B4 (de) Simulationsvorrichung und Simulationsverfahren, die eine Betriebssimulation eines Robotersystems ausführen, und Aufzeichnungsmedium, das ein Computerprogramm aufzeichnet
DE102015012973B4 (de) Numerische Steuereinrichtung mit Überlappungsfunktion zwischen beliebigen Blöcken durch eine gemeinsame Beschleunigungs-/Verzögerungssteuereinheit
DE102013113165A1 (de) Kalibrierungsverfahren für Robotersystem
DE102020104952B4 (de) Verwaltungsvorrichtung und verwaltungssystem
WO2019020818A1 (de) Effiziente programmierung von robotern für die bearbeitung von werkstücken mit verschiedenen varianten
EP2866111B1 (de) Testen eines Steuergerätes mittels einer Testumgebung
DE102018107864B4 (de) Offline-Programmiervorrichtung und -verfahren mit der Funktion zur Erzeugung eines Programms zur Detektion einer Werkstückposition mittels eines Kontaktsensors
DE112017004424T5 (de) Befehlswerterzeugungsvorrichtung
DE102016000850B4 (de) Steuern eines Roboterverbands
DE102020123255A1 (de) Robotersteuervorrichtung
DE102016108264A1 (de) Einheit zum Üben der Korrektur des thermischen Versatzes für eine Werkzeugmaschine
DE202019105752U1 (de) Robotersystem mit Arbeitstisch und Ausgabe von Kosten eines Steuerprogramms
EP3438773B1 (de) Bearbeitung von werkstücken mit modellgestützter fehlerkompensation
DE102015015954B4 (de) Numerische Steuerung
DE102019123157A1 (de) Zykluszeitschätzer
DE112022001780T5 (de) Trainings- und Steuervorrichtung, Trainingsvorrichtung, Steuervorrichtung, Trainings- und Steuerverfahren, Trainingsverfahren, Steuerverfahren, Trainings- und Steuerprogramm, Trainingsprogramm und Steuerprogramm

Legal Events

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