-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung
-
Die Erfindung betrifft eine Simulationsvorrichtung und ein Simulationsverfahren, die eine Simulation eines Betriebs eines Robotersystems durchführen, und ein Aufzeichnungsmedium, das ein Computerprogramm zur Durchfuhrung der Simulation aufzeichnet.
-
Beschreibung des Stands der Technik
-
Simulationstechnologie zum Betrieb eines Robotersystems in einem virtuellen Raum ist bereits bekannt (z. B.
WO 2004/085120 und
JP-A-2014-100780 ).
-
Allerdings besteht Bedarf an einer Technologie, wobei sich das Layout eines dreidimensionalen Modells eines Robotersystems leicht in einem virtuellen Raum konstruieren lässt.
-
ABRISS DER ERFINDUNG
-
Nach einem Aspekt der Erfindung umfasst eine Simulationsvorrichtung, die zum Ausführen einer Simulation eines Betriebs eines Robotersystems konfiguriert ist, einen Modellanordnungsabschnitt, konfiguriert zum Anordnen eines Komponentenmodells in einem virtuellen Raum, wobei das Komponentenmodell ein dreidimensionales Modell einer Komponente des Robotersystems ist; sowie einen Referenzeinstellabschnitt, konfiguriert zum Einstellen eines Referenzpunkts, einer Referenzachse oder einer Referenzebene in dem virtuellen Raum.
-
Die Simulationsvorrichtung schließt auch einen symmetrischen Modellerzeugungsabschnitt ein, eingerichtet zum Erzeugen eines symmetrischen Komponentenmodells, das ein dreidimensionales Modell ist, das zu dem in dem virtuellen Raum angeordneten Komponentenmodells symmetrisch bezüglich des Referenzpunkts, der Referenzachse oder der Referenzebene ist; sowie einen Simulationsabschnitt, eingerichtet zum Ausführen einer Simulation, um das Komponentenmodell und das symmetrische Komponentenmodell in dem virtuellen Raum simulativ zu betreiben.
-
Der Abschnitt zum Erzeugen des symmetrischen Modells kann einen virtuellen Betriebsparameter replizieren, der zum simulativen Betrieb des Komponentenmodells in dem virtuellen Raum benötigt wird, und den virtuellen Betriebsparameter dem erzeugten symmetrischen Komponentenmodell übergeben. Das Robotersystem kann einen Roboter, der zum Ergreifen eines Werkstücks eingerichtet ist, oder eine Fördereinrichtung, die zum Fördern des Werkstücks eingerichtet ist, oder eine für die Bearbeitung eines Werkstücks eingerichtete Werkzeugmaschine aufweisen.
-
Das Komponentenmodell kann ein Robotermodell einschließen, das ein dreidimensionales Modell des Roboters ist, sowie ein Fördereinrichtungsmodell, das ein dreidimensionales Modell der Fördereinrichtung ist, oder ein Werkzeugmaschinenmodell, das ein dreidimensionales Modell der Werkzeugmaschine ist.
-
Der virtuelle Betriebsparameter kann einen Parameter einschließen, der sich bezieht auf einen Ursprung und eine Achsenrichtung eines als Referenz verwendeten Roboter-Koordinatensystems, wenn simulativ das Robotermodell in dem virtuellen Raum betrieben wird, oder einen Ursprung und eine Achsenrichtung eines als Referenz verwendeten Fördereinrichtungs-Koordinatensystems, wenn simulativ das Fördereinrichtungsmodell in dem virtuellen Raum betrieben wird, oder einen Ursprung und eine Achsenrichtung eines als Referenz verwendeten Werkzeugmaschinen-Koordinatensystems, wenn simulativ das Werkzeugmaschinenmodell in dem virtuellen Raum betrieben wird.
-
Der Abschnitt zur symmetrischen Modellerzeugung kann eine zu dem Komponentenmodell symmetrische Position mit Bezug auf den Referenzpunkt, die Referenzachse oder die Referenzebene erhalten und das erzeugte symmetrische Komponentenmodell so an der Position anordnen, dass das erzeugte symmetrische Komponentenmodell mit Bezug auf den Referenzpunkt, die Referenzachse oder die Referenzebene zu dem Komponentenmodell symmetrisch ist.
-
Der Abschnitt zur Modellanordnung kann mehrere Komponentenmodelle in dem virtuellen Raum anordnen. Die Simulationsvorrichtung kann weiter einen Eingabeempfangsabschnitt einschließen, der eingerichtet ist, um eine Eingabeoperation zum Auswählen von mindestens einem der Komponentenmodelle zu empfangen. Der Abschnitt zur symmetrischen Modellerzeugung kann das symmetrische Komponentenmodell des ausgewählten Komponentenmodells erzeugen.
-
Mehrere Koordinatensysteme können in dem virtuellen Raum angeordnet sein. Die Simulationsvorrichtung kann weiter einen zweiten Eingabeempfangsabschnitt einschließen, der eingerichtet ist, um eine Eingabeoperation zur Auswahl von einem der Koordinatensysteme und eine Eingabeoperation zur Auswahl eines Ursprungs des ausgewählten Koordinatensystems, einer Achse des ausgewählten Koordinatensystems oder einer durch das ausgewählte Koordinatensystem definierten Ebene zu empfangen. Der Referenzeinstellabschnitt kann den ausgewählten Ursprung, die ausgewählte Achse oder die ausgewählte Ebene als Referenzpunkt, als Referenzachse oder als Referenzebene vorgeben.
-
Gemäß einem weiteren Aspekt der Erfindung umfasst ein Verfahren zum Durchführen einer Simulation eines Betriebs eines Robotersystems die Anordnung eines Komponentenmodells in einem virtuellen Raum, wobei das Komponentenmodell ein dreidimensionales Modell einer Komponente des Robotersystems ist; sowie das Einstellen eines Referenzpunkts, einer Referenzachse oder einer Referenzebene in dem virtuellen Raum.
-
Das Verfahren schließt auch das Erzeugen eines symmetrischen Komponentenmodells ein, das ein dreidimensionales Modell ist, das zu dem in dem virtuellen Raum angeordneten Komponentenmodell symmetrisch bezüglich des Referenzpunkts, der Referenzachse oder der Referenzebene ist; sowie das Ausführen einer Simulation, um das Komponentenmodell und das symmetrische Komponentenmodell in dem virtuellen Raum simulativ zu betreiben.
-
Gemäß noch einem weiteren Aspekt der Erfindung ist ein computerlesbares Aufzeichnungsmedium zum Aufzeichnen eines Computerprogramms zum Durchführen einer Simulation eines Betriebs eines Robotersystems eingerichtet, wobei das Computerprogramm einen Computer veranlasst, als Modellanordnungsabschnitt, eingerichtet zum Anordnen eines Komponentenmodells in einem virtuellen Raum, wobei das Komponentenmodell ein dreidimensionales Modell einer Komponente des Robotersystems ist und ein Referenzeinstellabschnitt, eingerichtet, um einen Referenzpunkt, eine Referenzachse oder eine Referenzebene in dem virtuellen Raum einzustellen, zu fungieren.
-
Das Computerprogramm veranlasst den Computer auch, als symmetrischer Modellerzeugungsabschnitt zu fungieren, eingerichtet zum Erzeugen eines symmetrischen Komponentenmodells, das ein dreidimensionales Modell ist, das zu dem in dem virtuellen Raum angeordneten Komponentenmodell symmetrisch mit Bezug auf den Referenzpunkt, die Referenzachse, oder die Referenzebene ist; sowie als Simulationsabschnitt, eingerichtet zum Ausführen einer Simulation zum simulativen Betrieb des Komponentenmodells und des symmetrischen Komponentenmodells in dem virtuellen Raum.
-
Die vorstehend beschriebenen und weitere Aufgaben, Merkmale und Vorteile der Erfindung werden anhand der folgenden Beschreibung der Ausführungsformen in Verbindung mit den beigefügten Zeichnungen besser ersichtlich werden, die Folgendes zeigen:
- 1 ist ein Blockdiagramm einer Simulationsvorrichtung gemäß einer Ausführungsform;
- 2 ist ein Ablaufdiagramm mit der Darstellung eines Beispiels eines Betriebsablaufs der in 1 dargestellten Simulationsvorrichtung;
- 3 ist ein Bild des in Schritt S1 in 2 erzeugten virtuellen Raums;
- 4 ist ein vergrößertes Bild eines in Schritt S3 in 2 erzeugten Koordinatensystems;
- 5 ist ein Bild des in Schritt S4 in 2 erzeugten virtuellen Raums;
- 6 ist ein Bild des in Schritt S6 in 2 erzeugten virtuellen Raums;
- 7 ist ein Bild des in Schritt S7 in 2 erzeugten virtuellen Raums;
- 8 ist ein Bild des in Schritt S8 in 2 erzeugten virtuellen Raums;
- 9 ist ein Bild des in Schritt S9 in 2 erzeugten virtuellen Raums;
- 10 ist ein weiteres Beispiel des Bilds des in Schritt S1 in 2 erzeugten virtuellen Raums;
- 11 ist ein weiteres Beispiel des vergrößerten Bilds des in Schritt S4 in 2 erzeugten Koordinatensystems;
- 12 ist ein weiteres Beispiel des Bilds des in Schritt S6 in 2 erzeugten virtuellen Raums;
- 13 ist ein weiteres Beispiel des Bilds des in Schritt S7 in 2 erzeugten virtuellen Raums;
- 14 ist ein weiteres Beispiel des Bilds des in Schritt S8 in 2 erzeugten virtuellen Raums; und
- 15 ist ein weiteres Beispiel des Bilds des in Schritt S9 in 2 erzeugten virtuellen Raums.
-
DETAILLIERTE BESCHREIBUNG
-
Im Folgenden sind Ausführungsformen der Erfindung unter Bezugnahme auf die Zeichnungen detailliert beschrieben. Man beachte, dass bei den verschiedenen nachfolgend beschriebenen Ausführungsformen ähnlichen Bestandteilen die gleichen Bezugsziffern zugeordnet sind und dass diesbezügliche Beschreibungswiederholungen ausgelassen wurden.
-
Eine Simulationsvorrichtung 10 gemäß einer Ausführungsform der Erfindung ist unter Bezugnahme auf 1 beschrieben. Die Simulationsvorrichtung 10 umfasst eine CPU 12, einen Systemspeicher 14, einen Arbeitsspeicher 16, eine Eingabe/Ausgabe-Schnittstelle (I/O-Schnittstelle) 18, einen Dateneingabeabschnitt 20 und ein Display 22.
-
Die CPU 12 ist über einen Bus 24 mit dem Systemspeicher 14, dem Arbeitsspeicher 16 und der I/O-Schnittstelle 18 kommunikativ verbunden und führt verschiedene Prozesse aus, die im Folgenden beschrieben sind, während sie mit diesen Komponenten kommuniziert.
-
Der Systemspeicher 14 ist ein nichtflüchtiger Speicher, der elektrisch löschbar und beschreibbar ist, und er umfasst beispielsweise einen EEPROM (eingetragene Marke) oder dergleichen. Der Systemspeicher 14 zeichnet Konstanten, Variablen, Einstellwerte, Parameter, Programme usw. auf, die zum Ausführen einer weiter unten beschriebenen Simulation erforderlich sind, um diese nicht zu verlieren, wenn die Simulationsvorrichtung 10 abgeschaltet wird.
-
Der Arbeitsspeicher 16 speichert vorübergehend Daten, die für die CPU 12 erforderlich sind, um verschiedene Prozesse auszuführen. Weiter werden die Konstanten, Variablen, Einstellwerte, Parameter, Programme usw., die im Systemspeicher 14 aufgezeichnet sind, in geeigneter Weise in den Arbeitsspeicher 16 geladen, und die CPU 12 verwendet die in den Arbeitsspeicher 16 geladenen Daten, um die verschiedenen Prozesse auszuführen.
-
Die I/O-Schnittstelle 18 ist kommunikativ mit dem Dateneingabeabschnitt 20 verbunden und empfängt Daten vom Dateneingabeabschnitt 20 entsprechend einem Befehl von der CPU 12. Weiter ist die I/O-Schnittstelle 18 kommunikativ mit dem Display 22 verbunden und sendet Bilddaten zum Display 22 entsprechend einem Befehl von der CPU 12.
-
Die I/O-Schnittstelle 18 kann beispielsweise einen Internet-Port oder einen USB-Port umfassen und drahtgebunden mit dem Display 22 und dem Dateneingabeabschnitt 20 kommunizieren. Alternativ dazu kann die I/O-Schnittstelle 18 drahtlos mit dem Display 22 und dem Dateneingabeabschnitt 20 über Wi-Fi oder ein anderes drahtloses LAN kommunizieren.
-
Der Dateneingabeabschnitt 20 umfasst zum Beispiel eine Tastatur, ein berührungssensibles Feld oder eine Maus, und ein Benutzer kann den Dateneingabeabschnitt 20 verwenden, um Daten einzugeben. Der Dateneingabeabschnitt 20 sendet die Eingabedaten zur CPU 12 über die I/O-Schnittstelle 18.
-
Das Display 22 umfasst z. B. eine CRT, ein Flüssigkristalldisplay (LCD) oder ein organisches EL-Display. Das Display 22 empfängt von der I/O-Schnittstelle 18 gesendete Bilddaten und zeigt sie als vom Benutzer einsehbares Bild an.
-
Die Simulationsvorrichtung 10 ist eingerichtet, um eine Simulation eines Betriebs eines Robotersystems auszuführen, einschließlich einer Komponente wie zum Beispiel eines Roboters, eines Förderers, einer Werkzeugmaschine oder dergleichen.
-
Im Folgenden wird die Funktionsweise der Simulationsvorrichtung 10 gemäß einer Ausführungsform mit Bezug auf 2 bis 9 beschrieben. Der in 2 dargestellte Ablauf beginnt, wenn der Benutzer den Dateneingabeabschnitt 20 einsetzt, um einen Simulations-Startbefehl einzugeben, und die CPU 12 empfängt den Simulations-Startbefehl beispielsweise von Dateneingabeabschnitt 20.
-
Man beachte, dass die CPU 12 die in 2 dargestellten Schritte S1 bis S10 entsprechend einem Computerprogramm ausführen kann. Dieses Computerprogramm kann im Systemspeicher 14 vorgeladen sein.
-
In diesem Fall fungiert der Systemspeicher 14 als computerlesbares Aufzeichnungsmedium, eingerichtet zum Aufzeichnen des Computerprogramms. Alternativ dazu kann das Computerprogramm auf einem Aufzeichnungsmedium aufgezeichnet werden (z. B. einer Festplatte, einem EEPROM oder dergleichen), das extern mit der Simulationsvorrichtung 10 verbunden ist.
-
In Schritt S1 ordnet die CPU 12 ein Komponentenmodell, das ein dreidimensionales Modell einer Komponente eines Robotersystems ist, in einem virtuellen Raum an.
-
Insbesondere ordnet die CPU 12 als Reaktion auf die Eingabeoperation durch den Benutzer ein Robotermodell 102 und ein Fördereinrichtungsmodell 104 entsprechend der Darstellung in 3 in einem virtuellen Raum 100 an.
-
Das Robotermodell 102 ist ein dreidimensionales Modell eines vertikal gegliederten Roboters, der eingerichtet ist, um ein Werkstück zu ergreifen und zu bewegen, und es schließt ein Roboter-Basismodell 106, ein Drehtrommelmodell 108, ein Roboterarmmodell 110, ein Handgelenkmodell 112 und ein Roboter-Handmodell 114 ein.
-
Das Roboterarmmodell 110 schließt ein Oberarmmodell 116, das drehbar mit dem Drehtrommelmodell 108 verbunden ist, und ein Unterarmmodell 118, das drehbar mit einem distalen Ende des Oberarmmodells 116 verbunden ist, ein.
-
Das Handgelenkmodell 112 ist an einem distalen Ende des Unterarmmodells 118 bereitgestellt und unterstützt das Roboterhandmodell 114, damit es um drei Achsen in dem virtuellen Raum 100 drehbar ist. Das Roboterhandmodell 114 umfasst ein Hand-Basismodell 120, das mit dem Handgelenkmodell 112 verbunden ist, und mehrere Fingermodelle 122 und 124, die mit dem Hand-Basismodell 120 zum Öffnen und Schließen verbunden sind.
-
Das Fördereinrichtungsmodell 104 ist ein dreidimensionales Modell einer Fördereinrichtung (z. B. eines Förderbands), die ein Werkstück transportieren kann, und es umfasst die Stützabschnittsmodelle 126 und 128 und ein Förderermodell 130, das an den Stützabschnittsmodellen 126 und 128 beweglich bereitgestellt ist.
-
Der Systemspeicher 14 speichert vorab mehrere Typen von Robotermodellen, einschließlich des Robotermodells 102, sowie mehrere Fördereinrichtungsmodelle, einschließlich des Fördereinrichtungsmodells 104. Als Beispiel erzeugt die CPU 12 Bilddaten, in denen mehrere von im Systemspeicher 14 gespeicherte Typen von Robotermodellen und Fördereinrichtungsmodellen in Form einer Liste wiedergegeben sind, und zeigt diese auf dem Display 22 an.
-
Der Benutzer verwendet den Dateneingabeabschnitt 20, um das Robotermodell 102 und das Fördereinrichtungsmodell 104 aus der auf dem Display 22 angezeigten Liste zu wählen. Der Dateneingabeabschnitt 20 sendet die vom Benutzer eingegebenen Eingabedaten über die I/O-Schnittstelle 18 zur CPU 12.
-
Als Reaktion auf die empfangenen Eingabedaten liest die CPU 12 das Robotermodell 102 und das Fördereinrichtungsmodell 104 aus den im Systemspeicher 14 gespeicherten mehreren Typen von Robotermodellen und Fördereinrichtungsmodellen und ordnet das Robotermodell 102 und das Fördereinrichtungsmodell 104 in dem virtuellen Raum 100 an. Anschließend erzeugt die CPU 12 Bilddaten des virtuellen Raums 100 und zeigt sie entsprechend der Darstellung in 3 auf dem Display 22 als Bild des virtuellen Raums 100 an.
-
Der Systemspeicher 14 speichert verschiedene virtuelle Roboter-Betriebsparameter in Zusammenhang mit dem Robotermodell 102. Diese virtuellen Roboter-Betriebsparameter sind Parameter, die für den simulativen Betrieb des Robotermodells 102 in dem virtuellen Raum 100 im weiter unten beschriebenen Schritt S10 erforderlich sind.
-
Die virtuellen Roboter-Betriebsparameter schließen einen Ursprung und Achsrichtungen eines Roboter-Koordinatensystems 132, einen Ursprung und Achsrichtungen eines Werkzeug-Koordinatensystems 134, eine maximale Antriebsgeschwindigkeit, einen virtuellen Bewegungsbereich usw. ein.
-
Das Roboter-Koordinatensystem 132 ist ein als Referenz verwendetes Koordinatensystem, wenn das Robotermodell 102 in dem virtuellen Raum 100 betrieben wird, und es ist in dem virtuellen Raum 100 definiert durch den Ursprung und die Achsrichtungen des Roboter-Koordinatensystems 132, die in den virtuellen Roboter-Betriebsparametern enthalten sind.
-
Bei der in 3 dargestellten Ausführungsform ist der Ursprung des Roboter-Koordinatensystems 132 im Zentrum des Roboter-Basismodells 106 angeordnet, und das Drehtrommelmodell 108 wird um die z-Achse des Roboter-Koordinatensystems 132 rotiert.
-
Das Werkzeug-Koordinatensystem 134 ist ein Koordinatensystem, das die Position und Ausrichtung des Roboter-Handmodells 114 in dem virtuellen Raum 100 definiert, und es ist in dem virtuellen Raum 100 definiert durch den Ursprung und die Achsrichtungen des Werkzeug-Koordinatensystems 134, die in den virtuellen Roboter-Betriebsparametern enthalten sind.
-
Bei der in 3 dargestellten Ausführungsform ist das Werkzeug-Koordinatensystem 134 so eingestellt, dass dessen Ursprung zwischen den Fingermodellen 122 und 124 des Roboter-Handmodells 114 angeordnet ist und dass dessen z-Achse orthogonal zu einer Öffnungs- und Schließrichtung der Fingermodelle 122 und 124 verläuft.
-
Das Robotermodell 102 betreibt das Drehtrommelmodell 108, das Roboter-Armmodell 110 und das Handgelenkmodell 112 in dem virtuellen Raum 100 unter Verwendung des Roboter-Koordinatensystems 132 als Referenz, sodass die Position und die Haltung des Roboter-Handmodells 114 mit einer durch das Werkzeug-Koordinatensystem 134 definierten Position und Ausrichtung übereinstimmen.
-
Die maximale Antriebsgeschwindigkeit ist ein Parameter zum Bestimmen der Maximalgeschwindigkeit (Rotationsgeschwindigkeit), mit der das Robotermodell 102 das Drehtrommelmodell 108, das Roboter-Armmodell 110 oder das Handgelenkmodell 112 in dem virtuellen Raum 100 antreibt.
-
Der virtuelle Bewegungsbereich ist ein Parameter, der einen Bewegungsbereich angibt, in dem das Robotermodell 102 das Roboter-Handmodell 114 in dem virtuellen Raum 100 bewegen kann (d. h. ein Bereich, in dem das Werkzeug-Koordinatensystem 134 eingestellt werden kann).
-
Weiter speichert der Systemspeicher 14 verschiedene virtuelle Förderer-Betriebsparameter in Zusammenhang mit dem Fördereinrichtungsmodell 104. Diese virtuellen Förderer-Betriebsparameter sind für den simulativen Betrieb des Fördereinrichtungsmodells 104 in dem virtuellen Raum 100 im weiter unten beschriebenen Schritt S10 erforderlich.
-
Die virtuellen Förderer-Betriebsparameter schließen einen Ursprung und Achsrichtungen eines Förderer-Koordinatensystems 136 und eine Transportgeschwindigkeit des Förderermodells 130 usw. ein.
-
Das Förderer-Koordinatensystem 136 ist ein als Referenz verwendetes Koordinatensystem, wenn das Förderermodell 130 in dem virtuellen Raum 100 betrieben wird, und es ist in dem virtuellen Raum 100 definiert durch den Ursprung und die Achsrichtungen des Förderer-Koordinatensystems 136, die in den virtuellen Förderer-Betriebsparametern enthalten sind.
-
Bei der in 3 dargestellten Ausführungsform ist der Ursprung des Förderer-Koordinatensystems 136 im Zentrum eines Endes des Förderermodells 130 angeordnet, und das Förderermodell 130 wird um die y-Achse des Förderer-Koordinatensystems 136 bewegt.
-
Die Transportgeschwindigkeit ist ein Parameter zum Bestimmen der Geschwindigkeit, mit der ein Werkstück-Modell durch das Förderermodell 130 in dem virtuellen Raum 100 gefördert wird (d. h. die Bewegungsgeschwindigkeit des Förderermodells 130).
-
Entsprechend der Darstellung in 3 ordnet die CPU 12 das Roboter-Koordinatensystem 132, das Werkzeug-Koordinatensystem 134 und das Förderer-Koordinatensystem 136 in dem virtuellen Raum 100 zusammen mit dem Robotermodell 102 und dem Fördereinrichtungsmodell 104 an. Weiter wird auch ein Haupt-Koordinatensystem 138 in dem virtuellen Raum 100 angeordnet, das die dreidimensionalen Koordinaten des virtuellen Raums 100 definiert.
-
Somit fungiert die CPU 12 bei dieser Ausführungsform als Modellanordnungsabschnitt 26 (1), konfiguriert zum Anordnen von Komponentenmodellen wie z. B. dem Robotermodell 102 und dem Fördereinrichtungsmodell 104 in dem virtuellen Raum 100.
-
In Schritt S2 empfängt der Dateneingabeabschnitt 20 eine Eingabeoperation zum Auswählen eines Komponentenmodells. Insbesondere verwendet der Benutzer den Dateneingabeabschnitt 20 (z. B. eine Maus), um mindestens eines der Komponentenmodelle zu wählen (d. h. das Robotermodell 102 und das Fördereinrichtungsmodell 104), die auf dem Display 22 angezeigt werden.
-
Im Folgenden ist ein Fall beschrieben, bei dem der Benutzer das Robotermodell 102 wählt. In diesem Fall empfängt der Dateneingabeabschnitt 20 die Eingabeoperation durch den Benutzer und sendet die Eingabedaten mit der Angabe der Auswahl des Robotermodells 102 über die I/O-Schnittstelle 18 zur CPU 12. Als Reaktion auf die empfangenen Eingabedaten bestimmt die CPU 12 das Robotermodell 102 als Replikationssubjekt.
-
Somit fungiert der Dateneingabeabschnitt 20 bei dieser Ausführungsform als Eingabeempfangsabschnitt, eingerichtet zum Empfangen einer Eingabeoperation zur Auswahl von einem der Komponentenmodelle (das Robotermodell 102 und das Fördereinrichtungsmodell 104), die in dem virtuellen Raum 100 angeordnet sind.
-
Man beachte, dass die CPU 12, um die Sichtbarkeit für den Benutzer zu verbessern, das in Schritt S2 als Replikationssubjekt bestimmte Robotermodell 102 im Display 22 hervorheben kann (z. B. durch eine Änderung von Typ oder Farbton des Robotermodells 102 oder durch Blinken des Robotermodells 102).
-
In Schritt S3 empfängt der Dateneingabeabschnitt 20 eine Eingabeoperation zur Auswahl eines als Referenz verwendeten Koordinatensystems, wenn im folgenden Schritt S7 ein symmetrisches Komponentenmodell erzeugt wird. Insbesondere verwendet der Benutzer den Dateneingabeabschnitt 20 (z. B. eine Maus), um das Roboter-Koordinatensystem 132 oder das Werkzeug-Koordinatensystem 134 oder das Förderer-Koordinatensystem 136 oder das Haupt-Koordinatensystem 138 in 3 auszuwählen.
-
Im Folgenden ist ein Fall beschrieben, bei dem der Benutzer das Förderer-Koordinatensystem 136 wählt. In diesem Fall empfängt der Dateneingabeabschnitt 20 die Eingabeoperation durch den Benutzer und sendet die Eingabedaten mit der Angabe der Auswahl des Förderer-Koordinatensystems 136 über die I/O-Schnittstelle 18 zur CPU 12. Als Reaktion auf die empfangenen Eingabedaten bestimmt die CPU 12 das Förderer-Koordinatensystem 136 als Referenz-Koordinatensystem.
-
Somit fungiert der Dateneingabeabschnitt 20 bei dieser Ausführungsform als ein zweiter Eingabeempfangsabschnitt, eingerichtet zum Empfangen einer Eingabeoperation zur Auswahl von einem der Koordinatensysteme (d. h. das Roboter-Koordinatensystem 132, das Werkzeug-Koordinatensystem 134, das Förderer-Koordinatensystem 136 und das Haupt-Koordinatensystem 138), die in dem virtuellen Raum 100 angeordnet sind.
-
Anschließend zeigt die CPU 12 entsprechend der Darstellung in 4 das als Referenz-Koordinatensystem bestimmte Förderer-Koordinatensystem 136 auf dem Display 22 an. In dem in 4 wiedergegebenen Förderer-Koordinatensystem 136 werden zusätzlich zur x-Achse, y-Achse und z-Achse ein Ursprung O, eine x-y-Ebene P1, eine x-z-Ebene P2 und eine y-z-Ebene P3 neu angezeigt.
-
In Schritt S4 empfängt der Dateneingabeabschnitt 20 eine Eingabeoperation zur Auswahl des Ursprungs oder der Achse des in Schritt S3 gewählten Koordinatensystems oder einer durch das gewählte Koordinatensystem definierten Ebene.
-
Insbesondere verwendet der Benutzer entsprechend der Darstellung in 4 den Dateneingabeabschnitt 20 (z. B. eine Maus) zur Auswahl eines der folgenden Elemente: Ursprung O, x-Achse, y-Achse, z-Achse, x-y-Ebene P1, x-z-Ebene P2 und y-z-Ebene P3 des auf dem Display 22 angezeigten Förderer-Koordinatensystems 136.
-
Im Folgenden ist ein Fall beschrieben, bei dem der Benutzer die y-z-Ebene P3 des Förderer-Koordinatensystems 136 wählt. In diesem Fall empfängt der Dateneingabeabschnitt 20 die Eingabeoperation durch den Benutzer und sendet die Eingabedaten mit der Angabe der Auswahl der y-z-Ebene P3 des Förderer-Koordinatensystems 136 über die I/O-Schnittstelle 18 zur CPU 12.
-
Somit fungiert der Dateneingabeabschnitt 20 bei dieser Ausführungsform als ein zweiter Eingabeempfangsabschnitt, eingerichtet zum Empfangen einer Eingabeoperation zur Auswahl des Ursprungs O, der x-Achse, der y-Achse, der z-Achse, der x-y-Ebene P1, der x-z-Ebene P2 oder der y-z-Ebene P3 des in Schritt S3 ausgewählten Koordinatensystems (z. B. des Förderer-Koordinatensystems 136 oder des Roboter-Koordinatensystems 132). In Schritt S5 gibt die CPU 12 einen Referenzpunkt, eine Referenzachse oder eine Referenzebene vor. Insbesondere gibt die CPU 12 als Reaktion auf die in Schritt S4 vom Dateneingabeabschnitt 20 empfangenen Eingabedaten die y-z-Ebene P3 des in 4 dargestellten Förderer-Koordinatensystems 136 als Referenzebene P3 vor. Anschließend zeigt die CPU 12 entsprechend der Darstellung in 5 die Referenzebene P3 auf dem Display 22 an. In 5 ist die Referenzebene P3 vergrößert angezeigt, damit der Benutzer die Referenzebene P3 leichter erkennen kann. Somit fungiert die CPU 12 bei dieser Ausführungsform als Referenz-Einstelleinrichtung 28 (1), konfiguriert zum Einstellen eines Referenzpunkts, einer Referenzachse oder einer Referenzebene in dem virtuellen Raum.
-
In Schritt S6 erhält die CPU 12 eine Position, die mit Bezug auf den Referenzpunkt, die Referenzachse oder die Referenzebene zum Komponentenmodell symmetrisch ist. Als Beispiel erhält die CPU 12 die Koordinaten eines symmetrischen Ursprungs O' (6), der mit Bezug auf die Referenzebene P3 zum Ursprung O des Roboter-Koordinatensystems 132 symmetrisch ist.
-
Beispielsweise können entsprechend der Darstellung in 6, falls die Koordinaten im Förderer-Koordinatensystem 136 des Ursprungs O des Roboter-Koordinatensystems 132 (-x1, y1, -z1) sind, die Koordinaten im Förderer-Koordinatensystem 136 des symmetrischen Ursprungs O' erhalten werden als (x1, y1, -z1).
-
Die CPU 12 speichert die so erhaltenen Koordinaten (x1, y1, -z1) des symmetrischen Ursprungs O' im Arbeitsspeicher 16 als Koordinaten, die eine mit Bezug auf die Referenzebene P3 zum Robotermodell 102 symmetrische Position wiedergeben.
-
In Schritt S7 erzeugt die CPU 12 ein symmetrisches Komponentenmodell. Insbesondere erzeugt die CPU 12 unter Verwendung von Informationen des im Systemspeicher 14 gespeicherten Robotermodells 102 ein symmetrisches Robotermodell 102M, das ein in Schritt S2 mit Bezug auf die Referenzebene P3 als Replikationssubjekt bestimmtes, zum Robotermodell 102 symmetrisches dreidimensionales Modell ist.
-
Das erzeugte symmetrische Robotermodell 102M ist in 7 dargestellt. Das symmetrische Robotermodell 102M umfasst ein symmetrisches Roboter-Basismodell 106M, ein symmetrisches Drehtrommelmodell 108M, ein symmetrisches Roboter-Armmodell 110M, ein symmetrisches Handgelenkmodell 112M und ein symmetrisches Roboter-Handmodell 114M.
-
Das symmetrische Roboter-Basismodell 106M, das symmetrische Drehtrommelmodell 108M, das symmetrische Roboter-Armmodell 110M, das symmetrische Handgelenkmodell 112M und das symmetrische Roboter-Handmodell 114M sind dreidimensionale Modelle mit Formen, die mit Bezug auf die Referenzebene P3 symmetrisch zum Roboter-Basismodell 106, zum Drehtrommelmodell 108, zum Roboter-Armmodell 110, zum Handgelenkmodell 112 bzw. zum Roboter-Handmodell 114 sind.
-
Somit fungiert die CPU 12 bei dieser Ausführungsform als Erzeugungseinrichtung 30 eines symmetrischen Modells (1), konfiguriert zum Erzeugen des symmetrischen Komponentenmodells.
-
In Schritt S8 ordnet die CPU 12 das symmetrische Komponentenmodell an der in Schritt S6 erhaltenen Position an. Insbesondere ordnet die CPU 12 das in Schritt S7 erzeugte symmetrische Robotermodell 102M an dem in Schritt S6 detektierten symmetrischen Ursprung O' an.
-
Zu diesem Zeitpunkt ist das symmetrische Robotermodell 102M mit Bezug auf den symmetrischen Ursprung O' angeordnet, sodass die Position des symmetrischen Ursprungs O' in Bezug auf das symmetrische Robotermodell 102M gleich der Position des Ursprungs O des Roboter-Koordinatensystems 132 mit Bezug auf das Robotermodell 102 ist.
-
Noch spezifischer ist der Ursprung O des Roboter-Koordinatensystems 132 bei dieser Ausführungsform entsprechend der vorstehenden Beschreibung im Zentrum des Roboter-Basismodells 106 angeordnet. Dementsprechend ist das symmetrische Robotermodell 102M mit Bezug auf den symmetrischen Ursprung O' so angeordnet, dass der symmetrische Ursprung O' im Zentrum des symmetrischen Roboter-Basismodells 106M angeordnet ist.
-
Demzufolge ist das symmetrische Roboter-Basismodell 106M entsprechend der Darstellung in 8 an einer Position angeordnet, die zum ursprünglichen Robotermodell 102 mit Bezug auf die Referenzebene P3 symmetrisch ist.
-
In Schritt S9 repliziert die CPU 12 die virtuellen Betriebsparameter und übergibt die virtuellen Betriebsparameter an das erzeugte symmetrische Komponentenmodell. Insbesondere liest und repliziert die CPU 12 die virtuellen Roboter-Betriebsparameter des im Systemspeicher 14 gespeicherten Robotermodells 102 und erzeugt dadurch zweite virtuelle Roboter-Betriebsparameter.
-
Anschließend ordnet die CPU 12 die zweiten virtuellen Roboter-Betriebsparameter dem in 8 dargestellten symmetrischen Robotermodell 102M zu und speichert die zweiten virtuellen Roboter-Betriebsparameter im Systemspeicher 14. Diese zweiten virtuellen Roboter-Betriebsparameter sind Parameter, die für den simulativen Betrieb des symmetrischen Robotermodells 102M in dem virtuellen Raum 100 im weiter unten beschriebenen Schritt S10 erforderlich sind.
-
Die zweiten virtuellen Roboter-Betriebsparameter schließen einen Ursprung und Achsrichtungen eines zweiten Roboter-Koordinatensystems 132' (9), einen Ursprung und Achsrichtungen eines zweiten Werkzeug-Koordinatensystems 134' ( 9), eine maximale Antriebsgeschwindigkeit und einen virtuellen Bewegungsbereich ein.
-
Entsprechend der Darstellung in 9 ist der Ursprung des zweiten Roboter-Koordinatensystems 132' am in Schritt S6 erhaltenen symmetrischen Ursprung O' angeordnet, und die Achsrichtungen des zweiten Roboter-Koordinatensystems 132' sind zu denen des Roboter-Koordinatensystems 132 mit Bezug auf die Referenzebene P3 symmetrisch. Weiter sind der Ursprung und die Achsrichtungen des zweiten Werkzeug-Koordinatensystems 134' mit Bezug auf die Referenzebene P3 zu denen des Werkzeug-Koordinatensystems 134 symmetrisch.
-
Die maximale Antriebsgeschwindigkeit und der virtuelle Bewegungsbereich usw. der zweiten virtuellen Roboter-Betriebsparameter sind Werte, die mit denen der dem Robotermodell 102 zugeordneten virtuellen Roboter-Betriebsparameter identisch sind.
-
Somit werden die neu erzeugten zweiten virtuellen Roboter-Betriebsparameter dem symmetrischen Robotermodell 102M übergeben, und die CPU 12 betreibt das symmetrische Robotermodell 102M in dem virtuellen Raum 100 im folgenden Schritt S10 unter Verwendung dieser zweiten virtuellen Roboter-Betriebsparameter.
-
Durch das Ausführen der weiter oben erwähnten Schritte S1 bis S9 entsprechend der Darstellung in 9 wird in dem virtuellen Raum 100 ein Roboter-Systemmodell 150 einschließlich des Robotermodells 102, des Fördereinrichtungsmodells 104 und des symmetrischen Robotermodells 102M konstruiert.
-
In Schritt S10 führt die CPU 12 eine Simulation aus, um das Roboter-Systemmodell 150 simulativ zu betreiben. Insbesondere betreibt die CPU 12 simulativ das Robotermodell 102, das Fördereinrichtungsmodell 104 und das symmetrische Robotermodell 102M in dem virtuellen Raum 100 entsprechend den virtuellen Roboter-Betriebsparametern, den zweiten virtuellen Roboter-Betriebsparametern, den virtuellen Förderer-Betriebsparametern und einem Arbeitsprogramm.
-
Das Arbeitsprogramm ist im Systemspeicher 14 vorgespeichert. Beispielsweise ist dieses Arbeitsprogramm eingerichtet, um eine Operation auszuführen, bei der das Robotermodell 102 und das symmetrische Robotermodell 102M ein Werkstückmodell W ergreifen (9), das durch das Förderermodell 130 des Fördereinrichtungsmodells 104 in dem virtuellen Raum 100 gefördert wird.
-
Somit fungiert die CPU 12 bei dieser Ausführungsform als Simulationsvorrichtung 32 ( 1), konfiguriert zum Ausführen einer Simulation zum simulativen Betrieb des Robotermodells 102, des Fördereinrichtungsmodells 104 und des symmetrischen Robotermodells 102M.
-
Im Folgenden wird die Funktionsweise der Simulationsvorrichtung 10 gemäß einer anderen Ausführungsform mit Bezug auf 2, 4 und 10 bis 15 beschrieben.
-
In Schritt S1 ordnet die CPU 12 entsprechend der Darstellung in 10 als Reaktion auf die Eingabeoperation durch den Benutzer das Robotermodell 102 und ein Werkzeugmaschinenmodell 160 in dem virtuellen Raum 100 an.
-
Das Werkzeugmaschinen-Modell 160 ist ein dreidimensionales Modell einer Werkzeugmaschine, das ein Werkstück mit einem Schneidwerkzeug bearbeiten kann und das ein Arbeitstisch-Modell 162, ein Spindelkopf-Modell 164, ein Schneidwerkzeug-Modell 166, ein Spannmodell 168 und ein Werkstückmodell 170 umfasst.
-
Das Spindelkopf-Modell 164 ist am Arbeitstisch-Modell 162 bereitgestellt, um in Richtungen zum Arbeitstisch-Modell 162 und davon weg bewegbar zu sein. Das Schneidwerkzeug-Modell 166 ist drehbar an einem distalen Ende des Spindelkopf-Modells 164 bereitgestellt.
-
Das Spannmodell 168 ist am Arbeitstisch-Modell 162 bereitgestellt, um in Bezug auf das Arbeitstisch-Modell 162 unbeweglich zu sein. Das Werkstückmodell 170 ist am Spannmodell 168 angebracht.
-
Der Systemspeicher 14 speichert vorab mehrere Typen von Robotermodellen, einschließlich des Robotermodells 102, sowie mehrere Typen von Werkzeugmaschinen-Modellen einschließlich des Werkzeugmaschinen-Modells 160. Die CPU 12 erzeugt Bilddaten, in denen mehrere im Systemspeicher 14 gespeicherte Typen von Robotermodellen und Werkzeugmaschinen-Modellen in Form einer Liste wiedergegeben sind, und zeigt diese auf dem Display 22 an.
-
Der Benutzer verwendet den Dateneingabeabschnitt 20, um das Robotermodell 102 und das Werkzeugmaschinen-Modell 160 aus der auf dem Display 22 angezeigten Liste zu wählen. Der Dateneingabeabschnitt 20 sendet die vom Benutzer eingegebenen Eingabedaten über die I/O-Schnittstelle 18 zur CPU 12.
-
Als Reaktion auf die empfangenen Eingabedaten liest die CPU 12 das Robotermodell 102 und das Werkzeugmaschinen-Modell 160 aus den im Systemspeicher 14 gespeicherten Typen von Robotermodellen und Werkzeugmaschinen-Modellen und ordnet das Robotermodell 102 und das Werkzeugmaschinen-Modell 160 in dem virtuellen Raum 100 an. Anschließend erzeugt die CPU 12 Bilddaten des virtuellen Raums 100 und zeigt sie entsprechend der Darstellung in 10 auf dem Display 22 als Bild des virtuellen Raums 100 an.
-
Der Systemspeicher 14 speichert verschiedene virtuelle Werkzeugmaschinen-Betriebsparameter in Zusammenhang mit dem Werkzeugmaschinen-Modell 160. Diese virtuellen Werkzeugmaschinen-Betriebsparameter sind Parameter, die für den simulativen Betrieb des Werkzeugmaschinen-Modells 160 in dem virtuellen Raum 100 im weiter unten beschriebenen Schritt S10 erforderlich sind.
-
Die virtuellen Werkzeugmaschinen-Betriebsparameter umfassen einen Ursprung und Achsrichtungen eines Werkzeugmaschinen-Koordinatensystems 172, eine Bewegungsgeschwindigkeit und einen virtuellen Bewegungsbereich des Arbeitstisch-Modells 162, eine Bewegungsgeschwindigkeit und einen virtuellen Bewegungsbereich des Spindelkopf-Modells 164, Positionierungsinformation des Werkstückmodells 170 in Bezug auf das Spannmodell 168 und eine Rotationsgeschwindigkeit des Schneidwerkzeug-Modells 166 usw.
-
Das Roboter-Koordinatensystem 172 ist ein als Referenz verwendetes Koordinatensystem, wenn das Werkzeugmaschinen-Modell 160 in dem virtuellen Raum 100 betrieben wird, und es ist in dem virtuellen Raum 100 definiert durch den Ursprung und die Achsrichtungen des Werkzeugmaschinen-Koordinatensystems 172, die in den virtuellen Werkzeugmaschinen-Betriebsparametern enthalten sind.
-
Bei dieser Ausführungsform ist der Ursprung des Werkzeugmaschinen-Koordinatensystems 172 in einer vorbestimmten Position auf dem Arbeitstisch-Modell 162 angeordnet, und das Arbeitstisch-Modell 162 wird entlang der x-y-Ebene des Werkzeugmaschinen-Koordinatensystems 172 bewegt.
-
Bei der Bewegung des Arbeitstisch-Modells 162 werden auch das Spannmodell 168, das am Arbeitstisch-Modell 162 fixiert ist, und das Werkstückmodell 170, das auf dem Spannmodell 168 angebracht ist, zusammen mit dem Arbeitstisch-Modell 162 entlang der x-y-Ebene bewegt.
-
Weiter wird das Spindelkopf-Modell 164 entlang der z-Achse des Werkzeugmaschinen-Koordinatensystems 172 bewegt. Ferner wird das Schneidwerkzeug-Modell 166 um eine Drehachse parallel zur z-Achse rotiert.
-
Die Bewegungsgeschwindigkeit des Arbeitstisch-Modells 162 ist ein Parameter zum Bestimmen der Geschwindigkeit, mit der das Arbeitstisch-Modell 162 in dem virtuellen Raum 100 bewegt wird. Weiter ist der virtuelle Bewegungsbereich des Arbeitstisch-Modells 162 ein Parameter, der den Bewegungsbereich des Arbeitstisch-Modells 162 in der x-y-Ebene des Werkzeugmaschinen-Koordinatensystems 172 angibt.
-
Die Bewegungsgeschwindigkeit des Spindelkopf-Modells 164 ist ein Parameter zum Bestimmen der Geschwindigkeit, mit der das Spindelkopf-Modell 164 in dem virtuellen Raum 100 bewegt wird. Weiter ist der virtuelle Bewegungsbereich des Spindelkopf-Modells 164 ein Parameter, der den Bewegungsbereich des Spindelkopf-Modells 164 entlang der z-Achse des Werkzeugmaschinen-Koordinatensystems 172 angibt.
-
Die Positionierungsinformation des Werkstückmodells 170 bezüglich des Spannmodells 168 schließt Positionskoordinaten des Werkstückmodells 170 in Bezug auf das Spannmodell 168 im Werkzeugmaschinen-Koordinatensystem 172 ein sowie einen Parameter mit Bezug auf ein Verfahren zum Klemmen des Werkstückmodells 170 durch das Spannmodell 168 (z. B. Klemmen des Werkstückmodells 170 zwischen zwei öffenbaren und schließbaren Greifern, die am Spannmodell 168 bereitgestellt sind).
-
Die Rotationsgeschwindigkeit des Schneidwerkzeug-Modells 166 ist ein Parameter zum Bestimmen der Rotationsgeschwindigkeit, mit der das Spindelkopf-Modell 164 das Schneidwerkzeug-Modell 166 in dem virtuellen Raum 100 bewegt.
-
Entsprechend der Darstellung in 10 ordnet die CPU 12 das Roboter-Koordinatensystem 132, das Werkzeug-Koordinatensystem 134 und das Werkzeugmaschinen-Koordinatensystem 172 in dem virtuellen Raum 100 zusammen mit dem Robotermodell 102 und dem Fördereinrichtungsmodell 160 an. Weiter ist ähnlich der in 3 dargestellten Ausführungsform das Haupt-Koordinatensystem 138 ebenfalls in dem virtuellen Raum 100 angeordnet.
-
In Schritt S2 empfängt der Dateneingabeabschnitt 20 eine Eingabeoperation zum Auswählen eines Komponentenmodells. Insbesondere verwendet der Benutzer den Dateneingabeabschnitt 20 (z. B. eine Maus), um mindestens eines von mehreren Komponentenmodellen zu wählen (d. h. das Robotermodell 102 und das Werkzeugmaschinen-Modell 160), die auf dem Display 22 angezeigt werden.
-
Im Folgenden ist ein Fall beschrieben, bei dem der Benutzer das Werkzeugmaschinen-Modell 160 wählt. In diesem Fall empfängt der Dateneingabeabschnitt 20 die Eingabeoperation durch den Benutzer und sendet die Eingabedaten mit der Angabe der Auswahl des Werkzeugmaschinen-Modells 160 über die I/O-Schnittstelle 18 zur CPU 12.
-
Als Reaktion auf die empfangenen Eingabedaten bestimmt die CPU 12 das Werkzeugmaschinen-Modell 160 als Replikationssubjekt.
-
Man beachte, dass die CPU 12, um die Sichtbarkeit für den Benutzer zu verbessern, das in Schritt S2 als Replikationssubjekt bestimmte Werkzeugmaschinen-Modell 160 im Display 22 hervorheben kann (z. B. durch eine Änderung von Typ oder Farbton des Werkzeugmaschinen-Modells 160 oder durch Blinken des Robotermodells 102).
-
In Schritt S3 empfängt der Dateneingabeabschnitt 20 eine Eingabeoperation zur Auswahl eines als Referenz verwendeten Koordinatensystems. Insbesondere verwendet der Benutzer den Dateneingabeabschnitt 20 (z. B. eine Maus), um das Roboter-Koordinatensystem 132, oder das Werkzeug-Koordinatensystem 134, oder das Werkzeugmaschinen-Koordinatensystem 172, oder das Haupt-Koordinatensystem 138 in 10 auszuwählen.
-
Im Folgenden ist ein Fall beschrieben, bei dem der Benutzer das Roboter-Koordinatensystem 132 wählt. In diesem Fall empfängt der Dateneingabeabschnitt 20 die Eingabeoperation durch den Benutzer und sendet die Eingabedaten mit der Angabe der Auswahl des Roboter-Koordinatensystems 132 über die I/O-Schnittstelle 18 zur CPU 12. Als Reaktion auf die empfangenen Eingabedaten bestimmt die CPU 12 das Roboter-Koordinatensystem 132 als Referenz-Koordinatensystem.
-
Anschließend zeigt die CPU 12 entsprechend der Darstellung in 4 das als Referenz-Koordinatensystem bestimmte Roboter-Koordinatensystem 132 auf dem Display 22 an. In dem in 4 wiedergegebenen Roboter-Koordinatensystem 132 werden zusätzlich zur x-Achse, y-Achse und z-Achse des Roboter-Koordinatensystems 132 der Ursprung O, die x-y-Ebene P1, die x-z-Ebene P2 und die y-z-Ebene P3 angezeigt.
-
In Schritt S4 empfängt der Dateneingabeabschnitt 20 eine Eingabeoperation zur Auswahl des Ursprungs oder der Achse des in Schritt S3 gewählten Koordinatensystems oder einer durch das gewählte Koordinatensystem definierten Ebene.
-
Insbesondere verwendet der Benutzer entsprechend der Darstellung in 4 den Dateneingabeabschnitt 20 (z. B. eine Maus) zur Auswahl eines der folgenden Elemente: Ursprung O, x-Achse, y-Achse, z-Achse, x-y-Ebene P1, x-z-Ebene P2 und y-z-Ebene P3 des auf dem Display 22 angezeigten Roboter-Koordinatensystems 132.
-
Im Folgenden ist ein Fall beschrieben, bei dem der Benutzer die y-z-Ebene P3 des Roboter-Koordinatensystems 132 wählt. In diesem Fall empfängt der Dateneingabeabschnitt 20 die Eingabeoperation durch den Benutzer und sendet die Eingabedaten mit der Angabe der Auswahl der y-z-Ebene P3 des Roboter-Koordinatensystems 132 über die I/O-Schnittstelle 18 zur CPU 12.
-
In Schritt S5 gibt die CPU 12 einen Referenzpunkt, eine Referenzachse oder eine Referenzebene vor. Insbesondere gibt die CPU 12 als Reaktion auf die in Schritt S4 vom Dateneingabeabschnitt 20 empfangenen Eingabedaten die y-z-Ebene P3 des in 4 dargestellten Roboter-Koordinatensystems 132 als Referenzebene P3 vor.
-
Anschließend zeigt die CPU 12 entsprechend der Darstellung in 11 die Referenzebene P3 auf dem Display 22 an. In 11 ist die Referenzebene P3 vergrößert angezeigt, damit der Benutzer die Referenzebene P3 leicht erkennen kann.
-
In Schritt S6 erhält die CPU 12 eine Position, die mit Bezug auf den Referenzpunkt, die Referenzachse oder die Referenzebene zum Komponentenmodell symmetrisch ist. Als Beispiel erhält die CPU 12 die Koordinaten eines symmetrischen Ursprungs O' (12), der mit Bezug auf die Referenzebene P3 zum Ursprung O des Werkzeugmaschinen-Koordinatensystems 172 symmetrisch ist.
-
Beispielsweise können entsprechend der Darstellung in 12, falls die Koordinaten im Roboter-Koordinatensystem 132 des Ursprungs O des Werkzeugmaschinen-Koordinatensystems 172 (-x2, y2, z2) sind, die Koordinaten des symmetrischen Ursprungs O' erhalten werden als (x2, y2, z2).
-
Die CPU 12 speichert die so erhaltenen Koordinaten (x2, y2, z2) des auf diese Weise gefundenen symmetrischen Ursprungs O' im Arbeitsspeicher 16 als Koordinaten, die die mit Bezug auf die Referenzebene P3 zum Werkzeugmaschinen-Modell 160 symmetrische Position wiedergeben.
-
In Schritt S7 erzeugt die CPU 12 ein symmetrisches Komponentenmodell. Insbesondere erzeugt die CPU 12 unter Verwendung von Informationen des im Systemspeicher 14 gespeicherten Werkzeugmaschinen-Modells 160 ein symmetrisches Werkzeugmaschinen-Modell 160M, das ein in Schritt S2 mit Bezug auf die Referenzebene P3 als Replikationssubjekt bestimmtes, zum Werkzeugmaschinen-Modell 160 symmetrisches dreidimensionales Modell ist.
-
Das erzeugte symmetrische Werkzeugmaschinen-Modell 160M ist in 13 dargestellt. Dieses symmetrische Werkzeugmaschinen-Modell 160M umfasst ein symmetrisches Arbeitstisch-Modell 162M, ein symmetrisches Spindelkopf-Modell 164M, ein symmetrisches Schneidwerkzeug-Modell 166M, ein symmetrisches Spannmodell 168M und ein symmetrisches Werkstück-Modell 170M.
-
Das symmetrische Arbeitstisch-Modell 162M, das symmetrische Spindelkopf-Modell 164M, das symmetrische Schneidwerkzeug-Modell 166M, das symmetrische Spannmodell 168M und das symmetrische Werkstück-Modell 170M sind dreidimensionale Modelle mit Formen, die mit Bezug auf die Referenzebene P3 symmetrisch zum Arbeitstisch-Modell 162, zum Spindelkopf-Modell 164, zum Schneidwerkzeug-Modell 166, zum Spannmodell 168 bzw. zum Werkstück-Modell 170 sind.
-
In Schritt S8 ordnet die CPU 12 das symmetrische Komponentenmodell an der in Schritt S6 erhaltenen Position an. Insbesondere ordnet die CPU 12 das in Schritt S7 erzeugte symmetrische Robotermodell 102M an dem in Schritt S6 detektierten symmetrischen Ursprung O' an.
-
Zu diesem Zeitpunkt ist das symmetrische Robotermodell 160M mit Bezug auf den symmetrischen Ursprung O' angeordnet, sodass die Position des symmetrischen Ursprungs O' in Bezug auf das symmetrische Werkzeugmaschinen-Modell 160M gleich der Position des Ursprungs O des Werkzeugmaschinen-Koordinatensystems 172 mit Bezug auf das Werkzeugmaschinen-Modell 160 ist.
-
Noch spezifischer ist der Ursprung O des Werkzeugmaschinen-Koordinatensystems 172 bei dieser Ausführungsform entsprechend der vorstehenden Beschreibung an der vorbestimmten Position des Arbeitstisch-Modells 162 angeordnet. Dementsprechend ist das symmetrische Werkzeugmaschinen-Modell 160M mit Bezug auf den symmetrischen Ursprung O' so angeordnet, dass der symmetrische Ursprung O' an der entsprechenden vorbestimmten Position am symmetrischen Arbeitstisch-Modell 162M angeordnet ist.
-
Demzufolge ist das symmetrische Werkzeugmaschinen-Modell 160M entsprechend der Darstellung in 14 an einer Position angeordnet, die zum ursprünglichen Werkzeugmaschinen-Modell 160 mit Bezug auf die Referenzebene P3 symmetrisch ist.
-
In Schritt S9 repliziert die CPU 12 die virtuellen Betriebsparameter und übergibt sie an das erzeugte symmetrische Komponentenmodell. Insbesondere liest und repliziert die CPU 12 die virtuellen Werkzeugmaschinen-Betriebsparameter des im Systemspeicher 14 gespeicherten Werkzeugmaschinen-Modells 160, um zweite virtuelle Werkzeugmaschinen-Betriebsparameter zu erzeugen.
-
Anschließend ordnet die CPU 12 die zweiten virtuellen Werkzeugmaschinen-Betriebsparameter dem in 14 dargestellten symmetrischen Werkzeugmaschinen-Modell 160M zu und speichert die zweiten virtuellen Werkzeugmaschinen-Betriebsparameter im Systemspeicher 14. Die zweiten virtuellen Werkzeugmaschinen-Betriebsparameter sind Parameter, die für den simulativen Betrieb des symmetrischen Werkzeugmaschinen-Modells 160M in dem virtuellen Raum 100 im folgenden Schritt S10 erforderlich sind.
-
Die zweiten virtuellen Werkzeugmaschinen-Betriebsparameter umfassen einen Ursprung und Achsrichtungen eines zweiten Werkzeugmaschinen-Koordinatensystems 172' (15), eine Bewegungsgeschwindigkeit und einen virtuellen Bewegungsbereich des symmetrischen Arbeitstisch-Modells 162M, eine Bewegungsgeschwindigkeit und einen virtuellen Bewegungsbereich des symmetrischen Spindelkopf-Modells 164M, Positionierungsinformation des symmetrischen Werkstückmodells 170M in Bezug auf das symmetrische Spannmodell 168M (im Folgenden als „zweite Positionierinformation“ bezeichnet) und eine Rotationsgeschwindigkeit des symmetrischen Schneidwerkzeug-Modells 166M.
-
Entsprechend der Darstellung in 15 ist der Ursprung des zweiten Werkzeugmaschinen-Koordinatensystems 172' am in Schritt S6 erhaltenen symmetrischen Ursprung O' angeordnet, und die Achsrichtungen des zweiten Werkzeugmaschinen-Koordinatensystems 172' sind zu denen des Werkzeugmaschinen-Koordinatensystems 172 mit Bezug auf die Referenzebene P3 symmetrisch.
-
Die Bewegungsgeschwindigkeit und der virtuelle Bewegungsbereich des symmetrischen Arbeitstisch-Modells 162M, die Bewegungsgeschwindigkeit und der virtuelle Bewegungsbereich des symmetrischen Spindelkopf-Modells 164M und die Rotationsgeschwindigkeit des symmetrischen Schneidwerkzeug-Modells 166M usw., die in den zweiten virtuellen Werkzeugmaschinen-Betriebsparametern enthalten sind, stellen Werte dar, die mit denen der dem Werkzeugmaschinen-Modell 160 zugeordneten virtuellen Werkzeugmaschinen-Betriebsparametern identisch sind.
-
Die zweite Positionierungsinformation schließt (im Folgenden als „zweite Positionsinformation“ bezeichnete) Positionsinformationen des symmetrischen Werkstückmodells 170M bezüglich des symmetrischen Spannmodells 168M im zweiten Werkzeugmaschinen-Koordinatensystem 172' ein sowie einen Parameter mit Bezug auf ein Verfahren zum Klemmen des symmetrischen Werkstückmodells 170M durch das symmetrische Spannmodell 168M (im Folgenden als „zweites Spannverfahren“ bezeichnet).
-
Die zweite Positionsinformation wird repliziert, um zur ursprünglichen Positionsinformation mit Bezug auf die Referenzebene P3 symmetrisch zu sein. Weiter ist das zweite Spannverfahren mit dem ursprünglichen Spannverfahren identisch.
-
Somit werden die neu erzeugten zweiten virtuellen Werkzeugmaschinen-Betriebsparameter dem symmetrischen Werkzeugmaschinen-Modell 160M übergeben, und die CPU 12 betreibt das symmetrische Werkzeugmaschinen-Modell 160M in dem virtuellen Raum 100 im folgenden Schritt S10 unter Verwendung dieser zweiten virtuellen Werkzeugmaschinen-Betriebsparameter.
-
Durch das Ausführen der weiter oben erwähnten Schritte S1 bis S9 entsprechend der Darstellung in 15, wird in dem virtuellen Raum 100 ein Roboter-Systemmodell 180, einschließlich des Robotermodells 102, des Werkzeugmaschinen-Modells 160 und des symmetrischen Werkzeugmaschinen-Modells 160M konstruiert.
-
In Schritt S10 führt die CPU 12 eine Simulation aus, um das Roboter-Systemmodell 180 simulativ zu betreiben. Insbesondere betreibt die CPU 12 simulativ das Robotermodell 102, das Werkzeugmaschinen-Modell 160 und das symmetrische Werkzeugmaschinen-Modell 160M in dem virtuellen Raum 100, entsprechend den virtuellen Roboter-Betriebsparametern, den virtuellen Werkzeugmaschinen-Betriebsparametern, den zweiten virtuellen Werkzeugmaschinen-Betriebsparametern und einem Arbeitsprogramm.
-
Das Arbeitsprogramm ist im Systemspeicher 14 vorgespeichert. Beispielsweise ist dieses Arbeitsprogramm eingerichtet, um eine Operation auszuführen, bei der das Robotermodell 102 das am Werkzeugmaschinen-Modell 160 angebrachte Werkstückmodell 170 und das am symmetrischen Werkzeugmaschinen-Modell 160M angebrachte symmetrische Werkstückmodell 170M in dem virtuellen Raum 100 austauscht.
-
Entsprechend der Beschreibung weiter oben ist es bei den vorstehend erwähnten Ausführungsformen möglich, in dem virtuellen Raum 100 leicht die Komponentenmodelle der Roboter-Systemmodelle 150 oder 180 zu replizieren (z. B. das Robotermodell 102 oder das Werkzeugmaschinen-Modell 160), um mit Bezug auf eine gewünschte Referenz (Punkt, Achse oder Ebene) symmetrisch zu sein.
-
Gemäß dieser Konfiguration kann die Arbeit zur Erstellung eines Layouts der Roboter-Systemmodelle 150 oder 180 in dem virtuellen Raum 100 für eine Simulation signifikant erleichtert werden.
-
Weiter repliziert die CPU 12 bei den weiter oben beschriebenen Ausführungsformen beim Erzeugen des symmetrischen Komponentenmodells (z. B. des symmetrischen Robotermodells 102M oder des symmetrischen Werkzeugmaschinen-Modells 160M) die virtuellen Betriebsparameter des ursprünglichen Komponentenmodells (z. B. des Robotermodells 102 oder des Werkzeugmaschinen-Modells 160) und übergibt diese an das erzeugte symmetrische Komponentenmodell.
-
Infolgedessen ist es möglich, die Simulation für den simulativen Betrieb des erzeugten symmetrischen Komponentenmodells in Schritt S10 reibungslos und zuverlässig durchzuführen.
-
Man beachte, dass die CPU 12 im weiter oben beschriebenen Schritt S8 bei der Anordnung des symmetrischen Komponentenmodells (z. B. des symmetrischen Robotermodells 102M oder des symmetrischen Werkzeugmaschinen-Modells 160M) an der symmetrischen Position das ursprüngliche Komponentenmodell löschen kann (z. B. das Robotermodell 102 oder das Werkzeugmaschinen-Modell 160).
-
Dies bedeutet, dass das ursprüngliche Komponentenmodell (z. B. das Robotermodell 102 oder das Werkzeugmaschinen-Modell 160) invertiert und zum symmetrischen Komponentenmodell bewegt (z. B. zum symmetrischen Robotermodell 102M oder zum symmetrischen Werkzeugmaschinenmodell 160M).
-
Weiter kann der Benutzer im weiter oben beschriebenen Schritt S3 ein beliebiges Koordinatensystem in dem virtuellen Raum 100 auswählen. Zudem kann der Benutzer im weiter oben beschriebenen Schritt S4 ein beliebiges der folgenden Elemente als Referenz auswählen: Ursprung O, x-Achse, y-Achse, z-Achse, x-y-Ebene P1 x-z-Ebene P2 und y-z-Ebene P3 des Koordinatensystems (z. B. das Förderer-Koordinatensystem 136 oder das Roboter-Koordinatensystem 132).
-
Wenn der Benutzer beispielsweise die z-Achse des Koordinatensystems als Referenz wählt, kann die CPU 12 ein symmetrisches Komponentenmodell erzeugen, das mit Bezug auf die z-Achse zum in Schritt S2 ausgewählten Komponentenmodell rotationssymmetrisch ist (z. B. zum Robotermodell 102 oder zum Werkzeugmaschinen-Modell 160).
-
In diesem Fall kann der Dateneingabeabschnitt 20 vom Benutzer einen Winkel θ um die z-Achse zwischen dem ursprünglichen Komponentenmodell und dem zu erzeugenden symmetrischen Komponentenmodell empfangen. In diesem Fall erzeugt die CPU 12 das symmetrische Komponentenmodell, sodass der Winkel um die z-Achse zwischen dem ursprünglichen Komponentenmodell und dem erzeugten symmetrischen Komponentenmodell θ ist (d. h., Kopien mit Rotation um den Winkel θ).
-
Weiter kann die CPU 12 im weiter oben beschriebenen Schritt S6 beispielsweise auf der Basis des Haupt-Komponentensystems 138 die mit Bezug auf den Referenzpunkt, die Referenzachse oder die Referenzebene zum Komponentenmodell symmetrische Position erhalten.
-
Insbesondere nehme man bei in 6 dargestellten Ausführungsform an, dass im Haupt-Komponentensystem 138 die Koordinaten des Ursprungs O des Roboter-Koordinatensystems 132 (x3, y3, z3) sind; die CPU 12 berechnet dann die Koordinaten (x4, y4, z4) im Haupt-Koordinatensystem 138 des symmetrischen Ursprungs O' aus den Koordinaten (x3, y3, z3) des ursprünglichen Ausgangspunkts O und der Referenzebene P3. Weiter kann die CPU 12 im weiter oben beschriebenen Schritt S1 in dem virtuellen Raum 100 ein dreidimensionales Modell beliebiger Komponenten anordnen (z. B. einen Vision-Sensor, Lader oder dergleichen), die in anderen industriellen Robotersystemen als dem vorstehend erwähnten Roboter-Modell 102, dem Fördereinrichtungsmodell 104 oder dem Werkzeugmaschinen-Modell 160 eingesetzt werden.
-
Weiter kann mindestens eine der folgenden Komponenten bei der weiter oben beschriebenen Simulationsvorrichtung 10 weggelassen werden: Systemspeicher 14, Arbeitsspeicher 16, I/O-Schnittstelle 18, Dateneingabeabschnitt 20 und Display 22.
-
In diesem Fall kann die Simulationsvorrichtung 10 auch nur die CPU 12 umfassen, und das mindestens eine der folgenden weggelassenen Elemente: Systemspeicher 14, Arbeitsspeicher 16, I/O-Schnittstelle 18, Dateneingabeabschnitt 20 und Display 22 kann als an die Simulationsvorrichtung 10 angeschlossene externe Einrichtung konfiguriert sein.
-
Die Erfindung wurde mit Bezug auf ihre Ausführungsformen beschrieben, wobei die Ausführungsformen jedoch nicht so ausgelegt werden sollen, dass sie die in den Patentansprüchen definierte Erfindung einschränken. Während Ausführungsformen, die Kombinationen der in den Ausführungsformen der Erfindung beschriebenen Merkmale umfassen, im technischen Umfang der Erfindung eingeschlossen sein können, sind für die erfindungsgemäße Lösung nicht alle Kombinationen der Merkmale notwendigerweise erforderlich. Weiter ist es für Fachleute auf diesem Gebiet ersichtlich, dass verschiedene Abänderungen und Verbesserungen an den vorstehend beschriebenen Ausführungsformen vorgenommen werden können.
-
Darüber hinaus sei daraufhingewiesen, dass entsprechende Prozesse, wie z. B. die von einer Vorrichtung, einem System, einem Programm oder einem Verfahren ausgeführten Vorgänge, Verfahren, Schritte, Routinen und Phasen, die in den Patentansprüchen, der Spezifikation und Diagrammen aufgeführt sind, in beliebiger Reihenfolge ausgeführt werden können, solange die Reihenfolge nicht angegeben ist durch „vor“, „bevor“ oder dergleichen und solange die Ausgabe eines vorangegangenen Prozesses nicht in einem späteren Prozess verwendet wird. Selbst wenn der Betriebsablauf in den Patentansprüchen, Ausführungsformen oder Diagrammen unter Verwendung von Wortlauten wie „erster“, „nächster“, „folgend“ oder „anschließend“ beschrieben ist, bedeutet dies nicht zwangsläufig, dass der Prozess in dieser Reihenfolge ausgeführt werden muss.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- WO 2004/085120 [0002]
- JP 2014100780 A [0002]