[go: up one dir, main page]

DE112021008301T5 - NUMERICAL CONTROL DEVICE, MACHINING SYSTEM, NUMERICAL CONTROL METHOD AND MACHINING METHOD - Google Patents

NUMERICAL CONTROL DEVICE, MACHINING SYSTEM, NUMERICAL CONTROL METHOD AND MACHINING METHOD Download PDF

Info

Publication number
DE112021008301T5
DE112021008301T5 DE112021008301.5T DE112021008301T DE112021008301T5 DE 112021008301 T5 DE112021008301 T5 DE 112021008301T5 DE 112021008301 T DE112021008301 T DE 112021008301T DE 112021008301 T5 DE112021008301 T5 DE 112021008301T5
Authority
DE
Germany
Prior art keywords
operation command
numerical control
machine tool
workpiece
tool
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.)
Withdrawn
Application number
DE112021008301.5T
Other languages
German (de)
Inventor
Kazuki TAKAHEI
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 DE112021008301T5 publication Critical patent/DE112021008301T5/en
Withdrawn 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/404Numerical 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 control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • B23Q15/007Automatic control or regulation of feed movement, cutting velocity or position of tool or work while the tool acts upon the workpiece
    • B23Q15/12Adaptive control, i.e. adjusting itself to have a performance which is optimum according to a preassigned criterion
    • 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/4155Numerical 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 programme execution, i.e. part programme or machine function execution, e.g. selection of a programme

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)

Abstract

Eine numerische Steuervorrichtung (3) beinhaltet: eine Befehlserzeugungseinheit (31), die einen Basisbetriebsbefehl erzeugt, bei dem es sich um einen Betriebsbefehl auf Grundlage eines numerischen Steuerprogramms (4) handelt, und einen korrigierten Betriebsbefehl erzeugt, bei dem es sich um den Betriebsbefehl handelt, der durch Korrigieren des Basisbetriebsbefehls erhalten wird; eine gekoppelte Simulationseinheit (33), die Prozessinformationen berechnet, die einen Einfluss eines Betriebs eines Antriebssystems (20) und eine Dynamik einer Struktur, die während des Betriebs einer Werkzeugmaschine (2) bei einem Schneidprozess (M) eines Werkstücks (W) mit einem Werkzeug (23) Schwingung erzeugt, widerspiegeln, wobei die Prozessinformationen Ergebnisse einer Simulationsbearbeitung angeben, bei welcher der Basisbetriebsbefehl und der korrigierte Betriebsbefehl jeweils der Werkzeugmaschine (2) erteilt werden; und eine Prozessbewertungseinheit (34), die auf Grundlage einer Vielzahl der Prozessinformationen eine Größe eines Bearbeitungsfehlers bei einer Verwendung jedes einer Vielzahl der Betriebsbefehle bewertet und den Betriebsbefehl, welcher der Werkzeugmaschine (2) zu erteilen ist, aus dem Basisbetriebsbefehl und dem korrigierten Betriebsbefehl auswählt.A numerical control device (3) includes: a command generation unit (31) that generates a basic operation command which is an operation command based on a numerical control program (4), and generates a corrected operation command which is the operation command obtained by correcting the basic operation command; a coupled simulation unit (33) that calculates process information reflecting an influence of an operation of a drive system (20) and a dynamics of a structure that generates vibration during operation of a machine tool (2) in a cutting process (M) of a workpiece (W) with a tool (23), the process information indicating results of simulation processing in which the basic operation command and the corrected operation command are respectively given to the machine tool (2); and a process evaluation unit (34) that evaluates, based on a plurality of the process information, a magnitude of a machining error in use of each of a plurality of the operation commands and selects the operation command to be given to the machine tool (2) from the basic operation command and the corrected operation command.

Description

GebietArea

Die vorliegende Offenbarung betrifft eine numerische Steuervorrichtung, ein Bearbeitungssystem, ein numerisches Steuerverfahren und ein Bearbeitungsverfahren zum Steuern einer Werkzeugmaschine.The present disclosure relates to a numerical control apparatus, a machining system, a numerical control method, and a machining method for controlling a machine tool.

Hintergrundbackground

Werkzeugmaschinen sind Bearbeitungsvorrichtungen, die eine spanabhebende Bearbeitung durchführen können, d. h. eine Bearbeitung, bei der nicht benötigte Abschnitte von einem Werkstück entfernt werden, indem Kraft oder Energie unter Verwendung eines Werkzeugs auf das Werkstück ausgeübt wird. Eine Werkzeugmaschine beinhaltet ein Spindelantriebssystem, das ein Werkzeug oder ein Werkstück dreht, und ein Vorschubantriebssystem, das die relative Position zwischen dem Werkzeug und dem Werkstück ändert. Die numerische Steuervorrichtung treibt zum Bearbeiten des Werkstücks das Spindelantriebssystem und das Vorschubantriebssystem auf Grundlage eines Betriebsbefehls an, der auf Grundlage eines numerischen Steuerprogramms erzeugt wird. Hierbei können, selbst wenn die Werkzeugmaschine gemäß dem in dem numerischen Steuerprogramm beschriebenen Befehl gesteuert wird, verschiedene Faktoren verhindern, dass die Bearbeitung gemäß dem Befehl durchgeführt wird, und kann es zu einem Bearbeitungsfehler kommen.Machine tools are machining devices that can perform cutting machining, that is, machining in which unnecessary portions are removed from a workpiece by applying force or energy to the workpiece using a tool. A machine tool includes a spindle drive system that rotates a tool or a workpiece, and a feed drive system that changes the relative position between the tool and the workpiece. The numerical control device drives the spindle drive system and the feed drive system based on an operation command generated based on a numerical control program to machine the workpiece. Here, even if the machine tool is controlled according to the command described in the numerical control program, various factors may prevent the machining from being performed according to the command, and a machining error may occur.

Patentliteratur 1 schlägt eine Technik zum Reproduzieren der Eigenschaft einer bearbeiteten Oberfläche durch Berechnen der Verschiebung des Werkzeugs vor, die durch einen Schnittwiderstand verursacht wird, der auf das Werkzeug beim Schneiden ausgeübt wird. Bei dem in Patentliteratur 1 beschriebenen Verfahren wird im Voraus ein Parameter gespeichert, der eine dynamische Eigenschaft des Werkzeugs wiedergibt, wodurch die Verschiebung des Werkzeugmittelpunkts, die auftritt, wenn ein Schnittwiderstand erzeugt wird, welcher der mittels Simulation berechneten ungeschnittenen Spandicke des Werkzeugs entspricht, als Bearbeitungsfehler betrachtet wird.Patent Literature 1 proposes a technique for reproducing the property of a machined surface by calculating the displacement of the tool caused by a cutting resistance applied to the tool during cutting. In the method described in Patent Literature 1, a parameter representing a dynamic property of the tool is stored in advance, whereby the displacement of the tool center that occurs when a cutting resistance corresponding to the uncut chip thickness of the tool calculated by simulation is generated is regarded as a machining error.

Liste der AnführungenList of citations

PatentliteraturPatent literature

Patentliteratur 1: Japanische Offenlegungsschrift Nr. 2013-132733 Patent Literature 1: Japanese Laid-Open Publication No. 2013-132733

KurzdarstellungBrief description

Technisches ProblemTechnical problem

Die vorstehend beschriebene herkömmliche Technik ist jedoch dahingehend problematisch, dass der Bearbeitungsfehler nicht genau verringert werden kann. Bei der in Patentliteratur 1 beschriebenen Technik wird der Ablenkbetrag des Werkzeugs vorhergesagt und die Verschiebung des Werkzeugmittelpunkts als der Bearbeitungsfehler betrachtet. In der Praxis wirken sich jedoch während des Betriebs der Werkzeugmaschine der Schneidprozess, der Betrieb des Antriebssystems und die mechanische Dynamik einer Struktur, die während des Betriebs der Werkzeugmaschine Schwingung erzeugt, aufeinander aus. Hierbei gibt der Schneidprozess eine Reihe von Prozessen wieder, bei denen die Schnittkante des Werkzeugs in das Werkstück eindringt, um eine bearbeitete Oberfläche zu bilden, während Späne erzeugt werden, und gibt die mechanische Dynamik dynamische Eigenschaften einer Struktur wieder, die schwingt, wenn sich Schwingungen von Schwingungsquellen innerhalb und außerhalb der Werkzeugmaschine ausbreiten. Daher kann mit dem in Patentliteratur 1 beschriebenen Verfahren der Bearbeitungsfehler nicht genau bewertet werden und kann der Bearbeitungsfehler nicht genau verringert werden.However, the conventional technique described above is problematic in that the machining error cannot be accurately reduced. In the technique described in Patent Literature 1, the deflection amount of the tool is predicted and the displacement of the tool center point is regarded as the machining error. In practice, however, during the operation of the machine tool, the cutting process, the operation of the drive system, and the mechanical dynamics of a structure that generates vibration during the operation of the machine tool interact with each other. Here, the cutting process represents a series of processes in which the cutting edge of the tool penetrates the workpiece to form a machined surface while generating chips, and the mechanical dynamics represents dynamic characteristics of a structure that vibrates when vibrations propagate from vibration sources inside and outside the machine tool. Therefore, the method described in Patent Literature 1 cannot accurately evaluate the machining error and cannot accurately reduce the machining error.

Die vorliegende Offenbarung wurde in Anbetracht des Vorstehenden erstellt und eine Aufgabe davon besteht darin, eine numerische Steuervorrichtung zu erzielen, die imstande ist, den Bearbeitungsfehler einer Werkzeugmaschine genau zu verringern.The present disclosure has been made in view of the foregoing, and an object thereof is to achieve a numerical control device capable of accurately reducing the machining error of a machine tool.

Lösung des Problemsthe solution of the problem

Um das vorstehende Problem zu lösen und eine Aufgabe zu erfüllen, richtet sich die vorliegende Offenbarung auf eine numerische Steuervorrichtung, die eine Werkzeugmaschine steuert, indem sie der Werkzeugmaschine einen Betriebsbefehl erteilt, wobei die Werkzeugmaschine ein Antriebssystem beinhaltet, das ein Spindelantriebssystem, um ein Werkzeug zum Bearbeiten eines Werkstücks oder eine das Werkstück drehende Spindel anzutreiben, und ein Vorschubantriebssystem, um eine Vorschubachse anzutreiben, die eine relative Position zwischen dem Werkzeug und dem Werkstück ändert, beinhaltet, wobei die numerische Steuervorrichtung Folgendes beinhaltet: eine Befehlserzeugungseinheit, um einen Basisbetriebsbefehl zu erzeugen, bei dem es sich um den Betriebsbefehl auf Grundlage eines numerischen Steuerprogramms handelt, und einen korrigierten Betriebsfehl zu erzeugen, bei dem es sich um den durch Korrigieren des Basisbetriebsfehls erhaltenen Betriebsbefehl handelt; eine gekoppelte Simulationseinheit, um Prozessinformationen zu berechnen, die einen Einfluss eines Betriebs des Antriebssystems und eine Dynamik einer Struktur, die während des Betriebs der Werkzeugmaschine Schwingung erzeugt, auf einen Schneidprozess des Werkstücks mit dem Werkzeug widerspiegeln, wobei die Prozessinformationen Ergebnisse einer Simulationsbearbeitung angeben, bei welcher der Basisbetriebsbefehl und der korrigierte Betriebsbefehl jeweils der Werkzeugmaschine erteilt werden; und eine Prozessbewertungseinheit, um auf Grundlage einer Vielzahl der Prozessinformationen eine Größe eines Bearbeitungsfehlers bei einer Verwendung von jedem einer Vielzahl der Betriebsbefehle zu bewerten und den der Werkzeugmaschine zu erteilenden Betriebsbefehl aus dem Basisbetriebsbefehl und dem korrigierten Betriebsbefehl auszuwählen.In order to solve the above problem and achieve an object, the present disclosure is directed to a numerical control device that controls a machine tool by giving an operation command to the machine tool, the machine tool including a drive system that includes a spindle drive system for driving a tool for machining a workpiece or a spindle that rotates the workpiece, and a feed drive system for driving a feed axis that changes a relative position between the tool and the workpiece, the numerical control device including: a command generation unit for generating a basic operation command that is the operation command based on a numerical control program, and generating a corrected operation error that is the operation command obtained by correcting the basic operation error; a coupled simulation unit for generating process information to calculate information reflecting an influence of an operation of the drive system and dynamics of a structure that generates vibration during operation of the machine tool on a cutting process of the workpiece with the tool, the process information indicating results of simulation machining in which the basic operation command and the corrected operation command are respectively given to the machine tool; and a process evaluation unit for evaluating, based on a plurality of the process information, a magnitude of a machining error in use of each of a plurality of the operation commands and selecting the operation command to be given to the machine tool from the basic operation command and the corrected operation command.

Vorteilhafte Wirkungen der ErfindungAdvantageous effects of the invention

Die vorliegende Erfindung kann die Wirkung erzielen, dass der Bearbeitungsfehler einer Werkzeugmaschine genau verringert wird.The present invention can achieve the effect of accurately reducing the machining error of a machine tool.

Kurze Beschreibung der ZeichnungenShort description of the drawings

  • 1 ist eine Darstellung, die eine funktionelle Konfiguration eines Bearbeitungssystems gemäß der ersten Ausführungsform veranschaulicht. 1 is a diagram illustrating a functional configuration of a machining system according to the first embodiment.
  • 2 ist eine Darstellung, die eine beispielhafte physische Konfiguration der in 1 veranschaulichten Werkzeugmaschine veranschaulicht. 2 is a representation showing an exemplary physical configuration of the 1 illustrated machine tool.
  • 3 ist eine Darstellung, die Zeitwellenformen der Spindeldrehzahl und der Vorschubrate bei dem Basisbetriebsbefehl veranschaulicht. 3 is a diagram illustrating time waveforms of the spindle speed and feed rate in the basic operation command.
  • 4 ist eine Darstellung, die das Werkzeug und das Werkstück während einer Bearbeitung veranschaulicht, bei der die in 3 veranschaulichte Spindeldrehzahl und Vorschubrate verwendet werden. 4 is a representation that illustrates the tool and the workpiece during machining in which the 3 illustrated spindle speed and feed rate can be used.
  • 5 ist eine Darstellung, die Zeitwellenformen der Spindeldrehzahl und der Vorschubrate bei dem korrigierten Betriebsbefehl veranschaulicht. 5 is a diagram illustrating time waveforms of the spindle speed and feed rate under the corrected operation command.
  • 6 ist eine Darstellung, die das Werkzeug und das Werkstück während einer Bearbeitung veranschaulicht, bei der die in 5 veranschaulichte Spindeldrehzahl und Vorschubrate verwendet werden. 6 is a representation that illustrates the tool and the workpiece during machining in which the 5 illustrated spindle speed and feed rate can be used.
  • 7 ist eine Darstellung, welche die Beziehung zwischen dem in 1 veranschaulichten Spindelantriebssystem, einer mechanischen Dynamik und dem Schneidprozess veranschaulicht. 7 is a representation that shows the relationship between the 1 illustrated spindle drive system, mechanical dynamics and the cutting process.
  • 8 ist eine Darstellung, welche die in 7 veranschaulichten physikalischen Größen zusammen mit der physischen Konfiguration der Werkzeugmaschine veranschaulicht. 8th is a representation which shows the 7 illustrated physical quantities together with the physical configuration of the machine tool.
  • 9 ist eine Darstellung, welche die Beziehung zwischen dem in 1 veranschaulichten Vorschubantriebssystem, einer mechanischen Dynamik und dem Schneidprozess veranschaulicht. 9 is a representation that shows the relationship between the 1 illustrated feed drive system, mechanical dynamics and the cutting process.
  • 10 ist eine Darstellung, welche die in 9 veranschaulichten physikalischen Größen zusammen mit der physischen Konfiguration der Werkzeugmaschine veranschaulicht. 10 is a representation which shows the 9 illustrated physical quantities together with the physical configuration of the machine tool.
  • 11 ist eine Darstellung zur Erläuterung eines Beispiels für das Spindelantriebssteuermodell in 1. 11 is a diagram to explain an example of the spindle drive control model in 1 .
  • 12 ist eine Darstellung zur Erläuterung eines Beispiels für das Vorschubantriebssteuermodell in 1. 12 is a diagram to explain an example of the feed drive control model in 1 .
  • 13 ist ein Ablaufdiagramm zur Erläuterung des Betriebs der in 1 veranschaulichten numerischen Steuervorrichtung. 13 is a flow chart to explain the operation of the 1 illustrated numerical control device.
  • 14 ist eine Darstellung, die eine funktionelle Konfiguration eines Bearbeitungssystems gemäß der zweiten Ausführungsform veranschaulicht. 14 is a diagram illustrating a functional configuration of a machining system according to the second embodiment.
  • 15 ist ein Ablaufdiagramm zur Erläuterung des Betriebs der in 14 veranschaulichten numerischen Steuervorrichtung. 15 is a flow chart to explain the operation of the 14 illustrated numerical control device.
  • 16 ist eine Darstellung, die eine beispielhafte Konfiguration einer Lernvorrichtung in Bezug auf die in 14 veranschaulichte numerische Steuervorrichtung veranschaulicht. 16 is a diagram showing an exemplary configuration of a learning device with respect to the 14 illustrated numerical control device.
  • 17 ist ein Ablaufdiagramm zur Erläuterung des Lernprozesses der in 16 veranschaulichten Lernvorrichtung. 17 is a flow chart to explain the learning process of the 16 illustrated learning device.
  • 18 ist eine Darstellung, die eine beispielhafte Konfiguration einer Inferenzvorrichtung in Bezug auf die in 14 veranschaulichte numerische Steuervorrichtung veranschaulicht. 18 is a diagram showing an exemplary configuration of an inference device with respect to the 14 illustrated numerical control device.
  • 19 ist ein Ablaufdiagramm zur Erläuterung des Betriebs der in 18 veranschaulichten Inferenzvorrichtung. 19 is a flow chart to explain the operation of the 18 illustrated inference device.
  • 20 ist eine Darstellung, die eine Konfiguration eines Bearbeitungssystems gemäß der dritten Ausführungsform veranschaulicht. 20 is a diagram illustrating a configuration of a machining system according to the third embodiment.
  • 21 ist eine Darstellung, die dedizierte Hardware zum Umsetzen der Funktionen der numerischen Steuervorrichtungen, der Lernvorrichtung und der Inferenzvorrichtung gemäß der ersten bis dritten Ausführungsform veranschaulicht. 21 is a diagram illustrating dedicated hardware for implementing the functions of the numerical control devices, the learning device, and the inference device according to the first to third embodiments.
  • 22 ist eine Darstellung, die eine Konfiguration der Steuerschaltung zum Umsetzen der Funktionen der numerischen Steuervorrichtungen, der Lernvorrichtung und der Inferenzvorrichtung gemäß der ersten bis dritten Ausführungsform veranschaulicht. 22 is a diagram illustrating a configuration of the control circuit for implementing the functions of the numerical control devices, the learning device, and the inference device according to the first to third embodiments.

Beschreibung von AusführungsformenDescription of embodiments

Nachfolgend werden eine numerische Steuervorrichtung, ein Bearbeitungssystem, ein numerisches Steuerverfahren und ein Bearbeitungsverfahren gemäß Ausführungsformen der vorliegenden Offenbarung unter Bezugnahme auf die Zeichnungen näher beschrieben. In der folgenden Beschreibung kann eine Vielzahl von Komponenten, die ähnliche Funktionen aufweisen, voneinander unterschieden werden, indem sie durch eine gemeinsame Nummer, gefolgt von einem Bindestrich und einer Nummer, gekennzeichnet sind. In Fällen, in denen eine Vielzahl von Komponenten mit ähnlichen Funktionen nicht voneinander unterschieden werden muss, sind diese lediglich durch eine gemeinsame Nummer gekennzeichnet.Hereinafter, a numerical control apparatus, a machining system, a numerical control method, and a machining method according to embodiments of the present disclosure will be described in detail with reference to the drawings. In the following description, a plurality of components having similar functions can be distinguished from each other by identifying them by a common number followed by a hyphen and a number. In cases where a plurality of components having similar functions do not need to be distinguished from each other, they are only identified by a common number.

Erste Ausführungsform.First embodiment.

1 ist eine Darstellung, die eine funktionelle Konfiguration eines Bearbeitungssystems 1 gemäß der ersten Ausführungsform veranschaulicht. Das Bearbeitungssystem 1 beinhaltet eine Werkzeugmaschine 2 und eine numerische Steuervorrichtung 3. Die numerische Steuervorrichtung 3 steuert die Werkzeugmaschine 2, indem sie der Werkzeugmaschine 2 einen Betriebsbefehl erteilt, der auf Grundlage eines in einem numerischen Steuerprogramm 4 beschriebenen Befehls erzeugt wird. 1 is a diagram illustrating a functional configuration of a machining system 1 according to the first embodiment. The machining system 1 includes a machine tool 2 and a numerical control device 3. The numerical control device 3 controls the machine tool 2 by giving the machine tool 2 an operation command generated based on a command described in a numerical control program 4.

Die Werkzeugmaschine 2 beinhaltet ein Spindelantriebssystem 21, ein oder mehrere Vorschubantriebssysteme 22, ein Werkzeug 23 zum Bearbeiten eines Werkstücks W und einen Tisch 24 zum Halten des Werkstücks W.The machine tool 2 includes a spindle drive system 21, one or more feed drive systems 22, a tool 23 for machining a workpiece W and a table 24 for holding the workpiece W.

Das Spindelantriebssystem 21 beinhaltet einen Spindelmotor 211 und einen Spindelantriebsmechanismus 212, der durch den Spindelmotor 211 angetrieben wird. Das Werkzeug 23 ist mit dem Spindelantriebssystem 21 verbunden und das Spindelantriebssystem 21 kann das Werkzeug 23 drehen. Der Spindelmotor 211 oder der Spindelantriebsmechanismus 212 ist mit einem Drehgeber (nicht veranschaulicht) ausgestattet, der Winkelinformationen des Spindelantriebssystems 21 wiedergibt.The spindle drive system 21 includes a spindle motor 211 and a spindle drive mechanism 212 driven by the spindle motor 211. The tool 23 is connected to the spindle drive system 21, and the spindle drive system 21 can rotate the tool 23. The spindle motor 211 or the spindle drive mechanism 212 is equipped with a rotary encoder (not illustrated) that represents angle information of the spindle drive system 21.

Das Vorschubantriebssystem 22 beinhaltet einen Servomotor 221 und einen Vorschubantriebsmechanismus 222, der durch den Servomotor 221 angetrieben wird. Das Vorschubantriebssystem 22 kann die relative Position zwischen dem Werkzeug 23 und dem Werkstück W ändern. Der Servomotor 221 und der Vorschubantriebsmechanismus 222 sind mit einem Drehgeber (nicht veranschaulicht) ausgestattet, der Positionsinformationen des Vorschubantriebssystems 22 wiedergibt. Der Tisch 24, auf dem das Werkstück W gehalten wird oder das Werkzeug 23 mit dem Vorschubantriebssystem 22 verbunden ist, und das Vorschubantriebssystem 22 können die relative Position zwischen dem Werkzeug 23 und dem Werkstück W durch Bewegen des Tisches 24 oder des Werkzeugs 23 ändern. Bei dem in 1 veranschaulichten Beispiel beinhaltet die Werkzeugmaschine 2 ein Vorschubantriebssystem 22-1, welches das Werkzeug 23 bewegt, und ein Vorschubantriebssystem 22-2, das den Tisch 24 bewegt, sodass sowohl das Werkzeug 23 als auch der Tisch 24 bewegt werden. Es ist jedoch zulässig, dass nur das Werkzeug 23 bewegt wird oder nur der Tisch 24 bewegt wird. Es ist eine beliebige Konfiguration verfügbar, welche die relative Position zwischen dem Werkzeug 23 und dem auf dem Tisch 24 gehaltenen Werkstück W ändern kann. Wenn das Vorschubantriebssystem 22 die relative Position zwischen dem Werkzeug 23 und dem Werkstück W ändert, schneidet das Werkzeug 23 das Werkstück W entlang des Bearbeitungspfads.The feed drive system 22 includes a servo motor 221 and a feed drive mechanism 222 driven by the servo motor 221. The feed drive system 22 can change the relative position between the tool 23 and the workpiece W. The servo motor 221 and the feed drive mechanism 222 are equipped with a rotary encoder (not illustrated) that reflects position information of the feed drive system 22. The table 24 on which the workpiece W is held or the tool 23 is connected to the feed drive system 22 and the feed drive system 22 can change the relative position between the tool 23 and the workpiece W by moving the table 24 or the tool 23. In the embodiment shown in 1 In the example illustrated, the machine tool 2 includes a feed drive system 22-1 that moves the tool 23 and a feed drive system 22-2 that moves the table 24 so that both the tool 23 and the table 24 are moved. However, it is permissible for only the tool 23 to be moved or for only the table 24 to be moved. Any configuration that can change the relative position between the tool 23 and the workpiece W held on the table 24 is available. When the feed drive system 22 changes the relative position between the tool 23 and the workpiece W, the tool 23 cuts the workpiece W along the machining path.

