DE112021005541T5 - Simulationsprogramm, Simulationsvorrichtung und Simulationsverfahren - Google Patents

Simulationsprogramm, Simulationsvorrichtung und Simulationsverfahren Download PDF

Info

Publication number
DE112021005541T5
DE112021005541T5 DE112021005541.0T DE112021005541T DE112021005541T5 DE 112021005541 T5 DE112021005541 T5 DE 112021005541T5 DE 112021005541 T DE112021005541 T DE 112021005541T DE 112021005541 T5 DE112021005541 T5 DE 112021005541T5
Authority
DE
Germany
Prior art keywords
model
machine
driver
simulation
motor
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.)
Pending
Application number
DE112021005541.0T
Other languages
English (en)
Inventor
Masamitsu Hattori
Kohei Suzuki
Kei Terada
Masaya Kimura
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE112021005541T5 publication Critical patent/DE112021005541T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)

Abstract

Simulationsprogramm zum Simulieren eines Betriebs eines Maschinensystems, das aufweist: eine Maschine, die einen Motor umfasst; einen Motortreiber, der den Motor steuert; und eine Steuerung, die den Motortreiber steuert, wobei ein Maschinenmodell, das einen Betrieb der Maschine simuliert, und ein Treibermodell verwendet werden, das einen Betrieb des Motortreibers simuliert. Das Simulationsprogramm veranlasst einen Computer, Prozessprozeduren auszuführen, die umfassen: einen Modellauswahlschritt zum Auswählen des Maschinenmodells und des Treibermodells, die für die Simulation zu verwenden sind, aus einer Modellbibliothek (13), die einen Kandidaten für das Maschinenmodell und einen Kandidaten für das Treibermodell enthält, auf Basis einer Abstraktionsebeneneinstellung, in der eine Abstraktionsebene der Simulation festgelegt ist; und einen Modellberechnungsschritt zum Simulieren eines Betriebs des Maschinensystems unter Verwendung des ausgewählten Maschinenmodells und Treibermodells. Kandidaten für das Maschinenmodell umfassen mehrere Maschinenmodelle, die eine Maschine auf unterschiedlichen Abstraktionsebenen simulieren, oder Kandidaten für das Treibermodell umfassen mehrere Treibermodelle, die einen Motortreiber auf unterschiedlichen Abstraktionsebenen simulieren.

