DE102018004048A1 - Steuerung und Maschinenlernvorrichtung - Google Patents

Steuerung und Maschinenlernvorrichtung Download PDF

Info

Publication number
DE102018004048A1
DE102018004048A1 DE102018004048.9A DE102018004048A DE102018004048A1 DE 102018004048 A1 DE102018004048 A1 DE 102018004048A1 DE 102018004048 A DE102018004048 A DE 102018004048A DE 102018004048 A1 DE102018004048 A1 DE 102018004048A1
Authority
DE
Germany
Prior art keywords
tool
cutting part
workpiece
data
per unit
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.)
Granted
Application number
DE102018004048.9A
Other languages
English (en)
Other versions
DE102018004048B4 (de
Inventor
Yuanming XU
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102018004048A1 publication Critical patent/DE102018004048A1/de
Application granted granted Critical
Publication of DE102018004048B4 publication Critical patent/DE102018004048B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/401Numerical 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 measuring, e.g. calibration and initialisation, measuring workpiece for machining purposes
    • 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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning 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/416Numerical 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 of velocity, acceleration or deceleration
    • G05B19/4163Adaptive control of feed or cutting velocity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35349Display part, programmed locus and tool path, traject, dynamic locus
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37355Cutting, milling, machining force
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49065Execute learning mode first for determining adaptive control parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Automatic Control Of Machine Tools (AREA)
  • Numerical Control (AREA)

Abstract

Eine Maschinenlernvorrichtung einer Steuerung überwacht als Zustandsvariable, die einen aktuellen Zustand einer Umgebung ausdrücken, Vorschubmengendaten, die eine Vorschubmenge pro Einheitszyklus eines Werkzeugs angeben, und Schwingungsmengendaten, die eine Schwingungsmenge eines Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben. Darüber hinaus erfasst die Maschinenlernvorrichtung Bestimmungsdaten, die ein Korrektheitsbestimmungsergebnis der Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben. Dann lernt die Maschinenlernvorrichtung die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in Verbindung mit den Schwingungsmengendaten unter Verwendung der Zustandsvariablen und der Bestimmungsdaten.

Description

  • [ALLGEMEINER STAND DER TECHNIK]
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine Steuerung und eine Maschinenlernvorrichtung und insbesondere eine Steuerung, die Schwingungen beim Abschluss eines Schneidens verhindert, und eine Maschinenlernvorrichtung.
  • Beschreibung des Standes der Technik
  • Wenn von einer Werkzeugmaschine unter Verwendung eines Schaftfräsers ein Kreuzschnitt-Nuten durchgeführt wird, wird eine Schneidebelastung auf ein Werkzeug 5 ausgeübt, wenn ein Werkstück 6 geschnitten wird, was zum Auftreten einer Ablenkung in dem Schneidteil des Werkzeugs 5 führt, wie in 9 gezeigt (siehe japanische Offenlegungsschrift Nr. 2000-084794 ).
  • Die 10A und 10B sind Diagramme, die einen Zustand zeigen, in dem ein Kreuzschnitt-Nuten von einem Schaftfräser durchgeführt wird.
  • Beim Kreuzschnitt-Nuten wird eine Schneidebelastung auf den Schneidteil eines Werkzeugs 5 in einer Richtung ausgeübt, die zu der Vorschubrichtung des Werkzeugs 5 entgegengesetzt ist, wenn ein Werkstück 6 maschinell bearbeitet wird. Aufgrund der Schneidebelastung wird der Schneidteil des Werkzeugs 5 abgelenkt, wie in 10B (Seitenansicht) gezeigt. Die Schneidebelastung, die auf den Schneidteil des Werkzeugs 5 ausgeübt wird, nimmt zu einem Punkt schnell ab, zu dem die Schneidearbeit des Werkstücks 6 abgeschlossen ist, d. h. zu einem Moment, zu dem das Werkzeug 5 das Ende des Werkstücks 6 erreicht und der Schneidteil des Werkzeugs 5 das Werkstück 6 verlässt. Gleichzeitig wird eine Ablenkung, die in dem Schneidteil des Werkzeugs 5 aufgetreten ist, schnell zurückgesetzt. Der Schneidteil des Werkzeugs 5 vibriert jedoch, während seine Ablenkung zurückgesetzt wird.
  • Schwingungen, die in dem Schneidteil eines Werkzeugs auftreten, wie oben beschrieben, haben einen beträchtlichen Einfluss auf die Qualität einer maschinell bearbeiteten Oberfläche am Ende eines Werkstücks oder könnten in einigen Fällen zur Verringerung der Genauigkeit der Bearbeitungsform des Werkstücks und der Verkürzung der Lebensdauer eines Schneidwerkzeugs führen. Darüber hinaus könnten übermäßige Schwingungen zum Ausfall einer Maschine führen.
  • Als herkömmliche Gegenmaßnahmen zu derartigen Problemen werden Schwingungen, die auftreten, wenn der Schneidteil eines Werkzeugs ein Werkstück verlässt, nicht berücksichtigt oder eine geringe Vorschubmenge (geringe Vorschubgeschwindigkeit) pro Einheitszyklus, wenn der Schneidteil des Werkzeugs das Werkstück verlässt, wird von einem Programm spezifiziert, um eine schnelle Veränderung der Ablenkung des Schneidteils des Werkzeugs zu verhindern.
  • Das Ausmaß einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus, bei dem eine schnelle Veränderung der Ablenkung des Schneidteils eines Werkzeugs verhindert werden kann, ist in Abhängigkeit von dem Material eines Werkstücks, einem Typ eines Werkzeugs, der Steifigkeit eines Werkzeugs und einer Maschine oder dergleichen unterschiedlich. Da die Justierung einer geringen Vorschubmenge (geringen Vorschubgeschwindigkeit) pro Einheitszyklus zu einer Verlängerung der Zykluszeit führt, ist es darüber hinaus nicht bevorzugt, eine übermäßig geringe Vorschubmenge (geringe Vorschubgeschwindigkeit) einzustellen. Ein unerfahrener Betreiber nimmt folglich viel Zeit in Anspruch, um eine optimale Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus zu finden.
  • [KURZDARSTELLUNG DER ERFINDUNG]
  • In Anbetracht des obigen Problems weist die vorliegende Erfindung einen Gegenstand des Bereitstellens einer Steuerung und einer Maschinenlernvorrichtung auf, die Schwingungen, die in einem Schneidteil auftreten, wenn der Schneidteil eines Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, verhindern können.
  • Eine Steuerung gemäß einer Ausführungsform der vorliegenden Erfindung bestimmt eine Vorschubmenge pro Einheitszyklus eines Werkzeugs, wenn ein Schneidteil des Werkzeugs durch ein Werkstück beim Kreuzschnitt-Nuten hindurchgeht. Die Steuerung umfasst eine Maschinenlernvorrichtung, die die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, lernt. Die Maschinenlernvorrichtung umfasst einen Zustandsüberwachungsabschnitt, der als Zustandsvariablen, die einen aktuellen Zustand einer Umgebung ausdrücken, Vorschubmengendaten, die die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben, und Schwingungsmengendaten, die eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil durch das Werkstück hindurchgeht, angeben, überwacht, einen Bestimmungsdatenerfassungsabschnitt, der Bestimmungsdaten erfasst, die ein Korrektheitsbestimmungsergebnis der Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben, und einen Lernabschnitt, der die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in Verbindung mit den Schwingungsmengendaten unter Verwendung der Zustandsvariablen und der Bestimmungsdaten lernt.
  • Der Zustandsüberwachungsabschnitt kann weiterhin als die Zustandsvariable mindestens eines aus Werkzeugdaten, die eine Information zu dem Werkzeug angeben, Werkstückdaten, die eine Information zu dem Werkstück angeben, Bearbeitungsformdaten, die eine Information zu einer Bearbeitungsform angeben, und Maschinendaten, die eine Information zu einer Maschine angeben, überwachen und der Lernabschnitt kann die Daten, die von dem Zustandsüberwachungsabschnitt überwacht werden, in Verbindung mit den Schwingungsmengendaten lernen.
  • Die Bestimmungsdaten können neben dem Korrektheitsbestimmungsergebnis der Schwingungsmenge des Schneidteils des Werkzeugs ein Korrektheitsbestimmungsergebnis einer Zykluszeit für das Kreuzschnitt-Nuten umfassen.
  • Der Lernabschnitt kann einen Belohnungsberechnungsabschnitt, der eine Belohnung in Bezug auf das Korrektheitsbestimmungsergebnis berechnet, und einen Wertefunktionsaktualisierungsabschnitt umfassen, der unter Verwendung der Belohnung eine Funktion aktualisiert, die einen Wert der Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in Bezug auf die Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, ausdrückt.
  • Der Lernabschnitt kann die Zustandsvariablen und die Bestimmungsdaten in einer mehrschichtigen Struktur berechnen.
  • Die Steuerung kann weiterhin einen Entscheidungsfindungsabschnitt umfassen, der einen Befehlswert auf der Basis der Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, gemäß einem Lernergebnis des Lernabschnitts ausgibt.
  • Der Zustandsüberwachungsabschnitt kann weiterhin Hauptspindeldrehzahldaten überwachen, die die Drehzahl einer Hauptspindel als die Zustandsvariable angeben, und der Lernabschnitt kann die Daten, die von dem Zustandsüberwachungsabschnitt überwacht wurden, in Verbindung mit den Schwingungsmengendaten lernen.
  • Der Entscheidungsfindungsabschnitt kann einen Befehlswert auf der Basis der Drehzahl der Hauptspindel, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, ausgeben.
  • Der Lernabschnitt kann die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in jeder von einer Vielzahl von Werkzeugmaschinen unter Verwendung der Zustandsvariablen und der Bestimmungsdaten, die für jede der Vielzahl von Werkzeugmaschinen erhalten wurden, lernen.
  • Die Maschinenlernvorrichtung kann in einem Cloud-Server existieren.
  • Eine Maschinenlernvorrichtung gemäß einer anderen Ausführungsform der vorliegenden Erfindung lernt eine Vorschubmenge pro Einheitszyklus eines Werkzeugs, wenn ein Schneidteil des Werkzeugs durch ein Werkstück beim Kreuzschnitt-Nuten hindurchgeht. Die Maschinenlernvorrichtung umfasst: einen Zustandsüberwachungsabschnitt, der als Zustandsvariablen, die einen aktuellen Zustand einer Umgebung ausdrücken, Vorschubmengendaten, die die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben, und Schwingungsmengendaten, die eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben, überwacht; einen Bestimmungsdatenerfassungsabschnitt, der Bestimmungsdaten erfasst, die ein Korrektheitsbestimmungsergebnis der Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben; und einen Lernabschnitt, der die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in Verbindung mit den Schwingungsmengendaten unter Verwendung der Zustandsvariablen und der Bestimmungsdaten lernt.
  • Gemäß einer Ausführungsform der vorliegenden Erfindung ist es möglich, eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, auf der Basis eines Lernergebnisses zu bestimmen, um Schwingungen, die in dem Schneidteil, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht, auftreten, zu verhindern.
  • Figurenliste
    • 1 ist ein schematisches Hardwarekonfigurationsdiagramm einer Steuerung gemäß einer ersten Ausführungsform der vorliegenden Erfindung;
    • 2 ist ein schematisches Funktionsblockdiagramm der Steuerung gemäß der ersten Ausführungsform der vorliegenden Erfindung;
    • 3 ist ein schematisches Funktionsblockdiagramm, das eine Ausführungsform der in 1 gezeigten Steuerung zeigt;
    • 4 ist ein schematisches Ablaufdiagramm, das eine Ausführungsform eines Maschinenlernverfahrens zeigt;
    • 5A ist ein Diagramm zur Beschreibung eines Neurons;
    • 5B ist ein Diagramm zur Beschreibung eines neuronalen Netzwerks;
    • 6 ist ein schematisches Funktionsblockdiagramm einer Steuerung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung;
    • 7 ist ein schematisches Funktionsblockdiagramm, das eine Ausführungsform eines Systems zeigt, das Steuerungen umfasst;
    • 8 ist ein schematisches Funktionsblockdiagramm, das eine andere Ausführungsform eines Systems zeigt, das eine Steuerung umfasst;
    • 9 ist ein Diagramm, das ein Beispiel eines Kreuzschnitt-Nutens gemäß einem Stand der Technik zeigt; und
    • 10A und 10B sind Diagramme zur Beschreibung von Problemen beim Kreuzschnitt-Nuten gemäß dem Stand der Technik.
  • [AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN]
  • 1 ist ein schematisches Hardwarekonfigurationsdiagramm, das eine Steuerung 1 und die wesentlichen Teile einer Werkzeugmaschine, die von der Steuerung gesteuert wird, gemäß einer ersten Ausführungsform zeigt.
  • Die Steuerung 1 der Ausführungsform kann als beispielsweise eine numerische Steuerung zur Steuerung einer Werkzeugmaschine (nicht gezeigt), die ein Kreuzschnitt-Nuten durchführt, montiert sein. Ein Zentralprozessor (CPU) 11 der Steuerung 1 gemäß der Ausführungsform ist ein Prozessor, der die Steuerung 1 gänzlich steuert. Der CPU 11 liest ein Systemprogramm, das in einem Festwertspeicher (ROM) 12 gespeichert ist, mittels eines Busses 20 und steuert die gesamte Steuerung 1 gemäß dem Systemprogramm. Ein Direktzugriffsspeicher (RAM) 13 speichert vorläufige Berechnungsdaten oder Anzeigedaten und verschiedene Daten oder dergleichen, die von einem Bediener mittels einer Anzeigevorrichtung/MDI-Einheit 70, die später beschrieben wird, eingegeben werden.
  • Ein nichtflüchtiger Speicher 14 wird als ein Speicher eingesetzt, der seinen Speicherzustand durch beispielsweise Datensicherung oder dergleichen mit einer Batterie (nicht gezeigt) aufrechterhält, selbst wenn der Strom der Steuerung 1 abgeschaltet wird. Der nichtflüchtige Speicher 14 speichert ein Bearbeitungsprogramm, das mittels einer Schnittstelle 15 gelesen wird, ein Bearbeitungsprogramm, das mittels der Anzeigevorrichtung/MDI-Einheit 70, die später beschrieben wird, eingegeben wird, oder dergleichen. Der nichtflüchtige Speicher 14 speichert weiterhin ein Betriebsverarbeitungsprogramm oder dergleichen zum Betreiben eines Bearbeitungsprogramms, die Programme werden jedoch in den RAM 13 entwickelt, wenn derartige Programme ausgeführt werden. Des Weiteren speichert der ROM 12 verschiedene Systemprogramme (einschließlich Systemprogrammen zur Steuerung der Kommunikation mit einer Maschinenlernvorrichtung 100, die später beschrieben wird) zur Ausführung der Verarbeitung eines Editiermodus, der zur Erstellung und Editierung eines Bearbeitungsprogramms oder dergleichen erforderlich ist, im Voraus.
  • Eine Schnittstelle 15 ist eine Schnittstelle zur Verbindung mit der Steuerung 1 und einer externen Vorrichtung 72, wie einem Adapter. Ein Bearbeitungsprogramm, verschiedene Parameter oder dergleichen werden aus der externen Vorrichtung 72 gelesen. Des Weiteren kann ein Bearbeitungsprogramm, das in der Steuereinheit 1 editiert wird, mittels der externen Vorrichtung 72 in externen Speichermitteln gespeichert werden. Eine programmierbare Maschinensteuerung (PMC) 16 gibt mittels einer Eingabe/Ausgabe-Einheit (E/A-Einheit) 17 ein Signal an ein Peripheriegerät (beispielsweise einen Aktuator, wie eine Roboterhand zum Werkzeugwechsel) einer Werkzeugmaschine gemäß einem Sequenzprogramm, das in der Steuerung 1 enthalten ist, aus und steuert diese. Des Weiteren führt die PMC 16 erforderliche Signalverarbeitung an Signalen nach Empfangen der Signale von verschiedenen Schaltern oder dergleichen einer Bedientafel, die in dem Gehäuse einer Werkzeugmaschine angeordnet ist, durch und liefert dann die Signale an den CPU 11.
  • Die Anzeigevorrichtung/MDI-Einheit 70 ist eine manuelle Dateneingabevorrichtung, die eine Anzeige, eine Tastatur oder dergleichen umfasst, und eine Schnittstelle 18 liefert Befehle und Daten an den CPU 11 nach Empfangen dieser von der Tastatur der Anzeigevorrichtung/MDI-Einheit 70. Eine Schnittstelle 19 ist mit einer Bedientafel 71 verbunden, die eine manuelle Impulserzeugungsvorrichtung oder dergleichen umfasst, die zum manuellen Antreiben jeweiliger Achsen verwendet wird.
  • Eine Achsensteuerschaltung 30 zur Steuerung der Achsen einer Werkzeugmaschine empfängt Bewegungsbefehlmengen der Achsen von dem CPU 11 und gibt einen Befehl zur Bewegung der Achsen an einen Servoverstärker 40 aus. Nach Empfangen des Befehls treibt der Servoverstärker 40 einen Servomotor 50 an, der die entsprechende Achse der Werkzeugmaschine bewegt. Der Servomotor 50 für jede der Achsen umfasst eine Positions-/Geschwindigkeitserkennungsvorrichtung und koppelt Positions-/Geschwindigkeitsrückkopplungssignale von der Positions-/Geschwindigkeitserkennungsvorrichtung an die Achsensteuerschaltung 30 zurück, um eine Positions-/Geschwindigkeitsrückkopplungsregelung durchzuführen. Man beachte, dass die Achsensteuerschaltung 30, der Servoverstärker 40 und der Servomotor 50 in dem Hardwarekonfigurationsdiagramm von 1 einzeln gezeigt sind, jedoch tatsächlich entsprechend der Anzahl von Achsen einer zu steuernden Werkzeugmaschine bereitgestellt werden. Im Fall einer Werkzeugmaschine, die drei Linearachsen umfasst, werden beispielsweise die Achsensteuerschaltung 30, der Servoverstärker 40 und der Servomotor 50 für jede einer X-Achse, einer Y-Achse und einer Z-Achse, die die Linearachsen darstellen, bereitgestellt.
  • Eine Spindelsteuerschaltung 60 empfängt einen Hauptspindeldrehbefehl für eine Werkzeugmaschine und gibt ein Spindelgeschwindigkeitssignal an einen Spindelverstärker 61 aus. Nach Empfangen des Spindelgeschwindigkeitssignals dreht der Spindelverstärker 61 einen Spindelmotor 62 der Werkzeugmaschine mit einer befohlenen Drehzahl, um ein Werkzeug anzutreiben. Der Spindelmotor 62 ist mit einer Positionserkennungsvorrichtung 63 verbunden. Die Positionserkennungsvorrichtung 63 gibt einen Rückkopplungsimpuls synchron mit der Drehung einer Hauptspindel aus und der Rückkopplungsimpuls wird von dem CPU 11 gelesen.
  • Eine Schnittstelle 21 ist eine Schnittstelle zum Verbinden der Steuerung 1 und der Maschinenlernvorrichtung 100 miteinander. Die Maschinenlernvorrichtung 100 kann jeweilige Informationen (wie Werte von jeweiligen Signalen, die mittels der PMC 16 erfasst wurden, Stromwerte des Servomotors 50 und des Spindelmotors 62 und eine Information zu einem laufenden Bearbeitungsprogramm und Einstellungen zu einem Werkzeug, die in dem RAM 13 gespeichert ist, oder dergleichen) überwachen, die von der Steuerung 1 mittels der Schnittstelle 21 erfasst werden können. Des Weiteren führt die Steuerung 1 nach Empfangen von Befehlen zur Steuerung des Servomotors 50, des Spindelmotors 62 und der Peripherievorrichtung einer Werkzeugmaschine, die von der Maschinenlernvorrichtung 100 ausgegeben wurden, eine Korrektur oder dergleichen eines Befehls zur Steuerung der Werkzeugmaschine auf der Basis eines Bearbeitungsprogramms durch.
  • 2 ist ein schematisches Funktionsblockdiagramm der Steuerung 1 und der Maschinenlernvorrichtung 100 gemäß der ersten Ausführungsform.
  • Die Maschinenlernvorrichtung 100 umfasst Software (wie einen Lernalgorithmus) und Hardware (wie den CPU eines Computers) zum spontanen Lernen einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs in Bezug auf eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, durch so genanntes Maschinenlernen. Ein von der Maschinenlernvorrichtung 100 der Steuerung 1 zu lernendes Objekt entspricht einer Modellstruktur, die die Korrelation zwischen einer Schwingungsmenge des Schneidteils eines Werkzeugs und einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, ausdrückt.
  • Wie im Funktionsblock von 2 gezeigt, umfasst die Maschinenlernvorrichtung 100 der Steuerung 1 einen Zustandsüberwachungsabschnitt 102, einen Bestimmungsdatenerfassungsabschnitt 104 und einen Lernabschnitt 106. Der Zustandsüberwachungsabschnitt 102 überwacht Zustandsvariablen S, die den aktuellen Zustand einer Umgebung ausdrücken und die Vorschubmengendaten S1, die eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, angeben, und Schwingungsmengendaten S2, die eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht, angeben, umfassen. Der Bestimmungsdatenerfassungsabschnitt 104 erfasst Bestimmungsdaten D, die ein Korrektheitsbestimmungsergebnis der Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht, unter der eingestellten Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs angeben. Unter Verwendung der Zustandsvariablen S und der Bestimmungsdaten D lernt der Lernabschnitt 106 die Schwingungsmenge des Schneidteils des Werkzeugs und die Vorschubmengendaten S1 in Assoziation miteinander.
  • Der Zustandsüberwachungsabschnitt 102 kann beispielsweise als eine der Funktionen des CPU eines Computers oder von Software zum Betreiben des CPU des Computers konfiguriert sein. Von den Zustandsvariablen S, die von dem Zustandsüberwachungsabschnitt 102 überwacht werden, können die Vorschubmengendaten S1 aus beispielsweise einer Vorschubmenge eines Bearbeitungsprogramms, die von einem Facharbeiter gemeldet und an die Steuerung 1 angegeben wird, erfasst werden. Des Weiteren kann die Maschinenlernvorrichtung 100 als die Vorschubmengendaten S1 eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, die in dem vorherigen Lernzyklus bestimmt wurde, auf der Basis von Lernergebnissen des Lernabschnitts 106 verwenden, wenn das Lernen in gewissem Ausmaß weiterentwickelt wird. In einem derartigen Fall kann die Maschinenlernvorrichtung 100 eine bestimmte Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs vorübergehend im Voraus in einem internen Speicher für jeden von Lernzyklen speichern, so dass der Zustandsüberwachungsabschnitt 102 eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, die von der Maschinenlernvorrichtung 100 in dem vorherigen Lernzyklus bestimmt wurde, aus dem Speicher erfasst.
  • Darüber hinaus kann ein Wert, der indirekt aus der Fluktuation oder dergleichen des Werts eines Stroms, der durch den Servomotor 50 fließt, wenn der Schneidteil eines Werkzeugs durch ein Werkstück hindurchgeht, berechnet wird, beispielsweise als die Schwingungsmengendaten S2 von den Zustandsvariablen S verwendet werden. Die Schwingungsmengendaten S2 können direkt unter Verwendung eines Beschleunigungssensors, der in der Hauptspindel einer Werkzeugmaschine enthalten ist, berechnet werden oder können direkt auf der Basis eines Bilds, das von einem Abbildungsmittel aufgenommen wurde, das an der Werkzeugmaschine angebracht ist, berechnet werden. Darüber hinaus kann ein maschinell bearbeiteter Teil eines Werkstücks durch einen Abstandssensor, ein Abbildungsmittel oder dergleichen nach Abschluss der maschinellen Bearbeitung gemessen werden, so dass eine Schwingungsmenge indirekt auf der Basis der Rauheit einer maschinell bearbeiteten Oberfläche, die gemäß den Messergebnissen spezifiziert wurde, berechnet werden.
  • Der Bestimmungsdatenerfassungsabschnitt 104 kann beispielsweise als eine der Funktionen des CPU eines Computers oder von Software zum Betreiben des CPU des Computers konfiguriert sein. Als die Bestimmungsdaten D kann der Bestimmungsdatenerfassungsabschnitt 104 Korrektheitsbestimmungswerte D1 in Bezug auf eine Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil eines Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, verwenden. Unter Verwendung derselben Mittel wie denen, die verwendet werden, wenn der Zustandsüberwachungsabschnitt 102 die Schwingungsmengendaten S2 überwacht, kann der Bestimmungsdatenerfassungsabschnitt 104 eine Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil eines Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, erfassen. Die Bestimmungsdaten D sind ein Index, der ein Ergebnis ausdrückt, das erhalten wird, wenn ein Kreuzschnitt-Nuten unter den Zustandsvariablen S durchgeführt wird.
  • Was den Lernzyklus des Lernabschnitts 106 angeht, sind die Zustandsvariablen S, die gleichzeitig in den Lernabschnitt 106 eingegeben werden, jene, die auf Daten in dem vorherigen Lernzyklus basieren, zu dem die Bestimmungsdaten D erfasst wurden. Wie oben beschrieben, während die Maschinenlernvorrichtung 100 der Steuerung 1 das Maschinenlernen weiterentwickelt, werden die Erfassung der Schwingungsmengendaten S2, die Umsetzung von Kreuzschnitt-Nuten auf der Basis der Vorschubmengendaten S1 und die Erfassung der Bestimmungsdaten D wiederholt in einer Umgebung durchgeführt.
  • Der Lernabschnitt 106 kann beispielsweise als eine der Funktionen des CPU eines Computers oder von Software zum Betreiben des CPU des Computers konfiguriert sein. Gemäß einem beliebigen Lernalgorithmus, was gemeinsam als Maschinenlernen genannt wird, lernt der Lernabschnitt 106 die Vorschubmengendaten S1 in Bezug auf eine Schwingungsmenge des Schneidteils eines Werkzeugs. Der Lernabschnitt 106 kann wiederholt ein Lernen auf der Basis eines Datensatzes durchführen, der die obigen Zustandsvariablen S und die Bestimmungsdaten D umfasst. Wenn der Zyklus des Lernens der Vorschubmengendaten S1 in Bezug auf eine Schwingungsmenge des Schneidteils eines Werkzeugs wiederholt durchgeführt wird, wird eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, die in dem vorherigen Lernzyklus erfasst wurde, wie oben beschrieben, als die Schwingungsmengendaten S2 von den Zustandsvariablen verwendet. Als die Vorschubmengendaten S1 wird eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei dem Kreuzschnitt-Nuten hindurchgeht, die bis zu dem vorherigen Lernergebnis erhalten wurde, verwendet. Als die Bestimmungsdaten D wird ein Korrektheitsbestimmungsergebnis einer Schwingungsmenge des Schneidteils des Werkzeugs in einem aktuellen Lernzyklus in einem Zustand, in dem Einstellungen auf der Basis der Vorschubmengendaten S1 vorgenommen wurden, verwendet.
  • Durch wiederholtes Durchführen eines derartigen Lernzyklus kann der Lernabschnitt 106 ein Merkmal automatisch identifizieren, das die Korrelation zwischen einer Schwingungsmenge (Schwingungsmengendaten S2) des Schneidteils eines Werkzeugs und einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, nahe legt.
  • Obwohl die Korrelation zwischen den Schwingungsmengendaten S2 und einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs zum Beginn eines Lernalgorithmus im Wesentlichen unbekannt ist, identifiziert der Lernabschnitt 106 allmählich ein Merkmal, das die Korrelation angibt, und deutet die Interpretation, während das Lernen weiterentwickelt wird. Wenn die Korrelation zwischen den Schwingungsmengendaten S2 und einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs in gewissem zuverlässigem Ausmaß gedeutet wird, können Lernergebnisse, die wiederholt von dem Lernabschnitt 106 ausgegeben werden, dazu verwendet werden, die Aktion (d. h. Entscheidungsfindung) des Bestimmens, in welchem Ausmaß eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, in Bezug auf einen aktuellen Zustand (d. h. eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht) justiert wird, auszuwählen. Das heißt, während ein Lernalgorithmus weiterentwickelt wird, kann der Lernabschnitt 106 allmählich die Korrelation zwischen einer Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, angleichen und die Aktion des Bestimmens, in welchem Ausmaß eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in Bezug auf einen aktuellen Zustand wird auf eine optimale Lösung justiert.
  • Wie oben beschrieben, lernt der Lernabschnitt in der Maschinenlernvorrichtung 100 der Steuerung 1 eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs gemäß einem Maschinenlernalgorithmus unter Verwendung der Zustandsvariablen S, die von dem Zustandsüberwachungsabschnitt 102 überwacht wurden, und den Bestimmungsdaten D, die von dem Bestimmungsdatenerfassungsabschnitt 104 erfasst wurden. Die Zustandsvariablen S setzen sich aus den Vorschubmengendaten S1 und den Schwingungsmengendaten S2 zusammen, die von einer Störung kaum beeinflusst werden. Darüber hinaus werden die Bestimmungsdaten D durch die Erfassung der Stromwerte des Servomotors 50, die tatsächlich von der Steuerung 1 oder dergleichen gemessen werden, einzigartig berechnet. Dementsprechend kann die Maschinenlernvorrichtung 100 der Steuerung 1 unter Verwendung von Lernergebnissen des Lernabschnitts 106 eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, gemäß einer Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht, automatisch und genau berechnen, ohne auf eine Berechnung oder Schätzung angewiesen zu sein.
  • Wenn es möglich ist, eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, automatisch zu berechnen, ohne auf eine Berechnung oder Schätzung angeweisen zu sein, kann ein geeigneter Wert der Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, lediglich durch Verstehen einer Schwingungsmenge (Schwingungsmengendaten S2) des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht, schnell bestimmt werden. Dementsprechend kann die Bestimmung einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, effizient durchgeführt werden.
  • Als ein erstes modifiziertes Beispiel der Maschinenlernvorrichtung 100 der Steuerung 1 kann der Zustandsüberwachungsabschnitt 102 weiterhin als die Zustandsvariable S Hauptspindeldrehzahldaten S3, die die Drehzahl einer Hauptspindel (die Drehzahl eines Werkzeugs), wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, umfassen, überwachen. In diesem Fall können sowohl eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, als auch die Drehzahl einer Hauptspindel (die Drehzahl des Werkzeugs), wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in Assoziation mit den Schwingungsmengendaten S2 gelernt werden.
  • In dem obigen ersten modifizierten Beispiel kann die Maschinenlernvorrichtung 100 eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs und die Drehzahl einer Hauptspindel (die Drehzahl des Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, in Bezug auf eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei dem Kreuzschnitt-Nuten hindurchgeht, lernen. Wenn der Schneidteil eines Werkzeugs auf eine bestimmte Schwingungsmenge hinweist, wenn er durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, kann somit die Schwingungsmenge durch Ändern sowohl einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs als auch der Drehzahl einer Hauptspindel (der Drehzahl des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei dem Kreuzschnitt-Nuten hindurchgeht, in Bezug auf den Zustand auf geeignete Werte in geeigneterer Weise verringert werden.
  • Als ein zweites modifiziertes Beispiel der Maschinenlernvorrichtung 100 der Steuerung 1 kann der Zustandsüberwachungsabschnitt 102 weiterhin als die Zustandsvariablen S Werkzeugdaten S4, die eine Information wie einen Typ, eine Form und ein Material (eine Steifigkeit) eines Werkzeugs umfassen, Werkstückdaten S5, die eine Information wie ein Material und eine Härte eines Werkstücks umfassen, Bearbeitungsformdaten S6, die eine Information wie eine Bearbeitungsform eines Teils, an dem der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, umfassen, Maschinendaten S7, die eine Information wie eine Modellnummer und Steifigkeit einer Maschine umfassen, und andere Elemente, die einen Einfluss auf eine Schwingungsmenge des Schneidteils des Werkzeugs haben oder dergleichen, überwachen. In diesem Fall kann eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, in Assoziation mit mindestens einer beliebigen der Werkzeugdaten S4, der Werkstückdaten S5, der Bearbeitungsformdaten S6 und der Maschinendaten S7 neben den Schwingungsmengendaten S2 gelernt werden.
  • Gemäß dem obigen zweiten modifizierten Beispiel kann die Maschinenlernvorrichtung 100 neben einer Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei einem Kreuzschnitt-Nuten hindurchgeht, eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei dem Kreuzschnitt-Nuten hindurchgeht, in Bezug auf Elemente, die einen Einfluss auf die Schwingungsmenge des Schneidteils des Werkzeugs haben, wie ein Typ, eine Form und ein Material (eine Steifigkeit) des Werkzeugs, ein Material, eine Härte und eine Bearbeitungsform des Werkstücks und ein Modelltyp und eine Steifigkeit einer Maschine, lernen.
  • Als ein drittes modifiziertes Beispiel der Maschinenlernvorrichtung 100 der Steuerung 1 kann der Bestimmungsdatenerfassungsabschnitt 104 als die Bestimmungsdaten D Beurteilungswerte D2 einer Zykluszeit für Kreuzschnitt-Nuten neben den Korrektheitsbestimmungswerten D1 in Bezug auf eine Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei dem Kreuzschnitt-Nuten hindurchgeht, verwenden.
  • Gemäß dem obigen dritten modifizierten Beispiel kann die Maschinenlernvorrichtung 100 eine Zykluszeit für Kreuzschnitt-Nuten bei dem Lernen einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, in Bezug auf eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei dem Kreuzschnitt-Nuten hindurchgeht, berücksichtigen.
  • Als ein viertes modifiziertes Beispiel der Maschinenlernvorrichtung 100 der Steuerung 1 kann der Lernabschnitt 106 eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, in einer Vielzahl von Werkzeugmaschinen unter Verwendung der Zustandsvariablen S und der Bestimmungsdaten D, die für jede der Vielzahl von Werkzeugmaschinen, die das gleiche Kreuzschnitt-Nuten durchführt, lernen.
  • Gemäß dem obigen vierten modifizierten Beispiel ist es möglich, eine Menge eines Datensatzes, der die Zustandsvariablen S und die Bestimmungsdaten umfasst, die in einem bestimmten Zeitraum erfasst wird, zu erhöhen. Folglich können die Geschwindigkeit und die Zuverlässigkeit eines Lernens einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, mit einem Satz von mehr verschiedenen Daten als Eingaben verbessert werden.
  • In der Maschinenlernvorrichtung 100 mit der obigen Konfiguration ist ein Lernalgorithmus, der von dem Lernabschnitt 106 durchgeführt wird, nicht besonders eingeschränkt und ein Lernalgorithmus, der als Maschinenlernen bekannt ist, kann für das Maschinenlernen eingesetzt werden.
  • 3 zeigt als eine Ausführungsform der Steuerung, die in 1 gezeigt ist, eine Konfiguration, die den Lernabschnitt 106 umfasst, der Verstärkungslernen als ein Beispiel eines Lernalgorithmus durchführt.
  • Das Verstärkungslernen ist ein Verfahren, in dem, während der aktuelle Zustand (d. h. eine Eingabe) einer Umgebung, in der ein Lernziel existiert, überwacht wird, eine vorgeschriebene Aktion (d. h. eine Ausgabe) in dem aktuellen Zustand durchgeführt wird und der Zyklus eines Gebens einer etwaigen Belohnung für die Aktion wiederholt durch Ausprobieren durchgeführt wird, um Messwerte (eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, in der Maschinenlernvorrichtung der vorliegenden Anmeldung) zu lernen, um die Summe der Belohnungen als eine optimale Lösung zu maximieren.
  • In der Maschinenlernvorrichtung 100 der Steuerung 1, die in 3 gezeigt ist, umfasst der Lernabschnitt 106 einen Belohnungsberechnungsabschnitt 108, der eine Belohnung R in Bezug auf ein Korrektheitsbestimmungsergebnis (das den Bestimmungsdaten D entspricht, die in dem nächsten Lernzyklus verwendet werden, in dem die Zustandsvariablen S erfasst wurden) einer Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, auf der Basis der Zustandsvariablen S berechnet, und umfasst einen Wertefunktionsaktualisierungsabschnitt 110, der unter Verwendung der berechneten Belohnungen R eine Funktion Q berechnet, die einen Wert einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, ausdrückt. Der Lernabschnitt 106 lernt eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, in Bezug auf eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht, so dass der Wertefunktionsaktualisierungsabschnitt 110 die Funktion Q wiederholt aktualisiert.
  • Ein Beispiel eines Verstärkungslernalgorithmus, der von dem Lernabschnitt 106 durchgeführt wird, wird beschrieben. Der Algorithmus in diesem Beispiel ist als Q-Lernen bekannt und drückt ein Verfahren aus, in dem ein Zustand s eines Aktionssubjekts und eine Aktion a, die möglicherweise von dem Aktionssubjekt in dem Zustand s ausgeführt wird, als unabhängige Variable angenommen werden und eine Funktion Q(s, a), die einen Aktionswert, wenn die Aktion a in dem Zustand s ausgewählt wird, ausdrückt, gelernt wird. Die Auswahl der Aktion a, durch die die Wertefunktion Q in dem Zustand s zum Maximum wird, führt zu einer optimalen Lösung. Durch Starten des Q-Lernens in einem Zustand, in dem die Korrelation zwischen dem Zustand s und der Aktion a unbekannt ist, und wiederholtes Durchführen der Auswahl verschiedener Aktionen a durch Ausprobieren in einem beliebigen Zustand s wird die Wertefunktion Q wiederholt aktualisiert, um an eine optimale Lösung angenähert zu werden. Wenn eine Umgebung (d. h. der Zustand s) hier sich ändert, während die Aktion a in dem Zustand s ausgewählt wird, wird eine Belohnung (d. h. Gewichtung der Aktion a) r gemäß der Änderung erhalten und das Lernen wird dahingehend ausgerichtet, eine Aktion a auszuwählen, durch die eine höhere Belohnung r erhalten wird. Somit kann die Wertefunktion Q in einem verhältnismäßig kurzen Zeitraum an eine optimale Lösung angenähert werden.
  • Im Allgemeinen kann die Aktualisierungsformel der Wertefunktion Q wie die folgende Formel (1) ausgedrückt werden. In der Formel (1) drücken st und at einen Zustand bzw. eine Aktion zu einer Zeit t aus und der Zustand ändert sich zu st+1 mit der Aktion at. rt+i drückt eine Belohnung aus, die erhalten wird, wenn der Zustand sich von st zu st+1 ändert. Der Term maxQ drückt Q in einem Fall aus, in dem eine Aktion a, durch die die Wertefunktion Q zum Maximum wird, zu einer Zeit t+1 (die bei einer Zeit t angenommen wird) durchgeführt wird. α und γ drücken einen Lernkoeffizienten bzw. einen Diskontsatz aus und werden willkürlich eingestellt, um innerhalb von 0 < α ≤ 1 bzw. 0 < γ ≤ 1 zu fallen. 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 DE102018004048A1_0001
  • Wenn der Lernabschnitt 106 das Q-Lernen durchführt,
    entsprechen die Zustandsvariablen S, die von dem Zustandsüberwachungsabschnitt 102 überwacht werden, und die Bestimmungsdaten D, die von dem Bestimmungsdatenerfassungsabschnitt 104 erfasst werden, dem Zustand s in der Aktualisierungsformel (Formel 1),
    entspricht die Aktion eines Änderns einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, in Bezug auf einen aktuellen Zustand (d.h. eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht) der Aktion a in der Aktualisierungsformel und
    entsprechen die Belohnungen R, die von dem Belohnungsberechnungsabschnitt 108 berechnet werden, der Belohnung r in der Aktualisierungsformel.
  • Dementsprechend aktualisiert der Wertefunktionsaktualisierungsabschnitt 110 wiederholt die Funktion Q, die eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, in Bezug auf einen aktuellen Zustand (eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht) ausdrückt, durch das Q-Lernen unter Verwendung der Belohnungen R.
  • Nach Bestimmung einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, wenn das Kreuzschnitt-Nuten auf der Basis der bestimmten Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs durchgeführt wird,
    • (i) kann die Belohnung R, die von dem Belohnungsberechnungsabschnitt 108 berechnet wird, positiv sein, beispielsweise wenn ein Korrektheitsbestimmungsergebnis einer Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, als „geeignet“ bestimmt wird (beispielsweise ein Fall, in dem eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in einen zulässigen Bereich fällt, ein Fall, in dem eine Zykuszeit für das Kreuzschnitt-Nuten in einen zulässigen Bereich fällt, oder dergleichen),
    • (ii) kann die Belohnung R, die von dem Belohnungsberechnungsabschnitt 108 berechnet wird, andererseits negativ sein, beispielsweise wenn ein Korrektheitsbestimmungsergebnis einer Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, als „ungeeignet“ bestimmt wird (beispielsweise ein Fall, in dem eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, über einen zulässigen Bereich hinausgeht, ein Fall, in dem eine Zykluszeit für das Kreuzschnitt-Nuten über einen zulässigen Bereich hinausgeht, oder dergleichen).
  • Die absoluten Werte der positiven und der negativen Belohnungen R können gleich oder voneinander verschieden sein. Darüber hinaus kann als Bestimmungsbedingungen eine Vielzahl von Werten, die in den Bestimmungsdaten D enthalten sind, miteinander kombiniert werden, um eine Bestimmung durchzuführen.
  • Darüber hinaus kann ein Korrektheitsbestimmungsergebnis einer Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, nicht nur zwei Grade von „Geeignet“- und „Ungeeignet“-Ergebnissen, sondern auch eine Vielzahl von Graden von Ergebnissen umfassen. Als ein Beispiel, wenn eine maximaler Wert innerhalb eines zulässigen Bereichs als eine Schwingungsmenge des Schneidteils eines Werkzeugs als Vmax angenommen wird, wird die Belohnung R = 5 gegeben, wenn eine Schwinungsmenge V des Schneidteils des Werkzeugs innerhalb von 0 ≤ V < Vmax/5 fällt, die Belohnung R = 2 wird gegeben, wenn die Schwingungsmenge V innerhalb von Vmax/5 ≤ V < Vmax/2 fällt, und die Belohnung R = 1 wird gegeben, wenn die Schwingungsmenge V innerhalb von Vmax/2 ≤ V ≤ Vmax fällt. Darüber hinaus kann Vmax darauf eingestellt werden, dass sie zum Anfangsstadium des Lernens verhältnismäßig höher ist, und darauf eingestellt werden, abzunehmen, während das Lernen weiterentwickelt wird.
  • Der Wertefunktionsaktualisierungsabschnitt 110 kann eine Aktionswertetabelle aufweisen, in der die Zustandsvariablen S, die Bestimmungsdaten D und die Belohnungen R in Assoziation mit Aktionswerten (beispielsweise numerischen Werten), die durch die Funktion Q ausgedrückt werden, organisiert sind. In diesem Fall ist die Aktion eines Aktualisierens der Funktion Q mit dem Wertefunktionsaktualisierungsabschnitt 110 der Aktion eines Aktualisierens der Aktionswertetabelle mit dem Wertefunktionsaktualisierungsabschnitt gleichwertig. Zum Start des Q-Lernens ist die Korrelation zwischen dem aktuellen Zustand einer Umgebung und einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, unbekannt. Folglich werden in der Aktionswertetabelle verschiedene Arten der Zustandsvariablen S, der Bestimmungsdaten D und der Belohnungen R in Assoziation mit Werten (Funktion Q) von zufällig eingestellten Aktionswerten vorbereitet. Man beachte, dass der Belohnungsberechnungsabschnitt 108 die Belohnungen R, die den Bestimmungsdaten D entsprechen, unverzüglich berechnen kann, wenn die Bestimmungsdaten D bekannt sind, und Werte der berechneten Belohnungen R werden in die Aktionswertetabelle geschrieben.
  • Wenn das Q-Lernen unter Verwendung der Belohnung R, die einem Korrektheitsbestimmungsergebnis einer Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, entspricht, weiterentwickelt wird, wird das Lernen darauf ausgerichtet, die Aktion eines Erhaltens einer höheren Belohnung R auszuwählen. Dann werden Werte (Funktion Q) von Aktionswerten für eine Aktion, die in einem aktuellen Zustand durchgeführt wird, neu geschrieben, um die Aktionswertetabelle gemäß dem Zustand einer Umgebung (d. h. den Zustandsvariablen S und den Bestimmungsdaten D), der sich ändert, während die ausgewählte Aktion in dem aktuellen Zustand durchgeführt wird, zu aktualisieren. Durch wiederholtes Durchführen der Aktualisierung werden Werte (Funktion Q) von Aktionswerten, die in der Aktionswertetabelle angezeigt werden, dahingehend neu geschrieben, höher zu sein, während eine Aktion mehr geeignet ist. Somit wird die Korrelation zwischen einem aktuellen Zustand (einer Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht) in einer unbekannten Umgebung und einer entsprechenden Aktion (eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht) allmählich offensichtlich. Das heißt, durch die Aktualisierung der Aktionswertetabelle wird die Beziehung zwischen einer Schwingungsmenge des Schneidteils eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, und einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, allmählich an eine optimale Lösung angenähert.
  • Der Ablauf des obigen Q-Lernens (d. h. eine Ausführungsform eines Maschinenlernverfahrens), das von dem Lernabschnitt 106 durchgeführt wird, wird unter Bezugnahme auf das Ablaufdiagramm von 4 weiter beschrieben.
  • Zunächst wählt der Wertefunktionsaktualisierungsabschnitt 110 in Schritt SA01 durch Bezugnahme auf eine Aktionswertetabelle zu dieser Zeit zufällig eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, als eine Aktion aus, die in einem aktuellen Zustand durchgeführt wird, der durch die Zustandsvariablen S angegeben wird, die von dem Zustandsüberwachungsabschnitt 102 überwacht werden.
  • Als Nächstes importiert der Wertefunktionsaktualisierungsabschnitt 110 die Zustandsvariable S in dem aktuellen Zustand, die von dem Zustandsüberwachungsabschnitt 102 überwacht wurde, in Schritt SA02 und importiert die Bestimmungsdaten D in dem aktuellen Zustand, die von dem Bestimmungsdatenerfassungsabschnitt 104 erfasst wurden, in Schritt SA03. Dann bestimmt der Wertefunktionsaktualisierungsabschnitt 110 in Schritt SA04 auf der Basis der Bestimmungsdaten D, ob die Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, geeignet ist. Wenn die Vorschubmenge geeignet ist, wendet der Wertefunktionsaktualisierungsabschnitt 110 eine positive Belohnung R, die von dem Belohnungsberechnungsabschnitt 108 berechnet wurde, auf die Aktualisierungsformel der Funktion Q in Schritt SA05 an. Als Nächstes aktualisiert der Wertefunktionsaktualisierungsabschnitt 110 in Schritt SA06 die Aktionswertetabelle unter Verwendung der Zustandsvariable S und der Bestimmungsdaten D in dem aktuellen Zustand, der Belohnung R und einem Wert (aktualisierte Funktion Q) eines Aktionswerts. Wenn in Schritt SA04 bestimmt wird, dass die Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, ungeeignet ist, wendet der Wertefunktionsaktualisierungsabschnitt 110 eine negative Belohnung R, die von dem Belohnungsberechnungsabschnitt 108 berechnet wurde, auf die Aktualisierungsformel der Funktion Q in Schritt SA07 an. Dann aktualisiert der Wertefunktionsaktualisierungsabschnitt 110 in Schritt SA06 die Aktionswertetabelle unter Verwendung der Zustandsvariable S und der Bestimmungsdaten D in dem aktuellen Zustand, der Belohnung R und dem Wert (aktualisierte Funktion Q) des Aktionswerts.
  • Der Lernabschnitt 106 aktualisiert die Aktionswertetabelle nochmals durch wiederholtes Durchführen der obigen Verarbeitung der Schritte SA01 bis SA07 und entwickelt das Lernen der Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, weiter. Man beachte, dass die Verarbeitung des Berechnens der Belohnungen R und die Verarbeitung des Aktualisierens der Wertefunktion in den Schritten SA04 bis SA07 für jede der Dateneinheiten, die in den Bestimmungsdaten D enthalten sind, durchgeführt wird.
  • Beim Weiterentwickeln des obigen Verstärkungslernens kann ein neuronales Netzwerk anstelle beispielsweise des Q-Lernens verwendet werden. 5A zeigt schematisch ein Neuronenmodell. 5B zeigt schematisch das Modell eines neuronalen Netzwerks mit drei Schichten, in denen die in 5A gezeigten Neuronen miteinander kombiniert werden. Das neuronale Netzwerk kann durch beispielsweise eine Berechnungseinheit, eine Speichereinheit oder dergleichen unter Befolgung eines Neuronenmodells konfiguriert werden.
  • Das in 5A gezeigte Neuron gibt ein Ergebnis y in Bezug auf eine Vielzahl von Eingaben x (hier Eingaben x1 bis x3 als ein Beispiel) aus. Die Eingaben x1 bis x3 werden jeweils mit entsprechenden Gewichten (w 1 bis w3 ) multipliziert. Somit gibt das Neuron das Ergebnis y aus, das durch die folgende Formel (2) ausgedrückt wird. Man beachte, dass in der folgenden Formel (2) eine Eingabe x, ein Ergebnis y und ein Gewicht w alle Vektoren sind. Darüber hinaus drückt θ eine Vormagnetisierung aus und fk drückt eine Aktivierungsfunktion aus. y = f k ( i = 1 n x i w i θ )
    Figure DE102018004048A1_0002
  • In dem neuronalen Netzwerk mit den drei Schichten, das in 5B gezeigt ist, wird eine Vielzahl von Eingaben x (hier Eingaben x1 bis x3 als ein Beispiel) von der linken Seite des neuronalen Netzwerks eingegeben und Ergebnisse y (hier Ergebnisse y1 bis y3 als ein Beispiel) werden von der rechten Seite des neuronalen Netzwerks ausgegeben. In dem in 5B gezeigten Beispiel werden die Eingaben x1 bis x3 mit entsprechenden Gewichten (gemeinsam als w1 ausgedrückt) multipliziert und jeweils in drei Neuronen N11 bis N13 eingegeben.
  • In 5B sind die jeweiligen Ausgaben der Neuronen N11 bis N13 gemeinsam als z1 ausgedrückt. Die Ausgaben z1 können als Merkmalsvektoren angesehen werden, die durch Extrahieren von Merkmalsmengen der eingegebenen Vektoren erhalten werden. In dem in 5B gezeigten Beispiel werden die jeweiligen Merkmalsvektoren z1 mit entsprechenden Gewichten (gemeinsam als w2 angegeben) multipliziert und jeweils in zwei Neuronen N21 und N22 eingegeben. Die Merkmalsvektoren z1 drücken die Merkmale zwischen den Gewichten w1 und den Gewichten w2 aus.
  • In 5B sind die jeweiligen Ausgaben der Neuronen N21 und N22 gemeinsam als z2 ausgedrückt. Die Ausgaben z2 können als Merkmalsvektoren angesehen werden, die durch Extrahieren von Merkmalsmengen der Merkmalsvektoren z1 erhalten werden. In dem in 5B gezeigten Beispiel werden die jeweiligen Merkmalsvektoren z2 mit entsprechenden Gewichten (gemeinsam als w3 angegeben) multipliziert und jeweils in drei Neuronen N31 bis N33 eingegeben. Die Merkmalsvektoren z2 drücken die Merkmale zwischen den Gewichten w2 und dem Gewicht w3 aus. Schließlich geben die Neuronen N31 bis N33 jeweils die Ergebnisse y1 bis y3 aus.
  • Man beachte, dass es möglich ist, so genanntes tiefes Lernen einzusetzen, in dem ein neuronales Netzwerk, das drei oder mehr Schichten bildet, verwendet wird.
  • In der Maschinenlernvorrichtung 100 der Steuerung 1 führt der Lernabschnitt 106 die Berechnung der Zustandsvariablen S und der Bestimmungsdaten D als Eingaben x in einer mehrschichtigen Struktur gemäß dem durch, dass das obige neuronale Netzwerk die Funktion Q (Ergebnis y) ausgeben kann, die einen Aktionwert ausdrückt. Man beachte, dass der Aktionsmodus des neuronalen Netzwerks einen Lernmodus und einen Wertevorhersagemodus umfasst. Es ist beispielsweise möglich, ein Gewicht w unter Verwendung eines Lerndatensatzes in dem Lernmodus zu lernen, und einen Aktionswert unter Verwendung des gelernten Gewichts w in dem Wertevorhersagemodus zu bestimmen. Man beachte, dass eine Erkennung, Klassifizierung, Ableitung oder dergleichen in dem Wertevorhersagemodus durchgeführt werden kann.
  • Die Konfiguration der obigen Steuerung 1 kann als ein Maschinenlernverfahren (oder eine Maschinenlernsoftware) beschrieben werden, das von dem CPU eines Computers durchgeführt wird. Das Maschinenlernverfahren ist ein Verfahren zum Lernen einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht. Der CPU eines Computers führt durch:
    • einen Schritt des Überwachens von Vorschubmengendaten S1, die eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, angeben, und Schwingungsmengendaten S2, die eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben, als Zustandsvariablen S, die den aktuellen Zustand einer Umgebung ausdrücken, in der ein Kreuzschnitt-Nuten durchgeführt wird;
    • einen Schritt des Erfassens von Bestimmungsdaten D, die ein Korrektheitsbestimmungsergebnis der Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben; und
    • einen Schritt des Lernens der Schwingungsmengendaten S2 und der Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, derart, dass sie miteinander korreliert werden, unter Verwendung der Zustandsvariablen S und der Bestimmungsdaten D.
  • 6 zeigt eine Steuerung 2 gemäß einer zweiten Ausführungsform.
  • Die Steuerung 2 der Ausführungsform umfasst eine Maschinenlernvorrichtung 120 und einen Zustandsdatenerfassungsabschnitt 3. Der Zustandsdatenerfassungsabschnitt 3 erfasst Vorschubmengendaten S1 und Schwingungsmengendaten S2 von Zustandsvariablen S, die von einem Zustandsüberwachungsabschnitt 102 überwacht werden, als Zustandsdaten S0. Die Zustandsdaten S0, die von dem Zustandsdatenerfassungsabschnitt 3 erfasst werden, können auch Hauptspindeldrehzahldaten S3, Werkzeugdaten S4, Werkstückdaten S5, Bearbeitungsformdaten S6, Maschinendaten S7 oder dergleichen umfassen. Der Zustandsdatenerfassungsabschnitt 3 kann die Zustandsdaten S0 von den jeweiligen Abschnitten der Steuerung 2, verschiedenen Sensoren einer Werkzeugmaschine, geeigneten Dateneingaben durch einen Arbeiter oder dergleichen erfassen.
  • Die Maschinenlernvorrichtung 120 der Steuerung 2 umfasst neben Software (wie einem Lernalgorithmus) und Hardware (wie dem CPU eines Computers) zum spontanen Lernen einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück bei Kreuzschnitt-Nuten hindurchgeht, durch Maschinenlernen Software (wie einen Berechnungsalgorithmus) und Hardware (wie den CPU eines Computers) zum Ausgeben der gelernten Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei dem Kreuzschnitt-Nuten hindurchgeht, als einen Befehl für die Steuerung 2. Die Maschinenlernvorrichtung 120 der Steuerung 2 kann so konfiguriert sein, dass ein gemeinsamer CPU jegliche Software, wie einen Lernalgorithmus und einen Berechnungsalgorithmus, durchführt.
  • Ein Entscheidungsfindungsabschnitt 122 kann beispielsweise als eine der Funktionen des CPU eines Computers oder von Software zum Betreiben des CPU des Computers konfiguriert sein. Der Entscheidungsfindungsabschnitt 122 erzeugt auf der Basis von Lernergebnissen des Lernabschnitts 106 einen Befehlswert C und gibt diesen aus, der einen Befehl zum Bestimmen einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, in Bezug auf eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht. Wenn der Entscheidungsfindungsabschnitt 122 den Befehlswert C an die Steuerung 2 ausgibt, ändert sich der Zustand einer Umgebung entsprechend. Man beachte, dass der Enscheidungsfindungsabschnitt 122 als den Befehlswert C einen Befehl zum Bestimmen der Drehzahl einer Hauptspindel, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht (der Drehzahl des Werkzeugs), neben einem Befehl zum Bestimmen einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, umfassen kann.
  • Der Zustandsüberwachungsabschnitt 102 überwacht in einem nächsten Lernzyklus Zustandsvariablen S, die sich nach der Ausgabe des Befehlswerts C an eine Umgebung durch den Entscheidungsfindungsabschnitt 122 geändert haben. Der Lernabschnitt 106 aktualisiert beispielsweise eine Wertefunktion Q (d. h. eine Aktionswertetabelle) unter Verwendung der geänderten Zustandsvariablen S, um eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, zu lernen. Man beachte, dass der Zustandsüberwachungsabschnitt 102 die Vorschubmengendaten S1 aus dem internen Speicher der Maschinenlernvorrichtung überwachen kann, wie in der ersten Ausführungsform beschrieben, anstelle diese aus den Zustandsdaten S0 zu erfassen, die von dem Zustandsdatenerfassungsabschnitt 3 erfasst wurden.
  • Auf der Basis einer gelernten Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, gibt der Entscheidungsfindungsabschnitt 122 den Befehlswert C an die Steuerung 2 gemäß Zustandsvariablen S aus.
  • Durch wiederholtes Durchführen des Lernzyklus entwickelt die Maschinenlernvorrichtung 120 das Lernen einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, weiter und verbessert allmählich die Zuverlässigkeit der Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, die von der Maschinenlernvorrichtung 120 selbst bestimmt wird.
  • Die Maschinenlernvorrichtung 120 der Steuerung 2 mit der obigen Konfiguration bringt denselben Effekt hervor wie der der obigen Maschinenlernvorrichtung 100, die oben unter Bezugnahme auf die 2 und 3 beschrieben wurde. Insbesondere kann die in 6 gezeigte Maschinenlernvorrichtung 120 den Zustand einer Umgebung mit der Ausgabe des Entscheidungsfindungsabschnitts 122 ändern. Andererseits kann die in den 2 und 3 gezeigte Maschinenlernvorrichtung 100 eine Funktion, die einem Entscheidungsfindungsabschnitt entspricht, zum Widerspiegeln von Lernergebnissen des Lernabschnitts 106 zu einer Umgebung für ein externes Gerät abfragen.
  • 7 zeigt ein System 170, das eine Vielzahl von Werkzeugmaschinen umfasst, gemäß einer Ausführungsform.
  • Das System 170 umfasst eine Vielzahl von Werkzeugmaschinen 160 und 160' mit mindestens derselben Maschinenkonfiguration und ein drahtgebundenes/drahtloses Netzwerk 172, das die Werkzeugmaschinen 160 und 160' miteinander verbindet. Mindestens eine der Vielzahl von Werkzeugmaschinen ist als eine Werkzeugmaschine 160 konfiguriert, die die obige Steuerung 2 umfasst. Darüber hinaus kann das System 170 Werkzeugmaschinen 160' aufweisen, die die Steuerung 2 nicht umfassen. Die Werkzeugmaschinen 160 und 160' weisen einen Mechanismus auf, der zu demselben Zweck konfiguriert ist und darauf abzielt, ein Kreuzschnitt-Nuten durchzuführen.
  • In dem System 170 mit der obigen Konfiguration können die Werkzeugmaschinen 160, die die Steuerung 2 umfassen, von der Mehrzal von Werkzeugmaschinen 160 und 160' eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, in Bezug auf eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht, unter Verwendung von Lernergebnissen des Lernabschnitts 106 automatisch und genau berechnen, ohne auf eine Berechnung oder Schätzung angewiesen zu sein. Darüber hinaus kann die Steuerung 2 von mindestens einer der Werkzeugmaschinen 160 eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs, das allen Werkzeugmaschinen 160 und 160' gemein ist, durch ein Werkstück hindurchgeht, auf der Basis von Zustandsvariablen S und Bestimmungsdaten D, die für jede der anderen Vielzahl von Werkzeugmaschinen 160 und 160' erhalten wurden, lernen, so dass die Lernergebnisse zwischen allen Werkzeugmaschinen 160 und 160' geteilt werden.
  • Dementsprechend macht es das System 170 möglich, die Geschwindigkeit und die Zuverlässigkeit eines Lernens einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, mit einem weiteren Bereich von Datensätzen (die Zustandsvariablen S und Bestimmungsdaten D umfassen) als Eingaben zu verbessern.
  • 8 zeigt ein System 170', das eine Vielzahl von Werkzeugmaschinen 160' umfasst, gemäß einer anderen Ausführungsform.
  • Das System 170' umfasst die Maschinenlernvorrichtung 120 (oder 100), die Vielzahl von Werkzeugmaschinen 160' mit derselben Maschinenkonfiguration (die Werkzeugmaschinen, die die Steuerung nicht umfassen) und ein drahtgebundenes/drahtloses Netzwerk 172, das die Werkzeugmaschinen 160' und die Maschinenlernvorrichtung 120 (oder 100) miteinander verbindet.
  • In dem System 170' mit der obigen Konfiguration kann die Maschinenlernvorrichtung 120 (oder 100) eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, in Bezug auf eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei Kreuzschnitt-Nuten hindurchgeht, die allen Werkzeugmaschinen 160' gemein ist, auf der Basis von Zustandsvariablen S und Bestimmungsdaten D, die für jede der Vielzahl von Werkzeugmaschinen 160' erhalten wurden, und berechnet die Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in Bezug auf die Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück bei dem Kreuzschnitt-Nuten hindurchgeht, automatisch und genau unter Verwendung der Lernergebnisse, ohne auf eine Berechnung oder Schätzung angewiesen zu sein.
  • In dem System 170' kann die Maschinenlernvorrichtung 120 (oder 100) eine Konfiguration aufweisen, die in einem Cloud-Server oder dergleichen existiert, der in dem drahtgebundenen/drahtlosen Netzwerk 172 vorgesehen ist. Gemäß der Konfiguration kann eine gewünschte Anzahl der Werkzeugmaschinen 160' mit der Maschinenlernvorrichtung 120 (oder 100), falls erforderlich, ungeachtet der existierenden Standorte und der Anzahl der Vielzahl von Werkzeugmaschinen 160' verbunden sein.
  • Arbeiter, die in die Systeme 170 und 170' eingreifen, können eine Bestimmung dahingehend durchführen, ob der Erzielungsgrad eines Lernens einer Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus eines Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht (anders ausgedrückt, die Zuverlässigkeit der Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, durch die Maschinenlernvorrichtung 120 (oder 100) einen erforderlichen Pegel zu einer geeigneten Zeitvorgabe nach dem Start des Lernens durch die Maschinenlernvorrichtung 120 (oder 100) erreicht hat.
  • Die Ausführungsformen der vorliegenden Erfindung sind oben beschrieben. Die vorliegende Erfindung ist jedoch nicht auf die Beispiele der obigen Ausführungsformen beschränkt und kann in verschiedenen Modi mit der Hinzufügung von geeigneten Modifikationen ausgeführt werden.
  • Beispielsweise sind ein Lernalgorithmus, der von den Maschinenlernvorrichtungen 100 und 120 durchgeführt wird, ein Berechnungsalgorithmus, der von der Maschinenlernvorrichtung 120 durchgeführt wird, und ein Steueralgorithmus, der von den Steuerungen 1 und 2 durchgeführt wird, nicht auf die obigen Algorithmen beschränkt, sondern es können verschiedene Algorithmen eingesetzt werden.
  • Darüber hinaus beschreiben die obigen Ausführungsformen eine Konfiguration, in der die Steuerung 1 (oder 2) und die Maschinenlernvorrichtung 100 (oder 120) unterschiedliche CPU aufweisen. Die Maschinenlernvorrichtung 100 (oder 120 kann jedoch durch den CPU 11 der Steuerung 1 (oder 2) und ein Systemprogramm, das in dem ROM 12 gespeichert ist, umgesetzt werden.
  • Des Weiteren beschreiben die obigen Ausführungsformen eine Konfiguration, in der die Steuerung 2 eine Vorschubmenge (Vorschubgeschwindigkeit) pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch ein Werkstück hindurchgeht, auf der Basis des Befehlswerts C, der von der Maschinenlernvorrichtung 120 ausgegeben wird, steuert. Der Befehlswert C, der von der Maschinenlernvorrichtung 120 ausgegeben wird, kann jedoch auf der Anzeigevorrichtung/MDI-Einheit 70 der Steuerung 2 als eine Referenz angezeigt werden, wenn ein Arbeiter ein Bearbeitungsprogramm erstellt.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 2000084794 [0002]

Claims (11)

  1. Steuerung, die eine Vorschubmenge pro Einheitszyklus eines Werkzeugs, wenn ein Schneidteil des Werkzeugs durch ein Werkstück beim Kreuzschnitt-Nuten hindurchgeht, bestimmt, wobei die Steuerung umfasst: eine Maschinenlernvorrichtung, die die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, lernt, wobei die Maschinenlernvorrichtung umfasst: einen Zustandsüberwachungsabschnitt, der als Zustandsvariablen, die einen aktuellen Zustand einer Umgebung ausdrücken, Vorschubmengendaten, die die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben, und Schwingungsmengendaten, die eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben, überwacht, einen Bestimmungsdatenerfassungsabschnitt, der Bestimmungsdaten erfasst, die ein Korrektheitsbestimmungsergebnis der Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben, und einen Lernabschnitt, der die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in Verbindung mit den Schwingungsmengendaten unter Verwendung der Zustandsvariablen und der Bestimmungsdaten lernt.
  2. Steuerung nach Anspruch 1, wobei der Zustandsüberwachungsabschnitt weiterhin als die Zustandsvariable mindestens eines aus Werkzeugdaten, die eine Information zu dem Werkzeug angeben, Werkstückdaten, die eine Information zu dem Werkstück angeben, Bearbeitungsformdaten, die eine Information zu einer Bearbeitungsform angeben, und Maschinendaten, die eine Information zu einer Maschine angeben, überwacht und der Lernabschnitt die Daten, die von dem Zustandsüberwachungsabschnitt überwacht werden, in Verbindung mit den Schwingungsmengendaten lernt.
  3. Steuerung nach Anspruch 1 oder 2, wobei die Bestimmungsdaten neben dem Korrektheitsbestimmungsergebnis der Schwingungsmenge des Schneidteils des Werkzeugs ein Korrektheitsbestimmungsergebnis einer Zykluszeit für das Kreuzschnitt-Nuten umfassen.
  4. Steuerung nach einem der Ansprüche 1 bis 3, wobei der Lernabschnitt umfasst: einen Belohnungsberechnungsabschnitt, der eine Belohnung in Bezug auf das Korrektheitsbestimmungsergebnis berechnet, und einen Wertefunktionsaktualisierungsabschnitt, der unter Verwendung der Belohnung eine Funktion aktualisiert, die einen Wert der Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in Bezug auf die Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, ausdrückt.
  5. Steuerung nach einem der Ansprüche 1 bis 4, wobei der Lernabschnitt die Zustandsvariablen und die Bestimmungsdaten in einer mehrschichtigen Struktur berechnet.
  6. Steuerung nach einem der Ansprüche 1 bis 5, die weiterhin einen Entscheidungsfindungsabschnitt umfasst, der einen Befehlswert auf der Basis der Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, gemäß einem Lernergebnis des Lernabschnitts ausgibt.
  7. Steuerung nach Anspruch 6, wobei der Zustandsüberwachungsabschnitt weiterhin Hauptspindeldrehzahldaten, die die Drehzahl einer Hauptspindel angeben, als die Zustandsvariable überwacht und der Lernabschnitt die Daten, die von dem Zustandsüberwachungsabschnitt überwacht werden, in Verbindung mit den Schwingungsmengendaten lernt.
  8. Steuerung nach Anspruch 7, wobei der Entscheidungsfindungsabschnitt einen Befehlswert auf der Basis der Drehzahl der Hauptspindel, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, ausgibt.
  9. Steuerung nach einem der Ansprüche 1 bis 8, wobei der Lernabschnitt die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in jeder von einer Vielzahl von Werkzeugmaschinen unter Verwendung der Zustandsvariablen und der Bestimmungsdaten, die für jede der Vielzahl von Werkzeugmaschinen erhalten wurden, lernt.
  10. Steuerung nach einem der Ansprüche 1 bis 9, wobei die Maschinenlernvorrichtung in einem Cloud-Server existiert.
  11. Maschinenlernvorrichtung, die eine Vorschubmenge pro Einheitszyklus eines Werkzeugs, wenn ein Schneidteil des Werkzeugs durch ein Werkstück beim Kreuzschnitt-Nuten hindurchgeht, lernt, wobei die Maschinenlernvorrichtung umfasst: einen Zustandsüberwachungsabschnitt, der als Zustandsvariablen, die einen aktuellen Zustand einer Umgebung ausdrücken, Vorschubmengendaten, die die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben, und Schwingungsmengendaten, die eine Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben, überwacht; einen Bestimmungsdatenerfassungsabschnitt, der Bestimmungsdaten erfasst, die ein Korrektheitsbestimmungsergebnis der Schwingungsmenge des Schneidteils des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, angeben; und einen Lernabschnitt, der die Vorschubmenge pro Einheitszyklus des Werkzeugs, wenn der Schneidteil des Werkzeugs durch das Werkstück hindurchgeht, in Verbindung mit den Schwingungsmengendaten unter Verwendung der Zustandsvariablen und der Bestimmungsdaten lernt.
DE102018004048.9A 2017-05-26 2018-05-18 Steuerung und Maschinenlernvorrichtung Active DE102018004048B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017105069A JP6557285B2 (ja) 2017-05-26 2017-05-26 制御装置及び機械学習装置
JP2017-105069 2017-05-26

Publications (2)

Publication Number Publication Date
DE102018004048A1 true DE102018004048A1 (de) 2018-11-29
DE102018004048B4 DE102018004048B4 (de) 2023-05-11

Family

ID=64109554

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018004048.9A Active DE102018004048B4 (de) 2017-05-26 2018-05-18 Steuerung und Maschinenlernvorrichtung

Country Status (4)

Country Link
US (1) US11119464B2 (de)
JP (1) JP6557285B2 (de)
CN (1) CN108931959B (de)
DE (1) DE102018004048B4 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6484265B2 (ja) * 2017-02-15 2019-03-13 ファナック株式会社 学習制御機能を備えたロボットシステム及び学習制御方法
JP6474449B2 (ja) * 2017-04-07 2019-02-27 ファナック株式会社 調整装置及び調整方法
JP6777696B2 (ja) * 2018-08-31 2020-10-28 ファナック株式会社 加工環境推定装置
JP7441602B2 (ja) * 2018-09-27 2024-03-01 株式会社ジェイテクト 機械加工支援システム及び切削装置
JP6940474B2 (ja) * 2018-12-05 2021-09-29 ファナック株式会社 工作機械
WO2020121477A1 (ja) * 2018-12-13 2020-06-18 三菱電機株式会社 機械学習装置、加工プログラム生成装置および機械学習方法
US11093794B1 (en) * 2020-02-13 2021-08-17 United States Of America As Represented By The Secretary Of The Navy Noise-driven coupled dynamic pattern recognition device for low power applications
CN112872369B (zh) * 2021-01-12 2022-11-08 北京理工大学珠海学院 工件车削加工方法及工件车削加工数据库建模方法
WO2023053399A1 (ja) * 2021-09-30 2023-04-06 三菱電機株式会社 数値制御装置、加工システム、数値制御方法および加工方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000084794A (ja) 1998-09-14 2000-03-28 Makino Milling Mach Co Ltd 加工処理装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5762175A (en) 1980-09-30 1982-04-15 Tokyo Shibaura Electric Co Method of controlling group of elevator
JPS6219347A (ja) * 1985-07-16 1987-01-28 Okuma Mach Works Ltd 回転工具による平面切削時の制御方法
US5044125A (en) * 1988-09-02 1991-09-03 Cincinnati Milacron-Heald Corp. Method and apparatus for controlling grinding processes
ATE287317T1 (de) * 1997-03-15 2005-02-15 Makino Milling Machine Prozessor für maschinelle bearbeitung
JPH11252990A (ja) * 1998-02-27 1999-09-17 Fanuc Ltd Pwm方式によるモータ制御装置
JP2001075624A (ja) * 1999-07-01 2001-03-23 Mori Seiki Co Ltd Nc工作機械のツールパスデータ生成装置及びこれを備えた数値制御装置
US7933679B1 (en) * 2007-10-23 2011-04-26 Cessna Aircraft Company Method for analyzing and optimizing a machining process
TWI400591B (zh) * 2010-03-12 2013-07-01 Ind Tech Res Inst 具有線上振動偵測調控之工具機
WO2011153520A1 (en) * 2010-06-04 2011-12-08 The Gleason Works Adaptive control of a machining process
KR101965136B1 (ko) * 2012-05-24 2019-04-03 난트 홀딩스 아이피, 엘엘씨 이벤트 아카이빙 시스템 및 방법
KR102092969B1 (ko) * 2013-06-10 2020-03-27 두산공작기계 주식회사 회전 절삭공구의 실시간 이송속도 설정방법 및 제어장치
JP6243260B2 (ja) * 2013-12-16 2017-12-06 国立大学法人 東京大学 主軸モータの制御装置
JP2017030067A (ja) * 2015-07-30 2017-02-09 ファナック株式会社 加工時間測定機能とオンマシン測定機能を有する制御装置付き加工装置
JP6063013B1 (ja) * 2015-08-27 2017-01-18 ファナック株式会社 びびり或いは工具摩耗/破損の発生を抑制する加工条件調整機能を有する数値制御装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000084794A (ja) 1998-09-14 2000-03-28 Makino Milling Mach Co Ltd 加工処理装置

Also Published As

Publication number Publication date
US20180341244A1 (en) 2018-11-29
DE102018004048B4 (de) 2023-05-11
JP6557285B2 (ja) 2019-08-07
CN108931959A (zh) 2018-12-04
US11119464B2 (en) 2021-09-14
CN108931959B (zh) 2020-09-18
JP2018199189A (ja) 2018-12-20

Similar Documents

Publication Publication Date Title
DE102018004048B4 (de) Steuerung und Maschinenlernvorrichtung
DE102018006946B4 (de) Steuerung und maschinelle Lernvorrichtung
DE102018010054A1 (de) Steuerung und maschinelle Lernvorrichtung
DE102016010064B4 (de) Numerische Steuerung mit Bearbeitungsbedingungsanpassungsfunktion zum Verringern des Auftretens von Rattern oder Werkzeugverschleiss/-bruch
DE102016011532B4 (de) Maschinenlernvorrichtung und Maschinenlernverfahren zum Optimieren der Häufigkeit einer Werkzeugkorrektur einer Werkzeugmaschine und Werkzeugmaschine mit der Maschinenlernvorrichtung
DE102018001893B4 (de) Reinigungsprozess-Optimierungsvorrichtung und Maschinenlernvorrichtung
DE69125980T2 (de) Intelligentes Bearbeitungssystem
DE102018004330B4 (de) Steuerung und maschinelle Lernvorrichtung
DE102018108778B4 (de) Beschleunigungs- und verzögerungssteuereinheit, maschinenlernvorrichtung und maschinenlernverfahren
DE102017011544A1 (de) Steuerung und maschinelle Lernvorrichtung
DE102018000342A1 (de) Numerische steuerung und maschinelle lernvorrichtung
DE102019002156A1 (de) Steuergerät und maschinelle Lernvorrichtung
DE102019106729A1 (de) Antriebsvorrichtung und Vorrichtung für maschinelles Lernen
DE102016011528A1 (de) Maschinelle Lernvorrichtung zur Optimierung der Zyklusprozesszeit einer Bearbeitungsmaschine, Motorsteuervorrichtung, Bearbeitungsmaschine und maschinelles Lernverfahren
DE102016008994A1 (de) Werkzeugmaschine, simulationsvorrichtung und maschineneinlerngerät
DE102017010799A1 (de) Maschinenlernvorrichtung und Robotersystem zum Lernen einer Bearbeitungsreihenfolge eines Laserbearbeitungsroboters und Maschinenlernverfahren dafür
DE102019001783A1 (de) Steuerung, maschinelle lernvorrichtung und system
DE102018006024A1 (de) Controller und maschinelle Lernvorrichtung
DE102016009106A1 (de) Mit Steuerung ausgerüstete Bearbeitungsvorrichtung mit Bearbeitungszeit- Messfunktion und Messfunktion auf der Maschine
DE102018003266B4 (de) Controller und maschinelle lernvorrichtung
DE102019003601A1 (de) Vorrichtung zur Lebensdauervorhersage und Vorrichtung für maschinelles Lernen
DE102019001044A1 (de) Steuervorrichtung und maschinelle lernvorrichtung
DE102018005008A1 (de) Steuervorrichtung und maschinelle lernvorrichtung
DE102018200794A1 (de) Aktionsinformationslernvorrichtung, aktionsinformationsoptimierungssystem und aktionsinformationslernprogramm
DE102019112379A1 (de) Bearbeitungsbedingungsanpassungsvorrichtung und Maschinenlernvorrichtung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final