Das Spindelantriebssystem 21 und das Vorschubantriebssystem 22 sind mit der numerischen Steuervorrichtung 3 verbunden und der Spindelmotor 211 und der Servomotor 221 werden durch einen Betriebsbefehl gesteuert, der durch die numerische Steuervorrichtung 3 erteilt wird. Nachfolgend werden das Spindelantriebssystem 21 und das Vorschubantriebssystem 22 gemeinsam als das Antriebssystem 20 bezeichnet. Es ist zu beachten, dass eine Reihe von Prozessen, bei denen die Schnittkante des Werkzeugs 23 in das Werkstück W eindringt, um eine bearbeitete Oberfläche zu bilden, während Späne erzeugt werden, als ein Schneidprozess M bezeichnet wird.The spindle drive system 21 and the feed drive system 22 are connected to the numerical controller 3, and the spindle motor 211 and the servo motor 221 are controlled by an operation command issued by the numerical controller 3. Hereinafter, the spindle drive system 21 and the feed drive system 22 are collectively referred to as the drive system 20. Note that a series of processes in which the cutting edge of the tool 23 penetrates the workpiece W to form a machined surface while generating chips is referred to as a cutting process M.

2 ist eine Darstellung, die eine beispielhafte physische Konfiguration der in 1 veranschaulichten Werkzeugmaschine 2 veranschaulicht. Der Tisch 24 weist eine Tischform auf, die eine horizontale Ebene aufweist, auf der das Werkstück W platziert wird. Der Spindelantriebsmechanismus 212 ist derart bereitgestellt, dass das Werkzeug 23 über dem auf dem Tisch 24 gehaltenen Werkstück W positioniert ist. Der Spindelmotor 211 ist angrenzend an den Spindelantriebsmechanismus 212 bereitgestellt. Die Spindel des Spindelantriebssystems 21, das den Spindelmotor 211 und den Spindelantriebsmechanismus 212 beinhaltet, ist senkrecht zu der horizontalen Ebene des Tisches 24 und das Spindelantriebssystem 21 dreht das Werkzeug 23 um die Spindel. 2 is a representation showing an exemplary physical configuration of the 1 illustrated machine tool 2. The table 24 has a table shape having a horizontal plane on which the workpiece W is placed. The spindle drive mechanism 212 is provided such that the tool 23 is positioned above the workpiece W held on the table 24. The spindle motor 211 is provided adjacent to the spindle drive mechanism 212. The spindle of the spindle drive system 21 including the spindle motor 211 and the spindle drive mechanism 212 is perpendicular to the horizontal plane of the table 24, and the spindle drive system 21 rotates the tool 23 about the spindle.

Der Vorschubantriebsmechanismus 222-1 des Vorschubantriebssystems 22-1, welches das Werkzeug 23 bewegt, ist mit dem Werkzeug 23 über eine Struktur verbunden, die den Spindelantriebsmechanismus 212 beinhaltet, an dem das Werkzeug 23 angebracht ist. Der Servomotor 221-1 des Vorschubantriebssystems 22-1 ist angrenzend an den Vorschubantriebsmechanismus 222-1 bereitgestellt. Die Vorschubachse des Vorschubantriebssystems 22-1 ist parallel zu der Spindel und das Vorschubantriebssystem 22-1 bewegt das Werkzeug 23 entlang der Vorschubachse nach oben und unten.The feed drive mechanism 222-1 of the feed drive system 22-1, which moves the tool 23, is connected to the tool 23 via a structure including the spindle drive mechanism 212 to which the tool 23 is attached. The servo motor 221-1 of the feed drive system 22-1 is provided adjacent to the feed drive mechanism 222-1. The feed axis of the feed drive system 22-1 is parallel to the spindle, and the feed drive system 22-1 moves the tool 23 up and down along the feed axis.

Der Vorschubantriebsmechanismus 222-2 des Vorschubantriebssystems 22-2, das den Tisch 24 bewegt, ist mit dem Tisch 24 verbunden. Der Servomotor 221-2 des Vorschubantriebssystems 22-2 ist angrenzend an den Vorschubantriebsmechanismus 222-2 bereitgestellt. Die Vorschubachse des Vorschubantriebssystems 22-2 befindet sich in einer Richtung in der horizontalen Ebene des Tisches 24 und das Vorschubantriebssystem 22-2 bewegt den Tisch 24 in der horizontalen Richtung. Obwohl hier nur ein Vorschubantriebssystem 22 zum Bewegen des Tisches 24 beschrieben wurde, kann die Werkzeugmaschine 2 ferner das Vorschubantriebssystem 22 beinhalten, das eine Vorschubachse in einer Richtung aufweist, die senkrecht zu der Vorschubachse des Vorschubantriebssystems 22-2 ist und in der horizontalen Ebene des Tisches 24 verläuft.The feed drive mechanism 222-2 of the feed drive system 22-2, which moves the table 24, is connected to the table 24. The servo motor 221-2 of the feed drive system 22-2 is provided adjacent to the feed drive mechanism 222-2. The feed axis of the feed drive system 22-2 is located in a direction in the horizontal plane of the table 24, and the feed drive system 22-2 moves the table 24 in the horizontal direction. Although only a feed drive system 22 for moving the table 24 has been described here, the machine tool 2 may further include the feed drive system 22 having a feed axis in a direction perpendicular to the feed axis of the feed drive system 22-2 and in the horizontal plane of the table 24.

Es ist zu beachten, dass die hier veranschaulichte physische Konfiguration ein Beispiel ist, das zur einfacheren Erläuterung dargestellt ist, und die physische Konfiguration der Werkzeugmaschine 2 nicht auf das in 2 veranschaulichte Beispiel beschränkt ist. Beispielsweise kann die Anzahl der Vorschubantriebssysteme 22 der Werkzeugmaschine 2 eins sein oder kann drei oder mehr sein. Die Richtungen der Spindel und der Vorschubachse sind ebenfalls Beispiele. Der tischförmige Tisch 24 ist ein Beispiel für einen Mechanismus, der das Werkstück W hält, und kann eine beliebige Konfiguration aufweisen, mit der das Werkstück W gehalten und die relative Position zu dem Werkzeug 23 gesteuert werden kann.It should be noted that the physical configuration illustrated here is an example shown for ease of explanation, and the physical configuration of the machine tool 2 does not apply to the 2 example illustrated. For example, the number of the feed drive systems 22 of the machine tool 2 may be one, or may be three or more. The directions of the spindle and the feed axis are also examples. The table-shaped table 24 is an example of a mechanism that holds the workpiece W, and may have any configuration that can hold the workpiece W and control the relative position to the tool 23.

Unter erneuter Bezugnahme auf 1 beinhaltet die numerische Steuervorrichtung 3 eine Befehlserzeugungseinheit 31, eine Speichereinheit 32, eine gekoppelte Simulationseinheit 33, eine Prozessbewertungseinheit 34 und eine Antriebssteuereinheit 35.Referring again to 1 the numerical control device 3 includes a command generation unit 31, a storage unit 32, a coupled simulation unit 33, a process evaluation unit 34 and a drive control unit 35.

Das numerische Steuerprogramm 4 beinhaltet eine Vielzahl von Befehlen bezüglich der Bewegung der Spindel und der Vorschubachse der Werkzeugmaschine 2. Die in dem numerischen Steuerprogramm 4 enthaltenen Befehle sind beispielsweise Befehle, die einen Pfad, auf dem sich das Werkzeug 23 bewegt, als eine relative Position zu dem Werkstück W vorgeben. Die Befehle, die den Pfad des Werkzeugs 23 vorgeben, beinhalten eine Vielzahl von Positionsbefehlen, die Positionen auf dem Pfad vorgeben. Das numerische Steuerprogramm 4 beinhaltet ferner einen Spindeldrehzahlbefehl, der die Drehzahl der Spindel angibt, und einen Vorschubratenbefehl, der die Bewegungsgeschwindigkeit der Vorschubachse an der Position angibt, die durch jeden Positionsbefehl angegeben wird. Das numerische Steuerprogramm 4 kann an die numerische Steuervorrichtung 3 von außerhalb der numerischen Steuervorrichtung 3 vergeben werden oder kann in der numerischen Steuervorrichtung 3 gehalten werden.The numerical control program 4 includes a plurality of commands relating to the movement of the spindle and the feed axis of the machine tool 2. The commands included in the numerical control program 4 are, for example, commands specifying a path on which the tool 23 moves as a relative position to the workpiece W. The commands specifying the path of the tool 23 include a plurality of position commands specifying positions on the path. The numerical control program 4 further includes a spindle speed command specifying the rotation speed of the spindle and a feed rate command specifying the movement speed of the feed axis at the position specified by each position command. The numerical control program 4 may be given to the numerical control device 3 from outside the numerical control device 3 or may be held in the numerical control device 3.

Die Befehlserzeugungseinheit 31 analysiert die in dem numerischen Steuerprogramm 4 beschriebenen Befehle und erzeugt von Zeit zu Zeit einen Betriebsbefehl, welcher der Werkzeugmaschine 2 zu erteilen ist, um die Werkzeugmaschine 2 zu steuern. Die Befehlserzeugungseinheit 31 erzeugt einen Basisbetriebsbefehl, bei dem es sich um einen Betriebsbefehl zum Veranlassen der Werkzeugmaschine 2, den in dem numerischen Steuerungsprogramm 4 beschriebenen Befehl unverändert ohne Korrektur auszuführen, handelt, und einen korrigierten Betriebsbefehl, bei dem es sich um einen Betriebsbefehl handelt, der durch Korrigieren des Basisbetriebsbefehls erhalten wird. Die Befehlserzeugungseinheit 31 kann einen oder mehrere korrigierte Betriebsbefehle erzeugen. Der korrigierte Betriebsbefehl kann ein Betriebsbefehl sein, bei dem der relative Pfad, entlang dessen sich das Werkzeug 23 in Bezug auf das Werkstück W bewegt, der gleiche ist wie der des Basisbetriebsbefehls und mindestens eines von dem Vorschubbetrag der Vorschubachse und der ungeschnittenen Spandicke des Werkstücks W geändert ist. Der Vorschubbetrag ist der Vorschubbetrag pro Prozesseinheit, zum Beispiel der Vorschubbetrag pro Zahn des Werkzeugs 23. In diesem Fall unterscheidet sich bei dem korrigierten Betriebsbefehl mindestens eines von dem Spindeldrehzahlbefehl und dem Vorschubratenbefehl zu dem Zeitpunkt, zu dem jede der Vielzahl von Schnittkanten des Werkzeugs 23 in das Werkstück W schneidet, für jede Schnittkante des Werkzeugs. Der Spindeldrehzahlbefehl und der Vorschubratenbefehl zu jedem Zeitpunkt werden gemäß dem Winkel von jeder der Vielzahl von Schnittkanten des Werkzeugs 23 und der relativen Position zwischen dem Werkzeug 23 und dem Werkstück W moduliert. Die Befehlserzeugungseinheit 31 kann als korrigierten Betriebsbefehl einen Betriebsbefehl, bei dem der Spindeldrehzahlbefehl und/oder der Vorschubratenbefehl zu jedem Zeitpunkt des Basisbetriebsbefehls geändert wird, gemäß dem Vorschubbetrag oder der ungeschnittenen Spandicke des Werkstücks W pro Zahn für jede Schnittkante des Werkzeugs 23, die innerhalb oder außerhalb der Befehlserzeugungseinheit 31 eingestellt ist, erzeugen. Die Befehlserzeugungseinheit 31 gibt den erzeugten Basisbetriebsbefehl und korrigierten Betriebsfehls an sowohl die gekoppelte Simulationseinheit 33 als auch die Antriebssteuereinheit 35 aus.The command generation unit 31 analyzes the commands described in the numerical control program 4 and generates from time to time an operation command to be given to the machine tool 2 to control the machine tool 2. The command generation unit 31 generates a basic operation command, which is an operation command for causing the machine tool 2 to execute the command described in the numerical control program 4 as it is without correction, and a corrected operation command, which is an operation command obtained by correcting the basic operation command. The command generation unit 31 may generate one or more corrected operation commands. The corrected operation command may be an operation command in which the relative path along which the tool 23 moves with respect to the workpiece W is the same as that of the basic operation command and at least one of the feed amount of the feed axis and the uncut chip thickness of the workpiece W is changed. The feed amount is the feed amount per process unit, for example, the feed amount per tooth of the tool 23. In this case, in the corrected operation command, at least one of the spindle speed command and the feed rate command at the time when each of the plurality of cutting edges of the tool 23 cuts into the workpiece W is different for each cutting edge of the tool. The spindle speed command and the feed rate command at each time are modulated according to the angle of each of the plurality of cutting edges of the tool 23 and the relative position between the tool 23 and the workpiece W. The command generation unit 31 may generate, as the corrected operation command, an operation command in which the spindle speed command and/or the feed rate command is changed at each time of the basic operation command according to the feed amount or the uncut chip thickness of the workpiece W per tooth for each cutting edge of the tool 23 that inside or outside the command generation unit 31. The command generation unit 31 outputs the generated basic operation command and corrected operation error to both the coupled simulation unit 33 and the drive control unit 35.

3 ist eine Darstellung, die Zeitwellenformen der Spindeldrehzahl und der Vorschubrate bei dem Basisbetriebsbefehl veranschaulicht. Hierbei wird der Einfachheit halber ein Beispiel beschrieben, bei dem zwei Positionen P1 und P2 in dem numerischen Steuerprogramm 4 vorgegeben sind und die Spindeldrehzahl und die Vorschubrate mit einem konstanten Wert in Bezug auf die befohlene Trajektorie zwischen den Positionen P1 und P2 vorgegeben sind. 3 veranschaulicht die Spindeldrehzahl und die Vorschubrate in Bezug auf die befohlene Trajektorie zwischen den Positionen P1 und P2. Der Basisbetriebsbefehl ist ein Betriebsbefehl zum Veranlassen der Werkzeugmaschine 2, die in dem numerischen Steuerprogramm 4 beschriebenen Befehle unverändert ohne Korrektur auszuführen. Daher sind, wie in dem numerischen Steuerungsprogramm 4 beschrieben, die Spindeldrehzahl und die Vorschubrate, die durch den Basisbetriebsbefehl für die befohlene Trajektorie zwischen den Positionen P1 und P2 vorgegeben werden, konstant. 3 is a diagram illustrating time waveforms of the spindle speed and the feed rate in the basic operation command. Here, for the sake of simplicity, an example will be described in which two positions P1 and P2 are specified in the numerical control program 4 and the spindle speed and the feed rate are specified at a constant value with respect to the commanded trajectory between the positions P1 and P2. 3 illustrates the spindle speed and the feed rate with respect to the commanded trajectory between the positions P1 and P2. The basic operation command is an operation command for causing the machine tool 2 to execute the commands described in the numerical control program 4 as they are without correction. Therefore, as described in the numerical control program 4, the spindle speed and the feed rate specified by the basic operation command for the commanded trajectory between the positions P1 and P2 are constant.

4 ist eine Darstellung, die das Werkzeug 23 und das Werkstück W während einer Bearbeitung veranschaulicht, bei der die in 3 veranschaulichte Spindeldrehzahl und Vorschubrate verwendet werden. Das Werkzeug 23 bewegt sich von der Position P1 in Richtung der Position P2, während es sich in der Drehrichtung R1 dreht, und wenn es mit dem Werkstück W in Kontakt kommt, schneidet der Zahn des Werkzeugs 23 das Werkstück W. Bei dem Basisbetriebsbefehl sind sowohl die Spindeldrehzahl als auch die Vorschubrate konstant, und somit ist der Vorschubbetrag c pro Zahn konstant. In diesem Fall ist auch die Schnittfläche A1 pro Zahn konstant. 4 is a diagram illustrating the tool 23 and the workpiece W during machining in which the 3 illustrated spindle speed and feed rate are used. The tool 23 moves from the position P1 toward the position P2 while rotating in the rotation direction R1, and when it comes into contact with the workpiece W, the tooth of the tool 23 cuts the workpiece W. In the basic operation command, both the spindle speed and the feed rate are constant, and thus the feed amount c per tooth is constant. In this case, the cutting area A1 per tooth is also constant.

5 ist eine Darstellung, die Zeitwellenformen der Spindeldrehzahl und der Vorschubrate bei dem korrigierten Betriebsbefehl veranschaulicht. Hierbei werden unter Beibehaltung der befohlenen Trajektorie des unter Bezugnahme auf die 3 und 4 beschriebenen Basisbetriebsbefehls die Spindeldrehzahl und die Vorschubrate sinusförmig in Bezug auf die in dem numerischen Steuerprogramm 4 beschriebenen konstanten Werte variiert. 5 is a diagram illustrating time waveforms of the spindle speed and feed rate in the corrected operation command. Here, while maintaining the commanded trajectory of the control system with reference to the 3 and 4 described basic operation command, the spindle speed and the feed rate vary sinusoidally with respect to the constant values described in the numerical control program 4.

6 ist eine Darstellung, die das Werkzeug 23 und das Werkstück W veranschaulicht, die eine Bearbeitung gemäß der in 5 veranschaulichten Spindeldrehzahl und Vorschubrate durchführen. Das Werkzeug 23 bewegt sich von der Position P1 in Richtung der Position P2, während es sich in der Drehrichtung R1 dreht, und wenn es mit dem Werkstück W in Kontakt kommt, schneidet der Zahn des Werkzeugs 23 das Werkstück W. Bei dem korrigierten Betriebsbefehl ändern sich die Spindeldrehzahl und die Vorschubrate ständig. Daher ändert sich der Vorschubbetrag c pro Zahn mit der Zeit und ändert sich infolgedessen auch die Schnittfläche A1 pro Zahn. 6 is a diagram illustrating the tool 23 and the workpiece W undergoing machining according to the 5 illustrated spindle speed and feed rate. The tool 23 moves from the position P1 toward the position P2 while rotating in the rotation direction R1, and when it comes into contact with the workpiece W, the tooth of the tool 23 cuts the workpiece W. With the corrected operation command, the spindle speed and feed rate constantly change. Therefore, the feed amount c per tooth changes with time, and as a result, the cutting area A1 per tooth also changes.

In dem Beispiel aus 5 erzeugt die Befehlserzeugungseinheit 31 einen korrigierten Betriebsbefehl durch Ändern von sowohl der Spindeldrehzahl als auch der Vorschubrate in ein sinusförmiges Variationsmuster in Bezug auf den Vorschubbetrag c oder die ungeschnittene Spandicke des Werkstücks W pro Zahn, die auf dem Basisbetriebsbefehl beruhen. Das zu verwendende Variationsmuster ist jedoch nicht auf eine sinusförmige Wellenform beschränkt, und es können verschiedene Variationsmuster, einschließlich einer dreieckigen Wellenform und einer zufälligen Wellenform, verwendet werden. Die Befehlserzeugungseinheit 31 kann zudem einen korrigierten Betriebsbefehl durch Überlagern einer vorbestimmten Profilvariation auf mindestens eines von der Spindeldrehzahl und der Vorschubrate des Basisbetriebsbefehls erzeugen. Die Befehlserzeugungseinheit 31 kann im Voraus Informationen enthalten, die das Variationsprofil angeben, das über den Basisbetriebsbefehl zu legen ist. Obwohl hier das Beispiel beschrieben wurde, bei dem die Befehlserzeugungseinheit 31 einen korrigierten Betriebsbefehl aus einem Basisbetriebsbefehl erzeugt, kann die Befehlserzeugungseinheit 31 eine Vielzahl von korrigierten Betriebsbefehlen aus einem Basisbetriebsbefehl erzeugen.In the example from 5 the command generation unit 31 generates a corrected operation command by changing both the spindle speed and the feed rate into a sinusoidal variation pattern with respect to the feed amount c or the uncut chip thickness of the workpiece W per tooth, which are based on the basic operation command. However, the variation pattern to be used is not limited to a sinusoidal waveform, and various variation patterns including a triangular waveform and a random waveform may be used. The command generation unit 31 may also generate a corrected operation command by superimposing a predetermined profile variation on at least one of the spindle speed and the feed rate of the basic operation command. The command generation unit 31 may contain in advance information indicating the variation profile to be superimposed on the basic operation command. Although the example in which the command generation unit 31 generates a corrected operation command from a basic operation command has been described here, the command generation unit 31 may generate a plurality of corrected operation commands from a basic operation command.

Unter erneuter Bezugnahme auf 1 sind in der Speichereinheit 32 ein Schneidprozessmodell 321, ein Dynamikmodell 322, ein Spindelantriebssteuermodell 323, ein Vorschubantriebssteuermodell 324 und Schneidbedingungsinformationen 325 gespeichert. Die Speichereinheit 32 kann die gespeicherten Informationen an die gekoppelte Simulationseinheit 33 ausgeben. Die Schneidedingungsinformationen 325 beinhalten Werkzeugforminformationen, einschließlich der Anzahl von Zähnen, des Werkzeugdurchmessers und des Drallwinkels des Werkzeugs 23 und des Schnittbetrags bei Verwendung des Werkzeugs 23. Einzelheiten zu dem Schneidprozessmodell 321, dem Dynamikmodell 322, dem Spindelantriebssteuermodell 323 und dem Vorschubantriebssteuermodell 324 werden später beschrieben.Referring again to 1 A cutting process model 321, a dynamic model 322, a spindle drive control model 323, a feed drive control model 324, and cutting condition information 325 are stored in the storage unit 32. The storage unit 32 can output the stored information to the coupled simulation unit 33. The cutting condition information 325 includes tool shape information including the number of teeth, the tool diameter, and the helix angle of the tool 23, and the cutting amount when using the tool 23. Details of the cutting process model 321, the dynamic model 322, the spindle drive control model 323, and the feed drive control model 324 will be described later.

Da das durch die Werkzeugmaschine 2 ausgeführte Schneiden ein physikalisches Phänomen ist, bei dem sich der Schneidprozess und die mechanische Dynamik gegenseitig beeinflussen, ist es wünschenswert, eine Analyse durchzuführen, bei welcher der Schneidprozess und die mechanische Dynamik integriert sind, um den Bearbeitungszustand zu verwalten oder zu steuern. Hierbei gibt der Schneidprozess eine Reihe von Prozessen wieder, bei denen die Schnittkante des Werkzeugs 23 in das Werkstück W eindringt, um eine bearbeitete Oberfläche zu bilden, während Späne erzeugt werden. Die mechanische Dynamik gibt ein dynamisches Verhalten einer Struktur wieder, die aufgrund von Schwingungsquellen innerhalb und außerhalb der Werkzeugmaschine 2 Schwingung erzeugt. Die Struktur kann im vorliegenden Zusammenhang das Werkzeug 23 und das Werkstück W zusätzlich zu den Strukturen, welche die Werkzeugmaschine 2 bilden, beinhalten.Since the cutting performed by the machine tool 2 is a physical phenomenon in which the cutting process and the mechanical dynamics influence each other, it is desirable to carry out an analysis in which the cutting process and the mechanical dynamics are integrated in order to determine the machining process. state. Here, the cutting process represents a series of processes in which the cutting edge of the tool 23 penetrates the workpiece W to form a machined surface while generating chips. The mechanical dynamics represents a dynamic behavior of a structure that generates vibration due to vibration sources inside and outside the machine tool 2. The structure in the present context may include the tool 23 and the workpiece W in addition to the structures that form the machine tool 2.

Das Antriebssystem 20 wird durch die numerische Steuervorrichtung 3 gesteuert, sodass sich das Werkzeug 23 bewegt, um während des Drehens einen vorbestimmten Pfad in Bezug auf das Werkstück W zu durchlaufen. Während das Werkzeug 23 das Werkstück W schneidet, wird die zwischen dem Werkzeug 23 und dem Werkstück W erzeugte Schnittkraft Fc als Störkraft Fd durch die Struktur auf das Vorschubantriebssystem 22 übertragen und wird als Störmoment Td auf das Spindelantriebssystem 21 übertragen. Da die Störkraft Fd auf das Vorschubantriebssystem 22 ausgeübt wird, variiert die Position des Vorschubantriebssystems 22 je nach der Amplitude und Frequenz der Störkraft Fd in Bezug auf die Position, wenn das Werkzeug 23 das Werkstück W nicht schneidet. Ebenso variiert, wenn das Störmoment Td auf das Spindelantriebssystem 21 ausgeübt wird, der Drehwinkel des Spindelantriebssystems 21 in Bezug auf den Drehwinkel, wenn das Werkzeug 23 das Werkstück W nicht schneidet.The drive system 20 is controlled by the numerical control device 3 so that the tool 23 moves to traverse a predetermined path with respect to the workpiece W while rotating. While the tool 23 cuts the workpiece W, the cutting force F c generated between the tool 23 and the workpiece W is transmitted to the feed drive system 22 as a disturbance force F d through the structure, and is transmitted to the spindle drive system 21 as a disturbance torque T d . Since the disturbance force F d is applied to the feed drive system 22, the position of the feed drive system 22 varies depending on the amplitude and frequency of the disturbance force F d with respect to the position when the tool 23 is not cutting the workpiece W. Likewise, when the disturbance torque T d is applied to the spindle drive system 21, the rotation angle of the spindle drive system 21 varies with respect to the rotation angle when the tool 23 is not cutting the workpiece W.