Description

  • Gebiet
  • Die vorliegende Offenbarung bezieht sich auf ein Simulationsprogramm, eine Simulationsvorrichtung und ein Simulationsverfahren zur Simulation des Betriebs einer Maschine und/oder des Betriebs eines Motortreibers.
  • Hintergrund
  • Damit eine von einem Motor angetriebene Maschine einen gewünschten Vorgang ausführen kann, müssen Parameter wie Konstruktionsparameter zur Festlegung der Maschinenkonfiguration und Steuerparameter zur Steuerung des Motors eingestellt werden. Eine wiederholte testweise Produktion oder ein wiederholter Testbetrieb der Maschine zur Einstellung der Parameter erfordert einen enormen Arbeits-, Zeit- und Kostenaufwand. Daher werden die Parameter anhand des Berechnungsergebnisses einer numerischen Berechnung durch eine Simulationsvorrichtung angepasst, die den Betrieb der Maschine simuliert.
  • Um den Betrieb der Maschine zu simulieren, wird ein Modell zur Software-Simulation des Maschinenbetriebs benötigt. Zudem gibt es eine Vielzahl von Maschinen mit unterschiedlichen Spezifikationen für eine jeweilige Verwendung, und das Modell der Maschine muss ebenfalls entsprechend den Spezifikationen erstellt werden. Einerseits ist beispielsweise für ein Modell, das für eine Simulation zum Zweck der Parameteranpassung verwendet wird, Genauigkeit erforderlich, andererseits erfordert eine Simulation unter Verwendung eines Modells, das die gesamte Maschine mit hoher Genauigkeit simuliert, einen enormen Rechenaufwand. Daher wird für jedes Teil ein Modell mit einer geeigneten Abstraktionsebene verwendet, beispielsweise wird je nach Zweck der Simulation ein wichtiges Teil mit hoher Genauigkeit simuliert und andere Teile werden vereinfacht.
  • Ein kürzlich in Patentdokument 1 beschriebener Simulator erstellt Modelle eines Motortreibers, die einen Motor steuert, einer Sensorsignaleinheit, die ein Sensorsignal eingibt, und dergleichen, und kombiniert diese Modelle, um die Erstellung von Modellen für verschiedene Maschinen zu vereinfachen.
  • Liste der Zitate
  • Patentliteratur
  • Patentdokument 1: Internationale Offenlegungsschrift Nr. 2008/120304
  • Kurzbeschreibung
  • Technische Problemstellung
  • Bei der im obigen Patentdokument 1 beschriebenen Technik können zwar Modelle für Maschinen mit unterschiedlichen Konfigurationen erstellt werden, jedoch können für eine Maschine keine Modelle mit unterschiedlichen Abstraktionsebenen verwendet werden. Dementsprechend muss ein Benutzer bei der Technik des Patentdokuments 1 jedes Mal, wenn sich ein zu simulierender Inhalt ändert, ein Modell mit einer geeigneten Abstraktionsebene erstellen, was einen hohen Zeit- und Arbeitsaufwand für die Erstellung des Modells bedeutet. Daher besteht das Problem, dass eine Simulation mit hoher Berechnungseffizienz nicht einfach zu realisieren ist.
  • Die vorliegende Offenbarung entstand in Anbetracht des oben Gesagten, wobei eine Aufgabe der vorliegenden Offenbarung darin besteht, ein Simulationsprogramm zu erhalten, das eine Simulation mit hoher Berechnungseffizienz einfach realisieren kann.
  • Lösung der Problemstellung
  • Um das oben beschriebene Problem zu lösen und die Aufgabe zu erfüllen, gibt die vorliegende Offenbarung ein Simulationsprogramm zum Simulieren des Betriebs eines Maschinensystems an, das aufweist: eine Maschine, die einen Motor umfasst und von dem Motor angetrieben wird; einen Motortreiber, der den Motor steuert; und eine Steuerung, die den Motortreiber steuert, wobei ein Maschinenmodell, das einen Betrieb der Maschine simuliert, und ein Treibermodell verwendet wird, das einen Betrieb des Motortreibers simuliert. Das Simulationsprogramm veranlasst einen Computer, Prozessprozeduren auszuführen, die umfassen: einen Modellauswahlschritt zum Auswählen des Maschinenmodells, das bei der Simulation eines Betriebs der Maschine zu verwenden ist, und des Treibermodells, das bei der Simulation eines Betriebs des Motortreibers zu verwenden ist, aus einer Modellbibliothek, die einen Kandidaten für das Maschinenmodell und einen Kandidaten für das Treibermodell enthält, auf Basis einer Abstraktionsebeneneinstellung, bei der es sich um eine Information handelt, in der eine Abstraktionsebene einer Simulation bei der Simulation eines Betriebs des Maschinensystems festgelegt ist. Ferner veranlasst das Simulationsprogramm einen Computer, Prozessprozeduren auszuführen, die einen Modellberechnungsschritt zum Simulieren eines Betriebs des Maschinensystems unter Verwendung des Maschinenmodells und des Treibermodells umfasst, die im Modellauswahlschritt ausgewählt wurden. Bei dem Kandidaten für das Maschinenmodell und/oder dem Kandidaten für das Treibermodell handelt es sich um mehrere. Wenn es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Maschinenmodell um mehrere handelt, umfassen die Kandidaten für das Maschinenmodell mehrere Maschinenmodelle, die eine Maschine auf verschiedenen Abstraktionsebenen simulieren. Wenn es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Treibermodell um mehrere handelt, umfassen die Kandidaten für das Treibermodell mehrere Treibermodelle, die einen Motortreiber auf verschiedenen Abstraktionsebenen simulieren.
  • Vorteilhafte Wirkungen der Erfindung
  • Das Simulationsprogramm gemäß der vorliegenden Offenbarung hat den Effekt, dass eine Simulation mit hoher Berechnungseffizienz einfach zu realisieren ist.
  • Figurenliste
    • 1 zeigt eine Darstellung zur Veranschaulichung der Konfiguration eines Maschinensystems, dessen Betrieb durch eine Simulationsvorrichtung gemäß einer ersten Ausführungsform simuliert wird.
    • 2 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß der ersten Ausführungsform.
    • 3 zeigt ein Flussdiagramm zur Veranschaulichung einer Verarbeitungsprozedur einer Simulation durch eine Simulationsvorrichtung gemäß der ersten Ausführungsform.
    • 4 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß einer zweiten Ausführungsform.
    • 5 zeigt ein Flussdiagramm zur Erläuterung eines Ablaufprogramms, das in einem Maschinensystem verwendet wird, dessen Betrieb durch eine Simulationsvorrichtung gemäß der zweiten Ausführungsform simuliert wird.
    • 6 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß einer dritten Ausführungsform.
    • 7 zeigt ein Diagramm zur Erläuterung eines neuronalen Netzwerks, das von einer Simulationsvorrichtung gemäß der dritten Ausführungsform verwendet wird.
    • 8 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß einer vierten Ausführungsform.
    • 9 zeigt ein Diagramm zur Erläuterung eines Verfahrens, bei dem eine Simulationsvorrichtung gemäß der vierten Ausführungsform durch Vereinfachung eines Modells ein neues Modell erzeugt.
    • 10 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß einer fünften Ausführungsform.
    • 11 zeigt ein Diagramm zur Erläuterung eines neuronalen Netzwerks, das von einer Simulationsvorrichtung gemäß der fünften Ausführungsform verwendet wird.
    • 12 zeigt eine Darstellung zur Veranschaulichung der Konfiguration eines Maschinensystems, dessen Betrieb durch eine Simulationsvorrichtung gemäß einer sechsten Ausführungsform simuliert wird.
    • 13 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß der sechsten Ausführungsform.
    • 14 zeigt ein Diagramm zur Veranschaulichung eines Beispiels für eine Hardwarekonfiguration zur Implementierung einer Simulationsvorrichtung gemäß der ersten Ausführungsform.
  • Beschreibung von Ausführungsformen
  • Nachfolgend werden ein Simulationsprogramm, eine Simulationsvorrichtung und ein Simulationsverfahren gemäß Ausführungsformen der vorliegenden Offenbarung unter Bezugnahme auf die Figuren ausführlich beschrieben.
  • Erste Ausführungsform
  • 1 zeigt eine Darstellung zur Veranschaulichung der Konfiguration eines Maschinensystems, dessen Betrieb durch eine Simulationsvorrichtung gemäß einer ersten Ausführungsform simuliert wird. Bei der ersten Ausführungsform wird ein Fall beschrieben, in dem die Simulationsvorrichtung eine Simulation ausführt, d. h. eine Prozedur zum Simulieren des Betriebs eines in 1 dargestellten Maschinensystems 20A mit einem Drei-Achsen-Motor.
  • Das Maschinensystem 20A umfasst eine Maschine 1, die von einem Motor angetrieben wird, und eine Steuerung 10A, die die Maschine 1 steuert. Ferner umfasst die Maschine 1 einen Tisch 5 und einen Kopf 6. In der folgenden Beschreibung werden zwei zueinander orthogonale Richtungen in einer Ebene parallel zu einer oberen Fläche des Tisches 5 als X-Richtung und Y-Richtung bezeichnet. Eine Richtung, die orthogonal zur X-Richtung und zur Y-Richtung verläuft, wird als Z-Richtung bezeichnet.
  • Die Maschine 1 umfasst einen Drei-Achsen-Motor, der aus einer X-Achse 1a, die sich in X-Richtung erstreckt, einer Y-Achse 1b, die sich in Y-Richtung erstreckt, und einer Z-Achse 1c, die sich in Z-Richtung erstreckt, aufgebaut ist.
  • Der Tisch 5 ist mit der X-Achse 1a und der Y-Achse 1b verbunden und bewegt sich in einer XY-Ebene durch Betätigung der X-Achse 1a und Betätigung der Y-Achse 1b. Der Kopf 6 ist mit der Z-Achse 1c verbunden und bewegt sich durch Betätigung der Z-Achse 1c in der Richtung der Z-Achse 1c.
  • Die Steuereinheit 10A steuert die Position des Tisches 5 in X-Richtung und Y-Richtung, indem sie den Betrieb der X-Achse 1a und den Betrieb der Y-Achse 1b steuert. Ferner steuert die Steuerung 10A den Betrieb der Z-Achse 1c, um in Z-Richtung die Position des Kopfes 6 zu steuern, der am distalen Ende der Z-Achse 1c angebracht ist. Die Maschine 1 führt eine Bearbeitung durch den Kopf 6 an einem Werkstück Wp durch, das sich auf dem Tisch 5 befindet.
  • Außerdem ist ein Motortreiber (nicht dargestellt) an dem Maschinensystem 20A angebracht. Bei dem Maschinensystem 20A steuert die Steuerung 10A den Motortreiber, wobei der Motortreiber den Motor jeder Achse antreibt und steuert. Beispiele für die Steuerung 10A umfassen eine speicherprogrammierbare Steuerung, einen Industrie-PC, eine Servosystemsteuerung und dergleichen.
  • 2 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß der ersten Ausführungsform. Eine Simulationsvorrichtung 11 ist ein Computer, der den Betrieb des Maschinensystems 20A simuliert.
  • Die Simulationsvorrichtung 11 umfasst eine Modellauswahleinheit 12, eine Modellbibliothek 13 und eine Modellberechnungseinheit 14. Die Modellauswahleinheit 12 wählt auf Basis einer von außen vorgegebenen Abstraktionsebeneneinstellung aus den in der Modellbibliothek 13 gespeicherten Modellkandidaten ein Modell aus, das der Abstraktionsebeneneinstellung entspricht.
  • Bei der Abstraktionsebeneneinstellung handelt es sich um Informationen, die die Abstraktionsebene einer Simulation angeben. Anders ausgedrückt ist die Abstraktionsebeneneinstellung eine Information, mit der eine von mehreren vorab erstellten Simulationsoptionen ausgewählt werden kann. Die Abstraktionsebeneneinstellung umfasst demnach Informationen zur Festlegung der Abstraktionsebene des Modells. Die Abstraktionsebeneneinstellung wird von einem Benutzer der Simulationsvorrichtung 11 in die Modellauswahleinheit 12 eingegeben.
  • Die Abstraktionsebeneneinstellung kann eine Information sein, die den Zweck einer Simulation angibt, oder es kann sich um eine Information handeln, die eine Abstraktionsebene durch einen numerischen Wert angibt. Wenn die Abstraktionsebeneneinstellung eine Information ist, die eine Abstraktionsebene durch einen numerischen Wert angibt, ist die Abstraktionsebene der Simulation höher, wenn der numerische Wert der Abstraktionsebene größer ist, und entspricht einer vereinfachten Simulation. Es wird darauf hingewiesen, dass die Abstraktionsebeneneinstellung eine Information sein kann, die eine Verwendung der Simulation angibt.
  • In der Modellauswahleinheit 12 werden vorab Korrespondenzinformationen gespeichert, die eine Korrespondenz zwischen einer Abstraktionsebeneneinstellung und einem auszuwählenden Modell angeben. Das von der Modellauswahleinheit 12 auszuwählende Modell ist ein Modell, das dem Zweck der Simulation entspricht. Daher können die Korrespondenzinformationen auch als Informationen bezeichnet werden, in denen die Abstraktionsebeneneinstellung dem Modell zugeordnet ist, das dem Zweck der Simulation entspricht. Die Modellauswahleinheit 12 wählt auf Basis der Korrespondenzinformationen ein Modell aus, das der Abstraktionsebeneneinstellung entspricht.
  • In der Modellbibliothek 13 werden vorab mehrere Treibermodelle gespeichert, die unterschiedliche Abstraktionsebenen aufweisen. Bei der ersten Ausführungsform wird ein Fall beschrieben, in dem die vorab in der Modellbibliothek 13 gespeicherten Treibermodelle die beiden Treibermodelle D1 und D2 sind.
  • Die Treibermodelle D1 und D2 sind Modelle, die den Betrieb des Motortreibers simulieren. Das Treibermodell D1 ist ein Modell, das den Betrieb des Motortreibers mit höherer Genauigkeit simuliert als das Treibermodell D2. Das Treibermodell D1 simuliert beispielsweise die Funktionen einer Vorwärtssteuerung, einer Positionsrückkopplungssteuerung, einer Drehzahlrückkopplungssteuerung, einer Stromsteuerung und dergleichen. Ferner ist das Treibermodell D2 ein Modell, das den Betrieb des Motortreibers einfacher simuliert als das Treibermodell D 1. Das Treibermodell D2 simuliert z. B. nur die Funktion der Vorwärtssteuerung.
  • Darüber hinaus werden in der Modellbibliothek 13 vorab mehrere Maschinenmodelle mit unterschiedlichen Abstraktionsebenen gespeichert. Bei der ersten Ausführungsform wird ein Fall beschrieben, in dem die vorab in der Modellbibliothek 13 gespeicherten Maschinenmodelle die beiden Maschinenmodelle M1 und M2 sind.
  • Die Maschinenmodelle M1 und M2 sind Modelle, die einen Betrieb der Maschine 1 simulieren. Das Maschinenmodell M1 ist ein Modell, das den Betrieb der Maschine 1 mit höherer Genauigkeit simuliert als das Maschinenmodell M2. Das Maschinenmodell M1 simuliert beispielsweise Schwingungseigenschaften und Ähnliches der Maschine 1. Außerdem ist das Maschinenmodell M2 ein Modell, das den Betrieb der Maschine 1 einfacher simuliert als das Maschinenmodell M1. Das Maschinenmodell M2 simuliert beispielsweise die Arbeitsbereiche des Tisches 5 und des Kopfes 6. Einzelheiten zu den Treibermodellen D 1 und D2 und den Maschinenmodellen M1 und M2 werden später beschrieben.
  • Es wird darauf hingewiesen, dass die Modellauswahleinheit 12 von dem Treibermodell und dem Maschinenmodell lediglich zumindest eines der Modelle auswählen muss. So kann die Modellauswahleinheit 12 beispielsweise nur das Treibermodell oder nur das Maschinenmodell auswählen. Anders ausgedrückt handelt es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Maschinenmodell und/oder eines Kandidaten für das Treibermodell, die in der Modellbibliothek 13 enthalten sind, um mehrere. Wenn es mehrere Kandidaten für das Maschinenmodell gibt, umfassen die Kandidaten für das Maschinenmodell mehrere Maschinenmodelle, die eine Maschine auf verschiedenen Abstraktionsebenen simulieren. Wenn es mehrere Kandidaten für das Treibermodell gibt, umfassen die Kandidaten für das Treibermodell mehrere Treibermodelle, die einen Motortreiber auf verschiedenen Abstraktionsebenen simulieren.
  • Die Modellauswahleinheit 12 wählt ein festgelegtes Maschinenmodell aus, wenn nur das Treibermodell aus den mehreren Treibermodellen ausgewählt wird. Bei der Auswahl nur des Maschinenmodells aus den mehreren Maschinenmodellen wählt die Modellauswahleinheit 12 hingegen ein festgelegtes Treibermodell aus.
  • Darüber hinaus kann die Modellauswahleinheit 12 eine Kombination aus einem Treibermodell und einem Maschinenmodell auswählen. In diesem Fall speichert die Modellauswahleinheit 12 vorab Korrespondenzinformationen, die eine Korrespondenz zwischen einer Abstraktionsebeneneinstellung und einer Kombination der auszuwählenden Modelle angeben. Bei der ersten Ausführungsform wird ein Fall beschrieben, in dem die Modellauswahleinheit 12 eine Kombination aus einem Treibermodell und einem Maschinenmodell auswählt. In der folgenden Beschreibung kann die Kombination aus einem Treibermodell und einem Maschinenmodell als Modellsatz bezeichnet sein. Die Modellauswahleinheit 12 teilt der Modellberechnungseinheit 14 den aus der Modellbibliothek 13 ausgewählten Modellsatz mit.
  • Der Modellsatz entspricht dem Zweck der Simulation. Bei der ersten Ausführungsform wird ein Fall beschrieben, in dem zwei Arten von Optionen als Simulationen erstellt werden. Wenn beispielsweise eine Simulation zur Überprüfung eines Bewegungsbereichs eines beweglichen Teils des Maschinensystems 20A ausgeführt werden soll, benötigt die Simulationsvorrichtung 11 ein Modell eines Motors, der das bewegliche Teil antreibt, und ein Modell eines Motortreibers, der den Motor ansteuert. Die Simulationsvorrichtung 11 muss in diesem Fall die sensiblen Schwingungseigenschaften und das Steuerungsansprechverhalten des Motors nicht mit hoher Genauigkeit simulieren und kann das Motormodell, das Treibermodell und das Maschinenmodell abstrahieren.
  • Damit der Benutzer die Steuerparameter eines Motortreibers einer mehrachsigen Vorrichtung, an der eine große Anzahl von Motoren montiert ist, einstellen kann, ist ein detailliertes Modell des Motortreibers, des Motors und der Maschine 1 als einzustellendes Ziel erforderlich. Die Simulationsvorrichtung 11 benötigt in diesem Fall kein detailliertes Modell für einen Motortreiber und einen Motor, die kein einzustellendes Ziel sind.
  • Darüber hinaus gibt es einen Fall, in dem eine Simulation zur Fehlersuche in einem Ablaufprogramm der im Maschinensystem 20A enthaltenen Steuerung 10A, wie beispielsweise einer speicherprogrammierbaren Steuerung, eines Industrie-PCs oder einer Servosystemsteuerung, durchgeführt wird. In diesem Fall benötigt die Simulationsvorrichtung 11 ein Modell, das einen Ausführungszyklus und eine Ausführungsreihenfolge des Ablaufprogramms genau simuliert, die Schwingungseigenschaften und dergleichen der Maschine 1 können jedoch vereinfacht werden. Darüber hinaus gibt es verschiedene Simulationszwecke wie eine Simulation für die thermische Analyse des Maschinensystems 20A, das durch den Motor angetrieben wird, und eine Simulation der Energieverbrauchsanalyse, wobei eine Simulation wünschenswerterweise einfach durch die Verwendung eines Modells einer geeigneten Abstraktionsebene innerhalb eines Bereichs zur Erreichung dieser individuellen Zwecke durchgeführt wird.
  • Daher speichert die Simulationsvorrichtung 11 vorab verschiedene Modelle, die verschiedenen Simulationszwecken entsprechen, und führt eine Simulation unter Verwendung eines Modells aus, das einem ausgewählten Simulationszweck entspricht.
  • Bei der ersten Ausführungsform wird ein Fall beschrieben, in dem zwei Arten von Simulationen als Simulationsoptionen erstellt werden, d. h. beispielsweise eine Simulation zum Zweck der Überprüfung der Arbeitsbereiche des Tisches 5 und des Kopfes 6 und eine Simulation zum Zweck der Parametereinstellung des Motortreibers, der den Tisch 5 bewegt.
  • Die Modellauswahleinheit 12 wählt auf Basis der Abstraktionsebeneneinstellung ein für den Simulationszweck geeignetes Modell aus der Modellbibliothek 13 aus. Dabei handelt es sich bei den mehreren Maschinenmodellen M1 und M2, die vorab in der Modellbibliothek 13 gespeichert wurden, um Software mit einer gemeinsamen Schnittstelle. Die Maschinenmodelle M1 und M2 sind demnach Software, bei der Eingaben und Ausgaben gemeinsame Informationen sind.
  • Zum Beispiel kann ein Benutzer vorab ein Objekt definieren, das Informationen über den Motor wie eine Motorposition und eine Motordrehzahl zusammen speichert, wobei dieses Objekt als Eingabe für die gemeinsame Schnittstelle der Maschinenmodelle verwendet werden kann. Ferner kann der Benutzer vorab ein Objekt definieren, in dem Informationen wie eine Position des Tisches 5, eine Position des Kopfes 6, eine auf den Motor ausgeübte äußere Kraft und die Wärmeerzeugung der Maschine 1 gesammelt werden, wobei dieses Objekt als Ausgabe der gemeinsamen Schnittstelle der Maschinenmodelle verwendet werden kann. In diesem Fall kann ein Eingangs- und Ausgangstyp ein variabler Typ oder ein struktureller Typ sein. Die gemeinsame Schnittstelle der Maschinenmodelle kann von den verschiedenen Maschinenmodellen M1 und M2, die eine Maschine 1 simulieren, gemeinsam genutzt werden. Beachten Sie, dass die Eingabe-/Ausgabespezifikation für die gemeinsame Schnittstelle der Maschinenmodelle nicht auf den bei der ersten Ausführungsform beschriebenen Inhalt beschränkt ist.
  • Bei der ersten Ausführungsform wird angenommen, dass die gemeinsame Schnittstelle der Maschinenmodelle M1 und M2 eine Eingabeschnittstelle umfasst, die eine Motorposition der X-Achse 1a, eine Motorposition der Y-Achse 1b und eine Motorposition der Z-Achse 1c beziehen kann.
  • Das Maschinenmodell M1 ist beispielsweise ein Modell, das die Dynamik der Maschine 1 berücksichtigt und das Schwingungsverhalten der Maschine 1 simuliert. Das Maschinenmodell M2 ändert die Position des Tisches 5 und die Position des Kopfes 6 nur durch Kinematik basierend auf der Motorposition, ohne die Dynamik der Maschine 1 zu berücksichtigen, und simuliert die Arbeitsbereiche des Tisches 5 und des Kopfes 6. Es wird darauf hingewiesen, dass das Maschinenmodell M2 nur einen der Arbeitsbereiche des Tisches 5 und des Kopfes 6 simulieren kann.
  • Die Modellberechnungseinheit 14 liest aus der Modellbibliothek 13 das Treibermodell und das Maschinenmodell, die dem von der Modellauswahleinheit 12 mitgeteilten Modellsatz entsprechen. Unter Verwendung des ausgelesenen Treibermodells und Maschinenmodells führt die Modellberechnungseinheit 14 eine Simulationsberechnung des Motortreibers und der Maschine 1 durch.
  • Die Modellberechnungseinheit 14 führt die Berechnung des Modells des Maschinensystems 20A unter Einbeziehung des aus der Modellbibliothek 13 ausgewählten Modells durch. Es wird beispielsweise angenommen, dass ein Motormodell und ein Steuerungsmodell im Modell des Maschinensystems 20A enthalten sind. Das Motormodell ist ein Modell, das den Betrieb des Motors simuliert, und das Steuerungsmodell ist ein Modell, das den Betrieb der Steuerung 10A simuliert. In diesem Fall legt die Modellberechnungseinheit 14 ein Modell des Maschinensystems 20A fest, das umfasst: ein Treibermodell und ein Motormodell, die der X-Achse 1a entsprechen; ein Treibermodell und ein Motormodell, die der Y-Achse 1b entsprechen; ein Treibermodell und ein Motormodell, die der Z-Achse 1c entsprechen; ein Maschinenmodell; und ein Steuerungsmodell, das dem Motortreiber einen Motorpositionsbefehl gibt. Die Modellberechnungseinheit 14 kann das Motormodell und das Steuerungsmodell aus der Modellbibliothek 13 oder aus einer anderen Bibliothek als der Modellbibliothek 13 beziehen. Die Modellberechnungseinheit 14 gibt ein Simulationsergebnis an eine externe Vorrichtung, wie beispielsweise eine Anzeigevorrichtung, aus. Daraufhin zeigt die Anzeigevorrichtung das Simulationsergebnis an.
  • Als Nächstes wird eine Simulationsverarbeitungsprozedur der Simulationsvorrichtung 11 beschrieben. 3 zeigt ein Flussdiagramm zur Veranschaulichung der Simulationsverarbeitungsprozedur einer Simulationsvorrichtung gemäß der ersten Ausführungsform.
  • Die Modellauswahleinheit 12 der Simulationsvorrichtung 11 empfängt eine vom Benutzer eingegebene Abstraktionsebeneneinstellung (Schritt S10). Die Modellauswahleinheit 12 wählt auf Basis der Abstraktionsebeneneinstellung einen Modellsatz aus der Modellbibliothek 13 aus (Schritt S20). Die Modellauswahleinheit 12 wählt z. B. einen Modellsatz aus, der aus zwei Modellen eines der Treibermodelle D1 und D2 und eines der Maschinenmodelle M1 und M2 besteht.
  • Die Modellauswahleinheit 12 benachrichtigt die Modellberechnungseinheit 14 über den ausgewählten Modellsatz. Die Modellberechnungseinheit 14 liest den von der Modellauswahleinheit 12 ausgewählten Modellsatz aus der Modellbibliothek 13 (Schritt S30).
  • Unter Verwendung des ausgelesenen Modellsatzes simuliert die Modellberechnungseinheit 14 den Betrieb des Maschinensystems 20A (Schritt S40). Die Modellberechnungseinheit 14 gibt das Simulationsergebnis an eine Anzeigevorrichtung oder dergleichen aus (Schritt S50). Daher kann der Benutzer das Simulationsergebnis überprüfen.
  • Nachfolgend wird eine detaillierte Funktionsweise der Simulationsvorrichtung 11 gemäß der ersten Ausführungsform beschrieben. Zunächst wird ein Fall betrachtet, in dem der Benutzer die Simulation zum Zweck der Überprüfung der Arbeitsbereiche des Tisches 5 und des Kopfes 6 als Abstraktionsebeneneinstellung auswählt.
  • Es wird angenommen, dass in den Korrespondenzinformationen der Modellauswahleinheit 12 drei Treibermodelle D2, die der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c entsprechen, und das Maschinenmodell M2 vorab als auszuwählend bestimmt werden, wenn die Simulation zum Zweck der Überprüfung der Arbeitsbereiche des Tisches 5 und des Kopfes 6 ausgewählt wird. Wenn eine Abstraktionsebeneneinstellung, die der Simulation zum Zweck der Überprüfung der Arbeitsbereiche des Tisches 5 und des Kopfes 6 entspricht, durch den Benutzer bestimmt wird, wählt die Modellauswahleinheit 12 in diesem Fall als Treibermodelle die Treibermodelle D2, die der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c entsprechen, auf Basis der Abstraktionsebeneneinstellung und der Korrespondenzinformationen aus. Zudem wählt die Modellauswahleinheit 12 das Maschinenmodell M2 als Maschinenmodell aus.
  • Die Modellberechnungseinheit 14 führt eine Simulation aus, um den Einsatz einer Kopfposition zu simulieren, die eine Position des Kopfes 6 ist, indem sie den ausgewählten Modellsatz verwendet, d. h. die Treibermodelle D2 und das Maschinenmodell M2. Dabei gibt die Modellberechnungseinheit 14 einen Positionsbefehl der X-Achse 1a, der durch das Steuerungsmodell erzeugt wurde, in das Treibermodell D2 der X-Achse 1a ein. In diesem Fall steuert das Treibermodell D2 die Motorposition der X-Achse 1a simulativ nur durch Vorwärtssteuerung. Die Modellberechnungseinheit 14 gibt analog zur X-Achse 1a auch für die Y-Achse 1b und die Z-Achse 1c einen durch das Steuerungsmodell erzeugten Positionsbefehl in das Treibermodell D2 ein. In diesem Fall steuert das Treibermodell D2 die Motorpositionen der Y-Achse 1b und der Z-Achse 1c simulativ nur durch Vorwärtssteuerung. Infolgedessen berechnet die Modellberechnungseinheit 14 die Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c unter Verwendung des Treibermodells D2.
  • Unter Verwendung der auf diese Weise berechneten Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c als Eingabe berechnet die Modellberechnungseinheit 14 das Maschinenmodell M2. Da hier das Maschinenmodell M2 als Maschinenmodell ausgewählt wird, werden die Tischposition und die Kopfposition nur durch Kinematik auf Basis der Motorposition jeder Achse berechnet. Dadurch kann die Modellberechnungseinheit 14 die Arbeitsbereiche des Tisches 5 und des Kopfes 6 simulieren. Die Modellberechnungseinheit 14 gibt die Arbeitsbereiche des Tisches 5 und des Kopfes 6 als Ergebnis der Simulation aus.
  • Als Nächstes wird ein Fall betrachtet, in dem der Benutzer die Simulation zum Zweck der Parametereinstellung des Motortreibers des Tisches 5 als Abstraktionsebeneneinstellung auswählt.
  • Es wird angenommen, dass in den Korrespondenzinformationen der Modellauswahleinheit 12 das Treibermodell D1 als Treibermodell, das der X-Achse 1a und der Y-Achse 1b entspricht, vorab als auszuwählend bestimmt wurde, wenn die Simulation zum Zweck der Parametereinstellung des Motortreibers des Tisches 5 ausgewählt wird. Ferner wird angenommen, dass in den Korrespondenzinformationen das Treibermodell D2 als das der Z-Achse 1c entsprechende Treibermodell und das Maschinenmodell M1 als Maschinenmodell im Voraus als auszuwählend bestimmt wurden, wenn die Simulation zum Zweck der Parametereinstellung des Motortreibers des Tisches 5 ausgewählt wird. Wenn vom Benutzer die Simulation zum Zweck der Parametereinstellung des Motortreibers des Tisches 5 bestimmt wird, wählt die Modellauswahleinheit 12 in diesem Fall das Treibermodell D1 als das Treibermodell, das der X-Achse 1a und der Y-Achse 1b entspricht, auf Basis der Abstraktionsebeneneinstellung und der Korrespondenzinformationen aus. Ferner wählt die Modellauswahleinheit 12 das Treibermodell D2 als das der Z-Achse 1c entsprechende Treibermodell aus. Darüber hinaus wählt die Modellauswahleinheit 12 das Maschinenmodell M1 als Maschinenmodell aus.
  • Die Modellberechnungseinheit 14 führt eine Simulation aus, um einen Einsatz der Kopfposition zu simulieren, indem sie die ausgewählten Modelle verwendet, d. h. die Treibermodelle D1 und D2 und das Maschinenmodell M1. Dabei gibt die Modellberechnungseinheit 14 einen Positionsbefehl der X-Achse 1a, der durch das Steuerungsmodell erzeugt wird, in das Treibermodell D1 der X-Achse 1a ein. In diesem Fall steuert das Treibermodell D1 die Motorposition simulativ mit Hilfe einer Vorwärtssteuerung, einer Positionsrückkopplungssteuerung, einer Drehzahlrückkopplungssteuerung und einer Stromsteuerung. In der Maschine 1 ist beispielsweise eine Proportional-Integral (PI)-Steuerung als Positionsrückkopplungssteuerung und Drehzahlrückkopplungssteuerung eingebaut. In diesem Fall sind eine Proportionalverstärkung und eine Integralverstärkung jeweils Steuerparameter, und das Steuerungsansprechverhalten des Motors der X-Achse 1a wird durch Änderung dieser Steuerparameter geändert.
  • Ähnlich wie bei der X-Achse 1a wird, da das Treibermodell der Y-Achse 1b das Treibermodell D1 ist, das Positionssteuerungsverhalten des Motors der Y-Achse 1b auf Basis der Steuerparameter geändert. Da das Motortreibermodell der Z-Achse 1c das Treibermodell D2 ist, wird die Motorposition nur durch Vorwärtssteuerung gesteuert.
  • Ferner wird als Maschinenmodell das Maschinenmodell M1 zur Simulation von Schwingungseigenschaften gewählt. Demnach wird in der Maschine 1 durch den Betrieb des Motors eine Vibration oder dergleichen erzeugt. Dementsprechend gibt die Modellberechnungseinheit 14 eine Tischposition als Simulationsergebnis aus. Dadurch kann der Benutzer überprüfen, ob der Tisch 5 vibriert oder nicht. Ferner kann der Benutzer die Steuerparameter der X-Achse 1a und der Y-Achse 1b so einstellen, dass keine Vibration des Tisches 5 auftritt, während das Vorhandensein oder Fehlen von Vibrationen der Maschine 1, die das Simulationsergebnis darstellen, überprüft wird.
  • Wie oben beschrieben wurde, wählt der Benutzer bei der ersten Ausführungsform einen beliebigen Zweck aus mehreren Arten von Simulationszwecken, wie beispielsweise zwei Arten von Simulationszwecken, aus und gibt den ausgewählten Zweck als Abstraktionsebeneneinstellung in die Simulationsvorrichtung 11 ein. Auf Basis der Abstraktionsebeneneinstellung und der Korrespondenzinformationen wählt die Modellauswahleinheit 12 ein Modell mit einer geeigneten Abstraktionsebene aus den in der Modellbibliothek 13 gespeicherten Modellen aus, so dass ein erforderlicher Berechnungsumfang kleiner als ein vorgegebener Wert wird, während die für die Simulation erforderliche Genauigkeit beibehalten wird.
  • Wenn zum Beispiel eine Simulation zum Zweck der Überprüfung der Arbeitsbereiche des Kopfes 6 und des Tisches 5 ausgewählt wird, wählt die Modellauswahleinheit 12 das Maschinenmodell M2 und das Treibermodell D2 aus. Das Maschinenmodell M2 berechnet eine Tischposition und eine Kopfposition, die der Motorposition entsprechen, nur auf Basis der Kinematik. Da das Maschinenmodell M2 keinen Einfluss von Dynamik, wie z. B. einer externen Kraft, auf die Motorposition berücksichtigt, ist eine Simulation zur Steuerung der Motorposition mit Hilfe einer Rückkopplungssteuerung nicht erforderlich. Daher wählt die Modellauswahleinheit 12 bei der Auswahl des Maschinenmodells M2 das einfache Treibermodell D2 mit reiner Vorwärtssteuerung aus.
  • Infolgedessen muss die Simulationsvorrichtung 11 keine komplexe Differentialgleichung berechnen, die sich auf die Dynamik oder die Rückkopplungssteuerung der Maschine 1 bezieht, und die Berechnung der Modellberechnungseinheit 14 wird sehr einfach. Daher kann die Simulationsvorrichtung 11 verglichen mit dem Fall der Berechnung einer Differentialgleichung bei der Ausführung einer Simulation eines detaillierten Modells die Arbeitsbereiche des Kopfes 6 und des Tisches 5 mit sehr geringem Berechnungsaufwand überprüfen. Die Simulationsvorrichtung 11 kann demnach eine Simulation mit einem Modell einer geeigneten Abstraktionsebene durchführen, um den Zweck der Simulation zu erfüllen und gleichzeitig die Berechnungskosten zu reduzieren.
  • Wenn hingegen die Simulation zum Zweck der Parametereinstellung des Motortreibers des Tisches 5 ausgewählt wird, wählt die Modellauswahleinheit 12 das Treibermodell D1 zur Ausführung einer detaillierten Simulation als Treibermodell aus, das der X-Achse 1a und der Y-Achse 1b entspricht, die den Tisch 5 antreiben. Darüber hinaus wählt die Modellauswahleinheit 12 das Maschinenmodell M1 für die Ausführung einer detaillierten Simulation als Maschinenmodell aus. Die Modellauswahleinheit 12 wählt das Treibermodell D2, das ein einfaches Treibermodell ist, für das Treibermodell der Z-Achse 1c aus, das das Steuerungsverhalten der Motortreiber der X-Achse 1a und der Y-Achse 1b nicht beeinflusst.
  • Dann stellt der Benutzer die Parameter der X-Achse 1a und der Y-Achse 1b ein, während er die als Simulationsergebnis ausgegebenen Schwingungen des Tisches 5 überprüft. Da die Simulationsvorrichtung 11 in diesem Fall ein detailliertes Modell für die Simulation des Betriebs der X-Achse 1a, der Y-Achse 1b und des Tisches 5 verwendet, kann der Benutzer die Parameter genau einstellen. Obwohl das detaillierte Modell in diesem Fall ein Modell mit einem großen Berechnungsumfang ist, verwendet die Simulationsvorrichtung 11 ein vereinfachtes Modell für den Betrieb der Z-Achse 1c, die nicht für die Einstellung der Steuerparameter der Motortreiber der X-Achse 1a und der Y-Achse 1b berücksichtigt werden muss. Dementsprechend kann die Simulationsvorrichtung 11 den Berechnungsumfang für die Simulation des Betriebs der Z-Achse 1c reduzieren. Das heißt, die Simulationsvorrichtung 11 kann eine Simulation unter Verwendung eines Modells einer geeigneten Abstraktionsebene durchführen, um den Zweck der Simulation zu erfüllen, und gleichzeitig können die Berechnungskosten reduziert werden.
  • Auf diese Weise ist es möglich, auch bei beliebiger Abstraktionsebeneneinstellung durch den Benutzer eine Simulation mit hoher Berechnungseffizienz zu realisieren, da die Simulationsvorrichtung 11 auf Basis der Abstraktionsebeneneinstellung ein Modell mit einer geeigneten Abstraktionsebene dem Zweck der Simulation entsprechend auswählen kann.
  • Wenn zum Beispiel ein Parameter der Maschine 1, die von dem Motor angetrieben wird, eingestellt wird, wird eine Simulation viele Male ausgeführt, während der Parameter geändert wird, weswegen der Berechnungsaufwand und der Zeitaufwand der Simulation reduziert werden müssen, damit sie gering sind. Selbst wenn der Parameter geändert wird und die Simulation viele Male ausgeführt wird, kann die Simulationsvorrichtung 11 gemäß der ersten Ausführungsform den Berechnungsaufwand und den Zeitaufwand auf ein geringes Maß reduzieren, da die Simulationsvorrichtung 11 ein Modell einer geeigneten Abstraktionsebene auf Basis der Abstraktionsebeneneinstellung entsprechend dem Zweck der Simulation auswählen kann.
  • Hier werden die Auswirkungen der Maschinenmodelle M1 und M2 beschrieben, die bei der ersten Ausführungsform eine gemeinsame Schnittstelle haben. Während der Parametereinstellung des Motortreibers gibt es zum Beispiel einen Fall, in dem eine gewünschte Betriebsspezifikation des Maschinensystems 20A nicht erfüllt werden kann, egal wie der Parameter des Motortreibers angepasst wird, wobei eine Struktur, ein Material und dergleichen der Maschine 1 zwangsläufig geändert werden müssen. Darüber hinaus gibt es beispielsweise einen Fall, in dem neu festgestellt wird, dass sich die Betriebseigenschaften der Maschine 1 unter dem Einfluss von Temperatur oder Feuchtigkeit einer Installationsumgebung der Maschine 1 ändern, und die erforderliche Simulationsgenauigkeit kann nicht erreicht werden, wenn nicht ein neues Maschinenmodell verwendet wird, das diese Einflüsse berücksichtigt.
  • In einem solchen Fall erzeugt der Benutzer ein Maschinenmodell neu. Wenn ein neues Maschinenmodell erstellt wird, das einer Spezifikation der gemeinsamen Schnittstelle der Maschinenmodelle entspricht, kann dabei eine Simulation des neuen Maschinensystems 20A durch einfaches Ersetzen der Maschinenmodelle in der Modellberechnungseinheit 14 ausgeführt werden. Das heißt, wenn die Maschinenmodelle ersetzt werden, ist es nicht notwendig, ein Programm zur Ausführung von Berechnungen zwischen den Modellen hinzuzufügen oder zu ändern. Da die Maschinenmodelle eine gemeinsame Schnittstelle haben, kann die Simulationsvorrichtung 11 auf diese Weise leicht eine geeignete Simulation entsprechend dem Zweck der Simulation ausführen.
  • Bei der ersten Ausführungsform wurde der Einfachheit halber ein Fall beschrieben, in dem eine beliebige von zwei Arten von Simulationszwecken als Abstraktionsebeneneinstellung ausgewählt wird, wobei jedoch jede beliebige von drei oder mehr Arten von Simulationszwecken ausgewählt werden kann.
  • Zusätzlich zu dem bei der ersten Ausführungsform beschriebenen Zweck der Simulation kann die Simulationsvorrichtung 11 beispielsweise das Treibermodell D1 für den Motortreiber der Z-Achse 1c auswählen, um einen Parameter des Motortreibers der Z-Achse 1c einzustellen. In diesem Fall kann die Simulationsvorrichtung 11 das Treibermodell D2 als Motortreiber für die X-Achse 1a und die Y-Achse 1b und das Maschinenmodell M1 als Maschinenmodell auswählen. Dadurch kann der Benutzer die Steuerparameter des Motortreibers der Z-Achse 1c effizient einstellen.
  • Ferner wurde bei der ersten Ausführungsform ein Fall beschrieben, in dem der Steuerparameter des Motortreibers eine Verstärkung der PI-Steuerung ist, der Steuerparameter des Motortreibers ist jedoch nicht auf die Verstärkung der PI-Steuerung beschränkt. Die Simulationsvorrichtung 11 kann der Rückkopplungssteuerung einen Kerbfilter oder Tiefpassfilter hinzufügen und deren Grenzfrequenzen als Steuerparameter verwenden. Darüber hinaus kann die Simulationsvorrichtung 11 ein Ansprechband der Vorwärtssteuerung als Steuerparameter verwenden.
  • Es wird darauf hingewiesen, dass, obwohl bei der ersten Ausführungsform nur eine Art von Motormodell verwendet wird, mehrere Modelle mit unterschiedlichen Abstraktionsebenen für das Motormodell vorab in der Modellbibliothek 13 gespeichert werden können. In diesem Fall wählt die Modellauswahleinheit 12 das Motormodell aus der Modellbibliothek 13 auf Basis der Abstraktionsebeneneinstellung und der Korrespondenzinformationen aus. Ein unter den Motormodellen hochgenaues Modell umfasst beispielsweise Modelle eines Stators und eines Rotors und simuliert Exzentrizität, Rastmoment und dergleichen des Rotors. Ein einfaches Motormodell hingegen kann ein Modell sein, bei dem der Rotor entsprechend einem Positionsbefehl des Motortreibers betrieben wird.
  • Ferner kann die Simulationsvorrichtung 11 für das Treibermodell in der Modellbibliothek 13 ein Treibermodell mit höherer Genauigkeit als das Treibermodell D1 vorhalten. Bei diesem hochgenauen Treibermodell kann es sich zum Beispiel um ein Treibermodell handeln, das eine Pulsweitenmodulation (PWM)-Steuerung, eine Inverter-Schaltung oder Ähnliches simuliert.
  • Ferner kann in der Simulationsvorrichtung 11 vorab ein Treibermodell, das einfacher als das Treibermodell D2 ist, in der Modellbibliothek 13 gespeichert werden. Bei diesem einfachen Treibermodell kann es sich um ein Treibermodell, das ein Totzeitelement aufweist, um einen von dem Steuergerät 10A empfangenen Positionsbefehl lediglich zu verzögern, oder um ein Treibermodell handeln, bei dem lediglich ein Tiefpassfilter zum Einsatz kommt.
  • Bei der ersten Ausführungsform wurde ein Fall beschrieben, in dem das Treibermodell eine Positionssteuerung durchführt, das Treibermodell kann jedoch auch ein Treibermodell sein, das eine Drehzahlsteuerung, eine Drehmomentsteuerung oder dergleichen durchführt.
  • Darüber hinaus sind die Modellauswahleinheit 12 und die Modellberechnungseinheit 14 in der Simulationsvorrichtung 11 nicht notwendigerweise zusammen mit der Modellbibliothek 13 in einer einzigen Hardware untergebracht. Beispielsweise kann von den Komponenten der Simulationsvorrichtung 11 die Modellbibliothek 13 in einem Cloud-Server implementiert sein.
  • Darüber hinaus kann die Simulationsvorrichtung 11 einen Betrieb der Maschine 1 simulieren, ohne den gesamten Betrieb des Maschinensystems 20A zu simulieren. Die Simulationsvorrichtung 11 muss demnach nicht den Betrieb der Steuerung 10A simulieren.
  • Wie oben beschrieben wurde, simuliert die Simulationsvorrichtung 11 bei der ersten Ausführungsform einen Betrieb des Maschinensystems 20A durch Auswählen eines Maschinenmodells, das verwendet werden soll, um einen Betrieb der Maschine 1 zu simulieren, und eines Treibermodells, das verwendet werden soll, um einen Betrieb des Motortreibers zu simulieren, auf Basis der Abstraktionsebeneneinstellung aus der Modellbibliothek 13, die mehrere Kandidaten für das Maschinenmodell und mehrere Kandidaten für das Treibermodell enthält. Infolgedessen kann die Simulationsvorrichtung 11, selbst wenn der Benutzer eine beliebige Abstraktionsebeneneinstellung bestimmt, ein Modell mit einer geeigneten Abstraktionsebene entsprechend dem Zweck der Simulation auf Basis der Abstraktionsebeneneinstellung auswählen. Dementsprechend kann die Simulationsvorrichtung 11 eine Simulation mit günstiger Berechnungseffizienz leicht realisieren.
  • Da die Maschinenmodelle M1 und M2 über eine gemeinsame Schnittstelle verfügen, ist es für den Benutzer nicht erforderlich, ein Programm zur Ausführung von Berechnungen zwischen den Modellen hinzuzufügen oder zu ändern, wenn die Maschinenmodelle M1 und M2 geändert werden. Darüber hinaus kann ein vom Benutzer erstelltes Maschinenmodell ebenfalls in der Modellbibliothek 13 registriert und verwendet werden, solange das Maschinenmodell unter Verwendung der gemeinsamen Schnittstelle erstellt wird.
  • Zweite Ausführungsform
  • Als Nächstes wird eine zweite Ausführungsform unter Bezugnahme auf die 4 und 5 beschrieben. Eine Simulationsvorrichtung der zweiten Ausführungsform wählt zusätzlich zur Auswahl eines Treibermodells und eines Maschinenmodells ein Steuerungsmodell entsprechend einem Simulationszweck aus mehreren Steuerungsmodellen mit unterschiedlichen Abstraktionsebenen aus.
  • 4 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß der zweiten Ausführungsform. Von den einzelnen Komponenten in 4 sind die Komponenten, die identische Funktionen wie die Komponenten der Simulationsvorrichtung 11 der ersten Ausführungsform von 2 erfüllen, mit den gleichen Bezugszeichen versehen, wobei redundante Beschreibungen weggelassen werden.
  • Ein Maschinensystem, das bei der zweiten Ausführungsform als zu simulierend behandelt wird, ist das Maschinensystem 20A, das dem der ersten Ausführungsform ähnlich ist. Die Simulationsvorrichtung 21 simuliert somit einen Betrieb des Maschinensystems 20A ähnlich wie die Simulationsvorrichtung 11. Auch bei der zweiten Ausführungsform wird einer von zwei Simulationszwecken auf Basis einer vom Benutzer festgelegten Abstraktionsebeneneinstellung bestimmt.
  • Ähnlich wie bei der ersten Ausführungsform dient eine der von der Simulationsvorrichtung 21 auszuwählenden Simulationen dem Zweck, einen Steuerparameter eines Motortreibers einzustellen, der den Tisch 5 des Maschinensystems 20A antreibt. Eine andere der auszuwählenden Simulationen dient dem Zweck, die Funktion eines Ablaufprogramms zu überprüfen, das eine Betriebsreihenfolge des Tisches 5 und des Kopfes 6 bestimmt.
  • Die Simulationsvorrichtung 21 umfasst eine Modellauswahleinheit 22, eine Modellbibliothek 23 und eine Modellberechnungseinheit 24.
  • Die Modellauswahleinheit 22 hat eine ähnliche Funktion wie die Modellauswahleinheit 12. Zudem hat die Modellbibliothek 23 eine ähnliche Funktion wie die Modellbibliothek 13, und die Modellberechnungseinheit 24 hat eine ähnliche Funktion wie die Modellberechnungseinheit 14.
  • Ähnlich wie die Modellauswahleinheit 12 speichert die Modellauswahleinheit 22 vorab Korrespondenzinformationen, die eine Korrespondenz zwischen einer Abstraktionsebeneneinstellung und einem Modellsatz angeben. Der Modellsatz in den Korrespondenzinformationen umfasst bei der zweiten Ausführungsform ein Treibermodell, ein Maschinenmodell und ein Steuerungsmodell.
  • Ähnlich wie die Modellauswahleinheit 12 wählt die Modellauswahleinheit 22 aus den in der Modellbibliothek 23 gespeicherten Modellen auf Basis der von außen vorgegebenen Abstraktionsebeneneinstellung einen Modellsatz aus, der der Abstraktionsebeneneinstellung entspricht. Die Modellauswahleinheit 22 wählt ein für den Zweck der Simulation geeignetes Modell aus der Modellbibliothek 23 auf Basis der Abstraktionsebeneneinstellung aus. Der von der Modellauswahleinheit 22 ausgewählte Modellsatz stellt eine Kombination aus dem Treibermodell, dem Maschinenmodell und dem Steuerungsmodell dar.
  • Die Abstraktionsebeneneinstellung wird von einem Benutzer der Simulationsvorrichtung 21 in die Modellauswahleinheit 22 eingegeben. Bei der Abstraktionsebeneneinstellung der zweiten Ausführungsform wird eine der beiden oben beschriebenen Arten von Optionen bestimmt.
  • Ähnlich wie die Modellbibliothek 13 speichert die Modellbibliothek 23 vorab mehrere Treibermodelle mit unterschiedlichen Abstraktionsebenen und mehrere Maschinenmodelle mit unterschiedlichen Abstraktionsebenen. Darüber hinaus speichert die Modellbibliothek 23 vorab Steuerungsmodelle mit mehreren unterschiedlichen Abstraktionsebenen. Es wird darauf hingewiesen, dass es sich auch bei der zweiten Ausführungsform bei den Maschinenmodellen M1 und M2 um Software mit einer gemeinsamen Schnittstelle handelt.
  • Bei der zweiten Ausführungsform wird ein Fall beschrieben, in dem die zuvor in der Modellbibliothek 23 gespeicherten Steuerungsmodelle die beiden Steuerungsmodelle C1 und C2 sind. Die Steuerungsmodelle C1 und C2 sind Modelle, die einen Betrieb der im Maschinensystem 20A enthaltenen Steuerung 10A simulieren. Das Steuerungsmodell C1 ist ein Modell, das den Betrieb der Steuerung 10A mit höherer Genauigkeit simuliert als das Steuerungsmodell C2. Außerdem ist das Steuerungsmodell C2 ein Modell, das den Betrieb der Steuerung 10A einfacher simuliert als das Steuerungsmodell C1.
  • Die Steuerungsmodelle C1 und C2 sind Modelle der im Maschinensystem 20A enthaltenen Steuerung 10A. Beispiele für die Steuerung 10A umfassen, wie oben beschrieben, eine speicherprogrammierbare Steuerung, ein Industrie-PC, eine Servosystemsteuerung und dergleichen. Nach Empfang eines Signals zur Beendigung des Positioniervorgangs des Tisches 5 führt die Steuerung 10A das Ablaufprogramm zum Einschalten eines Startsignals zum Positionieren des Kopfes 6 aus.
  • Das Steuerungsmodell C1 simuliert präzise einen Prozess, der dem von der Steuerung 10A ausgeführten Ablaufprogramm entspricht. Das Steuerungsmodell C1 simuliert einen Prozess, bei dem das Ablaufprogramm ausgeführt wird, um auf das Signal zur Beendigung des Positioniervorgangs des Tisches 5 in einem konstanten Verarbeitungszyklus zu warten, und das Startsignal für die Positionierung des Kopfes 6 in dem nächsten Prozess einzuschalten, um einen Positionsbefehl zu erzeugen, wenn das Signal zur Beendigung des Positioniervorgangs des Tisches 5 erhalten wird.
  • Das Steuerungsmodell C2 vereinfacht und simuliert den von der Steuerung 10A ausgeführten Prozess. Das Steuerungsmodell C2 simuliert nur den Prozess zur Erzeugung des Positionsbefehls für jeden Motor.
  • Die Modellberechnungseinheit 24 liest aus der Modellbibliothek 23 das Treibermodell, das Maschinenmodell und das Steuerungsmodell, die dem von der Modellauswahleinheit 22 mitgeteilten Modellsatz entsprechen. Unter Verwendung des gelesenen Treibermodells, Maschinenmodells und Steuerungsmodells führt die Modellberechnungseinheit 24 eine Simulationsberechnung des Motortreibers, der Maschine 1 und der Steuerung 10A durch.
  • Die Modellberechnungseinheit 24 führt die Berechnung des Modells des Maschinensystems 20A unter Einbeziehung des aus der Modellbibliothek 23 ausgewählten Modellsatzes durch. Es wird zum Beispiel angenommen, dass ein Motormodell im Modell des Maschinensystems 20A enthalten ist. In diesem Fall legt die Modellberechnungseinheit 24 ein Modell des Maschinensystems 20A fest, das umfasst: ein Treibermodell und ein Motormodell, die der X-Achse 1a entsprechen; ein Treibermodell und ein Motormodell, die der Y-Achse 1b entsprechen; ein Treibermodell und ein Motormodell, die der Z-Achse 1c entsprechen; ein Maschinenmodell; und ein Steuerungsmodell.
  • Da der Ablauf der Simulation durch die Simulationsvorrichtung 21 dem Ablauf der Simulation durch die Simulationsvorrichtung 11 ähnelt, der unter Bezugnahme auf 3 beschrieben wurde, wird dessen Beschreibung weggelassen.
  • Nachfolgend wird die detaillierte Funktionsweise der Simulationsvorrichtung 21 gemäß der zweiten Ausführungsform beschrieben. Zunächst wird ein Fall betrachtet, in dem der Benutzer die Simulation zum Zweck der Parametereinstellung des Motortreibers des Tisches 5 als Abstraktionsebeneneinstellung auswählt.
  • In diesem Fall wählt die Modellauswahleinheit 22 auf Basis der Abstraktionsebeneneinstellung beispielsweise drei Treibermodelle D1, die der X-Achse 1a und der Y-Achse 1b entsprechen, das Treibermodell D2, das der Z-Achse 1c entspricht, und das Maschinenmodell M1 aus. Darüber hinaus wählt die Modellauswahleinheit 22 auf Basis der Abstraktionsebeneneinstellung beispielsweise das Steuerungsmodell C2 aus. Der Betrieb der Simulationsvorrichtung 21 ähnelt dabei dem Betrieb, bei dem der Benutzer in der Simulationsvorrichtung 11 der ersten Ausführungsform als Abstraktionsebeneneinstellung die Simulation zum Zweck der Parametereinstellung des Motortreibers des Tisches 5 auswählt.
  • Als Nächstes wird ein Fall betrachtet, in dem der Benutzer als Abstraktionsebeneneinstellung eine Simulation zum Zweck der Überprüfung der Funktion des Ablaufprogramms wählt, das die Reihenfolge des Betriebs des Tisches 5 und des Kopfes 6 definiert.
  • In diesem Fall wählt die Modellauswahleinheit 22 beispielsweise drei Treibermodelle D2, die der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c entsprechen, das Maschinenmodell M2 und das Steuerungsmodell C1 auf Basis der Abstraktionsebeneneinstellung aus.
  • 5 zeigt ein Flussdiagramm zur Erläuterung eines Ablaufprogramms, das in einem Maschinensystem verwendet wird, dessen Betrieb durch eine Simulationsvorrichtung gemäß der zweiten Ausführungsform simuliert wird. 5 veranschaulicht den Ablauf eines Prozesses, der von dem Ablaufprogramm ausgeführt wird.
  • In dem in 5 dargestellten Ablaufprogramm 25 wird jeder Prozess der Blöcke BL10, BL20 und BL30 implementiert. In dem Ablaufprogramm 25 wird für jeden Berechnungszyklus der Steuerung 10A ein Prozess eines Blocks berechnet.
  • Wenn die Steuerung 10A mit der Ausführung des Ablaufprogramms 25 beginnt, wird die Positionierung des Tisches 5 gestartet (Block BL10). Es wird in dem Ablaufprogramm 25 bestimmt, ob die Positionierung des Tisches 5 abgeschlossen ist oder nicht (Block BL20).
  • Wenn die Positionierung des Tisches 5 nicht abgeschlossen ist (Block BL20, Nein), bleibt die Steuerung 10A im Standby, ohne mit dem nächsten Prozess fortzufahren, bis die Positionierung des Tisches 5 abgeschlossen ist. Der Block BL20 ist demnach so ausgelegt, dass er erst dann zum Prozess des nächsten Blocks übergeht, wenn ein Bit für den Abschluss der Positionierung des Tisches 5 auf EIN gesetzt wird.
  • Wenn die Positionierung des Tisches 5 abgeschlossen ist (Block BL20, Ja), beginnt die Steuerung 10A mit der Positionierung des Kopfes 6 (Block BL30).
  • Das Steuerungsmodell C1 simuliert den Ablauf des in 5 dargestellten Ablaufprogramms 25. Wenn das Steuerungsmodell C1 den Prozess des Blocks BL10 simuliert, d. h., wenn die Positionierung des Tisches 5 gestartet wird, werden Positionsbefehle an die Treibermodelle der X-Achse 1a und der Y-Achse 1b gegeben, die den Tisch 5 antreiben.
  • Danach geht das Steuerungsmodell C1 zum Prozess des Blocks BL20 über. Bei den Treibermodellen der X-Achse 1a und der Y-Achse 1b handelt es sich um das Treibermodell D2 und bei den Maschinenmodellen der X-Achse 1a und der Y-Achse 1b um das Maschinenmodell M2. Da es sich bei den Maschinenmodellen der X-Achse 1a und der Y-Achse 1b um das Maschinenmodell M2 handelt, simuliert das Steuerungsmodell C1 zudem keine genauen Schwingungseigenschaften der Maschine 1. Da im Ablaufprogramm 25 die Positionierung des Tisches 5 erst dann abgeschlossen ist, wenn alle Positionsbefehle an den Tisch 5 ausgegeben sind, wird im Block BL20 in einem Berechnungszyklus nicht bestimmt, dass die Positionierung des Tisches 5 abgeschlossen ist.
  • Wenn die Positionierung des Tisches 5 abgeschlossen ist, geht das Steuerungsmodell C1 im nächsten Berechnungszyklus der Steuerung 10A zum Prozess des Blocks BL30 über. Entsprechend wird die Positionierung des Kopfes 6 gestartet.
  • Auf diese Weise kann das Steuerungsmodell C1 die Funktion des Ablaufprogramms 25 genau überprüfen. Da im Steuerungsmodell C1 der Betrieb des Motortreibers, des Motors und der Maschine 1 vereinfacht sind, kann der Berechnungs- und Zeitaufwand für die Simulation auf ein Minimum reduziert werden.
  • Wie oben beschrieben wurde, wählt der Benutzer bei der zweiten Ausführungsform einen beliebigen Zweck aus mehreren Arten von Simulationszwecken, wie z. B. zwei Arten von Simulationszwecken, aus und gibt den ausgewählten Zweck als Abstraktionsebeneneinstellung in die Simulationsvorrichtung 21 ein. Auf Basis der Abstraktionsebeneneinstellung wählt die Modellauswahleinheit 22 ein Modell mit einer geeigneten Abstraktionsebene aus den in der Modellbibliothek 23 gespeicherten Modellen aus, so dass ein notwendiger Berechnungsaufwand kleiner wird, während die für die Simulation erforderliche Genauigkeit beibehalten wird.
  • Wenn beispielsweise die Simulation zum Zweck der Parametereinstellung des Motortreibers des Tisches 5 ausgewählt wird, wählt die Modellauswahleinheit 22 das detaillierte Treibermodell D1, das der X-Achse 1a und der Y-Achse 1b entspricht, die den Tisch 5 antreiben, und das Maschinenmodell M1 aus. Da die Simulationsgenauigkeit des Ablaufprogramms 25 keinen Einfluss auf die Einstellung des Motortreibers hat, wählt die Modellauswahleinheit 22 das Steuerungsmodell C2 aus, das eine geringere Simulationsgenauigkeit aufweist als das Steuerungsmodell, das das Ablaufprogramm 25 simuliert.
  • Im Allgemeinen sind industrielle Steuerungen oft so ausgelegt, dass sie in der Lage sind, eine Hochgeschwindigkeitsverarbeitung zur Verfolgung von Echtzeiteigenschaften durchzuführen, wobei ein Berechnungszyklus kurz ist, und daher erfordert die Simulation dieser Berechnungen durch Ausführung einer Simulation einen enormen Rechenaufwand. Da die Simulationsvorrichtung 21 der zweiten Ausführungsform die Simulationsgenauigkeit des Steuerungsmodells für die Parametereinstellung reduziert, die keine Simulation des Ablaufprogramms 25 mit hoher Genauigkeit erfordert, kann der Berechnungsaufwand der Simulation reduziert werden. Da die Simulationsvorrichtung 21 zum Zeitpunkt der Parametereinstellung ein hochgenaues Modell für den Motortreiber und das Maschinenmodell verwendet, ist es dagegen möglich, die Parametereinstellung des Motortreibers korrekt durchzuführen. Die Simulationsvorrichtung 21 kann demnach eine Simulation unter Verwendung eines Modells einer geeigneten Abstraktionsebene ausführen, um den Zweck der Simulation zu erfüllen, während der Berechnungsaufwand und der Zeitaufwand geringgehalten werden.
  • Wenn eine Simulation zum Zweck der Überprüfung der Funktion des Ablaufprogramms 25, das die Betriebsreihenfolge des Tisches 5 und des Kopfes 6 bestimmt, ausgewählt wird, wählt die Modellauswahleinheit 22 das Steuerungsmodell C1, das den Prozess des Ablaufprogramms 25 mit hoher Genauigkeit simuliert, als Steuerungsmodell aus, das das Ablaufprogramm 25 simuliert. Wenn die Funktion des Ablaufprogramms 25 überprüft wird, wählt die Modellauswahleinheit 22 ferner das Treibermodell D2 und das Maschinenmodell M2 zur Durchführung des vereinfachten Simulationsprozesses aus.
  • Bei der Funktionsprüfung des Ablaufprogramms 25 ist die Bestätigung der korrekten Berechnung der Steuerung 10A ausreichend, wobei eine detaillierte Simulation der Schwingungseigenschaften der Maschine 1 und dergleichen nicht erforderlich ist. Die Simulationsvorrichtung 21 der zweiten Ausführungsform kann den Prozess des Ablaufprogramms 25 überprüfen, wobei der Berechnungsaufwand und der Zeitaufwand durch Vereinfachung des Treibermodells und des Maschinenmodells auf ein Minimum reduziert werden.
  • Wie oben beschrieben wurde, kann die Simulationsvorrichtung 21 gemäß der zweiten Ausführungsform ähnlich wie bei der ersten Ausführungsform, selbst wenn der Benutzer eine beliebige Abstraktionsebeneneinstellung angibt, ein Modell mit einer geeigneten Abstraktionsebene entsprechend dem Zweck der Simulation auf Basis der Abstraktionsebeneneinstellung auswählen. Dementsprechend kann die Simulationsvorrichtung 21 leicht eine Simulation mit einer günstigen Berechnungseffizienz durchführen.
  • Da die Simulationsvorrichtung 21 nur einige Blöcke des Ablaufprogramms 25 extrahiert und simuliert, kann die Simulation zum Simulieren des Betriebs des Maschinensystems 20A zudem vereinfacht werden.
  • Dritte Ausführungsform
  • Als Nächstes wird eine dritte Ausführungsform unter Bezugnahme auf die 6 und 7 beschrieben. Bei der ersten und zweiten Ausführungsform wurde ein Fall beschrieben, in dem die Maschinenmodelle vorab in den Modellbibliotheken 13 und 23 gespeichert wurden. Bei der dritten Ausführungsform erzeugt hingegen eine Simulationsvorrichtung ein Maschinenmodell und speichert das Maschinenmodell in einer Modellbibliothek.
  • 6 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß der dritten Ausführungsform. Von den einzelnen Komponenten in 6 sind die Komponenten, die identische Funktionen wie die Komponenten der Simulationsvorrichtung 11 der ersten Ausführungsform von 2 erfüllen, mit den gleichen Bezugszeichen versehen, und redundante Beschreibungen werden weggelassen.
  • Ein Maschinensystem, das bei der dritten Ausführungsform als Simulationsziel behandelt wird, ist das Maschinensystem 20A, das dem der ersten Ausführungsform ähnlich ist. Das heißt, die Simulationsvorrichtung 31 simuliert einen Betrieb des Maschinensystems 20A ähnlich wie die Simulationsvorrichtung 11. Auch bei der dritten Ausführungsform wird einer von zwei Simulationszwecken auf Basis einer vom Benutzer festgelegten Abstraktionsebeneneinstellung bestimmt.
  • Die Simulationsvorrichtung 31 umfasst die Modellauswahleinheit 12, eine Modellbibliothek 33, die Modellberechnungseinheit 14 und eine Modellerzeugungseinheit 36.
  • Ähnlich wie die Modellbibliothek 13 umfasst die Modellbibliothek 33 mehrere Treibermodelle mit unterschiedlichen Abstraktionsstufen und mehrere Maschinenmodelle mit unterschiedlichen Abstraktionsstufen. Konkret enthält die Modellbibliothek 33 die Treibermodelle D 1 und D2 und die Maschinenmodelle M 1 bis M3. Wie oben beschrieben wurde, enthält die Modellbibliothek 33 der dritten Ausführungsform zusätzlich zu den vorab erstellten Maschinenmodellen M1 und M2 das von der Modellerzeugungseinheit 36 erzeugte Maschinenmodell M3.
  • Die Modellerzeugungseinheit 36 erzeugt das Maschinenmodell auf Basis von tatsächlichen Maschineninformationen, die von außen eingegeben werden. Bei den tatsächlichen Maschineninformationen, die Daten über eine tatsächliche Maschine sind, handelt es sich um ein Signal, das durch den tatsächlichen Betrieb des Maschinensystems 20A erhalten wird. Die tatsächlichen Maschineninformationen umfassen zum Beispiel Zeitreihendaten von Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c sowie Zeitreihendaten der Tischposition und der Kopfposition.
  • Bei den Maschinenmodellen M1 bis M3 handelt es sich ähnlich wie bei der ersten Ausführungsform um Software, die eine gemeinsame Schnittstelle aufweist. Bei der ersten Ausführungsform wird angenommen, dass die gemeinsame Schnittstelle der Maschinenmodelle M1 bis M3 eine Eingabeschnittstelle umfasst, die die Motorposition der X-Achse 1a, die Motorposition der Y-Achse 1b und die Motorposition der Z-Achse 1c beziehen kann. Darüber hinaus wird angenommen, dass die gemeinsame Schnittstelle der Maschinenmodelle M1 bis M3 eine Ausgabeschnittstelle umfasst, die Informationen über die Kopfposition und die Tischposition ausgibt.
  • Unter Verwendung der Zeitreihendaten der Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c als Eingabe erzeugt die Modellerzeugungseinheit 36 das Maschinenmodell M3, das die Zeitreihendaten der Tischposition und der Kopfposition ausgibt.
  • Um eine Beziehung zwischen der Eingabe und der Ausgabe zu erhalten, verwendet die Modellerzeugungseinheit 36 beispielsweise ein maschinelles Lernverfahren wie ein neuronales Netzwerk oder eine Support-Vektor-Regression oder ein Systemidentifikationsverfahren wie eine Vorhersagefehlermethode oder eine Subspace-Methode. Hier wird ein Beispiel beschrieben, bei dem die Modellerzeugungseinheit 36 ein neuronales Netzwerk verwendet.
  • Die Modellerzeugungseinheit 36 führt einen Lernvorgang unter Verwendung eines neuronalen Netzwerks durch, indem sie als Lerndaten die Zeitreihendaten der Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c und die Zeitreihendaten der Tischposition und der Kopfposition verwendet. Das heißt, die Modellerzeugungseinheit 36 ist eine Maschinenlernvorrichtung. Die Modellerzeugungseinheit 36 weist die Funktion einer Zustandsbeobachtungseinheit, einer Datenerfassungseinheit und einer Lerneinheit auf. Die Zustandsbeobachtungseinheit beobachtet die Zeitreihendaten der Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c als Zustandsvariablen, und die Datenerfassungseinheit erfasst die Zeitreihendaten der Tischposition und der Kopfposition als Trainingsdaten. Die Lerneinheit lernt das Maschinenmodell M3 auf Basis eines Datensatzes, der basierend auf einer Kombination aus den von der Zustandsbeobachtungseinheit ausgegebenen Zeitreihendaten der Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c und den von der Datenerfassungseinheit ausgegebenen Zeitreihendaten der Tischposition und der Kopfposition erzeugt wird.
  • Es wird darauf hingewiesen, dass die Modellerzeugungseinheit 36, bei der es sich um eine Maschinenlernvorrichtung handelt, eine von der Simulationsvorrichtung 31 getrennte Vorrichtung sein kann, die über ein Netzwerk mit der Simulationsvorrichtung 31 verbunden ist. Ferner kann sich die Modellerzeugungseinheit 36 auf einem Cloud-Server befinden.
  • 7 zeigt ein Diagramm zur Erläuterung eines neuronalen Netzwerks, das von einer Simulationsvorrichtung gemäß der dritten Ausführungsform verwendet wird. Das neuronale Netzwerk umfasst eine Eingabeschicht X1, eine Zwischenschicht Y1 und eine Ausgabeschicht Z1. In die Eingabeschicht X1 werden M einzelne (M ist eine natürliche Zahl) Eingabedaten (i1, i2, ..., iM) eingegeben, die die Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c angeben. Von der äußersten rechten Ausgabeschicht Z1 werden N einzelne (N ist eine natürliche Zahl) Ausgabedaten (o1, o2, ..., oN) ausgegeben, die die Tischposition und die Kopfposition angeben.
  • Auch wenn alle Gewichtungskoeffizienten von jedem Knoten der Eingabeschicht X1 zu jedem Knoten der Zwischenschicht Y1 unabhängig voneinander eingestellt werden können, werden diese Gewichtungskoeffizienten in 7 alle als ein identischer Gewichtungskoeffizient W1 ausgedrückt. In ähnlicher Weise werden alle Gewichtungskoeffizienten von jedem Knoten der Zwischenschicht Y1 zu jedem Knoten der Ausgabeschicht Z1 als ein identischer Gewichtungskoeffizient W2 ausgedrückt.
  • In dem neuronalen Netzwerk wird ein Ausgabewert jedes Knotens der Eingabeschicht X1 mit dem Gewichtungskoeffizienten W1 multipliziert, und eine lineare Kombination der durch die Multiplikation erhaltenen Ergebnisse wird in jeden Knoten der Zwischenschicht Y1 eingegeben. Außerdem wird in dem neuronalen Netzwerk ein Ausgabewert jedes Knotens der Zwischenschicht Y1 mit dem Gewichtungskoeffizienten W2 multipliziert, und eine lineare Kombination der durch die Multiplikation erhaltenen Ergebnisse wird in den Knoten der Ausgabeschicht Z1 eingegeben. In jedem Knoten jeder Schicht kann ein Ausgabewert aus einem Eingabewert berechnet werden, indem eine nichtlineare Funktion, wie z. B. eine Sigmoidfunktion, verwendet wird. Ferner kann der Ausgabewert in der Eingabeschicht X1 und der Ausgabeschicht Z1 eine lineare Kombination der Eingabewerte sein.
  • Die Modellerzeugungseinheit 36 berechnet den Gewichtungskoeffizienten W1 und den Gewichtungskoeffizienten W2 des neuronalen Netzwerks unter Verwendung der Zeitreihendaten der Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c und der Zeitreihendaten der Tischposition und der Kopfposition. Die Modellerzeugungseinheit 36 kann den Gewichtungskoeffizienten W1 und den Gewichtungskoeffizienten W2 des neuronalen Netzwerks unter Verwendung eines Fehlerrückführungsverfahrens oder eines Gradientenverfahrens berechnen. Das Verfahren zur Berechnung der Gewichtungskoeffizienten W1 und W2 durch die Modellerzeugungseinheit 36 ist jedoch nicht auf das oben beschriebene Verfahren beschränkt, sofern durch das Berechnungsverfahren die Gewichtungskoeffizienten W1 und W2 des neuronalen Netzwerks erhalten werden können.
  • Wenn der Gewichtungskoeffizient des neuronalen Netzwerks bestimmt wurde, wird ein relationaler Ausdruck zwischen den Zeitreihendaten der Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c und den Zeitreihendaten der Tischposition und der Kopfposition erhalten. Auch wenn oben die Ausführung des Lernens beispielhaft unter Verwendung eines dreischichtigen neuronalen Netzwerks beschrieben wurde, ist das Lernen unter Verwendung des neuronalen Netzwerks durch die Modellerzeugungseinheit 36 nicht auf das obige Beispiel beschränkt.
  • Durch die oben beschriebene Funktionsweise der Modellerzeugungseinheit 36 wird das Maschinenmodell M3 mit den Motorpositionen der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c als Eingabe und der Tischposition und der Kopfposition als Ausgabe erhalten.
  • Die Simulationsgenauigkeit des neuronalen Netzwerks kann durch Änderung der Anzahl der Schichten oder der Anzahl der Knoten des neuronalen Netzwerks frei eingestellt werden. Das heißt, die Modellerzeugungseinheit 36 kann leicht ein Maschinenmodell mit verschiedenen Abstraktionsebenen erzeugen, das an die tatsächlichen Maschineninformationen angepasst werden kann, indem verschiedene Formeln als Lernmodell verwendet werden. Infolgedessen können in einfacher Weise mehrere Maschinenmodelle mit unterschiedlicher Genauigkeit für die Simulationsvorrichtung 31 erzeugt werden. Beim Lernen durch die Modellerzeugungseinheit 36 handelt es sich um ein erstes maschinelles Lernen.
  • Die Modellerzeugungseinheit 36 trägt Informationen, in denen die Abstraktionsebeneneinstellung und das Maschinenmodell M3 einander zugeordnet sind, in Korrespondenzinformationen der Modellauswahleinheit 12 ein. Dies ermöglicht es der Modellauswahleinheit 12, auf Basis der Abstraktionsebeneneinstellung und der Korrespondenzinformationen ein geeignetes Maschinenmodell entsprechend dem Zweck der Simulation auszuwählen. Darüber hinaus kann die Modellerzeugungseinheit 36 dem Benutzer mitteilen, dass das Maschinenmodell M3 erzeugt wurde und welche Abstraktionsebene für das Maschinenmodell M3 eingestellt wurde. Beispielsweise veranlasst die Modellerzeugungseinheit 36 eine Anzeigevorrichtung, die Tatsache, dass das Maschinenmodell M3 erzeugt wurde, und die Einstellung der Abstraktionsebene, die dem Maschinenmodell M3 entspricht, anzuzeigen.
  • Die Modellauswahleinheit 12 ist nicht auf den Fall der Erzeugung des Maschinenmodells M3 beschränkt und kann ein von den Maschinenmodellen M1 bis M3 verschiedenes Maschinenmodell erzeugen, wie z. B. ein Maschinenmodell M4 und ein Maschinenmodell M5 mit unterschiedlichen Abstraktionsebenen, indem die Anzahl der Schichten oder die Anzahl der Knoten des neuronalen Netzwerks geändert werden. Die Maschinenmodelle M1 bis M5 werden als Software mit einer gemeinsamen Schnittstelle erzeugt.
  • Bei der dritten Ausführungsform wurde der Fall beschrieben, dass das von der Modellerzeugungseinheit 36 erzeugte Maschinenmodell M3 die Tischposition und die Kopfposition ausgibt, aber die Ausgabe des Maschinenmodells M3 ist nicht auf die Tischposition und die Kopfposition beschränkt. Das Maschinenmodell M3 kann beispielsweise die Temperatur oder die Geräusche des Maschinensystems 20A als Ausgabe des Maschinensystems 20A verwenden. Auf diese Weise kann die Modellerzeugungseinheit 36 jede beliebige Information, die in den tatsächlichen Maschineninformationen enthalten ist, als Eingabe und Ausgabe des Maschinenmodells M3 festlegen.
  • Darüber hinaus ist die Modellerzeugungseinheit 36 nicht nur auf die tatsächlichen Maschineninformationen beschränkt. Zum Beispiel können CAD (Computer Aided Design)-Daten, die von einer CAD-Software ausgegeben werden, und die tatsächlichen Maschineninformationen zur Erzeugung des Maschinenmodells M3 verwendet werden. Bei den CAD-Daten handelt es sich um Daten mit Konstruktionsinformationen über die Maschine 1. Die Modellerzeugungseinheit 36 kann das Maschinenmodell M3 auf Basis der Konstruktionsinformationen und der tatsächlichen Maschineninformationen erzeugen. Ein Beispiel für ein Verfahren zum Erzeugen des Maschinenmodells M3 auf Basis der Konstruktionsinformationen und der tatsächlichen Maschineninformationen ist ein Verfahren zum Erzeugen einer Differentialgleichung des Maschinenmodells M3 auf Basis der Konstruktionsinformationen und zum Bestimmen eines Parameters der Differentialgleichung auf Basis der tatsächlichen Maschineninformationen.
  • Wie oben beschrieben wurde, erzeugt die Modellerzeugungseinheit 36 gemäß der dritten Ausführungsform das Maschinenmodell M3 auf Basis der tatsächlichen Maschineninformationen. Daher kann die Modellauswahleinheit 12, selbst wenn der Benutzer das Maschinenmodell M3 nicht vorab erstellt, ein geeignetes Modell aus einer Vielzahl von Modellen mit unterschiedlichen Abstraktionsebenen auswählen. Dementsprechend kann auch bei der dritten Ausführungsform eine Simulation mit hoher Berechnungseffizienz leicht realisiert werden.
  • Vierte Ausführungsform
  • Als Nächstes wird eine vierte Ausführungsform unter Bezugnahme auf die 8 und 9 beschrieben. Bei der ersten Ausführungsform wurde der Fall beschrieben, dass die Maschinenmodelle vorab in der Modellbibliothek 13 gespeichert werden. Bei der vierten Ausführungsform erzeugt eine Simulationsvorrichtung hingegen ein neues Maschinenmodell, indem sie eine Abstraktionsebene eines in einer Modellbibliothek gespeicherten Maschinenmodells ändert.
  • 8 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß der vierten Ausführungsform. Von den einzelnen Komponenten in 8 sind die Komponenten, die identische Funktionen wie die Komponenten der Simulationsvorrichtung 11 der ersten Ausführungsform von 2 erfüllen, mit den gleichen Bezugszeichen versehen, wobei redundante Beschreibungen weggelassen werden.
  • Ein Maschinensystem, das bei der vierten Ausführungsform als zu simulierendes Ziel behandelt wird, ist das Maschinensystem 20A, das dem der ersten Ausführungsform ähnlich ist. Die Simulationsvorrichtung 41 simuliert also einen Betrieb des Maschinensystems 20A ähnlich wie die Simulationsvorrichtung 11. Auch bei der vierten Ausführungsform wird einer von zwei Simulationszwecken auf Basis einer vom Benutzer festgelegten Abstraktionsebeneneinstellung bestimmt.
  • Die Simulationsvorrichtung 41 umfasst die Modellauswahleinheit 12, eine Modellbibliothek 43, die Modellberechnungseinheit 14 und eine Modellvereinfachungseinheit 47.
  • Die Modellbibliothek 43 enthält mehrere Treibermodelle mit unterschiedlichen Abstraktionsebenen und mehrere Maschinenmodelle mit unterschiedlichen Abstraktionsebenen. Bei der vierten Ausführungsform wird ein Fall beschrieben, in dem die Treibermodelle D1 und D2 vorab in der Modellbibliothek 43 gespeichert werden. Darüber hinaus enthält die Modellbibliothek 43 das Maschinenmodell M1, das den Betrieb der Maschine 1 mit hoher Genauigkeit simuliert, und ein von der Modellvereinfachungseinheit 47 erzeugtes Maschinenmodell M6. Das Maschinenmodell M1 ist ein erstes Maschinenmodell, und das Maschinenmodell M6 ist ein zweites Maschinenmodell.
  • Die Modellvereinfachungseinheit 47 erzeugt ein neues Modell durch Vereinfachung eines aus der Modellbibliothek 43 gelesenen Modells. Bei der vierten Ausführungsform wird ein Fall beschrieben, in dem die Modellvereinfachungseinheit 47 das Maschinenmodell M1 liest und das durch Vereinfachung des Maschinenmodells M1 erzeugte Maschinenmodell M6 als neues Maschinenmodell in die Modellbibliothek 43 einträgt.
  • Die Modellvereinfachungseinheit 47 trägt Informationen, in denen die Abstraktionsebeneneinstellung und das Maschinenmodell M6 miteinander verknüpft sind, in Korrespondenzinformationen der Modellauswahleinheit 12 ein. Dies ermöglicht es der Modellauswahleinheit 12, ein geeignetes Maschinenmodell entsprechend dem Zweck der Simulation auf Basis der Abstraktionsebeneneinstellung und der Korrespondenzinformationen auszuwählen. Darüber hinaus kann die Modellvereinfachungseinheit 47 dem Benutzer mitteilen, dass das Maschinenmodell M6 erzeugt wurde und welche Abstraktionsebene für das Maschinenmodell M6 eingestellt wurde. Beispielsweise veranlasst die Modellvereinfachungseinheit 47 eine Anzeigevorrichtung, die Tatsache, dass das Maschinenmodell M6 erzeugt wurde, und die dem Maschinenmodell M6 entsprechende Abstraktionsebeneneinstellung anzuzeigen.
  • Bei den Maschinenmodellen M1 und M6 handelt es sich um Software mit einer gemeinsamen Schnittstelle. Beispielsweise wird angenommen, dass die gemeinsame Schnittstelle der Maschinenmodelle M1 bis M6 eine Eingabeschnittstelle umfasst, die die Motorposition der X-Achse 1a, die Motorposition der Y-Achse 1b und die Motorposition der Z-Achse 1c beziehen kann. Darüber hinaus wird angenommen, dass die gemeinsame Schnittstelle der Maschinenmodelle M1 und M6 eine Ausgabeschnittstelle umfasst, die Informationen über eine Tischposition und eine Kopfposition ausgibt.
  • 9 zeigt ein Diagramm zur Erläuterung eines Verfahrens, bei dem eine Simulationsvorrichtung gemäß der vierten Ausführungsform durch Vereinfachung eines Modells ein neues Modell erzeugt. Im oberen Teil von 9 ist von den Schaltkreisen, die in dem Maschinenmodell M1 enthalten sind, ein Berechnungsschaltkreis 91, der eine Tischposition und eine Kopfposition berechnet, als Blockschaltbild dargestellt. Im unteren Teil von 9 ist von den Schaltkreisen des Maschinenmodells M6 ein Berechnungsschaltkreis 96, der eine Tischposition und eine Kopfposition berechnet, als Blockschaltbild dargestellt.
  • Der Berechnungsschaltkreis 91 des Maschinenmodells M1 umfasst einen Block 48a, der die Tischposition berechnet und ausgibt, und einen Block 48b, der die Kopfposition berechnet und ausgibt. In die Blöcke 48a und 48b werden eine X-Achsen-Motorposition, bei der es sich um die Motorposition der X-Achse 1a handelt, eine Y-Achsen-Motorposition, bei der es sich um die Motorposition der Y-Achse 1b handelt, und eine Z-Achsen-Motorposition, bei der es sich um die Motorposition der Z-Achse 1c handelt, eingegeben.
  • Der Block 48a berechnet die Tischposition auf Basis der X-Achsen-Motorposition, der Y-Achsen-Motorposition und der Z-Achsen-Motorposition und gibt diese aus. Ferner berechnet der Block 48b die Kopfposition auf Basis der X-Achsen-Motorposition, der Y-Achsen-Motorposition und der Z-Achsen-Motorposition und gibt diese aus.
  • Daher ist der Berechnungsschaltkreis 91 eine Schaltung, in der die X-Achsen-Motorposition und die Y-Achsen-Motorposition die Kopfposition beeinflussen, und die Z-Achsen-Motorposition, bei der es sich um die Motorposition der Z-Achse 1c handelt, die Tischposition beeinflusst. Das bedeutet, dass bei dem Maschinenmodell M1 selbst in einem Zustand, in dem die Position des Z-Achsen-Motors fixiert ist, vorübergehend auch an einer Position des Kopfes 6 Vibrationen erzeugt werden, wenn die Position des X-Achsen-Motors oder die Position des Y-Achsen-Motors schnell verändert wird. Darüber hinaus werden bei dem Maschinenmodell M1 selbst in einem Zustand, in dem die Position des X-Achsen-Motors und des Y-Achsen-Motors fixiert ist, auch an einer Position des Tisches 5 vorübergehend Vibrationen erzeugt, wenn die Position des Z-Achsen-Motors schnell verändert wird. Daher kann das Maschinenmodell M1 als ein sehr genaues Modell bezeichnet werden, das übergreifende Vibrationen zwischen orthogonalen Achsen simuliert.
  • Die Modellvereinfachungseinheit 47 erzeugt das Maschinenmodell M6, das so vereinfacht ist, dass ein Einfluss der oben beschriebenen übergreifenden Vibrationen ignoriert wird. Insbesondere löscht die Modellvereinfachungseinheit 47 einen Term, der die Z-Achsen-Motorposition umfasst, aus einem arithmetischen Ausdruck zur Berechnung der Tischposition, und löscht einen Term, der die X-Achsen-Motorposition und die Y-Achsen-Motorposition enthält, aus einem arithmetischen Ausdruck zur Berechnung der Kopfposition.
  • Der Berechnungsschaltkreis 96 des auf diese Weise erzeugten Maschinenmodells M6 umfasst einen Block 48c, der die Tischposition berechnet und ausgibt, und einen Block 48d, der die Kopfposition berechnet und ausgibt. Der Block 48c ist ein Block, der die Tischposition aus der X-Achsen-Motorposition und der Y-Achsen-Motorposition berechnet. Der Block 48d ist ein Block, der die Kopfposition nur aus der Position des Z-Achsen-Motors berechnet.
  • Wie oben beschrieben wurde, erzeugt die Modellvereinfachungseinheit 47 bei der vierten Ausführungsform das neue Maschinenmodell M6 zur Ausführung einer vereinfachten Simulation aus dem Maschinenmodell M1 für die Ausführung einer hochgenauen Simulation.
  • Bei der vierten Ausführungsform führt die Modellvereinfachungseinheit 47 eine Vereinfachung durch, so dass übergreifende Vibrationen zwischen den Achsen ignoriert werden, das Vereinfachungsverfahren ist jedoch nicht auf diese Methode beschränkt. Zum Beispiel kann die Modellvereinfachungseinheit 47 eine Vereinfachung durchführen, um die Schwingungseigenschaften bei der Berechnung der Tischposition aus der X-Achsen-Motorposition zu ignorieren.
  • Ferner kann die Modellvereinfachungseinheit 47 auch eine Vereinfachung durchführen, um einen Teil, der die Wärmeerzeugung simuliert, bei einem Maschinenmodell zu ignorieren, das die Wärmeerzeugung zusätzlich zu den Schwingungseigenschaften der Maschine 1 simuliert. Darüber hinaus kann die Modellvereinfachungseinheit 47 ein durch eine Finite-Elemente-Methode ausgedrücktes Maschinenmodell, bei dem die Komponenten der Maschine 1 flexible Elemente sind, in ein Modell mit mehreren starren Elementen vereinfachen, bei dem es sich um verbundene starre Körper handelt.
  • Bei der vierten Ausführungsform vereinfacht die Modellvereinfachungseinheit 47 das Maschinenmodell, aber die Modellvereinfachungseinheit 47 kann auch das Treibermodell, das Motormodell oder das Steuerungsmodell vereinfachen. Die Modellvereinfachungseinheit 47 kann z. B. ein Treibermodell, das eine detaillierte Rückkopplungssteuerung ausführt, bei der zur Proportional-Integral-Differential (PID)-Steuerung ein Kerbfilter und ein Tiefpassfilter hinzugefügt wurden, in ein Treibermodell vereinfachen, bei dem eine Rückkopplungssteuerung lediglich durch PID-Steuerung erfolgt.
  • Wie oben beschrieben wurde, erzeugt die Modellvereinfachungseinheit 47 gemäß der vierten Ausführungsform das neue Maschinenmodell M6, das eine andere Abstraktionsebene aufweist. Selbst wenn der Benutzer das Maschinenmodell M6 nicht vorab erstellt, kann die Modellbibliothek 43 daher mehrere Maschinenmodelle M1 und M6 mit unterschiedlichen Abstraktionsebenen umfassen. Selbst wenn es sich bei der Abstraktionsebene des vom Benutzer eingetragenen Maschinenmodells nur um einen Typ handelt, kann die Modellvereinfachungseinheit 47 demnach mehrere einfache Maschinenmodelle aus einem Maschinenmodelltyp erzeugen. Dadurch entfällt der Arbeitsaufwand des Benutzers zur Vereinfachung des Maschinenmodells. Darüber hinaus kann der Benutzer ein geeignetes Modell aus den Maschinenmodellen M1 und M6 auswählen. Dementsprechend kann auch bei der vierten Ausführungsform eine Simulation mit hoher Berechnungseffizienz in einfacher Weise realisiert werden.
  • Fünfte Ausführungsform
  • Als Nächstes wird eine fünfte Ausführungsform unter Bezugnahme auf die 10 und 11 beschrieben. Bei der ersten Ausführungsform wählt die Modellauswahleinheit 12 einen Modellsatz unter Verwendung von Korrespondenzinformationen aus, denen ein einer Abstraktionsebeneneinstellung entsprechender Modellsatz zugeordnet ist. Bei der fünften Ausführungsform wählt eine Modellauswahleinheit hingegen einen Modellsatz, der einer Abstraktionsebeneneinstellung entspricht, auf Basis von maschinellem Lernen aus.
  • 10 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß einer fünften Ausführungsform. Von den einzelnen Komponenten von 10 sind die Komponenten, die identische Funktionen wie die der Simulationsvorrichtung 11 der ersten Ausführungsform von 2 erfüllen, mit den gleichen Bezugszeichen versehen, wobei redundante Beschreibungen weggelassen werden.
  • Ein Maschinensystem, das bei der fünften Ausführungsform als Simulationsziel behandelt wird, ist das Maschinensystem 20A, das dem der ersten Ausführungsform ähnlich ist. Eine Simulationsvorrichtung 51 simuliert demnach einen Betrieb des Maschinensystems 20A ähnlich wie die Simulationsvorrichtung 11. Auch bei der fünften Ausführungsform wird einer von zwei Simulationszwecken auf Basis einer vom Benutzer festgelegten Abstraktionsebeneneinstellung bestimmt.
  • Die Simulationsvorrichtung 51 umfasst eine Modellauswahleinheit 52, die Modellbibliothek 13 und die Modellberechnungseinheit 14.
  • Die Modellauswahleinheit 52 wählt ein Modell aus den in der Modellbibliothek 13 gespeicherten Modellen auf Basis einer von außen eingegebenen Abstraktionsebeneneinstellung aus. Dabei wählt die Modellauswahleinheit 52 als Modellsatz insgesamt vier Modelle, die aus drei Treibermodellen, die der X-Achse 1a, der Y-Achse 1b und der Z-Achse 1c entsprechen, und einem Maschinenmodell bestehen, aus der Modellbibliothek 13 aus.
  • Die Modellauswahleinheit 52 lernt eine Eingabe/Ausgabe-Beziehung mit einer Abstraktionsebeneneinstellung als Eingabe und vier Modellen, die der Abstraktionsebeneneinstellung entsprechen, als Ausgabe. Beim Lernen durch die Modellauswahleinheit 52 handelt es sich um ein zweites maschinelles Lernen. Die Modellauswahleinheit 52 ist eine Maschinenlernvorrichtung mit einer Konfiguration, die derjenigen der Modellerzeugungseinheit 36 ähnelt. Das heißt, die Modellauswahleinheit 52 hat die Funktionen einer Zustandsbeobachtungseinheit, einer Datenerfassungseinheit und einer Lerneinheit. Die Zustandsbeobachtungseinheit beobachtet eine Abstraktionsebeneneinstellung als eine Zustandsvariable, wobei die Datenerfassungseinheit Informationen über einen Modellsatz, der mit jeder Abstraktionsebeneneinstellung verknüpft ist, als Trainingsdatendaten erfasst. Die Lerneinheit lernt einen relationalen Ausdruck zwischen einer Abstraktionsebeneneinstellung und einem geeigneten Modell, das der Abstraktionsebeneneinstellung zugeordnet ist, auf Basis eines Datensatzes, der auf Basis der Abstraktionsebeneneinstellung, die von der Zustandsbeobachtungseinheit ausgegeben wird, und des Modellsatzes, der von der Datenerfassungseinheit ausgegeben wird, erstellt wird.
  • Es wird darauf hingewiesen, dass die Modellauswahleinheit 52, bei der es sich um eine Maschinenlernvorrichtung handelt, eine von der Simulationsvorrichtung 51 getrennte Vorrichtung sein kann, die über ein Netzwerk mit der Simulationsvorrichtung 51 verbunden ist. Zudem kann sich die Modellauswahleinheit 52 auf einem Cloud-Server befinden.
  • Um eine Beziehung zwischen der Eingabe und der Ausgabe zu erhalten, verwendet die Modellauswahleinheit 52 zum Beispiel ein neuronales Netzwerk, eine Support-Vektor-Regression oder dergleichen. Hier wird ein Beispiel beschrieben, bei dem die Modellauswahleinheit 52 ein neuronales Netzwerk verwendet.
  • Die Modellauswahleinheit 52 führt maschinelles Lernen unter Verwendung eines neuronalen Netzwerks durch, indem sie als Lerndaten eine Vielzahl von Abstraktionsebeneneinstellungen und Informationen über einen Modellsatz verwendet, der mit jeder der Abstraktionsebeneneinstellungen verknüpft ist. Bei der Abstraktionsebeneneinstellung der fünften Ausführungsform wird davon ausgegangen, dass der Zweck einer Simulation festgelegt ist. Um das maschinelle Lernen zu erleichtern, wird bei der fünften Ausführungsform ferner davon ausgegangen, dass die Informationen, die den Zweck der Simulation angeben, in mehrere Elemente unterteilt werden können.
  • Die Informationen, die den Zweck der Simulation angeben, können beispielsweise in die folgenden drei Elemente unterteilt werden. Ein erstes Element, bei dem es sich um ein Element des ersten der Elemente handelt, ist eine Achse, die bei der Simulation als Ziel der Prüfung des Betriebs dient. Ein Beispiel für das erste Element ist „X-Achse 1a“, „Y-Achse 1b“, „Z-Achse 1c“, oder „alle Achsen“.
  • Ein zweites Element, bei dem es sich um ein zweites der Elemente handelt, ist ein Vorgang, der in der Simulation überprüft werden soll. Ein Beispiel für das zweite Element ist die „Überprüfung des Arbeitsbereichs“, die „Überprüfung des Stromverbrauchs“ oder die „Anpassung der Steuerparameter“.
  • Ein drittes Element, bei dem es sich um ein drittes der Elemente handelt, ist die für die Simulation erforderliche Genauigkeit. Ein Beispiel für das dritte Element ist „hohe Genauigkeit“ oder „geringe Genauigkeit“.
  • 11 zeigt ein Diagramm zur Erläuterung eines neuronalen Netzwerks, das von einer Simulationsvorrichtung gemäß der fünften Ausführungsform verwendet wird. Das neuronale Netzwerk umfasst eine Eingabeschicht X2, eine Zwischenschicht Y2 und eine Ausgabeschicht Z2. In die Eingabeschicht X2 werden drei einzelne Eingabedaten (e1, e2 und e3) des ersten Elements, des zweiten Elements und des dritten Elements eingegeben. Von der ganz rechten Ausgabeschicht Z2 werden insgesamt vier Ausgabedaten (m1, m2, m3 und m4) ausgegeben, die aus drei Treibermodellen, die der X-Achse 1a, Y-Achse 1b und Z-Achse 1c entsprechen, sowie einem Maschinenmodell bestehen.
  • Auch wenn alle Gewichtungskoeffizienten von jedem Knoten der Eingabeschicht X2 zu jedem Knoten der Zwischenschicht Y2 unabhängig voneinander eingestellt werden können, werden diese Gewichtungskoeffizienten in 11 alle als ein identischer Gewichtungskoeffizient W3 ausgedrückt. In ähnlicher Weise werden alle Gewichtungskoeffizienten von jedem Knoten der Zwischenschicht Y2 zu jedem Knoten der Ausgabeschicht Z2 als ein identischer Gewichtungskoeffizient W4 ausgedrückt.
  • In dem neuronalen Netzwerk wird ein Ausgabewert jedes Knotens der Eingabeschicht X2 mit dem Gewichtungskoeffizienten W3 multipliziert, und eine lineare Kombination der durch die Multiplikation erhaltenen Ergebnisse wird in jeden Knoten der Zwischenschicht Y2 eingegeben. Außerdem wird in dem neuronalen Netzwerk ein Ausgabewert jedes Knotens der Zwischenschicht Y2 mit dem Gewichtungskoeffizienten W4 multipliziert, und eine lineare Kombination der durch die Multiplikation erhaltenen Ergebnisse wird in den Knoten der Ausgabeschicht Z2 eingegeben. In jedem Knoten jeder Schicht kann ein Ausgabewert aus einem Eingabewert durch eine nichtlineare Funktion, wie z. B. eine Sigmoidfunktion, berechnet werden. Ferner kann in der Eingabeschicht X2 und der Ausgabeschicht Z2 der Ausgabewert eine lineare Kombination der Eingabewerte sein.
  • Die Modellauswahleinheit 52 berechnet die Gewichtungskoeffizienten W3 und W4 des neuronalen Netzwerks, indem sie als Lerndaten mehrere Abstraktionsebeneneinstellungen und Informationen über einen mit jeder der Abstraktionsebeneneinstellungen verknüpften Modellsatz verwendet. Die Modellauswahleinheit 52 kann die Gewichtungskoeffizienten W3 und W4 des neuronalen Netzwerks unter Verwendung eines Fehlerrückführungsverfahrens oder eines Gradientenverfahrens berechnen. Das Verfahren zur Berechnung der Gewichtungskoeffizienten W3 und W4 durch die Modellauswahleinheit 52 ist jedoch nicht auf das oben beschriebene Verfahren beschränkt, solange das Berechnungsverfahren die Gewichtungskoeffizienten W3 und W4 des neuronalen Netzwerks erhalten kann.
  • Wenn der Gewichtungskoeffizient des neuronalen Netzwerks bestimmt ist, wird ein relationaler Ausdruck zwischen einer Abstraktionsebeneneinstellung und einem geeigneten Modell, das mit der Abstraktionsebeneneinstellung verknüpft ist, erhalten. Obwohl das Beispiel der Durchführung des Lernens oben unter Verwendung des dreischichtigen neuronalen Netzwerks beschrieben wurde, ist das Lernen unter Verwendung des neuronalen Netzwerks durch die Modellauswahleinheit 52 nicht auf das obige Beispiel beschränkt.
  • Durch die oben beschriebene Funktionsweise der Modellauswahleinheit 52 wird ein neuronales Netzwerk mit einer Abstraktionsebeneneinstellung als Eingabe und vier Modellen als Ausgabe erhalten.
  • Wie oben beschrieben wurde, kann gemäß der fünften Ausführungsform, da die Modellauswahleinheit 52 maschinelles Lernen an einem geeigneten Modellsatz durchführt, der einer Abstraktionsebeneneinstellung entspricht, ein geeigneter Modellsatz, der einer vom Benutzer neu eingegebenen Abstraktionsebeneneinstellung entspricht, aus der Modellbibliothek 13 ausgewählt werden. Dementsprechend kann auch bei der fünften Ausführungsform eine Simulation mit hoher Berechnungseffizienz leicht realisiert werden.
  • Sechste Ausführungsform
  • Als Nächstes wird eine sechste Ausführungsform unter Bezugnahme auf die 12 und 13 beschrieben. Bei der ersten Ausführungsform wurde die Simulationsvorrichtung 11 beschrieben, die einen Betrieb des Maschinensystems 20A simuliert, das den Tisch 5 und den Kopf 6 antreibt. Bei der sechsten Ausführungsform wird hingegen eine Simulationsvorrichtung beschrieben, die den Betrieb eines Maschinensystems simuliert, das sich von dem Maschinensystem 20A unterscheidet. Bei der sechsten Ausführungsform wird eine Simulationsvorrichtung beschrieben, die den Betrieb eines Maschinensystems simuliert, das ein Bandmaterial von Rolle zu Rolle transportiert.
  • 12 zeigt eine Darstellung zur Veranschaulichung der Konfiguration eines Maschinensystems, dessen Betrieb durch eine Simulationsvorrichtung gemäß der sechsten Ausführungsform simuliert wird. Das Maschinensystem 20B umfasst eine Maschine 2, die durch einen Motor angetrieben wird, und eine Steuerung 10B, die die Maschine 2 steuert. Ferner umfasst das Maschinensystem 20B einen Stempel 7, der auf ein Bandmaterial Ws druckt.
  • In der folgenden Beschreibung werden zwei Richtungen, die orthogonal zueinander stehen und zwei Richtungsachsen in einer Ebene parallel zu einer Druckfläche des Bandmaterials Ws sind, auf das der Stempel 7 druckt, als X-Richtung und Y-Richtung bezeichnet. Eine Richtung, die orthogonal zur X-Richtung und zur Y-Richtung verläuft, wird als Z-Richtung bezeichnet.
  • Die Maschine 2 umfasst einen Drei-Achsen-Motor, der aus einer Abwickelachse 2a, die sich in X-Richtung erstreckt, einer Aufwickelachse 2b, die sich in X-Richtung erstreckt, und einer Z-Achse 2c, die sich in Z-Richtung erstreckt, aufgebaut ist.
  • Die Maschine 2 steuert den Transport des Bandmaterials Ws mit Hilfe der Abwickelachse 2a und der Aufwickelachse 2b. In der Maschine 2 wird das Bandmaterial Ws transportiert, wobei ein Zuführungsvorgang und ein vorübergehender Stopp des Bandmaterials Ws wiederholt werden, wobei der an der Z-Achse 2c angebrachte Stempel 7 einen Druckvorgang an dem Bandmaterial Ws durch Betätigung der Z-Achse 2c durchführt, wenn das Bandmaterial Ws vorübergehend angehalten wird.
  • Außerdem ist ein Motortreiber (nicht dargestellt) an dem Maschinensystem 20B installiert. In dem Maschinensystem 20B steuert die Steuerung 10B den Motortreiber, und der Motortreiber treibt den Motor jeder Achse an. Beispiele für die Steuerung 10B umfassen eine speicherprogrammierbare Steuerung, einen Industrie-PC, eine Servosystemsteuerung und dergleichen.
  • Das Bandmaterial Ws ist um die Abwickelachse 2a und die Aufwickelachse 2b gewickelt und bewegt sich in Y-Richtung, wenn sich die Abwickelachse 2a und die Aufwickelachse 2b drehen. Der Stempel 7 bewegt sich durch die Betätigung der Z-Achse 2c in Z-Richtung und druckt auf das sich in Y-Richtung bewegende Bandmaterial Ws.
  • Die Steuerung 10B steuert die Position des Bandmaterials Ws in Y-Richtung, indem sie den Betrieb der Abwickelachse 2a und den Betrieb der Aufwickelachse 2b steuert. Darüber hinaus steuert die Steuerung 10B die Position des an der Z-Achse 2c befestigten Stempels 7, indem sie den Betrieb der Z-Achse 2c steuert.
  • 13 zeigt ein Diagramm zur Veranschaulichung der Konfiguration einer Simulationsvorrichtung gemäß der sechsten Ausführungsform. Von den einzelnen Komponenten der 13 sind die Komponenten, die identische Funktionen wie die Komponenten der Simulationsvorrichtung 11 der ersten Ausführungsform von 2 erfüllen, mit den gleichen Bezugszeichen versehen, wobei redundante Beschreibungen nicht wiederholt werden.
  • Die Simulationsvorrichtung 71 führt eine ähnliche Simulation wie die Simulationsvorrichtung 11 durch, die Simulationsvorrichtung 71 und die Simulationsvorrichtung 11 unterscheiden sich jedoch voneinander in der Art des Maschinensystems als zu simulierendes Ziel.
  • Die Simulationsvorrichtung 71 simuliert einen Betrieb des Maschinensystems 20B. Auch bei der sechsten Ausführungsform wird einer von zwei Simulationszwecken auf Basis einer vom Benutzer festgelegten Abstraktionsebeneneinstellung bestimmt.
  • Die Simulationsvorrichtung 71 umfasst eine Modellauswahleinheit 72, eine Modellbibliothek 73 und eine Modellberechnungseinheit 74. Vergleicht man die Simulationsvorrichtung 71 mit der Simulationsvorrichtung 11, so simuliert die Simulationsvorrichtung 11 den Betrieb des Maschinensystems 20A, wohingegen die Simulationsvorrichtung 71 den Betrieb des Maschinensystems 20B simuliert.
  • Eine von der Modellauswahleinheit 72 der Simulationsvorrichtung 71 empfangene Abstraktionsebeneneinstellung ist eine Information, die eine Abstraktionsebene der Simulation für das Maschinensystem 20B angibt. Die Modellauswahleinheit 72 wählt ähnlich wie die Modellauswahleinheit 12 ein der Abstraktionsebeneneinstellung entsprechendes Modell aus. Die Modellauswahleinheit 72 benachrichtigt die Modellberechnungseinheit 74 über den ausgewählten Modellsatz. Ferner speichert die Modellbibliothek 73 ähnlich wie die Modellbibliothek 13 vorab mehrere Treibermodelle mit unterschiedlichen Abstraktionsebenen und mehrere Maschinenmodelle mit unterschiedlichen Abstraktionsebenen.
  • Bei der sechsten Ausführungsform wird ein Fall beschrieben, in dem die zuvor in der Modellbibliothek 73 gespeicherten Treibermodelle die beiden Treibermodelle D11 und D12 sind. Darüber hinaus wird ein Fall beschrieben, in dem die zuvor in der Modellbibliothek 73 gespeicherten Maschinenmodelle die beiden Maschinenmodelle M11 und M12 sind.
  • Ähnlich wie die Treibermodelle D1 und D2 sind die Treibermodelle D11 und D12 Modelle, die einen Betrieb des Motortreibers simulieren. Das Treibermodell D11 ist ein Modell, das den Betrieb des Motortreibers mit höherer Genauigkeit simuliert als das Treibermodell D12. Das Treibermodell D 11 simuliert beispielsweise die Funktionen einer Vorwärtssteuerung, einer Positionsrückkopplungssteuerung, einer Drehzahlrückkopplungssteuerung, einer Stromsteuerung und dergleichen. Außerdem ist das Treibermodell D12 ein Modell, das den Betrieb des Motortreibers einfacher simuliert als das Treibermodell D11. Das Treibermodell D12 simuliert beispielsweise nur eine Funktion der Vorwärtssteuerung.
  • Die Maschinenmodelle M11 und M12 sind ähnliche Modelle wie die Maschinenmodelle M1 und M2. Die Maschinenmodelle M11 und M12 simulieren einen Betrieb der Maschine 2. Das Maschinenmodell M11 ist ein Modell, das den Betrieb der Maschine 2 mit höherer Genauigkeit simuliert als das Maschinenmodell M12. Das Maschinenmodell M11 simuliert z. B. Schwingungseigenschaften der Maschine 2 und dergleichen. Ferner ist das Maschinenmodell M12 ein Modell, das den Betrieb der Maschine 2 einfacher simuliert als das Maschinenmodell M11. Das Maschinenmodell M12 simuliert beispielsweise eine Druckposition auf dem vom Stempel 7 zu bedruckenden Bandmaterial Ws. Einzelheiten zu den Treibermodellen D 11 und D12 und den Maschinenmodellen M11 und M12 werden später beschrieben.
  • Bei der sechsten Ausführungsform wird ein Fall beschrieben, in dem zwei Arten von Simulationsoptionen erstellt wurden. Bei der sechsten Ausführungsform werden beispielsweise zwei Arten von Optionen als Simulationsoptionen vorbereitet, d. h. eine Simulation zur Überprüfung einer Druckposition und eine Simulation zur Einstellung eines Servoparameters der Abwickelachse 2a.
  • Ähnlich wie die Maschinenmodelle M1 und M2 der ersten Ausführungsform handelt es sich bei den mehreren Maschinenmodellen M11 und M12, die in der Modellbibliothek 73 gespeichert sind, um Software mit einer gemeinsamen Schnittstelle. Bei der sechsten Ausführungsform kann vorab ein Objekt definiert werden, in dem Informationen, wie beispielsweise eine Bandposition, die eine Position des Bandmaterials Ws bedeutet, eine Druckposition, eine auf einen Motor ausgeübte externe Kraft und eine Wärmeerzeugung der Maschine 2, erfasst werden, wobei dieses Objekt als Ausgabe der gemeinsamen Schnittstelle der Maschinenmodelle verwendet werden kann.
  • Bei der sechsten Ausführungsform wird angenommen, dass die gemeinsame Schnittstelle der Maschinenmodelle M11 und M12 eine Eingabeschnittstelle umfasst, die eine Motorposition der Abwickelachse 2a, eine Motorposition der Aufwickelachse 2b und eine Motorposition der Z-Achse 2c beziehen kann.
  • Das Maschinenmodell M11 ist ein Modell, das beispielsweise die Dynamik der Maschine 2 berücksichtigt und die Spannung des Bandmaterials Ws simuliert. Das Maschinenmodell M12 ändert eine Bandposition und eine Druckposition lediglich anhand von Kinematik auf Basis der Motorposition, ohne die Dynamik der Maschine 2 zu berücksichtigen, und simuliert den Arbeitsbereich der Bandposition und der Druckposition. Es ist zu beachten, dass das Maschinenmodell M12 nur eine der beiden Positionen simulieren kann, d. h. die Bandposition oder die Druckposition.
  • Die Modellberechnungseinheit 74 liest aus der Modellbibliothek 73 das Treibermodell und das Maschinenmodell, die dem von der Modellauswahleinheit 72 mitgeteilten Modellsatz entsprechen. Unter Verwendung des gelesenen Treibermodells und Maschinenmodells führt die Modellberechnungseinheit 74 eine Simulationsberechnung des Motortreibers und der Maschine 2 durch.
  • Die Modellberechnungseinheit 74 führt die Berechnung eines Modells des Maschinensystems 20B durch, das ein aus der Modellbibliothek 73 ausgewähltes Modell umfasst. Es wird beispielsweise angenommen, dass ein Motormodell und ein Steuerungsmodell im Modell des Maschinensystems 20B enthalten sind. Das Motormodell ist ein Modell, das den Betrieb des Motors simuliert, und das Steuerungsmodell ist ein Modell, das den Betrieb der Steuerung 10B simuliert. In diesem Fall bestimmt die Modellberechnungseinheit 74 ein Modell des Maschinensystems 20B, das umfasst: ein Treibermodell und ein Motormodell, die der Abwickelachse 2a entsprechen; ein Treibermodell und ein Motormodell, die der Aufwickelachse 2b entsprechen; ein Treibermodell und ein Motormodell, die der Z-Achse 2c entsprechen; ein Maschinenmodell; und ein Steuerungsmodell, das dem Motortreiber einen Motorpositionsbefehl gibt. Die Modellberechnungseinheit 74 kann das Motormodell und das Steuerungsmodell aus der Modellbibliothek 73 oder aus einer anderen Bibliothek als der Modellbibliothek 73 beziehen. Die Modellberechnungseinheit 74 gibt das Simulationsergebnis an eine externe Vorrichtung wie beispielsweise eine Anzeigevorrichtung aus. Daraufhin zeigt die Anzeigevorrichtung das Simulationsergebnis an.
  • Im Folgenden wird die Funktionsweise der Simulationsvorrichtung 71 der sechsten Ausführungsform detailliert beschrieben. Zunächst wird ein Fall betrachtet, in dem der Benutzer die Simulation zum Zweck der Überprüfung der Druckposition als Abstraktionsebeneneinstellung auswählt.
  • Es wird angenommen, dass in den Korrespondenzinformationen der Modellauswahleinheit 72 drei Treibermodelle D 12, die der Abwickelachse 2a, der Aufwickelachse 2b und der Z-Achse 2c entsprechen, und das Maschinenmodell M12 vorab als auszuwählend bestimmt werden, wenn die Simulation zum Zweck der Überprüfung der Druckposition ausgewählt wird. In diesem Fall wählt die Modellauswahleinheit 72, wenn eine Abstraktionsebeneneinstellung, die der Simulation zum Zweck der Überprüfung der Druckposition entspricht, durch den Benutzer bestimmt wird, das Treibermodell D 12 als Treibermodell, das der Abwickelachse 2a, der Aufwickelachse 2b und der Z-Achse 2c entspricht, auf Basis der Abstraktionsebeneneinstellung und der Korrespondenzinformationen aus. Außerdem wählt die Modellauswahleinheit 72 das Maschinenmodell M12 als Maschinenmodell aus.
  • Die Modellberechnungseinheit 74 führt eine Simulation zum Simulieren eines Transports des Bandmaterials Ws und eines Betriebs des Stempels 7 durch, indem sie die ausgewählten Modelle verwendet, d. h. die Treibermodelle D12 und das Maschinenmodell M12. Dabei gibt die Modellberechnungseinheit 74 einen Positionsbefehl der Abwickelachse 2a, der durch das Steuerungsmodell erzeugt wurde, in das Treibermodell D 12 der Abwickelachse 2a ein. In diesem Fall steuert das Treibermodell D12 die Motorposition der Abwickelachse 2a simulativ nur durch Vorwärtssteuerung. Ähnlich wie bei der Abwickelachse 2a gibt die Modellberechnungseinheit 74 auch für die Aufwickelachse 2b und die Z-Achse 2c einen vom Steuerungsmodell erzeugten Positionsbefehl in das Treibermodell D12 ein. In diesem Fall steuert das Treibermodell D12 die Motorpositionen der Aufwickelachse 2b und der Z-Achse 2c simulativ nur durch Vorwärtssteuerung. Infolgedessen berechnet die Modellberechnungseinheit 74 die Motorpositionen der Abwickelachse 2a, der Aufwickelachse 2b und der Z-Achse 2c unter Verwendung des Treibermodells D12.
  • Unter Verwendung der auf diese Weise berechneten Motorpositionen der Abwickelachse 2a, der Aufwickelachse 2b und der Z-Achse 2c als Eingabe berechnet die Modellberechnungseinheit 74 das Maschinenmodell M12. Da hier das Maschinenmodell M12 als Maschinenmodell gewählt wird, werden die Transportposition des Bandmaterials Ws und die Position des Stempels 7 rein kinematisch auf Basis der Motorposition jeder Achse berechnet. Damit kann die Modellberechnungseinheit 74 simulieren, an welcher Position das transportierte Bandmaterial Ws mit dem Stempel 7 bedruckt werden soll. Die Modellberechnungseinheit 74 gibt als Ergebnis der Simulation die Transportposition des Bandmaterials Ws und die Position des Stempels 7 aus.
  • Als Nächstes wird ein Fall betrachtet, in dem der Benutzer die Simulation zum Zweck der Einstellung des Servoparameters der Abwickelachse 2a als Abstraktionsebene wählt.
  • Es wird angenommen, dass in den Korrespondenzinformationen der Modellauswahleinheit 72 das Treibermodell D11 als das Treibermodell, das der Abwickelachse 2a und der Aufwickelachse 2b entspricht, vorab als auszuwählend bestimmt wird, wenn die Simulation zum Zweck der Einstellung des Servoparameters der Abwickelachse 2a ausgewählt wird. Ferner werden in den Korrespondenzinformationen das Treibermodell D12 als das der Z-Achse 2c entsprechende Treibermodell und das Maschinenmodell M11 als Maschinenmodell vorab als auszuwählend bestimmt, wenn die Simulation zum Zweck der Einstellung des Servoparameters der Abwickelachse 2a ausgewählt wird. Wenn die Simulation zum Zweck der Einstellung des Servoparameters der Abwickelachse 2a durch den Benutzer bestimmt wird, wählt in diesem Fall die Modellauswahleinheit 72 zwei Treibermodelle D11 als Treibermodelle, die der Abwickelachse 2a und der Aufwickelachse 2b entsprechen, auf Basis der Abstraktionsebeneneinstellung und der Korrespondenzinformationen aus. Ferner wählt die Modellauswahleinheit 72 das Treibermodell D 12 als das der Z-Achse 2c entsprechende Treibermodell aus. Darüber hinaus wählt die Modellauswahleinheit 72 das Maschinenmodell M11 als Maschinenmodell aus.
  • Die Modellberechnungseinheit 74 führt eine Simulation zum Simulieren einer Kopfpositionsfunktion aus, indem sie die ausgewählten Modelle verwendet, d. h. die Treibermodelle D 11 und D12 und das Maschinenmodell M11. Dabei gibt die Modellberechnungseinheit 74 einen durch das Steuerungsmodell erzeugten Positionsbefehl der Abwickelachse 2a in das Treibermodell D11 der Abwickelachse 2a ein. In diesem Fall steuert das Treibermodell D11 die Motorposition simulativ durch eine Vorwärtssteuerung, eine Positionsrückkopplungssteuerung, eine Drehzahlrückkopplungssteuerung und eine Stromsteuerung. In der Maschine 2 wird beispielsweise eine PI-Steuerung als Positionsrückkopplungssteuerung und Drehzahlrückkopplungssteuerung eingesetzt. In diesem Fall sind eine Proportionalverstärkung und eine Integralverstärkung jeweils Steuerparameter, und die Positionssteuerungseigenschaft des Motors der Abwickelachse 2a wird durch Änderung dieser Steuerparameter geändert.
  • Da das Treibermodell der Aufwickelachse 2b das Treibermodell D 11 ist, wird ähnlich wie bei der Abwickelachse 2a die Positionssteuerungseigenschaft des Motors der Aufwickelachse 2b auf Basis der Steuerparameter geändert. Da das Motortreibermodell der Z-Achse 2c das Treibermodell D12 ist, wird die Motorposition nur durch Vorwärtssteuerung gesteuert.
  • Weiterhin wird als Maschinenmodell das Maschinenmodell M11 zur Simulation der Spannung des Bandmaterials Ws gewählt. Dadurch tritt durch den Betrieb des Motors eine Spannungsschwankung des Bandmaterials Ws oder dergleichen auf. Dementsprechend gibt die Modellberechnungseinheit 74 die Spannung des Bandmaterials Ws und die Position des Stempels 7 als Simulationsergebnis aus. Dadurch kann der Benutzer die Spannungsschwankung des Bandmaterials Ws überprüfen. Ferner kann der Benutzer die Steuerparameter der Abwickelachse 2a und der Aufwickelachse 2b so einstellen, dass die Spannungsschwankung des Bandmaterials Ws nicht auftritt, während er die Spannungsschwankung des Bandmaterials Ws, die das Simulationsergebnis ist, überprüft.
  • Wie oben beschrieben wurde, wählt der Benutzer bei der sechsten Ausführungsform einen beliebigen Zweck aus mehreren Arten von Simulationszwecken, wie beispielsweise zwei Arten von Simulationszwecken, aus und gibt den ausgewählten Zweck als Abstraktionsebeneneinstellung in die Simulationsvorrichtung 71 ein. Auf Basis der Abstraktionsebeneneinstellung und der Korrespondenzinformationen wählt die Modellauswahleinheit 72 ein Modell mit einer geeigneten Abstraktionsebene aus den in der Modellbibliothek 73 gespeicherten Modellen so aus, dass ein notwendiger Berechnungsaufwand kleiner wird, während die für die Simulation erforderliche Genauigkeit beibehalten wird.
  • Wird beispielsweise die Simulation zum Zweck der Überprüfung der Druckposition gewählt, wählt die Modellauswahleinheit 72 das Maschinenmodell M12 und das Treibermodell D12 aus. Das Maschinenmodell M12 berechnet eine Transportposition des Bandmaterials Ws und eine der Motorposition entsprechende Position des Stempels 7 nur auf Basis der Kinematik. Da das Maschinenmodell M12 keinen Einfluss der Dynamik, wie z. B. einer externen Kraft, auf die Motorposition berücksichtigt, ist eine Simulation zur Steuerung der Motorposition durch Rückkopplungssteuerung nicht erforderlich. Daher wählt die Modellauswahleinheit 72 bei der Auswahl des Maschinenmodells M12 das einfache Treibermodell D12 der reinen Vorwärtssteuerung aus.
  • Infolgedessen muss die Simulationsvorrichtung 71 keine komplexe Differentialgleichung berechnen, die sich auf die Dynamik und die Rückkopplungssteuerung der Maschine 2 bezieht, und die Berechnung der Modellberechnungseinheit 74 wird sehr einfach. Daher kann die Simulationsvorrichtung 71 verglichen mit dem Fall der Berechnung einer Differentialgleichung bei der Ausführung einer Simulation eines detaillierten Modells die Druckposition mit sehr geringem Berechnungsaufwand überprüfen. Das heißt, die Simulationsvorrichtung 71 kann eine Simulation unter Verwendung eines Modells einer geeigneten Abstraktionsebene ausführen, um den Zweck der Simulation zu erfüllen und gleichzeitig die Berechnungskosten zu reduzieren.
  • Wenn hingegen die Simulation zum Zweck der Einstellung des Servoparameters der Abwickelachse 2a ausgewählt wird, wählt die Modellauswahleinheit 72 das Treibermodell D11 zur Ausführung einer detaillierten Simulation als Treibermodell aus, das der Abwickelachse 2a und der Aufwickelachse 2b entspricht, die das Band transportieren. Darüber hinaus wählt die Modellauswahleinheit 72 das Maschinenmodell M11 zur Ausführung einer detaillierten Simulation als Maschinenmodell aus. Ein Grund für die Auswahl des detaillierten Modells für die Aufwickelachse 2b ist, dass sich die Abwickelachse 2a und die Aufwickelachse 2b über das Bandmaterial Ws beeinflussen, so dass der Betrieb der Aufwickelachse 2b bei der Einstellung der Abwickelachse 2a nicht ignoriert werden kann.
  • Die Modellauswahleinheit 72 wählt für das Treibermodell der Z-Achse 2c das Treibermodell D 12 aus, bei dem es sich um ein einfaches Treibermodell handelt, das das Steuerungsverhalten der Motortreiber der Abwickelachse 2a und der Aufwickelachse 2b nicht beeinträchtigt.
  • Dann stellt der Benutzer einen Parameter der Abwickelachse 2a ein, während er die als Simulationsergebnis ausgegebene Spannungsschwankung des Bandmaterials Ws überprüft. Da die Simulationsvorrichtung 71 in diesem Fall das detaillierte Modell für die Simulation des Betriebs der Abwickelachse 2a, der Aufwickelachse 2b und des Bandmaterials Ws verwendet, kann der Benutzer den Parameter genau einstellen. Auch wenn das detaillierte Modell in diesem Fall ein Modell mit einem großen Berechnungsumfang ist, verwendet die Simulationsvorrichtung 71 das vereinfachte Modell für den Betrieb der Z-Achse 2c, das für die Einstellung eines Steuerparameters des Motortreibers der Abwickelachse 2a nicht berücksichtigt werden muss. Dementsprechend kann die Simulationsvorrichtung 71 den Berechnungsaufwand für die Simulation des Betriebs der Z-Achse 2c reduzieren. Die Simulationsvorrichtung 71 kann demnach eine Simulation unter Verwendung eines Modells einer geeigneten Abstraktionsebene ausführen, um den Zweck der Simulation zu erfüllen und gleichzeitig die Berechnungskosten zu reduzieren.
  • Auf diese Weise ist es möglich, auch bei beliebiger Abstraktionsebeneneinstellung durch den Benutzer eine Simulation mit hoher Berechnungseffizienz zu realisieren, da die Simulationsvorrichtung 71 auf Basis der Abstraktionsebeneneinstellung ein Modell mit einer geeigneten Abstraktionsebene entsprechend dem Zweck der Simulation auswählen kann.
  • Es wird darauf hingewiesen, dass bei der sechsten Ausführungsform ein Fall beschrieben wurde, in dem die Positionssteuerung auf Basis eines Positionsbefehls an die Motortreiber der Abwickelachse 2a und der Aufwickelachse 2b durchgeführt wird, es kann jedoch auch eine Drehzahl durch einen Drehzahlbefehl gesteuert werden, oder ein Drehmoment kann durch einen Drehmomentbefehl gesteuert werden. Ferner kann das Maschinensystem 20B ein System sein, bei dem die Drehzahl des Motortreibers der Aufwickelachse 2b und ein Drehmoment des Motortreibers der Abwickelachse 2a gesteuert wird.
  • Wie oben beschrieben wurde, ist es ähnlich wie bei der ersten bis fünften Ausführungsform gemäß der sechsten Ausführungsform möglich, ein Modell einer geeigneten Abstraktionsebene entsprechend dem Zweck der Simulation auf Basis einer Abstraktionsebeneneinstellung auszuwählen, wodurch es möglich ist, eine Simulation mit hoher Berechnungseffizienz einfach zu realisieren.
  • Nun wird eine Hardwarekonfiguration der Simulationsvorrichtungen 11, 21, 31, 41, 51 und 71 beschrieben. Da die Simulationsvorrichtungen 11, 21, 31, 41, 51 und 71 ähnliche Hardwarekonfigurationen aufweisen, wird hier die Hardwarekonfiguration der Simulationsvorrichtung 11 beschrieben.
  • 14 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für eine Hardwarekonfiguration zur Implementierung einer Simulationsvorrichtung gemäß der ersten Ausführungsform. Die Simulationsvorrichtung 11 kann mit Hilfe einer Eingabevorrichtung 300, eines Prozessors 100, eines Speichers 200 und einer Ausgabevorrichtung 400 implementiert werden. Ein Beispiel für den Prozessor 100 ist eine Zentraleinheit (CPU) (kann auch als zentrale Verarbeitungsvorrichtung, Verarbeitungseinheit, Recheneinheit, Mikroprozessor, Mikrocomputer oder digitaler Signalprozessor (DSP) bezeichnet werden) oder ein LSI (Large Scale Integration)-System. Beispiele für den Speicher 200 sind ein Direktzugriffsspeicher (RAM) und ein Festwertspeicher (ROM).
  • Die Simulationsvorrichtung 11 wird durch den Prozessor 100 implementiert, der ein computerausführbares Simulationsprogramm liest und ausführt, das zur Ausführung einer Operation der Simulationsvorrichtung 11 dient und im Speicher 200 gespeichert ist. Man kann auch sagen, dass das Simulationsprogramm, das ein Programm zum Ausführen des Betriebs der Simulationsvorrichtung 11 ist, einen Computer veranlasst, ein Verfahren oder eine Methode der Simulationsvorrichtung 11 auszuführen.
  • Das von der Simulationsvorrichtung 11 ausgeführte Simulationsprogramm hat eine Modulkonfiguration, die die Modellauswahleinheit 12 und die Modellberechnungseinheit 14 umfasst, wobei diese auf eine Hauptspeichereinrichtung geladen und auf der Hauptspeichereinrichtung erzeugt werden.
  • Die Eingabevorrichtung 300 empfängt eine Abstraktionsebeneneinstellung und überträgt sie an den Prozessor 100. Der Speicher 200 speichert die Modellbibliothek 13 und dergleichen. Die Treibermodelle D1 und D2 und die Maschinenmodelle M1 und M2 sind in der Modellbibliothek 13 gespeichert, die im Speicher 200 abgelegt ist. Darüber hinaus wird der Speicher 200 auch als temporärer Speicher verwendet, wenn der Prozessor 100 verschiedene Prozesse ausführt. Die Ausgabevorrichtung 400 gibt ein von der Modellberechnungseinheit 14 berechnetes Simulationsergebnis an einen Monitor oder dergleichen aus.
  • Hier wurde ein Beispiel beschrieben, bei dem die Simulationsvorrichtungen 11, 21, 31, 41, 51 und 71 von einem Computer implementiert werden, die Simulationsvorrichtungen 11, 21, 31, 41, 51 und 71 können jedoch auch von mehreren Computern implementiert werden.
  • Wenn beispielsweise angenommen wird, dass die Simulationsvorrichtung 31 von zwei Computern implementiert wird, können ein Programm, das die Modellberechnungseinheit 14 umfasst, und ein Programm, das die Modellerzeugungseinheit 36 umfasst, von verschiedenen Computern ausgeführt werden.
  • Wenn beispielsweise angenommen wird, dass die Simulationsvorrichtung 41 von zwei Computern implementiert wird, können ferner ein Programm, das die Modellberechnungseinheit 14 umfasst, und ein Programm, das die Modellvereinfachungseinheit 47 umfasst, von verschiedenen Computern ausgeführt werden.
  • Wenn beispielsweise angenommen wird, dass die Simulationsvorrichtung 51 von zwei Computern implementiert wird, können ferner ein Programm, das die Modellberechnungseinheit 14 umfasst, und ein Programm, das die Modellauswahleinheit 52 umfasst, von verschiedenen Computern ausgeführt werden.
  • Das Simulationsprogramm kann in einem computerlesbaren Speichermedium in einer Datei in einem installierbaren Format oder einem ausführbaren Format gespeichert sein und als Computerprogrammprodukt bereitgestellt werden. Ferner kann das Simulationsprogramm der Simulationsvorrichtung 11 über ein Netzwerk, wie z. B. das Internet, zur Verfügung gestellt werden. Es wird darauf hingewiesen, dass einige der einzelnen Funktionen der Simulationsvorrichtung 11 durch dedizierte Hardware implementiert werden können und dass einige der einzelnen Funktionen durch Software oder Firmware implementiert werden können.
  • Die in den obigen Ausführungsformen dargestellten Konfigurationen stellen ein Beispiel dar und können mit einer anderen bekannten Technik kombiniert werden, und es ist auch möglich, Ausführungsformen miteinander zu kombinieren und einen Teil der Konfiguration wegzulassen und zu ändern, ohne vom Gegenstand der vorliegenden Offenbarung abzuweichen.
  • Bezugszeichenliste
  • 1, 2
    Maschine;
    1a
    X-Achse;
    1b
    Y-Achse;
    1c, 2c
    Z-Achse;
    2a
    Abwickelachse;
    2b
    Aufwickelachse;
    5
    Tisch;
    6
    Kopf;
    7
    Stempel;
    10A, 10B
    Steuerung;
    11, 21, 31, 41, 51, 71
    Simulationsvorrichtung;
    12, 22, 52, 72
    Modellauswahleinheit;
    13, 23, 33, 73
    Modellbibliothek;
    14, 24, 74
    Modellberechnungseinheit;
    20A, 20B
    Maschinensystem;
    25
    Ablaufprogramm;
    36
    Modellerzeugungseinheit;
    47
    Modellvereinfachungseinheit;
    48a, 48b, 48c, 48d
    Block;
    91, 96
    Berechnungsschaltkreis;
    100
    Prozessor;
    200
    Speicher;
    300
    Eingabevorrichtung;
    400
    Ausgabevorrichtung;
    C1, C2
    Steuerungsmodell;
    D1, D2, D11, D12
    Treibermodell;
    M1 bis M6, M11, M12
    Maschinenmodell;
    Wp
    Werkstück;
    Ws
    Bandmaterial.

