DE102020124734A1 - Simulationsgerät - Google Patents

Simulationsgerät Download PDF

Info

Publication number
DE102020124734A1
DE102020124734A1 DE102020124734.6A DE102020124734A DE102020124734A1 DE 102020124734 A1 DE102020124734 A1 DE 102020124734A1 DE 102020124734 A DE102020124734 A DE 102020124734A DE 102020124734 A1 DE102020124734 A1 DE 102020124734A1
Authority
DE
Germany
Prior art keywords
point
data
simulation
sequence data
simulation process
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
DE102020124734.6A
Other languages
English (en)
Inventor
Masahiro Katsumoto
Jost Kurzrock
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102020124734A1 publication Critical patent/DE102020124734A1/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
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4069Simulating machining process on screen
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4142Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by the use of a microprocessor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • G05B19/40937Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine concerning programming of machining or material parameters, pocket machining
    • G05B19/40938Tool management
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4062Monitoring servoloop, e.g. overload of servomotor, loss of feedback or reference
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34013Servocontroller

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Numerical Control (AREA)

Abstract

Ein Simulationsgerät speichert Seriendaten von Positionen von Punkten (Punktsequenzdaten) bezüglich Feedbackdaten von einem Motor, der eine Achse einer Werkzeugmaschine antreibt, wählt einen Punkt, der eine große Auswirkung auf die Endqualität einer bearbeiteten Oberfläche hat, als einen Punkt zur Verwendung in einem Simulationsprozess aus diesen gespeicherten Punktsequenzdaten aus und führt den Simulationsprozess basierend auf Daten bezüglich dem ausgewählten Punkt durch.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft Simulationsgeräte und insbesondere ein Simulationsgerät, das Simulation basierend auf Feedbackdaten von einem Servomotor durchführt.
  • Beschreibung der verwandten Technik
  • In einer numerischen Steuerung wird ein Werkzeugpfad von einem Bearbeitungsprogramm berechnet, um eine Bearbeitungssimulation durchzuführen, wobei Bearbeitungszustand und die bearbeitete Form erkannt werden und ein Zusammenstoß zwischen dem Werkzeug und einer Einspannvorrichtung, einem Tisch, einem Werkstück oder dergleichen überprüft wird. Auch wenn eine Bearbeitungssimulation auf einem Bearbeitungsprogramm durchgeführt wird und bestätigt wurde, dass es kein Problem mit der bearbeiteten Form und Störung gibt, können jedoch bei der tatsächlichen Bearbeitung des Werkstücks durch Ausführung des Bearbeitungsprogramms Vibrationen in der Werkzeugmaschine aufgrund von Beschleunigung und ihrem Rucken der Antriebsachse auftreten, was möglicherweise Auswirkungen auf die Oberflächenqualität der bearbeiteten Oberfläche hat.
  • Indessen sollen herkömmliche Bearbeitungssimulationen einen Werkzeugpfad basierend auf einem Bearbeitungsprogramm berechnen. Um eine Bearbeitungszeit genauer zu berechnen, wird Beschleunigung und Entschleunigung jeder Achse berücksichtigt. Vibrationen aufgrund von Beschleunigung und Entschleunigung und ihr Rucken werden jedoch nicht simuliert. Somit kann zum Beispiel, wenn hochqualitative Bearbeitung empfindlich auf die Auswirkung mechanischer Vibrationen erforderlich ist, die Oberflächenqualität nicht überprüft werden, solange das Werkstück nicht tatsächlich bearbeitet wird.
  • Als ein Mittel für die Überprüfung des Zustands der bearbeitenden Oberfläche nach der Bearbeitung mittels einer Simulation, wie in 11 veranschaulicht, gibt es eine Technik, bei der Feedbackdaten von jeder Achse einer Maschine gespeichert werden, und durch Verwenden dieser gespeicherten Daten wird eine Anzeige erstellt, die gestattet, einen Fehler zwischen der Position in den computergestützten Auslegungsdaten und den Feedbackdaten zu überprüfen, wenn eine Simulation auf der bearbeiteten Oberfläche durchgeführt wird (siehe zum Beispiel die internationale Veröffentlichungsschrift Nr. WO2016/174716 und so weiter).
  • Ein generelles Problem bei der Durchführung einer Bearbeitungssimulation besteht darin, dass durch mehr Daten zur Verwendung in der Simulation die Berechnungszeit und die RAM-Auslastungsmenge oder dergleichen in dem Simulationsprozess zunimmt, was wiederum die Zeit, die benötigt wird, bis die Simulationsergebnisse angezeigt werden, erhöht.
  • Um zum Beispiel eine Auswirkung auf der bearbeiteten Oberfläche durch zum Beispiel Vibrationen der Maschine und Spiel zum Zeitpunkt der Achsenumkehr basierend auf den Feedbackdaten des Servomotors genau anzuzeigen, wird eine hohe Abtastfrequenz benötigt, und die Anzahl an Datenstücken, die erhalten werden müssen, erhöht sich signifikant. Wenn jedoch die Anzahl an Datenstücken erhöht wird, wird die Zeit, die für einen Simulationsprozess benötigt wird, länger und die Speicherauslastung erhöht sich ebenfalls. Somit ist es schwierig, Simulation durchzuführen, wenn Daten, die alle bearbeiteten Positionen anzeigen und als Feedbackdaten erhalten werden, direkt verwendet werden.
  • KURZFASSUNG DER ERFINDUNG
  • Deshalb sind Techniken zum Anpassen der Datenmenge zur Verwendung in einer Simulation von Bearbeitung gemäß der Werkzeugbewegungssituation und dem Anzeigemodus der Simulationsergebnisse gewünscht.
  • Ein Simulationsgerät nach einem Aspekt der vorliegenden Erfindung weist eine Datenauswahleinheit zwischen einer Servodatenausgabeeinheit und einer Eingabeeinheit eines Simulators zum Auswählen von Daten, die zur Evaluierung einer bearbeiteten Oberfläche benötigt werden, auf. Die Datenauswahleinheit löst die oben beschriebenen Probleme durch Reduzierung der Anzahl an Datenstücken zur Verwendung in einem Simulationsprozess gemäß der Bewegungssituation eines Werkzeugs. Die Datenauswahleinheit reduziert außerdem die Anzahl an Datenstücken zur Verwendung in dem Simulationsprozess gemäß dem Anzeigemodus des Simulationsergebnisses.
  • Das Simulationsgerät gemäß der vorliegenden Erfindung führt Simulationsprozesse basierend auf Feedbackdaten von einem Motor, der eine Achse einer Werkzeugmaschine antreibt, durch und weist Folgendes auf: eine Punksequenzdatenspeichereinheit, die Punktsequenzdaten, bei denen es sich um Seriendaten von Positionen von Punkten bezüglich der Feedbackdaten von dem Motor handelt, speichert; eine Datenauswahleinheit, die einen Punkt, der eine große Auswirkung auf die Endqualität einer bearbeiteten Oberfläche hat, als einen Punkt zur Verwendung in dem Simulationsprozess aus den Punktsequenzdaten auswählt; und eine Simulationsdurchführungseinheit, die den Simulationsprozess basierend auf Daten bezüglich des Punkts, der durch die Datenauswahleinheit ausgewählt wurde, durchführt.
  • Die Datenauswahleinheit kann einen Punkt, der sich um eine Länge größer als eine vorbestimmte Toleranzlänge, die im Voraus definiert wird, von einem Liniensegment, das angrenzende vorherige und nachfolgende Punkte durchläuft, befindet, als den Punkt zur Verwendung in dem Simulationsprozess aus Punkten, die in den Punktsequenzdaten enthalten sind, auswählen.
  • Die Datenauswahleinheit kann einen Punkt, an dem eine Werkzeugausrichtung um einen Winkel größer als ein vorbestimmter, im Voraus definierter Toleranzwinkel von einer Werkzeugausrichtung an einem direkt vorhergehenden Punkt, der bereits ausgewählt ist, verändert wird, als den Punkt zur Verwendung in dem Simulationsprozess aus den Punkten, die in den Punktsequenzdaten enthalten sind, auswählen.
  • Die Punktsequenzdatenspeichereinheit kann gemeinsam mit den Punktsequenzdaten eine Anweisungsposition für den Motor speichern, wenn die Feedbackdaten erhalten werden, und die Datenauswahleinheit kann einen Punkt, an dem ein Fehler von der Anweisungsposition um mehr als eine vorbestimmte Toleranzfehleränderungsmenge, die im Voraus von einem Fehler von der Anwendungsposition an einem direkt vorhergehenden Punkt, der bereits ausgewählt ist, definiert wird, geändert wird, als den Punkt zur Verwendung in dem Simulationsprozess aus den Punkten, die in den Punktsequenzdaten enthalten sind, auswählen.
  • Die Punktsequenzdatenspeichereinheit kann gemeinsam mit den Punktsequenzdaten eine Reihe von NC-Daten, die ausgeführt werden, wenn die Feedbackdaten erhalten werden, speichern und die Datenauswahleinheit kann einen Punkt, an dem ein Fehler von den NC-Daten um mehr als eine vorbestimmte zweite Toleranzfehleränderungsmenge, die im Voraus von einem Fehler von den NC-Daten an einem direkt vorhergehenden Punkt, der bereits ausgewählt ist, definiert wird, geändert wird, als den Punkt zur Verwendung in dem Simulationsprozess aus den Punkten, die in den Punktsequenzdaten enthalten sind, auswählen.
  • Die Datenauswahleinheit kann einen ersten Selektor, der einen Punkt, der eine große Auswirkung auf die Endqualität der bearbeiteten Oberfläche hat, als einen Punkt zur Verwendung in dem Simulationsprozess auswählt, und einen zweiten Selektor, der einen Punkt, der in einem bestimmten Bereich enthalten ist, als den Punkt zur Verwendung in dem Simulationsprozess auswählt, aufweisen, und die Datenauswahleinheit kann den Punkt zur Verwendung in dem Simulationsprozess unter Verwendung eines beliebigen des ersten Selektors und des zweiten Selektors basierend auf einem Anzeigemodus der Ergebnisse des Simulationsprozesses, der durch die Simulationsdurchführungseinheit durchgeführt wird, auswählen.
  • Gemäß einem Aspekt der vorliegenden Erfindung können Simulationszeit und Speicherauslastung reduziert werden, während Information, die für die grafische Darstellung einer bearbeiteten Oberfläche benötigt wird, reserviert wird.
  • Figurenliste
    • 1 ist ein schematisches Diagramm einer Hardwarestruktur eines Simulationsgeräts gemäß einer Ausführungsform.
    • 2 ist ein schematisches Funktionsblockdiagramm eines Simulationsgeräts gemäß einer ersten Ausführungsform.
    • 3 ist ein Diagramm, das ein erstes Auswahlverfahren durch die Datenauswahleinheit beschreibt.
    • 4 ist ein Diagramm, das ein zweites Auswahlverfahren durch die Datenauswahleinheit beschreibt.
    • 5 ist ein Diagramm, das ein drittes Auswahlverfahren durch die Datenauswahleinheit beschreibt.
    • 6 ist ein Diagramm, das ein viertes Auswahlverfahren durch die Datenauswahleinheit beschreibt.
    • 7 ist ein schematisches Funktionsblockdiagramm eines Simulationsgeräts gemäß einer zweiten Ausführungsform.
    • 8 ist ein Diagramm, das ein Verfahren des Auswählens eines Punkts in einem bestimmen Bereich durch die Datenauswahleinheit beschreibt.
    • 9 ist ein Diagramm, das Anzeige eines Ziels basierend auf dem visuellen Punkt beschreibt.
    • 10 ist ein Flussdiagramm, das einen Operationsvorgang zum Verbessern von Bearbeitungsbedingungen unter Verwendung des Simulationsgeräts gemäß der zweiten Ausführungsform darstellt.
    • 11 ist ein Diagramm, das Anzeige von Ergebnissen eines Simulationsprozesses gemäß einer Technik des Stands der Technik beschreibt.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • 1 ist ein schematisches Diagramm einer Hardwarestruktur, die Hauptbestandteile eines Simulationsgeräts gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
  • Ein Simulationsgerät 1 der vorliegenden Erfindung kann zum Beispiel als eine numerische Steuerung, die eine Werkzeugmaschine basierend auf einem Bearbeitungsprogramm steuert, implementiert werden. Das Simulationsgerät 1 der vorliegenden Erfindung kann auch als ein persönlicher Computer, Fog-Computer, Cloud-Server oder dergleichen, der mit einem persönlichen Computer, der an einer Steuerung angeschlossen ist oder mit einer Steuerung über ein Netzwerk oder dergleichen verbunden ist, verbunden ist, implementiert werden. In den folgenden Ausführungsformen handelt es sich bei dem Simulationsgerät 1 der vorliegenden Erfindung um einen persönlichen Computer, der über ein Netzwerk 5 oder dergleichen mit einer numerischen Steuerung 4, die eine Werkzeugmaschine steuert, verbunden ist.
  • Eine CPU 11, die in dem Simulationsgerät 1 gemäß der vorliegenden Erfindung, enthalten ist, ist ein Prozessor, der das Simulationsgerät 1 gesamt steuert. Die CPU 11 liest ein Systemprogramm, das in einem ROM 12 gespeichert ist, über einen Bus 20 aus und steuert das gesamte Simulationsgerät 1, indem es dem Systemprogramm folgt. Temporäre Berechnungsdaten, Anzeigedaten, jedes extern eingegebene Datenstück und so weiter werden temporär in einem RAM 13 gespeichert.
  • Ein nichtflüchtiger Speicher 14 besteht zum Beispiel aus einem Speicher, einem Halbleiterlaufwerk (SSD) oder dergleichen, die von einer Batterie, die nicht veranschaulicht ist, gesichert werden, und der Speicherzustand wird aufrechterhalten, auch wenn das Simulationsgerät 1 ausgeschaltet ist. Ein Programm und Daten, die über ein Eingabegerät 71 eingegeben werden, Daten bezüglich der Position und Geschwindigkeit jedes Motors, die von der numerischen Steuerung 4 über das Netzwerk 5 eingegeben werden, oder dergleichen werden in dem nichtflüchtigen Speicher 14 gespeichert. Das Programm und jedes Datenstück, die in dem nichtflüchtigen Speicher 14 gespeichert sind, können während Ausführung/Verwendung in das RAM 13 geladen werden. Des Weiteren werden verschiedene Systemprogramme, wie zum Beispiel ein bekanntes Analyseprogramm, im Voraus in das ROM 12 geschrieben.
  • Das Simulationsgerät 1 ist über eine Schnittstelle 17 mit dem Netzwerk 5 verbunden. Zum Beispiel sind die numerische Steuerung 4, die eine Werkzeugmaschine steuert, und Computer, wie zum Beispiel ein Fog-Computer und ein Cloud-Server, für gegenseitige Kommunikation (Übertragung und Empfang) mit dem Simulationsgerät 1 mit dem Netzwerk 5 verbunden.
  • Daten, die als ein Ergebnis der Ausführung jedes Datenstücks erhalten werden, Programms und so weiter, die auf den Speicher gelesen sind, Bilder von Ergebnissen eines Simulationsprozesses und so weiter werden über eine Schnittstelle 18 ausgegeben und auf einem Anzeigegerät 70 angezeigt. Außerdem leitet das Eingabegerät 71, das als Tastatur, Zeigevorrichtung und so weiter ausgelegt ist, Anweisungen, Daten und dergleichen basierend auf den Operationen durch eine Bedienperson über eine Schnittstelle 19 an die CPU 11.
  • Indessen ist eine CPU 411, die in der numerischen Steuerung 4, die über das Netzwerk 5 mit dem Simulationsgerät 1 verbunden ist, enthalten ist, ein Prozessor, der die numerische Steuerung 4 gesamt steuert. Die CPU 411 liest ein Systemprogramm, das in einem ROM 412 gespeichert ist, über einen Bus 420 aus und steuert die gesamte numerische Steuerung 4, indem es dem Systemprogramm folgt. Temporäre Berechnungsdaten, Anzeigedaten, verschiedene Arten von Daten, die extern eingegeben werden, und so weiter werden temporär in einem RAM 413 gespeichert.
  • Ein nichtflüchtiger Speicher 414 besteht zum Beispiel aus einem Speicher, einem Halbleiterlaufwerk (SSD) oder dergleichen, die von einer Batterie (nicht dargestellt) gesichert werden, und der Speicherzustand wird aufrechterhalten, auch wenn die numerische Steuerung 4 ausgeschaltet ist. Ein Programm, das über eine Schnittstelle 415 von einer externen Vorrichtung 72 gelesen wird, ein Programm, das über eine Anzeige-/MDI-Einheit (nicht dargestellt) eingegeben wird, Feedbackdaten der Position und Geschwindigkeit jedes Motors, die von einem Positions-/Geschwindigkeitsdetektor, der in einem Servomotor 50 enthalten ist, und einem Positionscodierer 63, der an einem Spindelmotor 62 angebracht ist, rückgeführt werden, und so weiter werden in einem nichtflüchtigen Speicher 414 gespeichert. Das Programm und verschiedene Arten von Daten, die in dem nichtflüchtigen Speicher 414 gespeichert sind, können bei Ausführung/Verwendung in das RAM 413 geladen werden. Des Weiteren werden verschiedene Systemprogramme, wie zum Beispiel ein bekanntes Analyseprogramm, im Voraus in das ROM 412 geschrieben.
  • Die Schnittstelle 415 ist eine Schnittstelle für Verbindung zwischen der CPU 411 der nummerischen Steuerung 4 und der externen Vorrichtung 72, wie zum Beispiel einer USB-Vorrichtung. Programme, verschiedene Parameter und so weiter zur Verwendung beim Steuern einer Werkzeugmaschine werden von einer Seite einer externen Vorrichtung 72 gelesen. Außerdem können Programme, verschiedene Parameter und so weiter, die in der numerischen Steuerung 1 überarbeitet werden, über die externe Vorrichtung 72 in externe Speichermittel gespeichert werden. Eine speicherprogrammierbare Steuerung (PLC) 416 verwendet ein Sequenzprogramm, das in der numerischen Steuerung 4 inkorporiert ist, um ein Signal an die Werkzeugmaschine und ein Peripheriegerät der Werkzeugmaschine (zum Beispiel ein Werkzeugaustauschgerät, einen Aktuator eines Roboters oder dergleichen, einen Sensor, der an der Werkzeugmaschine angebracht ist oder dergleichen) über eine E/A-Einheit 417 für Steuerung auszugeben. Außerdem empfängt die PLC 416 Signale von verschiedenen Schaltern auf einem Bedienpanel, das auf dem Hauptkörper der Werkzeugmaschine, dem Peripheriegerät und so weiter angeordnet ist, führt notwendige Signalverarbeitung durch und leitet dann die Signale an die CPU 411.
  • Die numerische Steuerung 4 ist über eine Schnittstelle 418 mit dem Netzwerk 5 verbunden. Die numerische Steuerung 4 ist dazu ausgelegt, in der Lage zu sein, Datenkommunikation (Übertragung und Empfang) mit dem Simulationsgerät 1 über das Netzwerk 5 durchzuführen.
  • Eine Achssteuerschaltung 430 zum Steuern einer Achse, die in der Werkzeugmaschine enthalten ist, empfängt eine Anweisung bezüglich der Menge an Bewegung der Achse von der CPU 411 und gibt die Anweisung an die Achse an einen Hilfsverstärker aus 440. Der Hilfsverstärker 440 empfängt diese Anweisung und treibt den Servomotor 50 zum Bewegen der Achse, die in der Werkzeugmaschine vorgesehen ist, an. Der Servomotor 50 für die Achse weist einen Positions-/Geschwindigkeitsdetektor darin auf und führt ein Positions-/Geschwindigkeitsfeedbacksignal von diesem Positions-/Geschwindigkeitsdetektor zu der Achssteuerschaltung 430 für Positions-/Geschwindigkeitsfeedbacksteuerung zurück. Auch wenn nur eine Achssteuerschaltung 430, ein Hilfsverstärker 440 und ein Servomotor 50 in dem Hardwarestrukturdiagramm von 1 dargestellt sind, sind diese in der Praxis in der gleichen Anzahl wie die Anzahl an Achsen, die in der Werkzeugmaschine enthalten sind, als Steuerziel bereitgestellt. Zum Beispiel sind zur Steuerung einer fünfachsigen Werkzeugmaschine, die drei gerade Achsen und zwei Drehachsen aufweist, fünf Sätze von Achssteuerschaltung 430, Hilfsverstärker 440 und Servomotor 50 wie folgt bereitgestellt: (1) Achssteuerschaltungen 430, Hilfsverstärker 440 und Servomotoren 50 zum Veranlassen eines Werkzeugs und eines Werkstücks, verhältnismäßig eine lineare Bewegung zu den X-, Y- und Z-Achsrichtungen zu machen, und (2) Achssteuerschaltungen 430, Hilfsverstärker 330 und Servomotoren 50 zum Veranlassen des Werkzeugs und des Werkstücks, verhältnismäßig eine Drehbewegung zu den A- und C-Achs- (oder B-Achs-) Richtungen zu machen.
  • Eine Spindelsteuerschaltung 460 empfängt eine Spindeldrehanweisung, und gibt ein Spindelgeschwindigkeitssignal an einen Spindelverstärker 461 aus. Der Spindelverstärker 461 empfängt das Spindelgeschwindigkeitssignal und veranlasst den Spindelmotor 62 der Werkzeugmaschine, sich mit der angewiesenen Rotationsgeschwindigkeit zu drehen, um das Werkzeug rotationsmäßig anzutreiben. Der Spindelmotor 62 weist den Positionscodierer 63, der daran gekoppelt ist, auf. Der Positionscodierer 63 gibt einen Feedbackimpuls in Synchronisation mit der Drehung der Spindel aus und sein Feedbackimpuls wird von der CPU 411 gelesen.
  • 2 ist ein schematisches Blockdiagramm, das Funktionen, die das Simulationsgerät 1 gemäß einer ersten Ausführungsform der vorliegenden Erfindung aufweist, und Funktionen, die die numerische Steuerung 4, die in der Lage ist, Daten an das Simulationsgerät 1 auszugeben, aufweist, darstellt.
  • Jeder Block, der in dem Simulationsgerät 1, wie in 2 dargestellt, enthalten ist, wird durch die CPU 11, die in dem Simulationsgerät 1 enthalten ist, wie in 1 dargestellt, die das Systemprogramm ausführt und die Operation jeder Einheit des Simulationsgeräts 1 steuert, implementiert. Außerdem wird jeder Block, der in der numerischen Steuerung 4 enthalten ist, wie in 2 dargestellt, durch die CPU 411, die in der numerischen Steuerung 4 enthalten ist, wie in 1 dargestellt, die das Systemprogramm ausführt und die Operation jeder Einheit der numerischen Steuerung 4 steuert, implementiert. Die numerische Steuerung 4 gemäß der vorliegenden Ausführungsform steuert eine Werkzeugmaschine, die das Werkzeug und das Werkstück verhältnismäßig durch eine Vielzahl an Servomotoren 50 bewegt, um das Werkstück unter Verwendung des Werkzeugs, das durch den Spindelmotor 62 rotationsmäßig angetrieben wird, zu bearbeiten.
  • Die numerische Steuerung 4 der vorliegenden Ausführungsform weist eine Analyseeinheit 470 und eine Steuereinheit 480 auf. Außerdem wird ein Programm 490 im Voraus zum Steuern der Operation der Werkzeugmaschine, um das Werkstück zu bearbeiten, in dem nichtflüchtigen Speicher 414 der numerischen Steuerung 4 gespeichert.
  • Die Analyseeinheit 470 wird durch die CPU 411 implementiert, die in der numerischen Steuerung 4 enthalten ist, wie in 1 dargestellt, die das Systemprogramm, das von dem ROM 412 gelesen wird, ausführt und veranlasst, dass hauptsächlich ein arithmetischer Prozess durch die CPU 411 unter Verwendung des RAM 413 und des nichtflüchtigen Speichers 414 durchgeführt wird. Die Analyseeinheit 470 liest und analysiert einen Block des Programms 490, um Bewegungsanweisungsdaten für jeden Servomotor 50 und Spindelanweisungsdaten zum Erstellen einer Spindeldrehanweisung zu erstellen. Basierend auf der Feedbackanweisung, die durch den Block des Programms 490 erstellt wird, erstellt die Analyseeinheit 470 Bewegungsanweisungsdaten für jeden Servomotor 50. Außerdem erstellt die Analyseeinheit 470 basierend auf der Spindeldrehanweisung, die durch den Block des Programms 490 erstellt wird, Spi ndelanweisungsdaten.
  • Die Steuereinheit 480 wird durch die CPU 411 implementiert, die in der numerischen Steuerung 4 enthalten ist, wie in 1 dargestellt, die das Systemprogramm, das von dem ROM 412 gelesen wird ausführt und hauptsächlich einen arithmetischen Prozess, der durch die CPU 411 unter Verwendung des RAM 413 und des nichtflüchtigen Speichers 414 durchgeführt werden soll, einen Steuerprozess auf jedem Servomotor 50, der durch die Achssteuerschaltung 430 und den Hilfsverstärker 440 durchgeführt werden soll, und einen Steuerprozess auf dem Spindelmotor 62, der durch die Spindelsteuerschaltung 460 und den Spindelverstärker 461 durchgeführt werden soll, veranlasst.
  • Die Steuereinheit 480 treibt jeden Servomotor 50 und den Spindelmotor 62 basieren auf den Bewegungsanweisungsdaten und den Spindelanweisungsdaten, die durch die Analyseeinheit 470 erstellt werden, an. Außerdem überträgt die Steuereinheit 480 Zeitreihendaten, die die Position jedes Servomotors 50 angeben und von dem Positions-/Geschwindigkeitsdetektor jedes Servomotors 50 rückgeführt werden, über das Netzwerk 5 an das Simulationsgerät 1. Hier kann die Steuereinheit 480 zusätzlich zu den Feedbackdaten Zeitreihendaten bezüglich der Position für jeden Servomotor 50, wie durch die Steuereinheit 480 angewiesen, an das Simulationsgerät 1 übertragen. Außerdem kann die Steuereinheit 480 zusätzlich zu den Feedbackdaten Daten, die Zeitpunkte des Ausführens jedes Blocks, der in dem Programm 490 enthalten ist, (Daten aufweisend Zeitpunkte des Ausführens von NC-Daten) aufweisen, an das Simulationsgerät 1 übertragen.
  • Indessen weist das Simulationsgerät 1 gemäß der vorliegenden Ausführungsform eine Datenerfassungseinheit 130, eine Datenauswahleinheit 140 und eine Simulationsdurchführungseinheit 150 auf. Außerdem ist der nichtflüchtige Speicher 14 des Simulationsgeräts 1 mit einer Punktsequenzdatenspeichereinheit 210 als ein Bereich zum Speichern von Punktsequenzdaten, die eine Reihe von Positionen und Ausrichtungen einer Werkzeugspitze angeben, versehen.
  • Die Datenerfassungseinheit 130 wird durch die CPU 11 implementiert, die in dem Simulationsgerät 1 enthalten ist, wie in 1 dargestellt, die das Systemprogramm, das von dem ROM 12 gelesen wird ausführt und hauptsächlich einen arithmetischen Prozess, der durch die CPU 11 unter Verwendung des RAM 13 und des nichtflüchtigen Speichers 14 durchgeführt werden soll, veranlasst. Die Datenerfassungseinheit 130 erstellt Punktsequenzdaten basieren auf den Zeitreihendaten, die die Position jedes Servomotors 50 angeben, die von der numerischen Steuerung 4 empfangen werden, und veranlasst, dass die erstellten Punktsequenzdaten in der Punktsequenzdatenspeichereinheit 210 gespeichert werden.
  • Die Punktsequenzdaten repräsentieren Übergänge von Positionen und Ausrichtungen der Werkzeugspitze, die auf einer Zeitreihenbasis angeordnet sind. Daten, die die Position und Ausrichtung der Werkzeugspitze zu jedem Zeitpunkt angeben, die die Punktsequenzdaten konfigurieren, werden basierend auf der Position jedes Motors, die von jedem Servomotor 50 zur gleichen Uhrzeit rückgeführt wird, erstellt. Wenn Zeitreihendaten, die die Position jedes Servomotors 50 angeben, von der numerischen Steuerung 4 eingegeben werden, nimmt die Datenerfassungseinheit 130 gemäß der vorliegenden Ausführungsform die Position jedes Servomotors 50, die zu jeder Uhrzeit erhalten wird, als einen Satz und verwendet Daten bezüglich der Werkzeugform (wie zum Beispiel die Werkzeuglänge), die erhalten oder im Voraus von der numerischen Steuerung 4 festgelegt wird, wodurch Daten bezüglich der Position und Ausrichtung der Werkzeugspitze zu jeder Uhrzeit erstellt werden. Dann veranlasst die Datenerfassungseinheit 130, dass die Daten bezüglich der Position und Ausrichtung der Werkzeugspitze, die jeder Uhrzeit zugeordnet sind, als Punktsequenzdaten in der Punktsequenzdatenspeichereinheit 210 gespeichert werden. Zeitreihendaten bezüglich der Position jedes Servomotors 50, die zu jeder Uhrzeit durch die Steuereinheit 480 angewiesen werden, können derart in der Punktsequenzdatenspeichereinheit 210 gespeichert werden, dass sie den Punktsequenzdaten zugeordnet werden. Außerdem können Daten, die Zeitpunkte des Ausführens von NC-Daten aufweisen, derart in der Punktsequenzdatenspeichereinheit 210 gespeichert werden, dass sie den Punktsequenzdaten zugeordnet werden.
  • Die Datenauswahleinheit 140 wird durch die CPU 11 implementiert, die in dem Simulationsgerät 1 enthalten ist, wie in 1 dargestellt, die das Systemprogramm, das von dem ROM 12 gelesen wird, ausführt und hauptsächlich einen arithmetischen Prozess, der durch die CPU 11 unter Verwendung des RAM 13 und des nichtflüchtigen Speichers 14 durchgeführt werden soll, veranlasst. Gemäß einem Modus des Anzeigens der Ergebnisse eines Simulationsprozesses, der durch die Simulationsdurchführungseinheit 150 durchgeführt werden soll, wählt die Datenauswahleinheit 140 Daten eines Punkts zur Verwendung in dem Simulationsprozess aus den Punktsequenzdaten, die in der Punktsequenzdatenspeichereinheit 210 gespeichert sind, aus.
  • Zum Beispiel, wenn die Simulationsdurchführungseinheit 150 eine Simulation auf dem gesamten bearbeiteten Bereich durchführt, wählt die Datenauswahleinheit 140 Daten eines Punkts, von dem angenommen wird, dass er eine große Auswirkung auf die bearbeitete Oberfläche hat, als Daten zur Verwendung in dem Simulationsprozess aus den Punktsequenzdaten aus.
  • Als ein erstes Beispiel für ein Verfahren des Auswählens von Punktdaten, von denen angenommen wird, dass sie eine große Auswirkung auf die bearbeitete Oberfläche haben, kann ein Auswahlverfahren basierend auf der Position der Werkzeugspitze, die durch Punktdaten angegeben wird, gedacht werden. Bei dem Auswahlverfahren basierend auf der Position, die durch Punktdaten angegeben wird, wird ein Punkt weit entfernt von einem Liniensegment, das angrenzende vorherige und nachfolgende Punkte durchläuft, als Daten eines Punkts zur Verwendung in einem Simulationsprozesses aus Punkten, die in den Punktsequenzdaten enthalten sind, ausgewählt. Das heißt, Veränderungen der Position der Werkzeugspitze werden in chronologischer Reihenfolge überprüft und, wenn ein Mittenpunkt unter angrenzenden drei Punkten nicht innerhalb des Toleranzbereichs (zulässigen Bereichs) fällt, mit Bezug auf zwei Endpunkte der drei Punkte, wird dieser Punkt als Daten des Punkts zur Verwendung in dem Simulationsprozess ausgewählt.
  • 3 ist ein Diagramm, das das Auswahlverfahren basierend auf der Position, die durch die Punktdaten angegeben wird, beschreibt.
  • Es wird angenommen, dass Punktsequenzdaten, die in (a) in 3 veranschaulicht sind, in der Punktsequenzdatenspeichereinheit 210 gespeichert werden. Erst wird ein Punkt, der der frühesten Uhrzeit in den Punktsequenzdaten zugeordnet ist, als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt. Als nächstes werden, während die Punktsequenzdaten in chronologischer Reihenfolge mit Bezug auf den ausgewählten Punkt überprüft werden, drei angrenzende Punkte, die den ausgewählten Punkt aufweisen, extrahiert. Dann werden zwei Endpunkte unter den extrahierten drei Punkten mit einer geraden Linie miteinander verbunden und ein Bereich mit einer doppelten Breite einer vorbestimmen Toleranzlänge, die im Voraus festgelegt wird, zu einer Richtung senkrecht zu der geraden Linie wird als ein Toleranzbereich ((b) in 3) definiert. Wenn der Mittenpunkt unter den angrenzenden drei Punkten innerhalb dieses Toleranzbereichs fällt, wird dieser Punkt als ein Punkt nicht zur Verwendung in dem Simulationsprozess übersprungen. Wenn der Punkt übersprungen wird, wie für die Punktsequenzdaten, aus denen der übersprungene Punkt ausgeschlossen wurde, während die Punktsequenzdaten von dem ausgewählten Punkt in chronologischer Reihenfolge überprüft werden, werden angrenzende drei Punkte erneut extrahiert. Dann wird, wie oben, ein Toleranzbereich definiert und, wenn der Mittenpunkt unter den angrenzenden drei Punkten nicht innerhalb des Toleranzbereichs ((c) in 3) fällt, wird dieser Mittenpunkt als Daten eines Punkts zur Verwendung in dem Simulationsprozess ((d) in 3) ausgewählt. Dann wird mit Bezug auf den Punkt, der neu als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt wurde, ein ähnlicher Prozess wiederholt. Schließlich wird ein Punkt, der der spätesten Uhrzeit in den Punktsequenzdaten zugeordnet ist, als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt.
  • Durch Durchführen des oben beschriebenen Prozesses werden nur Daten eines Punkts mit einer großen Positionsveränderung im Vergleich zu den umgebenden Punkten als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt. Durch Durchführen einer Simulation unter Verwendung derart ausgewählter Daten des Punkts wird, während ein Abschnitt, an dem sich die Werkzeugposition leicht verändert, und ein Abschnitt mit einer geringen Veränderung nicht auf dem Bild des Simulationsergebnisses abgebildet sind, ein Abschnitt, bei dem eine größere Veränderung als eine vorbestimmte Toleranz, die im Voraus festgelegt wird, auftritt, auf dem Bild des Simulationsergebnisses abgebildet. Bei Einsatz dieses Auswahlverfahrens kann eine signifikante Reduzierung der Berechnungszeit und der Speicherauslastung des RAM oder dergleichen in dem Simulationsprozess erwartet werden, insbesondere für das Bearbeiten eins Werkstücks mit einer flachen Oberfläche oder einer sanften Oberfläche. Außerdem, da keine detaillierte Darstellung der flachen Oberfläche oder der sanften Oberfläche notwendig ist, um die Tendenz des gesamten bearbeiteten Bereichs des Werkstücks zu erkennen, kann das Bild des Simulationsergebnisses, das erstellt werden soll, die Ansprüche der Bedienperson erfüllen.
  • Als ein zweites Beispiel für das Verfahren des Auswählens von Punktdaten, von denen angenommen wird, dass sie eine große Auswirkung auf die bearbeitete Oberfläche haben, kann ein Auswahlverfahren basierend auf der Ausrichtung des Werkzeugs, die durch Punktdaten angegeben wird, gedacht werden. Bei dem Auswahlverfahren basierend auf der Ausrichtung des Werkzeugs, die durch Punktdaten angegeben wird, werden Veränderungen in der Ausrichtung des Werkzeugs in chronologischer Reihenfolge überprüft und, wenn ihr Veränderungswinkel nicht innerhalb eines Toleranzwinkels (zulässigen Winkels) mit Bezug auf die Werkzeugausrichtung zu dem direkt vorhergehenden Punkt fällt, wird dieser Punkt als Daten des Punkts zur Verwendung in dem Simulationsprozess ausgewählt.
  • 4 ist ein Diagramm, das das Auswahlverfahren basierend auf der Ausrichtung des Werkzeugs, die durch die Punktdaten angegeben wird, beschreibt.
  • Es wird angenommen, dass Punktsequenzdaten, die in (a) in 4 veranschaulicht sind, in der Punktsequenzdatenspeichereinheit 210 gespeichert werden. Erst wird ein Punkt, der der frühesten Uhrzeit in den Punktsequenzdaten zugeordnet ist, als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt. Als nächstes wird mit Bezug auf den ausgewählten Punkt ein Punkt angrenzend an diesen ausgewählten Punkt von den Punktsequenzdaten extrahiert. Dann, wenn eine Veränderung in der Ausrichtung des Werkzeugs an dem extrahierten Punkt mit Bezug auf die Ausrichtung des Werkzeugs an dem ausgewählten Punkt innerhalb eines vorbestimmten, im Voraus definierten Toleranzwinkels, fällt, wird dieser ausgewählte Punkt als ein Punkt nicht zur Verwendung in dem Simulationsprozess übersprungen ((b) in 4). Wenn der Punkt übersprungen wird, wie für die Punktsequenzdaten, aus denen der übersprungene Punkt ausgeschlossen wurde, während der ausgewählte Punkt weiter als Referenz verwendet wird, wird ein Punkt angrenzend an diesem ausgewählten Punkt extrahiert. Dann, wenn eine Veränderung in der Ausrichtung des Werkzeugs an dem extrahierten Punkt mit Bezug auf die Ausrichtung des Werkzeugs an dem ausgewählten Punkt größer als der vorbestimmte, im Voraus definierte Toleranzwinkel, ist ((c) in 4), wird dieser extrahierte Punkt als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt ((d) in 4). Dann wird mit Bezug auf den Punkt, der neu als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt wurde, ein ähnlicher Prozess wiederholt. Schließlich wird ein Punkt, der der spätesten Uhrzeit in den Punktsequenzdaten zugeordnet ist, als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt.
  • Durch Durchführen des oben beschriebenen Prozesses werden nur Daten eines Punkts mit einer großen Positionsveränderung des Werkzeugs in Berührung mit dem Werkstück zum Zeitpunkt des Schneidens, wenn Werkstückbearbeitung durchgeführt wird, als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt. Wenn Bearbeitung mit einem Abschnitt anders als die Werkzeugspitze, wie zum Beispiel eine Werkzeugseitenfläche durchgeführt wird, auch falls es keine Veränderung in der Position des Werkzeugspitzenpunkts gibt, sondern eine Veränderung in der Position des Werkzeugs in Berührung mit dem Werkstück, kann sich die Endqualität der Bearbeitung ändern. Somit kann durch Einsatz des oben beschriebenen Auswahlverfahrens ein Abschnitt, an dem die Position des Werkzeugs in Berührung mit dem Werkstück nicht verändert ist, von den Zielen für den Simulationsprozess weggelassen werden. Auf der anderen Seite erscheint ein Abschnitt, bei dem die Position des Werkzeugs in Berührung mit dem Werkstück stark verändert ist, in dem Bild des Simulationsergebnisses. Somit, wenn die Tendenz des gesamten bearbeiteten Bereichs erkannt wird, kann ein Abschnitt, an dem die Form des Werkzeugs, wie zum Beispiel einem Kegelkugelfräser oder einem Radiusfräser, eine Auswirkung hat, erkannt werden.
  • Als ein drittes Beispiel des Verfahrens des Auswählens von Punktdaten, von denen angenommen wird, dass sie eine große Auswirkung auf die bearbeitete Oberfläche haben, kann ein Auswahlverfahren basierend auf einem Fehler zwischen einem Pfad (im Folgenden als ein angewiesener Pfad bezeichnet) der Position eines angewiesenen Punkts für den Servomotor 50 (das heißt eine Position für den Servomotor 50, der durch die Steuereinheit 480 angewiesen wird) und einem Pfad (im Folgenden als ein tatsächlicher Pfad bezeichnet) der tatsächlichen Position der Werkzeugspitze basierend auf der Position, die von dem Servomotor 50 rückgeführt wird, gelehrt werden. Bei dem Auswahlverfahren basierend auf einem Fehler (Pfadfehler zwischen dem angewiesenen Pfad und dem tatsächlichen Pfad, wenn die Änderungsmenge des Pfadfehlers nicht innerhalb einer Toleranzfehleränderungsmenge (zulässige Fehleränderungsmenge) fällt, wird dieser Punkt als Daten für einen Punkt zur Verwendung in dem Simulationsprozess ausgewählt.
  • 5 ist ein Diagramm, das das Auswahlverfahren basierend auf dem Pfadfehler zwischen dem angewiesenen Pfad und dem tatsächlichen Pfad beschreibt.
  • Wie in (a) in 5 veranschaulicht, wird angenommen, dass die Punktsequenzdaten und der angewiesene Pfad in Assoziation miteinander in der Punktsequenzdatenspeichereinheit 210 gespeichert sind. Erst wird ein Punkt, der der frühesten Uhrzeit in den Punktsequenzdaten zugeordnet ist, als ‚Daten eines Punkts zur Verwendung in dem Simulationsprozess‘ ausgewählt. Als nächstes wird mit Bezug auf den ausgewählten Punkt ein Punkt angrenzend an diesen ausgewählten Punkt von den Punktsequenzdaten extrahiert. Dann, wenn sich eine Differenz (Änderungsmenge das Pfadfehlers) zwischen dem Fehler (Pfadfehler) zwischen dem angewiesenen Pfad und dem tatsächlichen Pfad an dem ausgewählten Punkt und dem Fehler (Pfadfehler) zwischen dem angewiesenen Pfad und dem tatsächlichen Pfad an dem extrahierten Punkt innerhalb einer ersten Toleranzfehleränderungsmenge, die im Voraus definiert wird, befindet, wird dieser extrahierte Punkt als ein Punkt nicht zur Verwendung in dem Simulationsprozess übersprungen ((b) in 5). Wenn der Punkt übersprungen wird, wie für die Punktsequenzdaten, aus denen der übersprungene Punkt ausgeschlossen wurde, während der ausgewählte Punkt weiter als Referenz verwendet wird, wird ein Punkt angrenzend an diesem ausgewählten Punkt extrahiert. Dann, wenn die Differenz (Änderungsmenge des Pfadfehlers) zwischen dem Fehler (Pfadfehler) zwischen dem angewiesenen Pfad und dem tatsächlichen Pfad an dem ausgewählten Punkt und dem Fehler (Pfadfehler) zwischen dem angewiesenen Pfad und dem tatsächlichen Pfad an dem extrahierten Punkt größer als die erste Toleranzfehleränderungsmenge ist ((c) in 5), wird dieser extrahierte Punkt als Daten eines Punkt zur Verwendung in dem Simulationsprozess ausgewählt ((d) in 5). Dann wird mit Bezug auf den Punkt, der neu als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt wurde, ein ähnlicher Prozess wiederholt. Schließlich wird ein Punkt, der der spätesten Uhrzeit in den Punktsequenzdaten zugeordnet ist, als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt.
  • Durch Durchführen des oben beschriebenen Prozesses werden nur Daten eines Punkts mit einer großen Änderung des Fehlers zwischen der Position des Servomotors 50, die durch die Steuereinheit 480 angewiesen wird, und der Position, die von dem Servomotor 50 rückgeführt wird, wenn Werkstückbearbeitung durchgeführt wird, als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt. Auch wenn sich die Endqualität beim Bearbeiten nicht großartig ändert, wenn der Pfadfehler stetig abweicht, falls der Pfadfehler mehr als eine vorbestimmte Menge geändert wird, kann sich die Endqualität beim Bearbeiten gemäß der Änderungsmenge ändern. Somit scheint durch Einsatz des oben beschriebenen Auswahlverfahrens ein Abschnitt, an dem der Pfadfehler in großem Maß geändert ist, wenn zum Beispiel eine Bewegung aufgrund einer Last auf dem Motor verzögert wird oder die Position des Motors aufgrund von Störungen schwankt, in dem Bild des Simulationsergebnisses auf, und somit ist es möglich, einen Abschnitt, an dem Schwankungen des Pfadfehlers eine Auswirkung auf die Endqualität beim Bearbeiten haben, zu erkennen, wenn die Tendenz des gesamten bearbeiteten Bereichs erkannt wird.
  • Als ein viertes Beispiel des Verfahrens des Auswählens von Punktdaten, von denen angenommen wird, dass sie eine große Auswirkung auf die bearbeitete Oberfläche haben, kann ein Auswahlverfahren basierend auf einem Fehler zwischen einem Pfad des Werkzeugs, der in den CAD/CAM-Daten (wobei es sich um eine NC-Datenreihe handelt und im Folgenden als ein Werkzeugpfad bezeichnet) enthalten ist, und einem Pfad der tatsächlichen Position der Werkzeugspitze basierend auf der Position, die von dem Servomotor 50 rückgeführt wird, gelehrt werden. Bei dem Auswahlverfahren basierend auf dem Fehler (Pfadfehler) zwischen dem Werkzeugpfad und dem tatsächlichen Pfad, wenn die Änderungsmenge des Pfadfehlers nicht innerhalb einer Toleranzfehleränderungsmenge (zulässige Fehleränderungsmenge) fällt, wird dieser Punkt als Daten für einen Punkt zur Verwendung in dem Simulationsprozess ausgewählt.
  • 6 ist ein Diagramm, das das Auswahlverfahren basierend auf dem Pfadfehler zwischen dem Werkzeugpfad und dem tatsächlichen Pfad beschreibt.
  • Wie in (a) in 6 veranschaulicht, wird angenommen, dass die Punktsequenzdaten und der Werkzeugpfad in Assoziation miteinander in der Punktsequenzdatenspeichereinheit 210 gespeichert sind. Erst wird ein Punkt, der der frühesten Uhrzeit in den Punktsequenzdaten zugeordnet ist, als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt. Als nächstes wird mit Bezug auf den ausgewählten Punkt ein Punkt angrenzend an diesen ausgewählten Punkt von den Punktsequenzdaten extrahiert. Dann, wenn sich eine Differenz (Änderungsmenge des Pfadfehlers) zwischen dem Fehler (Pfadfehler) zwischen dem Werkzeugpfad und dem tatsächlichen Pfad an dem ausgewählten Punkt und dem Fehler (Pfadfehler) zwischen dem Werkzeugpfad und dem tatsächlichen Pfad an dem extrahierten Punkt innerhalb einer vorbestimmten zweiten Toleranzfehleränderungsmenge befindet, wird dieser extrahierte Punkt als ein Punkt nicht zur Verwendung in dem Simulationsprozess übersprungen ((b) in 6). Wenn der Punkt übersprungen wird, wie für die Punktsequenzdaten, aus denen der übersprungene Punkt ausgeschlossen wurde, während der ausgewählte Punkt weiter als Referenz verwendet wird, wird ein Punkt angrenzend an diesem ausgewählten Punkt extrahiert. Dann, wenn die Differenz (Änderungsmenge des Pfadfehlers) zwischen dem Fehler (Pfadfehler) zwischen dem Werkzeugpfad und dem tatsächlichen Pfad an dem ausgewählten Punkt und dem Fehler (Pfadfehler) zwischen dem Werkzeugpfad und dem tatsächlichen Pfad an dem extrahierten Punkt größer als die zweite Toleranzfehleränderungsmenge ist ((c) in 6), wird dieser extrahierte Punkt als Daten eines Punkt zur Verwendung in dem Simulationsprozess ausgewählt ((d) in 6). Dann wird mit Bezug auf den Punkt, der neu als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt wurde, ein ähnlicher Prozess wiederholt. Schließlich wird ein Punkt, der der spätesten Uhrzeit in den Punktsequenzdaten zugeordnet ist, als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt.
  • Durch Durchführen des oben beschriebenen Prozesses werden nur Daten eines Punkts mit einer großen Änderung des Fehlers zwischen dem Werkzeugpfad, der durch ein CAD/CAM-Gerät erstellt wird, und der Position, die von dem Servomotor 50 rückgeführt wird, wenn Werkstückbearbeitung durchgeführt wird, als Daten eines Punkts zur Verwendung in dem Simulationsprozess ausgewählt. Die numerische Steuerung 4 erstellt eine Positionsanweisung an den Servomotor 50 basierend auf dem Werkzeugpfad, der durch das CAD/CAM-Gerät erstellt wird. Hier kann der Servomotor 50 abhängig von dem Steueralgorithmus der numerischen Steuerung 4 derart angewiesen werden, einen Pfad zu haben, der sich von dem Werkzeugpfad unterscheidet (wie zum Beispiel einen inneren Pfadfehler). Durch Einsatz des oben beschriebenen Auswahlverfahrens scheint ein Abschnitt, an dem sich das Werkzeug entlang eines Pfads unterschiedlich von dem Werkzeugpfad, angegeben durch die CAD/CAM-Daten, bewegt hat, in dem Bild des Simulationsergebnisses auf, und somit ist es möglich, einen Abschnitt, an dem Schwankungen des Pfadfehlers eine Auswirkung auf die Endqualität beim Bearbeiten haben, zu erkennen, wenn die Tendenz des gesamten bearbeiteten Bereichs erkannt wird.
  • Die Datenauswahleinheit 140 kann dazu ausgelegt sein, irgendein beliebiges der Verfahren des Auswählens von Punktdaten zur Verwendung in der Simulation zu verwenden. Außerdem kann die Datenauswahleinheit 140 zugleich eine Vielzahl der Verfahren des Auswählens von Punktdaten zur Verwendung in der Simulation verwenden. Wenn eine Vielzahl der Verfahren des Auswählens von Punktdaten zugleich verwendet wird, können alle Punktdatenstücke, die in den jeweiligen Auswahlverfahren ausgewählt werden, für die Simulation verwendet werden.
  • Die Simulationsdurchführungseinheit 150 simuliert den Bearbeitungsvorgang durch das Bearbeitungswerkzeug basierend auf den Punktdaten, die durch die Datenauswahleinheit 140 ausgewählt werden, und erstellt als ein Ergebnis Daten als allgemeine Ergebnisse des Simulationsprozesses und gibt diese aus, wie zum Beispiel eine relative Bewegungsroute zwischen dem Werkzeug und dem Werkstück zum Zeitpunkt der Bearbeitung und die Form des Werkstücks nach Bearbeitung. In einem Simulationsprozess nach einer Technik im Stand der Technik wird eine relative Bewegungsroute zwischen dem Werkzeug und dem Werkstück basierend auf der Anweisung, die von dem Programm 490 erhalten wird, erstellt und die Form des Werkstücks nach Bearbeitung wird als ein Simulationsergebnis basierend auf der erstellten Bewegungsroute (und der Form des Werkzeugs und so weiter) erstellt. Die Simulationsdurchführungseinheit 150 gemäß der vorliegenden Ausführungsform verwendet Punktdaten, die durch die Datenauswahleinheit 140 ausgewählt werden. Die Simulationsdurchführungseinheit 150 kann ferner Werte der Spezifikationen der Werkzeugmaschine, die im Voraus festgelegt werden, Daten bezüglich des Werkstücks und so weiter verwenden. Hinsichtlich anderer Prozesse oder Funktionen des Simulationsprozesses, der durch die Simulationsdurchführungseinheit 150 durchgeführt werden soll, kann ein beliebiger bekannter Simulationsplan angemessen eingesetzt werden. Die Ergebnisse der Simulation, die durch die Simulationsdurchführungseinheit 150 durchgeführt wird, werden als ein Bild auf dem Anzeigegerät 70 angezeigt.
  • Das oben beschriebenen Simulationsgerät 1 gemäß der vorliegenden Ausführungsform führt einen Simulationsprozess durch Verwenden von Feedbackdaten von jedem Servomotor 50, die erhalten werden, wenn die numerische Steuerung 4 das Programm 490 durchführt, durch. Hier wählt das Simulationsgerät 1 Punktdaten, von denen angenommen wird, dass sie eine große Auswirkung auf die bearbeitete Oberfläche haben, aus den Feedbackdaten, die von jedem Servomotor 50 erhalten werden, aus und für einen Simulationsprozess unter Verwendung der ausgewählten Punktdaten durch. Somit ist es, während die Berechnungszeit und die Speicherauslastung des RAM oder dergleichen in dem Simulationsprozess reduziert werden, möglich, ein Bild als das Simulationsergebnis, von dem der Zustand der bearbeiteten Oberfläche zu einem gewissen Grad erkannt werden kann, zu erhalten.
  • 7 ist ein schematisches Blockdiagramm, das Funktionen, die das Simulationsgerät 1 gemäß einer zweiten Ausführungsform der vorliegenden Erfindung aufweist, und Funktionen, die die numerische Steuerung 4, die in der Lage ist, Daten an das Simulationsgerät 1 auszugeben, aufweist, darstellt.
  • Jeder Block, der in dem Simulationsgerät 1, wie in 7 dargestellt, enthalten ist, wird durch die CPU 11, die in dem Simulationsgerät 1 enthalten ist, wie in 1 dargestellt, die das Systemprogramm ausführt und die Operation jeder Einheit des Simulationsgeräts 1 steuert, implementiert. Außerdem wird jeder Block, der in der numerischen Steuerung 4 enthalten ist, wie in 7 dargestellt, durch die CPU 411, die in der numerischen Steuerung 4 enthalten ist, wie in 1 dargestellt, die das Systemprogramm ausführt und die Operation jeder Einheit der numerischen Steuerung 4 steuert, implementiert. Die numerische Steuerung 4 gemäß der vorliegenden Ausführungsform steuert eine Werkzeugmaschine, die das Werkzeug und das Werkstück verhältnismäßig durch eine Vielzahl an Servomotoren 50 bewegt, um das Werkzeug unter Verwendung des Werkzeugs, das durch den Spindelmotor 62 rotationsmäßig angetrieben wird, zu bearbeiten.
  • Das Simulationsgerät 1 gemäß der vorliegenden Ausführungsform unterscheidet sich von dem Simulationsgerät 1 gemäß der ersten Ausführungsform darin, dass die Datenauswahleinheit 140 eine Vielzahl an Auswahlfunktionen des Umschaltens gemäß einem Anzeigemodus der Simulationsergebnisse aufweist.
  • Die Datenauswahleinheit 140 gemäß der vorliegenden Ausführungsform weist einen Selektor 142, der Punktsequenzdaten auswählt, wenn die Simulationsdurchführungseinheit 150 eine Simulation auf dem gesamten bearbeiteten Bereich durchführt, und ein zweiter Selektor 144, der Punktsequenzdaten auswählt, wenn die Simulationsdurchführungseinheit 150 eine detaillierte Simulation auf einem Teil des bearbeiteten Bereichs durchführt, auf.
  • Der erste Selektor 142 führt einen Prozess des Auswählens von Punktsequenzdaten unter Verwendung mindestens irgendeines der Verfahren des Auswählens von Punktdaten, von denen angenommen wird, dass sie eine große Auswirkung auf die bearbeitete Oberfläche haben, wie in der ersten Ausführungsform oben beschrieben, durch. Der erste Selektor 142 ist für Erstellen eines Bilds des Simulationsergebnisses, von dem der Zustand der bearbeiteten Oberfläche zu einem gewissen Grad erkannt werden kann, während der Zustand des gesamten bearbeiteten Bereichs grob angezeigt wird, geeignet.
  • Auf der anderen Seite, wie in 8 veranschaulicht, wenn ein Teilbereich in dem bearbeiteten Bereich spezifiziert ist, wählt der zweite Selektor 144 Punktsequenzdaten in einem Bereich, der in dem spezifizierten Teilbereich enthalten ist, aus. Insbesondere wählt der zweite Selektor 144 Daten eines Punkts, der dem Teilbereich in dem bearbeiteten Bereich, der durch die Bedienperson spezifiziert wird, stört, als Daten eines Punkts zur Verwendung in einer Simulation aus den Punktsequenzdaten, die in der Punktsequenzdatenspeichereinheit 210 gespeichert sind, aus. Der zweite Selektor 144 überspringt keine Punktsequenzdaten, die in dem Teilbereich, der als ein Simulationsergebnis angezeigt ist, enthalten sind und ist somit für Erstellen eines Bilds von Ergebnissen des Simulierens des spezifizierten Teilbereich im Detail geeignet.
  • Als ein Verfahren des Bestimmens durch den zweiten Selektor 144, ob der Teilbereich in dem bearbeiteten Bereich, der durch die Bedienperson spezifiziert wird, jeden Punkt, der in den Punktsequenzdaten enthalten ist, stört, kann ein Plan, der durch Anwenden von Störungsdetektion erhalten wird, verwendet werden. Im Allgemein wird, um ein Bild des Simulationsergebnisses anzuzeigen, wenn ein Teil eines Anzeigeziels auf dem Bildschirm angezeigt wird, wie in 9 veranschaulicht, ein vorbestimmter visueller Punkt auf einen virtuellen Raum platziert und ein Bereich, der von dem visuellen Punkt sichtbar ist, wird als ein Ansichtsfrustum festgelegt. Ein achsenausgerichteter Begrenzungsrahmen (AABB), der einen Bereich, in dem sich das Ansichtsfrustum und ein Anzeigeziel (bearbeiteter Bereich) schneiden, aufweist, wird berechnet. Störungsdetektion wird zwischen derart berechnetem AABB und einem 3D-Modell eines Werkzeugs, das an Punkten, die in den Punktsequenzdaten enthalten sind, angeordnet ist, durchgeführt und ein Punkt, an dem das zusammentreffende 3D-Modell des Werkzeugs angeordnet ist, wird als ein Punkt zur Verwendung in einer Simulation ausgewählt. Ein allgemeiner Algorithmus, wie zum Beispiel der bekannte GJK-Algorithmus, kann nach Bedarf als ein Störungsdetektionsalgorithmus verwendet werden.
  • Ob der gesamte bearbeitete Bereich oder ein Teil des bearbeiteten Bereichs in Detail simuliert werden soll, wird durch eine Bedienperson, die eine Anweisung zum Umschalten des Anzeigemodus von dem Eingabegerät 71 bei Betrachtung des Anzeigegeräts 70 eingibt, bestimmt.
  • 10 ist ein Flussdiagramm, das einen Operationsvorgang durch eine Bedienperson, die Bearbeitungsbedingungen unter Verwendung des Simulationsgeräts 1 der vorliegenden Ausführungsform festlegt, zeigt.
  • Die Bedienperson veranlasst, dass das erstellte Programm 490 in die numerische Steuerung 4 gelesen wird, um einen Leerlaufvorgang durchzuführen (Schritt SA01). Die numerische Steuerung 4 überträgt Feedbackdaten, die von dem Servomotor 50 detektiert werden, zum Zeitpunkt des Leerlaufvorgangs an das Simulationsgerät 1. Das Simulationsgerät 1 erhält Punktsequenzdaten von den empfangenen Feedbackdaten und veranlasst, dass die Punktsequenzdaten in der Punktsequenzdatenspeichereinheit 210 gespeichert werden (Schritt SA02). Als nächstes erteilt die Bedienperson eine Anweisung von dem Eingabegerät 71 zum Simulieren des gesamten bearbeiteten Bereichs als eine anfängliche Simulation. Hier führt die Datenauswahleinheit 140 Auswahl von Punktsequenzdaten durch den ersten Selektor 142 durch. Dann führt die Simulationsdurchführungseinheit 150 einen Simulationsprozess auf dem gesamten bearbeiteten Bereich basierend auf den ausgewählten Punktsequenzdaten durch und die Ergebnisse werden auf dem Anzeigegerät 70 angezeigt (Schritt SA03).
  • Dann erteilt die Bedienperson eine Anweisung zum Auswählen eines Teils, wo ein Auftreten eines Problems auf der bearbeiteten Oberfläche von dem Bild des Ergebnisses des Simulationsprozesses auf dem gesamten bearbeiteten Bereich vermutet wird, und zum Simulieren dieses Teils (Schritt SA04). Dann führt die Datenauswahleinheit 140 Auswahl von Punktsequenzdaten durch den zweiten Selektor 144 durch. Dann führt die Simulationsdurchführungseinheit 150 einen Simulationsprozess auf dem spezifizierten Teil des bearbeiteten Bereichs basierend auf den ausgewählten Punktsequenzdaten durch und die Ergebnisse werden auf dem Anzeigegerät 70 angezeigt (Schritt SA05).
  • Bei Betrachtung des Bilds der Ergebnisse des detaillierten Simulationsprozesses unter Verwendung der Punktsequenzdaten, die durch den zweiten Selektor 144 ausgewählt werden, bestimmt die Bedienperson, ob die Anforderungen der Bearbeitung erfüllt wurden oder nicht (Schritt SA06). Falls es ein Problem gibt, untersucht die Bedienperson das Problem in den Bearbeitungsbedingungen (Schritt SA07) und passt die Bearbeitungsbedingungen an (Schritt SA08). Durch Wiederholen dieses Vorgangs, wenn die Bedienperson bestimmt, dass die Anforderungen der Bearbeitung erfüllt wurden, endet der Vorgang des Anpassens der Bearbeitungsbedingungen.
  • In dem oben beschriebenen Simulationsgerät 1 gemäß der vorliegenden Ausführungsform wählt die Datenauswahleinheit 140 Punktsequenzdaten durch Umschalten zwischen dem ersten Selektor 142 und den zweiten Selektor 144 gemäß dem Anzeigemodus der Ergebnisse des Simulationsprozesses aus. Somit werden, wenn ein Simulationsprozess auf dem gesamten bearbeiteten Bereich für Anzeige durchgeführt wird, Punkte, ausgenommen jenen in einem Abschnitt, wo eine Möglichkeit von Auswirkung auf die bearbeitete Oberfläche besteht, übersprungen. Wenn Aufmerksamkeit auf einen Teilbereich gerichtet wird, wird ein detaillierter Simulationsprozess auf Punkten in diesem Abschnitt durchgeführt. Auf diese Weise können bei Anpassung des Grads an Genauigkeit des Simulationsprozesses gemäß dem Zweck Punkte als Ziele für den Simulationsprozess wie angemessen reduziert werden. Somit ist es, während die Berechnungszeit und die Speicherauslastung des RAM oder dergleichen in dem Simulationsprozess reduziert werden, möglich, ein Bild als das Simulationsergebnis gemäß dem Anzeigemodus zu erhalten.
  • Auch wenn die Ausführungsformen der vorliegenden Erfindung oben beschrieben wurden, ist die vorliegende Erfindung nicht nur auf die Beispiele der Ausführungsformen, die oben beschrieben sind, beschränkt und kann durch Vornehmen angemessener Modifikationen auf verschiedene Weise ausgeführt werden.
  • Auch wenn die Datenerfassungseinheit 130 in den oben beschriebenen Ausführungsformen ein Format von Punktsequenzdaten basierend auf den Daten, die von jedem Servomotor 50 rückgeführt werden, erstellt, kann sie derart ausgelegt sein, dass die Feedbackdaten im Voraus in der numerischen Steuerung 4, einem anderen persönlichen Computer oder dergleichen in ein Format von Punktsequenzdaten umgewandelt werden und dieses durch die Datenerfassungseinheit 130 erhalten wird.
  • Außerdem, auch wenn die Datenerfassungseinheit 130 in den oben beschriebenen Ausführungsformen zum Beispiel die Daten, die von jedem Servomotor 50 rückgeführt werden, über das Netzwerk 5 von der numerischen Steuerung 4 erhält, können die Feedbackdaten, die durch die numerische Steuerung 4 über eine externe Vorrichtung, wie zum Beispiel einem USB-Speicher oder CF-Speicher erhalten werden, zu dem Simulationsgerät 1 gesendet werden.
  • Auch wenn die Simulationsdurchführungseinheit 150 in den oben beschriebenen Ausführungsformen einen Simulationsprozess basierend auf den Punktsequenzdaten, die durch die Datenauswahleinheit 140 ausgewählt werden, durchgeführt, kann zusätzlich dazu ein Simulationsprozess basierend auf Zeitreihendaten bezüglich Positionen für jeden Servomotor 50, angewiesen durch die Steuereinheit 480, durchgeführt werden und Bilder des Ergebnisses können als Überlagerung auf Bildern des Ergebnisses des Simulationsprozesses basierend auf den Punktsequenzdaten angezeigt werden. Hier kann ein Abschnitt, wo eine Differenz zwischen den Bildern des Simulationsergebnisses basierend auf den Zeitreihendaten bezüglich der angewiesenen Positionen und den Bildern des Ergebnisses des Simulationsprozesses basierend auf den Punktsequenzdaten besteht, mit einer unterschiedlichen Farbe angezeigt werden, sodass das Ausmaß und die Richtung dieser Differenz erkannt werden können. Ähnlich kann Anzeige als Überlagerung auf einem Bildschirm eines Werkstücks basierend auf CAD/CAM-Daten gemacht werden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • WO 2016/174716 [0004]

Claims (6)

  1. Simulationsgerät, das einen Simulationsprozess basierend auf Feedbackdaten von einem Motor, der eine Achse einer Werkzeugmaschine antreibt, durchführt, wobei das Simulationsgerät Folgendes aufweist: eine Punktsequenzdatenspeichereinheit, die Punktsequenzdaten, welche Seriendaten von Positionen von Punkten bezüglich der Feedbackdaten von dem Motor sind, speichert; eine Datenauswahleinheit, die einen Punkt, der eine große Auswirkung auf die Endqualität einer bearbeiteten Oberfläche hat, als einen Punkt zur Verwendung in dem Simulationsprozess aus den Punktsequenzdaten auswählt; und eine Simulationsdurchführungseinheit, die den Simulationsprozess basierend auf Daten bezüglich des Punkts, der durch die Datenauswahleinheit ausgewählt wird, durchführt.
  2. Simulationsgerät nach Anspruch 1, wobei die Datenauswahleinheit einen Punkt, der sich um eine Länge größer als eine vorbestimmte Toleranzlänge, die im Voraus definiert wird, von einem Liniensegment, das angrenzende vorherige und nachfolgende Punkte durchläuft, befindet, als den Punkt zur Verwendung in dem Simulationsprozess aus Punkten, die in den Punktsequenzdaten enthalten sind, auswählt.
  3. Simulationsgerät nach Anspruch 1, wobei die Datenauswahleinheit einen Punkt, an dem eine Werkzeugausrichtung um einen Winkel größer als ein vorbestimmter, im Voraus definierter Toleranzwinkel von einer Werkzeugausrichtung an einem direkt vorhergehenden Punkt, der bereits ausgewählt ist, verändert wird, als den Punkt zur Verwendung in dem Simulationsprozess aus den Punkten, die in den Punktsequenzdaten enthalten sind, auswählt.
  4. Simulationsgerät nach Anspruch 1, wobei die Punktsequenzdatenspeichereinheit eine angewiesene Position für den Motor in Assoziation mit den Punktsequenzdaten speichert, wenn die Feedbackdaten erhalten werden, und die Datenauswahleinheit einen Punkt, an dem ein Fehler von der angewiesenen Position um mehr als eine vorbestimmte, im Voraus definierte erste Toleranzfehleränderungsmenge von einem Fehler von der angewiesenen Position an einem direkt vorhergehenden Punkt, der bereits ausgewählt ist, verändert wird, als den Punkt zur Verwendung in dem Simulationsprozess aus den Punkten, die in den Punktsequenzdaten enthalten sind, auswählt.
  5. Simulationsgerät nach Anspruch 1, wobei die Punktsequenzdatenspeichereinheit eine Reihe von NC-Daten, die ausgeführt werden, in Assoziation mit den Punktsequenzdaten speichert, wenn die Feedbackdaten erhalten werden, und die Datenauswahleinheit einen Punkt, an dem ein Fehler von den NC-Daten um eine größere Menge als eine vorbestimmte, im Voraus definierte zweite Toleranzfehleränderungsmenge von einem Fehler von den NC-Daten an einem direkt vorhergehenden Punkt, der bereits ausgewählt ist, verändert wird, als den Punkt zur Verwendung in dem Simulationsprozess aus den Punkten, die in den Punktsequenzdaten enthalten sind, auswählt.
  6. Simulationsgerät nach Anspruch 1, wobei die Datenauswahleinheit einen ersten Selektor, der einen Punkt, der eine größere Auswirkung auf die Endqualität der bearbeiteten Oberfläche hat, als einen Punkt zur Verwendung in dem Simulationsprozess auswählt, und einen zweiten Selektor, der einen Punkt, der in einem spezifizierten Bereich enthalten ist, als den Punkt zur Verwendung in dem Simulationsprozess auswählt, aufweist, und die Datenauswahleinheit den Punkt zur Verwendung in dem Simulationsprozess unter Verwendung eines beliebigen des ersten Selektors und zweiten Selektors basierend auf einem Anzeigemodus der Ergebnisse des Simulationsprozesses, der durch die Simulationsdurchführungseinheit durchgeführt wird, auswählt.
DE102020124734.6A 2019-09-30 2020-09-23 Simulationsgerät Pending DE102020124734A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019180090A JP7348013B2 (ja) 2019-09-30 2019-09-30 シミュレーション装置
JP2019-180090 2019-09-30

Publications (1)

Publication Number Publication Date
DE102020124734A1 true DE102020124734A1 (de) 2021-04-01

Family

ID=74872837

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020124734.6A Pending DE102020124734A1 (de) 2019-09-30 2020-09-23 Simulationsgerät

Country Status (4)

Country Link
US (1) US11656600B2 (de)
JP (1) JP7348013B2 (de)
CN (1) CN112578736A (de)
DE (1) DE102020124734A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7473321B2 (ja) * 2019-10-31 2024-04-23 ファナック株式会社 シミュレーション装置、数値制御装置、及びシミュレーション方法
WO2022215178A1 (ja) * 2021-04-06 2022-10-13 ファナック株式会社 選択装置、通信制御装置、シミュレーション装置、及び記録媒体
DE112021008105T5 (de) * 2021-10-27 2024-05-29 Fanuc Corporation Auswahlvorrichtung, Simulationsvorrichtung und Kommunikationssteuervorrichtung
US11809160B2 (en) * 2021-12-09 2023-11-07 Autodesk, Inc. Multi-tooltip control for computer-aided manufacturing

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH083415B2 (ja) * 1989-06-09 1996-01-17 日産自動車株式会社 形状計測手順の教示方法
JP4427905B2 (ja) 2001-01-24 2010-03-10 富士電機システムズ株式会社 ロボット監視システム
WO2007067645A2 (en) * 2005-12-05 2007-06-14 Fisher-Rosemount Systems, Inc. Multi-objective predictive process optimization with concurrent process simulation
JP5023919B2 (ja) 2007-09-25 2012-09-12 株式会社ジェイテクト 工作機械
JP4406034B2 (ja) 2008-03-07 2010-01-27 ファナック株式会社 5軸加工機を制御する数値制御装置
AU2009201433B2 (en) * 2008-04-15 2013-11-21 Electronics And Telecommunications Research Institute Improved physics-based simulation
JP5339999B2 (ja) 2009-04-03 2013-11-13 ファナック株式会社 干渉チェック機能を有する数値制御装置
US8307528B2 (en) * 2009-10-05 2012-11-13 Sonnax Industries, Inc. Low clearance machined part mating system
KR101673618B1 (ko) * 2010-12-06 2016-11-07 두산공작기계 주식회사 Nc 공작기계 공구경로 파트 프로그램 수정 시스템
DE102011011542B4 (de) * 2011-02-17 2016-05-25 Convergent Information Technologies Gmbh Verfahren zur automatisierten Programmierung und Optimierung von robotischen Arbeitsabläufen
JP5149421B2 (ja) * 2011-05-20 2013-02-20 ファナック株式会社 加工時間予測部および加工誤差予測部を有する数値制御装置
US9897992B2 (en) * 2012-05-22 2018-02-20 Mitsubishi Electric Corporation Numerical control apparatus
EP2952990B1 (de) * 2014-06-06 2019-02-20 Siemens Aktiengesellschaft Optimiertes Steuern einer zerspanenden Werkzeugmaschine
JP5890477B2 (ja) * 2014-07-09 2016-03-22 ファナック株式会社 ロボットプログラム修正システム
JP5985087B1 (ja) 2015-04-27 2016-09-06 三菱電機株式会社 数値制御装置
JP6804657B2 (ja) * 2017-08-30 2020-12-23 三菱電機株式会社 数値制御システムおよびモータ制御装置

Also Published As

Publication number Publication date
US20210096534A1 (en) 2021-04-01
JP7348013B2 (ja) 2023-09-20
US11656600B2 (en) 2023-05-23
JP2021056835A (ja) 2021-04-08
CN112578736A (zh) 2021-03-30

Similar Documents

Publication Publication Date Title
DE102011108282B4 (de) Numerische Steuerung für eine Mehrachsenmaschine zum Bearbeiten einer geneigten Bearbeitungsebene
DE102020124734A1 (de) Simulationsgerät
DE102010036499B4 (de) Werkzeugvektor-Anzeigevorrichtung für eine Werkzeugmaschine mit Drehachse
DE4291619C2 (de) Verfahren zum Betreiben einer mehrachsigen computernumerisch gesteuerten Werkzeugmaschine
DE602006000648T2 (de) Offline-Lehrgerät für einen Roboter
DE102012017331B4 (de) Numerische Steuervorrichtung mit einer Werkstücksetzfehlerkompensierungseinheit für eine Mehrachsenwerkzeugmaschine
DE102017001783B4 (de) Numerische Steuervorrichtung, die eine Erhöhung der Anzahl Analyseziffern eines Programmbefehls ermöglicht
DE10352815B4 (de) Simulationsverfahren für eine Bearbeitung eines Werkstücks durch eine Werkzeugmaschine und korrespondierender Rechner
DE102011110111B4 (de) Numerische Steuerung einer mehrachsigen Werkzeugmaschine für das Steuern der Lage der Tool Center Point Position
DE102018000369B4 (de) Numerische steuerung
DE102009003003B4 (de) Numerische Steuerung mit der Funktion einer Koordinatentransformation der Werkzeugphase
DE102014018973B4 (de) Numerische Steuerung zum Glätten des Werkzeugwegs im Betrieb basierend auf Daten in Tabellenform
DE112014000700T5 (de) Interferenzprüfgerät
EP1018677A1 (de) Virtuelles Teach-In-System
DE102017207822A1 (de) Vorrichtung zur verarbeitung eines bearbeitungsprogramms und damit ausgestattete mehrachsige bearbeitungsmaschine
DE112017000203B4 (de) Numerische Steuerung und numerisches Steuerungsverfahren
DE102019007563A1 (de) Numerische Steuervorrichtung
DE102013010404A1 (de) Numerische Steuerung mit einer Werkzeugausrichtungssteuerfunktion für Mehrachsen-Bearbeitungsmaschinen
DE102016107397A1 (de) Bahnanzeigevorrichtung zur darstellung der bahn einer werkzeugachse
DE102018218202A1 (de) Postprozessor-vorrichtung, maschinenprogramm erzeugungsverfahren, cnc-bearbeitungssystem und programm für eine maschinenprogramm-erzeugung
DE102004019653B4 (de) Simulationsvorrichtung
DE102014014524A1 (de) Werkzeugbahnanzeigevorrichtung, mit einer Anzeigeeinheit für Bahndaten
DE102008013400B4 (de) Verfahren zur Ermittlung von Verriegelungsbereichen wenigstens eines im Raum bewegbaren ersten Objekts
DE10393527T5 (de) Systeme und Verfahren zur Darstellung komplexer n-Kurven für die Direktsteuerung einer Werkzeugbewegung
DE102012001840B4 (de) Numerische Steuerung zum Ausführen einer Positionierungsabschlussprüfung

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: HL KEMPNER PATENTANWAELTE, SOLICITORS (ENGLAND, DE

Representative=s name: HL KEMPNER PATENTANWALT, RECHTSANWALT, SOLICIT, DE

R012 Request for examination validly filed