Die vorstehende Beziehung wird unter Bezugnahme auf Zeichnungen beschrieben. 7 ist eine Darstellung, welche die Beziehung zwischen dem in 1 veranschaulichten Spindelantriebssystem 21, der mechanischen Dynamik und dem Schneidprozess M veranschaulicht. 8 ist eine Darstellung, welche die in 7 veranschaulichten physikalischen Größen zusammen mit der physischen Konfiguration der Werkzeugmaschine 2 veranschaulicht. Wenn die numerische Steuervorrichtung 3 dem Spindelantriebssystem 21 einen Betriebsbefehl erteilt, treibt der Spindelmotor 211 den Spindelantriebsmechanismus 212 an, dreht sich die Struktur der Werkzeugmaschine 2, die das Werkzeug 23 beinhaltet, und wird das Werkstück W bearbeitet. Hierbei wird das Spindelantriebssystem 21 gemäß dem Spindelantriebssystemwinkel θ1 auf Grundlage des Betriebsbefehls gesteuert und wird dann der Ist-Winkel des Werkzeugs 23 unter dem Einfluss der werkzeugseitigen mechanischen Dynamik MD1 zu dem Werkzeugwinkel θ2. Die Reihe von Schneidprozessen M, bei der das Werkzeug 23 in das Werkstück W eindringt, wird ausgeführt, um eine bearbeitete Oberfläche zu bilden, während Späne erzeugt werden. Das dabei erzeugte Schnittmoment Tc wird durch die werkzeugseitige mechanische Dynamik MD1 durch die Struktur beeinflusst und kehrt als Störmoment Td zu dem Spindelantriebssystem 21 zurück. Die Werkzeugmaschine 2 gibt ein Rückkopplungssignal an die numerische Steuervorrichtung 3 aus. Falls sich der Zustand des Spindelantriebssystems 21, welches das Störmoment Td empfangen hat, von dem Betriebsbefehl unterscheidet, ändert die numerische Steuervorrichtung 3 den Betriebsbefehl auf Grundlage des von dem Spindelantriebssystem 21 übertragenen Rückkopplungssignals.The above relationship will be described with reference to drawings. 7 is a representation that shows the relationship between the 1 illustrated spindle drive system 21, the mechanical dynamics and the cutting process M. 8th is a representation which shows the 7 illustrated together with the physical configuration of the machine tool 2. When the numerical controller 3 issues an operation command to the spindle drive system 21, the spindle motor 211 drives the spindle drive mechanism 212, the structure of the machine tool 2 including the tool 23 rotates, and the workpiece W is machined. Here, the spindle drive system 21 is controlled according to the spindle drive system angle θ1 based on the operation command, and then the actual angle of the tool 23 becomes the tool angle θ2 under the influence of the tool-side mechanical dynamics MD1. The series of cutting processes M in which the tool 23 penetrates the workpiece W is carried out to form a machined surface while generating chips. The cutting torque T c generated thereby is influenced by the tool-side mechanical dynamics MD1 through the structure and returns to the spindle drive system 21 as a disturbance torque T d . The machine tool 2 outputs a feedback signal to the numerical controller 3. If the state of the spindle drive system 21 which has received the disturbance torque T d is different from the operation command, the numerical controller 3 changes the operation command based on the feedback signal transmitted from the spindle drive system 21.

9 ist eine Darstellung, welche die Beziehung zwischen dem in 1 veranschaulichten Vorschubantriebssystem 22-2, der mechanischen Dynamik und dem Schneidprozess M veranschaulicht. 10 ist eine Darstellung, welche die in 9 veranschaulichten physikalischen Größen zusammen mit der physischen Konfiguration der Werkzeugmaschine 2 veranschaulicht. Die numerische Steuervorrichtung 3 erteilt dem Vorschubantriebssystem 22-2 einen Betriebsbefehl und dann wird das Werkstück W durch die relative Bewegung zwischen dem Werkzeug 23 und dem Werkstück W bearbeitet. Dabei treibt der Servomotor 221-2 des Vorschubantriebssystems 22-2 den Vorschubantriebsmechanismus 222-2 auf Grundlage des Betriebsbefehls an und tritt folglich die Antriebssystemverschiebung r1 in dem Tisch 24 auf. Die in dem Werkstück W erzeugte Ist-Verschiebung wird die Strukturverschiebung r2, die den Einfluss der werkstückseitigen mechanischen Dynamik MD2 widerspiegelt, wenn die Antriebssystemverschiebung r1 auftritt. Die dabei erzeugte Schnittkraft Fc kehrt zu dem Vorschubantriebssystem 22-2 als Störkraft Fd durch die Struktur zurück. Falls sich der Zustand des Vorschubantriebssystems 22-2, welches die Störkraft Fd empfangen hat, von dem Betriebsbefehl unterscheidet, ändert die numerische Steuervorrichtung 3 den Betriebsbefehl auf Grundlage des von dem Vorschubantriebssystem 22-2 übertragenen Rückkopplungssignals. 9 is a representation that shows the relationship between the 1 illustrated feed drive system 22-2, the mechanical dynamics and the cutting process M. 10 is a representation which shows the 9 illustrated together with the physical configuration of the machine tool 2. The numerical controller 3 issues an operation command to the feed drive system 22-2, and then the workpiece W is machined by the relative movement between the tool 23 and the workpiece W. At this time, the servo motor 221-2 of the feed drive system 22-2 drives the feed drive mechanism 222-2 based on the operation command, and thus the drive system displacement r1 occurs in the table 24. The actual displacement generated in the workpiece W becomes the structure displacement r2 reflecting the influence of the workpiece-side mechanical dynamics MD2 when the drive system displacement r1 occurs. The cutting force F c generated thereby returns to the feed drive system 22-2 as a disturbance force F d through the structure. If the state of the feed drive system 22-2 which has received the disturbance force F d is different from the operation command, the numerical controller 3 changes the operation command based on the feedback signal transmitted from the feed drive system 22-2.

Wenngleich das Spindelantriebssystem 21 und das Vorschubantriebssystem 22 vorstehend zur Erläuterung getrennt unter Bezugnahme auf die 7 bis 10 beschrieben wurden, treten eine Verschiebung und Kraftausbreitung während der Bearbeitung gleichzeitig in dem Spindelantriebssystem 21 und dem Vorschubantriebssystem 22 auf.Although the spindle drive system 21 and the feed drive system 22 have been described separately above for explanation with reference to 7 to 10 As described, displacement and force propagation during machining occur simultaneously in the spindle drive system 21 and the feed drive system 22.

Wie vorstehend beschrieben, bilden beim Schneiden der Schneidprozess M, die mechanische Dynamik und das Antriebssystem 20 ein gekoppeltes System und ist die numerische Steuervorrichtung 3 an dem Schneidprozess M durch das Antriebssystem 20 und die mechanische Dynamik beteiligt. Darüber hinaus verschwindet bei dem Schneidprozess zwischen dem Werkzeug 23 und dem Werkstück W der Bearbeitungspunkt, an dem die Schnittkraft Fc erzeugt wird, zusammen mit der Erzeugung von Spänen und ist es somit nicht möglich, die Schnittkraft Fc durch Installieren eines Sensors direkt zu erkennen. Daher ist es, um ein Schneiden, einschließlich der Bewegung des Werkzeugs 23 und des Werkstücks W, genau zu bewerten, notwendig, eine Simulation durchzuführen, die den Betrieb des Spindelantriebssystems 21 und des Vorschubantriebssystems 22 zusätzlich zu dem Schneidprozess M und der mechanischen Dynamik beinhaltet.As described above, in cutting, the cutting process M, the mechanical dynamics and the drive system 20 form a coupled system, and the numerical control device 3 participates in the cutting process M through the drive system 20 and the mechanical dynamics. In addition, in the cutting process, between the tool 23 and the workpiece W, the machining point at which the cutting force F c is generated along with the generation of chips and thus it is not possible to directly detect the cutting force F c by installing a sensor. Therefore, in order to accurately evaluate cutting including the movement of the tool 23 and the workpiece W, it is necessary to perform a simulation that includes the operation of the spindle drive system 21 and the feed drive system 22 in addition to the cutting process M and the mechanical dynamics.

Als Nächstes werden konkrete Beispiele für das Schneidprozessmodell 321, das Dynamikmodell 322, das Spindelantriebssteuermodell 323 und das Vorschubantriebssteuermodell 324, die in der Speichereinheit 32 gespeichert sind, beschrieben. Diese Modelle werden verwendet, wenn die später beschriebene gekoppelte Simulationseinheit 33 eine Simulation durchführt.Next, concrete examples of the cutting process model 321, the dynamic model 322, the spindle drive control model 323, and the feed drive control model 324 stored in the storage unit 32 will be described. These models are used when the coupled simulation unit 33 described later performs simulation.

Das Schneidprozessmodell 321 gibt eine Schneideigenschaft zwischen dem Werkzeug 23 und dem Werkstück W wieder. Konkreter ist das Schneidprozessmodell 321 ein mathematisches Modell, das die Schnittkraft Fc ausdrückt, die gemäß der Positionsbeziehung zwischen dem Werkzeug 23 und dem Werkstück W erzeugt wird. Die nachfolgende Formel (1) ist ein Beispiel für eine Formel, welche die Schnittkraft Fc ausdrückt, die erzeugt wird, während die Schnittkante des Werkzeugs 23 mit dem Werkstück W in Kontakt steht. Die Formel (1) gibt die exakte Schnittkraft ΔFc pro Querschnitt des Werkzeugs 23 unter Verwendung des spezifischen Schnittwiderstands Kc, des Kantenkraftkoeffizienten Ke, der exakten Dicke Δa des Querschnitts des Werkzeugs 23, der ungeschnittenen Spandicke h des Werkstücks W, des Drehwinkel φ des Werkzeugs 23 und der Zeit t wieder. Die durch Schneiden mit dem Werkzeug 23 erzeugte Gesamtschnittkraft Fc kann berechnet werden, indem die durch die Formel (1) angegebene exakte Schnittkraft ΔFc in der axiale Richtung des Werkzeugs 23 addiert wird. Die ungeschnittene Spandicke h des Werkstücks W ist der Abstand zwischen der vorherigen bearbeiteten Oberfläche und der aktuellen Bearbeitungszielfläche in der radialen Richtung des Werkzeugs 23. Die Formel (1) gibt an, dass die Schnittkraft Fc durch die Summe einer Kraft proportional zu der ungeschnittenen Spandicke h und einem bestimmten Kraftbetrag berechnet werden kann, der als Kantenkraft bezeichnet wird.
Formel 1: Δ F c = Δ a ( K c h ( φ ( t ) ) + K e )

Figure DE112021008301T5_0001
The cutting process model 321 represents a cutting characteristic between the tool 23 and the workpiece W. More specifically, the cutting process model 321 is a mathematical model that expresses the cutting force F c generated according to the positional relationship between the tool 23 and the workpiece W. The following formula (1) is an example of a formula that expresses the cutting force F c generated while the cutting edge of the tool 23 is in contact with the workpiece W. The formula (1) represents the exact cutting force ΔF c per cross section of the tool 23 using the specific cutting resistance K c , the edge force coefficient K e , the exact thickness Δa of the cross section of the tool 23, the uncut chip thickness h of the workpiece W, the rotation angle φ of the tool 23, and the time t. The total cutting force F c generated by cutting with the tool 23 can be calculated by adding the exact cutting force ΔF c given by the formula (1) in the axial direction of the tool 23. The uncut chip thickness h of the workpiece W is the distance between the previous machined surface and the current machining target surface in the radial direction of the tool 23. The formula (1) indicates that the cutting force F c can be calculated by the sum of a force proportional to the uncut chip thickness h and a certain amount of force, which is called the edge force.
Formula 1: Δ F c = Δ a ( K c H ( φ ( t ) ) + K e )
Figure DE112021008301T5_0001

Die ungeschnittene Spandicke h kann durch die untenstehende Formel (2) ausgedrückt werden. Die ungeschnittene Spandicke h wird durch die Summe aus einer Komponente, welche die ungeschnittene Nennspandicke wiedergibt, die durch den Vorschubbetrag c des Werkzeugs 23 pro Zahn bestimmt wird, einer Komponente, welche die relative Schwingung des Werkzeugs 23 und des Werkstücks W wiedergibt, und einer Komponente, welche die Zunahme oder Abnahme der ungeschnittenen Spandicke aufgrund einer Differenz im Drehradius von Schnittkanten des Werkzeugs 23 wiedergibt, wenn das Werkzeug 23 eine Vielzahl von Schnittkanten beinhaltet, wiedergegeben. Die Komponente, welche die relative Schwingung des Werkzeugs 23 und des Werkstücks W wiedergibt, wird durch die Differenz zwischen der radialen Komponente ur des Werkzeugs 23 der relativen Verschiebung zwischen dem Werkzeug 23 und dem Werkstück W zum Zeitpunkt des aktuellen Schneidens der Bearbeitungszielfläche und der radialen Komponente wr des Werkzeugs der relativen Verschiebung zwischen dem Werkzeug 23 und dem Werkstück W, die auf die vorherige bearbeitete Oberfläche übertragen wurde, wiedergegeben. Die Komponente, welche die Zunahme oder Abnahme der ungeschnittenen Spandicke aufgrund der Differenz des Drehradius der Schnittkanten wiedergibt, wird durch den Drehradiuskorrekturbetrag Δe der Schnittkante des Werkzeugs 23 wiedergegeben.
Formel 2: h ( φ ( t ) ) = c   s i n φ ( t ) + { u r ( φ , t ) w r ( φ , t ) } + Δ e ( φ , t , )

Figure DE112021008301T5_0002
The uncut chip thickness h can be expressed by the formula (2) below. The uncut chip thickness h is represented by the sum of a component representing the nominal uncut chip thickness determined by the feed amount c of the tool 23 per tooth, a component representing the relative vibration of the tool 23 and the workpiece W, and a component representing the increase or decrease of the uncut chip thickness due to a difference in the turning radius of cutting edges of the tool 23 when the tool 23 includes a plurality of cutting edges. The component representing the relative vibration of the tool 23 and the workpiece W is represented by the difference between the tool 23 radial component u r of the relative displacement between the tool 23 and the workpiece W at the time of current cutting of the machining target surface and the tool radial component w r of the relative displacement between the tool 23 and the workpiece W transferred to the previous machined surface. The component representing the increase or decrease of the uncut chip thickness due to the difference in the turning radius of the cutting edges is represented by the turning radius correction amount Δe of the cutting edge of the tool 23.
Formula 2: H ( φ ( t ) ) = c s i n φ ( t ) + { u r ( φ , t ) w r ( φ , t ) } + Δ e ( φ , t , )
Figure DE112021008301T5_0002

Formel (1) ist ein Beispiel für das Schneidprozessmodell 321 und das Schneidprozessmodell 321 ist nicht auf das Vorstehende beschränkt. Ein Beispiel hierfür ist ein Modell, das die Schnittkraft Fc unter Verwendung von Voxeln berechnet, welche die Form des Werkzeugs 23 und die Form des Werkstücks W ausdrücken.Formula (1) is an example of the cutting process model 321, and the cutting process model 321 is not limited to the above. An example is a model that calculates the cutting force F c using voxels expressing the shape of the tool 23 and the shape of the workpiece W.