Claims (9)

  1. Simulationsprogramm zum Simulieren eines Betriebs eines Maschinensystems, das Maschinensystem umfassend: eine Maschine, die einen Motor und von dem Motor angetrieben werden soll; einen Motortreiber zum Steuern des Motors; und eine Steuerung zum Steuern des Motortreibers, unter Verwendung eines Maschinenmodells zum Simulieren eines Betriebs der Maschine und eines Treibermodells zum Simulieren eines Betriebs des Motortreibers, wobei das Simulationsprogramm einen Computer veranlasst, Prozessprozeduren auszuführen, die umfassen: einen Modellauswahlschritt zum Auswählen des Maschinenmodells, das bei der Simulation eines Betriebs der Maschine zu verwenden ist, und des Treibermodells, das bei der Simulation eines Betriebs des Motortreibers zu verwenden ist, aus einer Modellbibliothek, die einen Kandidaten für das Maschinenmodell und einen Kandidaten für das Treibermodell enthält, auf Basis einer Abstraktionsebeneneinstellung, bei der es sich um eine Information handelt, in der eine Abstraktionsebene einer Simulation bei der Simulation eines Betriebs des Maschinensystems festgelegt ist; und einen Modellberechnungsschritt zum Simulieren eines Betriebs des Maschinensystems unter Verwendung des Maschinenmodells und des Treibermodells, die in dem Modellauswahlschritt ausgewählt wurden, wobei es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Maschinenmodell und/oder eines Kandidaten für das Treibermodell um mehrere handelt, wobei Kandidaten für das Maschinenmodell mehrere Maschinenmodelle umfassen, um einen Teil der Maschine auf verschiedenen Abstraktionsebenen zu simulieren, wenn es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Maschinenmodell um mehrere handelt, und wobei Kandidaten für das Treibermodell mehrere Treibermodelle umfassen, um einen Teil des Motortreibers auf verschiedenen Abstraktionsebenen zu simulieren, wenn es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Treibermodell um mehrere handelt.
  2. Simulationsprogramm nach Anspruch 1, wobei wenn es mehrere Kandidaten für das Maschinenmodell gibt, es sich bei den mehreren Maschinenmodellen mit unterschiedlichen Abstraktionsebenen um Software mit einer gemeinsamen Schnittstelle handelt.
  3. Simulationsprogramm nach Anspruch 1 oder 2, das einen Computer ferner veranlasst, Prozessprozeduren auszuführen, die umfassen: einen Modellerzeugungsschritt, bei dem durch erstes maschinelles Lernen ein Maschinenmodell, das eine Abstraktionsebene aufweist, die sich von einer Abstraktionsebene der in der Modellbibliothek gespeicherten mehreren Maschinenmodelle unterscheidet, auf Basis tatsächlicher Maschineninformationen erzeugt wird, bei denen es sich um ein Signal handelt, das durch den tatsächlichen Betrieb des Maschinensystems erhalten wird; und ein Speichern des Maschinenmodells in der Modellbibliothek veranlasst wird.
  4. Simulationsprogramm nach Anspruch 3, wobei in dem Modellerzeugungsschritt ein Maschinenmodell mit einer Abstraktionsebene, die sich von einer Abstraktionsebene der mehreren Maschinenmodelle unterscheidet, durch das erste maschinelle Lernen erzeugt wird, indem ein neuronales Netzwerk verwendet wird, das Zeitreihendaten einer Position des Motors als Eingabe und Zeitreihendaten einer Position eines durch den Motor bewegten Teils als Ausgabe aufweist.
  5. Simulationsprogramm nach einem der Ansprüche 1 bis 4, das einen Computer ferner veranlasst, Prozessprozeduren auszuführen, die umfassen: einen Modellvereinfachungsschritt, bei dem ein erstes Maschinenmodell verwendet wird, um ein zweites Maschinenmodell zu erzeugen, wobei das erste Maschinenmodell ein Maschinenmodell aus den mehreren Maschinenmodellen ist und das zweite Maschinenmodell ein neues Maschinenmodell mit einer Abstraktionsebene ist, die niedriger als die des ersten Maschinenmodells ist.
  6. Simulationsprogramm nach einem der Ansprüche 1 bis 5, das einen Computer ferner veranlasst, Prozessprozeduren auszuführen, die umfassen: einen Lernschritt zum Lernen des Maschinenmodells und des Treibermodells, die auf Basis der Abstraktionsebeneneinstellung ausgewählt wurden, durch zweites maschinelles Lernen, wobei in dem Modellauswahlschritt, wenn eine neue Abstraktionsebeneneinstellung empfangen wird, das Maschinenmodell, das der neuen Abstraktionsebeneneinstellung entspricht, basierend auf einem Lernergebnis des zweiten maschinellen Lernens mit der neuen Abstraktionsebeneneinstellung als Eingabe aus Kandidaten für das Maschinenmodell ausgewählt wird, und das Treibermodell, das der neuen Abstraktionsebeneneinstellung entspricht, aus Kandidaten für das Treibermodell ausgewählt wird.
  7. Simulationsvorrichtung zum Simulieren eines Betriebs eines Maschinensystems, das Maschinensystem umfassend: eine Maschine, die einen Motor umfasst und von dem Motor angetrieben werden soll; einen Motortreiber zum Steuern des Motors; und eine Steuerung zum Steuern des Motortreibers, unter Verwendung eines Maschinenmodells zum Simulieren eines Betriebs der Maschine und eines Treibermodells zum Simulieren eines Betriebs des Motortreibers, wobei die Simulationsvorrichtung aufweist: eine Modellauswahleinheit zum Auswählen des Maschinenmodells, das bei der Simulation eines Betriebs der Maschine zu verwenden ist, und des Treibermodells, das bei der Simulation eines Betriebs des Motortreibers zu verwenden ist, aus einer Modellbibliothek, die einen Kandidaten für das Maschinenmodell und einen Kandidaten für das Treibermodell enthält, auf Basis einer Abstraktionsebeneneinstellung, bei der es sich um eine Information handelt, in der eine Abstraktionsebene einer Simulation bei der Simulation eines Betriebs des Maschinensystems festgelegt ist; und eine Modellberechnungseinheit zum Simulieren eines Betriebs des Maschinensystems unter Verwendung des Maschinenmodells und des Treibermodells, die von der Modellauswahleinheit ausgewählt wurden, wobei es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Maschinenmodell und/oder eines Kandidaten für das Treibermodell um mehrere handelt, wobei Kandidaten für das Maschinenmodell mehrere Maschinenmodelle umfassen, um einen Teil der Maschine auf verschiedenen Abstraktionsebenen zu simulieren, wenn es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Maschinenmodell um mehrere handelt, und wobei Kandidaten für das Treibermodell mehrere Treibermodelle umfassen, um einen Teil des Motortreibers auf verschiedenen Abstraktionsebenen zu simulieren, wenn es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Treibermodell um mehrere handelt.
  8. Simulationsvorrichtung nach Anspruch 7, wobei die Modellbibliothek mehrere Steuerungsmodelle enthält, um einen Prozess eines von der Steuerung ausgeführten Ablaufprogramms auf verschiedenen Abstraktionsebenen zu simulieren, die Modellauswahleinheit aus der Modellbibliothek ein Steuerungsmodell, das bei der Simulation eines Prozesses des Ablaufprogramms verwendet werden soll, auf Basis der Abstraktionsebeneneinstellung auswählt, und die Modellberechnungseinheit einen Betrieb des Maschinensystems unter Verwendung des von der Modellauswahleinheit ausgewählten Steuerungsmodells simuliert.
  9. Simulationsverfahren zum Simulieren eines Betriebs eines Maschinensystems, das Maschinensystem umfassend: eine Maschine, die einen Motor umfasst und von dem Motor angetrieben werden soll; einen Motortreiber zum Steuern des Motors; und eine Steuerung zum Steuern des Motortreibers, unter Verwendung eines Maschinenmodells zum Simulieren eines Betriebs der Maschine und eines Treibermodells zum Simulieren eines Betriebs des Motortreibers, wobei das Simulationsverfahren umfasst: einen Modellauswahlschritt zum Auswählen des Maschinenmodells, das bei der Simulation eines Betriebs der Maschine zu verwenden ist, und des Treibermodells, das bei der Simulation eines Betriebs des Motortreibers zu verwenden ist, aus einer Modellbibliothek, die einen Kandidaten für das Maschinenmodell und einen Kandidaten für das Treibermodell enthält, auf Basis einer Abstraktionsebeneneinstellung, bei der es sich um eine Information handelt, in der eine Abstraktionsebene einer Simulation bei der Simulation eines Betriebs des Maschinensystems festgelegt ist; und einen Modellberechnungsschritt zum Simulieren eines Betriebs des Maschinensystems unter Verwendung des Maschinenmodells und des Treibermodells, die in dem Modellauswahlschritt ausgewählt wurden, wobei es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Maschinenmodell und/oder eines Kandidaten für das Treibermodell um mehrere handelt, wobei Kandidaten für das Maschinenmodell mehrere Maschinenmodelle umfassen, um einen Teil der Maschine auf verschiedenen Abstraktionsebenen zu simulieren, wenn es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Maschinenmodell um mehrere handelt, und Kandidaten für das Treibermodell mehrere Treibermodelle umfassen, um einen Teil des Motortreibers auf verschiedenen Abstraktionsebenen zu simulieren, wenn es sich bei der Anzahl der Einzelelemente eines Kandidaten für das Treibermodell um mehrere handelt.
