DE102017124423B4 - Simulationsvorrichtung und simulationsverfahren zum simulieren einer operation eines roboters - Google Patents

Simulationsvorrichtung und simulationsverfahren zum simulieren einer operation eines roboters Download PDF

Info

Publication number
DE102017124423B4
DE102017124423B4 DE102017124423.9A DE102017124423A DE102017124423B4 DE 102017124423 B4 DE102017124423 B4 DE 102017124423B4 DE 102017124423 A DE102017124423 A DE 102017124423A DE 102017124423 B4 DE102017124423 B4 DE 102017124423B4
Authority
DE
Germany
Prior art keywords
model
workpiece
robot
conveyor
virtual space
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
DE102017124423.9A
Other languages
English (en)
Other versions
DE102017124423A1 (de
Inventor
Hiroyuki Atohira
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 DE102017124423A1 publication Critical patent/DE102017124423A1/de
Application granted granted Critical
Publication of DE102017124423B4 publication Critical patent/DE102017124423B4/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/0093Programme-controlled manipulators co-operating with conveyor means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1605Simulation of manipulator lay-out, design, modelling of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • 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/40014Gripping workpiece to place it in another place

Abstract

Simulationsvorrichtung (10), die dazu ausgebildet ist, eine Operation eines Roboters (102) mit einer Roboterhand (116), wodurch die Roboterhand dazu gebracht wird, einem sich bewegenden Werkstück (Wr) zu folgen, zu simulieren, wobei die Simulationsvorrichtung Folgendes umfasst:einen Robotermodellanordnungsabschnitt (26), der dazu ausgebildet ist, ein Robotermodell (102M), das ein Roboterhandmodell (116M) aufweist, in einem virtuellen Raum (200) anzuordnen, wobei das Robotermodell ein dreidimensionales Modell des Roboters ist und das Roboterhandmodell ein dreidimensionales Modell der Roboterhand ist;einen Fördereinrichtungsmodellanordnungsabschnitt (28), der dazu ausgebildet ist, ein Fördereinrichtungsmodell (104M) in dem virtuellen Raum anzuordnen, wobei das Fördereinrichtungsmodell ein dreidimensionales Modell einer Fördereinrichtung (104) ist, die dazu ausgebildet ist, das Werkstück entlang einer bogenförmigen Bahn zu befördern, wobei wenigstens ein Teil einer virtuellen Bahn (T) in dem virtuellen Raum, die der bogenförmigen Bahn entspricht, in einem virtuellen Beweglichkeitsbereich, in dem das Robotermodell das Roboterhandmodell bewegen kann, enthalten ist;einen Werkstückmodellanordnungsabschnitt (42), der dazu ausgebildet ist, ein Werkstückmodell (WM) auf dem Fördereinrichtungsmodell in dem virtuellen Raum anzuordnen, wobei das Werkstückmodell ein dreidimensionales Modell des Werkstücks ist;einen Detektionsvorrichtungsmodellanordnungsabschnitt (30), der dazu ausgebildet ist, ein Detektionsvorrichtungsmodell (106M) so in dem virtuellen Raum anzuordnen, dass das Detektionsvorrichtungsmodell das durch das Fördereinrichtungsmodell beförderte Werkstückmodell detektieren kann, wobei das Detektionsvorrichtungsmodell ein dreidimensionales Modell einer Detektionsvorrichtung (106) ist, die dazu ausgebildet ist, das Werkstück zu detektieren;einen Operationsbereichsfestlegeabschnitt (36), der dazu ausgebildet ist, einen Folgeoperationsbereich festzulegen, in dem das Robotermodell das Roboterhandmodell dazu bringt, dem durch das Fördereinrichtungsmodell beförderten Werkstückmodell in dem virtuellen Raum zu folgen; undeinen Simulationsausführungsabschnitt (40), der dazu ausgebildet ist, eine Simulation auszuführen, in der das Fördereinrichtungsmodell das Werkstückmodell fördert, das Detektionsvorrichtungsmodell das beförderte Werkstückmodell detektiert, und das Robotermodell das Roboterhandmodell auf Basis eines durch das Detektionsvorrichtungsmodell erhaltenen virtuellen Detektionsergebnisses des Werkstückmodells dazu bringt, dem Werkstückmodell innerhalb des Folgeoperationsbereichs zu folgen.

Description

  • ALLGEMEINER STAND DER TECHNIK
  • Gebiet der Erfindung
  • Die Erfindung betrifft eine Simulationsvorrichtung, die die Operationen eines Roboters simuliert, und ein Simulationsverfahren.
  • Beschreibung der verwandten Technik
  • Vorrichtungen, die die Operationen eines Roboters, der ein Werkstück ergreift, simulieren, sind bekannt (z.B. JP 2016 - 129 915 A und JP 2014 - 100 780 A ).
  • Doch es besteht ein Bedarf an einer Technologie zum Simulieren der Operationen eines Roboters, der einem Werkstück folgt, wenn das Werkstück durch eine Fördereinrichtung befördert wird, die Werkstücke entlang einer bogenförmigen Bahn befördert.
  • US 2008/0301072 A1 offenbart eine Robotersimulationsvorrichtung, umfassend: einen Anzeigeabschnitt, der Modelle von mindestens einer Transportvorrichtung, einem Objekt und einem Roboter anzeigt, die jeweils an vorbestimmten Positionen angeordnet sind; einen Bewegungszustandsbezeichnungsabschnitt, der eine Richtung und eine Bewegungsgeschwindigkeit des Objekts bezeichnet; einen Abbildungszustandsbezeichnungsabschnitt, der eine relative Position der Kamera in Bezug auf das Objekt und den Abbildungszustand bezeichnet, um ein Standbild des Objekts zu erhalten, das sich in einem Abbildungsbereich befindet; einen Lehrmodellspeicherabschnitt, der ein Lehrmodell des zu vergleichenden Objekts mit dem mit der Kamera erhaltenen Standbild speichert; einen Berechnungsabschnitt für die Greifposition, der eine Greifposition des vom Roboter zu erfassenden Objekts basierend auf einer Position und einer Haltung des Objekts, die durch Vergleichen des Standbilds mit dem Lehrmodell und basierend auf der Richtung und der Bewegungsgeschwindigkeit des Objekts berechnet; und einen Einstellungsabschnitt für die Lehrposition, der eine Lehrposition für den Roboter basierend auf der Greifposition festlegt.
  • DE 10162967 A1 offenbart ein Verfahren zur Steuerung eines Roboters. Die aktuelle Position eines Werkstücks wird nacheinander in einem Fördermittelkoordinatensystem aktualisiert, und der Weg eines Roboters, um dem Werkstück zu folgen, wird durch Transformieren der Position des Werkstücks von dem Fördermittelkoordinatensystem in ein Roboterkoordinatensystem gebildet. US 2008/0013825 A1 offenbart ein Simulationsgerät eines Robotersystems. Das Simulationsgerät zeigt ein dreidimensionales Modell eines Robotersystems auf einem Anzeigegerät an und simuliert ein Robotersystem, das einen Roboter und eine Bildaufnahmekamera enthält. Die Simulationsvorrichtung umfasst eine Anzeigevorrichtung zum Anzeigen eines dreidimensionalen virtuellen Raums auf einem Bildschirm, eine Kamerapositionsbestimmungseinheit zum Bestimmen einer Installationsposition der Bildaufnahmekamera basierend auf einem vom Bediener festgelegten Bildaufnahmebereich, optischen charakteristischen Informationen der verwendeten Bildaufnahmekamera und der erforderlichen Messgenauigkeit, und eine virtuelle Bildgeneratoreinheit zum Erzeugen eines virtuellen Bildes, das von der Bildaufnahmekamera basierend auf der Position der Bildaufnahmekamera im dreidimensionalen virtuellen Raum und den optischen charakteristischen Informationen erhalten werden soll. Dadurch wird die Bestimmung der geeigneten Position der Bildaufnahmekamera und die Einstellung der Erfassungsparameter erleichtert.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Die Aufgabe der vorliegenden Patentanmeldung wird durch die unabhängigen Patentansprüche gelöst. Vorteilhafte Ausführungsformen sind in den abhängigen Patentansprüchen beschrieben.
  • Nach einem Gesichtspunkt der Erfindung ist eine Simulationsvorrichtung dazu ausgebildet, eine Operation eines Roboters mit einer Roboterhand, wodurch die Roboterhand dazu gebracht wird, einem sich bewegenden Werkstück zu folgen, zu simulieren. Die Simulationsvorrichtung weist einen Robotermodellanordnungsabschnitt auf, der dazu ausgebildet ist, ein Robotermodell, das ein Roboterhandmodell aufweist, in einem virtuellen Raum anzuordnen, wobei das Robotermodell ein dreidimensionales Modell des Roboters ist, und das Roboterhandmodell ein dreidimensionales Modell der Roboterhand ist.
  • Die Simulationsvorrichtung weist einen Fördereinrichtungsmodellanordnungsabschnitt auf, der dazu ausgebildet ist, ein Fördereinrichtungsmodell in dem virtuellen Raum anzuordnen, wobei das Fördereinrichtungsmodell ein dreidimensionales Modell einer Fördereinrichtung ist, die dazu ausgebildet ist, das Werkstück entlang einer bogenförmigen Bahn zu befördern. Wenigstens ein Teil einer virtuellen Bahn in dem virtuellen Raum, die der bogenförmigen Bahn entspricht, ist in einem virtuellen Beweglichkeitsbereich, in dem das Robotermodell das Roboterhandmodell bewegen kann, enthalten.
  • Die Simulationsvorrichtung weist einen Werkstückmodellanordnungsabschnitt auf, der dazu ausgebildet ist, ein Werkstückmodell auf dem Fördereinrichtungsmodell in dem virtuellen Raum anzuordnen, wobei das Werkstückmodell ein dreidimensionales Modell des Werkstücks ist; und weist einen Detektionsvorrichtungsmodellanordnungsabschnitt auf, der dazu ausgebildet ist, ein Detektionsvorrichtungsmodell so in dem virtuellen Raum anzuordnen, dass das Detektionsvorrichtungsmodell das durch das Fördereinrichtungsmodell beförderte Werkstückmodell detektieren kann, wobei das Detektionsvorrichtungsmodell ein dreidimensionales Modell einer Detektionsvorrichtung ist, die dazu ausgebildet ist, das Werkstück zu detektieren.
  • Die Simulationsvorrichtung weist einen Operationsbereichsfestlegeabschnitt auf, der dazu ausgebildet ist, einen Folgeoperationsbereich festzulegen, in dem das Robotermodell das Roboterhandmodell dazu bringt, dem durch das Fördereinrichtungsmodell beförderten Werkstückmodell in dem virtuellen Raum zu folgen.
  • Die Simulationsvorrichtung weist einen Simulationsausführungsabschnitt auf, der dazu ausgebildet ist, eine Simulation auszuführen, in der das Fördereinrichtungsmodell das Werkstückmodell befördert, das Detektionsvorrichtungsmodell das beförderte Werkstückmodell detektiert, und das Robotermodell das Roboterhandmodell auf Basis eines durch das Detektionsvorrichtungsmodell erhaltenen virtuellen Detektionsergebnisses des Werkstückmodells dazu bringt, dem Werkstückmodell innerhalb des Folgeoperationsbereichs zu folgen.
  • Der Simulationsausführungsabschnitt kann eine Simulation ausführen, in der das Robotermodell das Werkstückmodell durch das Roboterhandmodell ergreift, wenn das Robotermodell das Roboterhandmodell dazu bringt, dem Werkstückmodell innerhalb des Folgeoperationsbereichs zu folgen, und das ergriffene Werkstückmodell zu einem von dem Fördereinrichtungsmodell verschiedenen Ort in dem virtuellen Raum befördert
  • Der Robotermodellanordnungsabschnitt kann ein zweites Robotermodell mit einem zweiten Roboterhandmodell in dem virtuellen Raum anordnen. Der Simulationsausführungsabschnitt kann eine Simulation ausführen, in der das zweite Robotermodell das Werkstückmodell, das an einem anderen Ort in dem virtuellen Raum als dem Fördereinrichtungsmodell angeordnet ist, durch das zweite Roboterhandmodell ergreift und das ergriffene Werkstückmodell auf das Fördereinrichtungsmodell setzt.
  • Die Simulationsvorrichtung kann ferner mit einem Bahnbestimmungsabschnitt versehen sein, der dazu ausgebildet ist, einen Radius der virtuellen Bahn zu bestimmen. In diesem Fall kann der Simulationsausführungsabschnitt dazu ausgebildet sein, eine Simulation auszuführen, in der das Robotermodell das Roboterhandmodell dazu bringt, dem Werkstück auf Basis des virtuellen Detektionsergebnisses und des Radius zu folgen.
  • Die Simulationsvorrichtung kann ferner mit einem Modellpositionsbestimmungsabschnitt versehen sein, der dazu ausgebildet ist, eine Position des Detektionsvorrichtungsmodells in dem virtuellen Raum auf der Basis des durch den Bahnbestimmungsabschnitt bestimmten Radius so zu bestimmen, dass das Detektionsvorrichtungsmodell über der virtuellen Bahn in dem virtuellen Raum angeordnet wird.
  • Nach einem anderen Gesichtspunkt der Erfindung weist ein Simulationsverfahren zum Simulieren einer Operation eines Roboters mit einer Roboterhand, wodurch die Roboterhand dazu gebracht wird, einem sich bewegenden Werkstück zu folgen, das Anordnen eines Robotermodells, das ein Roboterhandmodell aufweist, in einem virtuellen Raum auf, wobei das Robotermodell ein dreidimensionales Modell des Roboters ist, und das Roboterhandmodell ein dreidimensionales Modell der Roboterhand ist.
  • Das Verfahren weist das Anordnen eines Fördereinrichtungsmodells in dem virtuellen Raum auf, wobei das Fördereinrichtungsmodell ein dreidimensionales Modell einer Fördereinrichtung ist, die dazu ausgebildet ist, das Werkstück entlang einer bogenförmigen Bahn zu befördern. Wenigstens ein Teil einer virtuellen Bahn in dem virtuellen Raum, die der bogenförmigen Bahn entspricht, ist in einem virtuellen Beweglichkeitsbereich, in dem das Robotermodell das Roboterhandmodell bewegen kann, enthalten.
  • Das Verfahren weist das Anordnen eines Werkstückmodells auf dem Fördereinrichtungsmodell in dem virtuellen Raum auf, wobei das Werkstückmodell ein dreidimensionales Modell des Werkstücks ist; und weist das derartige Anordnen eines Detektionsvorrichtungsmodells in dem virtuellen Raum auf, dass das Detektionsvorrichtungsmodell das durch das Fördereinrichtungsmodell beförderte Werkstückmodell detektieren kann, wobei das Detektionsvorrichtungsmodell ein dreidimensionales Modell einer Detektionsvorrichtung ist, die dazu ausgebildet ist, das Werkstück zu detektieren.
  • Das Verfahren weist das Festlegen eine Folgeoperationsbereichs auf, in dem das Robotermodell das Roboterhandmodell dazu bringt, dem durch das Fördereinrichtungsmodell beförderten Werkstückmodell in dem virtuellen Raum zu folgen.
  • Das Verfahren weist das Ausführen einer Simulation auf, in der das Fördereinrichtungsmodell das Werkstückmodell befördert, das Detektionsvorrichtungsmodell das beförderte Werkstückmodell detektiert, und das Robotermodell das Roboterhandmodell auf Basis eines durch das Detektionsvorrichtungsmodell erhaltenen virtuellen Detektionsergebnisses des Werkstückmodells dazu bringt, dem Werkstückmodell innerhalb des Folgeoperationsbereichs zu folgen.
  • Nach noch einem anderen Gesichtspunkt der Erfindung ist ein Computerprogramm dazu ausgebildet, einen Computer dazu zu bringen, das oben beschriebene Verfahren auszuführen.
  • Figurenliste
  • Die oben beschriebenen und andere Aufgaben, Merkmale und Vorteile der Erfindung werden aus der folgenden Beschreibung der Ausführungsformen in Verbindung mit den beiliegenden Zeichnungen offensichtlicher werden, wobei
    • 1 ein Blockdiagramm einer Simulationsvorrichtung nach einer Ausführungsform ist;
    • 2 eine Zeichnung eines Fördersystems nach einer Ausführungsform im realen Raum ist;
    • 3 ein Ablaufdiagramm ist, das ein Beispiel für einen Betriebsablauf der in 1 dargestellten Simulationsvorrichtung veranschaulicht;
    • 4 ein Beispiel für ein Bild des virtuellen Raums bei Ausführung von Schritt S1 in 3 veranschaulicht;
    • 5 ein Beispiel für ein Bild des virtuellen Raums bei Ausführung von Schritt S2 in 3 veranschaulicht;
    • 6 ein Beispiel für ein Bild des virtuellen Raums bei Ausführung von Schritt S3 in 3 veranschaulicht;
    • 7 eine Zeichnung zur Erklärung von Schritt S4 in 3 ist und eine Zeichnung ist, in der der in 6 dargestellte virtuelle Raum von der positiven z-Achsen-Richtung eines Fördereinrichtungskoordinatensystemmodells CCM her gesehen wird;
    • 8 eine Zeichnung zur Erklärung von Schritt S5 in 3 ist und dem in 7 dargestellten Bild des virtuellen Raums entspricht;
    • 9 eine Zeichnung zur Erklärung von Schritt S6 in 3 ist und dem in 6 dargestellten Bild des virtuellen Raums entspricht;
    • 10 eine Zeichnung zur Erklärung von Schritt S6 in 3 ist und dem in 8 dargestellten Bild des virtuellen Raums entspricht;
    • 11 eine Zeichnung zur Erklärung von Schritt S7 in 3 ist und dem in 9 dargestellten Bild des virtuellen Raums entspricht;
    • 12 eine Zeichnung zur Erklärung von Schritt S7 in 3 ist und dem in 10 dargestellten Bild des virtuellen Raums entspricht;
    • 13 eine Zeichnung zur Erklärung von Schritt S8 in 3 ist und dem in 11 dargestellten Bild des virtuellen Raums entspricht;
    • 14 ein Beispiel für den virtuellen Raum nach einer anderen Ausführungsform veranschaulicht; und
    • 15 ein Beispiel für den virtuellen Raum nach noch einer anderen Ausführungsform veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Nachstehend werden Ausführungsformen der Erfindung unter Bezugnahme auf die Zeichnungen ausführlich beschrieben. Es ist zu beachten, dass in den verschiedenen Ausführungsformen, die nachstehend beschrieben sind, gleichen Elementen die gleichen Bezugszeichen zugeordnet sind und auf ihre wiederholte Beschreibung verzichtet werden wird.
  • Unter Bezugnahme auf 1 wird eine Simulationsvorrichtung 10 nach einer Ausführungsform beschrieben. Die Simulationsvorrichtung 10 weist eine CPU 12, einen Systemspeicher 14, einen Arbeitsspeicher 16, eine Ein/Ausgangsschnittstelle (E/A-Schnittstelle) 18, einen Dateneingabeabschnitt 20 und eine Anzeige 22 auf.
  • Die CPU 12 ist über einen Bus 24 kommunikationsfähig mit dem Systemspeicher 14, dem Arbeitsspeicher 16 und der E/A-Schnittstelle 18 verbunden und führt unter Kommunikation mit diesen Elementen die folgenden verschiedenen Prozesse aus.
  • Der Systemspeicher 14 ist ein nichtflüchtiger Speicher, der elektrisch löschbar und beschreibbar ist, und besteht aus einem EEPROM (eingetragenes Warenzeichen) oder dergleichen. Der Systemspeicher 14 zeichnet Konstante, Variable, Einstellwerte, Programme und dergleichen, die für die Ausführung der später beschriebenen Simulation nötig sind, auf, damit sie nicht verloren gehen, wenn die Simulationsvorrichtung 10 abgeschaltet wird.
  • Der Arbeitsspeicher 16 speichert Daten, die für die CPU 12 zur Ausführung der verschiedenen Prozesse nötig sind, vorübergehend. Zudem werden die Konstanten, Variablen, Einstellwerte, Programme und dergleichen, die in dem Systemspeicher 14 aufgezeichnet sind, passend in den Arbeitsspeicher 16 geladen, und macht die CPU 12 von den in den Arbeitsspeicher 16 geladenen Daten Gebrauch, um die verschiedenen Prozesse auszuführen.
  • Die E/A-Schnittstelle 18 ist kommunikationsfähig an den Dateneingabeabschnitt 20 angeschlossen und erhält gemäß einem Befehl von der CPU 12 Daten von dem Dateneingabeabschnitt 20. Zudem ist die E/A-Schnittstelle 18 kommunikationsfähig an die Anzeige 22 angeschlossen und sendet gemäß einem Befehl von der CPU 12 Bilddaten an die Anzeige 22.
  • Die E/A-Schnittstelle 18 besteht z.B. aus einem Ethernet-Anschluss oder einem USB-Anschluss und kann drahtgebunden mit der Anzeige 22 und dem Dateneingabeabschnitt 20 kommunizieren. Alternativ kann die E/A-Schnittstelle 20 z.B. über WiFi oder ein anderes drahtloses lokales Netzwerk drahtlos mit der Anzeige 22 und dem Dateneingabeabschnitt 20 kommunizieren.
  • Der Dateneingabeabschnitt 20 besteht z.B. aus einer Tastatur, einem Touchpanel oder einer Maus, und ein Benutzer kann durch Betätigen des Dateneingabeabschnitts 20 Daten eingeben. Der Dateneingabeabschnitt 20 sendet die Eingabedaten über die E/A-Schnittstelle 18 an die CPU 12.
  • Die Anzeige 22 besteht z.B. aus einer Kathodenstrahlröhre, einer Flüssigkristallanzeige (LCD) oder einer organischen EL-Anzeige. Die Anzeige 22 erhält Bilddaten, die von der E/A-Schnittstelle 18 gesendet werden, und zeigt sie als für einen Benutzer sichtbares Bild an.
  • Die Simulationsvorrichtung 10 dient zum Simulieren einer Operation eines Werkstückfördersystems, die eine Roboterhand dazu bringt, einem sich bewegenden Werkstück zu folgen und es zu ergreifen.
  • Nachstehend wird unter Bezugnahme auf 2 ein Beispiel für ein Werkstückfördersystem 100 im realen Raum beschrieben. Das Werkstückfördersystem 100 weist einen Roboter 102, eine Fördereinrichtung 104 und eine Detektionsvorrichtung 106 auf.
  • Der Roboter ist ein vertikaler Knickarmroboter und weist eine Roboterbasis 108, einen Drehrumpf 110, einen Roboterarm 112, ein Handgelenk 114 und eine Roboterhand 116 auf. Die Roboterbasis 108 ist auf dem Boden einer Arbeitszelle im realen Raum fixiert.
  • Der Drehrumpf 110 ist drehbar an der Roboterbasis 108 bereitgestellt. Der Roboterarm 112 weist einen Oberarm 118, der drehbar mit dem Drehrumpf 110 verbunden ist, und einen Unterarm 120, der drehbar mit einem distalen Ende des Oberarms 118 verbunden ist, auf. Das Handgelenk 114 ist mit einem distalen Ende des Unterarms 120 verbunden und trägt die Roboterhand 116 so, dass sich diese um drei Achsen dreht.
  • Die Roboterhand 116 weist eine Handbasis 122, die mit dem Handgelenk 114 verbunden ist, und mehrere Finger 124, die so an der Handbasis 122 bereitgestellt sind, dass sie sich öffnen und schließen, auf. Die Roboterhand 116 ergreift ein Werkstück Wr lösbar.
  • Der Roboter 102 weist ein Roboterkoordinatensystem CR auf und betätigt jede Komponente des Roboters 102 unter Verwendung des Roboterkoordinatensystems CR als Standard. Zum Beispiel ist die x-Achse des Roboterkoordinatensystems CR so angeordnet, dass sie zu der senkrechten Richtung im realen Raum parallel verläuft, wobei sich die Drehtrommel 110 um die z-Achse des Roboterkoordinatensystems CR dreht.
  • Für die Roboterhand 116 ist ein Werkzeugkoordinatensystem CT festgelegt. Dieses Werkzeugkoordinatensystem CT ist ein Koordinatensystem, das die Position und die Lage der Roboterhand 116 in dem Roboterkoordinatensystem CR definiert.
  • Zum Beispiel ist das Werkzeugkoordinatensystem CT so festgelegt, dass der Ursprung des Werkzeugkoordinatensystems CT zwischen den Fingern 124 der Roboterhand 116 positioniert ist, und die z-Achse des Werkzeugkoordinatensystems CT orthogonal zu der Öffnungs- und Schließrichtung der Finger 124 verläuft.
  • Der Roboter 102 betätigt den Drehrumpf 110, den Roboterarm 112 und das Handgelenk 14 in dem Roboterkoordinatensystem CR so, dass die Position und die Lage der Roboterhand 116 mit der durch das Werkzeugkoordinatensystem CT definierten Position und Lage übereinstimmen.
  • Die Fördereinrichtung 104 weist eine Basis 126 und eine Drehscheibe 128 auf. Die Basis 126 ist auf dem Boden der Arbeitszelle im realen Raum fixiert. Die Drehscheibe 128 ist drehbar an der Basis 126 angebracht.
  • Die Fördereinrichtung 104 weist ein Fördereinrichtungskoordinatensystem CC auf. Beispielsweise ist die z-Achse des Fördereinrichtungskoordinatensystems CC parallel zu der senkrechten Richtung im realen Raum angeordnet, wobei die Fördereinrichtung 104 die Drehscheibe 128 um die z-Achse des Fördereinrichtungskoordinatensystems CC in die Richtung dreht, die in 2 durch den Pfeil A angegeben ist. Das Werkstück Wr wird auf die Drehscheibe 128 gesetzt, und die Fördereinrichtung 104 befördert das auf die Drehscheibe 128 gesetzte Werkstück Wr entlang der bogenförmigen Bahn.
  • Die Detektionsvorrichtung 106 ist über (d.h., in der positiven z-Achsen-Richtung des Fördereinrichtungskoordinatensystems CC) der Drehscheibe 128 bereitgestellt und kann das durch die Drehscheibe 128 beförderte Werkstück Wr detektieren. Die Detektionsvorrichtung 106 ist z.B. ein dreidimensionaler optischer Sensor, der das Werkstück Wr aufnimmt, um das Bild des Werkstücks Wr zu erfassen.
  • Die Detektionsvorrichtung 106 weist ein Sensorkoordinatensystem CS auf. Zum Beispiel ist die positive z-Achsen-Richtung des Sensorkoordinatensystems CS so festgelegt, dass sie mit der Sichtlinienrichtung der Detektionsvorrichtung 106 und mit der senkrecht abwärts gerichteten Richtung im realen Raum übereinstimmt.
  • Als nächstes wird der Betrieb des Werkstückfördersystems 100 beschrieben werden. Zuerst wird das Werkstück Wr an einer vorherbestimmten Zufuhrposition auf die angehaltene Drehscheibe 128 gesetzt. Die Zufuhrposition ist in der Umdrehungsrichtung der Drehscheibe 128 stromaufwärts von der Detektionsvorrichtung 106 eingerichtet.
  • Als nächstes dreht die Fördereinrichtung 104 die Drehscheibe 128, wodurch das auf der Drehscheibe 128 befindliche Werkstück Wr in die Richtung A gedreht wird.
  • Dann detektiert die Detektionsvorrichtung 106 das auf der Drehscheibe 128 befindliche Werkstück Wr. Insbesondere nimmt die Detektionsvorrichtung 106 das Werkstück Wr auf der Drehscheibe 128 auf, um das Bild des Werkstücks Wr zu erfassen.
  • Dann erlangt der Roboter 102 auf Basis des detektierten Bilds des Werkstücks Wr, das durch die Detektionsvorrichtung 106 erlangt wurde, die Position und die Lage des Werkstücks Wr in dem Roboterkoordinatensystem CR. Dann legt der Roboter 102 das Werkzeugkoordinatensystem CT auf Basis der erlangten Position und Lage so fest, dass der Ursprung des Werkzeugkoordinatensystems CT fortwährend an einer vorherbestimmten Position an dem beförderten Werkstück Wr (z.B. der Mittenposition des Werkstücks Wr) angeordnet ist.
  • Der Roboter betätigt den Drehrumpf 110, den Roboterarm 112 und das Handgelenk 114 so, dass die Roboterhand 116 an der Position und in der Lage, die durch das Werkzeugkoordinatensystem CT definiert werden, angeordnet wird. Auf diese Weise bringt der Roboter 102 die Roboterhand 116 dazu, dem beförderten Werkstück Wr zu folgen.
  • Dann schließt der Roboter 102 die Finger 124, um das Werkstück Wr mit den Fingern 124 zu ergreifen. Dadurch wird das beförderte Werkstück Wr mit der Roboterhand 116 ergriffen.
  • Die Simulationsvorrichtung 10 nach dieser Ausführungsform simuliert den wie oben beschriebenen Betrieb des Werkstückfördersystems 100.
  • Als nächstes wird unter Bezugnahme auf 3 der Betrieb der Simulationsvorrichtung 10 beschrieben werden. Es ist zu beachten, dass in dieser Beschreibung bei Bezeichnung einer Komponente des Werkstückfördersystems im realen Raum als „XXX“ das dreidimensionale Modell in dem virtuellen Raum dieser Komponente als „XXX-Modell“ bezeichnet wird. Zum Beispiel wird das dreidimensionale Modell der „Roboterhand“ im realen Raum als „Roboterhandmodell“ bezeichnet.
  • Der in 3 veranschaulichte Ablauf wird zum Beispiel begonnen, wenn ein Benutzer den Dateneingabeabschnitt 20 betätigt, um einen Simulationsstartbefehl einzugeben, und die CPU 12 diesen Simulationsstartbefehl von dem Dateneingabeabschnitt 20 erhält.
  • Es ist zu beachten, dass die CPU 12 die in 3 veranschaulichten Schritte S1 bis S8 gemäß einem Computerprogramm ausführen kann. In diesem Fall kann das Computerprogramm vorab in dem Systemspeicher 14 gespeichert sein.
  • In Schritt S1 ordnet die CPU 12 ein Robotermodell in dem virtuellen Raum an. In dem Systemspeicher 14 sind vorab mehrere Robotermodelle von mehreren Arten von Robotern einschließlich des oben genannten Roboters 102 gespeichert.
  • Als ein Beispiel erzeugt die CPU 12 Bilddaten, in denen die mehreren Arten von Robotermodellen, die in dem Systemspeicher 14 gespeichert sind, in der Form einer Liste dargestellt sind, und stellt sie diese an der Anzeige 22 dar. Der Benutzer betätigt den Dateneingabeabschnitt 20 und wählt ein gewünschtes Robotermodell aus der an der Anzeige 22 dargestellten Liste.
  • Nachstehend wird ein Fall, in dem der Benutzer ein Robotermodell 102M (4) des oben genannten Roboters 102 wählt, beschrieben werden. Der Dateneingabeabschnitt 20 sendet die durch den Benutzer eingegebenen Daten über die E/A-Schnittstelle 18 an die CPU 12.
  • Als Reaktion auf die erhaltenen Eingabedaten liest die CPU 12 das Robotermodell 102M aus den mehreren Arten von Robotermodellen, die in dem Systemspeicher 14 gespeichert sind, und ordnet das Robotermodell 102M in dem virtuellen Raum an. Dann erzeugt die CPU 12 den virtuellen Raum als Bilddaten und stellt ihn an der Anzeige 22 dar.
  • 4 veranschaulicht ein Beispiel für ein auf diese Weise an der Anzeige 22 dargestelltes Bild des virtuellen Raums 200. In dem virtuellen Raum 200, der in 4 veranschaulicht ist, ist das Robotermodell 102M, das ein Roboterbasismodell 108M, ein Drehrumpfmodell 110M, ein Roboterarmmodell 112M, ein Handgelenkmodell 114M und ein Roboterhandmodell 116M enthält, angeordnet.
  • Der Systemspeicher 14 speichert verschiedene virtuelle Betriebsparameter, die mit dem Robotermodell 102M verbunden sind. Diese virtuellen Betriebsparameter sind Parameter, die Betriebsparametern, welche zum Betrieb des Roboters 102 im realen Raum nötig sind, entsprechen.
  • Zum Beispiel enthalten die virtuellen Betriebsparameter ein Roboterkoordinatensystemmodell CRM in dem virtuellen Raum 200, das dem oben genannten Roboterkoordinatensystem CR entspricht, ein Werkzeugkoordinatensystemmodell CTM in dem virtuellen Raum 200, das dem oben genannten Werkzeugkoordinatensystem CT entspricht, und einen virtuellen Beweglichkeitsbereich.
  • Der virtuelle Beweglichkeitsbereich ist ein Bereich in dem virtuellen Raum 200, der einem Beweglichkeitsbereich, in dem der Roboter 102 die Roboterhand 116 im realen Raum bewegen kann (d.h., einem Bereich, in dem das Werkzeugkoordinatensystem CT festgelegt werden kann), entspricht.
  • Wie in 4 veranschaulicht ordnet die CPU 12 das Roboterkoordinatensystemmodell CRM und das Werkzeugkoordinatensystemmodell CTM zusammen mit dem Robotermodell 102M in dem virtuellen Raum 200 an. Daher wirkt die CPU 12 bei dieser Ausführungsform als Robotermodellanordnungsabschnitt 26 (1), der dazu ausgebildet ist, das Robotermodell 102M in dem virtuellen Raum 200 anzuordnen.
  • In Schritt S2 ordnet die CPU 12 ein Fördereinrichtungsmodell in dem virtuellen Raum 200 an. In dem Systemspeicher 14 sind vorab mehrere Arten von Fördereinrichtungsmodellen von mehreren Arten von Fördereinrichtungen einschließlich der oben genannten Fördereinrichtung 104 gespeichert.
  • Als ein Beispiel erzeugt die CPU 12 Bilddaten, in denen die mehreren Arten von Fördereinrichtungsmodellen, die in dem Systemspeicher 14 gespeichert sind, in der Form einer Liste dargestellt sind, und stellt sie diese an der Anzeige 22 dar. Der Benutzer betätigt den Dateneingabeabschnitt 20 und wählt ein gewünschtes Fördereinrichtungsmodell aus der an der Anzeige 22 dargestellten Liste. Nachstehend wird ein Fall, in dem der Benutzer ein Fördereinrichtungsmodell 104M (5) der oben genannten Fördereinrichtung 104 wählt, beschrieben werden. Der Dateneingabeabschnitt 20 sendet die durch den Benutzer eingegebenen Daten über die E/A-Schnittstelle 18 an die CPU 12.
  • Als Reaktion auf die erhaltenen Eingabedaten liest die CPU 12 das Fördereinrichtungsmodell 104M aus den mehreren Arten von Fördereinrichtungsmodellen, die in dem Systemspeicher 14 gespeichert sind, und ordnet das Fördereinrichtungsmodell 104M in dem virtuellen Raum 200 an.
  • Dabei ordnet die CPU 12 das Fördereinrichtungsmodell 104M in dem virtuellen Raum 200 so an, dass der gesamte Bereich eines Drehscheibenmodells 128M in dem virtuellen Beweglichkeitsbereich des Robotermodells 102M enthalten ist.
  • Zudem ordnet die CPU 12 ein Fördereinrichtungskoordinatensystemmodell CCM, das dem oben genannten Fördereinrichtungskoordinatensystem CC entspricht, in dem virtuellen Raum 200 an. Auf diese Weise wird wie in 5 veranschaulicht das Fördereinrichtungsmodell 104M, das ein Basismodell 126M und das Drehscheibenmodell 128M aufweist, in dem virtuellen Raum 200 angeordnet.
  • Somit wirkt die CPU 12 bei dieser Ausführungsform als Fördereinrichtungsmodellanordnungsabschnitt 28 (1), der dazu ausgebildet ist, das Fördereinrichtungsmodell 104M in dem virtuellen Raum 200 anzuordnen.
  • Es ist zu beachten, dass die CPU 12 das Fördereinrichtungsmodell 104M und das Fördereinrichtungskoordinatensystemmodell CCM in dem virtuellen Raum 200 nach dem Anordnen des Fördereinrichtungsmodells 104M in dem virtuellen Raum 200 als Reaktion auf Eingabedaten von dem Dateneingabeabschnitt 20 bewegen kann.
  • Zum Beispiel betätigt der Benutzer nach dem Anordnen des Fördereinrichtungsmodells 104M in dem virtuellen Raum 200 den Dateneingabeabschnitt 20 (z.B. eine Maus), um das Fördereinrichtungsmodell 104M, das an der Anzeige 22 dargestellt wird, zu bewegen (z.B. zu ziehen und abzulegen).
  • Die CPU 12 bewegt das Fördereinrichtungsmodell 104M in dem virtuellen Raum 200 gemäß den durch den Benutzer eingegebenen Eingabedaten von dem Dateneingabeabschnitt 20. Dabei kann die CPU 12 die Bewegung des Fördereinrichtungsmodells 104M untersagen oder ein Warnbild an der Anzeige 22 darstellen, wenn die Position des bewegten Fördereinrichtungsmodells 104 außerhalb des virtuellen Beweglichkeitsbereichs des Robotermodells 102M liegt.
  • In Schritt S3 ordnet die CPU 12 ein Detektionsvorrichtungsmodell in dem virtuellen Raum 200 an. In dem Systemspeicher 14 sind vorab Detektionsvorrichtungsmodelle von mehreren Arten von Detektionsvorrichtungen einschließlich der oben genannten Detektionsvorrichtung 106 gespeichert.
  • Als ein Beispiel erzeugt die CPU 12 Bilddaten, in denen die mehreren Arten von Detektionsvorrichtungsmodellen, die in dem Systemspeicher 14 gespeichert sind, in der Form einer Liste dargestellt sind, und stellt sie diese an der Anzeige 22 dar. Der Benutzer betätigt den Dateneingabeabschnitt 20 und wählt ein gewünschtes Detektionsvorrichtungsmodell aus der an der Anzeige 22 dargestellten Liste.
  • Nachstehend wird ein Fall, in dem der Benutzer ein Detektionsvorrichtungsmodell 106M (6) der oben genannten Detektionsvorrichtung 106 wählt, beschrieben werden. Der Dateneingabeabschnitt 20 sendet die durch den Benutzer eingegebenen Daten über die E/A-Schnittstelle 18 an die CPU 12.
  • Als Reaktion auf die erhaltenen Eingabedaten liest die CPU 12 das Detektionsvorrichtungsmodell 106M aus den mehreren Arten von Detektionsvorrichtungsmodellen, die in dem Systemspeicher 14 gespeichert sind, und ordnet das Detektionsvorrichtungsmodell 106M in dem virtuellen Raum 200 an.
  • Dabei ordnet die CPU 12 das Detektionsvorrichtungsmodell 106M in dem virtuellen Raum 200 so an, dass das Detektionsvorrichtungsmodell 106M über (d.h., in der positiven z-Achsen-Richtung des Fördereinrichtungskoordinatensystems CCM) des Drehscheibenmodells 128M positioniert ist.
  • Zudem ordnet die CPU 12 ein Sensorkoordinatensystemmodell CSM, das dem oben genannten Sensorkoordinatensystem CS entspricht, in dem virtuellen Raum 200 an. Auf diese Weise wird wie in 6 veranschaulicht das Detektionsvorrichtungsmodell 106M in dem virtuellen Raum 200 angeordnet.
  • Somit wirkt die CPU 12 bei dieser Ausführungsform als Detektionsvorrichtungsmodellanordnungsabschnitt 30 (1), der dazu ausgebildet ist, das Detektionsvorrichtungsmodell 106M in dem virtuellen Raum 200 anzuordnen.
  • Als Ergebnis dieses Schritts S3 ist in dem virtuellen Raum 200 ein Fördersystemmodell 100M, das das Robotermodell 102M, das Fördereinrichtungsmodell 104M und das Detektionsvorrichtungsmodell 106M aufweist, aufgebaut.
  • In Schritt S4 bestimmt die CPU 12 einen Radius R einer virtuellen Bahn T (7). Die virtuelle Bahn T ist eine Bahn in dem virtuellen Raum 200, die der bogenförmigen Bahn im realen Raum, auf der die Fördereinrichtung 104 das Werkstück Wr durch die Drehscheibe 128 befördert, entspricht.
  • Mit anderen Worten ist die virtuelle Bahn T eine Bahn in dem virtuellen Raum 200, auf der das Fördereinrichtungsmodell 104M das auf dem Drehscheibenmodell 128M befindliche Werkstückmodell durch das Drehscheibenmodell 128M befördert, wenn der später beschriebene Schritt S8 ausgeführt wird.
  • Die virtuelle Bahn T definiert eine Position auf dem Drehscheibenmodell 128M, wenn das Werkstückmodell in dem später beschriebenen Schritt S8 auf das Drehscheibenmodell 128M in dem virtuellen Raum 200 gesetzt wird.
  • Als ein Beispiel erzeugt die CPU 12 Eingabebilddaten, die dem Benutzer ermöglichen, den Radius R der virtuellen Bahn T einzugeben, und stellt diese an der Anzeige 22 dar. Der Benutzer betätigt den Dateneingabeabschnitt 20 und gibt an dem Eingabebild, das an der Anzeige 22 dargestellt wird, einen gewünschten Radius Rein.
  • Der Dateneingabeabschnitt 20 sendet die durch den Benutzer eingegebenen Eingabedaten hinsichtlich des Radius R über die E/A-Schnittstelle 18 an die CPU 12. Die CPU 12 bestimmt den Radius R der virtuellen Bahn T gemäß den erhaltenen Eingabedaten. Als Ergebnis wird der Radius R der virtuellen Bahn T wie in 7 veranschaulicht bestimmt. Bei dieser Ausführungsform entspricht der Radius R dem Radius eines Kreises, der um die z-Achse des Fördereinrichtungskoordinatensystemmodells CCM zentriert ist.
  • Somit wirkt die CPU 12 bei dieser Ausführungsform als Bahnbestimmungsabschnitt 32 (1), der dazu ausgebildet ist, den Radius R der virtuellen Bahn T zu bestimmen.
  • Es ist zu beachten, dass der Radius R der virtuellen Bahn T als Abstand (z.B. 10 mm) von dem äußeren Umfangsrand des Drehscheibenmodells 128M definiert werden kann. In diesem Fall erzeugt die CPU 12 Eingabebilddaten, die dem Benutzer ermöglichen, den Abstand von dem äußeren Umfangsrand des Drehscheibenmodells 128M einzugeben, und stellt diese an der Anzeige 22 dar. Die CPU 12 bestimmt den Radius R der virtuellen Bahn T gemäß dem eingegebenen Abstand von dem äußeren Umfangsrand.
  • In Schritt S5 bestimmt die CPU 12 die Position des Detektionsvorrichtungsmodells 106. Insbesondere bestimmt die CPU 12 die Position des Detektionsvorrichtungsmodells 106M, das in dem oben genannten Schritt S3 in dem virtuellen Raum 200 angeordnet wurde, so, dass die z-Achse seines Sensorkoordinatensystemmodells CSM über (d.h., in der positiven z-Achsen-Richtung) der in dem oben genannten Schritt S4 bestimmten virtuellen Bahn T angeordnet ist.
  • Dann bewegt die CPU 12 wie in 8 veranschaulicht die Position des Detektionsvorrichtungsmodells 106M in dem virtuellen Raum 200 von der Position zur Zeit des Abschlusses von Schritt S3, die in 8 durch eine gestrichelte Linie 106M' dargestellt ist. Als Ergebnis wird das Detektionsvorrichtungsmodell 106M in Bezug auf das Drehscheibenmodell 128M so positioniert, dass die z-Achse seines Sensorkoordinatensystemmodells CSM über der virtuellen Bahn T angeordnet ist.
  • Somit wirkt die CPU 12 bei dieser Ausführungsform als Modellpositionsbestimmungsabschnitt 34 (1), der dazu ausgebildet ist, die Position des Detektionsvorrichtungsmodells 106M zu bestimmen.
  • In Schritt S6 legt die CPU 12 einen Folgeoperationsbereich in dem virtuellen Raum 200 fest. Der Folgeoperationsbereich ist ein Operationsbereich in dem virtuellen Raum 200, in dem das Robotermodell 102M das Roboterhandmodell 116M dazu bringt, dem durch das Fördereinrichtungsmodell 104M beförderten Werkstückmodell zu folgen, wenn der später beschriebene Schritt S8 ausgeführt wird.
  • Als ein Beispiel erzeugt die CPU 12 Eingabebilddaten, die dem Benutzer ermöglichen, einen Winkel θ (10), der den Folgeoperationsbereich definiert, einzugeben, und stellt diese an der Anzeige 22 dar. Der Benutzer betätigt den Dateneingabeabschnitt 20 und gibt an dem an der Anzeige 22 dargestellten Eingabebild einen gewünschten Winkel θ ein.
  • Der Dateneingabeabschnitt 20 sendet die durch den Benutzer eingegebenen Eingabedaten des Winkels θ über die E/A-Schnittstelle 18 an die CPU 12. Die CPU 12 legt gemäß dem erhaltenen Eingabedaten an der in Schritt S4 bestimmten virtuellen Bahn T ein stromaufwärts gelegenes Ende 202 und ein stromabwärts gelegenes Ende 204 des Folgeoperationsbereichs fest.
  • Dabei ist das stromaufwärts befindliche Ende 202 stromabwärts von dem Detektionsvorrichtungsmodell 106M angeordnet. Als Ergebnis wird wie in 9 und 10 veranschaulicht der Folgeoperationsbereich als der Bereich zwischen dem stromaufwärts befindlichen Ende 202 und dem stromabwärts befindlichen Ende 204 festgelegt.
  • Somit wirkt die CPU 12 bei dieser Ausführungsform als Operationsbereichsfestlegeabschnitt 36 (1), der dazu ausgebildet ist, den Folgeoperationsbereich in dem virtuellen Raum 200 festzulegen.
  • Es ist zu beachten, dass die CPU 12 nach der Festlegung des Folgeoperationsbereichs das stromaufwärts befindliche Ende 202 oder das stromabwärts befindliche Ende 204 des Folgeoperationsbereichs in dem virtuellen Raum 200 als Reaktion auf Eingabedaten von dem Dateneingabeabschnitt 20 bewegen kann.
  • Zum Beispiel betätigt der Benutzer nach der Festlegung des Folgeoperationsbereichs den Dateneingabeabschnitt 20 (z.B. eine Maus), um das stromaufwärts befindliche Ende 202 oder das stromabwärts befindliche Ende 204, das an der Anzeige 22 dargestellt wird, zu bewegen (z.B. zu ziehen und abzulegen). Die CPU 12 bewegt das stromaufwärts befindliche Ende 202 oder das stromabwärts befindliche Ende 204 als Reaktion auf die durch den Benutzer eingegebenen Eingabedaten von dem Dateneingabeabschnitt 20.
  • Es ist zu beachten, dass die CPU 12 die Bewegung des stromaufwärts befindlichen Endes 202 oder des stromabwärts befindlichen Endes 204 untersagen kann oder ein Warnbild an der Anzeige 22 darstellen kann, wenn die Position des Detektionsvorrichtungsmodells 106M in der x-y-Ebene des Fördereinrichtungskoordinatensystemmodells CCM als Ergebnis des Bewegens des stromaufwärts befindlichen Endes 202 oder des stromabwärts befindlichen Endes 204 als Reaktion auf die Eingabedaten von dem Benutzer innerhalb des Folgeoperationsbereichs liegt.
  • In Schritt S7 bestimmt die CPU 12 ein Zufuhrverfahren für die Zufuhr des Werkstückmodells in dem virtuellen Raum 200, wenn der später beschriebene Schritt S8 ausgeführt wird. Parameter im Zusammenhang mit dem Zufuhrverfahren für das Werkstückmodell beinhalten z.B. einen Zufuhrbereich des Werkstückmodells, eine Beförderungsgeschwindigkeit des Werkstückmodells, die Anzahl der Werkstückmodelle, die geliefert werden soll, einen Abstand zwischen Werkstückmodellen, und Versatzausmaße der Position und der Lage des Werkstückmodells.
  • Der Zufuhrbereich des Werkstückmodells ist ein Bereich, in dem das Fördereinrichtungsmodell 104M das Werkstückmodell in dem virtuellen Raum 200 befördert, wenn der später beschriebene Schritt S8 ausgeführt wird, und ist durch ein auf der virtuellen Bahn T angeordnetes stromaufwärts befindliches Ende und stromabwärts befindliches Ende definiert.
  • Das stromaufwärts befindliche Ende des Zufuhrbereichs definiert eine Position, an der das Werkstückmodell in Schritt S8 auf das Drehscheibenmodell 128M gesetzt wird. Das stromabwärts befindliche Ende des Zufuhrbereichs definiert einen Endpunkt eines Pfads, auf dem das Fördereinrichtungsmodell 104M das Werkstückmodell in dem virtuellen Raum 200 befördert. Als ein Beispiel ist der Zufuhrbereich des Werkstückmodells durch einen Winkel (z.B. 180 °) definiert.
  • Die Beförderungsgeschwindigkeit des Werkstückmodells ist eine Geschwindigkeit, mit der das Fördereinrichtungsmodell 104M das Werkstückmodell befördert, wenn der folgende Schritt S8 ausgeführt wird, und entspricht einer Umdrehungsgeschwindigkeit des Drehscheibenmodells 128M.
  • Die Anzahl der Werkstückmodelle, die geliefert werden soll, ist die gesamte Anzahl der Werkstückmodelle, die auf das Drehscheibenmodell 128M geliefert werden, wenn der folgende Schritt S8 ausgeführt wird. Der Abstand zwischen Werkstückmodellen ist ein Abstand zwischen zwei benachbarten Werkstückmodellen, wenn diese in dem nachstehend beschriebenen Schritt S8 auf das Drehscheibenmodell 128M geliefert werden.
  • Das Versatzausmaß der Position des Werkstückmodells ist ein Ausmaß des Versatzes von der virtuellen Bahn T (z.B. ±10 mm von der virtuellen Bahn T in der radialen Richtung), wenn das Werkstückmodell in dem folgenden Schritt S8 auf das Drehscheibenmodell 128M geliefert wird.
  • Das Versatzausmaß der Lage des Werkstückmodells ist ein Ausmaß des Versatzes (z.B. ±5 °) der Lage des Werkstückmodells (z.B. der Winkel der Längsrichtung des Werkstückmodells in Bezug auf die y-Achse des Fördereinrichtungskoordinatensystemmodells CCM bei Betrachtung des Werkstückmodells aus der z-Achsen-Richtung des Fördereinrichtungskoordinatensystemmodells CCM), wenn das Werkstückmodell in dem folgenden Schritt S8 auf das Drehscheibenmodell 128M geliefert wird.
  • Als ein Beispiel erzeugt die CPU 12 Eingabebilddaten, die dem Benutzer ermöglichen, die Parameter im Zusammenhang mit dem Zufuhrverfahren des Werkstückmodells (d.h., den Zufuhrbereich des Werkstückmodells, die Beförderungsgeschwindigkeit des Werkstückmodells, die Anzahl der Werkstückmodelle, die geliefert werden soll, den Abstand zwischen Werkstückmodellen, und die Versatzausmaße der Position und der Lage des Werkstückmodells) einzugeben, und stellt diese an der Anzeige 22 dar.
  • Der Benutzer betätigt den Dateneingabeabschnitt 20 und gibt einen gewünschten Parameter in das an der Anzeige 22 dargestellte Eingabebild ein. Der Dateneingabeabschnitt 22 sendet die durch den Benutzer eingegebenen Eingabedaten über die E/A-Schnittstelle 18 an die CPU 12.
  • Die CPU 12 bestimmt das Zufuhrverfahren des Werkstückmodells bei Ausführung des folgenden Schritts S8 gemäß den Parametern, die in den erhaltenen Eingabedaten enthalten sind. Wenn der Benutzer zum Beispiel „180 °“ als Zufuhrbereich des Werkstückmodells eingibt, wie in 11 und 12 veranschaulicht ist, legt die CPU 12 das stromaufwärts befindliche Ende 206 und das stromabwärts befindliche Ende 208 des Zufuhrbereichs auf der virtuellen Bahn T mit dem in Schritt S4 bestimmten Radius R fest.
  • Dabei wird das stromaufwärts befindliche Ende 206 stromaufwärts von dem stromaufwärts befindlichen Ende 202 des Folgeoperationsbereichs angeordnet, während das stromabwärts befindliche Ende 208 des Zufuhrbereichs stromabwärts von dem stromabwärts befindlichen Ende 204 des Folgeoperationsbereichs angeordnet wird. Auf diese Weise wird wie in 9 und 10 veranschaulicht der Zufuhrbereich des Werkstückmodells als Bereich zwischen dem stromaufwärts befindlichen Ende 206 und dem stromabwärts befindlichen Ende 208 festgelegt.
  • Entsprechend legt die CPU 12 die verschiedenen Parameter im Zusammenhang mit dem Zufuhrverfahren des Werkstückmodells, die in dem folgenden Schritt S8 verwendet werden sollen, wie etwa die Beförderungsgeschwindigkeit des Werkstückmodells, die Anzahl der Werkstückmodelle, die geliefert werden soll, den Abstand zwischen Werkstückmodellen, und die Versatzausmaße der Position und der Lage des Werkstückmodells, gemäß durch den Benutzer eingegebenen Eingabedaten fest.
  • Somit wirkt die CPU 12 bei dieser Ausführungsform als Zufuhrbestimmungsabschnitt 38 (1), der dazu ausgebildet ist, das Zufuhrverfahren zur Zufuhr des Werkstückmodells in dem virtuellen Raum 200 zu bestimmen.
  • In Schritt S8 führt die CPU 12 eine Simulation des Betriebs des Fördersystemmodells 100M in dem virtuellen Raum 200 aus. Insbesondere ordnet die CPU 12 ein Werkstückmodell WM an der Position des stromaufwärts befindlichen Endes 206 des in Schritt S7 bestimmten Zufuhrbereichs an.
  • Dabei ordnet die CPU 12 das Werkstückmodell WM gemäß den in Schritt S7 bestimmten Versatzausmaßen der Position und der Lage des Werkstückmodells WM an. Als Ergebnis wird das Werkstückmodell WM wie in 12 veranschaulicht in dem virtuellen Raum 200 angeordnet.
  • Somit wirkt die CPU 12 bei dieser Ausführungsform als Werkstückmodellanordnungsabschnitt 42 (1), der dazu ausgebildet ist, das Werkstückmodell WM auf dem Fördereinrichtungsmodell 104M in dem virtuellen Raum 200 anzuordnen.
  • Dann betätigt die CPU 12 das Fördereinrichtungsmodell 104M in dem virtuellen Raum 200 so, dass das Fördereinrichtungsmodell 104M das Drehscheibenmodell 128M um die z-Achse des Fördereinrichtungskoordinatensystemmodells CCM in die durch den Pfeil AM in 12 angegebene Richtung dreht.
  • Dabei dreht die CPU 12 das Drehscheibenmodell 128M gemäß der in Schritt S7 bestimmten Beförderungsgeschwindigkeit des Werkstückmodells WM. Als Ergebnis wird das Werkstückmodell WM auf dem Drehscheibenmodell 128M entlang der virtuellen Bahn T in dem virtuellen Raum 200 in der Richtung des Pfeils AM befördert.
  • Nach dem Anordnen des ersten Werkstückmodells WM auf dem Drehscheibenmodell 128M ordnet die CPU 12 der Reihe nach Werkstückmodelle WM gemäß der Anzahl der Werkstückmodelle WM, die geliefert werden sollen, und dem Abstand, die in Schritt S7 bestimmt wurden, an der Position des stromaufwärts befindlichen Endes 206 des Zufuhrbereichs an.
  • Dann betätigt die CPU 12 das Detektionsvorrichtungsmodell 106M in dem virtuellen Raum 200 so, dass das Detektionsvorrichtungsmodell 106M das beförderte Werkstückmodell WM detektiert. Hier wurde das Detektionsvorrichtungsmodell 106M in dem oben beschriebenen Schritt S5 so positioniert, dass die z-Achse des Sensorkoordinatensystemmodells CSM (d.h., die Richtung der Sichtlinie des Detektionsvorrichtungsmodells 106M) über der virtuellen Bahn T angeordnet ist.
  • Entsprechend kann das Detektionsvorrichtungsmodell 106M das gesamte beförderte Werkstückmodell WM detektieren. Auf Basis der Sichtliniendaten des Detektionsvorrichtungsmodells 106M und der Position des Werkstückmodells WM in dem Fördereinrichtungskoordinatensystemmodell CCM erzeugt die CPU 12 ein virtuelles Detektionsbild (ein virtuelles Detektionsergebnis), das erhalten wird, wenn das Detektionsvorrichtungsmodell 106M das Werkstückmodell WM in dem virtuellen Raum 200 detektiert.
  • Dann erlangt die CPU 12 aus dem erzeugten virtuellen Detektionsbild die Position und die Lage des Werkstückmodells WM in dem Roboterkoordinatensystemmodell CRM. Dann betätigt die CPU 12 das Robotermodell 102M in dem virtuellen Raum 200 auf Basis der erlangten Position und Lage des Werkstückmodells WM, des in Schritt S4 bestimmten Radius R der virtuellen Bahn T, des in Schritt S6 festgelegten Folgeoperationsbereichs und eines Roboterprogramms.
  • Insbesondere legt die CPU 12 das Werkzeugkoordinatensystemmodel CTM sequentiell so fest, dass der Ursprung des Werkzeugkoordinatensystemmodells CTM fortlaufend an einer vorherbestimmten Position des beförderten Werkstückmodells WM (z.B. der Mittenposition des Werkstückmodells WM) angeordnet wird.
  • Die CPU 12 betätigt das Robotermodell 102M in dem virtuellen Raum 200 so, dass das Roboterhandmodell 116M an der Position und in der Lage, die durch das Werkzeugkoordinatensystemmodell CTM definierten werden, angeordnet wird.
  • Auf diese Weise bringt das Robotermodell 102M das Roboterhandmodell 116M dazu, dem Werkstückmodell WM innerhalb des Folgeoperationsbereichs in dem virtuellen Raum 200 zu folgen. Es ist zu beachten, dass das oben beschriebene Roboterprogramm vorab in dem Systemspeicher 14 gespeichert ist.
  • Dann betätigt die CPU 12 das Robotermodell 102M in dem virtuellen Raum 200 so, dass das Werkstückmodell WM durch das Roboterhandmodell 116M ergriffen wird.
  • Wenn das Roboterprogramm für das in Schritt S7 bestimmte Zufuhrverfahren des Werkstückmodells (z.B. die verschiedenen Parameter wie die Beförderungsgeschwindigkeit, der Abstand und die Versatzausmaße der Position und der Lage des Werkstückmodells WM) passend aufgebaut ist, kann das Roboterhandmodell 116M das Werkstückmodell WM in dem virtuellen Raum 200 wie in 13 veranschaulicht richtig ergreifen.
  • Wenn das Roboterprogramm andererseits nicht passend aufgebaut ist, gelingt es dem Roboterhandmodell 116M nicht, das Werkstückmodell WM zu ergreifen. In diesem Fall kann die CPU 12 ein Warnbild an der Anzeige 22 darstellen.
  • Die CPU 12 führt die oben beschriebene Simulation des Betriebs des Fördersystemmodells 100M aus. Entsprechend wirkt die CPU 12 bei dieser Ausführungsform als Simulationsausführungsabschnitt 40 (1), der dazu ausgebildet ist, die Simulation auszuführen.
  • Wie oben beschrieben kann die CPU 12 bei dieser Ausführungsform den Betrieb des Werkstückfördersystems 100 zum Befördern des Werkstücks entlang der bogenförmigen Bahn durch die Fördereinrichtung 104 und zum Verfolgen und Ergreifen des beförderten Werkstücks durch den Roboter 102 simulieren.
  • Durch diese Ausführung ist es möglich, vorab zu simulieren, ob das Werkstückfördersystem 100 im realen Raum passend arbeiten wird, und als Ergebnis dieser Simulation die Richtigkeit des Zufuhrverfahrens des Werkstücks (verschiedene Parameter wie die Beförderungsgeschwindigkeit, der Abstand und die Versatzausmaße der Position und der Lage des Werkstücks) und des Roboterprogramms zu überprüfen. Daher können die Mühen und die Zeit, die für die Inbetriebnahme des Werkstückfördersystems 100 nötig sind, deutlich verringert werden.
  • Zusätzlich bestimmt bei dieser Ausführungsform die CPU 12 den Radius R der virtuellen Bahn T in Schritt S4, und führt sie die Betriebssimulation des Fördersystemmodells 100M auf Basis des in Schritt S4 bestimmten Radius R aus.
  • Durch diese Ausführung ist es möglich, Betriebssimulationen des Werkstückfördersystems 100 für verschiedene Anwendungen, bei denen sich die Beförderungsbahnen für das Werkstück durch die Fördereinrichtung 104 voneinander unterscheiden, auszuführen.
  • Zusätzlich optimiert die CPU 12 bei dieser Ausführungsform die Position des Detektionsvorrichtungsmodells 106M (Schritt S5) gemäß dem in Schritt S4 bestimmten Radius R. Durch diese Ausführung kann das Detektionsvorrichtungsmodell 106M das in dem virtuellen Raum 200 beförderte Werkstückmodell WM zur Zeit der Ausführung von Schritt S8 auch dann verlässlich detektieren, wenn der Benutzer den Radius der virtuellen Bahn T in Schritt S4 zufällig bestimmt.
  • Zusätzlich kann der Benutzer bei dieser Ausführungsform den Folgeoperationsbereich durch den Winkel θ festlegen. Durch diese Ausführung kann der Benutzer den Bereich, in dem das Roboterhandmodell 116M dem Werkstückmodell WM während der Ausführung von Schritt S8 folgt, intuitiv und leicht auf die bogenförmige virtuelle Bahn T festlegen.
  • Es ist zu beachten, dass die CPU 12 in dem oben beschriebenen Schritt S8 nach dem Ergreifen des Werkstückmodells WM durch das Roboterhandmodell 116M eine Simulation einer Operation zum Befördern des ergriffenen Werkstückmodells WM an einen von dem Fördereinrichtungsmodell 104M verschiedenen Ort in dem virtuellen Raum 200 ausführen kann
  • Eine derartige Simulation wird unter Bezugnahme auf 14 beschrieben. Wenn diese Simulation durchgeführt wird, ordnet die CPU 12 zum Beispiel in Schritt S2 ein zweites Fördereinrichtungsmodell 132M in dem virtuellen Raum 200 an.
  • Das zweite Fördereinrichtungsmodell 132M weist Stützteilmodelle 136M und 138M und ein Fördereinrichtungsmodell 134M, das in Bezug auf die Stützteilmodelle 136M und 138M beweglich ist, auf.
  • Das zweite Fördereinrichtungsmodell 132M weist ein zweites Fördereinrichtungskoordinatensystemmodell CCM2 auf. Das zweite Fördereinrichtungsmodell 132M bewegt das Fördereinrichtungsmodell 134M in dem virtuellen Raum 200 in die positive x-Achsen-Richtung des zweiten Fördereinrichtungskoordinatensystemmodells CCM2.
  • Wenn das zweite Fördereinrichtungsmodell 132M in dem virtuellen Raum 200 angeordnet wird, ordnet die CPU 12 das zweite Fördereinrichtungsmodell 132M so in dem virtuellen Raum 200 an, dass wenigstens ein Teil des Fördereinrichtungsmodells 134M in dem virtuellen Beweglichkeitsbereich des Robotermodells 102M enthalten ist.
  • Dann betätigt die CPU 12 in Schritt S8 das Robotermodell 102M, nachdem das Werkstückmodell WM durch das Roboterhandmodell 116M ergriffen wurde, gemäß dem Roboterprogramm so, dass das ergriffene Werkstückmodell WM auf das sich bewegende Fördereinrichtungsmodell 134M gesetzt wird.
  • Das zweite Fördereinrichtungsmodell 132M befördert das auf dem Fördereinrichtungsmodell 134M befindliche Werkstückmodell WM in die positive x-Achsen-Richtung des zweiten Fördereinrichtungskoordinatensystemmodells CCM2. Die CPU 12 kann eine solche Simulation ausführen.
  • Es ist zu beachten, dass die CPU 12 in Schritt S8 eine Simulation einer Operation ausführen kann, bei der das Werkstückmodell WM, das durch das zweite Fördereinrichtungsmodell 132M mittels des Fördereinrichtungsmodells 134M befördert wird, durch das Roboterhandmodell 116M ergriffen wird und das ergriffene Werkstückmodell WM auf das Drehscheibenmodell 128M gesetzt wird.
  • Ferner kann die CPU 12 in Schritt S8 eine Simulation einer Operation ausführen, bei der das ergriffene Werkstückmodell WM nach dem Ergreifen des Werkstückmodells WM durch das Roboterhandmodell 116M auf das Fördereinrichtungsmodell 134M gesetzt wird, während das Fördereinrichtungsmodell 134M des zweiten Fördereinrichtungsmodells 132M angehalten ist.
  • Es ist zu beachten, dass die CPU 12, der Systemspeicher 14, der Arbeitsspeicher 16 und die E/A-Schnittstelle 18 in einem Desktop-Computer installiert sein können und der Dateneingabeabschnitt 20 (z.B. eine Tastatur) und die Anzeige 22 (z.B. eine LCD) extern an diesen Desktop-Computer angeschlossen sein können.
  • Alternativ können die CPU 12, der Systemspeicher 14, der Arbeitsspeicher 16, die E/A-Schnittstelle 18, der Dateneingabeabschnitt 20 (z.B. ein Touch-Sensor) und die Anzeige 22 (z.B. eine LCD) als einzelner Computer vom Tablet-Typ ausgebildet sein.
  • Darüber hinaus kann wenigstens eines aus dem Systemspeicher 14, dem Arbeitsspeicher 16, der E/A-Schnittstelle 18, dem Dateneingabeabschnitt 20 (z.B. dem Touch-Sensor) und der Anzeige 22 aus der Simulationsvorrichtung 10 weggelassen werden.
  • In diesem Fall kann das wenigstens eine aus dem Systemspeicher 14, dem Arbeitsspeicher 16, der E/A-Schnittstelle 18, dem Dateneingabeabschnitt 20 (z.B. dem Touch-Sensor) und der Anzeige 22 als externe Vorrichtung ausgebildet sein, die extern an der Simulationsvorrichtung 10 angebracht ist.
  • Ferner kann in dem Ablauf, der in 3 veranschaulicht ist, Schritt S3 nach Schritt S5 ausgeführt werden. Zum Beispiel bestimmt die CPU 12 in Schritt S4 den Radius R der virtuellen Bahn T gemäß den Eingabedaten von dem Benutzer, und bestimmt sie in Schritt S5 die Position des Detektionsvorrichtungsmodells 106M so, dass die z-Achse des Sensorkoordinatensystemmodells CSM über der bestimmten virtuellen Bahn T angeordnet ist.
  • Dann ordnet die CPU 12 in Schritt S3 das Detektionsvorrichtungsmodell 106M an der Position in dem virtuellen Raum 200, die in dem zuletzt ausgeführten Schritt S5 bestimmt wurde, an. Als Ergebnis ist das Detektionsvorrichtungsmodell 106M wie in 8 veranschaulicht so in dem virtuellen Raum 200 angeordnet, dass die z-Achse des Sensorkoordinatensystemmodells CSM über der virtuellen Bahn T angeordnet ist.
  • Ferner kann die CPU 12 das Fördereinrichtungsmodell 104M in dem oben beschriebenen Schritt S2 so in dem virtuellen Raum 200 anordnen, dass wenigstens ein Teil des Drehscheibenmodells 128 in dem virtuellen Beweglichkeitsbereich des Robotermodells 102M enthalten ist.
  • Darüber hinaus kann der Benutzer den Dateneingabeabschnitt 20 (z.B. eine Maus) in Schritt S3 so betätigen, dass das an der Anzeige 22 dargestellte Detektionsvorrichtungsmodell 106M in dem virtuellen Raum 200 bewegt (z.B. gezogen und abgelegt) wird.
  • In diesem Fall bewegt die CPU 12 das Detektionsvorrichtungsmodell 106M als Reaktion auf die durch den Benutzer eingegebenen Eingabedaten von dem Dateneingabeabschnitt 22 in dem virtuellen Raum 200. Dabei kann die CPU 12 die Bewegung des Detektionsvorrichtungsmodells 106M untersagen oder ein Warnbild an der Anzeige 22 darstellen, wenn sich die z-Achse des Sensorkoordinatensystemmodells CSM des Detektionsvorrichtungsmodells 106M außerhalb des Bereichs des Drehscheibenmodells 128M befindet.
  • Ferner kann auf wenigstens einen der oben angeführten Schritte S4 und S5 verzichtet werden. Die Detektionsvorrichtung 106 ist nicht auf einen dreidimensionalen optischen Sensor beschränkt, sondern kann eine Vorrichtung, wie etwa ein Näherungssensor, sein, die lediglich das Vorhandensein des Werkstücks auf eine kontaktlose Weise detektieren kann, ohne die Position und die Lage des Werkstücks zu detektieren.
  • In diesem Fall ordnet die CPU 12 das Werkstückmodell WM in dem in 3 dargestellten Schritt S8 an der gleichen Position und in der gleichen Lage auf dem Drehscheibenmodell 128M an. Dann detektiert das Detektionsvorrichtungsmodell 106M das Werkstückmodell WM in dem virtuellen Raum 200, wenn das durch das Drehscheibenmodell 128M beförderte Werkstückmodell WM unter dem Detektionsvorrichtungsmodell 106M vorbeiläuft.
  • Dann berechnet die CPU 12 auf der Basis des virtuellen Detektionsergebnisses, das von dem Detektionsvorrichtungsmodell 106M erhalten wurde, die Position des Werkstückmodells WM in dem virtuellen Raum 200, und führt sie eine Simulation der Operation des Robotermodells 102M, die das Roboterhandmodell 116M dazu bringt, dem Werkstückmodell WM zu folgen, aus.
  • Ferner ordnet die CPU 12 bei der oben beschriebenen Ausführungsform das Werkstückmodell WM in Schritt S8 sequentiell an der Position des stromaufwärts befindlichen Endes 206 des Zufuhrbereichs an. Doch die CPU 12 kann eine Simulation ausführen, bei der das Werkstückmodell WM durch ein zweites Robotermodell auf das Drehscheibenmodell 128M geliefert wird.
  • Eine derartige Simulation wird unter Bezugnahme auf 15 beschrieben. In dem virtuellen Raum 200, der in 15 dargestellt ist, ist ein Fördersystemmodell 100' angeordnet. Das Fördersystemmodell 100' weist das Robotermodell 102M, ein zweites Robotermodell 102M', das Fördereinrichtungsmodell 104M und das Detektionsvorrichtungsmodell 106M auf.
  • Das zweite Robotermodell 102M' weist die gleichen Komponentenmodelle wie das Robotermodell 102M auf (d.h., das Roboterbasismodell 108M, das Drehrumpfmodell 110M, das Roboterarmmodell 112M, das Handgelenkmodell 114M und das Roboterhandmodell 116M). Zudem weist das zweite Robotermodell 102M' ein Roboterkoordinatensystemmodell CRM' auf.
  • Das zweite Robotermodell 102M' ergreift das Werkstückmodell WM, das auf einem festen Ständermodell 210 angeordnet ist, und setzt das ergriffene Werkstückmodell WM in einem Werkstückplatzierungsbereich auf das Drehscheibenmodell 128M.
  • Das feste Ständermodell 210 ist an einer vorherbestimmten Stelle in dem virtuellen Beweglichkeitsbereich des zweiten Robotermodells 102M' angeordnet. Ferner ist der Werkstückplatzierungsbereich als ein Bereich zwischen einem stromaufwärts befindlichen Ende 212 und einem stromabwärts befindlichen Ende 214 definiert. Das stromaufwärts befindliche Ende 212 des Werkstückplatzierungsbereichs ist stromabwärts von dem stromabwärts befindlichen Ende 204 des Folgeoperationsbereichs angeordnet, während das stromabwärts befindliche Ende 214 des Werkstückplatzierungsbereichs stromaufwärts von dem Detektionsvorrichtungsmodell 106M angeordnet ist.
  • Wenn die Simulation nach dieser Ausführungsform ausgeführt wird, ordnet die CPU 12 in Schritt S1 in 3 zusätzlich zu dem Robotermodell 102M das zweite Robotermodell 102M' und das feste Ständermodell 210 in dem virtuellen Raum 200 an.
  • Dann legt die CPU 12 in Schritt S6 zusätzlich zu dem oben beschriebenen Folgeoperationsbereich den Werkstückplatzierungsbereich (d.h., das stromaufwärts befindliche Ende 212 und das stromabwärts befindliche Ende 214) fest. Dann wirkt die CPU 12 in Schritt S8 so als der Werkstückmodellanordnungsabschnitt 42, dass das Werkstückmodell WM auf dem festen Ständermodell 210 angeordnet wird.
  • Dann betätigt die CPU 12 das zweite Robotermodell 102M' in dem virtuellen Raum 200 so, dass das zweite Robotermodell 102M' das auf dem festen Ständermodell 210 angeordnete Werkstückmodell WM durch das Roboterhandmodell 116M ergreift.
  • Dann setzt das zweite Robotermodell 102M' das ergriffene Werkstückmodell WM innerhalb des in Schritt S6 festgelegten Werkstückplatzierungsbereichs auf das Drehscheibenmodell 128M. Dabei setzt das zweite Robotermodell 102M' das ergriffene Werkstückmodell WM auf die virtuelle Bahn T, deren Radius R in Schritt S4 bestimmt wurde.
  • Dann befördert die CPU 12 das Werkstückmodell WM so wie bei der oben beschriebenen Ausführungsform durch das Fördereinrichtungsmodell 104M, detektiert das Werkstückmodell WM, das durch das zweite Robotermodell 102M' platziert wurde, mittels des Detektionsvorrichtungsmodells 106M, und bringt das Roboterhandmodell 116M dazu, dem Werkstückmodell WM innerhalb des Folgeoperationsbereichs zu folgen.
  • Es ist zu beachten, dass bei den oben beschriebenen Ausführungsformen in dem virtuellen Raum 200 das Roboterkoordinatensystemmodell CRM (CRM' ), das Werkzeugkoordinatensystemmodell CTM, das Fördereinrichtungskoordinatensystemmodell CCM (CCM2) und das Sensorkoordinatensystemmodell CSM festgelegt sind. In dem virtuellen Raum 200 kann jedoch ein Standardkoordinatensystemmodell festgelegt sein, und die Schritte S1 bis S8 in 3 können unter Verwendung dieses Koordinatensystems als Standard ausgeführt werden.
  • Ferner können der Radius R der virtuellen Bahn T in Schritt S4, der Folgeoperationsbereich in Schritt S6 oder die Parameter in Zusammenhang mit dem Zufuhrverfahren des Werkstückmodells in Schritt S7 (d.h., der Zufuhrbereich des Werkstückmodells, die Beförderungsgeschwindigkeit des Werkstückmodells, die Anzahl der Werkstückmodelle, die geliefert werden soll, der Abstand zwischen Werkstückmodellen, und die Versatzausmaße der Position und der Lage des Werkstückmodells) durch ein Computerprogramm automatisch bestimmt werden.
  • Die Erfindung wurde unter Verwendung von Ausführungsformen beschrieben, doch sollten die Ausführungsformen nicht als Beschränkung der in den Ansprüchen angeführten Erfindung aufgefasst werden. Obwohl in dem technischen Umfang der Erfindung Ausführungsformen enthalten sein können, die Kombinationen der Merkmale, die bei den Ausführungsformen der Erfindung beschrieben wurden, aufweisen, sind für die Mittel, die durch die Gesichtspunkte der Erfindung bereitgestellt werden, nicht notwendigerweise alle Kombinationen der Merkmale wesentlich. Darüber hinaus ist Fachleuten offensichtlich, dass den oben beschriebenen Ausführungsformen verschiedene Änderungen und Verbesserungen hinzugefügt werden können.
  • Zudem können die Operationen, Vorgänge, Stufen und Stadien jedes Prozesses, der durch eine Vorrichtung, ein System, ein Programm oder ein Verfahren, die oder das in den Ansprüchen, Ausführungsformen oder Zeichnungen gezeigt ist, durchgeführt werden, in jeder beliebigen Reihenfolge durchgeführt werden, sofern nicht die Reihenfolge durch „vor“, „bevor“ oder dergleichen angeben ist, und sofern nicht der Ausgang eines vorhergehenden Prozesses bei einem späteren Prozess verwendet wird. Auch wenn der Prozessablauf in den Ansprüchen, Ausführungsformen oder Diagrammen unter Verwendung von Ausdrücken wie etwa „zuerst“, „als nächstes“ oder „dann“ beschrieben ist, bedeutet dies nicht notwendigerweise, dass der Prozess in dieser Reihenfolge durchgeführt werden muss.

Claims (7)

  1. Simulationsvorrichtung (10), die dazu ausgebildet ist, eine Operation eines Roboters (102) mit einer Roboterhand (116), wodurch die Roboterhand dazu gebracht wird, einem sich bewegenden Werkstück (Wr) zu folgen, zu simulieren, wobei die Simulationsvorrichtung Folgendes umfasst: einen Robotermodellanordnungsabschnitt (26), der dazu ausgebildet ist, ein Robotermodell (102M), das ein Roboterhandmodell (116M) aufweist, in einem virtuellen Raum (200) anzuordnen, wobei das Robotermodell ein dreidimensionales Modell des Roboters ist und das Roboterhandmodell ein dreidimensionales Modell der Roboterhand ist; einen Fördereinrichtungsmodellanordnungsabschnitt (28), der dazu ausgebildet ist, ein Fördereinrichtungsmodell (104M) in dem virtuellen Raum anzuordnen, wobei das Fördereinrichtungsmodell ein dreidimensionales Modell einer Fördereinrichtung (104) ist, die dazu ausgebildet ist, das Werkstück entlang einer bogenförmigen Bahn zu befördern, wobei wenigstens ein Teil einer virtuellen Bahn (T) in dem virtuellen Raum, die der bogenförmigen Bahn entspricht, in einem virtuellen Beweglichkeitsbereich, in dem das Robotermodell das Roboterhandmodell bewegen kann, enthalten ist; einen Werkstückmodellanordnungsabschnitt (42), der dazu ausgebildet ist, ein Werkstückmodell (WM) auf dem Fördereinrichtungsmodell in dem virtuellen Raum anzuordnen, wobei das Werkstückmodell ein dreidimensionales Modell des Werkstücks ist; einen Detektionsvorrichtungsmodellanordnungsabschnitt (30), der dazu ausgebildet ist, ein Detektionsvorrichtungsmodell (106M) so in dem virtuellen Raum anzuordnen, dass das Detektionsvorrichtungsmodell das durch das Fördereinrichtungsmodell beförderte Werkstückmodell detektieren kann, wobei das Detektionsvorrichtungsmodell ein dreidimensionales Modell einer Detektionsvorrichtung (106) ist, die dazu ausgebildet ist, das Werkstück zu detektieren; einen Operationsbereichsfestlegeabschnitt (36), der dazu ausgebildet ist, einen Folgeoperationsbereich festzulegen, in dem das Robotermodell das Roboterhandmodell dazu bringt, dem durch das Fördereinrichtungsmodell beförderten Werkstückmodell in dem virtuellen Raum zu folgen; und einen Simulationsausführungsabschnitt (40), der dazu ausgebildet ist, eine Simulation auszuführen, in der das Fördereinrichtungsmodell das Werkstückmodell fördert, das Detektionsvorrichtungsmodell das beförderte Werkstückmodell detektiert, und das Robotermodell das Roboterhandmodell auf Basis eines durch das Detektionsvorrichtungsmodell erhaltenen virtuellen Detektionsergebnisses des Werkstückmodells dazu bringt, dem Werkstückmodell innerhalb des Folgeoperationsbereichs zu folgen.
  2. Simulationsvorrichtung nach Anspruch 1, wobei der Simulationsausführungsabschnitt dazu ausgebildet ist, eine Simulation auszuführen, in der das Robotermodell das Werkstückmodell durch das Roboterhandmodell ergreift, wenn das Robotermodell das Roboterhandmodell dazu bringt, dem Werkstückmodell innerhalb des Folgeoperationsbereichs zu folgen, und das ergriffene Werkstückmodell zu einem von dem Fördereinrichtungsmodell verschiedenen Ort in dem virtuellen Raum befördert.
  3. Simulationsvorrichtung nach Anspruch 1 oder 2, wobei der Robotermodellanordnungsabschnitt dazu ausgebildet ist, ein zweites Robotermodell (102M') mit einem zweiten Roboterhandmodell (116M) in dem virtuellen Raum anzuordnen, und wobei der Simulationsausführungsabschnitt dazu ausgebildet ist, eine Simulation auszuführen, in der das zweite Robotermodell das Werkstückmodell, das an einem anderen Ort in dem virtuellen Raum als dem Fördereinrichtungsmodell angeordnet ist, durch das zweite Roboterhandmodell ergreift und das ergriffene Werkstückmodell auf das Fördereinrichtungsmodell setzt.
  4. Simulationsvorrichtung nach einem der Ansprüche 1 bis 3, ferner umfassend einen Bahnbestimmungsabschnitt (32), der dazu ausgebildet ist, einen Radius der virtuellen Bahn zu bestimmen, wobei der Simulationsausführungsabschnitt dazu ausgebildet ist, eine Simulation auszuführen, in der das Robotermodell das Roboterhandmodell dazu bringt, dem Werkstückmodell auf Basis des virtuellen Detektionsergebnisses und des Radius zu folgen.
  5. Simulationsvorrichtung nach Anspruch 4, ferner umfassend einen Modellpositionsbestimmungsabschnitt (34), der dazu ausgebildet ist, eine Position des Detektionsvorrichtungsmodells in dem virtuellen Raum auf der Basis des durch den Bahnbestimmungsabschnitt bestimmten Radius so zu bestimmen, dass das Detektionsvorrichtungsmodell über der virtuellen Bahn in dem virtuellen Raum angeordnet wird.
  6. Verfahren zum Simulieren einer Operation eines Roboters (102) mit einer Roboterhand (116), wodurch die Roboterhand dazu gebracht wird, einem sich bewegenden Werkstück (Wr) zu folgen, wobei das Verfahren Folgendes umfasst: Anordnen eines Robotermodells (102M), das ein Roboterhandmodell (116M) aufweist, in einem virtuellen Raum (200), wobei das Robotermodell ein dreidimensionales Modell des Roboters ist und das Roboterhandmodell ein dreidimensionales Modell der Roboterhand ist; Anordnen eines Fördereinrichtungsmodells (104M) in dem virtuellen Raum, wobei das Fördereinrichtungsmodell ein dreidimensionales Modell einer Fördereinrichtung (104) ist, die dazu ausgebildet ist, das Werkstück entlang einer bogenförmigen Bahn zu befördern, wobei wenigstens ein Teil einer virtuellen Bahn in dem virtuellen Raum, die der bogenförmigen Bahn entspricht, in einem virtuellen Beweglichkeitsbereich, in dem das Robotermodell das Roboterhandmodell bewegen kann, enthalten ist; Anordnen eines Werkstückmodells (WM) auf dem Fördereinrichtungsmodell in dem virtuellen Raum, wobei das Werkstückmodell ein dreidimensionales Modell des Werkstücks ist; derartiges Anordnen eines Detektionsvorrichtungsmodells (106M) in dem virtuellen Raum, dass das Detektionsvorrichtungsmodell das durch das Fördereinrichtungsmodell beförderte Werkstückmodell detektieren kann, wobei das Detektionsvorrichtungsmodell ein dreidimensionales Modell einer Detektionsvorrichtung (106) ist, die dazu ausgebildet ist, das Werkstück zu detektieren; Festlegen eines Folgeoperationsbereichs, in dem das Robotermodell das Roboterhandmodell dazu bringt, dem durch das Fördereinrichtungsmodell beförderten Werkstückmodell in dem virtuellen Raum zu folgen; und Ausführen einer Simulation, in der das Fördereinrichtungsmodell das Werkstückmodell befördert, das Detektionsvorrichtungsmodell das geförderte Werkstückmodell detektiert, und das Robotermodell das Roboterhandmodell auf der Basis eines durch das Detektionsvorrichtungsmodell erhaltenen virtuellen Detektionsergebnisses des Werkstückmodells dazu bringt, dem Werkstückmodell innerhalb des Folgeoperationsbereichs zu folgen.
  7. Computerprogramm, das dazu ausgebildet ist, einen Computer dazu zu bringen, das Verfahren von Anspruch 6 auszuführen.
DE102017124423.9A 2016-10-26 2017-10-19 Simulationsvorrichtung und simulationsverfahren zum simulieren einer operation eines roboters Active DE102017124423B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-209493 2016-10-26
JP2016209493A JP6450726B2 (ja) 2016-10-26 2016-10-26 ロボットの動作をシミュレーションするシミュレーション装置、およびシミュレーション方法

Publications (2)

Publication Number Publication Date
DE102017124423A1 DE102017124423A1 (de) 2018-04-26
DE102017124423B4 true DE102017124423B4 (de) 2021-05-12

Family

ID=61866349

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017124423.9A Active DE102017124423B4 (de) 2016-10-26 2017-10-19 Simulationsvorrichtung und simulationsverfahren zum simulieren einer operation eines roboters

Country Status (4)

Country Link
US (1) US11135722B2 (de)
JP (1) JP6450726B2 (de)
CN (1) CN107984475B (de)
DE (1) DE102017124423B4 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7124509B2 (ja) * 2018-07-19 2022-08-24 オムロン株式会社 シミュレーション装置、シミュレーションプログラムおよびシミュレーション方法
US20200306960A1 (en) * 2019-04-01 2020-10-01 Nvidia Corporation Simulation of tasks using neural networks
US11427407B2 (en) * 2020-01-24 2022-08-30 Becton Dickinson Rowa Germany Gmbh Apparatus and method for identifying, measuring and positioning piece goods
WO2024047808A1 (ja) * 2022-08-31 2024-03-07 ファナック株式会社 ロボット座標系に搬送装置座標系を設定する装置、及び方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10162967A1 (de) * 2000-12-25 2002-07-25 Seiko Epson Corp Verfahren zur Steuerung eines Roboters und dieses Verfahren verwendende Robotersteuerung
US20080013825A1 (en) * 2006-07-12 2008-01-17 Fanuc Ltd Simulation device of robot system
US20080301072A1 (en) * 2007-05-31 2008-12-04 Fanuc Ltd Robot simulation apparatus
JP2014100780A (ja) * 2012-11-22 2014-06-05 Dainippon Screen Mfg Co Ltd 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置
JP2016129915A (ja) * 2015-01-14 2016-07-21 ファナック株式会社 ロボットシステムのシミュレーション装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59152089A (ja) * 1983-02-16 1984-08-30 株式会社ブリヂストン 工業用ロボツトのハンド
US5243690A (en) * 1989-11-14 1993-09-07 General Electric Company Robot targeting using transit time control
JPH07164359A (ja) * 1993-12-10 1995-06-27 Fanuc Ltd ロボットの円弧トラッキング方法
JP3002097B2 (ja) * 1994-08-25 2000-01-24 ファナック株式会社 ビジュアルトラッキング方法
JPH09131574A (ja) * 1995-11-10 1997-05-20 Kubota Corp 物品の選別装置
JP4056542B2 (ja) * 2005-09-28 2008-03-05 ファナック株式会社 ロボットのオフライン教示装置
JP4238256B2 (ja) 2006-06-06 2009-03-18 ファナック株式会社 ロボットシミュレーション装置
DE102012013030A1 (de) * 2012-06-29 2014-04-24 Liebherr-Verzahntechnik Gmbh Vorrichtung zum automatischen Entnehmen von in einem Behälter angeordneten Werkstücken
US10545019B2 (en) * 2015-04-14 2020-01-28 Hexagon Metrology, Inc. CMM probe path controller and method
JP6527108B2 (ja) * 2016-05-19 2019-06-05 ファナック株式会社 物品搬送装置
US10414043B2 (en) * 2017-01-31 2019-09-17 Fanuc America Corporation Skew and circular boundary for line tracking and circular tracking
WO2019069436A1 (ja) * 2017-10-05 2019-04-11 三菱電機株式会社 監視装置、監視システムおよび監視方法
US11731792B2 (en) * 2018-09-26 2023-08-22 Dexterity, Inc. Kitting machine
CN114026033B (zh) * 2019-04-11 2023-11-07 团队传送器知识产权有限责任公司 自动化系统中的协调输送机
JP2020199625A (ja) * 2019-06-13 2020-12-17 ファナック株式会社 シミュレーション装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10162967A1 (de) * 2000-12-25 2002-07-25 Seiko Epson Corp Verfahren zur Steuerung eines Roboters und dieses Verfahren verwendende Robotersteuerung
US20080013825A1 (en) * 2006-07-12 2008-01-17 Fanuc Ltd Simulation device of robot system
US20080301072A1 (en) * 2007-05-31 2008-12-04 Fanuc Ltd Robot simulation apparatus
JP2014100780A (ja) * 2012-11-22 2014-06-05 Dainippon Screen Mfg Co Ltd 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置
JP2016129915A (ja) * 2015-01-14 2016-07-21 ファナック株式会社 ロボットシステムのシミュレーション装置

Also Published As

Publication number Publication date
CN107984475B (zh) 2021-03-26
JP6450726B2 (ja) 2019-01-09
DE102017124423A1 (de) 2018-04-26
US20180111268A1 (en) 2018-04-26
JP2018069357A (ja) 2018-05-10
CN107984475A (zh) 2018-05-04
US11135722B2 (en) 2021-10-05

Similar Documents

Publication Publication Date Title
DE102017124423B4 (de) Simulationsvorrichtung und simulationsverfahren zum simulieren einer operation eines roboters
DE102019009313B4 (de) Robotersteuerung, Verfahren und Computerprogramm unter Verwendung von erweiterter Realität und gemischter Realität
DE102019002898B4 (de) Robotersimulationsvorrichtung
DE102017125190B4 (de) Vorrichtung, Verfahren, Programm und Aufzeichnungsmedium zur Simulation des durch Roboter durchgeführten Vorgangs zum Anordnen von Artikeln
DE102014108287B4 (de) Schnelles Erlernen durch Nachahmung von Kraftdrehmoment-Aufgaben durch Roboter
DE102018006465B4 (de) Artikelstapelvorrichtung und maschinelle Lernvorrichtung
DE102017124502B4 (de) Simulationsvorrichung und Simulationsverfahren, die eine Betriebssimulation eines Robotersystems ausführen, und Aufzeichnungsmedium, das ein Computerprogramm aufzeichnet
DE102014103738B3 (de) Visuelle fehlersuche bei roboteraufgaben
DE102019109624B4 (de) Roboterbewegungseinlernvorrichtung, Robotersystem und Robotersteuerung
EP3020516B1 (de) Bestimmen von objektbezogenen greifräumen mittels eines roboters
DE112017007397B4 (de) Steuervorrichtung, Greifsystem, Verteilersystem, Programm, Steuerverfahren und Herstellungsverfahren
DE102018001360B4 (de) Simulationsvorrichtung, simulationsverfahren und computerprogramm für ein robotersystem
DE102020110252B4 (de) Vibrationsanzeigeeinrichtung, Betriebsprogrammerstellungseinrichtung und System
DE102018101375A1 (de) Artikelbeförderungsvorrichtung, die mindestens einen Sensor nutzt
DE102018109304A1 (de) Bedienvorrichtung zum Bedienen eines Roboters, Robotersystem und Bedienverfahren
DE102019118342A1 (de) Objektprüfvorrichtung, Objektprüfsystem, und Verfahren zum Einstellen der Prüfposition
DE102018107864A1 (de) Offline-Programmiervorrichtung und -verfahren mit der Funktion zur Erzeugung eines Programms zur Detektion einer Werkstückposition mittels eines Kontaktsensors
DE112017007399T5 (de) Steuervorrichtung, Greifsystem, Verteilersystem, Programm, Steuerverfahren und Herstellungsverfahren
DE112019007852B4 (de) Informationsverarbeitungsvorrichtung, Werkstückerkennungsvorrichtung und Werkstückaufgreifvorrichtung
DE102019121889B3 (de) Automatisierungssystem und Verfahren zur Handhabung von Produkten
DE112017007311T5 (de) Vorrichtung und Verfahren zum Erzeugen eines Roboterprogramms
DE102019006748B4 (de) Roboterlehrvorrichtung, roboterlehrverfahren und verfahren zum speichern einer betriebsanweisung
DE102018004326B4 (de) Robotereinlernvorrichtung zum Einstellen von Einlernpunkten basierend auf einem Bewegtbild eines Werkstücks
DE112017007903B4 (de) Haltepositions- und Orientierungslehreinrichtung, Haltepositions- und Orientierungslehrverfahren und Robotersystem
DE102017216093B4 (de) Verfahren zur Parametrierung eines robotischen Manipulators

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