Das Dynamikmodell 322 gibt eine dynamische Eigenschaft einer Struktur wieder, die während des Betriebs der Werkzeugmaschine 2 Schwingung erzeugt. Insbesondere ist das Dynamikmodell 322 ein mathematisches Modell, das zeigt, dass eine Struktur dynamisch verschoben wird, wenn eine dynamische Kraft auf die Struktur ausgeübt wird. Beispielsweise kann das Verhalten des Werkstücks W, wenn die Schnittkraft Fc auf das Werkstück W, das mit dem Antriebssystem 20 verbunden ist, ausgeübt wird, durch die untenstehende Formel (3) wiedergegeben werden.
Formel 3: { F c = m u ¨ + C ( u ˙ v ˙ ) + K ( u v ) F d =   + C ( u ˙ v ˙ ) + K ( u v )

Figure DE112021008301T5_0003
The dynamic model 322 represents a dynamic property of a structure that generates vibration during operation of the machine tool 2. Specifically, the dynamic model 322 is a mathematical model that shows that a structure is dynamically displaced when a dynamic force is applied to the structure. For example, the behavior of the workpiece W when the cutting force F c is applied to the workpiece W connected to the drive system 20 can be represented by the formula (3) below.
Formula 3: { F c = m u ¨ + C ( u ˙ v ˙ ) + K ( u v ) F d = + C ( u ˙ v ˙ ) + K ( u v )
Figure DE112021008301T5_0003

Formel (3) ist ein Beispiel für eine Formel, welche die Schwingung des Werkstücks W ausdrückt. Die zwischen dem Werkzeug 23 und dem Werkstück W erzeugte Schnittkraft Fc wird unter Verwendung der relativen Verschiebung u zwischen dem Werkzeug 23 und dem Werkstück W, der relativen Verschiebung v des Antriebssystems 20, der äquivalenten Masse m des Werkstücks W, des äquivalenten Viskositätskoeffizienten C des Werkstücks W und der äquivalenten Federkonstante K des Werkstücks W wiedergegeben. Formel (3) gibt die mechanische Dynamik wieder, bei der die Schnittkraft Fc als Störkraft Fd durch das Werkstück W auf das Antriebssystem 20 übertragen wird.Formula (3) is an example of a formula expressing the vibration of the workpiece W. The cutting force F c generated between the tool 23 and the workpiece W is calculated using the relative displacement u between the tool 23 and the workpiece W, the relative displacement v of the drive system 20, the equivalent mass m of the workpiece W, the equivalent viscosity coefficient C of the workpiece W and the equivalent spring constant K of the workpiece W. Formula (3) represents the mechanical dynamics in which the cutting force F c is transmitted as a disturbance force F d through the workpiece W to the drive system 20.

Es ist zu beachten, dass das Dynamikmodell 322 nicht auf die Formel (3) beschränkt ist. Ein Beispiel ist ein Modell, bei dem die Form des Werkstücks W durch Voxel ausgedrückt wird und die Verschiebung, wenn eine Struktur schwingt, unter Verwendung einer Analyse mittels der Finite-Elemente-Methode (FEM) berechnet wird. Obwohl das hier beschriebene Dynamikmodell 322 nur die Schwingung des Werkstücks W ausdrückt, kann das Dynamikmodell 322 die Schwingung des Werkzeugs 23 oder einer anderen Struktur anstelle des Werkstücks W ausdrücken. Alternativ kann das Dynamikmodell 322 die Schwingungen sowohl des Werkzeugs 23 als auch des Werkstücks W ausdrücken.Note that the dynamic model 322 is not limited to the formula (3). An example is a model in which the shape of the workpiece W is expressed by voxels and the displacement when a structure vibrates is calculated using a finite element method (FEM) analysis. Although the dynamic model 322 described here only expresses the vibration of the workpiece W, the dynamic model 322 may express the vibration of the tool 23 or another structure instead of the workpiece W. Alternatively, the dynamic model 322 may express the vibrations of both the tool 23 and the workpiece W.

Das Spindelantriebssteuermodell 323 ist ein mathematisches Modell, welches das in der Werkzeugmaschine 2 enthaltene Spindelantriebssystem 21 und eine Spindelantriebssteuerung, die in der Antriebssteuereinheit 35 der numerischen Steuervorrichtung 3 vorhanden ist und das Spindelantriebssystem 21 steuert, wiedergibt. 11 ist eine Darstellung zur Erläuterung eines Beispiels für das Spindelantriebssteuermodell 323 in 1. Das Spindelantriebssteuermodell 323 ist ein mathematisches Modell für den Fall, dass die Position und Geschwindigkeit des Spindelantriebssystems 21 durch die Positionssteuerung und die Geschwindigkeitssteuerung, die in der Spindelantriebssteuerung enthalten sind, in einer Situation gesteuert werden, in der das Störmoment Td, das durch das Schnittmoment Tc verursacht wird, auf das Spindelantriebssystem 21 übertragen wird, wenn der Spindeldrehwinkelbefehl erteilt wird. Dieses mathematische Modell gibt den Ist-Spindeldrehwinkel θ als Reaktion auf den in die Steuerung eingegebenen Spindeldrehwinkelbefehl θr aus. Hierbei sind Kpp1, Kvp1 und Kvi1 Steuerverstärkungen, bei denen es sich um die proportionale Verstärkung Kpp1 für die Positionssteuerung, die proportionale Verstärkung Kvp1 für die Geschwindigkeitssteuerung und die integrale Verstärkung Kvi1 für die Geschwindigkeitssteuerung handelt. P1(s) ist eine Übertragungsfunktion von Drehmoment zu Position für das gesamte Spindelantriebssystem 21, wobei s eine komplexe Zahl ist. P1(s) kann anhand der tatsächlichen Reaktion des Spindelantriebssystems 21 durch Verwendung eines bekannten Systemidentifizierungsverfahrens identifiziert werden. Obwohl das Spindelantriebssystem 21 hier als ein System mit einfacher Trägheit modelliert ist, kann das Spindelantriebssystem 21 als ein System mit mehrfacher Trägheit modelliert werden. Darüber hinaus kann eine Vorwärtskopplungssteuerung zu der Spindelantriebssteuerung hinzugefügt werden.The spindle drive control model 323 is a mathematical model representing the spindle drive system 21 included in the machine tool 2 and a spindle drive controller included in the drive control unit 35 of the numerical control device 3 and controlling the spindle drive system 21. 11 is a diagram for explaining an example of the spindle drive control model 323 in 1 . The spindle drive control model 323 is a mathematical model for the case where the position and speed of the spindle drive system 21 are controlled by the position controller and the speed controller included in the spindle drive controller in a situation where the disturbance torque T d caused by the cutting torque T c is transmitted to the spindle drive system 21 when the spindle rotation angle command is issued. This mathematical model outputs the actual spindle rotation angle θ in response to the spindle rotation angle command θ r input to the controller . Here, K pp1 , K vp1 , and K vi1 are control gains, which are the proportional gain K pp1 for position control, the proportional gain K vp1 for speed control, and the integral gain K vi1 for speed control, respectively. P 1 (s) is a torque-to-position transfer function for the entire spindle drive system 21, where s is a complex number. P 1 (s) can be identified from the actual response of the spindle drive system 21 by using a known system identification method. Although the spindle drive system 21 is modeled here as a single inertia system, the spindle drive system 21 can be modeled as a multiple inertia system. In addition, feedforward control can be added to the spindle drive control.

Das Vorschubantriebssteuermodell 324 ist ein mathematisches Modell, welches das Vorschubantriebssystem 22 der Werkzeugmaschine 2 und eine Vorschubantriebssteuerung, die in der Antriebssteuereinheit 35 der numerischen Steuervorrichtung 3 vorhanden ist, wiedergibt. 12 ist eine Darstellung zur Erläuterung eines Beispiels für das Vorschubantriebssteuermodell 324 in 1. Das Vorschubantriebssteuermodell 324 ist ein mathematisches Modell für den Fall, dass die Position und Geschwindigkeit des Vorschubantriebssystems 22 durch die Positionssteuerung und die Geschwindigkeitssteuerung, die in der Vorschubantriebssteuerung enthalten sind, in einer Situation gesteuert werden, in der die Störkraft Fd, die durch die Schnittkraft Fc verursacht wird, auf das Vorschubantriebssystem 21 übertragen wird, wenn der Positionsbefehl für das Vorschubantriebssystem erteilt wird. Als Reaktion auf die Eingabe des Positionsbefehls xr für das Vorschubantriebssystem gibt das mathematische Modell die Ist-Position x des Vorschubantriebssystems aus. Hierbei sind Kpp2, Kvp2 und Kvi2 Steuerverstärkungen, bei denen es sich um die proportionale Verstärkung Kpp2 für die Positionssteuerung, die proportionale Verstärkung Kvp2 für die Geschwindigkeitssteuerung bzw. die integrale Verstärkung Kvi2 für die Geschwindigkeitssteuerung handelt. P2(s) ist eine Übertragungsfunktion von Kraft zu Position für das gesamte Vorschubantriebssystem 22, wobei s eine komplexe Zahl ist. P2(s) kann anhand der tatsächlichen Reaktion des Vorschubantriebssystems 22 durch Verwendung eines bekannten Systemidentifizierungsverfahrens identifiziert werden. Obwohl das Vorschubantriebssystem 22 hier als ein System mit einfacher Trägheit modelliert ist, kann das Vorschubantriebssystem 22 als ein System mit mehrfacher Trägheit modelliert werden. Darüber hinaus kann eine Vorwärtskopplungssteuerung zu der Vorschubantriebssteuerung hinzugefügt werden.The feed drive control model 324 is a mathematical model representing the feed drive system 22 of the machine tool 2 and a feed drive controller included in the drive control unit 35 of the numerical controller 3. 12 is a diagram for explaining an example of the feed drive control model 324 in 1 . The feed drive control model 324 is a mathematical model for the case where the position and speed of the feed drive system 22 are controlled by the position control and the speed control included in the feed drive control in a situation where the disturbance force F d caused by the cutting force F c is transmitted to the feed drive system 21 when the position command for the feed drive system is issued. In response to the input of the position command x r for the feed drive system, the mathematical model outputs the actual position x of the feed drive system. Here, K pp2 , K vp2 and K vi2 are control gains, which are the proportional gain K pp2 for position control, the proportional gain K vp2 for speed control and the integral gain K vi2 for speed control, respectively. P 2 (s) is a force to position transfer function for the entire feed drive system 22, where s is a complex number. P 2 (s) can be identified from the actual response of the feed drive system 22 by using a known system identification method. Although the feed drive system 22 is modeled here as a single inertia system, the feed drive system 22 can be modeled as a multiple inertia system. In addition, feedforward control can be added to the feed drive control.

Die gekoppelte Simulationseinheit 33 simuliert eine Bearbeitung, bei der jeder einer Vielzahl von Betriebsbefehlen, die von der Befehlserzeugungseinheit 31 ausgegeben wird, der Werkzeugmaschine 2 erteilt wird, und berechnet Prozessinformationen, die das Simulationsergebnis angeben. Die Prozessinformationen beinhalten Parameter, die einen Vergleich von Bearbeitungsfehlern ermöglichen, und beinhalten zum Beispiel die ungeschnittene Spandicke des Werkstücks W, die Schnittkraft Fc, die Störkraft Fd und dergleichen. Hierbei ist die ungeschnittene Spandicke des Werkstücks W zum Beispiel die ungeschnittene Spandicke des Werkstücks W pro Zahn des Werkzeugs 23. Die gekoppelte Simulationseinheit 33 kann die Bearbeitung simulieren, die durch die Werkzeugmaschine 2 durchgeführt wird, wobei der Einfluss des Betriebs des Antriebssystems 20, welches das Spindelantriebssystem 21 und das Vorschubantriebssystem 22 beinhaltet, und der Einfluss der Dynamik der Struktur, die während des Betriebs der Werkzeugmaschine 2 Schwingung bei dem Schneidprozess M erzeugt, widergespiegelt werden. Die gekoppelte Simulationseinheit 33 führt die Anzahl von Simulationen durch, die gleich der Anzahl von Betriebsbefehlen ist, die durch die Befehlserzeugungseinheit 31 erzeugt werden, und erzeugt die Anzahl von Prozessinformationen, die Simulationsergebnisse angeben, die gleich der Anzahl von Betriebsfehlern sind. Die gekoppelte Simulationseinheit 33 gibt die Vielzahl von erzeugten Prozessinformationen an die Prozessbewertungseinheit 34 aus.The coupled simulation unit 33 simulates machining in which each of a plurality of operation commands output from the command generation unit 31 is given to the machine tool 2, and calculates process information indicating the simulation result. The process information includes parameters that enable comparison of machining errors, and includes, for example, the uncut chip thickness of the workpiece W, the cutting force F c , the disturbance force F d and the like. Here, the uncut chip thickness of the workpiece W is For example, the uncut chip thickness of the workpiece W per tooth of the tool 23. The coupled simulation unit 33 can simulate the machining performed by the machine tool 2, reflecting the influence of the operation of the drive system 20 including the spindle drive system 21 and the feed drive system 22, and the influence of the dynamics of the structure that generates vibration in the cutting process M during the operation of the machine tool 2. The coupled simulation unit 33 performs the number of simulations equal to the number of operation commands generated by the command generation unit 31, and generates the number of process information indicating simulation results equal to the number of operation errors. The coupled simulation unit 33 outputs the plurality of generated process information to the process evaluation unit 34.

Die gekoppelte Simulationseinheit 33 erteilt den von der Befehlserzeugungseinheit 31 ausgegebenen Betriebsbefehl unter der vorgegebenen Schneidbedingung an das Schneidprozessmodell 321, das Dynamikmodell 322, das Spindelantriebssteuermodell 323 und das Vorschubantriebssteuermodell 324, wodurch die gekoppelte Simulationseinheit 33 eine Bearbeitung simuliert, die durch die Werkzeugmaschine 2 durchgeführt wird, und Prozessinformationen, die das Simulationsergebnis angeben, berechnet. Dabei kann die gekoppelte Simulationseinheit 33 das Schneidprozessmodell 321, das Dynamikmodell 322, das Spindelantriebssteuermodell 323, das Vorschubantriebssteuermodell 324 und die Schneidbedingungsinformationen 325 verwenden, die in der Speichereinheit 32 gespeichert sind. Wenn die in der Speichereinheit 32 gespeicherten Schneidbedingungsinformationen 325 verwendet werden, ist die vorgegebene Schneidbedingung die Schneidbedingung, die durch die Schneidbedingungsinformationen 325 angegeben wird.The coupled simulation unit 33 issues the operation command under the predetermined cutting condition output from the command generation unit 31 to the cutting process model 321, the dynamic model 322, the spindle drive control model 323, and the feed drive control model 324, whereby the coupled simulation unit 33 simulates machining performed by the machine tool 2 and calculates process information indicating the simulation result. At this time, the coupled simulation unit 33 may use the cutting process model 321, the dynamic model 322, the spindle drive control model 323, the feed drive control model 324, and the cutting condition information 325 stored in the storage unit 32. When the cutting condition information 325 stored in the storage unit 32 is used, the predetermined cutting condition is the cutting condition indicated by the cutting condition information 325.

Die gekoppelte Simulationseinheit 33 führt eine Simulation aus, bei welcher der Schneidprozess M zwischen dem Werkzeug 23 und dem Werkstück W, die mechanische Dynamik der Struktur der Werkzeugmaschine 2, der Betrieb des Spindelantriebssystems 21 und der Betrieb des Vorschubantriebssystems 22 gekoppelt sind. Auf Grundlage der in den 7 bis 10 veranschaulichten Beziehungen führt die gekoppelte Simulationseinheit 33 eine gekoppelte Simulation in der Situation durch, dass der Basisbetriebsbefehl und der korrigierte Betriebsbefehl jeweils einem gekoppelten Modell unter der in den Schneidbedingungsinformationen 325 beschriebenen Schneidbedingung erteilt werden, und berechnet die gekoppelte Simulationseinheit 33 die Zeitreiheninformationen und die Frequenzkomponenteninformationen davon. Das gekoppelte Modell ist ein Modell, das durch Kombinieren des Schneidprozessmodells 321, des Dynamikmodells 322, des Spindelantriebssteuermodells 323 und des Vorschubantriebssteuermodells 324 erhalten wird. Die gekoppelte Simulation ist eine Simulation des Antriebssignals, des Spindelantriebssystemwinkels θ1, der Antriebssystemverschiebung r1, des Werkzeugwinkels θ2, der Strukturverschiebung r2 des Vorschubsystems, der ungeschnittenen Spandicke h des Werkstücks, des Schnittmoments Tc, der Schnittkraft Fc, des Störmoments Td, der Störkraft Fd und des Rückkopplungssignals.The coupled simulation unit 33 carries out a simulation in which the cutting process M between the tool 23 and the workpiece W, the mechanical dynamics of the structure of the machine tool 2, the operation of the spindle drive system 21 and the operation of the feed drive system 22 are coupled. Based on the 7 to 10 In the relationships illustrated, the coupled simulation unit 33 performs a coupled simulation in the situation that the basic operation command and the corrected operation command are each given to a coupled model under the cutting condition described in the cutting condition information 325, and the coupled simulation unit 33 calculates the time series information and the frequency component information thereof. The coupled model is a model obtained by combining the cutting process model 321, the dynamic model 322, the spindle drive control model 323, and the feed drive control model 324. The coupled simulation is a simulation of the drive signal, the spindle drive system angle θ1, the drive system displacement r1, the tool angle θ2, the structural displacement r2 of the feed system, the uncut chip thickness h of the workpiece, the cutting torque T c , the cutting force F c , the disturbance torque T d , the disturbance force F d and the feedback signal.

Die Prozessbewertungseinheit 34 bewertet die Größe des Bearbeitungsfehlers durch die Verwendung jedes der Vielzahl von Betriebsbefehlen auf Grundlage der Vielzahl von Prozessinformationen, die von der gekoppelten Simulationseinheit 33 ausgegeben wird, und wählt einen Betriebsbefehl, welcher der Werkzeugmaschine 2 zu erteilen ist, aus dem Basisbetriebsbefehl und dem korrigierten Betriebsbefehl aus, die durch die Befehlserzeugungseinheit 31 erzeugt werden. Die Prozessbewertungseinheit 34 gibt ein Befehlsauswahlsignal, das den ausgewählten Betriebsbefehl angibt, an die Antriebssteuereinheit 35 aus.The process evaluation unit 34 evaluates the amount of machining error by using each of the plurality of operation commands based on the plurality of process information output from the coupled simulation unit 33, and selects an operation command to be given to the machine tool 2 from the basic operation command and the corrected operation command generated by the command generation unit 31. The process evaluation unit 34 outputs a command selection signal indicating the selected operation command to the drive control unit 35.

Nachfolgend wird ein Beispiel für ein Bewertungsverfahren in der Prozessbewertungseinheit 34 beschrieben. Die Prozessbewertungseinheit 34 kann die Größe des Bearbeitungsfehlers auf Grundlage der zeitlichen Änderung der ungeschnittenen Spandicke h des Werkstücks W bewerten. Die Prozessbewertungseinheit 34 bewertet, dass je kleiner die Zunahme der ungeschnittenen Spandicke h des Werkstücks W ist, desto kleiner die Größe des Bearbeitungsfehlers ist. Die Prozessbewertungseinheit 34 kann einen Betriebsbefehl, der die Zunahme der ungeschnittenen Spandicke h minimiert, als der Werkzeugmaschine 2 zu erteilenden Betriebsbefehl auswählen. Die ungeschnittene Spandicke h gibt die Schwingung zwischen dem Werkzeug 23 und dem Werkstück W wieder. Wenn eine als Ratterschwingung bezeichnete Schwingung zwischen dem Werkzeug 23 und dem Werkstück W auftritt, erhöht sich die Amplitude mit Ablauf der Zeit, was zu einer Verschlechterung des Bearbeitungsfehlers führt. Daher kann die Prozessbewertungseinheit 34 einen Betriebsbefehl auswählen, der die Schwingung zwischen dem Werkzeug 23 und dem Werkstück W minimiert, indem die zeitliche Änderung der ungeschnittenen Spandicke h bewertet wird. Der Betriebsbefehl, der die Schwingung zwischen dem Werkzeug 23 und dem Werkstück W minimiert, kann den Bearbeitungsfehler minimieren, der durch die Schwingung zwischen dem Werkzeug 23 und dem Werkstück W verursacht wird.An example of an evaluation method in the process evaluation unit 34 will be described below. The process evaluation unit 34 may evaluate the magnitude of the machining error based on the temporal change of the uncut chip thickness h of the workpiece W. The process evaluation unit 34 evaluates that the smaller the increase in the uncut chip thickness h of the workpiece W, the smaller the magnitude of the machining error. The process evaluation unit 34 may select an operation command that minimizes the increase in the uncut chip thickness h as the operation command to be given to the machine tool 2. The uncut chip thickness h represents the vibration between the tool 23 and the workpiece W. When vibration called chatter vibration occurs between the tool 23 and the workpiece W, the amplitude increases with the passage of time, resulting in deterioration of the machining error. Therefore, the process evaluation unit 34 can select an operation command that minimizes the vibration between the tool 23 and the workpiece W by evaluating the temporal change of the uncut chip thickness h. The operation command that minimizes the vibration between the tool 23 and the workpiece W can minimize the machining error caused by the vibration between the tool 23 and the workpiece W.

Die Prozessbewertungseinheit 34 kann zudem die Größe des Bearbeitungsfehlers auf Grundlage der maximalen Amplitude der Störkraft Fd oder des Störmoments Td bewerten, die erhalten werden, wenn jeder Betriebsbefehl ausgeführt wird. Die Prozessbewertungseinheit 34 bewertet, dass je kleiner die maximale Amplitude der Störkraft Fd oder des Störmoments Td ist, desto kleiner die Größe des Bearbeitungsfehlers ist. Die Prozessbewertungseinheit 34 kann einen Betriebsbefehl, der die maximale Amplitude minimiert, als der Werkzeugmaschine 2 zu erteilender Betriebsbefehl auswählen. Je kleiner die maximale Amplitude der Störkraft Fd oder des Störmoments Td ist, desto kleiner ist die Schwingung des Antriebssystems 20, die durch die Störkraft Fd oder das Störmoment Td verursacht wird. Daher ist es durch Auswählen des Betriebsbefehls, der die maximale Amplitude der Störkraft Fd oder des Störmoments Td minimiert, möglich, den Bearbeitungsfehler zu minimieren, der durch die Schwingung des Antriebssystems 20 verursacht wird.The process evaluation unit 34 may also evaluate the magnitude of the machining error based on the maximum amplitude of the disturbance force F d or the disturbance torque T d obtained when each operation command is executed. The process evaluation unit 34 evaluates that the smaller the maximum amplitude of the disturbance force F d or the disturbance torque T d , the smaller the magnitude of the machining error. The process evaluation unit 34 may select an operation command that minimizes the maximum amplitude as the operation command to be given to the machine tool 2. The smaller the maximum amplitude of the disturbance force F d or the disturbance torque T d , the smaller the vibration of the drive system 20 caused by the disturbance force F d or the disturbance torque T d . Therefore, by selecting the operation command that minimizes the maximum amplitude of the disturbance force F d or the disturbance torque T d , it is possible to minimize the machining error caused by the vibration of the drive system 20.

Darüber hinaus kann die Prozessbewertungseinheit 34 die Zeitwellenform der von der gekoppelten Simulationseinheit 33 berechneten Prozessinformationen mit einem voreingestellten Zielprofil vergleichen und die Größe des Bearbeitungsfehlers auf Grundlage der Abweichung von dem Zielprofil bewerten. Das Zielprofil ist ein Profil, bei dem der Bearbeitungsfehler kleiner oder gleich einem zulässigen Wert wird, und wird zum Beispiel im Voraus in der Prozessbewertungseinheit 34 eingestellt. Die Prozessbewertungseinheit 34 bewertet, dass je kleiner die Abweichung von dem Zielprofil ist, desto kleiner die Größe des Bearbeitungsfehlers ist. Die Prozessbewertungseinheit 34 kann die Abweichung von dem Zielprofil auf Grundlage einer Verlustfunktion, wie etwa einer Residuenquadratsumme, bewerten oder kann die Abweichung von dem Zielprofil auf Grundlage eines Verfahrens zum maschinellen Lernen, wie etwa musterbasierte Suche, bewerten. Die Prozessbewertungseinheit 34 kann den Bearbeitungsfehler durch Auswählen eines Betriebsbefehls minimieren, der die Abweichung von dem Zielprofil minimiert.In addition, the process evaluation unit 34 may compare the time waveform of the process information calculated by the coupled simulation unit 33 with a preset target profile and evaluate the magnitude of the machining error based on the deviation from the target profile. The target profile is a profile in which the machining error becomes less than or equal to an allowable value, and is set in advance in the process evaluation unit 34, for example. The process evaluation unit 34 evaluates that the smaller the deviation from the target profile, the smaller the magnitude of the machining error. The process evaluation unit 34 may evaluate the deviation from the target profile based on a loss function such as residual sum of squares, or may evaluate the deviation from the target profile based on a machine learning method such as pattern-based search. The process evaluation unit 34 may minimize the machining error by selecting an operation command that minimizes the deviation from the target profile.

Die Prozessbewertungseinheit 34 kann die Größe des Bearbeitungsfehlers unter Verwendung eines beliebigen der vorstehend beschriebenen Vielzahl von Bewertungsverfahren bewerten oder kann eine Kombination der vorstehend beschriebenen Vielzahl von Bewertungsverfahren verwenden.The process evaluation unit 34 may evaluate the amount of machining error using any of the above-described variety of evaluation methods, or may use a combination of the above-described variety of evaluation methods.

Die Antriebssteuereinheit 35 steuert das Antriebssystem 20 der Werkzeugmaschine 2 auf Grundlage des Betriebsbefehls, der durch das von der Prozessbewertungseinheit 34 ausgegebene Befehlsauswahlsignal aus der durch die Befehlserzeugungseinheit 31 erzeugten Vielzahl von Betriebsbefehlen angegeben wird. Die Antriebssteuereinheit 35 beinhaltet in sich die Spindelantriebssteuerung zum Steuern des Spindelantriebssystems 21 und die Vorschubantriebssteuerung zum Steuern des Vorschubantriebssystems 22. Während sie Signale von dem Drehgeber überwacht, der in dem Spindelantriebssystem 21 bereitgestellt ist, gibt die Spindelantriebssteuerung einen Befehl an den Spindelmotor 211 derart aus, dass die Position und Geschwindigkeit des Spindelantriebssystems 21 Beträge aufweisen, die durch den Betriebsbefehl vorgegeben sind. Während sie Signale von dem Drehgeber überwacht, der in dem Vorschubantriebssystem 22 bereitgestellt ist, gibt die Vorschubantriebssteuerung einen Befehl an den Servomotor 221 derart aus, dass die Position und Geschwindigkeit des Vorschubantriebssystems 22 Beträge aufweisen, die durch den Betriebsbefehl vorgegeben sind.The drive control unit 35 controls the drive system 20 of the machine tool 2 based on the operation command indicated by the command selection signal output from the process evaluation unit 34 from the plurality of operation commands generated by the command generation unit 31. The drive control unit 35 includes therein the spindle drive controller for controlling the spindle drive system 21 and the feed drive controller for controlling the feed drive system 22. While monitoring signals from the encoder provided in the spindle drive system 21, the spindle drive controller outputs a command to the spindle motor 211 such that the position and speed of the spindle drive system 21 have amounts specified by the operation command. While monitoring signals from the encoder provided in the feed drive system 22, the feed drive controller outputs a command to the servo motor 221 such that the position and speed of the feed drive system 22 have amounts specified by the operation command.

13 ist ein Ablaufdiagramm zur Erläuterung des Betriebs der in 1 veranschaulichten numerischen Steuervorrichtung 3. Sobald das Bearbeitungssystem 1 mit dem Betrieb beginnt, liest die Befehlserzeugungseinheit 31 der numerischen Steuervorrichtung 3 das numerische Steuerprogramm 4 aus und analysiert das ausgelesene numerische Steuerprogramm 4. Dann erzeugt die Befehlserzeugungseinheit 31: einen Basisbetriebsbefehl zum Veranlassen der Werkzeugmaschine 2, den in dem numerischen Steuerungsprogramm 4 beschriebenen Befehl auszuführen, und einen korrigierten Betriebsbefehl, der durch Korrigieren des Basisbetriebsbefehls erhalten wird (Schritt S101). Nach dem Erzeugen eines Basisbetriebsbefehls und eines oder mehrerer Muster von korrigierten Betriebsbefehlen gibt die Befehlserzeugungseinheit 31 die erzeugten Betriebsbefehle an die gekoppelte Simulationseinheit 33 aus. 13 is a flow chart to explain the operation of the 1 illustrated numerical control device 3. Once the machining system 1 starts operation, the command generation unit 31 of the numerical control device 3 reads out the numerical control program 4 and analyzes the read out numerical control program 4. Then, the command generation unit 31 generates: a basic operation command for causing the machine tool 2 to execute the command described in the numerical control program 4, and a corrected operation command obtained by correcting the basic operation command (step S101). After generating a basic operation command and one or more patterns of corrected operation commands, the command generation unit 31 outputs the generated operation commands to the coupled simulation unit 33.

Die gekoppelte Simulationseinheit 33 führt eine gekoppelte Simulation für jeden der von der Befehlserzeugungseinheit 31 ausgegebenen Betriebsbefehle aus, um eine Vielzahl von Prozessinformationen zu berechnen (Schritt S102). Die gekoppelte Simulationseinheit 33 gibt die berechneten Prozessinformationen an die Prozessbewertungseinheit 34 aus.The coupled simulation unit 33 performs a coupled simulation for each of the operation commands output from the command generation unit 31 to calculate a variety of process information (step S102). The coupled simulation unit 33 outputs the calculated process information to the process evaluation unit 34.

Die Prozessbewertungseinheit 34 vergleicht und bewertet die Vielzahl von Prozessinformationen, bewertet die Größe des Bearbeitungsfehlers bei der Verwendung jedes Betriebsbefehls und wählt einen Betriebsbefehl, welcher der Werkzeugmaschine 2 zu erteilen ist, aus dem Basisbetriebsbefehl und dem korrigierten Betriebsbefehl aus (Schritt S103). Die Prozessbewertungseinheit 34 gibt ein Befehlsauswahlsignal, das den ausgewählten Betriebsbefehl angibt, an die Antriebssteuereinheit 35 aus.The process evaluation unit 34 compares and evaluates the plurality of process information, evaluates the amount of machining error when using each operation command, and selects an operation command to be given to the machine tool 2 from the basic operation command and the corrected operation command (step S103). The process evaluation unit 34 outputs a command selection signal indicating the selected operation command to the drive control unit 35.

Die Antriebssteuereinheit 35 steuert den Betrieb der Werkzeugmaschine 2 unter Verwendung des ausgewählten Betriebsbefehls auf Grundlage des von der Prozessbewertungseinheit 34 ausgegebenen Auswahlsignals (Schritt S104). Die Befehlserzeugungseinheit 31 bestimmt, ob das Auslesen sämtlicher der in dem numerischen Steuerprogramm 4 beschriebenen Befehle abgeschlossen ist (Schritt S105). Als Reaktion darauf, dass bestimmt wird, dass das Auslesen nicht abgeschlossen ist (Schritt S105: Nein), wiederholt die Befehlserzeugungseinheit 31 die Verarbeitung aus Schritt S101. Als Reaktion darauf, dass bestimmt wird, dass das Auslesen abgeschlossen ist (Schritt S105: Ja), beendet das Bearbeitungssystem 1 den Betrieb.The drive control unit 35 controls the operation of the machine tool 2 using of the selected operation command based on the selection signal output from the process evaluation unit 34 (step S104). The command generation unit 31 determines whether the reading of all the commands described in the numerical control program 4 is completed (step S105). In response to determining that the reading is not completed (step S105: No), the command generation unit 31 repeats the processing of step S101. In response to determining that the reading is completed (step S105: Yes), the machining system 1 terminates the operation.

Wie vorstehend beschrieben, berechnet die numerische Steuervorrichtung 3 in dem Bearbeitungssystem 1 gemäß der ersten Ausführungsform Prozessinformationen, die den Einfluss des Betriebs des Antriebssystems 20 und die Dynamik der Struktur widerspiegeln, die während des Betriebs der Werkzeugmaschine 2 Schwingung bei dem Schneidprozess M des Werkstücks W mit dem Werkzeug 23 erzeugt, wobei die Prozessinformationen ein Ergebnis einer Simulation einer Bearbeitung angeben, bei welcher der auf Grundlage des numerischen Steuerprogramms erzeugte Basisbetriebsbefehl und der durch Korrigieren des Basisbetriebsbefehls erhaltene korrigierte Betriebsfehl der Werkzeugmaschine 2 erteilt werden. Dann wählt die numerische Steuervorrichtung 3 auf Grundlage des Bewertungsergebnisses der Prozessinformationen einen Betriebsbefehl aus, welcher der Werkzeugmaschine 2 zu erteilen ist. Daher kann die numerische Steuervorrichtung 3 den Bearbeitungsfehler verringern, auch wenn der Bearbeitungsfehler aufgrund der gegenseitigen Beeinflussung des Schneidprozesses, des Betriebs des Antriebssystems 20 und der mechanischen Dynamik der Struktur, die während des Betriebs der Werkzeugmaschine 2 Schwingung erzeugt, auftritt.As described above, in the machining system 1 according to the first embodiment, the numerical controller 3 calculates process information reflecting the influence of the operation of the drive system 20 and the dynamics of the structure that generates vibration during the operation of the machine tool 2 in the cutting process M of the workpiece W with the tool 23, the process information indicating a result of simulation of machining in which the basic operation command generated based on the numerical control program and the corrected operation error obtained by correcting the basic operation command are given to the machine tool 2. Then, the numerical controller 3 selects an operation command to be given to the machine tool 2 based on the evaluation result of the process information. Therefore, the numerical controller 3 can reduce the machining error even when the machining error occurs due to the mutual influence of the cutting process, the operation of the drive system 20, and the mechanical dynamics of the structure that generates vibration during the operation of the machine tool 2.

Die gekoppelte Simulationseinheit 33 berechnet die Prozessinformationen, wenn der Betriebsbefehl unter einer vorgegebenen Schneidbedingung dem Schneidprozessmodell 321, das eine Schneideigenschaft zwischen dem Werkzeug 23 und dem Werkstück W wiedergibt, dem Dynamikmodell 322, das eine dynamische Eigenschaft der Struktur wiedergibt, die während des Betriebs der Werkzeugmaschine 2 Schwingung erzeugt, dem Spindelantriebssteuermodell 323, welches das Spindelantriebssystem 21 und die das Spindelantriebssystem 21 steuernde Spindelantriebssteuerung wiedergibt, und dem Vorschubantriebssteuermodell 324, welches das Vorschubantriebssystem 22 und die das Vorschubantriebssystem 22 steuernde Vorschubantriebssteuerung wiedergibt, erteilt wird. Durch Durchführen der gekoppelten Simulation unter Verwendung der mathematischen Modelle ist es möglich, den Einfluss des Betriebsbefehls auf den Schneidprozess M durch das Antriebssystem 20 und die mechanische Dynamik genau zu bewerten.The coupled simulation unit 33 calculates the process information when the operation command under a predetermined cutting condition is given to the cutting process model 321 representing a cutting property between the tool 23 and the workpiece W, the dynamics model 322 representing a dynamic property of the structure that generates vibration during the operation of the machine tool 2, the spindle drive control model 323 representing the spindle drive system 21 and the spindle drive controller controlling the spindle drive system 21, and the feed drive control model 324 representing the feed drive system 22 and the feed drive controller controlling the feed drive system 22. By performing the coupled simulation using the mathematical models, it is possible to accurately evaluate the influence of the operation command on the cutting process M by the drive system 20 and the mechanical dynamics.

In der ersten Ausführungsform ist die Speichereinheit 32, in der das Schneidprozessmodell 321, das Dynamikmodell 322, das Spindelantriebssteuermodell 323, das Vorschubantriebssteuermodell 324 und die Schneidbedingungsinformationen 325 gespeichert sind, welche die Schneidbedingungen angeben, in der numerischen Steuervorrichtung 3 bereitgestellt; die Speichereinheit 32 kann jedoch außerhalb der numerischen Steuervorrichtung 3 bereitgestellt sein.In the first embodiment, the storage unit 32 in which the cutting process model 321, the dynamic model 322, the spindle drive control model 323, the feed drive control model 324, and the cutting condition information 325 indicating the cutting conditions are stored is provided in the numerical control device 3; however, the storage unit 32 may be provided outside the numerical control device 3.

Die Befehlserzeugungseinheit 31 kann als korrigierten Betriebsbefehl einen Befehl erzeugen, bei dem der relative Pfad, entlang dessen sich das Werkzeug 23 in Bezug auf das Werkstück W bewegt, dem des Basisbetriebsbefehls entspricht und der Vorschubbetrag oder die ungeschnittene Spandicke h des Werkstücks W pro Zahn geändert ist. Beispielsweise kann die Befehlserzeugungseinheit 31 als den korrigierten Betriebsbefehl einen Befehl einstellen, bei dem die Spindeldrehzahl und/oder die Vorschubrate des Basisbetriebsbefehls gemäß dem Vorschubbetrag oder der ungeschnittenen Spandicke h des Werkstücks W pro Zahn geändert ist. Konkret kann die Befehlserzeugungseinheit 31 einen korrigierten Betriebsbefehl durch Überlagern einer vorbestimmten Profilvariation auf die Spindeldrehzahl und/oder die Vorschubrate des Basisbetriebsbefehls erzeugen. Durch Erzeugen des korrigierten Betriebsbefehls auf diese Weise ist es möglich, den Betriebsbefehl zu erzeugen, der den Bearbeitungsfehler verringert, ohne die Form des Werkstücks W zu ändern.The command generation unit 31 may generate, as the corrected operation command, a command in which the relative path along which the tool 23 moves with respect to the workpiece W is the same as that of the basic operation command and the feed amount or the uncut chip thickness h of the workpiece W per tooth is changed. For example, the command generation unit 31 may set, as the corrected operation command, a command in which the spindle speed and/or the feed rate of the basic operation command is changed according to the feed amount or the uncut chip thickness h of the workpiece W per tooth. Concretely, the command generation unit 31 may generate a corrected operation command by superimposing a predetermined profile variation on the spindle speed and/or the feed rate of the basic operation command. By generating the corrected operation command in this way, it is possible to generate the operation command that reduces the machining error without changing the shape of the workpiece W.

Die Speichereinheit 32 kann unterschiedliche Modelle und Schneidbedingungen je nach dem in dem numerischen Steuerprogramm 4 beschriebenen Schneidprozess speichern. Die gekoppelte Simulationseinheit 33 kann eine Simulation unter Verwendung unterschiedlicher Modelle und Schneidbedingungen je nach dem Schneidprozess durchführen. In der ersten Ausführungsform beinhaltet die Werkzeugmaschine 2 ein Spindelantriebssystem 21 und ein oder mehrere Vorschubantriebssysteme 22, jedoch kann die Werkzeugmaschine 2 eine Vielzahl von Spindelantriebssystemen 21 beinhalten. Selbst wenn die Werkzeugmaschine 2 eine Vielzahl von Spindelantriebssystemen 21 beinhaltet, kann der in 13 veranschaulichte Betrieb ähnlich durchgeführt werden.The storage unit 32 can store different models and cutting conditions depending on the cutting process described in the numerical control program 4. The coupled simulation unit 33 can perform simulation using different models and cutting conditions depending on the cutting process. In the first embodiment, the machine tool 2 includes a spindle drive system 21 and one or more feed drive systems 22, but the machine tool 2 may include a plurality of spindle drive systems 21. Even if the machine tool 2 includes a plurality of spindle drive systems 21, the simulation unit 33 described in 13 The operation illustrated can be carried out in a similar way.

In der ersten Ausführungsform wurde die Werkzeugmaschine 2 beschrieben, in der das Werkzeug 23 mit dem Spindelantriebssystem 21 verbunden ist und sich das Werkzeug 23 dreht, wie etwa ein Bearbeitungszentrum. Die Werkzeugmaschine 2 kann jedoch eine Konfiguration aufweisen, bei der das Werkstück W mit dem Spindelantriebssystem 21 verbunden ist und sich das Werkstück W dreht, wie etwa eine numerisch gesteuerte (NC) Drehmaschine. In diesem Fall kann die Befehlserzeugungseinheit 31 durch Ersetzen des Vorschubbetrags pro Zahn durch den Vorschubbetrag pro Drehung der Spindel einen Betriebsbefehl auswählen, der den Bearbeitungsfehler unter einer Vielzahl von Betriebsbefehlen verringert, ohne den durch das numerische Steuerungsprogramm 4 bestimmten Pfad zu ändern.In the first embodiment, the machine tool 2 in which the tool 23 is connected to the spindle drive system 21 and the tool 23 rotates, such as a machining center, has been described. The machine tool 2 however, may have a configuration in which the workpiece W is connected to the spindle drive system 21 and the workpiece W rotates, such as a numerically controlled (NC) lathe. In this case, by replacing the feed amount per tooth with the feed amount per rotation of the spindle, the command generation unit 31 can select an operation command that reduces the machining error among a plurality of operation commands without changing the path determined by the numerical control program 4.

Zweite Ausführungsform.Second embodiment.

14 ist eine Darstellung, die eine funktionelle Konfiguration eines Bearbeitungssystems 1a gemäß der zweiten Ausführungsform veranschaulicht. Funktionelle Komponenten mit den gleichen Funktionen wie in der ersten Ausführungsform sind mit den gleichen Bezugszeichen wie in der ersten Ausführungsform gekennzeichnet und auf redundante Erläuterungen wird verzichtet. Nachfolgend werden hauptsächlich Unterschiede zu der ersten Ausführungsform beschrieben. Das Bearbeitungssystem 1a unterscheidet sich von dem Bearbeitungssystem 1 dadurch, dass ein Betriebsbefehl auf Grundlage eines Simulationsergebnisses erzeugt wird. 14 is a diagram illustrating a functional configuration of a machining system 1a according to the second embodiment. Functional components having the same functions as those in the first embodiment are denoted by the same reference numerals as in the first embodiment, and redundant explanations are omitted. Differences from the first embodiment will be mainly described below. The machining system 1a differs from the machining system 1 in that an operation command is generated based on a simulation result.

Das Bearbeitungssystem 1a beinhaltet die Werkzeugmaschine 2 und eine numerische Steuervorrichtung 3a. Ebenso wie die numerische Steuervorrichtung 3 steuert die numerische Steuervorrichtung 3a die Werkzeugmaschine 2 auf Grundlage des in dem numerischen Steuerprogramm 4 beschriebenen Befehls. Die numerische Steuervorrichtung 3a beinhaltet eine Befehlserzeugungseinheit 31a, eine Speichereinheit 32a, eine gekoppelte Simulationseinheit 33a, die Prozessbewertungseinheit 34 und die Antriebssteuereinheit 35.The machining system 1a includes the machine tool 2 and a numerical control device 3a. Like the numerical control device 3, the numerical control device 3a controls the machine tool 2 based on the command described in the numerical control program 4. The numerical control device 3a includes a command generation unit 31a, a storage unit 32a, a coupled simulation unit 33a, the process evaluation unit 34, and the drive control unit 35.

Beim Erzeugen eines korrigierten Betriebsbefehls kann die Befehlserzeugungseinheit 31a die Prozessinformationen verwenden, welche die gekoppelte Simulationseinheit 33a ausgibt. Die Befehlserzeugungseinheit 31a kann einen Betriebsbefehl, der durch Korrigieren des Basisbetriebsbefehls auf Grundlage der Prozessinformationen erhalten wird, als korrigierten Betriebsbefehl einstellen. Dabei kann die Befehlserzeugungseinheit 31a das Schneidprozessmodell 321, das Dynamikmodell 322, das Spindelantriebssteuermodell 323, das Vorschubantriebssteuermodell 324 und die Schneidbedingungsinformationen 325 verwenden, die in der Speichereinheit 32a gespeichert sind. Konkreter erzeugt die Befehlserzeugungseinheit 31a einen korrigierten Betriebsbefehl durch Hinzufügen, zu dem Basisbetriebsbefehl, einer Variation, welche die Amplitude oder Phase der dynamischen Schwingungskomponente ausgleicht, die auf die ungeschnittene Spandicke des Werkstücks W, die in den Prozessinformationen enthalten ist, gelegt wird. Die dynamische Schwingungskomponente entspricht dem zweiten Ausdruck auf der rechten Seite der vorstehenden Formel (2). Die Befehlserzeugungseinheit 31a kann auf den Basisbetriebsbefehl eine Variation anwenden, welche die Amplitude oder Phase der Schwingungskomponente unter Verwendung eines Bandsperrfilters, der die Amplitude der dynamischen Schwingungskomponente dämpft, die auf die ungeschnittene Spandicke des Werkstücks W gelegt wird, oder unter Verwendung eines Phasenausgleichsfilters, der die Phasenverzögerung der Schwingungskomponente in Bezug auf den Zeitpunkt, zu dem die Schnittkante des Werkzeugs 23 schneidet, ausgleicht.When generating a corrected operation command, the command generation unit 31a may use the process information output from the coupled simulation unit 33a. The command generation unit 31a may set an operation command obtained by correcting the basic operation command based on the process information as a corrected operation command. Here, the command generation unit 31a may use the cutting process model 321, the dynamic model 322, the spindle drive control model 323, the feed drive control model 324, and the cutting condition information 325 stored in the storage unit 32a. More concretely, the command generation unit 31a generates a corrected operation command by adding, to the basic operation command, a variation that compensates for the amplitude or phase of the dynamic vibration component imposed on the uncut chip thickness of the workpiece W included in the process information. The dynamic vibration component corresponds to the second term on the right side of the above formula (2). The command generation unit 31a may apply to the basic operation command a variation that attenuates the amplitude or phase of the vibration component using a band-stop filter that attenuates the amplitude of the dynamic vibration component imposed on the uncut chip thickness of the workpiece W, or using a phase compensation filter that compensates the phase delay of the vibration component with respect to the timing at which the cutting edge of the tool 23 cuts.

Ebenso wie die Speichereinheit 32 speichert die Speichereinheit 32a das Schneidprozessmodell 321, das Dynamikmodell 322, das Spindelantriebssteuermodell 323, das Vorschubantriebssteuermodell 324 und die Schneidbedingungsinformationen 325 und gibt die gespeicherten Informationen an die gekoppelte Simulationseinheit 33a aus. Die Speichereinheit 32a kann ferner die gespeicherten Informationen an die Befehlserzeugungseinheit 31a ausgeben.Like the storage unit 32, the storage unit 32a stores the cutting process model 321, the dynamic model 322, the spindle drive control model 323, the feed drive control model 324, and the cutting condition information 325, and outputs the stored information to the coupled simulation unit 33a. The storage unit 32a can further output the stored information to the command generation unit 31a.

Ebenso wie die gekoppelte Simulationseinheit 33 berechnet die gekoppelte Simulationseinheit 33a Prozessinformationen, die Ergebnisse einer Bearbeitungssimulation angeben, bei welcher jeweils der Basisbetriebsbefehl und der korrigierte Betriebsbefehl der Werkzeugmaschine 2 erteilt werden. Die gekoppelte Simulationseinheit 33a gibt die berechneten Prozessinformationen an die Prozessbewertungseinheit 34 und auch an die Befehlserzeugungseinheit 31a aus.Like the coupled simulation unit 33, the coupled simulation unit 33a calculates process information indicating results of a machining simulation in which the basic operation command and the corrected operation command are respectively issued to the machine tool 2. The coupled simulation unit 33a outputs the calculated process information to the process evaluation unit 34 and also to the command generation unit 31a.

15 ist ein Ablaufdiagramm zur Erläuterung des Betriebs der in 14 veranschaulichten numerischen Steuervorrichtung 3a. Sobald das Bearbeitungssystem 1a mit dem Betrieb beginnt, liest die Befehlserzeugungseinheit 31 der numerischen Steuervorrichtung 3a das numerische Steuerprogramm 4 aus, analysiert das ausgelesene numerische Steuerprogramm 4 und erzeugt einen Basisbetriebsbefehl zum Veranlassen der Werkzeugmaschine 2 dazu, den in dem numerischen Steuerprogramm 4 beschriebenen Befehl auszuführen (Schritt S201). Die Befehlserzeugungseinheit 31a gibt den erzeugten Basisbetriebsbefehl an die gekoppelte Simulationseinheit 33a aus. 15 is a flow chart to explain the operation of the 14 illustrated numerical control device 3a. Once the machining system 1a starts operation, the command generation unit 31 of the numerical control device 3a reads out the numerical control program 4, analyzes the read out numerical control program 4, and generates a basic operation command for causing the machine tool 2 to execute the command described in the numerical control program 4 (step S201). The command generation unit 31a outputs the generated basic operation command to the coupled simulation unit 33a.

Die gekoppelte Simulationseinheit 33a führt eine gekoppelte Simulation aus, bei welcher der von der Befehlserzeugungseinheit 31a ausgegebene Basisbetriebsbefehl durch die Werkzeugmaschine 2 ausgeführt wird, um Prozessinformationen zu erzeugen (Schritt S202). Die gekoppelte Simulationseinheit 33a gibt die erzeugten Prozessinformationen sowohl an die Prozessbewertungseinheit 34 als auch die Befehlserzeugungseinheit 31a aus.The coupled simulation unit 33a executes a coupled simulation in which the basic operation command output from the command generation unit 31a is executed by the machine tool 2 to generate process information (step S202). The coupled simulation unit unit 33a outputs the generated process information to both the process evaluation unit 34 and the command generation unit 31a.

Die Befehlserzeugungseinheit 31a korrigiert den Basisbetriebsbefehl auf Grundlage der infolge des Ausführens von Schritt S202 ausgegebenen Prozessinformationen und erzeugt einen korrigierten Betriebsbefehl (Schritt S203). Die Befehlserzeugungseinheit 31a gibt den erzeugten korrigierten Betriebsbefehl an die gekoppelte Simulationseinheit 33a aus.The command generation unit 31a corrects the basic operation command based on the process information output as a result of executing step S202 and generates a corrected operation command (step S203). The command generation unit 31a outputs the generated corrected operation command to the coupled simulation unit 33a.

Die gekoppelte Simulationseinheit 33a führt eine gekoppelte Simulation aus, bei welcher der von der Befehlserzeugungseinheit 31a ausgegebene korrigierte Betriebsbefehl durch die Werkzeugmaschine 2 ausgeführt wird, um Prozessinformationen zu erzeugen (Schritt S204). Die gekoppelte Simulationseinheit 33a gibt die erzeugten Prozessinformationen sowohl an die Prozessbewertungseinheit 34 als auch die Befehlserzeugungseinheit 31a aus.The coupled simulation unit 33a performs a coupled simulation in which the corrected operation command output from the command generation unit 31a is executed by the machine tool 2 to generate process information (step S204). The coupled simulation unit 33a outputs the generated process information to both the process evaluation unit 34 and the command generation unit 31a.

Die Prozessbewertungseinheit 34 vergleicht und bewertet die Vielzahl von Prozessinformationen, bewertet die Größe des Bearbeitungsfehlers bei der Verwendung jedes Betriebsbefehls und wählt einen Betriebsbefehl, welcher der Werkzeugmaschine 2 zu erteilen ist, aus dem Basisbetriebsbefehl und dem korrigierten Betriebsbefehl aus (Schritt S205). Die Prozessbewertungseinheit 34 gibt ein Befehlsauswahlsignal, das den ausgewählten Betriebsbefehl angibt, an die Antriebssteuereinheit 35 aus.The process evaluation unit 34 compares and evaluates the plurality of process information, evaluates the amount of machining error when using each operation command, and selects an operation command to be given to the machine tool 2 from the basic operation command and the corrected operation command (step S205). The process evaluation unit 34 outputs a command selection signal indicating the selected operation command to the drive control unit 35.

Die Antriebssteuereinheit 35 steuert den Betrieb der Werkzeugmaschine 2 unter Verwendung des ausgewählten Betriebsbefehls auf Grundlage des von der Prozessbewertungseinheit 34 ausgegebenen Auswahlsignals (Schritt S206). Die Befehlserzeugungseinheit 31a bestimmt, ob das Auslesen sämtlicher der in dem numerischen Steuerprogramm 4 beschriebenen Befehle abgeschlossen ist (Schritt S207). Als Reaktion darauf, dass bestimmt wird, dass das Auslesen nicht abgeschlossen ist (Schritt S207: Nein), wiederholt die Befehlserzeugungseinheit 31a die Verarbeitung aus Schritt S201. Als Reaktion darauf, dass bestimmt wird, dass das Auslesen abgeschlossen ist (Schritt S207: Ja), beendet das Bearbeitungssystem 1a den Betrieb.The drive control unit 35 controls the operation of the machine tool 2 using the selected operation command based on the selection signal output from the process evaluation unit 34 (step S206). The command generation unit 31a determines whether the reading of all the commands described in the numerical control program 4 is completed (step S207). In response to determining that the reading is not completed (step S207: No), the command generation unit 31a repeats the processing of step S201. In response to determining that the reading is completed (step S207: Yes), the machining system 1a terminates the operation.

Bei dem vorstehenden Beispiel erzeugt die Befehlserzeugungseinheit 31a einen korrigierten Betriebsbefehl auf Grundlage der Prozessinformationen, die ein Simulationsergebnis angeben, wenn der Basisbetriebsbefehl der Werkzeugmaschine 2 erteilt wird. Die Befehlserzeugungseinheit 31a kann jedoch ferner einen korrigierten Betriebsbefehl auf Grundlage der Prozessinformationen erzeugen, die ein Simulationsergebnis angeben, wenn der korrigierte Betriebsbefehl der Werkzeugmaschine 2 erteilt wird. In diesem Fall ist es möglich, ein Verfahren zum Suchen nach einem korrigierten Betriebsbefehl, der imstande ist, die Schwingung der ungeschnittenen Spandicke des Werkstücks W zu verringern, unter Verwendung eines Verfahrens zum maschinellen Lernen anzuwenden, während die Amplitude oder Phase der Schwingungskomponente der ungeschnittenen Spandicke des Werkstücks W als ein Bewertungswert eingestellt wird.In the above example, the command generation unit 31a generates a corrected operation command based on the process information indicating a simulation result when the basic operation command is issued to the machine tool 2. However, the command generation unit 31a may further generate a corrected operation command based on the process information indicating a simulation result when the corrected operation command is issued to the machine tool 2. In this case, it is possible to adopt a method of searching for a corrected operation command capable of reducing the vibration of the uncut chip thickness of the workpiece W using a machine learning method while setting the amplitude or phase of the vibration component of the uncut chip thickness of the workpiece W as an evaluation value.

16 ist eine Darstellung, die eine beispielhafte Konfiguration einer Lernvorrichtung 50 in Bezug auf die in 14 veranschaulichte numerische Steuervorrichtung 3a veranschaulicht. Beispielsweise kann die Lernvorrichtung 50 in der in 14 veranschaulichten numerischen Steuervorrichtung 3a enthalten sein oder kann eine Informationsverarbeitungsvorrichtung sein, die sich von der numerischen Steuervorrichtung 3a unterscheidet. Die Lernvorrichtung 50 beinhaltet eine Lerndatenerfassungseinheit 51 und eine Modellerzeugungseinheit 52. 16 is a diagram showing an exemplary configuration of a learning device 50 with respect to the 14 numerical control device 3a illustrated. For example, the learning device 50 in the numerical control device 3a illustrated in 14 or may be an information processing device different from the numerical control device 3a. The learning device 50 includes a learning data acquisition unit 51 and a model generation unit 52.

Die Lerndatenerfassungseinheit 51 erfasst als Lerndaten den durch die Befehlserzeugungseinheit 31a erzeugten Betriebsbefehl und die dem Betriebsbefehl entsprechenden Prozessinformationen, d. h. die Prozessinformationen, die ein Simulationsergebnis angeben, wenn der Betriebsbefehl der Werkzeugmaschine 2 erteilt wird. Die Lerndatenerfassungseinheit 51 kann die erfassten Lerndaten an die Modellerzeugungseinheit 52 ausgeben. Es ist zu beachten, dass die Lerndatenerfassungseinheit 51 sämtliche der Prozessinformationen erfassen kann oder einen Teil der Prozessinformationen erfassen kann. Beispielsweise kann die Lerndatenerfassungseinheit 51 als Lerndaten einen Parameter erfassen, der die Größe des Bearbeitungsfehlers in den Prozessinformationen angibt. Beispielsweise kann die Lerndatenerfassungseinheit 51 als Lerndaten die ungeschnittene Spandicke des Werkstücks W oder die Amplitude oder Phase der Schwingungskomponente der ungeschnittenen Spandicke des Werkstücks W erfassen.The learning data acquisition unit 51 acquires, as learning data, the operation command generated by the command generation unit 31a and the process information corresponding to the operation command, that is, the process information indicating a simulation result when the operation command is given to the machine tool 2. The learning data acquisition unit 51 may output the acquired learning data to the model generation unit 52. Note that the learning data acquisition unit 51 may acquire all of the process information or may acquire a part of the process information. For example, the learning data acquisition unit 51 may acquire, as learning data, a parameter indicating the size of the machining error in the process information. For example, the learning data acquisition unit 51 may acquire, as learning data, the uncut chip thickness of the workpiece W or the amplitude or phase of the vibration component of the uncut chip thickness of the workpiece W.

Die Modellerzeugungseinheit 52 erlernt einen neu korrigierten Betriebsbefehl auf Grundlage der Lerndaten, einschließlich des Betriebsbefehls und der Prozessinformationen, die ein Simulationsergebnis angeben, das erhalten wird, wenn der Betriebsbefehl der Werkzeugmaschine 2 erteilt wird. Das heißt, die Modellerzeugungseinheit 52 erzeugt ein erlerntes Modell zum Ableiten eines neu korrigierten Betriebsbefehls aus den Prozessinformationen der numerischen Steuervorrichtung 3a. Die Modellerzeugungseinheit 52 gibt das erzeugte erlernte Modell an eine Speichereinheit 53 für gelernte Modelle aus.The model generation unit 52 learns a newly corrected operation command based on the learning data including the operation command and the process information indicating a simulation result obtained when the operation command is given to the machine tool 2. That is, the model generation unit 52 generates a learned model for deriving a newly corrected operation command from the process information of the numerical control device 3a. The model generation unit 52 outputs the generated learned model to a learned model storage unit 53.

Der Lernalgorithmus, der von der Modellgenerationseinheit 52 verwendet wird, kann ein bekannter Algorithmus sein, wie etwa überwachtes Lernen, unüberwachtes Lernen oder bestärkendes Lernen. Als ein Beispiel wird ein Fall beschrieben, bei dem bestärkendes Lernen angewandt wird. Beim bestärkenden Lernen beobachtet ein Agent (Subjekt einer Aktion) in einer Umgebung einen Umgebungsparameter, der den aktuellen Zustand angibt, und bestimmt die zu ergreifende Aktion. Die Umgebung ändert sich aufgrund des Verhaltens des Agenten dynamisch und dem Agenten wird eine Belohnung gemäß der Änderung in der Umgebung gegeben. Der Agent wiederholt dies, um eine Aktionsrichtlinie zu erlernen, welche die Belohnung durch eine Reihe von Aktionen maximiert. Q-Lernen und TD-Lernen sind als repräsentative Verfahren des bestärkenden Lernens bekannt. Im Falle des Q-Lernens wird beispielsweise ein allgemeiner Aktualisierungsausdruck für die Aktionswertfunktion Q (s, a) durch die untenstehende Formel (4) wiedergegeben.
Formel 4: Q ( s t , a t ) Q ( s t , a t ) + α ( r t + 1 + γ max a Q ( s t + 1 , a ) Q ( s t , a t ) )

Figure DE112021008301T5_0004
The learning algorithm used by the model generation unit 52 may be a known algorithm such as supervised learning, unsupervised learning, or reinforcement learning. As an example, a case where reinforcement learning is applied will be described. In reinforcement learning, an agent (subject of an action) in an environment observes an environmental parameter indicating the current state and determines the action to be taken. The environment changes dynamically due to the agent's behavior, and the agent is given a reward according to the change in the environment. The agent repeats this to learn an action policy that maximizes the reward through a series of actions. Q-learning and TD-learning are known as representative methods of reinforcement learning. In the case of Q-learning, for example, a general update expression for the action value function Q(s, a) is represented by the formula (4) below.
Formula 4: Q ( s t , a t ) Q ( s t , a t ) + α ( r t + 1 + γ Max a Q ( s t + 1 , a ) Q ( s t , a t ) )
Figure DE112021008301T5_0004

In der Formel (4) gibt st den Zustand der Umgebung zu einem Zeitpunkt t wieder und gibt at die Aktion zu dem Zeitpunkt t wieder. Die Aktion at ändert den Zustand zu st+1. Darüber hinaus gibt rt+1 die Belohnung wieder, die durch die Änderung des Zustands erhalten werden kann, gibt γ eine Diskontierungsrate wieder und gibt α einen Lernkoeffizienten wieder. Es ist zu beachten, dass γ einen Wert im Bereich von 0<γ≤1 aufweist und α einen Wert im Bereich von 0<α≤1 aufweist. Der korrigierte Betriebsbefehl dient als die Aktion at, die Prozessinformationen dienen als der Zustand st und die Lernvorrichtung 50 erlernt die beste Aktion at bei dem Zustand zu dem Zeitpunkt t.In the formula (4), s t represents the state of the environment at a time t, and at represents the action at the time t. The action at changes the state to s t+1 . In addition, r t+1 represents the reward that can be obtained by changing the state, γ represents a discount rate, and α represents a learning coefficient. Note that γ has a value in the range of 0<γ≤1, and α has a value in the range of 0<α≤1. The corrected operation command serves as the action at, the process information serves as the state s t, and the learning device 50 learns the best action at at the state at the time t.

Der durch die Formel (4) wiedergegebene Aktualisierungsausdruck erhöht den Aktionswert Q, wenn der Aktionswert Q der Aktion „a“ mit dem höchsten Q-Wert zu dem Zeitpunkt t+1 größer ist als der Aktionswert Q der Aktion „a“, die zu dem Zeitpunkt t ausgeführt wird, und verringert andernfalls den Aktionswert Q. Mit anderen Worten wird die Aktionswertfunktion Q (S, a) derart aktualisiert, dass der Aktionswert Q der Aktion „a“ zu dem Zeitpunkt t näher an den besten Aktionswert zu dem Zeitpunkt t+1 gebracht wird. Infolgedessen propagiert sich der beste Aktionswert Q in einer bestimmten Umgebung nacheinander auf die Aktionswerte Q in den vorherigen Umgebungen.The update expression represented by formula (4) increases the action value Q if the action value Q of the action "a" having the highest Q value at time t+1 is larger than the action value Q of the action "a" executed at time t, and decreases the action value Q otherwise. In other words, the action value function Q(S,a) is updated such that the action value Q of the action "a" at time t is brought closer to the best action value at time t+1. As a result, the best action value Q in a certain environment propagates to the action values Q in the previous environments one after another.

Wie vorstehend beschrieben, beinhaltet die Modellerzeugungseinheit 52 in dem Fall, dass ein erlerntes Modell durch bestärkendes Lernen erzeugt wird, eine Belohnungsberechnungseinheit 54 und eine Funktionsaktualisierungseinheit 55.As described above, in the case where a learned model is generated by reinforcement learning, the model generating unit 52 includes a reward calculating unit 54 and a function updating unit 55.

Die Belohnungsberechnungseinheit 54 berechnet eine Belohnung auf Grundlage des Betriebsbefehls und der Prozessinformationen. Die Belohnungsberechnungseinheit 54 berechnet eine Belohnung r auf Grundlage von Belohnungskriterien D, einschließlich eines Belohnungserhöhungskriteriums D1 und eines Belohnungsverringerungskriteriums D2. Beispielsweise werden die Belohnungskriterien D auf Grundlage der Größe des Bearbeitungsfehlers bestimmt, der durch die Prozessinformationen angegeben wird. Als der Parameter, der die Größe des Bearbeitungsfehlers angibt, wird zum Beispiel die Amplitude der Schwingungskomponente der ungeschnittenen Spandicke des Werkstücks W verwendet. Beispielsweise kann für das Belohnungserhöhungskriterium D1 definiert sein, dass die Amplitude der Schwingungskomponente der ungeschnittenen Spandicke des Werkstücks W kleiner als ein Schwellenwert ist, und kann für das Belohnungsverringerungskriterium D2 definiert sein, dass die Amplitude der Schwingungskomponente der ungeschnittene Spandicke des Werkstücks W größer oder gleich einem Schwellenwert ist. Beispielsweise erhöht die Belohnungsberechnungseinheit 54 die Belohnung r, indem sie eine Belohnung von „+1“ vergibt, wenn das Belohnungserhöhungskriterium D1 erfüllt ist, und verringert die Belohnung r, indem sie eine Belohnung von „-1“ vergibt, wenn das Belohnungsverringerungskriterium D2 erfüllt ist. Die Belohnungsberechnungseinheit 54 gibt die berechnete Belohnung r an die Funktionsaktualisierungseinheit 55 aus. Als ein anderes Beispiel kann als der Parameter, der die Größe des Bearbeitungsfehlers angibt, die Phase der Schwingungskomponente der ungeschnittenen Spandicke des Werkstücks W zusätzlich zu der Amplitude der Schwingungskomponente der Spandicke verwendet werden. Hierbei ist die Phase der Schwingungskomponente der ungeschnittenen Spandicke die Phase der Schwingung, die über die Spanform in dem Moment gelegt wird, in dem die Schnittkante des Werkzeugs 23 mit dem Schneiden des Werkstücks W beginnt. In diesem Fall kann für das Belohnungserhöhungskriterium D1 definiert sein, dass die Phase der Schwingungskomponente der ungeschnittenen Spandicke des Werkstücks W ein Wert innerhalb eines vorbestimmten Bereichs ist, und kann für das BelohnungsverringerungskriteriumD2 definiert sein, dass die Phase der Schwingungskomponente der ungeschnittenen Spandicke des Werkstücks W ein Wert außerhalb des vorstehenden Bereichs ist.The reward calculation unit 54 calculates a reward based on the operation command and the process information. The reward calculation unit 54 calculates a reward r based on reward criteria D including a reward increase criterion D1 and a reward decrease criterion D2. For example, the reward criteria D is determined based on the magnitude of the machining error indicated by the process information. As the parameter indicating the magnitude of the machining error, for example, the amplitude of the vibration component of the uncut chip thickness of the workpiece W is used. For example, the reward increase criterion D1 may be defined that the amplitude of the vibration component of the uncut chip thickness of the workpiece W is less than a threshold value, and the reward decrease criterion D2 may be defined that the amplitude of the vibration component of the uncut chip thickness of the workpiece W is greater than or equal to a threshold value. For example, the reward calculation unit 54 increases the reward r by giving a reward of “+1” when the reward increase criterion D1 is satisfied, and decreases the reward r by giving a reward of “-1” when the reward decrease criterion D2 is satisfied. The reward calculation unit 54 outputs the calculated reward r to the function updating unit 55. As another example, as the parameter indicating the magnitude of the machining error, the phase of the vibration component of the uncut chip thickness of the workpiece W may be used in addition to the amplitude of the vibration component of the chip thickness. Here, the phase of the vibration component of the uncut chip thickness is the phase of the vibration superimposed on the chip shape at the moment when the cutting edge of the tool 23 starts cutting the workpiece W. In this case, the reward increase criterion D1 may be defined such that the phase of the vibration component of the uncut chip thickness of the workpiece W is a value within a predetermined range, and the reward decrease criterion D2 may be defined such that the phase of the vibration component of the uncut chip thickness of the workpiece W is a value outside the above range.

Die Funktionsaktualisierungseinheit 55 aktualisiert die Funktion zum Bestimmen eines korrigierten Betriebsbefehls gemäß der Belohnung r, die durch die Belohnungsberechnungseinheit 54 berechnet wird, und gibt die aktualisierte Funktion an die Speichereinheit 53 für erlernte Modelle aus. Beispielsweise wird in dem Falle von Q-Lernen die durch Formel (4) wiedergegebene Aktionswertfunktion Q (st, at) als eine Funktion zum Berechnen eines korrigierten Betriebsbefehls verwendet.The function updating unit 55 updates the function for determining a corrected operation command according to the reward r calculated by the reward calculating unit 54 and outputs the updated function to the learned model storage unit 53. For example, in the case of Q-learning, the action value function Q (s t , a t ) represented by formula (4) is used as a function for calculating a corrected operation command.

Das vorgenannte Lernen wird wiederholt ausgeführt. Die Speichereinheit 53 für erlernte Modelle speichert die Aktionswertfunktion Q (st, at) die durch die Funktionsaktualisierungseinheit 55 aktualisiert wird, das heißt, das erlernte Modell.The above learning is repeatedly performed. The learned model storage unit 53 stores the action value function Q (s t , a t ) updated by the function updating unit 55, that is, the learned model.

Als Nächstes wird der Lernprozess durch die Lernvorrichtung 50 unter Bezugnahme auf 17 beschrieben. 17 ist ein Ablaufdiagramm zur Erläuterung des Lernprozesses der in 16 veranschaulichten Lernvorrichtung 50.Next, the learning process by the learning device 50 is described with reference to 17 described. 17 is a flow chart to explain the learning process of the 16 illustrated learning device 50.

Die Lerndatenerfassungseinheit 51 erfasst als Lerndaten den durch die Befehlserzeugungseinheit 31a erzeugten Betriebsbefehl und die Prozessinformationen, die ein Simulationsergebnis angeben, wenn der Betriebsbefehl der Werkzeugmaschine 2 erteilt wird (Schritt S301).The learning data acquisition unit 51 acquires, as learning data, the operation command generated by the command generation unit 31a and the process information indicating a simulation result when the operation command is issued to the machine tool 2 (step S301).

Die Modellerzeugungseinheit 52 berechnet die Belohnung r auf Grundlage des Betriebsbefehls und der Prozessinformationen, die in den durch die Lerndatenerfassungseinheit 51 erfassten Lerndaten enthalten sind (Schritt S302). Konkret erfasst die Belohnungsberechnungseinheit 54 den Betriebsbefehl und die Prozessinformationen und bestimmt auf Grundlage der vorbestimmten Belohnungskriterien D, ob die Belohnung r zu erhöhen ist oder die Belohnung r zu verringern ist (Schritt S303).The model generation unit 52 calculates the reward r based on the operation command and the process information included in the learning data acquired by the learning data acquisition unit 51 (step S302). Specifically, the reward calculation unit 54 acquires the operation command and the process information and determines whether to increase the reward r or to decrease the reward r based on the predetermined reward criteria D (step S303).

Als Reaktion darauf, dass bestimmt wird, dass die Belohnung r zu erhöhen ist (Schritt S303: erhöhen), erhöht die Belohnungsberechnungseinheit 54 die Belohnung r (Schritt S304) . Als Reaktion darauf, dass bestimmt wird, dass die Belohnung r zu verringern ist (Schritt S303: verringern), verringert die Belohnungsberechnungseinheit 54 die Belohnung r (Schritt S305).In response to determining that the reward r is to be increased (step S303: increase), the reward calculation unit 54 increases the reward r (step S304). In response to determining that the reward r is to be decreased (step S303: decrease), the reward calculation unit 54 decreases the reward r (step S305).

Die Funktionsaktualisierungseinheit 55 aktualisiert die Aktionswertfunktion Q (st, at), die in der Speichereinheit 53 für erlernte Modelle gespeichert ist, auf Grundlage der Belohnung r, die von der Belohnungsberechnungseinheit 54 berechnet wird (Schritt S306) .The function updating unit 55 updates the action value function Q (s t , a t ) stored in the learned model storage unit 53 based on the reward r calculated by the reward calculation unit 54 (step S306).

Die Lernvorrichtung 50 führt wiederholt die vorstehende Verarbeitung von Schritt S301 bis Schritt S306 aus und speichert die erzeugte Aktionswertfunktion Q (st, at) als ein erlerntes Modell.The learning device 50 repeatedly executes the above processing from step S301 to step S306 and stores the generated action value function Q (s t , a t ) as a learned model.

In 16 ist die Speichereinheit 53 für erlernte Modelle außerhalb der Lernvorrichtung 50 bereitgestellt, jedoch kann die Lernvorrichtung 50 die Speichereinheit 53 für erlernte Modelle darin beinhalten. Wenn die Lernvorrichtung 50 in der numerischen Steuervorrichtung 3a bereitgestellt ist, kann die Speichereinheit 53 für erlernte Modelle in derselben Speichervorrichtung wie die Speichereinheit 32a bereitgestellt sein oder kann in einer anderen Speichervorrichtung bereitgestellt sein.In 16 the learned model storage unit 53 is provided outside the learning device 50, but the learning device 50 may include the learned model storage unit 53 therein. When the learning device 50 is provided in the numerical control device 3a, the learned model storage unit 53 may be provided in the same storage device as the storage unit 32a, or may be provided in a different storage device.

18 ist eine Darstellung, die eine beispielhafte Konfiguration einer Inferenzvorrichtung 60 in Bezug auf die in 14 veranschaulichte numerische Steuervorrichtung 3a veranschaulicht. Die Inferenzvorrichtung 60 beinhaltet eine Datenerfassungseinheit 61 und eine Inferenzeinheit 62. Die Inferenzvorrichtung 60 kann in der numerischen Steuervorrichtung 3a bereitgestellt sein oder kann eine Informationsverarbeitungsvorrichtung sein, die sich von der numerischen Steuervorrichtung 3a unterscheidet. Die Inferenzvorrichtung 60 ist zum Beispiel in der Befehlserzeugungseinheit 31a der numerischen Steuervorrichtung 3a bereitgestellt. 18 is a diagram showing an exemplary configuration of an inference device 60 with respect to the 14 illustrated numerical control device 3a. The inference device 60 includes a data acquisition unit 61 and an inference unit 62. The inference device 60 may be provided in the numerical control device 3a, or may be an information processing device different from the numerical control device 3a. The inference device 60 is provided, for example, in the command generation unit 31a of the numerical control device 3a.

Die Datenerfassungseinheit 61 erfasst die von der gekoppelten Simulationseinheit 33a ausgegebenen Prozessinformationen. Die Datenerfassungseinheit 61 gibt die erfassten Daten an die Inferenzeinheit 62 aus.The data acquisition unit 61 acquires the process information output from the coupled simulation unit 33a. The data acquisition unit 61 outputs the acquired data to the inference unit 62.

Die Inferenzeinheit 62 verwendet das erlernte Modell, das in der Speichereinheit 53 für erlernte Modelle gespeichert ist, um aus den durch die Datenerfassungseinheit 61 erfassten Prozessinformationen einen neu korrigierten Betriebsbefehl abzuleiten. Das heißt, die Inferenzeinheit 62 kann einen korrigierten Betriebsbefehl ableiten, der für die Prozessinformationen geeignet ist, indem die durch die Datenerfassungseinheit 61 ausgegebenen Prozessinformationen in das erlernte Modell eingegeben werden.The inference unit 62 uses the learned model stored in the learned model storage unit 53 to derive a newly corrected operation command from the process information acquired by the data acquisition unit 61. That is, the inference unit 62 can derive a corrected operation command suitable for the process information by inputting the process information output by the data acquisition unit 61 into the learned model.

In der vorstehenden Beschreibung gibt die Inferenzvorrichtung 60 den korrigierten Betriebsbefehl unter Verwendung des erlernten Modells infolge der Durchführung von maschinellem Lernen unter Verwendung der von der numerischen Steuervorrichtung 3a erfassten Daten aus. Das erlernte Modell kann jedoch von einer anderen numerischen Steuervorrichtung 3a erfasst werden und der korrigierte Betriebsbefehl kann auf Grundlage des erlernten Modells ausgegeben werden.In the above description, the inference device 60 outputs the corrected operation command using the learned model as a result of performing machine learning using the data acquired by the numerical control device 3a. However, the learned model may be acquired from another numerical control device 3a and the corrected operation command may be output based on the learned model.

19 ist ein Ablaufdiagramm zur Erläuterung des Betriebs der in 18 veranschaulichten Inferenzvorrichtung 60. Die Datenerfassungseinheit 61 der Inferenzvorrichtung 60 erfasst die Prozessinformationen als Inferenzdaten (Schritt S401) und gibt die erfassten Prozessinformationen an die Inferenzeinheit 62 aus. 19 is a flow chart to explain the operation of the 18 illustrated inference device 60. The data acquisition unit 61 of the inference device 60 acquires the process information as inference data (step S401) and outputs the acquired process information to the inference unit 62.

Die Inferenzeinheit 62 gibt die Prozessinformationen, bei denen es sich um die in Schritt S401 erfassten Inferenzdaten handelt, in das in der Speichereinheit 53 für erlernte Modelle gespeicherte erlernte Modell ein (Schritt S402). Die Inferenzeinheit 62 gibt einen korrigierten Betriebsbefehl als Ergebnis des Eingebens der Prozessinformationen in das erlernte Modell aus (Schritt S403). Es ist zu beachten, dass die Befehlserzeugungseinheit 31 der numerischen Steuervorrichtung 3a den korrigierten Betriebsbefehl erfasst, der durch die Inferenzeinheit 62 ausgegeben wird, und den erfassten korrigierten Betriebsbefehl an die gekoppelte Simulationseinheit 33a ausgibt.The inference unit 62 inputs the process information, which is the inference data acquired in step S401, into the learned model stored in the learned model storage unit 53 (step S402). The inference unit 62 outputs a corrected operation command as a result of inputting the process information into the learned model (step S403). Note that the command generation unit 31 of the numerical control device 3a acquires the corrected operation command output by the inference unit 62 and outputs the acquired corrected operation command to the coupled simulation unit 33a.

Obwohl die Inferenzeinheit 62 bestärkendes Lernen als den Lernalgorithmus in der vorstehenden Beschreibung verwendet, ist der Lernalgorithmus, der von der Inferenzeinheit 62 verwendet wird, nicht auf bestärkendes Lernen beschränkt. Neben bestärkendem Lernen kann die Inferenzeinheit 62 zudem überwachtes Lernen, unüberwachtes Lernen, semi-überwachtes Lernen oder dergleichen als den Lernalgorithmus verwenden.Although the inference unit 62 uses reinforcement learning as the learning algorithm in the above description, the learning algorithm used by the inference unit 62 is not limited to reinforcement learning. In addition to reinforcement learning, the inference unit 62 may also use supervised learning, unsupervised learning, semi-supervised learning, or the like as the learning algorithm.

Der Lernalgorithmus, der von der Modellgenerationseinheit 52 verwendet wird, kann auch Deep Learning sein, das die Merkmalsextraktion direkt erlernt. Alternativ können andere bekannte Verfahren wie etwa neuronale Netzwerke, genetische Programmierung, funktionale Programmierung mit Schlussfolgerungen und Stützvektormaschinen verwendet werden, um maschinelles Lernen auszuführen.The learning algorithm used by the model generation unit 52 may also be deep learning that learns feature extraction directly. Alternatively, other known methods such as neural networks, genetic programming, functional programming with inference, and support vector machines may be used to perform machine learning.

Es ist zu beachten, dass die Vorrichtung 50 zum maschinellen Lernen und die Inferenzvorrichtung 60 jeweils eine Vorrichtung sein können, die von der numerischen Steuervorrichtung 3a getrennt ist und zum Beispiel über ein Netzwerk mit der numerischen Steuervorrichtung 3a verbunden ist. Darüber hinaus können die Lernvorrichtung 50 und die Inferenzvorrichtung 60 jeweils in die numerische Steuervorrichtung 3a eingebaut sein. Weiterhin können die Lernvorrichtung 50 und die Inferenzvorrichtung 60 jeweils auf einem Cloud-Server vorhanden sein.Note that the machine learning device 50 and the inference device 60 may each be a device separate from the numerical control device 3a and connected to the numerical control device 3a via a network, for example. Moreover, the learning device 50 and the inference device 60 may each be built into the numerical control device 3a. Furthermore, the learning device 50 and the inference device 60 may each be provided on a cloud server.

Die Modellerzeugungseinheit 52 kann einen korrigierten Betriebsbefehl unter Verwendung der von einer Vielzahl numerischer Steuervorrichtungen 3a erfassten Lerndaten erlernen. Es ist zu beachten, dass die Modellerzeugungseinheit 52 Lerndaten von einer Vielzahl von numerischen Steuervorrichtungen 3a, die in demselben Bereich verwendet werden, erfassen kann oder einen korrigierten Betriebsbefehl unter Verwendung von Lerndaten erlernen kann, die von einer Vielzahl von numerischen Steuervorrichtungen 3a gesammelt wurden, die unabhängig in unterschiedlichen Bereichen arbeiten. Darüber hinaus ist es mitten während des Lernens möglich, mit dem Sammeln von Lerndaten von einer neuen numerischen Steuervorrichtung 3a zu beginnen oder mit dem Sammeln von Lerndaten von einer numerischen Steuervorrichtung 3a aufzuhören. Darüber hinaus kann die Lernvorrichtung 50, die den korrigierten Betriebsbefehl für eine numerische Steuervorrichtung 3a erlernt hat, auf eine andere numerische Steuervorrichtung 3a angewandt werden und kann der korrigierte Betriebsbefehl für die andere numerische Steuervorrichtung 3a erneut erlernt und aktualisiert werden.The model generation unit 52 may learn a corrected operation command using the learning data acquired from a plurality of numerical control devices 3a. Note that the model generation unit 52 may acquire learning data from a plurality of numerical control devices 3a used in the same area, or may learn a corrected operation command using learning data collected from a plurality of numerical control devices 3a independently operating in different areas. Moreover, in the middle of learning, it is possible to start collecting learning data from a new numerical control device 3a or stop collecting learning data from a numerical control device 3a. Moreover, the learning device 50 that has learned the corrected operation command for one numerical control device 3a can be applied to another numerical control device 3a, and the corrected operation command for the other numerical control device 3a can be relearned and updated.

Wie vorstehend beschrieben, erzeugt die numerische Steuervorrichtung 3a gemäß der zweiten Ausführungsform einen Basisbetriebsbefehl, der aus dem numerischen Steuerprogramm 4 erzeugt wird, und einen korrigierten Betriebsbefehl, der durch Korrigieren des Basisbetriebsbefehls unter Verwendung der Prozessinformationen erhalten wird, und wählt einen Betriebsbefehl aus, welcher der Werkzeugmaschine 2 auf Grundlage des Bewertungsergebnisses jedes Betriebsbefehls zu erteilen ist. Da die Befehlserzeugungseinheit 31a einen korrigierten Betriebsbefehl auf Grundlage des durch die gekoppelte Simulationseinheit 33a ausgeführten Simulationsergebnisses neu erzeugt, ist es möglich, einen korrigierten Betriebsbefehl auf Grundlage der Eigenschaften des Antriebssystems 20, der mechanischen Dynamik und des Schneidprozesses M zu erzeugen. Daher kann die numerische Steuervorrichtung 3a den Bearbeitungsfehler effizient verringern.As described above, the numerical control device 3a according to the second embodiment generates a basic operation command generated from the numerical control program 4 and a corrected operation command obtained by correcting the basic operation command using the process information, and selects an operation command to be given to the machine tool 2 based on the evaluation result of each operation command. Since the command generation unit 31a newly generates a corrected operation command based on the simulation result executed by the coupled simulation unit 33a, it is possible to generate a corrected operation command based on the characteristics of the drive system 20, the mechanical dynamics, and the cutting process M. Therefore, the numerical control device 3a can efficiently reduce the machining error.

Aus einem korrigierten Betriebsbefehl kann die numerische Steuervorrichtung 3a einen weiteren korrigierten Betriebsbefehl erzeugen. In diesem Fall wird der korrigierte Betriebsbefehl auf Grundlage der Lerndaten, einschließlich des korrigierten Betriebsbefehls und der Prozessinformationen, durch maschinelles Lernen unter Verwendung der Lernvorrichtung 50 erlernt. Die numerische Steuervorrichtung 3a kann den korrigierten Betriebsbefehl verwenden, der durch die Inferenzvorrichtung 60 ausgegeben wird, die den korrigierten Betriebsbefehl unter Verwendung des erlernten Modells, bei dem es sich um das Lernergebnis der Lernvorrichtung 50 handelt, ableitet. Durch die Verwendung von maschinellem Lernen kann die numerische Steuervorrichtung 3a einen korrigierten Betriebsbefehl auf eine explorative Weise erzeugen, sodass das Bearbeitungssystem 1a einen korrigierten Betriebsbefehl erzeugen kann, der imstande ist, den Bearbeitungsfehler zu verringern, ohne eine Regel zum Korrigieren des Betriebsbefehls im Voraus zu erstellen.From a corrected operation command, the numerical control device 3a may generate another corrected operation command. In this case, the corrected operation command is learned based on the learning data including the corrected operation command and the process information by machine learning using the learning device 50. The numerical control device 3a may use the corrected operation command output by the inference device 60 that derives the corrected operation command using the learned model that is the learning result of the learning device 50. By using machine learning, the numerical control device 3a can generate a corrected operation command in an exploratory manner, so that the machining system 1a can generate a corrected operation command capable of reducing the machining error without creating a rule for correcting the operation command in advance.

Dritte Ausführungsform.Third embodiment.

20 ist eine Darstellung, die eine Konfiguration eines Bearbeitungssystems 1b gemäß der dritten Ausführungsform veranschaulicht. E ist zu beachten, dass Komponenten mit den gleichen Funktionen wie jene in der ersten Ausführungsform mit den gleichen Bezugszeichen wie jene in der ersten Ausführungsform gekennzeichnet sind und auf redundante Erläuterungen verzichtet wird. Nachfolgend werden hauptsächlich Unterschiede zu der ersten und der zweiten Ausführungsform beschrieben. 20 is a diagram illustrating a configuration of a machining system 1b according to the third embodiment. E is to Note that components having the same functions as those in the first embodiment are designated by the same reference numerals as those in the first embodiment, and redundant explanations are omitted. The following mainly describes differences from the first and second embodiments.

Das Bearbeitungssystem 1b beinhaltet eine Werkzeugmaschine 2b und eine numerische Steuervorrichtung 3b. Die Werkzeugmaschine 2b beinhaltet das Spindelantriebssystem 21, das Vorschubantriebssystem 22, das Werkzeug 23, den Tisch 24 und einen Sensor 25.The machining system 1b includes a machine tool 2b and a numerical control device 3b. The machine tool 2b includes the spindle drive system 21, the feed drive system 22, the tool 23, the table 24 and a sensor 25.

Der Sensor 25 erkennt eine Schwingung einer Struktur, die Schwingung während des Betriebs der Werkzeugmaschine 2b erzeugt. Der Sensor 25 ist zum Beispiel ein Beschleunigungssensor oder ein Kraftsensor. Alternativ kann der Sensor 25 ein Codierer sein, der im Voraus innerhalb des Antriebssystems 20 zur Rückkopplungssteuerung des Antriebssystems 20 bereitgestellt ist. Der Sensor 25 ist mit der numerischen Steuervorrichtung 3b verbunden und ein durch den Sensor 25 erfasstes Signal wird als ein Sensorsignal an die numerische Steuervorrichtung 3b ausgegeben.The sensor 25 detects vibration of a structure that generates vibration during operation of the machine tool 2b. The sensor 25 is, for example, an acceleration sensor or a force sensor. Alternatively, the sensor 25 may be an encoder provided in advance within the drive system 20 for feedback control of the drive system 20. The sensor 25 is connected to the numerical control device 3b, and a signal detected by the sensor 25 is output as a sensor signal to the numerical control device 3b.

Die numerische Steuervorrichtung 3b beinhaltet eine Befehlserzeugungseinheit 31, die Speichereinheit 32, die gekoppelte Simulationseinheit 33, die Prozessbewertungseinheit 34 und die Antriebssteuereinheit 35. Die numerische Steuervorrichtung 3b unterscheidet sich von der ersten und der zweiten Ausführungsform beim Erzeugen eines Betriebsbefehls auf Grundlage des Sensorsignals, das von dem Sensor 25 ausgegeben wird.The numerical control device 3b includes a command generation unit 31, the storage unit 32, the coupled simulation unit 33, the process evaluation unit 34, and the drive control unit 35. The numerical control device 3b differs from the first and second embodiments in generating an operation command based on the sensor signal output from the sensor 25.

Die Befehlserzeugungseinheit 31b erzeugt einen Basisbetriebsbefehl ähnlich der Befehlserzeugungseinheit 31 in der ersten Ausführungsform. Weiterhin kann die Befehlserzeugungseinheit 31b einen korrigierten Betriebsbefehl durch Korrigieren des Basisbetriebsbefehls auf Grundlage des Sensorsignals, das von dem Sensor 25 ausgegeben wird, erzeugen. Konkret bestimmt die Befehlserzeugungseinheit 31b auf Grundlage des Sensorsignals den Vorschubbetrag oder die ungeschnittene Spandicke des Werkstücks W pro Zahn zum Erzeugen eines korrigierten Betriebsbefehls. Beispielsweise wird das Lernen für den Vorschubbetrag oder die ungeschnittene Spandicke des Werkstücks W pro Zahn entsprechend der Zeitwellenform oder dem Frequenzspektrum des Sensorsignals im Voraus durchgeführt und bestimmt die Befehlserzeugungseinheit 31b, wenn das Sensorsignal eingegeben wird, den Vorschubbetrag oder die ungeschnittene Spandicke des Werkstücks W pro Zahn unter Verwendung eines Verfahrens zum maschinellen Lernen, wie etwa Mustervergleich. Alternativ kann eine Entsprechungstabelle mit der Amplitude des Sensorsignals und dem Vorschubbetrag oder der ungeschnittenen Spandicke des Werkstücks W pro Zahn im Voraus aufgezeichnet werden und kann die Befehlserzeugungseinheit 31b den Vorschubbetrag oder die ungeschnittene Spandicke des Werkstücks W pro Zahn auf Grundlage der Entsprechungstabelle bestimmen.The command generation unit 31b generates a basic operation command similarly to the command generation unit 31 in the first embodiment. Furthermore, the command generation unit 31b can generate a corrected operation command by correcting the basic operation command based on the sensor signal output from the sensor 25. Concretely, the command generation unit 31b determines the feed amount or the uncut chip thickness of the workpiece W per tooth based on the sensor signal to generate a corrected operation command. For example, learning for the feed amount or the uncut chip thickness of the workpiece W per tooth is performed in advance according to the time waveform or the frequency spectrum of the sensor signal, and when the sensor signal is input, the command generation unit 31b determines the feed amount or the uncut chip thickness of the workpiece W per tooth using a machine learning method such as pattern matching. Alternatively, a correspondence table including the amplitude of the sensor signal and the feed amount or the uncut chip thickness of the workpiece W per tooth may be recorded in advance, and the command generation unit 31b may determine the feed amount or the uncut chip thickness of the workpiece W per tooth based on the correspondence table.

Da der Betrieb der numerischen Steuervorrichtung 3b dem Betrieb der in 13 veranschaulichten numerischen Steuervorrichtung 3a ähnelt, mit der Ausnahme, dass das Sensorsignal zum Erzeugen eines korrigierten Betriebsbefehls verwendet wird, wird hier auf eine detaillierte Beschreibung davon verzichtet.Since the operation of the numerical control device 3b is similar to the operation of the 13 numerical control device 3a illustrated except that the sensor signal is used to generate a corrected operation command, a detailed description thereof is omitted here.

In der vorstehenden Beschreibung erzeugt die Befehlserzeugungseinheit 31b einen korrigierten Betriebsbefehl durch Korrigieren des Basisbetriebsbefehls unter Verwendung des Sensorsignals, wobei der Betriebsbefehl jedoch sequenziell korrigiert werden kann. Das heißt, die Befehlserzeugungseinheit 31b kann ferner einen korrigierten Betriebsbefehl unter Verwendung eines Sensorsignals erzeugen, das erkannt wird, wenn der unter Verwendung des Sensorsignals erzeugte korrigierte Betriebsbefehl der Werkzeugmaschine 2b erteilt wird. In diesem Fall ist es möglich, ein Verfahren zum Suchen nach einem korrigierten Betriebsbefehl, der die Schwingung des Sensorsignals verringert, unter Verwendung eines Verfahrens zum maschinellen Lernen, wie etwa bestärkendem Lernen, unter Verwendung der Amplitude oder Phase der Schwingungskomponente des Sensorsignals als Bewertungswert zu verwenden.In the above description, the command generation unit 31b generates a corrected operation command by correcting the basic operation command using the sensor signal, but the operation command may be corrected sequentially. That is, the command generation unit 31b may further generate a corrected operation command using a sensor signal detected when the corrected operation command generated using the sensor signal is given to the machine tool 2b. In this case, it is possible to use a method of searching for a corrected operation command that reduces the vibration of the sensor signal using a machine learning method such as reinforcement learning using the amplitude or phase of the vibration component of the sensor signal as an evaluation value.

Im Falle der Verwendung von maschinellem Lernen kann beispielsweise das erlernte Modell unter Verwendung der in 16 veranschaulichten Lernvorrichtung 50 erfasst werden und kann ein korrigierter Betriebsbefehl aus dem erlernten Modell unter Verwendung der in 18 veranschaulichten Inferenzvorrichtung 60 erhalten werden. In diesem Fall wird in der in der zweiten Ausführungsform bereitgestellten Beschreibung auf die Beschreibung des Verfahrens zum Erzeugen eines korrigierten Betriebsbefehls, der durch die numerische Steuervorrichtung 3b gemäß der dritten Ausführungsform verwendet wird, verzichtet, indem die „Prozessinformationen“, die durch die Lerndatenerfassungseinheit 51 und die Datenerfassungseinheit 61 erfasst werden, durch das „Sensorsignal“ ersetzt werden. In diesem Fall ist der durch die Lerndatenerfassungseinheit 51 erfasste Betriebsbefehl der Betriebsbefehl, der dem Sensorsignal entspricht, insbesondere der Betriebsbefehl, welcher der Werkzeugmaschine 2b erteilt wird, wenn das Sensorsignal erfasst wird.In the case of using machine learning, for example, the learned model can be optimized using the 16 illustrated learning device 50 and a corrected operating command can be derived from the learned model using the 18 illustrated inference device 60. In this case, in the description provided in the second embodiment, the description of the method for generating a corrected operation command used by the numerical control device 3b according to the third embodiment is omitted by replacing the "process information" acquired by the learning data acquisition unit 51 and the data acquisition unit 61 with the "sensor signal". In this case, the operation command acquired by the learning data acquisition unit 51 is the operation command corresponding to the sensor signal, specifically, the operation command given to the machine tool 2b when the sensor signal is acquired.

Wie vorstehend beschrieben, beinhaltet bei der numerischen Steuervorrichtung 3b gemäß der dritten Ausführungsform die Werkzeugmaschine 2b den Sensor 25 und kann die Befehlserzeugungseinheit 31b der numerischen Steuervorrichtung 3b einen korrigierten Betriebsbefehl auf Grundlage des Sensorsignals erzeugen. Daher kann die Befehlserzeugungseinheit 31b den Betriebsbefehl gemäß dem tatsächlich in der Werkzeugmaschine 2b erzeugten Schwingungszustand korrigieren und kann den Betriebsbefehl erzeugen, der den Bearbeitungsfehler wirksam verringert.As described above, in the numerical control device 3b according to the third embodiment, the machine tool 2b includes the sensor 25, and the command generation unit 31b of the numerical control device 3b can generate a corrected operation command based on the sensor signal. Therefore, the command generation unit 31b can correct the operation command according to the vibration state actually generated in the machine tool 2b, and can generate the operation command that effectively reduces the machining error.

Darüber hinaus kann das Bearbeitungssystem 1b durch Erzeugen eines korrigierten Betriebsbefehls auf eine explorative Weise unter Verwendung von maschinellem Lernen einen korrigierten Betriebsbefehl erzeugen, der den Bearbeitungsfehler verringert, ohne im Voraus eine Korrekturregel für den Betriebsbefehl zu erstellen.Furthermore, by generating a corrected operation command in an exploratory manner using machine learning, the machining system 1b can generate a corrected operation command that reduces the machining error without creating a correction rule for the operation command in advance.

Als Nächstes wird eine Hardwarekonfiguration der numerischen Steuervorrichtungen 3, 3a und 3b, der Lernvorrichtung 50 und der Inferenzvorrichtung 60 gemäß der ersten bis dritten Ausführungsform beschrieben. Die Befehlserzeugungseinheiten 31, 31a und 31b, die gekoppelten Simulationseinheiten 33 und 33a, die Prozessbewertungseinheit 34 und die Antriebssteuerungseinheit 35 der numerischen Steuervorrichtungen 3, 3a und 3b, die Lerndatenerfassungseinheit 51 und die Modellerzeugungseinheit 52 der Lernvorrichtung 50 und die Datenerfassungseinheit 61 und die Inferenzeinheit 62 der Inferenzvorrichtung 60 sind durch eine Verarbeitungsschaltung umgesetzt. Die Verarbeitungsschaltung kann durch dedizierte Hardware umgesetzt sein oder kann eine Steuerschaltung unter Verwendung einer zentralen Verarbeitungseinheit (CPU) sein.Next, a hardware configuration of the numerical control devices 3, 3a, and 3b, the learning device 50, and the inference device 60 according to the first to third embodiments will be described. The command generation units 31, 31a, and 31b, the coupled simulation units 33 and 33a, the process evaluation unit 34, and the drive control unit 35 of the numerical control devices 3, 3a, and 3b, the learning data acquisition unit 51 and the model generation unit 52 of the learning device 50, and the data acquisition unit 61 and the inference unit 62 of the inference device 60 are implemented by a processing circuit. The processing circuit may be implemented by dedicated hardware or may be a control circuit using a central processing unit (CPU).

Wenn die vorstehende Verarbeitungsschaltung durch dedizierte Hardware umgesetzt ist, wird die Verarbeitungsschaltung durch die in 21 veranschaulichte Verarbeitungsschaltung 90 umgesetzt. 21 ist eine Darstellung, die dedizierte Hardware zum Umsetzen der Funktionen der numerischen Steuervorrichtungen 3, 3a und 3b, der Lernvorrichtung 50 und der Inferenzvorrichtung 60 gemäß der ersten bis dritten Ausführungsform veranschaulicht. Die Verarbeitungsschaltung 90 ist eine Einzelschaltung, eine Verbundschaltung, ein programmierter Prozessor, ein parallel programmierter Prozessor, eine anwendungsspezifische integrierte Schaltung (ASIC), ein feldprogrammierbares Gatter-Array (FPGA) oder eine Kombination daraus.If the above processing circuit is implemented by dedicated hardware, the processing circuit is controlled by the 21 illustrated processing circuit 90 is implemented. 21 is a diagram illustrating dedicated hardware for implementing the functions of the numerical control devices 3, 3a and 3b, the learning device 50 and the inference device 60 according to the first to third embodiments. The processing circuit 90 is a single circuit, a compound circuit, a programmed processor, a parallel programmed processor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or a combination thereof.

Wenn die vorstehende Verarbeitungsschaltung durch eine Steuerschaltung unter Verwendung einer CPU umgesetzt ist, ist diese Steuerschaltung zum Beispiel eine Steuerschaltung 91 mit der in 22 veranschaulichten Konfiguration. 22 ist eine Darstellung, die eine Konfiguration der Steuerschaltung 91 zum Umsetzen der Funktionen der numerischen Steuervorrichtungen 3, 3a und 3b, der Lernvorrichtung 50 und der Inferenzvorrichtung 60 gemäß der ersten bis dritten Ausführungsform veranschaulicht. Wie in 22 veranschaulicht, beinhaltet die Steuerschaltung 91 einen Prozessor 92 und einen Speicher 93. Der Prozessor 92 ist eine CPU und wird auch als arithmetische Vorrichtung, Mikroprozessor, Mikrocomputer, digitaler Signalprozessor (DSP) oder dergleichen bezeichnet. Zu Beispielen für den Speicher 93 gehören ein nichtflüchtiger oder flüchtiger Halbleiterspeicher, eine Magnetplatte, eine flexible Platte, eine optische Platte, eine Compact Disc, eine Mini Disc, eine Digital Versatile Disc (DVD) und dergleichen. Zu Beispielen für nichtflüchtige oder flüchtige Halbleiterspeicher gehören ein Direktzugriffsspeicher (RAM), ein Festwertspeicher (ROM), ein Flash-Speicher, ein löschbarer programmierbarer ROM (EPROM), ein elektrisch betriebener EPROM (EEPROM, eingetragenes Warenzeichen) und dergleichen.When the above processing circuit is implemented by a control circuit using a CPU, this control circuit is, for example, a control circuit 91 having the 22 illustrated configuration. 22 is a diagram illustrating a configuration of the control circuit 91 for implementing the functions of the numerical control devices 3, 3a and 3b, the learning device 50 and the inference device 60 according to the first to third embodiments. As shown in 22 As illustrated, the control circuit 91 includes a processor 92 and a memory 93. The processor 92 is a CPU and is also referred to as an arithmetic device, microprocessor, microcomputer, digital signal processor (DSP), or the like. Examples of the memory 93 include a nonvolatile or volatile semiconductor memory, a magnetic disk, a flexible disk, an optical disk, a compact disc, a mini disc, a digital versatile disc (DVD), and the like. Examples of nonvolatile or volatile semiconductor memories include a random access memory (RAM), a read only memory (ROM), a flash memory, an erasable programmable ROM (EPROM), an electrically operated EPROM (EEPROM, registered trademark), and the like.

Wenn die vorstehende Verarbeitungsschaltung durch die Steuerschaltung 91 umgesetzt ist, liest und führt der Prozessor 92 das Programm aus, das dem Prozess jeder in dem Speicher 93 gespeicherten Komponente entspricht, wodurch die Verarbeitungsschaltung umgesetzt wird. Der Speicher 93 wird zudem als temporärer Speicher für jeden Prozess verwendet, der von dem Prozessor 92 ausgeführt wird.When the above processing circuit is implemented by the control circuit 91, the processor 92 reads and executes the program corresponding to the process of each component stored in the memory 93, thereby implementing the processing circuit. The memory 93 is also used as a temporary storage for each process executed by the processor 92.

Es ist zu beachten, dass das Programm, das durch den Prozessor 92 ausgeführt wird, bereitgestellt werden kann, indem es auf einem Speichermedium gespeichert ist, oder über einen Kommunikationspfad bereitgestellt werden kann. Darüber hinaus können die Funktionen der numerischen Steuervorrichtungen 3, 3a und 3b, der Lernvorrichtung 50 und der Inferenzvorrichtung 60 gemäß der ersten bis dritten Ausführungsform unter Verwendung einer beliebigen der in 21 veranschaulichten Verarbeitungsschaltung 90 und der in 22 veranschaulichten Steuerschaltung 91 oder unter Verwendung einer Kombination der Verarbeitungsschaltung 90 und der Steuerschaltung 91 umgesetzt werden.It should be noted that the program executed by the processor 92 may be provided by being stored on a storage medium or provided via a communication path. Moreover, the functions of the numerical control devices 3, 3a and 3b, the learning device 50 and the inference device 60 according to the first to third embodiments may be implemented using any of the methods described in 21 illustrated processing circuit 90 and the in 22 illustrated control circuit 91 or using a combination of the processing circuit 90 and the control circuit 91.

Die in den vorstehend erwähnten Ausführungsformen beschriebenen Konfigurationen geben Beispiele an. Die Ausführungsformen können mit einer anderen hinreichend bekannten Technik und miteinander kombiniert werden und einige der Konfigurationen können in einem Bereich, der nicht vom Kern abweicht, weggelassen oder verändert werden.The configurations described in the above-mentioned embodiments are examples. The embodiments may be combined with other well-known technology and with each other, and some of the configurations may be omitted or changed in a range not deviating from the gist.

Liste der BezugszeichenList of reference symbols

1, 1a, 1b Bearbeitungssystem; 2, 2b Werkzeugmaschine; 3, 3a, 3b numerische Steuervorrichtung; 4 numerisches Steuerprogramm; 20 Antriebssystem; 21 Spindelantriebssystem; 22, 22-1, 22-2 Vorschubantriebssystem; 23 Werkzeug; 24 Tisch; 25 Sensor; 31, 31a, 31b Befehlserzeugungseinheit; 32, 32a Speichereinheit; 33, 33a gekoppelte Simulationseinheit; 34 Prozessbewertungseinheit; 35 Antriebssteuereinheit; 50 Lernvorrichtung; 51 Lerndatenerfassungseinheit; 52 Modellerzeugungseinheit; 53 Speichereinheit für erlernte Modelle; 54 Belohnungsberechnungseinheit; 55 Funktionsaktualisierungseinheit; 60 Inferenzvorrichtung; 61 Datenerfassungseinheit; 62 Inferenzeinheit; 90 Verarbeitungsschaltung; 91 Steuerschaltung; 92 Prozessor; 93 Speicher; 211 Spindelmotor; 212 Spindelantriebsmechanismus; 221, 221-1, 221-2 Servomotor; 222, 222-1, 222-2 Vorschubantriebsmechanismus; 321 Schneidprozessmodell; 322 Dynamikmodell; 323 Spindelantriebssteuermodell; 324 Vorschubantriebssteuermodell; 325 Schneidbedingungsinformationen; A1 Schnittfläche pro Zahn; c Vorschubbetrag; Fc Schnittkraft; Fd Störkraft; M Schneidprozess; MD1 werkzeugseitige mechanische Dynamik; MD2 werkstückseitige mechanische Dynamik; P1, P2 Position; R1 Drehrichtung; r1 Antriebssystemverschiebung; r2 Strukturverschiebung; Tc Schnittmoment; Td Störmoment; W Werkstück; θ1 Spindelantriebssystemwinkel; θ2 Werkzeugwinkel.1, 1a, 1b machining system; 2, 2b machine tool; 3, 3a, 3b numerical control device; 4 numerical control program; 20 drive system; 21 spindle drive system; 22, 22-1, 22-2 feed drive system; 23 tool; 24 table; 25 sensor; 31, 31a, 31b command generation unit; 32, 32a storage unit; 33, 33a coupled simulation unit; 34 process evaluation unit; 35 drive control unit; 50 learning device; 51 learning data acquisition unit; 52 model generation unit; 53 learned model storage unit; 54 reward calculation unit; 55 function updating unit; 60 inference device; 61 data acquisition unit; 62 inference unit; 90 processing circuit; 91 control circuit; 92 processor; 93 memory; 211 spindle motor; 212 spindle drive mechanism; 221, 221-1, 221-2 servo motor; 222, 222-1, 222-2 feed drive mechanism; 321 cutting process model; 322 dynamics model; 323 spindle drive control model; 324 feed drive control model; 325 cutting condition information; A1 cutting area per tooth; c feed amount; F c cutting force; F d disturbance force; M cutting process; MD1 tool-side mechanical dynamics; MD2 workpiece-side mechanical dynamics; P1, P2 position; R1 rotation direction; r1 drive system displacement; r2 structure displacement; T c cutting torque; T d disturbance torque; W workpiece; θ1 spindle drive system angle; θ2 tool angle.

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN THE DESCRIPTION

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.This list of documents listed by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA accepts no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • JP 2013132733 [0004]JP2013132733 [0004]

Claims (20)

Numerische Steuervorrichtung, die eine Werkzeugmaschine steuert, indem sie der Werkzeugmaschine einen Betriebsbefehl erteilt, wobei die Werkzeugmaschine ein Antriebssystem beinhaltet, das ein Spindelantriebssystem, um ein Werkzeug zum Bearbeiten eines Werkstücks oder eine das Werkstück drehende Spindel anzutreiben, und ein Vorschubantriebssystem, um eine Vorschubachse anzutreiben, die eine relative Position zwischen dem Werkzeug und dem Werkstück ändert, beinhaltet, wobei die numerische Steuervorrichtung Folgendes umfasst: eine Befehlserzeugungseinheit, um einen Basisbetriebsbefehl zu erzeugen, bei dem es sich um den Betriebsbefehl auf Grundlage eines numerischen Steuerungsprogramms handelt, und einen korrigierten Betriebsbefehl zu erzeugen, bei dem es sich um den Betriebsbefehl handelt, der durch Korrigieren des Basisbetriebsbefehls erhalten wird; eine gekoppelte Simulationseinheit, um Prozessinformationen zu berechnen, die einen Einfluss eines Betriebs des Antriebssystems und eine Dynamik einer Struktur widerspiegeln, die während des Betriebs der Werkzeugmaschine bei einer Bearbeitung des Werkstücks mit dem Werkzeug Schwingung erzeugt, wobei die Prozessinformationen Ergebnisse einer Simulationsbearbeitung angeben, bei welcher der Basisbetriebsbefehl und der korrigierte Betriebsbefehl jeweils der Werkzeugmaschine erteilt werden; und eine Prozessbewertungseinheit, um auf Grundlage einer Vielzahl der Prozessinformationen eine Größe eines Bearbeitungsfehlers bei einer Verwendung von jedem aus einer Vielzahl der Betriebsbefehle zu bewerten und den der Werkzeugmaschine zu erteilenden Betriebsbefehl aus dem Basisbetriebsbefehl und dem korrigierten Betriebsbefehl auszuwählen.A numerical control device that controls a machine tool by giving an operation command to the machine tool, the machine tool including a drive system that includes a spindle drive system for driving a tool for machining a workpiece or a spindle that rotates the workpiece, and a feed drive system for driving a feed axis that changes a relative position between the tool and the workpiece, the numerical control device comprising: a command generation unit for generating a basic operation command that is the operation command based on a numerical control program, and generating a corrected operation command that is the operation command obtained by correcting the basic operation command; a coupled simulation unit for calculating process information reflecting an influence of an operation of the drive system and dynamics of a structure that generates vibration during operation of the machine tool in machining the workpiece with the tool, the process information indicating results of simulation machining in which the basic operation command and the corrected operation command are respectively given to the machine tool; and a process evaluation unit for evaluating, based on a plurality of the process information, a magnitude of a machining error when using each of a plurality of the operation commands and selecting the operation command to be given to the machine tool from the basic operation command and the corrected operation command. Numerische Steuervorrichtung nach Anspruch 1, wobei die gekoppelte Simulationseinheit die Prozessinformationen bei einer Verwendung des Betriebsbefehls unter einer vorgegebenen Schneidbedingung für ein Schneidprozessmodell berechnet, wobei das Schneidprozessmodell ein mathematisches Modell, das eine Schneideigenschaft zwischen dem Werkzeug und dem Werkstück wiedergibt, ein Dynamikmodell, das ein mathematisches Modell ist, das eine dynamische Eigenschaft der Struktur wiedergibt, ein Spindelantriebssteuermodell, das ein mathematisches Modell ist, welches das Spindelantriebssystem und eine das Spindelantriebssystem steuernde Spindelantriebssteuerung wiedergibt, und ein Vorschubantriebssteuermodell, das ein mathematisches Modell ist, welches das Vorschubantriebssystem und eine das Vorschubantriebssystem steuernde Vorschubantriebssteuerung wiedergibt, ist.Numerical control device according to Claim 1 , wherein the coupled simulation unit calculates the process information when using the operation command under a predetermined cutting condition for a cutting process model, the cutting process model being a mathematical model representing a cutting property between the tool and the workpiece, a dynamic model being a mathematical model representing a dynamic property of the structure, a spindle drive control model being a mathematical model representing the spindle drive system and a spindle drive controller controlling the spindle drive system, and a feed drive control model being a mathematical model representing the feed drive system and a feed drive controller controlling the feed drive system. Numerische Steuervorrichtung nach Anspruch 2, ferner umfassend eine Speichereinheit, um das Schneidprozessmodell, das Dynamikmodell, das Spindelantriebssteuermodell, das Vorschubantriebssteuermodell und Schneidbedingungsinformationen, welche die Schneidbedingung wiedergeben, zu speichern, wobei die gekoppelte Simulationseinheit die Prozessinformationen unter Verwendung des Schneidprozessmodells, des Dynamikmodells, des Spindelantriebssteuermodells, des Vorschubantriebssteuermodells und der Schneidbedingungsinformationen, die in der Speichereinheit gespeichert sind, berechnet.Numerical control device according to Claim 2 , further comprising a storage unit for storing the cutting process model, the dynamic model, the spindle drive control model, the feed drive control model, and cutting condition information representing the cutting condition, wherein the coupled simulation unit calculates the process information using the cutting process model, the dynamic model, the spindle drive control model, the feed drive control model, and the cutting condition information stored in the storage unit. Numerische Steuervorrichtung nach einem der Ansprüche 1 bis 3, wobei die Befehlserzeugungseinheit als den korrigierten Betriebsbefehl einen Befehl erzeugt, bei dem ein relativer Pfad, entlang dessen sich das Werkzeug in Bezug auf das Werkstück bewegt, gleich dem des Basisbetriebsbefehls ist und mindestens eines von einem Vorschubbetrag der Vorschubachse und einer ungeschnittenen Spandicke des Werkstücks geändert ist.Numerical control device according to one of the Claims 1 until 3 wherein the command generation unit generates, as the corrected operation command, a command in which a relative path along which the tool moves with respect to the workpiece is the same as that of the basic operation command and at least one of a feed amount of the feed axis and an uncut chip thickness of the workpiece is changed. Numerische Steuervorrichtung nach Anspruch 4, wobei die Befehlserzeugungseinheit als den korrigierten Betriebsbefehl einen Betriebsbefehl einstellt, bei dem mindestens eines von einer Spindeldrehzahl und einer Vorschubrate des Basisbetriebsbefehls gemäß dem Vorschubbetrag oder der ungeschnittenen Spandicke des Werkstücks geändert ist.Numerical control device according to Claim 4 wherein the command generation unit sets, as the corrected operation command, an operation command in which at least one of a spindle speed and a feed rate of the basic operation command is changed according to the feed amount or the uncut chip thickness of the workpiece. Numerische Steuervorrichtung nach einem der Ansprüche 1 bis 5, wobei die Befehlserzeugungseinheit den korrigierten Betriebsbefehl durch Überlagern einer vorbestimmten Profilvariation auf mindestens eines von einer Spindeldrehzahl und einer Vorschubrate des Basisbetriebsbefehls erzeugt.Numerical control device according to one of the Claims 1 until 5 wherein the command generating unit generates the corrected operation command by superimposing a predetermined profile variation on at least one of a spindle speed and a feed rate of the basic operation command. Numerische Steuervorrichtung nach einem der Ansprüche 1 bis 6, wobei die Befehlserzeugungseinheit den korrigierten Betriebsbefehl auf Grundlage der Prozessinformationen erzeugt.Numerical control device according to one of the Claims 1 until 6 , wherein the command generation unit generates the corrected operation command based on the process information. Numerische Steuervorrichtung nach Anspruch 7, wobei die Befehlserzeugungseinheit ferner einen korrigierten Betriebsbefehl auf Grundlage der Prozessinformationen erzeugt, wenn der korrigierte Betriebsbefehl der Werkzeugmaschine erteilt wird.Numerical control device according to Claim 7 wherein the command generation unit further generates a corrected operation command based on the process information when the corrected operation command is issued to the machine tool. Numerische Steuervorrichtung nach Anspruch 7 oder 8, ferner umfassend: eine Lerndatenerfassungseinheit, um Lerndaten zu erfassen, welche die Prozessinformationen und den Betriebsbefehl, der den Prozessinformationen entspricht, beinhalten; und eine Modellerzeugungseinheit, um unter Verwendung der Lerndaten ein erlerntes Modell zum Ableiten eines neu korrigierten Betriebsbefehls aus den Prozessinformationen zu erzeugen.Numerical control device according to Claim 7 or 8th , further comprising: a learning data acquisition unit for acquiring learning data including the process information and the operation command corresponding to the process information; and a model generation unit for generating a learned model for deriving a newly corrected operating command from the process information using the learning data. Numerische Steuervorrichtung nach einem der Ansprüche 7 bis 9, ferner umfassend: eine Datenerfassungseinheit, um die Prozessinformationen zu erfassen; und eine Inferenzeinheit, um einen neu korrigierten Betriebsbefehl aus den durch die Datenerfassungseinheit erfassten Prozessinformationen unter Verwendung eines erlernten Modells zum Ableiten eines neu korrigierten Betriebsbefehls aus den Prozessinformationen auszugeben.Numerical control device according to one of the Claims 7 until 9 , further comprising: a data acquisition unit for acquiring the process information; and an inference unit for outputting a newly corrected operation command from the process information acquired by the data acquisition unit using a learned model for deriving a newly corrected operation command from the process information. Numerische Steuervorrichtung nach einem der Ansprüche 1 bis 6, wobei die Werkzeugmaschine ferner einen Sensor beinhaltet, um eine Schwingung der Struktur während des Betriebs zu erkennen und ein Sensorsignal auszugeben, und die Befehlserzeugungseinheit den korrigierten Betriebsbefehl auf Grundlage des Sensorsignals erzeugt.Numerical control device according to one of the Claims 1 until 6 wherein the machine tool further includes a sensor for detecting vibration of the structure during operation and outputting a sensor signal, and the command generating unit generates the corrected operation command based on the sensor signal. Numerische Steuervorrichtung nach Anspruch 11, ferner umfassend: eine Lerndatenerfassungseinheit, um Lerndaten zu erfassen, welche das Sensorsignal und den Betriebsbefehl, der dem Sensorsignal entspricht, beinhalten; und eine Modellerzeugungseinheit, um unter Verwendung der Lerndaten ein erlerntes Modell zum Ableiten eines neu korrigierten Betriebsbefehls aus dem Sensorsignal zu erzeugen.Numerical control device according to Claim 11 , further comprising: a learning data acquisition unit for acquiring learning data including the sensor signal and the operation command corresponding to the sensor signal; and a model generation unit for generating a learned model for deriving a newly corrected operation command from the sensor signal using the learning data. Numerische Steuervorrichtung nach Anspruch 11 oder 12, ferner umfassend: eine Datenerfassungseinheit, um das Sensorsignal zu erfassen; und eine Inferenzeinheit, um einen neu korrigierten Betriebsbefehl aus dem durch die Datenerfassungseinheit erfassten Sensorsignal unter Verwendung eines erlernten Modells zum Ableiten eines neu korrigierten Betriebsbefehls aus dem Sensorsignal auszugeben.Numerical control device according to Claim 11 or 12 , further comprising: a data acquisition unit for acquiring the sensor signal; and an inference unit for outputting a newly corrected operation command from the sensor signal acquired by the data acquisition unit using a learned model for deriving a newly corrected operation command from the sensor signal. Bearbeitungssystem, umfassend: eine Werkzeugmaschine, die ein Antriebssystem beinhaltet, das ein Spindelantriebssystem, um ein Werkzeug zum Bearbeiten eines Werkstücks oder eine das Werkstück drehende Spindel anzutreiben, und ein Vorschubantriebssystem, um eine Vorschubachse anzutreiben, die eine relative Position zwischen dem Werkzeug und dem Werkstück ändert, beinhaltet, wobei die Werkzeugmaschine dazu konfiguriert ist, das Werkstück auf Grundlage eines Betriebsbefehls zu bearbeiten, der auf Grundlage eines numerischen Steuerprogramms erzeugt wird; und eine numerische Steuervorrichtung, um die Werkzeugmaschine durch Erteilen des Betriebsbefehls an die Werkzeugmaschine zu steuern, wobei die numerische Steuervorrichtung Folgendes beinhaltet: eine Befehlserzeugungseinheit, um einen Basisbetriebsbefehl zu erzeugen, bei dem es sich um den Betriebsbefehl auf Grundlage des numerischen Steuerungsprogramms handelt, und einen korrigierten Betriebsbefehl zu erzeugen, bei dem es sich um den Betriebsbefehl handelt, der durch Korrigieren des Basisbetriebsbefehls erhalten wird; eine gekoppelte Simulationseinheit, um Prozessinformationen zu berechnen, die einen Einfluss eines Betriebs des Antriebssystems und eine Dynamik einer Struktur widerspiegeln, die während des Betriebs der Werkzeugmaschine bei einem Schneidprozess des Werkstücks mit dem Werkzeug Schwingung erzeugt, wobei die Prozessinformationen Ergebnisse einer Simulationsbearbeitung angeben, bei welcher der Basisbetriebsbefehl und der korrigierte Betriebsbefehl jeweils der Werkzeugmaschine erteilt werden; und eine Prozessbewertungseinheit, um auf Grundlage einer Vielzahl der Prozessinformationen eine Größe eines Bearbeitungsfehlers bei einer Verwendung von jedem aus einer Vielzahl der Betriebsbefehle zu bewerten und den der Werkzeugmaschine zu erteilenden Betriebsbefehl aus dem Basisbetriebsbefehl und dem korrigierten Betriebsbefehl auszuwählen.A machining system comprising: a machine tool including a drive system including a spindle drive system for driving a tool for machining a workpiece or a spindle rotating the workpiece, and a feed drive system for driving a feed axis that changes a relative position between the tool and the workpiece, the machine tool configured to machine the workpiece based on an operation command generated based on a numerical control program; and a numerical control device for controlling the machine tool by issuing the operation command to the machine tool, the numerical control device including: a command generation unit for generating a basic operation command that is the operation command based on the numerical control program and generating a corrected operation command that is the operation command obtained by correcting the basic operation command; a coupled simulation unit for calculating process information reflecting an influence of an operation of the drive system and dynamics of a structure that generates vibration during operation of the machine tool in a cutting process of the workpiece with the tool, the process information indicating results of simulation machining in which the basic operation command and the corrected operation command are respectively given to the machine tool; and a process evaluation unit for evaluating, based on a plurality of the process information, a magnitude of a machining error in use of each of a plurality of the operation commands and selecting the operation command to be given to the machine tool from the basic operation command and the corrected operation command. Bearbeitungssystem nach Anspruch 14, ferner umfassend eine Lernvorrichtung, die Folgendes beinhaltet: eine Lerndatenerfassungseinheit, um Lerndaten zu erfassen, die den durch die numerische Steuervorrichtung erzeugten Betriebsbefehl und die Prozessinformationen, die ein Simulationsergebnis angeben, wenn der Betriebsbefehl der Werkzeugmaschine erteilt wird, beinhalten; und eine Modellerzeugungseinheit, um unter Verwendung der Lerndaten ein erlerntes Modell zum Ableiten eines neu korrigierten Betriebsbefehls aus den Prozessinformationen der numerischen Steuervorrichtung zu erzeugen.Processing system according to Claim 14 , further comprising a learning device including: a learning data acquisition unit for acquiring learning data including the operation command generated by the numerical control device and the process information indicating a simulation result when the operation command is given to the machine tool; and a model generation unit for generating a learned model for deriving a newly corrected operation command from the process information of the numerical control device using the learning data. Bearbeitungssystem nach Anspruch 14 oder 15, ferner umfassend eine Inferenzvorrichtung, die Folgendes beinhaltet: eine Datenerfassungseinheit, um die durch die numerische Steuervorrichtung erzeugten Prozessinformationen zu erfassen; und eine Inferenzeinheit, um einen neu korrigierten Betriebsbefehl aus den durch die Datenerfassungseinheit erfassten Prozessinformationen unter Verwendung eines erlernten Modells zum Ableiten eines neu korrigierten Betriebsbefehls aus den Prozessinformationen auszugeben.Processing system according to Claim 14 or 15 , further comprising an inference device including: a data acquisition unit for acquiring the process information generated by the numerical control device; and an inference unit for outputting a newly corrected operation command from the process information acquired by the data acquisition unit using a learned model for deriving a newly corrected operation command from the process information. Bearbeitungssystem nach Anspruch 14, wobei die Werkzeugmaschine ferner einen Sensor beinhaltet, um eine Schwingung der Struktur während des Betriebs zu erkennen und ein Sensorsignal auszugeben, und das Bearbeitungssystem ferner eine Lernvorrichtung umfasst, die Folgendes beinhaltet: eine Lerndatenerfassungseinheit, um Lerndaten zu erfassen, welche das während einer Steuerung der Werkzeugmaschine durch die numerische Steuervorrichtung erhaltene Sensorsignal und den Betriebsbefehl, der dem Sensorsignal entspricht, beinhalten; und eine Modellerzeugungseinheit, um unter Verwendung der Lerndaten ein erlerntes Modell zum Ableiten eines neu korrigierten Betriebsbefehls aus dem Sensorsignal zu erzeugen.Processing system according to Claim 14 , wherein the machine tool further includes a sensor for detecting vibration of the structure during operation and outputting a sensor signal, and the machining system further comprises a learning device including: a learning data acquisition unit for acquiring learning data including the sensor signal obtained during control of the machine tool by the numerical control device and the operation command corresponding to the sensor signal; and a model generation unit for generating a learned model for deriving a newly corrected operation command from the sensor signal using the learning data. Bearbeitungssystem nach Anspruch 14 oder 17, wobei die Werkzeugmaschine ferner einen Sensor beinhaltet, um eine Schwingung der Struktur während des Betriebs zu erkennen und ein Sensorsignal auszugeben, und das Bearbeitungssystem ferner eine Inferenzvorrichtung umfasst, die Folgendes beinhaltet: eine Datenerfassungseinheit, um das Sensorsignal zu erfassen, wenn die numerische Steuervorrichtung der Werkzeugmaschine den Betriebsbefehl erteilt; und eine Inferenzeinheit, um einen neu korrigierten Betriebsbefehl aus dem durch die Datenerfassungseinheit erfassten Sensorsignal unter Verwendung eines erlernten Modells zum Ableiten eines neu korrigierten Betriebsbefehls aus dem Sensorsignal auszugeben.Processing system according to Claim 14 or 17 , wherein the machine tool further includes a sensor for detecting vibration of the structure during operation and outputting a sensor signal, and the machining system further comprises an inference device including: a data acquisition unit for acquiring the sensor signal when the numerical controller issues the operation command to the machine tool; and an inference unit for outputting a newly corrected operation command from the sensor signal acquired by the data acquisition unit by using a learned model for deriving a newly corrected operation command from the sensor signal. Numerisches Steuerverfahren, das durch eine numerische Steuervorrichtung ausgeführt wird, die eine Werkzeugmaschine steuert, indem sie der Werkzeugmaschine einen Betriebsbefehl erteilt, wobei die Werkzeugmaschine ein Antriebssystem beinhaltet, das ein Spindelantriebssystem, um ein Werkzeug zum Bearbeiten eines Werkstücks oder eine das Werkstück drehende Spindel anzutreiben, und ein Vorschubantriebssystem, um eine Vorschubachse anzutreiben, die eine relative Position zwischen dem Werkzeug und dem Werkstück ändert, beinhaltet, wobei das numerische Steuerverfahren Folgendes umfasst: einen Schritt zum Erzeugen eines Basisbetriebsbefehls, bei dem es sich um den Betriebsbefehl auf Grundlage eines numerischen Steuerungsprogramms handelt; einen Schritt zum Erzeugen eines korrigierten Betriebsbefehls, bei dem es sich um den Betriebsbefehl handelt, der durch Korrigieren des Basisbetriebsbefehls erhalten wird; einen Schritt zum Berechnen von Prozessinformationen, die einen Einfluss eines Betriebs des Antriebssystems und eine Dynamik einer Struktur widerspiegeln, die während des Betriebs der Werkzeugmaschine bei einem Schneidprozess des Werkstücks mit dem Werkzeug Schwingung erzeugt, wobei die Prozessinformationen Ergebnisse einer Simulationsbearbeitung angeben, bei welcher der Basisbetriebsbefehl und der korrigierte Betriebsbefehl jeweils der Werkzeugmaschine erteilt werden; und einen Schritt zum Bewerten, auf Grundlage einer Vielzahl der Prozessinformationen, einer Größe eines Bearbeitungsfehlers bei einer Verwendung von jedem aus einer Vielzahl der Betriebsbefehle und Auswählen des der Werkzeugmaschine zu erteilenden Betriebsbefehls aus dem Basisbetriebsbefehl und dem korrigierten Betriebsbefehl.A numerical control method executed by a numerical control device that controls a machine tool by giving an operation command to the machine tool, the machine tool including a drive system including a spindle drive system for driving a tool for machining a workpiece or a spindle that rotates the workpiece, and a feed drive system for driving a feed axis that changes a relative position between the tool and the workpiece, the numerical control method comprising: a step of generating a basic operation command that is the operation command based on a numerical control program; a step of generating a corrected operation command that is the operation command obtained by correcting the basic operation command; a step of calculating process information reflecting an influence of an operation of the drive system and a dynamic of a structure that generates vibration during operation of the machine tool in a cutting process of the workpiece with the tool, the process information indicating results of simulation machining in which the basic operation command and the corrected operation command are respectively given to the machine tool; and a step of evaluating, based on a plurality of the process information, a magnitude of a machining error when using each of a plurality of the operation commands and selecting the operation command to be given to the machine tool from the basic operation command and the corrected operation command. Bearbeitungsverfahren zum Bearbeiten eines Werkstücks durch Erteilen eines Betriebsbefehls an eine Werkzeugmaschine, wobei die Werkzeugmaschine ein Antriebssystem beinhaltet, das ein Spindelantriebssystem, um ein Werkzeug zum Bearbeiten eines Werkstücks oder eine das Werkstück drehende Spindel anzutreiben, und ein Vorschubantriebssystem, um eine Vorschubachse anzutreiben, die eine relative Position zwischen dem Werkzeug und dem Werkstück ändert, beinhaltet, wobei das Bearbeitungsverfahren Folgendes umfasst: einen Schritt zum Erzeugen eines Basisbetriebsbefehls, bei dem es sich um den Betriebsbefehl auf Grundlage eines numerischen Steuerungsprogramms handelt; einen Schritt zum Erzeugen eines korrigierten Betriebsbefehls, bei dem es sich um den Betriebsbefehl handelt, der durch Korrigieren des Basisbetriebsbefehls erhalten wird; einen Schritt zum Berechnen von Prozessinformationen, die einen Einfluss eines Betriebs des Antriebssystems und eine Dynamik einer Struktur widerspiegeln, die während des Betriebs der Werkzeugmaschine bei einem Schneidprozess des Werkstücks mit dem Werkzeug Schwingung erzeugt, wobei die Prozessinformationen Ergebnisse einer Simulationsbearbeitung angeben, bei welcher der Basisbetriebsbefehl und der korrigierte Betriebsbefehl jeweils der Werkzeugmaschine erteilt werden; einen Schritt zum Bewerten, auf Grundlage einer Vielzahl der Prozessinformationen, einer Größe eines Bearbeitungsfehlers bei einer Verwendung von jedem aus einer Vielzahl der Betriebsbefehle und Auswählen des der Werkzeugmaschine zu erteilenden Betriebsbefehls aus dem Basisbetriebsbefehl und dem korrigierten Betriebsbefehl; einen Schritt zum Erteilen des ausgewählten Betriebsbefehls an die Werkzeugmaschine; und einen Schritt zum Bearbeiten des Werkstücks unter Verwendung des Werkzeugs, während das Antriebssystem gemäß dem Betriebsbefehl betrieben wird.A machining method for machining a workpiece by issuing an operation command to a machine tool, the machine tool including a drive system that includes a spindle drive system for driving a tool for machining a workpiece or a spindle that rotates the workpiece, and a feed drive system for driving a feed axis that changes a relative position between the tool and the workpiece, the machining method comprising: a step of generating a basic operation command that is the operation command based on a numerical control program; a step of generating a corrected operation command that is the operation command obtained by correcting the basic operation command; a step of calculating process information that reflects an influence of an operation of the drive system and dynamics of a structure that generates vibration during operation of the machine tool in a cutting process of the workpiece with the tool, the process information indicating results of simulation machining in which the basic operation command and the corrected operation command are respectively issued to the machine tool; a step of evaluating, based on a plurality of the process information, a magnitude of a machining error when using each of a plurality of the operation commands and selecting the operation command to be given to the machine tool from the basic operation command and the corrected operation command; a step of giving the selected operation command to the machine tool; and a step of machining the workpiece using the tool while the Drive system is operated according to the operating command.
DE112021008301.5T 2021-09-30 2021-09-30 NUMERICAL CONTROL DEVICE, MACHINING SYSTEM, NUMERICAL CONTROL METHOD AND MACHINING METHOD Withdrawn DE112021008301T5 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/036265 WO2023053399A1 (en) 2021-09-30 2021-09-30 Numerical control device, machining system, numerical control method, and machining method

Publications (1)

Publication Number Publication Date
DE112021008301T5 true DE112021008301T5 (en) 2024-08-01

Family

ID=85226236

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021008301.5T Withdrawn DE112021008301T5 (en) 2021-09-30 2021-09-30 NUMERICAL CONTROL DEVICE, MACHINING SYSTEM, NUMERICAL CONTROL METHOD AND MACHINING METHOD

Country Status (4)

Country Link
JP (1) JP7224541B1 (en)
CN (1) CN117957088A (en)
DE (1) DE112021008301T5 (en)
WO (1) WO2023053399A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024247258A1 (en) * 2023-06-02 2024-12-05 ファナック株式会社 Device and method for compensating data loss in industrial machine

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013132733A (en) 2011-12-27 2013-07-08 Jtekt Corp Device and method for calculating machined surface property, and device and method for determining machining condition

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2846896B2 (en) * 1989-09-08 1999-01-13 東芝機械株式会社 NC servo simulator
US6266572B1 (en) * 1996-11-07 2001-07-24 Okuma Corporation Apparatus for generating a numerical control command according to cut resistance value and cut torque value of machining simulation
JP2000084794A (en) * 1998-09-14 2000-03-28 Makino Milling Mach Co Ltd Processing equipment
JP3399419B2 (en) * 1999-10-28 2003-04-21 三菱電機株式会社 Numerical control simulation device
JP5082621B2 (en) * 2007-06-28 2012-11-28 株式会社ジェイテクト Workpiece grinding method and processing apparatus
EP2660671B1 (en) * 2011-09-14 2015-01-21 JTEKT Corporation Processing control apparatus, and processing control method
JP6606967B2 (en) * 2014-11-07 2019-11-20 株式会社ジェイテクト Gear processing apparatus and gear processing method
JP6557285B2 (en) * 2017-05-26 2019-08-07 ファナック株式会社 Control device and machine learning device
JP6608879B2 (en) * 2017-07-21 2019-11-20 ファナック株式会社 Machine learning device, numerical control device, numerical control system, and machine learning method
JP6804657B2 (en) * 2017-08-30 2020-12-23 三菱電機株式会社 Numerical control system and motor control device
JP6871842B2 (en) * 2017-11-30 2021-05-19 三菱重工工作機械株式会社 Machining simulation condition optimization method, machining simulation equipment, machining simulation system and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013132733A (en) 2011-12-27 2013-07-08 Jtekt Corp Device and method for calculating machined surface property, and device and method for determining machining condition

Also Published As

Publication number Publication date
WO2023053399A1 (en) 2023-04-06
JPWO2023053399A1 (en) 2023-04-06
JP7224541B1 (en) 2023-02-17
CN117957088A (en) 2024-04-30

Similar Documents

Publication Publication Date Title
DE102016008994B4 (en) MACHINE TOOL, SIMULATION DEVICE AND MACHINE LEARNING DEVICE
DE112019007725B4 (en) engine control and engine control methods
DE112019007434B4 (en) Numerical control, machine learning device and methods for numerical control
DE102018123849B4 (en) Thermal displacement compensation systems, numerical control, methods, and learning model set
DE112019007578B4 (en) Numerical control, numerical control method and machine learning device
DE112019007222B4 (en) engine control unit
DE102020001127A1 (en) Chatter vibration determination device, machine learning device and system
DE112017001162B4 (en) servo control device
DE102011006447A1 (en) Method for machining workpieces by means of a numerically controlled workpiece machining device and workpiece machining device
DE112018000172T5 (en) Numerical control device
DE112018007741B4 (en) MACHINE LEARNING DEVICE AND DEVICE FOR GENERATING PROGRAMS FOR NUMERICALLY CONTROLLED MACHINING
DE102016219594A1 (en) Method and device for driving dynamics control for a motor vehicle
DE112019007355B4 (en) NUMERICAL CONTROL DEVICE
DE112019008005T5 (en) POSITIONING CONTROL DEVICE AND POSITIONING CONTROL METHOD
DE112018007736B4 (en) Numerical control device
DE112023004612T5 (en) Parameter adjustment device and parameter adjustment method
DE112021008302T5 (en) NUMERICAL CONTROL DEVICE, MACHINING SYSTEM, NUMERICAL CONTROL METHOD AND MACHINING METHOD
DE112020006576T5 (en) Numerical control unit
DE112022004852T5 (en) Device for estimating changes in industrial machines
DE112021005768T5 (en) Machining program modification device, numerical control device, machining program modification method, and machine learning device
DE112021008301T5 (en) NUMERICAL CONTROL DEVICE, MACHINING SYSTEM, NUMERICAL CONTROL METHOD AND MACHINING METHOD
DE112019007889T5 (en) MACHINING PROGRAM CONVERSION DEVICE, NUMERICAL CONTROL DEVICE AND MACHINING PROGRAM CONVERSION METHOD
DE112022005227B4 (en) Control parameter adjustment device
DE112018008169B4 (en) Numerical control and machine learning device
DE112019007493T5 (en) Numerical control, machine learning apparatus and numerical control method

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R084 Declaration of willingness to licence
R120 Application withdrawn or ip right abandoned