DE112021005541.0T 2021-01-07 2021-01-07 Simulationsprogramm, Simulationsvorrichtung und Simulationsverfahren Pending DE112021005541T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/000366 WO2022149241A1 (ja) 2021-01-07 2021-01-07 シミュレーションプログラム、シミュレーション装置、およびシミュレーション方法

Publications (1)

Publication Number Publication Date
DE112021005541T5 true DE112021005541T5 (de) 2023-08-24

Family

ID=78409784

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021005541.0T Pending DE112021005541T5 (de) 2021-01-07 2021-01-07 Simulationsprogramm, Simulationsvorrichtung und Simulationsverfahren

Country Status (3)

Country Link
JP (1) JP6961130B1 (de)
DE (1) DE112021005541T5 (de)
WO (1) WO2022149241A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023209754A1 (ja) * 2022-04-25 2023-11-02 ファナック株式会社 サーボ調整システム
WO2024090284A1 (ja) * 2022-10-27 2024-05-02 パナソニックIpマネジメント株式会社 学習システム、予測システム、および調整システム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005032048A (ja) * 2003-07-08 2005-02-03 Yaskawa Electric Corp モーションコントロールシミュレータ及びその機能を備えた電動機制御系の調整支援装置
WO2014091840A1 (ja) * 2012-12-11 2014-06-19 三菱電機株式会社 サーボ制御装置
JP6460138B2 (ja) * 2017-03-13 2019-01-30 オムロン株式会社 処理装置、制御パラメータ決定方法、及び制御パラメータ決定プログラム

Also Published As

Publication number Publication date
JPWO2022149241A1 (de) 2022-07-14
CN116348822A (zh) 2023-06-27
JP6961130B1 (ja) 2021-11-05
WO2022149241A1 (ja) 2022-07-14

Similar Documents

Publication Publication Date Title
DE102017002996B4 (de) Maschinenlernvorrichtung, die ein lernen unter verwendung eines simulationsergebnisses durchführt, maschinensystem, herstellungssystem und maschinenlernverfahren
DE102018203956B4 (de) Maschinelle Lernvorrichtung, Servosteuerungsvorrichtung, Servosteuerungssystem und maschinelles Lernverfahren
DE102018205015B4 (de) Einstellvorrichtung und Einstellverfahren
DE112013007444B4 (de) Einstell- und Justierfunktionsunterstützungseinrichtung für ein Mehrachsen-Steuerungssystem
DE102017205214B4 (de) Servo-steuereinheit, steuerverfahren und computerprogramm für ein maschinenwerkzeug das für oszillierendes schneiden verwendet wird
DE102019001948B4 (de) Steuerung und maschinelle Lernvorrichtung
DE10352815B4 (de) Simulationsverfahren für eine Bearbeitung eines Werkstücks durch eine Werkzeugmaschine und korrespondierender Rechner
DE102018202654A1 (de) Vorrichtung für maschinelles Lernen, Servoregeleinrichtung, Servoregelsystem und Verfahren für maschinelles Lernen
DE112021005541T5 (de) Simulationsprogramm, Simulationsvorrichtung und Simulationsverfahren
DE102019204861A1 (de) Maschinenlernvorrichtung; steuervorrichtung und maschinelles lernverfahren
EP3814862A1 (de) Anordnung und verfahren zur prognose einer restnutzungsdauer einer maschine
DE102019217130A1 (de) Ausgabevorrichtung, steuervorrichtung und verfahren zum ausgeben von bewertungsfunktionen und maschinellen lernergebnissen
DE102019204949A1 (de) Maschinelle lernvorrichtung, steuervorrichtung und maschinelles lernverfahren
WO2006029994A2 (de) Verfahren zur anpassung von parametern einer steuerungs- oder regelungseinrichtung
DE112014006594B4 (de) Anweisungswerterzeugungsvorrichtung
DE10393527T5 (de) Systeme und Verfahren zur Darstellung komplexer n-Kurven für die Direktsteuerung einer Werkzeugbewegung
DE102017222474A1 (de) Numeriksteuerung und datenstruktur
DE102020122373A1 (de) Vorrichtung für maschinelles Lernen, Servosteuervorrichtung, Servosteuersystem und Verfahren für maschinelles Lernen
DE112005003519T5 (de) Kommunikationstreiber
EP3438773B1 (de) Bearbeitung von werkstücken mit modellgestützter fehlerkompensation
WO2021185909A1 (de) Computerimplementiertes verfahren zum erstellen von steuerungsdatensätzen, cad-cam-system und fertigungsanlage
EP3955073A1 (de) Betreiben einer wenigstens zweiachsigen werkzeugmaschine
DE102019201473A1 (de) Maschinenlernvorrichtung, Servomotor-Steuerung, Servomotorsteuerungssystem und Maschinenlernverfahren
EP2199879A1 (de) Vorrichtung und Verfahren zur Minimierung eines dynamischen Schleppfehlers
DE112009005232T5 (de) Intelligente Vorrichtung und Verfahren zur Kompensation des Werkzeugschieberdurchgangs beiWerkzeugmaschinen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication