DE112018008169B4 - Numerische Steuerung und Maschinenlernvorrichtung - Google Patents

Numerische Steuerung und Maschinenlernvorrichtung Download PDF

Info

Publication number
DE112018008169B4
DE112018008169B4 DE112018008169.9T DE112018008169T DE112018008169B4 DE 112018008169 B4 DE112018008169 B4 DE 112018008169B4 DE 112018008169 T DE112018008169 T DE 112018008169T DE 112018008169 B4 DE112018008169 B4 DE 112018008169B4
Authority
DE
Germany
Prior art keywords
tool
machining
command
unit
path
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.)
Active
Application number
DE112018008169.9T
Other languages
English (en)
Other versions
DE112018008169T5 (de
Inventor
Masakazu Sagasaki
Tsuyoshi KUMAZAWA
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 DE112018008169T5 publication Critical patent/DE112018008169T5/de
Application granted granted Critical
Publication of DE112018008169B4 publication Critical patent/DE112018008169B4/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/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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23BTURNING; BORING
    • B23B25/00Accessories or auxiliary equipment for turning-machines
    • B23B25/02Arrangements for chip-breaking in turning-machines
    • 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
    • G05B19/27Numerical 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 using an absolute digital measuring device
    • G05B19/29Numerical 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 using an absolute digital measuring device for point-to-point control
    • G05B19/291Numerical 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 using an absolute digital measuring device for point-to-point control the positional error is used to control continuously the servomotor according to its magnitude
    • G05B19/295Numerical 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 using an absolute digital measuring device for point-to-point control the positional error is used to control continuously the servomotor according to its magnitude with current or torque feedback only

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)
  • Turning (AREA)

Abstract

Numerische Steuerung (1, 1a) zum Steuern mehrerer Antriebswellen, die ein Werkzeug zum Bearbeiten eines zu bearbeitenden Objekts antreiben, wobei die numerische Steuerung (1, 1a) aufweist:eine Analyseverarbeitungseinheit (45) zur Analyse eines Bearbeitungsprogramms;eine Bearbeitungsbahn-Berechnungseinheit (483) zur Berechnung einer Bearbeitungsbahn auf Basis eines Ergebnisses einer von der Analyseverarbeitungseinheit (45) durchgeführten Analyse des Bearbeitungsprogramms, wobei es sich bei der Bearbeitungsbahn um einen Verfahrweg des Werkzeugs bei der spanenden Bearbeitung des zu bearbeitenden Objekts handelt; undeine Unterbrechungsbahn-Berechnungseinheit (482) zur Berechnung eines Verfahrwegs des Werkzeugs in einem Unterbrechungsvorgang auf Basis des Ergebnisses der Analyse, wobei der Unterbrechungsvorgang ein wiederholt durchgeführter Vorgang ist, bei dem das Werkzeug, während das Werkzeug entlang der Bearbeitungsbahn bewegt wird und das zu bearbeitende Objekt bearbeitet, vorübergehend von der Bearbeitungsbahn angehoben wird,dadurch gekennzeichnet, dassdie Unterbrechungsbahn-Berechnungseinheit (482) den Verfahrweg des Werkzeugs in dem Unterbrechungsvorgang auf Basis eines innerhalb des Bereichs von größer 0° bis kleiner oder gleich 90° festgelegten Anhebewinkels berechnet, wobei der Anhebewinkel ein Winkel ist, in dem das Werkzeug in dem Unterbrechungsvorgang in Bezug auf die Bearbeitungsbahn angehoben wird.

Description

  • Gebiet
  • Die vorliegende Erfindung betrifft eine numerische Steuerung zur Steuerung einer Bearbeitungsvorrichtung, die eine Drehbearbeitung durchführt, und eine Vorrichtung für maschinelles Lernen.
  • Hintergrund
  • Es wurden herkömmliche numerische Steuerungen zur Steuerung einer Bearbeitungsvorrichtung, die eine Drehbearbeitung durchführt, vorgeschlagen, darunter eine numerische Steuerung, durch deren Steuerung ein Schneidwerkzeug zur Bearbeitung eines Werkstücks mit einer niedrigen Frequenz entlang der Bearbeitungsbahn in Vibration versetzt wird (z. B. JP 5 599 523 B1 ).
  • Die in der JP 5 599 523 B1 beschriebene numerische Steuerung berechnet die spezifizierte Bewegungsstrecke pro Zeiteinheit auf Basis eines an ein Werkzeug ausgegebenen Verfahrbefehls, berechnet die Größe der Vibrationsbewegung pro Zeiteinheit auf Basis einer Vibrationsbedingung, kombiniert die spezifizierte Bewegungsstrecke und die Größe der Vibrationsbewegung, um so den Betrag der resultierenden Bewegung zu berechnen, und steuert demnach das Vibrationsschneiden auf Basis des Betrags der resultierenden Bewegung. Die in der JP 5 599 523 B1 beschriebene numerische Steuerung verhindert, dass die Vibrationsfrequenz eines Werkzeugs einen bestimmten Wert überschreitet, damit die bei der Schneidbearbeitung eines Werkstücks entstehenden Späne in kleine Stücke gebrochen werden können. Dies verhindert, dass sich die Späne an dem Werkzeug verfangen, wodurch beispielsweise das Problem einer Verkürzung der Werkzeuglebensdauer vermieden werden kann, das durch Anhaften von Spänen verursacht wird.
  • Aus den Dokumenten DE 10 2018 002 784 A1 und DE 10 2017 208 060 A1 ist jeweils bekannt, ein Schneidewerkzeug einer Werkzeugmaschine zu oszillieren, um die Länge von durch das Schneidwerkzeug abgetragenen Spänen zu reduzieren. Dabei wird die Oszillation basierend auf einer Drehgeschwindigkeit einer Spindel der Werkzeugmaschine festgelegt. Somit hängt die Oszillation von der Drehzahl der Spindel ab. Bei der Bestimmung der Oszillationsfrequenz kann gemäß DE 10 2018 002 784 A1 maschinelles Lernen zum Einsatz kommen.
  • Dokument US 2016 0 011 579 A1 lehrt die Bestimmung eines Bewegungspfades für ein oszillierendes Schneidwerkzeug unter Verwendung einer Interpolationseinheit.
  • Dokument DE 10 2004 011 015 A1 offenbart ein Verfahren zum Überwachen der Verstellbewegung eines von einer Antriebseinheit angetriebenen Bauteils, welches Verfahren ein neuronales Netz verwendet.
  • Die Merkmale des Oberbegriffes von Anspruch 1 sind aus dem Dokument US 2009 / 0 107 308 A1 vorbekannt.
  • Kurzbeschreibung
  • Technische Problemstellung
  • Bei einer Drehbearbeitung, wie sie in der JP 5 599 523 B1 beschrieben ist, bei der das Schneidwerkzeug zur Bearbeitung eines Werkstücks mit einer niedrigen Frequenz entlang der Bearbeitungsbahn in Schwingung versetzt wird, hängt die Frequenz, mit der das bei einer niedrigen Frequenz arbeitende Schneidwerkzeug in Schwingung versetzt wird, von der Drehzahl der Spindel ab. Dies stellt ein Problem dar, da die Festlegung der Drehzahl der Spindel eingeschränkt wird. Beispielsweise führt eine höhere Drehzahl der Spindel bei einer höheren Bearbeitungsgeschwindigkeit zu einer höheren Schwingungsfrequenz des Zerspanungswerkzeugs, wodurch das Brechen der Späne behindert werden kann.
  • Die vorliegende Erfindung entstand im Lichte des oben Dargelegten, wobei eine Aufgabe der vorliegenden Erfindung darin besteht, eine numerische Steuerung anzugeben, die Späne, die bei der Drehbearbeitung entstehen, zuverlässig brechen kann, ohne vom Einstellwert der Drehgeschwindigkeit der Spindel abhängig zu sein.
  • Lösung der Problemstellung
  • Die vorstehende Aufgabe wird durch die Kombination der Merkmale des unabhängigen Anspruchs 1 gelöst. Bevorzugte Weiterbildungen finden sich in den abhängigen Ansprüchen.
  • Es wird eine numerische Steuerung zum Steuern mehrerer Antriebswellen offenbart, die ein Werkzeug zum Bearbeiten eines zu bearbeitenden Objekts antreiben. Die numerische Steuerung umfasst eine Analyseverarbeitungseinheit, die ein Bearbeitungsprogramm analysiert, und eine Bearbeitungsbahn-Berechnungseinheit, die eine Bearbeitungsbahn auf Basis eines Ergebnisses der von der Analyseverarbeitungseinheit durchgeführten Analyse des Bearbeitungsprogramms berechnet, wobei es sich bei der Bearbeitungsbahn um den Verfahrweg des Werkzeugs bei der spanenden Bearbeitung des zu bearbeitenden Objekts handelt. Die numerische Steuerung umfasst ferner eine Unterbrechungsbahn-Berechnungseinheit, die den Verfahrweg des Werkzeugs bei einem auf dem Analyseergebnis basierenden Unterbrechungsvorgang berechnet, wobei der Unterbrechungsvorgang ein wiederholt durchgeführter Vorgang ist, bei dem das Werkzeug, während das Werkzeug entlang der Bearbeitungsbahn bewegt wird und das zu bearbeitende Objekt bearbeitet, vorübergehend von der Bearbeitungsbahn abgehoben wird.
  • Vorteilhafte Wirkungen der Erfindung
  • Eine numerische Steuerung gemäß der vorliegenden Erfindung hat den Vorteil, dass Späne, die bei der Drehbearbeitung anfallen, zuverlässig von einem zu bearbeitenden Objekt entfernt werden können, ohne vom Einstellwert der Spindeldrehzahl bestimmt zu sein.
  • Figurenliste
    • 1 zeigt eine Darstellung zur Veranschaulichung eines Konfigurationsbeispiels einer numerischen Steuerung gemäß einer ersten Ausführungsform.
    • 2 zeigt eine Darstellung zur Veranschaulichung eines Konfigurationsbeispiels eines Bearbeitungsunterbrechungsbefehls, der in ein Bearbeitungsprogramm aufgenommen werden kann, das von einer numerischen Steuerung gemäß der ersten Ausführungsform ausgeführt werden soll.
    • 3 zeigt eine Darstellung zur Veranschaulichung eines ersten Beispiels eines Bearbeitungsvorgangs, der von einer Bearbeitungsvorrichtung durchgeführt wird, die von einer numerischen Steuerung gemäß der ersten Ausführungsform gesteuert wird.
    • 4 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für ein Bearbeitungsprogramm zur Implementierung des in 3 dargestellten Bearbeitungsvorgangs.
    • 5 zeigt eine Darstellung zur Veranschaulichung eines zweiten Beispiels eines Bearbeitungsvorgangs, der von einer Bearbeitungsvorrichtung durchgeführt wird, die von einer numerischen Steuerung gemäß der ersten Ausführungsform gesteuert wird.
    • 6 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für ein Bearbeitungsprogramm zur Implementierung des in 5 dargestellten Bearbeitungsvorgangs.
    • 7 zeigt eine Darstellung zur Veranschaulichung eines dritten Beispiels eines Bearbeitungsvorgangs, der von einer Bearbeitungsvorrichtung durchgeführt wird, die von einer numerischen Steuerung gemäß der ersten Ausführungsform gesteuert wird.
    • 8 zeigt ein Flussdiagramm zur Veranschaulichung eines Beispiels für die Funktionsweise der Analyseverarbeitungseinheit, die in einer numerischen Steuerung gemäß der ersten Ausführungsform enthalten ist.
    • 9 zeigt ein Flussdiagramm zur Veranschaulichung eines Beispiels für die Funktionsweise der Interpolationsverarbeitungseinheit, die in einer numerischen Steuerung gemäß der ersten Ausführungsform enthalten ist.
    • 10 zeigt eine Darstellung zur Veranschaulichung eines ersten Beispiels eines Unterbrechungsvorgangs, der durch eine numerische Steuerung gemäß der ersten Ausführungsform durchgeführt wird.
    • 11 zeigt eine Darstellung zur Veranschaulichung eines zweiten Beispiels eines Unterbrechungsvorgangs, der durch eine numerische Steuerung gemäß der ersten Ausführungsform durchgeführt wird.
    • 12 zeigt eine Darstellung zur Veranschaulichung eines dritten Beispiels eines Unterbrechungsvorgangs, der durch eine numerische Steuerung gemäß der ersten Ausführungsform durchgeführt wird.
    • 13 zeigt eine Darstellung zur Veranschaulichung eines vierten Beispiels eines Unterbrechungsvorgangs, der durch eine numerische Steuerung gemäß der ersten Ausführungsform durchgeführt wird.
    • 14 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für die Hardwarekonfiguration der Steuerungsberechnungseinheit, die in einer numerischen Steuerung gemäß der ersten Ausführungsform enthalten ist.
    • 15 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für eine Bohrbearbeitung.
    • 16 zeigt eine Darstellung zur Beschreibung eines möglichen Problems bei der Bohrbearbeitung.
    • 17 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für einen Bearbeitungsvorgang, der eine Behinderung zwischen dem Werkzeug und dem Werkstück verursacht.
    • 18 zeigt eine Darstellung zur Veranschaulichung eines Konfigurationsbeispiels einer numerischen Steuerung gemäß einer zweiten Ausführungsform.
    • 19 zeigt ein Flussdiagramm zur Veranschaulichung eines Beispiels für die Funktionsweise der Betriebszustandsänderungseinheit, die in einer numerischen Steuerung gemäß der zweiten Ausführungsform enthalten ist.
  • Beschreibung von Ausführungsformen
  • Im Folgenden werden unter Bezugnahme auf die Figuren eine numerische Steuerung und eine Maschinenlernvorrichtung gemäß Ausführungsformen der vorliegenden Erfindung ausführlich beschrieben. Es wird darauf hingewiesen, dass diese Ausführungsformen den Umfang der vorliegenden Erfindung nicht beschränken sollen. Bei der Beschreibung der Ausführungsformen wird das in einer Bearbeitungsvorrichtung enthaltene Schneidwerkzeug als „Werkzeug“ bezeichnet, und die von einer Bearbeitungsvorrichtung durchgeführte Drehbearbeitung wird als „Bearbeitung“ bezeichnet.
  • Erste Ausführungsform
  • 1 zeigt eine Darstellung zur Veranschaulichung eines Konfigurationsbeispiels einer numerischen Steuerung gemäß einer ersten Ausführungsform. Eine numerische Steuerung 1 umfasst eine Eingabeeinheit 20, eine Anzeigeeinheit 30 und eine Steuerungsberechnungseinheit 40. 1 zeigt ferner eine Antriebseinheit 10, die in einer Bearbeitungsvorrichtung enthalten ist, die von der numerischen Steuerung 1 gesteuert wird. Abgesehen von der Antriebseinheit 10 sind die anderen Komponenten der Bearbeitungsvorrichtung in der Figur nicht dargestellt.
  • Die in einer Bearbeitungsvorrichtung enthaltene Antriebseinheit 10 stellt einen Mechanismus zum Antreiben des Werkstücks, bei dem es sich um ein zu bearbeitendes Objekt handelt, und/oder des Werkzeugs in zumindest zwei axialen Richtungen dar. In diesem Beispiel umfasst die Antriebseinheit 10 mehrere Servomotoren 11, die jeweils das Werkstück und/oder das Werkzeug in einer entsprechenden axialen Richtung bewegen, die an der numerischen Steuerung 1 definiert ist, und mehrere Detektoren 12, die jeweils die Position und die Drehzahl des Rotors des zugehörigen Servomotors 11 erfassen. Die Antriebseinheit 10 umfasst auch eine X-Achsen-Servosteuerungseinheit 13X, eine Z-Achsen-Servosteuerungseinheit 13Z, ..., die jeweils die Servomotoren 11 auf Basis der von den zugehörigen Detektoren 12 erfassten Positionen und Drehzahlen steuern. Es wird darauf hingewiesen, dass die Servosteuerungseinheit für jede Achse (X-Achsen-Servosteuerungseinheit 13X, Z-Achsen-Servosteuerungseinheit 13Z, ...) einfach als Servosteuerungseinheit 13 bezeichnet wird, wenn keine Unterscheidung der Richtungen der Antriebswellen erforderlich ist. Die Antriebseinheit 10 umfasst ferner einen Spindelmotor 14, um die Spindel zum Drehen des Werkstücks zu drehen, einen Detektor 15, der die Position und die Drehzahl des Rotors des Spindelmotors 14 erfasst, und eine Spindel-Servosteuerungseinheit 16, die den Spindelmotor 14 auf Basis der Position und der Drehzahl steuert, die vom Detektor 15 erfasst werden.
  • Zurückkommend auf die Beschreibung der numerischen Steuerung 1 ist die Eingabeeinheit 20 eine Einrichtung zur Eingabe von Informationen in die numerische Steuerung 1. Die Eingabeeinheit 20 wird durch eine Tastatur, eine Taste, eine Maus oder dergleichen implementiert. Die Eingabeeinheit 20 empfängt von einem Benutzer eine Eingabe an die numerische Steuerung 1 wie beispielsweise einen Befehl, ein Bearbeitungsprogramm oder einen Parameter und überträgt die Eingabe an die Steuerungsberechnungseinheit 40.
  • Die Anzeigeeinheit 30 wird durch eine Flüssigkristallanzeigevorrichtung oder dergleichen implementiert, um beispielsweise Informationen anzuzeigen, die von der Steuerungsberechnungseinheit 40 verarbeitet wurden.
  • Die Steuerungsberechnungseinheit 40 umfasst eine
  • Eingabesteuerungseinheit 41, eine Dateneinstelleinheit 42, eine Speichereinheit 43, eine Anzeigebildverarbeitungseinheit 44, eine Analyseverarbeitungseinheit 45, eine Maschinensteuerungssignalverarbeitungseinheit 46, eine speicherprogrammierbare Steuerung (SPS) 47, eine Interpolationsverarbeitungseinheit 48, eine Beschleunigungs-Verzögerungsverarbeitungseinheit 49 und eine Achsendatenausgabeeinheit 50. Es wird darauf hingewiesen, dass die SPS 47 außerhalb der Steuerungsberechnungseinheit 40 angeordnet sein kann.
  • Die Eingabesteuerungseinheit 41 empfängt Informationen, die von der Eingabeeinheit 20 eingegeben werden. Die Dateneinstelleinheit 42 speichert die von der Eingabesteuerungseinheit 41 empfangenen Informationen in der Speichereinheit 43. Wenn sich die Eingabeinformationen beispielsweise auf die Editierung eines Bearbeitungsprogramms 432 beziehen, werden die Editierungsinformationen auf das in der Speichereinheit 43 gespeicherte Bearbeitungsprogramm 432 angewendet, und wenn Parameterinformationen eingegeben wurden, wird ein in der Speichereinheit 43 gespeicherter Parameter 431 aktualisiert.
  • Die Speichereinheit 43 speichert den Parameter 431 zur Verwendung bei der Verarbeitung der Steuerungsberechnungseinheit 40, das auszuführende Bearbeitungsprogramm 432, die an der Anzeigeeinheit 30 anzuzeigenden Anzeigebilddaten 433 und dergleichen. Diesbezüglich kann die numerische Steuerung 1 gemäß der vorliegenden Ausführungsform eine Bearbeitungsvorrichtung zusätzlich zu einem Befehl für eine allgemeine numerische Steuerung in Übereinstimmung mit einem neu definierten Bearbeitungsunterbrechungsbefehl steuern. Dementsprechend kann das Bearbeitungsprogramm 432 eine Beschreibung für einen Bearbeitungsunterbrechungsbefehl enthalten. Ein Bearbeitungsunterbrechungsbefehl ist ein Befehl zum vorübergehenden Anhalten der Bearbeitung während der Bearbeitung eines Werkstücks durch die Bearbeitungsvorrichtung, zum Trennen des Werkzeugs vom Werkstück, zum anschließenden Inkontaktbringen des Werkzeugs mit dem Werkstück und zur Wiederaufnahme der Bearbeitung. Dieser Arbeitsablauf kann hier als „Unterbrechungsvorgang“ bezeichnet sein. Der Begriff „Anheben“ bezieht sich, wie er hier verwendet wird, auf den Vorgang des Anhebens des Werkzeugs von der Bearbeitungsbahn während der Bearbeitung, während das Werkzeug entlang der Bearbeitungsbahn bewegt wird. Ferner kann ein Vorgang zum Trennen des Werkzeugs vom Werkstück während des Unterbrechungsvorgangs ebenfalls als „Anheben des Werkzeugs“ oder einfach als „Anheben“ bezeichnet werden. Zudem kann ein Vorgang, bei dem das Werkzeug aus dem Zustand der Trennung vom Werkstück während der Unterbrechung wieder in einen Zustand gebracht wird, in dem es mit dem Werkstück in Kontakt ist, als „Absenken des Werkzeugs“ oder einfach „Absenken“ bezeichnet werden. Der Bearbeitungsunterbrechungsbefehl und der Unterbrechungsvorgang werden später noch genauer beschrieben.
  • Die Speichereinheit 43 umfasst ferner einen gemeinsam genutzten Bereich 434 zum Speichern von anderen Daten als dem Parameter 431, dem Bearbeitungsprogramm 432 und den Anzeigebilddaten 433. In dem gemeinsam genutzten Bereich 434 werden temporär Daten gespeichert, die während der von der Steuerungsberechnungseinheit 40 durchgeführten Verarbeitung zur Steuerung der Antriebseinheit 10 erzeugt werden. Die Anzeigebildverarbeitungseinheit 44 steuert die Anzeige der in der Speichereinheit 43 gespeicherten Anzeigebilddaten 433 an der Anzeigeeinheit 30.
  • Die Analyseverarbeitungseinheit 45 umfasst eine Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle und eine Analyseeinheit 452 für allgemeine Befehle. Die Analyseverarbeitungseinheit 45 liest das Bearbeitungsprogramm 432, das einen oder mehrere Blöcke aufweist, aus der Speichereinheit 43 aus und analysiert das ausgelesene Bearbeitungsprogramm 432 mit Hilfe der Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle oder der Analyseeinheit 452 für allgemeine Befehle. Die Analyseeinheit für 451 Bearbeitungsunterbrechungsbefehle analysiert einen Bearbeitungsunterbrechungsbefehl, der in dem Bearbeitungsprogramm 432 enthalten ist, und schreibt das Analyseergebnis in den gemeinsam genutzten Bereich 434 der Speichereinheit 43. Die Analyseeinheit 452 für allgemeine Befehle analysiert einen von einem Bearbeitungsunterbrechungsbefehl verschiedenen Befehl, der in dem Bearbeitungsprogramm 432 enthalten ist, und schreibt das Analyseergebnis in den gemeinsam genutzten Bereich 434 der Speichereinheit 43. Ein von einem Bearbeitungsunterbrechungsbefehl verschiedener Befehl, der in dem Bearbeitungsprogramm 432 enthalten ist, kann im Folgenden als allgemeiner Befehl bezeichnet sein.
  • Wenn die Analyseverarbeitungseinheit 45 einen Hilfsbefehl liest, der als Befehl für den Betrieb der Maschine fungiert und kein Befehl für den Betrieb einer Antriebswelle ist, bei der es sich um eine numerisch gesteuerte Welle handelt, benachrichtigt die Maschinensteuerungssignalverarbeitungseinheit 46 die SPS 47, dass ein Hilfsbefehl ausgegeben wurde. Beispiele für einen Hilfsbefehl sind ein M-Code und ein T-Code.
  • Nach dem Erhalt einer Meldung von der Maschinensteuerungssignalverarbeitungseinheit 46, dass ein Hilfsbefehl ausgegeben wurde, führt die SPS 47 eine dem Hilfsbefehl entsprechende Verarbeitung durch. Die SPS 47 enthält ein Kontaktplanprogramm mit einer Beschreibung des Maschinenbetriebs. Bei Empfang eines T-Codes oder eines M-Codes, die Hilfsbefehle sind, führt die SPS 47 die dem Hilfsbefehl entsprechende Verarbeitung gemäß dem Kontaktplanprogramm durch. Nach der Durchführung der dem Hilfsbefehl entsprechenden Verarbeitung überträgt die SPS 47 ein Beendigungssignal, das den Abschluss der dem Hilfsbefehl entsprechenden Verarbeitung anzeigt, an die Maschinensteuerungssignalverarbeitungseinheit 46, um die Ausführung des nächsten Blockes des Bearbeitungsprogramms 432 zu ermöglichen.
  • In der Steuerungsberechnungseinheit 40 sind die Analyseverarbeitungseinheit 45, die Maschinensteuerungssignalverarbeitungseinheit 46 und die Interpolationsverarbeitungseinheit 48 über die Speichereinheit 43 miteinander verbunden. Die Analyseverarbeitungseinheit 45, die Maschinensteuerungssignalverarbeitungseinheit 46 und die Interpolationsverarbeitungseinheit 48 senden und empfangen über den gemeinsam genutzten Bereich 434 der Speichereinheit 43 verschiedene Informationen aneinander und voneinander. Bei der Beschreibung des Sendens und Empfangens von Informationen zu und von der Analyseverarbeitungseinheit 45, der Maschinensteuerungssignalverarbeitungseinheit 46 und der Interpolationsverarbeitungseinheit 48 wird im Folgenden nicht erwähnt, dass das Senden und Empfangen über die Speichereinheit 43 erfolgt.
  • Wenn die Analyseverarbeitungseinheit 45 einen Befehl analysiert hat, der ein Argument in Bezug auf den Verfahrweg des Werkzeugs enthält, berechnet die Interpolationsverarbeitungseinheit 48 den Verfahrweg des Werkzeugs durch eine Interpolationsoperation unter Verwendung des in dem analysierten Befehl enthaltenen Arguments. Ein Befehl, der ein Argument enthält, das sich auf den Verfahrweg des Werkzeugs bezieht, ist ein Befehl, der mindestens eines der folgenden Argumente enthält: ein Argument, das die Position des Werkzeugs angibt, ein Argument, das die Verfahrgeschwindigkeit des Werkzeugs angibt, ein Argument, das das bei der Interpolationsoperation zu verwendende Interpolationsverfahren angibt, und dergleichen. Der später beschriebene Bearbeitungsunterbrechungsbefehl ist ebenfalls ein Befehlstyp, der ein Argument enthält, das sich auf den Verfahrweg des Werkzeugs bezieht.
  • Die Interpolationsverarbeitungseinheit 48 umfasst eine Unterbrechungszeit-Bestimmungseinheit 481, eine Unterbrechungsbahn-Berechnungseinheit 482, eine Bearbeitungsbahn-Berechnungseinheit 483 und eine Verfahrstrecken-Berechnungseinheit 484.
  • Die Unterbrechungszeit-Bestimmungseinheit 481 bestimmt den Zeitpunkt zur Durchführung eines Unterbrechungsvorgangs auf Basis des Analyseergebnisses, das durch die von der Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle der Analyseverarbeitungseinheit 45 durchgeführte Analyse des in dem Bearbeitungsprogramm 432 enthaltenen Bearbeitungsunterbrechungsbefehls erhalten wird.
  • Die Unterbrechungsbahn-Berechnungseinheit 482 berechnet den Verfahrweg des Werkzeugs während des Unterbrechungsvorgangs auf Basis des Analyseergebnisses, das durch eine von der Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle der Analyseverarbeitungseinheit 45 durchgeführte Analyse des Bearbeitungsunterbrechungsbefehls erhalten wurde.
  • Wenn kein Unterbrechungsvorgang durchgeführt wird, berechnet die Bearbeitungsbahn-Berechnungseinheit 483 den Verfahrweg des Werkzeugs auf Basis des Analyseergebnisses, das durch eine von der Analyseeinheit 452 für allgemeine Befehle der Analyseverarbeitungseinheit 45 durchgeführte Analyse eines im Bearbeitungsprogramm 432 enthaltenen allgemeinen Befehls erhalten wurde. Der Verfahrweg des Werkzeugs, der von der Bearbeitungsbahn-Berechnungseinheit 483 berechnet wird, ist der Verfahrweg des Werkzeugs bei der Bearbeitung des Werkstücks, d. h. der Verfahrweg des Werkzeugs, wenn das Werkstück durch das Werkzeug tatsächlich zerspant wird, der die Bearbeitungsbahn wiedergibt.
  • Die Verfahrstrecken-Berechnungseinheit 484 berechnet für jede der Antriebswellen die Verfahrstrecke, die die Bewegungsbahn des Werkzeugs pro vorgegebener Zeiteinheit angibt, auf Basis des Verfahrwegs des Werkzeugs, der von der Unterbrechungsbahn-Berechnungseinheit 482 berechnet wird, des Verfahrwegs des Werkzeugs, der von der Bearbeitungsbahn-Berechnungseinheit 483 berechnet wird, und der Verfahrgeschwindigkeit des Werkzeugs, die durch das entsprechende Argument spezifiziert wird. Die Verfahrstrecken-Berechnungseinheit 484 berechnet also die Strecke zum Bewegen des Werkzeugs pro Zeiteinheit für jede der Antriebswellen. Wenn es sich bei den Antriebswellen beispielsweise um zwei Antriebswellen entlang der X-Achse und der Z-Achse handelt, berechnet die Verfahrstrecken-Berechnungseinheit 484 die X-Achsen-Verfahrstrecke, die die Bewegungsbahn des Werkzeugs entlang der X-Achse pro Zeiteinheit darstellt, und die Z-Achsen-Verfahrstrecke, die die Bewegungsbahn des Werkzeugs entlang der Z-Achse pro Zeiteinheit darstellt. Die Verfahrstrecken-Berechnungseinheit 484 gibt die für jede der Antriebswellen berechnete Verfahrstrecke an die Beschleunigungs-Verzögerungsverarbeitungseinheit 49 aus.
  • Die Beschleunigungs-Verzögerungsverarbeitungseinheit 49 wandelt die für jede der Antriebswellen von der Verfahrstrecken-Berechnungseinheit 484 der Interpolationsverarbeitungseinheit 48 erhaltene Verfahrstrecke auf Basis eines vorgegebenen Beschleunigungs-Verzögerungsmusters unter Berücksichtigung von Beschleunigung und Verzögerung in einen Bewegungsbefehl pro Zeiteinheit um.
  • Die Achsendatenausgabeeinheit 50 gibt den von der Beschleunigungs-Verzögerungsverarbeitungseinheit 49 ausgegebenen Bewegungsbefehl pro Zeiteinheit an die Servosteuerungseinheiten 13 aus, die die jeweiligen Antriebswellen steuern (die X-Achsen-Servosteuerungseinheit 13X, die Z-Achsen-Servosteuerungseinheit 13Z, ...). Es wird darauf hingewiesen, dass jede der Servosteuerungseinheiten 13 bei Empfang des Bewegungsbefehls von der Beschleunigungs-Verzögerungsverarbeitungseinheit 49 den entsprechenden Servomotor 11 gemäß dem empfangenen Bewegungsbefehl steuert.
  • Als Nächstes wird der Bearbeitungsunterbrechungsbefehl beschrieben. 2 zeigt eine Darstellung zur Veranschaulichung eines Konfigurationsbeispiels eines Bearbeitungsunterbrechungsbefehls, der in ein Bearbeitungsprogramm aufgenommen werden kann, das von einer numerischen Steuerung 1 gemäß der ersten Ausführungsform ausgeführt werden soll.
  • Wie in 2 dargestellt ist, geht die vorliegende Ausführungsform davon aus, dass ein G150-Code 91 den Bearbeitungsunterbrechungsbefehl darstellt. Ferner weist der G150-Code 91 eine Struktur auf, die es ermöglicht, dass die Parameter X, Z, I, D, R, A, Q, M, E und P als Adressen enthalten sind, die jeweils ein Argument darstellen. Bei solchen mit einem Unterstrich ‚_‘ auf der rechten Seite der Adressen des in 2 dargestellten G150-Codes 91 wird ein numerischer Wert an der durch den Unterstrich angegebenen Position gesetzt.
  • Sobald der Bearbeitungsunterbrechungsbefehl zum Einstellen von Betriebsbedingungen für den Unterbrechungsvorgang ausgeführt wird, steuert die numerische Steuerung 1 die Antriebseinheit 10 so, dass der Unterbrechungsvorgang unter einem gleichen Satz von Betriebsbedingungen wiederholt wird, bis der Bearbeitungsunterbrechungsbefehl erneut ausgeführt wird, um eine Betriebsbedingung für den Unterbrechungsvorgang zu ändern, oder bis ein Befehl zum Löschen der Einstellung ausgeführt wird. Ein Beispiel für einen Befehl zum Löschen der Einstellung kann ein G 150-Code sein, bei dem alle Argumente weggelassen sind (Einzelelement-Befehl von G 150). Die Adressen, die in den Bearbeitungsunterbrechungsbefehl (G 150-Code) aufgenommen werden können, werden im Folgenden beschrieben.
  • Die Adressen X und Z werden verwendet, um die Arbeitsachsen beim Unterbrechungsvorgang anzugeben. Das Zeichen X steht für die X-Achse, das Zeichen Z steht für die Z-Achse. Wenn ein G150-Code beispielsweise die Adresse X und keine Adresse Z enthält, steuert die numerische Steuerung 1 die Antriebseinheit 10 so, dass sie den Unterbrechungsvorgang nur in Richtung der X-Achse ausführt. Das bedeutet, dass die numerische Steuerung 1 die Antriebseinheit 10 so steuert, dass das Werkzeug nur in Richtung der X-Achse bewegt wird, um sich vom Werkstück zu entfernen. Alternativ dazu steuert die numerische Steuerung 1 die Antriebseinheit 10 so, dass sie einen Unterbrechungsvorgang in Richtung der X-Achse und der Z-Achse durchführt, wenn ein G150-Code X und Z enthält. Die Bewegungsstrecke des Werkzeugs beim Unterbrechungsvorgang wird durch die später beschriebene Adresse R festgelegt. Wenn ein G150-Code nicht als Befehl zum Löschen der Einstellung verwendet wird, muss er X und/oder Z enthalten. Wenn ein G150-Code entweder nur X oder nur Z enthält, kann es vorkommen, dass der Vorgang gemäß einem Befehlswert, der über eine später beschriebene Adresse spezifiziert wurde, nicht ausgeführt werden kann. Aus diesem Grund ist es wünschenswert, dass ein G150-Code sowohl X als auch Z enthält.
  • Die Adresse I wird verwendet, um das Timing der Wiederholung des Unterbrechungsvorgangs zu spezifizieren. Konkret wird die Adresse I verwendet, um die Verfahrstrecke des Werkzeugs während eines Zeitraums nach einer Wiederholung des Unterbrechungsvorgangs und vor einer nächsten Wiederholung des Unterbrechungsvorgangs anzugeben. Der Zahlenwert, der an das Zeichen I angehängt wird, gibt die Verfahrstrecke des Werkzeugs an. Die Verfahrstrecke des Werkzeugs kann über die Strecke oder die Zeitspanne beim Verfahren des Werkzeugs angegeben werden. Wird die Verfahrstrecke beispielsweise über die Strecke angegeben, steuert die numerische Steuerung 1 die Antriebseinheit 10 so, dass jedes Mal, wenn sich das Werkzeug um die angegebene Strecke bewegt hat, ein Unterbrechungsvorgang ausgeführt wird. Ob die Adresse I eine Strecke oder eine Zeitspanne als Verfahrstrecke des Werkzeugs angibt, wird durch die Adresse D festgelegt.
  • Mit der Adresse D wird der Bewegungsmodus festgelegt, d. h., ob die durch die Adresse I festgelegte Verfahrstrecke durch eine Strecke oder durch einen Zeitraum vorgegeben wird. Bei der vorliegenden Ausführungsform wird beispielhaft angenommen, dass D0 die Verwendung einer Strecke und D1 die Verwendung eines Zeitraums angibt.
  • Die Adresse R wird verwendet, um den Betrag des Anhebens des Werkzeugs festzulegen, d. h. wie weit das Werkzeug zu bewegen ist, wenn das Werkzeug vom Werkstück getrennt wird. Der Zahlenwert, der an das Zeichen R angehängt wird, stellt die Anhebedistanz des Werkzeugs dar. Der Anhebevorgang wird durchgeführt, um das Werkzeug um die Strecke zu bewegen, die der angegebenen Anhebedistanz entspricht. Das bedeutet, dass es sich bei der Anhebedistanz um die Verfahrstrecke des Werkzeugs bei der Trennung des Werkzeugs vom Werkstück handelt. Gewöhnlich wird als Anhebedistanz ein Wert angegeben, der größer ist als die Schnitttiefe des Werkzeugs während der Bearbeitung. Dadurch kann das Werkzeug beim Anhebevorgang vom Werkstück getrennt werden, wodurch Späne beim Trennen des Werkzeugs vom Werkstück gebrochen werden können.
  • Mit der Adresse A wird der Anhebewinkel des Werkzeugs spezifiziert, d. h. der Winkel, in dem das Werkzeug angehoben wird. Der Zahlenwert, der an das Zeichen A angehängt wird, stellt den Anhebewinkel des Werkzeugs dar. Bei dem Winkel handelt es sich um einen Winkel in Bezug auf die der Verfahrrichtung des Werkzeugs während der Bearbeitung entgegengesetzten Richtung. Wenn sich das Werkzeug beispielsweise bei der Bearbeitung parallel zur X-Achse bewegt, ist der durch die Adresse A anzugebende Winkel ein Winkel in Bezug auf die X-Achse.
  • Die Adresse Q wird verwendet, um die Wartezeit nach dem Anheben zu spezifizieren, d. h. die Zeitspanne, während der sich das Werkzeug nicht bewegt, nachdem das Werkzeug um die durch die oben beschriebene Adresse R spezifizierte Anhebedistanz angehoben wurde. Der Zahlenwert, der an das Zeichen Q angehängt wird, stellt die Wartezeit nach dem Anheben dar. Die Wartezeit wird als Anzahl der Umdrehungen der Spindel angegeben. Bei einer Wartezeit von „Q1“ handelt es sich beispielsweise um die Zeit, die für eine Umdrehung der Spindel benötigt wird. Die numerische Steuerung 1 steuert die Antriebseinheit 10 so, dass sie nach Ablauf der als Wartezeit nach dem Anheben angegebenen Zeit (nach der angegebenen Anzahl von Umdrehungen der Spindel) nach dem Anheben des Werkzeugs mit dem Absenken des Werkzeugs beginnt.
  • Die Adresse M wird verwendet, um die Absenkrückführposition anzugeben, d. h. die Position, zu der das Werkzeug durch einen Absenkvorgang zurückgeführt werden soll. Der Zahlenwert, der an das Zeichen M angehängt wird, gibt die Absenkrückführposition an. Die Absenkrückführposition bezeichnet die Distanz (rückwärtsgerichtete Distanz) von der Position des Werkzeugs zu Beginn des Anhebens zur Position nach der Rückführung des Werkzeugs durch Absenken. Wenn die Adresse M weggelassen wird, steuert die numerische Steuerung 1 die Antriebseinheit 10 so, dass das Werkzeug in die Position zurückgebracht wird, die mit der Position zu Beginn des Anhebens übereinstimmt.
  • Die Adresse E dient zur Angabe der Anhebegeschwindigkeit des Werkzeugs, d. h. der Verfahrgeschwindigkeit des Werkzeugs beim Anheben. Der Zahlenwert, der an das Zeichen E angehängt wird, stellt die Anhebegeschwindigkeit des Werkzeugs dar. Es wird darauf hingewiesen, dass die Verfahrgeschwindigkeit des Werkzeugs während des Absenkens als gleich der Verfahrgeschwindigkeit des Werkzeugs während des Anhebens angenommen wird.
  • Mit der Adresse P wird spezifiziert, ob das Werkzeug entlang einer linearen oder einer bogenförmigen Bahn abgesenkt wird. Wenn der Bearbeitungsunterbrechungsbefehl die Adresse P enthält, steuert die numerische Steuerung 1 die Antriebseinheit 10 so, dass das Werkzeug entlang einer Bahn mit einer bogenförmigen Form abgesenkt wird. Wenn die Adresse P nicht in dem Bearbeitungsunterbrechungsbefehl enthalten ist, steuert die numerische Steuerung 1 die Antriebseinheit 10 so, dass sie das Werkzeug entlang einer Bahn mit einer linearen Form absenkt.
  • Als Nächstes wird unter Bezugnahme auf die 3 und 4 ein konkretes Beispiel für einen Bearbeitungsvorgang mit Hilfe der numerischen Steuerung 1 gemäß der vorliegenden Ausführungsform beschrieben. 3 zeigt eine Darstellung zur Veranschaulichung eines ersten Beispiels für einen Bearbeitungsvorgang, der von einer Bearbeitungsvorrichtung durchgeführt wird, die von einer numerischen Steuerung 1 gemäß der ersten Ausführungsform gesteuert wird. 4 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für ein Bearbeitungsprogramm zur Implementierung des in 3 dargestellten Bearbeitungsvorgangs.
  • In 3 steht „i“ für das Anhebeintervall, „a“ für den Anhebewinkel und „r“ für die Anhebedistanz. Ferner entsprechen die in 3 dargestellten Abschnitte < 1 > bis <6> jeweils den in 4 dargestellten Befehlen < 1 > bis <6>. Wie in 3 dargestellt ist, bezieht sich der Anhebewinkel auf den Winkel zwischen der Bearbeitungsbahn, entlang der sich das Werkzeug bewegt hat, und dem Verfahrweg des Werkzeugs beim Anheben. Bei der vorliegenden Ausführungsform wird davon ausgegangen, dass der Anhebewinkel größer als 0° und kleiner oder gleich 90° ist.
  • In dem in 4 dargestellten Bearbeitungsprogramm 92 stellt „G0“ einen Positionierbefehl dar, und „X400“, „Z10“ usw., die auf „G0“ folgen, bedeuten die Positionen der zugehörigen Antriebswellen. Die Adresse X entspricht der X-Achse, und die Adresse Z entspricht der Z-Achse. „T0101“ stellt einen Werkzeugbefehl dar. Die ersten beiden Ziffern, die auf das Zeichen T folgen, stellen zusammen die Werkzeugnummer dar, und die restlichen beiden Ziffern bedeuten zusammen den Offset-Wert zur Korrektur der Position des Werkzeugs.
  • „G150" mit der Sequenznummer N01 ist der oben beschriebene Bearbeitungsunterbrechungsbefehl. In dem in 4 dargestellten Beispiel sind die Adressen „X“, „Z“, „I40.“, „D0“, „R20.“, „A45.“, „Q1“ und „E10.“ als Argumente enthalten. Dieser Bearbeitungsunterbrechungsbefehl legt die X-Achse und die Z-Achse als die Zielachsen/Bezugsachsen der Unterbrechungsvorgänge fest und spezifiziert, dass ein Unterbrechungsvorgang jedes Mal ausgeführt wird, wenn sich das Werkzeug 40 mm bewegt hat. Das Intervall für die Durchführung des Unterbrechungsvorgangs ist demnach auf 40 mm festgelegt. Ferner wird die Anhebedistanz des Werkzeugs auf 20 mm, der Anhebewinkel des Werkzeugs auf 45° und die Anhebegeschwindigkeit des Werkzeugs auf 10 mm/U festgelegt. Außerdem ist die Wartezeit nach dem Anheben auf eine Zeitspanne festgelegt, die einer Umdrehung der Spindel entspricht, und die Bahn für die Rückkehr in die Anhebe-Startposition während des Absenkens ist auf eine lineare Bahn festgelegt. Nach der Ausführung des Bearbeitungsunterbrechungsbefehls konfiguriert die numerische Steuerung 1 den Betrieb zur Durchführung des Unterbrechungsvorgangs gemäß den Bedingungen, die durch die im Befehl enthaltenen Argumente spezifiziert sind, und beginnt dann mit der Steuerung der Antriebseinheit 10.
  • Die Befehle, die mit den Sequenznummern N02 bis N06 verbunden sind, sind lineare Interpolationsbefehle. In „G01 Z-100. F2.“ bei der Sequenznummer N02 ist „Z-100.“ ein Befehlswert, der die Z-Achsenkoordinate des Werkzeugs angibt, und „F2.“ ist ein Befehlswert, der die Werkzeugvorschubrate pro Umdrehung der Spindel angibt. Konkret ist „G01 Z-100. F2.“ ein linearer Interpolationsbefehl, der eine Anweisung darstellt, das Werkzeug mit einer Vorschubgeschwindigkeit von 2 mm/Umdrehung zu bewegen, bis die Z-Achsenkoordinate -100 erreicht ist. Es wird darauf hingewiesen, dass in dem Befehl mit der Sequenznummer N02 kein Befehlswert, der die X-Achsenkoordinate des Werkzeugs angibt, enthalten ist, da die X-Achsenkoordinate des Werkzeugs nicht verändert wird. Die Ausführung des Befehls mit der Sequenznummer N02 durch die numerische Steuerung 1 bewirkt, dass das Werkzeug über den in 3 dargestellten Abschnitt <2> bewegt wird. Bei diesem Vorgang führt die numerische Steuerung 1 den Bearbeitungsunterbrechungsbefehl vor der Ausführung des Befehls mit der Sequenznummer N02 aus. Wenn also die Betriebsbedingungen für den Unterbrechungsvorgang während des Verfahrens des Werkzeugs in dem in 3 dargestellten Abschnitt <2> erfüllt sind, d. h. wenn die Verfahrstrecke des Werkzeugs die als Anhebeintervall angegebene Verfahrstrecke erreicht, führt die numerische Steuerung 1 den Unterbrechungsvorgang zum Anheben des Werkzeugs aus. In dem in den 3 und 4 dargestellten Beispiel hebt die numerische Steuerung 1 das Werkzeug jedes Mal, wenn das Werkzeug um 40 mm verfahren wurde, mit einem Anhebewinkel von 45° an. Der Anhebewinkel bedeutet einen Winkel in Bezug auf die Richtung, die der Verfahrrichtung des Werkzeugs entgegengesetzt ist. Bei diesem Vorgang beträgt die Anhebegeschwindigkeit des Werkzeugs 10 mm/U, und die Anhebedistanz beträgt 20 mm. Ferner hält die numerische Steuerung 1 nach dem Anheben des Werkzeugs um 20 mm das Werkzeug an, bis sich die Spindel eine komplette Umdrehung gedreht hat, und fährt das Werkzeug dann in die Ausgangsposition zurück, d. h. in die Position zu Beginn des Anhebens. Bei diesem Vorgang steuert die numerische Steuerung 1 die Antriebseinheit 10 so, dass das Werkzeug auf einer linearen Bahn, die die Verfahrstrecke minimiert, in die Ausgangsposition zurückkehrt. Da sich das Werkzeug im Abschnitt <2> um 110 mm bewegt, wird der Unterbrechungsvorgang in diesem Abschnitt zweimal durchgeführt.
  • Des Weiteren ist „X200. Z-150.“ mit der Sequenznummer N03 ein linearer Interpolationsbefehl, der eine Anweisung darstellt, das Werkzeug mit einer Vorschubgeschwindigkeit von 2 mm/U zu verfahren, bis die X-Achsen-Koordinate 200 und die Z-Achsen-Koordinate -150 erreicht ist. Es wird darauf hingewiesen, dass „X200. Z-150.“ ähnlich wie der Befehl mit der Sequenznummer N02 unmittelbar davor ein linearer Interpolationsbefehl ist. Der Parameter „G01“, der einen linearen Interpolationsbefehl angibt, entfällt daher. Da keine Vorschubänderung erfolgt, entfällt außerdem der Befehlswert „F2.“ für die Vorschubgeschwindigkeit. Die Ausführung des Befehls mit der Sequenznummer N03 durch die numerische Steuerung 1 bewirkt, dass sich das Werkzeug über den in 3 dargestellten Abschnitt <3> bewegt. Ähnlich wie bei der Bewegung des Werkzeugs über den Abschnitt <2> hebt die numerische Steuerung 1 bei diesem Vorgang das Werkzeug an, wenn die Betriebsbedingungen für den Unterbrechungsvorgang erfüllt sind. Die numerische Steuerung 1 hebt das Werkzeug in ähnlicher Weise an wie im oben beschriebenen Abschnitt <2>. Der Unterbrechungsvorgang wird im Abschnitt <3> einmal durchgeführt.
  • „X150. Z-200." bei der Sequenznummer N04 ist ein linearer Interpolationsbefehl, der eine Anweisung darstellt, das Werkzeug mit einer Vorschubgeschwindigkeit von 2 mm/U zu bewegen, bis die X-Achsen-Koordinate 150 und die Z-Achsen-Koordinate -200 erreicht ist. Ähnlich wie bei dem Befehl mit der Sequenznummer N03 sind „G01“ und „F2.“ nicht enthalten. Die Ausführung des Befehls mit der Sequenznummer N04 durch die numerische Steuerung 1 bewirkt, dass sich das Werkzeug über den in 3 dargestellten Abschnitt <4> bewegt. Ähnlich wie bei der Bewegung des Werkzeugs über die Abschnitte <2> und <3> hebt die numerische Steuerung 1 bei diesem Vorgang das Werkzeug an, wenn die Betriebsbedingungen für den Unterbrechungsvorgang erfüllt sind. Die numerische Steuerung 1 hebt das Werkzeug in ähnlicher Weise wie in den oben beschriebenen Abschnitten <2> und <3> an. Der Unterbrechungsvorgang wird im Abschnitt <4> einmal durchgeführt.
  • „Z-300." bei der Sequenznummer N05 ist ein linearer Interpolationsbefehl, der eine Anweisung darstellt, das Werkzeug mit einer Vorschubgeschwindigkeit von 2 mm/U zu bewegen, bis die Z-Achsen-Koordinate -300 erreicht ist. Ähnlich wie bei dem Befehl mit der Sequenznummer N03 sind „G01“ und „F2.“ nicht enthalten. Die Ausführung des Befehls mit der Sequenznummer N05 durch die numerische Steuerung 1 bewirkt, dass sich das Werkzeug über den in 3 dargestellten Abschnitt <5> bewegt. Ähnlich wie bei der Bewegung des Werkzeugs über die Abschnitte <2> bis <4> hebt die numerische Steuerung 1 bei diesem Vorgang das Werkzeug an, wenn die Betriebsbedingungen für den Unterbrechungsvorgang erfüllt sind. Die numerische Steuerung 1 hebt das Werkzeug in ähnlicher Weise an wie in den oben beschriebenen Abschnitten <2> bis <4>. Der Unterbrechungsvorgang wird im Abschnitt <5> zweimal ausgeführt.
  • „X300." bei der Sequenznummer N06 ist ein linearer Interpolationsbefehl, der eine Anweisung darstellt, das Werkzeug mit einer Vorschubgeschwindigkeit von 2 mm/U zu bewegen, bis die X-Achsen-Koordinate 300 erreicht ist. Ähnlich wie bei dem Befehl mit der Sequenznummer N03 sind „G01“ und „F2.“ nicht enthalten. Die Ausführung des Befehls mit der Sequenznummer N06 durch die numerische Steuerung 1 bewirkt, dass sich das Werkzeug über den in 3 dargestellten Abschnitt <6> bewegt. Ähnlich wie bei der Bewegung des Werkzeugs über die Abschnitte <2> bis <5> hebt die numerische Steuerung 1 bei diesem Vorgang das Werkzeug an, wenn die Betriebsbedingungen für den Unterbrechungsvorgang erfüllt sind. Die numerische Steuerung 1 hebt das Werkzeug in ähnlicher Weise an wie in den oben beschriebenen Abschnitten <2> bis <5 >. Der Unterbrechungsvorgang wird im Abschnitt <6> zweimal ausgeführt.
  • Da alle Argumente weggelassen wurden, ist „G150“ bei der Sequenznummer N07 ein Abbruchbefehl zum Beenden der unterbrochenen Bearbeitung, d. h. zum Abbrechen des Unterbrechungsvorgangs. Die numerische Steuerung 1 führt den Abbruchbefehl bei der Sequenznummer N07 aus und hebt die Einstellung der Betriebsbedingungen für den Unterbrechungsbetrieb auf.
  • Ein zweites Beispiel für einen Bearbeitungsvorgang, der von einer numerischen Steuerung 1 gemäß der vorliegenden Ausführungsform ausgeführt wird, wird als Nächstes unter Bezugnahme auf die 5 und 6 beschrieben. 5 zeigt eine Darstellung zur Veranschaulichung eines zweiten Beispiels eines Bearbeitungsvorgangs, der von einer Bearbeitungsvorrichtung durchgeführt wird, die von einer numerischen Steuerung 1 gemäß der ersten Ausführungsform gesteuert wird. 6 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für ein Bearbeitungsprogramm zur Implementierung des in 5 dargestellten Bearbeitungsvorgangs.
  • In 5 stellt „i“ das Anhebeintervall dar, das das Intervall für die Durchführung des Unterbrechungsvorgangs ist, „a“ stellt den Anhebewinkel dar, und „r“ stellt die Anhebedistanz dar. Ferner entsprechen die in 5 dargestellten Abschnitte < 1 > bis <6> jeweils den in 6 dargestellten Befehlen < 1 > bis <6>.
  • Die Befehle vor dem Befehl mit der Sequenznummer N01 in dem in 6 dargestellten Bearbeitungsprogramm 93 sind ähnlich wie die entsprechenden Befehle in dem in 4 dargestellten Bearbeitungsprogramm 92, weshalb auf deren Beschreibung verzichtet wird.
  • "G150" mit der Sequenznummer N01 ist der oben beschriebene Bearbeitungsunterbrechungsbefehl. In dem in 6 dargestellten Beispiel sind die Adressen „X“, „Z“, „I40.“, „D0“, „R20.“, „A45.“, „E10.“ und „P“ als Argumente enthalten. Dieser Bearbeitungsunterbrechungsbefehl spezifiziert die X-Achse und die Z-Achse als die Zielachsen/Bezugsachsen des Unterbrechungsvorgangs und legt fest, dass ein Unterbrechungsvorgang jedes Mal ausgeführt wird, wenn sich das Werkzeug 40 mm bewegt hat. Das Intervall für die Durchführung des Unterbrechungsvorgangs ist demnach auf 40 mm festgelegt. Darüber hinaus wird die Anhebedistanz des Werkzeugs auf 20 mm, der Anhebewinkel des Werkzeugs auf 45° und die Anhebegeschwindigkeit des Werkzeugs auf 10 mm/U festgelegt. Diese Bedingungen ähneln denen für den Unterbrechungsvorgang des ersten Beispiels von 3. Es ist keine Wartezeit nach dem Anheben spezifiziert. Ferner ist die Bahn für die Rückkehr zu der Position zu Beginn des Anhebens während des Absenkens so spezifiziert, dass sie eine bogenförmige Form besitzt. Nach der Ausführung des Bearbeitungsunterbrechungsbefehls konfiguriert die numerische Steuerung 1 den Vorgang zur Durchführung des Unterbrechungsvorgangs entsprechend den Bedingungen, die durch die im Befehl enthaltenen Argumente spezifiziert sind, und beginnt dann mit der Steuerung der Antriebseinheit 10.
  • Die Befehle bei den in 6 dargestellten Sequenznummern N02 bis N04 sind identisch mit den Befehlen bei den jeweils gleichen Sequenznummern, die in 4 dargestellt sind. Daher ist die Bahn, der das Werkzeug während der Bearbeitung des Werkstücks über die in 5 dargestellten Abschnitte <2> bis <4> folgt, identisch mit der Bahn, der das Werkzeug während der Bearbeitung des Werkstücks über die in 3 dargestellten Abschnitte <2> bis <4> folgt. Aufgrund von Unterschieden in einigen der Bedingungen für den Unterbrechungsvorgang unterscheidet sich jedoch die Bahn, der das Werkzeug während des Unterbrechungsvorgangs folgt, insbesondere die Bahn, der das Werkzeug während des Absenkens folgt, von der Bahn des in 3 dargestellten ersten Beispiels.
  • Bei dem in den 5 und 6 dargestellten Beispiel hebt die numerische Steuerung 1 das Werkzeug jedes Mal, wenn das Werkzeug 40 mm bewegt wurde, in einem Anhebewinkel von 45° mit einer Anhebegeschwindigkeit von 10 mm/U um eine Anhebedistanz von 20 mm an. Der Vorgang ähnelt bis zu diesem Punkt dem in den 3 und 4 beschriebenen Vorgang. Nach dem Anheben des Werkzeugs um eine Anhebedistanz von 20 mm fährt die numerische Steuerung 1 das Werkzeug sofort in die Ausgangsposition zurück, d. h. in die Position zu Beginn des Anhebens. Die numerische Steuerung 1 steuert die Antriebseinheit 10 so, dass das Werkzeug bei diesem Vorgang einer bogenförmigen Bahn folgt. Die numerische Steuerung 1 berechnet die Bahn, der das Werkzeug folgen soll, durch Bogeninterpolation unter Verwendung des Koordinatensatzes des Werkzeugs zu Beginn des Absenkens und des Koordinatensatzes der ursprünglichen Position des Werkzeugs (des Koordinatensatzes des Werkzeugs am Ende des Absenkens). Durch die Verwendung einer Bogenform für die Bahn des angehobenen Werkzeugs bei der Rückkehr in die ursprüngliche Position ist es weniger wahrscheinlich, dass an dem Werkstück beim erneuten Kontakt des Werkzeugs mit dem Werkstück Bearbeitungsriefen entstehen, wodurch die Bearbeitungsgenauigkeit verbessert werden kann.
  • "Z-230" bei der in 6 dargestellten Sequenznummer N05 ist ein linearer Interpolationsbefehl, bei dem es sich um eine Anweisung handelt, das Werkzeug mit einer Vorschubgeschwindigkeit von 2 mm/U zu bewegen, bis die Z-Achsen-Koordinate -230 erreicht ist. Die Ausführung des Befehls mit der in 6 dargestellten Sequenznummer N05 durch die numerische Steuerung 1 bewirkt, dass das Werkzeug über den in 5 dargestellten Abschnitt <5> bewegt wird. Bei diesem Vorgang beträgt die Bewegungsstrecke des Werkzeugs im Abschnitt <5> von 5 30 mm und ist kürzer als das Intervall von 40 mm bei der Durchführung des durch den Bearbeitungsunterbrechungsbefehl spezifizierten Unterbrechungsvorgangs. Daher wird im Abschnitt <5> von 5 keine Anhebung durchgeführt.
  • "G02 X300. Z-300. I70. F2." bei der in 6 dargestellten Sequenznummer N06 ist ein Befehl für eine Bogeninterpolation im Uhrzeigersinn, der eine Anweisung darstellt, das Werkzeug mit einer Vorschubgeschwindigkeit von 2 mm/U zu bewegen, bis die X-Achsen-Koordinate 300 und die Z-Achsen-Koordinate -300 erreicht ist. Die Ausführung des Befehls mit der in 6 dargestellten Sequenznummer N06 durch die numerische Steuerung 1 bewirkt, dass das Werkzeug über den in 5 dargestellten Abschnitt <6> verfahren wird. Auch in diesem Fall führt die numerische Steuerung 1 den Unterbrechungsvorgang jedes Mal durch, wenn sich das Werkzeug um 40 mm bewegt hat, wobei es sich dabei um den Wert handelt, der als Intervall für die Durchführung des Unterbrechungsvorgangs festgelegt wurde. Der Anhebewinkel ist bei diesem Vorgang der Winkel in Bezug auf die Tangente an den Bogen an der Position des Werkzeugs zum Zeitpunkt des Beginns des Anhebens. Der Anhebevorgang wird in dem in 5 dargestellten Abschnitt <6> zweimal durchgeführt.
  • "G150" bei der in 6 dargestellten Sequenznummer N07 ist ein Befehl (Abbruchbefehl) ähnlich wie „G150“ bei der in 4 dargestellten Sequenznummer N07.
  • Ein drittes Beispiel für einen Bearbeitungsvorgang, der von einer numerischen Steuerung 1 gemäß der vorliegenden Ausführungsform ausgeführt wird, wird nun unter Bezugnahme auf 7 beschrieben. 7 zeigt eine Darstellung zur Veranschaulichung eines dritten Beispiels eines Bearbeitungsvorgangs, der von einer Bearbeitungsvorrichtung durchgeführt wird, die von einer numerischen Steuerung 1 gemäß der ersten Ausführungsform gesteuert wird.
  • Das in 7 dargestellte dritte Beispiel unterscheidet sich von dem in 3 dargestellten ersten Beispiel durch die Rückführposition des Werkzeugs nach dem Anheben. In dem in 7 dargestellten Beispiel fährt die numerische Steuerung 1 das Werkzeug an eine Position zurück, die um eine Distanz m gegenüber der Position zu Beginn des Anhebens zurückversetzt ist, wobei die Distanz m durch die Absenk-Rückführposition (Adresse M) im Bearbeitungsunterbrechungsbefehl angegeben ist. Zum Beispiel kann im Fall von m=5 wie in 7 dargestellt (Absenk-Rückführposition ist 5 mm) die Bearbeitung im dritten Beispiel durch Ersetzen von „G150 X Z I40. D0 R20. A45. Q1 E10.“ bei der Sequenznummer N01 im Bearbeitungsprogramm zur Durchführung der Bearbeitung des ersten Beispiels (das in 4 dargestellte Bearbeitungsprogramm 92) mit „G150 X Z I40. D0 R20. A45. Q1 M5 E10.“ durchgeführt werden. Wenn die Bearbeitung erneut gestartet wird, nachdem das angehobene Werkzeug wie bei der in 7 dargestellten Situation an eine Position zurückgebracht wurde, die gegenüber der ursprünglichen Position (Position zu Beginn des Anhebens) zurückversetzt ist, können verbleibende Späne beim erneuten Beginn der Bearbeitung abgeschnitten werden, selbst wenn nach dem Anheben nicht geschnittene Späne auf dem Werkstück verblieben sind.
  • Von den Komponenten der numerischen Steuerung 1 gemäß der vorliegenden Ausführungsform werden als Nächstes Komponenten zur Implementierung der Steuerung einer Bearbeitungsvorrichtung gemäß den oben beschriebenen Bearbeitungsunterbrechungsbefehlen, konkret die Analyseverarbeitungseinheit 45 und die Interpolationsverarbeitungseinheit 48, ausführlich beschrieben.
  • 8 zeigt ein Flussdiagramm zur Veranschaulichung eines Beispiels für die Funktionsweise der Analyseverarbeitungseinheit 45, die in einer numerischen Steuerung 1 gemäß der ersten Ausführungsform enthalten ist. Zum Beispiel startet die Analyseverarbeitungseinheit 45 die in 8 dargestellte Prozedur, nachdem über die Eingabeeinheit 20 eine Anweisung vom Benutzer erhalten wurde, die Steuerung der Bearbeitungsvorrichtung gemäß dem Bearbeitungsprogramm 432 zu beginnen.
  • Zu Beginn der Prozedur liest die Analyseverarbeitungseinheit 45 zunächst das Bearbeitungsprogramm 432 aus der Speichereinheit 43 aus und analysiert das Bearbeitungsprogramm 432 (Schritt S11). Konkret analysiert die Analyseverarbeitungseinheit 45 das Bearbeitungsprogramm 432 und liest einen Block, der einen Befehl darstellt.
  • Als Nächstes prüft die Analyseverarbeitungseinheit 45, ob der gelesene Befehl ein Bearbeitungsunterbrechungsbefehl ist (Schritt S12), und prüft, wenn der Befehl ein Bearbeitungsunterbrechungsbefehl, d. h. ein G150-Code, ist (Schritt S12: Ja), ob der Befehl vom Typ eines Abbruchbefehls für eine unterbrochene Bearbeitung ist (Schritt S13). Die Prozedur des Schritts S13 und der nachfolgend beschriebenen Schritte S 14 bis S 16 wird von der Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle durchgeführt. Wenn der G 150-Code ein Einzelelement-Befehl ist, der keine Argumente wie beispielsweise die Adresse X enthält, bestimmt die Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle, dass der Befehl ein Abbruchbefehl ist.
  • Wenn der Befehl nicht vom Typ eines Abbruchbefehls ist (Schritt S13: Nein), extrahiert die Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle den/die Befehlswert(e) aus dem Bearbeitungsunterbrechungsbefehl (Schritt S14). Der Begriff „Befehlswert" bezieht sich, wie er hier verwendet wird, auf Informationen, die von einem Argument geliefert werden, das in einem Bearbeitungsunterbrechungsbefehl enthalten ist. Beispiele hierfür sind Informationen, die die Betriebsachsen in dem durch die Adressen X und Z spezifizierten Unterbrechungsvorgang repräsentieren, und Informationen über den in der Adresse I spezifizierten Zeitpunkt der Wiederholung des Unterbrechungsvorgangs.
  • Anschließend legt die Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle die Betriebsbedingungen für den Unterbrechungsvorgang auf Basis des/der in Schritt S14 extrahierten Befehlswerts/Befehlswerte fest (Schritt S15). Konkret schreibt die Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle den/die extrahierten Befehlswert(e) in den gemeinsam genutzten Bereich 434 der Speichereinheit 43, um die Betriebsbedingungen für den Unterbrechungsvorgang einzustellen. Bei diesem Vorgang schreibt die Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle jeden Befehlswert in einen vorgegebenen Bereich des gemeinsam genutzten Bereichs 434. Es wird darauf hingewiesen, dass die Betriebsbedingungen für den Unterbrechungsvorgang aktualisiert werden, wenn die Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle den Schritt S15 ausführt, wenn die Betriebsbedingungen für den Unterbrechungsvorgang bereits festgelegt wurden.
  • Wenn der gelesene Befehl dagegen vom Typ eines Abbruchbefehls für die unterbrochene Bearbeitung ist (Schritt S13: Ja), setzt die Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle die Einstellung der Betriebsbedingungen für den Unterbrechungsvorgang zurück (Schritt S16). Konkret löscht die Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle die Betriebsbedingungen für den Unterbrechungsvorgang, die in den gemeinsam genutzten Bereich 434 der Speichereinheit 43 geschrieben wurden. Es wird darauf hingewiesen, dass die Einstellung der Betriebsbedingungen für den Unterbrechungsvorgang auch so zurückgesetzt werden kann, dass der gemeinsam genutzte Bereich 434 mit einem Flag versehen wird, das anzeigt, dass die Einstellung der Betriebsbedingungen für den Unterbrechungsvorgang gültig ist, und die Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle dieses Flag löscht. In diesem Fall schreibt die Analyseeinheit 451 für Bearbeitungsunterbrechungsbefehle in dem oben beschriebenen Schritt S15 den/die aus dem Bearbeitungsunterbrechungsbefehl extrahierten Befehlswert(e) in den gemeinsam genutzten Bereich 434 und setzt ein Flag, das anzeigt, dass die Einstellung der Betriebsbedingungen für den Unterbrechungsvorgang gültig ist.
  • Wenn der Befehl, der nach der Analyse des Bearbeitungsprogramms 432 gelesen wurde, kein Bearbeitungsunterbrechungsbefehl ist (Schritt S12: Nein), extrahiert die Analyseverarbeitungseinheit 45 alternativ den/die Befehlswert(e) aus dem gelesenen Befehl (Schritt S17) und legt die Betriebsbedingung(en) für den Betrieb zur Bearbeitung eines Werkstücks gemäß dem/den extrahierten Befehlswert(en) fest (Schritt S18). Die Prozedur der Schritte S17 und S18 wird von der Analyseeinheit 452 für allgemeine Befehle durchgeführt. Wenn der gelesene Befehl beispielsweise ein G01-Code ist, der ein linearer Interpolationsbefehl ist, extrahiert die Analyseeinheit 452 für allgemeine Befehle in Schritt S17 den/die Befehlswert(e), der/die jeweils die Koordinate des Werkzeugs repräsentiert/repräsentieren, und den Befehlswert, der die Vorschubgeschwindigkeit des Werkzeugs angibt. Ferner schreibt die Analyseeinheit 452 für allgemeine Befehle in Schritt S18 den oder die extrahierten Befehlswert(e) in einen vorgegebenen Bereich des gemeinsam genutzten Bereichs 434, um die Betriebsbedingung(en) einzustellen. Bei dieser Prozedur schreibt die Analyseeinheit 452 für allgemeine Befehle auch Informationen, die den Typ des gelesenen Befehls repräsentieren, d. h. Informationen, die angeben, dass der Befehl der lineare Interpolationsbefehl ist, in den gemeinsam genutzten Bereich 434. Auch wenn der gelesene Befehl kein linearer Interpolationsbefehl ist, der durch einen G01-Code dargestellt wird, extrahiert die Analyseeinheit 452 für allgemeine Befehle in ähnlicher Weise den/die Befehlswert(e) aus dem gelesenen Befehl und schreibt den/die extrahierten Befehlswert(e) und Informationen, die den Typ des gelesenen Befehls darstellen, in einen vorgegebenen Bereich des gemeinsam genutzten Bereichs 434, um die Betriebsbedingung(en) einzustellen. Es wird darauf hingewiesen, dass die Betriebsbedingung(en) für den Vorgang zur Bearbeitung eines Werkstücks jedes Mal aktualisiert wird/werden, wenn die Analyseeinheit 452 für allgemeine Befehle den Schritt S18 ausführt. In der folgenden Beschreibung kann der Begriff „Informationen, die den Typ des Befehls repräsentieren“ als „Befehlstyp“ beschrieben sein.
  • Nach der Durchführung der Schritte S15, S16 und S18 kehrt die Analyseverarbeitungseinheit 45 zum Schritt S11 zurück, um einen nächsten Befehl zu lesen, und setzt somit die Prozedur fort.
  • 9 zeigt ein Flussdiagramm zur Veranschaulichung eines Beispiels für die Funktionsweise der Interpolationsverarbeitungseinheit 48, die in einer numerischen Steuerung 1 gemäß der ersten Ausführungsform enthalten ist. Das Flussdiagramm von 9 veranschaulicht einen Betriebsablauf der Interpolationsverarbeitungseinheit 48, bei dem die numerische Steuerung 1 die Antriebseinheit 10 einer Bearbeitungsvorrichtung zur Bearbeitung eines Werkstücks steuert.
  • Beispielsweise prüft die Interpolationsverarbeitungseinheit 48 periodisch Informationen, die in den gemeinsam genutzten Bereich 434 der Speichereinheit 43 geschrieben wurden, und startet bei Erkennung der Aktualisierung eines Befehlswerts, der eine Koordinate des Werkzeugs angibt, die in 9 dargestellte Prozedur.
  • Zu Beginn der Prozedur beginnt die Interpolationsverarbeitungseinheit 48 mit der Steuerung der Bewegung des Werkzeugs zu der Position, die durch den/die entsprechenden Befehlswert(e) spezifiziert ist, der/die in den gemeinsam genutzten Bereich 434 geschrieben wurde(n) (Schritt S21). In Schritt S21 erzeugt die Interpolationsverarbeitungseinheit 48 aus den in den gemeinsam genutzten Bereich 434 geschriebenen Informationen Steuerinformationen für die Antriebseinheit 10 auf Basis von Informationen wie dem Befehlstyp, einem Befehlswert, der die Koordinate der zugehörigen Antriebswelle des Werkzeugs angibt, und einem Befehlswert, der die Vorschubgeschwindigkeit des Werkzeugs angibt. Konkret berechnet die Bearbeitungsbahn-Berechnungseinheit 483 zunächst den Verfahrweg des Werkzeugs bis zu der festgelegten Position, bei der es sich um die durch den/die entsprechenden Befehlswert(e) spezifizierte Position handelt, basierend auf dem Befehlstyp, auf dem/den Befehlswert(en), die jeweils die Koordinate der zugehörigen Antriebswelle des Werkzeugs spezifizieren, und der aktuellen Position des Werkzeugs. Als Nächstes berechnet die Verfahrstrecken-Berechnungseinheit 484 für jede der Antriebswellen den Verfahrweg des Werkzeugs pro Zeiteinheit, auf Basis des von der Bearbeitungsbahn-Berechnungseinheit 483 berechneten Verfahrwegs und der Vorschubgeschwindigkeit des Werkzeugs. Die Verfahrstrecken-Berechnungseinheit 484 gibt den für jede der Antriebswellen berechneten Verfahrweg des Werkzeugs pro Zeiteinheit an die Beschleunigungs-Verzögerungsverarbeitungseinheit 49 aus.
  • Anschließend prüft die Interpolationsverarbeitungseinheit 48, ob die Betriebsbedingungen für den Unterbrechungsvorgang festgelegt wurden (Schritt S22), und bewegt, wenn die Betriebsbedingungen nicht festgelegt wurden (Schritt S22: Nein), das Werkzeug zu der vorgesehenen Position (Schritt S26) und beendet die Prozedur.
  • Wenn die Betriebsbedingungen für den Unterbrechungsvorgang festgelegt wurden (Schritt S22: Ja), prüft die Interpolationsverarbeitungseinheit 48, ob es sich um den richtigen Zeitpunkt für die Ausführung des Unterbrechungsvorgangs handelt (Schritt S23). Die Prüfung, ob es der richtige Zeitpunkt für die Durchführung des Unterbrechungsvorgangs ist, wird von der Unterbrechungszeit-Bestimmungseinheit 481 durchgeführt. In Schritt S23 prüft die Unterbrechungszeit-Bestimmungseinheit 481, ob die Verfahrstrecke des Werkzeugs vom Anfang der Verfahrstrecke des Werkzeugs oder die Verfahrstrecke des Werkzeugs vom letzten Unterbrechungsvorgang an die Verfahrstrecke erreicht hat, die als Anhebeintervall spezifiziert ist, das als eine Betriebsbedingung für den Unterbrechungsvorgang festgelegt wurde, die in den gemeinsam genutzten Bereich 434 geschrieben wurde. Wenn die Verfahrstrecke des Werkzeugs die als Anhebeintervall festgelegte Verfahrstrecke erreicht hat, bestimmt die Unterbrechungszeit-Bestimmungseinheit 481, dass es der Zeitpunkt für die Durchführung des Unterbrechungsvorgangs ist.
  • Wenn es sich um den Zeitpunkt handelt, an dem der Unterbrechungsvorgang durchzuführen ist (Schritt S23: Ja), veranlasst die Interpolationsverarbeitungseinheit 48 die Durchführung des Unterbrechungsvorgangs (Schritt S24). Die Interpolationsverarbeitungseinheit 48 erzeugt demnach Steuerinformationen, um die Bearbeitungsvorrichtung zu veranlassen, den Unterbrechungsvorgang auszuführen. Konkret berechnet zunächst die Unterbrechungsbahn-Berechnungseinheit 482 die Bahn des Werkzeugs während des Unterbrechungsvorgangs, auf Basis der Betriebsbedingungen für den Unterbrechungsvorgang. Wenn die Analyseverarbeitungseinheit 45 beispielsweise den Bearbeitungsunterbrechungsbefehl mit der Sequenznummer N01 des in 4 dargestellten Bearbeitungsprogramms 92 gelesen und die Betriebsbedingungen für den Unterbrechungsvorgang eingestellt hat, berechnet die Unterbrechungsbahn-Berechnungseinheit 482 die Bahn des Werkzeugs, die zu dem in 3 dargestellten Unterbrechungsvorgang führt. Dann berechnet die Verfahrstrecken-Berechnungseinheit 484 für jede der Antriebswellen die Verfahrstrecke des Werkzeugs pro Zeiteinheit auf Basis der von der Unterbrechungsbahn-Berechnungseinheit 482 berechneten Bahn des Werkzeugs und der durch die Betriebsbedingungen für den Unterbrechungsvorgang festgelegten Anhebegeschwindigkeit. Die Verfahrstrecken-Berechnungseinheit 484 gibt die für jede der Antriebswellen berechnete Verfahrstrecke des Werkzeugs pro Zeiteinheit an die Beschleunigungs-Verzögerungsverarbeitungseinheit 49 aus. In Schritt S24 wiederholt die Verfahrstrecken-Berechnungseinheit 484 den Vorgang der Berechnung der Verfahrstrecke des Werkzeugs pro Zeiteinheit und der Ausgabe der Verfahrstrecke des Werkzeugs pro Zeiteinheit an die Beschleunigungs-Verzögerungsverarbeitungseinheit 49, bis der Unterbrechungsvorgang abgeschlossen ist, d. h. bis das Werkzeug in die durch die Betriebsbedingungen für den Unterbrechungsvorgang angegebene Position zurückkehrt.
  • Nach Beendigung des Unterbrechungsvorgangs in Schritt S24 kehrt die Interpolationsverarbeitungseinheit 48 zu Schritt S23 zurück. Alternativ dazu prüft die Interpolationsverarbeitungseinheit 48, wenn es sich nicht um den Zeitpunkt handelt, an dem der Unterbrechungsvorgang durchzuführen ist (Schritt S23: Nein), ob das Werkzeug die vorgesehene Position erreicht hat (Schritt S25). Wenn das Werkzeug die vorgesehene Position noch nicht erreicht hat (Schritt S25: Nein), kehrt die Interpolationsverarbeitungseinheit 48 zu Schritt S23 zurück. Wenn das Werkzeug die vorgesehene Position erreicht hat (Schritt S25: Ja), beendet die Interpolationsverarbeitungseinheit 48 die Prozedur.
  • Als Nächstes werden einige Variationen des Unterbrechungsvorgangs, der durch eine numerische Steuerung 1 gemäß der vorliegenden Ausführungsform erfolgt, beschrieben.
  • 10 zeigt eine Darstellung zur Veranschaulichung eines ersten Beispiels eines Unterbrechungsvorgangs, der durch eine numerische Steuerung 1 gemäß der ersten Ausführungsform durchgeführt wird.
  • Der in 10 dargestellte Unterbrechungsvorgang entspricht einem Fall, in dem der Bearbeitungsunterbrechungsbefehl ein Argument, das eine rückwärtsgerichtete Distanz (m) nach dem Absenken spezifiziert, und ein Argument umfasst, das einen Bogen als Form der Werkzeugbahn während des Absenkens angibt. Wie oben unter Bezugnahme auf 2 beschrieben wurde, wird die rückwärtsgerichtete Distanz nach dem Absenken unter Verwendung der Adresse M spezifiziert, und die Form der Werkzeugbahn (bogenförmige Trajektorie) während des Absenkens wird unter Verwendung der Adresse P spezifiziert. Die bogenförmige Trajektorie während des Absenkens ist eine Trajektorie, die durch die Position des Werkzeugs zum Zeitpunkt der Beendigung des Anhebens und die Position des Werkzeugs zum Zeitpunkt der Beendigung des Absenkens verläuft, und deren Tangente an die Werkzeugposition zum Zeitpunkt der Beendigung des Absenkens mit der Linie übereinstimmt, die dem linearen Interpolationsbefehl entspricht.
  • Die Durchführung des in 10 dargestellten Unterbrechungsvorgangs ermöglicht es, verbleibende Späne abzuschneiden, wenn beim Anheben Restspäne an dem Werkstück zurückbleiben. Außerdem ist es weniger wahrscheinlich, dass es zu Bearbeitungsriefen am Werkstück kommt, wenn das Werkzeug abgesenkt wird und wieder mit dem Werkstück in Kontakt kommt.
  • 11 zeigt eine Darstellung zur Veranschaulichung eines zweiten Beispiels eines Unterbrechungsvorgangs, der unter Verwendung einer numerischen Steuerung 1 gemäß der ersten Ausführungsform durchgeführt wird.
  • Der in 11 dargestellte Unterbrechungsvorgang entspricht einem Fall, in dem der Bearbeitungsunterbrechungsbefehl weder ein Argument, das eine rückwärtsgerichtete Distanz (m) nach dem Absenken spezifiziert, noch ein Argument umfasst, das einen Bogen als Form der Werkzeugbahn während des Absenkens angibt, und die Bearbeitung gemäß einem Bogeninterpolationsbefehl (G02-Code) durchgeführt wird. In dem in 11 dargestellten Beispiel wird das Werkzeug jedes Mal angehoben, wenn es sich um das spezifizierte Anhebeintervall entlang des Bogens bewegt hat. Der Anhebewinkel ist der Winkel in Bezug auf die Tangente an die Position zu Beginn des Anhebens des Werkzeugs.
  • Die Durchführung des in 11 dargestellten Unterbrechungsvorgangs ermöglicht die Minimierung der durch die Durchführung des Unterbrechungsvorgangs verursachten Erhöhung der Zykluszeit, d. h. der für die Bearbeitung erforderlichen Zeit.
  • 12 zeigt eine Darstellung zur Veranschaulichung eines dritten Beispiels eines Unterbrechungsvorgangs, der unter Verwendung einer numerischen Steuerung 1 gemäß der ersten Ausführungsform durchgeführt wird.
  • Der in 12 dargestellte Unterbrechungsvorgang entspricht einem Fall, in dem der Bearbeitungsunterbrechungsbefehl ein Argument umfasst, das eine rückwärtsgerichtete Distanz (m) nach dem Absenken spezifiziert, und die Bearbeitung gemäß einem Bogeninterpolationsbefehl (G02-Code) durchgeführt wird. Dies unterscheidet sich von dem in 11 dargestellten Unterbrechungsvorgang durch der Position, in die das Werkzeug durch Absenken zurückkehrt. In dem in 12 dargestellten Beispiel wird das Werkzeug zu einer Position zurückgeführt, die ausgehend von der Position zu Beginn des Anhebens der spezifizierten rückwärtsgerichteten Distanz m entspricht.
  • Die Durchführung des in 12 dargestellten Unterbrechungsvorgangs ermöglicht es, verbleibende Späne abzuschneiden, wenn nach dem Anheben noch Späne an dem Werkstück vorhanden sind.
  • 13 zeigt eine Darstellung zur Veranschaulichung eines vierten Beispiels eines Unterbrechungsvorgangs, der unter Verwendung der numerischen Steuerung 1 gemäß der ersten Ausführungsform durchgeführt wird.
  • Der in 13 dargestellte Unterbrechungsvorgang entspricht einem Fall, in dem der Bearbeitungsunterbrechungsbefehl ein Argument, das eine rückwärtsgerichtete Distanz (m) nach dem Absenken angibt, und ein Argument umfasst, das einen Bogen als Form der Werkzeugbahn während des Absenkens angibt, und die Bearbeitung gemäß einem Bogeninterpolationsbefehl (G02-Code) durchgeführt wird. Dies unterscheidet sich von dem in 12 dargestellten Unterbrechungsvorgang in der Form der Werkzeugbahn während des Absenkens. Das bedeutet, dass in dem in 13 dargestellten Beispiel die Form der Werkzeugbahn während des Absenkens eine bogenförmige Trajektorie bildet. Die bogenförmige Bahn während des Absenkens ist eine Bahn, die durch die Position des Werkzeugs zum Zeitpunkt der Beendigung des Anhebens und die Position des Werkzeugs zum Zeitpunkt der Beendigung des Absenkens verläuft, und deren Tangente an die Werkzeugposition zum Zeitpunkt der Beendigung des Absenkens die Tangente an den Bogen ist, der dem Bogeninterpolationsbefehl entspricht.
  • Ähnlich wie bei der Durchführung des in 10 dargestellten Unterbrechungsvorgangs ermöglicht die Durchführung des in 13 dargestellten Unterbrechungsvorgangs das Abschneiden verbleibender Späne, wenn beim Anheben noch Späne an dem Werkstück verbleiben. Darüber hinaus ist es weniger wahrscheinlich, dass an dem Werkstück Bearbeitungsriefen entstehen, wenn das Werkzeug abgesenkt wird und wieder mit dem Werkstück in Kontakt kommt.
  • Es wird nun die Hardwarekonfiguration der in der numerischen Steuerung 1 enthaltenen Steuerungsberechnungseinheit 40 beschrieben. 14 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für die Hardwarekonfiguration der Steuerungsberechnungseinheit 40, die in einer numerischen Steuerung 1 gemäß der ersten Ausführungsform enthalten ist.
  • Die Steuerungsberechnungseinheit 40 kann durch einen Prozessor 101 und einen Speicher 102 implementiert werden, die in 14 dargestellt sind. Beispiele für den Prozessor 101 umfassen eine Zentraleinheit (CPU) (auch bekannt als Verarbeitungseinheit, Recheneinheit, Mikroprozessor, Mikrocomputer, digitaler Signalprozessor (DSP)) und ein Large Scale Integration (LSI)-System. Beispiele für den Speicher 102 sind ein Direktzugriffsspeicher (RAM) und ein Festwertspeicher (ROM).
  • Die Steuerungsberechnungseinheit 40 wird durch den Prozessor 101 implementiert, indem ein im Speicher 102 gespeichertes Programm zur Durchführung einer Operation der Steuerungsberechnungseinheit 40 gelesen und ausgeführt wird. Man kann auch sagen, dass ein solches Programm einen Computer veranlasst, eine Prozedur oder ein Verfahren der Steuerungsberechnungseinheit 40 auszuführen. Der Speicher 102 wird auch als temporärer Speicher verwendet, wenn der Prozessor 101 verschiedene Arten der Verarbeitung durchführt.
  • Ein vom Prozessor 101 ausgeführtes Programm kann ein Computerprogrammprodukt sein, das ein computerlesbares, nichtflüchtiges Aufzeichnungsmedium mit mehreren computerausführbaren Anweisungen zur Durchführung der Datenverarbeitung umfasst. Das vom Prozessor 101 ausgeführte Programm veranlasst einen Computer, eine Datenverarbeitung unter Verwendung der mehreren Anweisungen durchzuführen.
  • Alternativ kann die Steuerungsberechnungseinheit 40 als dediziertes Hardwareelement implementiert sein. Darüber hinaus kann die Funktionalität der Steuerungsberechnungseinheit 40 teilweise als dediziertes Hardwareelement und teilweise als Software oder Firmware implementiert sein.
  • Wie oben beschrieben wurde, liest die numerische Steuerung 1 gemäß der vorliegenden Ausführungsform einen neu definierten Bearbeitungsunterbrechungsbefehl und steuert die in einer Bearbeitungsvorrichtung angebrachte Antriebseinheit 10, um einen Vorgang auszuführen, der durch verschiedene Arten von in diesem Befehl enthaltenen Befehlswerten spezifiziert ist, konkret einen Unterbrechungsvorgang zum vorübergehenden Stoppen der Bearbeitung des Werkstücks, eine Trennung des Werkzeugs vom Werkstück, anschließend ein erneutes Inkontaktbringen des Werkzeugs mit dem Werkstück und einen erneuten Beginn der Bearbeitung. Dadurch können Späne vom dem Werkstück entfernt werden, wenn das Werkzeug in einem Unterbrechungsvorgang vom Werkstück getrennt wird. Da die Betriebsbedingungen für den Unterbrechungsvorgang unter Verwendung eines Bearbeitungsunterbrechungsbefehls festgelegt werden, hat eine Änderung der Spindeldrehzahl keinen Einfluss auf den Unterbrechungsvorgang. Selbst nach einer Änderung des Einstellwerts der Spindeldrehzahl kann die numerische Steuerung 1 also den Unterbrechungsvorgang unter demselben Satz von Betriebsbedingungen fortsetzen und somit einen Vorgang zum zuverlässigen Brechen von Spänen bereitstellen, die bei der Bearbeitung entstehen, ohne vom Einstellwert der Spindeldrehzahl abhängig zu sein.
  • Zweite Ausführungsform
  • Die erste Ausführungsform wurde im Zusammenhang mit einem Unterbrechungsvorgang während der Bearbeitung des Umfangs eines Werkstücks beschrieben, aber das Werkstück kann auch durch eine Drehbearbeitung gebohrt oder anderweitig bearbeitet werden, wie in 15 dargestellt ist. Eine solche Bearbeitung ist als Bohrbearbeitung bekannt. Wenn ein Unterbrechungsvorgang während der Bohrbearbeitung durchgeführt wird, um Späne vom Werkstück zu entfernen, kann ein Problem auftreten, wie es in 16 dargestellt ist. Das bedeutet, dass die Durchführung des in der ersten Ausführungsform beschriebenen Unterbrechungsvorgangs während der Bohrbearbeitung zu einer Behinderung zwischen dem Werkzeug und dem Werkstück, das ein zu bearbeitendes Objekt ist, führen kann, wie in 16 beim Anheben des Bohrwerkzeugs, bei dem es sich um das Werkzeug handelt, dargestellt ist. Die Behinderung kann zu einem nachteiligen Ergebnis führen, wie beispielsweise zu einer Verringerung der Bearbeitungsgenauigkeit und/oder zu einem gebrochenen Werkzeug.
  • Daher wird die vorliegende Ausführungsform im Zusammenhang mit einer numerischen Steuerung beschrieben, die in der Lage ist, eine Betriebsbedingung für den Unterbrechungsvorgang selbst zu korrigieren, um beim Auftreten des oben genannten Problems das Problem zu lösen. Es wird darauf hingewiesen, dass nicht nur bei der Bohrbearbeitung das Problem der Behinderung zwischen dem Werkzeug und dem Werkstück auftreten kann. Zum Beispiel kann auch eine Bearbeitung, wie sie in 17 dargestellt ist, das oben genannte Problem der Behinderung verursachen. In 17 stellt jeder Pfeil die Bahn des Werkzeugs während des Unterbrechungsvorgangs dar. In dem in 17 dargestellten Beispiel führen die Beziehungen zwischen den Einstellwerten des Anhebeintervalls, des Anhebewinkels und der Anhebedistanz, die in den Betriebsbedingungen für den Unterbrechungsvorgang enthalten sind, zu einer Behinderung, wenn das Werkzeug bei dem Unterbrechungsvorgang entsprechend dem gestrichelten Pfeil angehoben wird.
  • 18 zeigt eine Darstellung zur Veranschaulichung eines Konfigurationsbeispiels einer numerischen Steuerung 1a gemäß einer zweiten Ausführungsform. Die numerische Steuerung 1a ist so konfiguriert, dass sie im Vergleich zu der numerischen Steuerung 1 gemäß der ersten Ausführungsform zudem eine Betriebszustandsänderungseinheit 51 enthält.
  • Die Betriebszustandsänderungseinheit 51 lernt, wie eine Betriebsbedingung für den Unterbrechungsvorgang beim Auftreten einer Behinderung zwischen dem Werkzeug und dem Werkstück während des Unterbrechungsvorgangs zu ändern ist. Konkret lernt die Betriebszustandsänderungseinheit 51 die Situation, in der eine Behinderung zwischen dem Werkzeug und dem Werkstück während des Unterbrechungsvorgangs auftritt, und ändert die gültige Betriebsbedingung für den Unterbrechungsvorgang, indem sie das Lernergebnis verwendet. Die Betriebszustandsänderungseinheit 51 wird beispielsweise durch eine Vorrichtung zum maschinellen Lernen implementiert. Ein Beispiel für die Betriebsbedingung des Unterbrechungsvorgangs ist die Anhebedistanz des Werkzeugs. Die Betriebszustandsänderungseinheit 51 wird im Folgenden im Zusammenhang mit einem Beispiel beschrieben, bei dem die Anhebedistanz des Werkzeugs die zutreffende Betriebsbedingung für den Unterbrechungsvorgang ist. Die Betriebszustandsänderungseinheit 51 umfasst eine Zustandsüberwachungseinheit 511 und eine Lerneinheit 512.
  • Die Zustandsüberwachungseinheit 511 beobachtet als Zustandsvariable einen von der Achsendatenausgabeeinheit 50 ausgegebenen Stromwert (j), eine von der Interpolationsverarbeitungseinheit 48 ausgegebene Unterbrechung-in-Progress-Information (int) und eine von der Analyseverarbeitungseinheit 45 ausgegebene Anhebedistanz (r). Der Stromwert (j) stellt den Wert des Stroms dar, der durch die Servomotoren 11 und durch den Spindelmotor 14 der Antriebseinheit 10 fließt. Die Unterbrechung-in-Progress-Information (int) gibt an, ob ein Unterbrechungsvorgang durchgeführt wird. Die Anhebedistanz (r) gibt die Anhebedistanz des Werkzeugs während des Unterbrechungsvorgangs an. Der Stromwert (j), der von der Achsendatenausgabeeinheit 50 ausgegeben wird, steigt beim Auftreten einer Behinderung zwischen dem Werkzeug und dem Werkstück schnell an. Daher stellt die Zustandsüberwachungseinheit 511 fest, dass eine Behinderung zwischen dem Werkzeug und dem Werkstück aufgetreten ist, wenn der Stromwert (j) schnell ansteigt, während die Unterbrechung-in-Progress-Information (int) anzeigt, dass ein Unterbrechungsvorgang durchgeführt wird.
  • Die Lerneinheit 512 lernt, wie die Anhebedistanz zu ändern ist, auf Basis eines Trainingsdatensatzes, der auf Basis von Zustandsvariablen erzeugt wurde, bei denen es sich um die Unterbrechung-in-Progress-Information (int), die Anhebedistanz (r) und den Stromwert (j) handelt. Das bedeutet, dass die Lerneinheit 512 lernt, um wieviel die Anhebedistanz für welches Ergebnis der von der Zustandsüberwachungseinheit 511 durchgeführten Beobachtung der Unterbrechung-in-Progress-Information (int), der Anhebedistanz (r) und des Stromwerts (j) zu ändern ist.
  • Die Lerneinheit 512 kann jeden beliebigen Lernalgorithmus für das oben beschriebene Lernen verwenden. Im Folgenden wird beispielhaft der Einsatz von bestärkendem Lernen beschrieben. Beim bestärkenden Lernen beobachtet ein Agent (Akteur) in einer bestimmten Umgebung den aktuellen Zustand und bestimmt, welche Aktion er ausführen soll. Der Agent erhält eine Belohnung von der Umgebung, wenn er eine Aktion auswählt, und lernt eine Strategie, die durch eine Sequenz von Aktionen die höchste Belohnung erzielt. Zu den wichtigsten Techniken des bestärkenden Lernens gehören Q-Learning und TD-Learning. Im Falle des Q-Learnings wird beispielsweise eine typische Aktualisierungsgleichung (Aktionswerttabelle) einer Aktionswertfunktion Q(s,a) durch die Formel (1) ausgedrückt.
    [Formel 1] 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 DE112018008169B4_0001
  • In Formel (1) steht st für die Umgebung zum Zeitpunkt t und at bedeutet die Aktion zum Zeitpunkt t. Die Aktion at bewirkt, dass sich die Umgebung in st+1 ändert. Ferner bedeutet rt+1 die durch die Umgebungsänderung erhaltene Belohnung, γ ist der Diskontierungsfaktor und α bedeutet die Lernrate. Im Falle der Anwendung des Q-Learnings entspricht die Aktion at der Änderung der geltenden Betriebsbedingung (Änderung der Anhebedistanz) für den Unterbrechungsvorgang.
  • Die durch Formel (1) ausgedrückte Aktualisierungsgleichung erhöht den Aktionswert Q, wenn der Aktionswert Q einer besten Aktion „a“ zum Zeitpunkt t+1 höher ist als der Aktionswert Q der Aktion „a“ zum Zeitpunkt t, und verringert den Aktionswert Q, wenn der Aktionswert Q einer besten Aktion „a“ zum Zeitpunkt t+1 niedriger ist als der Aktionswert Q der Aktion „a“ zum Zeitpunkt t. Anders ausgedrückt wird die Aktionswertfunktion Q(s,a) aktualisiert, um zu bewirken, dass sich der Aktionswert Q der Aktion „a“ zum Zeitpunkt t dem besten Aktionswert zum Zeitpunkt t+1 annähert. Dies bewirkt, dass sich der beste Aktionswert in einer bestimmten Umgebung sequentiell auf die Aktionswerte in den jeweiligen Umgebungen davor überträgt.
  • Die Lerneinheit 512 umfasst insbesondere eine Belohnungsberechnungseinheit 513 und eine Funktionsaktualisierungseinheit 514.
  • Die Belohnungsberechnungseinheit 513 berechnet die Belohnung (k) auf Basis der Unterbrechung-in-Progress-Information (int), der Anhebedistanz (r) und des Stromwerts (j). Die Belohnung (k) wird zum Beispiel reduziert, wenn der Stromwert (j) während des Unterbrechungsvorgangs schnell angestiegen ist. Die Belohnungsberechnungseinheit 513 reduziert die Belohnung (k), indem sie beispielsweise eine Belohnung von „-1“ zuweist. Alternativ dazu wird die Belohnung (k) erhöht, wenn der Stromwert (j) während des Unterbrechungsvorgangs nicht schnell angestiegen ist, indem eine Belohnung von „1“ zugewiesen wird. Es wird darauf hingewiesen, dass die Unterbrechung-in-Progress-Information (int), die Anhebedistanz (r) und der Stromwert (j), die zum Lernen verwendet werden, mit einer bekannten Methode extrahiert werden. Eine Belohnung von „-1“ wird als Hinweis auf das Auftreten einer Behinderung zwischen dem Werkstück und dem Werkzeug interpretiert, sodass die niedrigste Belohnung vergeben wird.
  • Die Funktionsaktualisierungseinheit 514 aktualisiert die Funktion zum Bestimmen der Änderung der Aktion (n), d. h. die Änderung der geltenden Betriebsbedingung (Änderung der Anhebedistanz (r)) für den Unterbrechungsvorgang, auf Basis der von der Belohnungsberechnungseinheit 513 berechneten Belohnung. Beispielsweise wird im Fall von Q-Learning die durch Formel (1) ausgedrückte Aktionswertfunktion Q(st,at) als Funktion zum Bestimmen der Aktion (Änderung der Anhebedistanz (r)) verwendet. Zum Beispiel bestimmt die Lerneinheit 512 den Betrag der Änderung der Anhebedistanz (r), der eine maximale Belohnung erzielt. Die anhand des ermittelten Änderungsbetrags aktualisierte Anhebedistanz (r) wird von der Lerneinheit 512 als Aktion (n) an die Unterbrechungsbahn-Berechnungseinheit 482 der Interpolationsverarbeitungseinheit 48 übertragen. Die Unterbrechungsbahn-Berechnungseinheit 482 berechnet den Verfahrweg des Werkzeugs während des Unterbrechungsvorgangs unter Verwendung der aktualisierten Anhebedistanz (r), die von der Lerneinheit 512 bereitgestellt wird.
  • Die Betriebsbedingungsänderungseinheit 51 der numerischen Steuerung 1a bestimmt gemäß dem oben beschriebenen Verfahren den Betrag der Änderung der Anhebedistanz (r) und ändert die Anhebedistanz (r) so, dass eine maximale Belohnung (k) erhalten wird. Die anderen Komponenten der numerischen Steuerung 1a, die von der Betriebszustandsänderungseinheit 51 verschieden sind, führen jeweils eine ähnliche Verarbeitung wie die mit dem gleichen Bezugszeichen versehenen Komponenten durch, die in der numerischen Steuerung 1 gemäß der ersten Ausführungsform enthalten sind. Die Beschreibung der anderen Komponenten, die von der Betriebszustandsänderungseinheit 51 verschieden sind, wird daher weggelassen.
  • 19 zeigt ein Flussdiagramm zur Veranschaulichung eines Beispiels für die Funktionsweise der Betriebszustandsänderungseinheit 51, die in einer numerischen Steuerung 1a gemäß der zweiten Ausführungsform enthalten ist.
  • Wie in 19 dargestellt ist, überwacht die Betriebszustandsänderungseinheit 51, ob ein Unterbrechungsvorgang durchgeführt wird (Schritt S31), und setzt die Überwachung fort, wenn kein Unterbrechungsvorgang erfolgt (Schritt S31: Nein). Die Betriebszustandsänderungseinheit 51 bestimmt, ob ein Unterbrechungsvorgang durchgeführt wird, indem sie die Unterbrechung-in-Progress-Information (int) überprüft. Wenn ein Unterbrechungsvorgang durchgeführt wird (Schritt S31: Ja), prüft die Betriebszustandsänderungseinheit 51, ob eine Behinderung zwischen dem Werkzeug und dem Werkstück aufgetreten ist (Schritt S32). Wenn der Stromwert (j) schnell gestiegen ist, stellt die Betriebszustandsänderungseinheit 51 fest, dass eine Behinderung aufgetreten ist. Wenn keine Behinderung aufgetreten ist (Schritt S32: Nein), kehrt die Betriebszustandsänderungseinheit 51 zu Schritt S31 zurück und setzt die Prozedur fort.
  • Alternativ dazu lernt die Betriebszustandsänderungseinheit 51 die Bedingung für das Auftreten einer Behinderung (Schritt S33), wenn eine Behinderung zwischen dem Werkzeug und dem Werkstück aufgetreten ist (Schritt S32: Ja). Die Betriebszustandsänderungseinheit 51 lernt die Bedingung für das Auftreten einer Behinderung beispielsweise anhand der Anhebedistanz (r) und des Stromwertes (j).
  • Die Betriebsbedingungsänderungseinheit 51 ändert als Nächstes die geltende Betriebsbedingung für den Unterbrechungsvorgang auf Basis des Ergebnisses des in Schritt S33 durchgeführten Lernens (Schritt S34). Wenn die Anhebedistanz des Werkzeugs in Schritt S34 zu ändernd ist, ändert die Betriebsbedingungsänderungseinheit 51 die Anhebedistanz des Werkzeugs, die zur Berechnung der Bahn des Werkzeugs während des Unterbrechungsvorgangs im nächsten Zyklus oder später von der Unterbrechungsbahn-Berechnungseinheit 482 der Interpolationsverarbeitungseinheit 48 verwendet werden soll, auf einen Wert, der niedriger als der aktuelle Wert ist. Die Betriebszustandsänderungseinheit 51 kann den Betrag der Änderung der Anhebedistanz des Werkzeugs auf Basis des Stromwerts (j) bestimmen. Die Betriebszustandsänderungseinheit 51 berechnet den Änderungsbetrag so, dass beispielsweise ein schnell angestiegener Stromwert (j), der eine längere Zeit zum Abfallen benötigt, zu einem größeren Änderungsbetrag führt. Die Betriebsbedingungsänderungseinheit 51 kehrt nach der Durchführung von Schritt S34 zu Schritt S31 zurück und setzt die Prozedur fort.
  • Es wird darauf hingewiesen, dass bei der vorliegenden Ausführungsform beschrieben wurde, dass die Betriebszustandsänderungseinheit 51 bei Erfassung des Auftretens einer Behinderung zwischen dem Werkzeug und dem Werkstück während des Unterbrechungsvorgangs die Anhebedistanz des Werkzeugs ändert, um das Auftreten einer Behinderung zu verhindern, der Vorgang ist jedoch nicht darauf beschränkt. Die Betriebszustandsänderungseinheit 51 kann den Anhebewinkel des Werkzeugs ändern, wenn das Auftreten einer Behinderung zwischen dem Werkzeug und dem Werkstück erfasst wird. Alternativ können sowohl die Anhebedistanz des Werkzeugs als auch der Anhebewinkel des Werkzeugs geändert werden. Das bedeutet, dass die Betriebszustandsänderungseinheit 51 die Anhebedistanz des Werkzeugs und/oder den Anhebewinkel des Werkzeugs beim Auftreten einer Behinderung zwischen dem Werkzeug und dem Werkstück ändert.
  • Zudem wurde bei der vorliegenden Ausführungsform beschrieben, dass die Betriebszustandsänderungseinheit 51 beim Erfassen einer Behinderung zwischen dem Werkzeug und dem Werkstück während des Unterbrechungsvorgangs die Anhebedistanz des Werkzeugs einheitlich ändert, d. h. die Anhebedistanz des Werkzeugs für alle Wiederholungen des Unterbrechungsvorgangs ändert, aber der Vorgang ist darauf nicht beschränkt. Die Betriebszustandsänderungseinheit 51 kann auch so konfiguriert sein, dass sie lernt, in welcher(n) Wiederholung(en) des Unterbrechungsvorgangs eine Behinderung zwischen dem Werkzeug und dem Werkstück auftritt, und die Anhebedistanz des Werkzeugs nur für die Wiederholung(en) des Unterbrechungsvorgangs ändert, in denen eine Behinderung auftritt. Die Zustandsüberwachungseinheit 511 der Betriebszustandsänderungseinheit 51 erfasst in diesem Fall neben der oben beschriebenen Unterbrechung-in-Progress-Information (int), der Anhebedistanz (r) und dem Stromwert (j) beispielsweise auch die Sequenznummer des Befehls, der gerade von der numerischen Steuerung 1a ausgeführt wird. Die Lerneinheit 512 lernt anhand der Unterbrechung-in-Progress-Information (int), der Anhebedistanz (r), des Stromwerts (j) und der Sequenznummer des aktuell ausgeführten Befehls, wie die Anhebedistanz zu ändern ist.
  • Die Änderung der Anhebedistanz des Werkzeugs für alle Wiederholungen des Unterbrechungsvorgangs durch die Betriebszustandsänderungseinheit 51 bei Auftreten einer Behinderung zwischen Werkzeug und Werkstück führt zu einer Reduzierung der Zykluszeit, d. h. der Zeit, die für die vollständige Bearbeitung eines Werkstücks benötigt wird.
  • Die Steuerungsberechnungseinheit 40a, die in einer numerischen Steuerung 1a gemäß der zweiten Ausführungsform enthalten ist, kann in Form von Hardware implementiert werden, die der Hardware (siehe 14) zur Implementierung der Steuerungsberechnungseinheit 40, die in einer numerischen Steuerung 1 gemäß der ersten Ausführungsform enthalten ist, ähnlich ist.
  • Wie oben beschrieben wurde, lernt die numerische Steuerung 1a gemäß der vorliegenden Ausführungsform die Bedingung für das Auftreten einer Behinderung zwischen dem Werkzeug und dem Werkstück, wenn ein Unterbrechungsvorgang durchgeführt wird, und ändert die geltende Betriebsbedingung für den Unterbrechungsvorgang unter Verwendung des Lernergebnisses. Dadurch kann der Zustand der Behinderung zwischen dem Werkzeug und dem Werkstück automatisch behoben werden, wodurch das Auftreten eines Problems, wie beispielsweise eine Verringerung der Bearbeitungsgenauigkeit und/oder ein gebrochenes Werkzeug, reduziert oder eliminiert werden kann.
  • Auch wenn die vorliegende Ausführungsform unter der Annahme beschrieben wurde, dass die Betriebszustandsänderungseinheit 51 in der numerischen Steuerung 1a enthalten ist, kann die Betriebszustandsänderungseinheit 51 so konfiguriert sein, dass sie außerhalb der numerischen Steuerung 1a angeordnet ist. Zum Beispiel kann die Betriebsbedingungsänderungseinheit 51 so implementiert werden, dass eine externe maschinelle Lernvorrichtung Daten zur Verwendung beim Lernen, wie z. B. die Unterbrechung-in-Progress-Information (int), die Anhebedistanz (r) und den Stromwert (j), die oben beschrieben wurden, von der numerischen Steuerung 1 gemäß der ersten Ausführungsform empfängt und dann lernt, wie man die Betriebsbedingungen für den Unterbrechungsvorgang ändert.
  • Bezugszeichenliste
  • 1,1a
    numerische Steuerung;
    10
    Antriebseinheit;
    11
    Servomotor;
    12, 15
    Detektor;
    13X
    X-Achsen-Servosteuerungseinheit;
    13Z
    Z-Achsen-Servosteuerungseinheit;
    14
    Spindelmotor;
    16
    Spindel-Servosteuerungseinheit;
    20
    Eingabeeinheit;
    30
    Anzeigeeinheit;
    40, 40a
    Steuerungsberechnungseinheit;
    41
    Eingabesteuerungseinheit;
    42
    Dateneinstellungseinheit;
    43
    Speichereinheit;
    44
    Anzeigebildverarbeitungseinheit;
    45
    Analyseverarbeitungseinheit;
    46
    Maschinensteuerungssignalverarbeitungseinheit;
    47
    SPS;
    48
    Interpolationsverarbeitungseinheit;
    49
    Beschleunigungs-Verzögerungsverarbeitungseinheit;
    50
    Achsendatenausgabeeinheit;
    51
    Betriebszustandsänderungseinheit;
    431
    Parameter;
    432
    Bearbeitungsprogramm;
    433
    Anzeigebilddaten;
    434
    gemeinsam genutzter Bereich;
    451
    Analyseeinheit für Bearbeitungsunterbrechungsbefehle;
    452
    Analyseeinheit für allgemeine Befehle;
    481
    Unterbrechungszeit-Bestimmungseinheit;
    482
    Unterbrechungsbahn-Berechnungseinheit;
    483
    Bearbeitungsbahn-Berechnungseinheit;
    484
    Verfahrstrecken-Berechnungseinheit;
    511
    Zustandsüberwachungseinheit;
    512
    Lerneinheit;
    513
    Belohnungsberechnungseinheit;
    514
    Funktionsaktualisierungseinheit.

Claims (9)

  1. Numerische Steuerung (1, 1a) zum Steuern mehrerer Antriebswellen, die ein Werkzeug zum Bearbeiten eines zu bearbeitenden Objekts antreiben, wobei die numerische Steuerung (1, 1a) aufweist: eine Analyseverarbeitungseinheit (45) zur Analyse eines Bearbeitungsprogramms; eine Bearbeitungsbahn-Berechnungseinheit (483) zur Berechnung einer Bearbeitungsbahn auf Basis eines Ergebnisses einer von der Analyseverarbeitungseinheit (45) durchgeführten Analyse des Bearbeitungsprogramms, wobei es sich bei der Bearbeitungsbahn um einen Verfahrweg des Werkzeugs bei der spanenden Bearbeitung des zu bearbeitenden Objekts handelt; und eine Unterbrechungsbahn-Berechnungseinheit (482) zur Berechnung eines Verfahrwegs des Werkzeugs in einem Unterbrechungsvorgang auf Basis des Ergebnisses der Analyse, wobei der Unterbrechungsvorgang ein wiederholt durchgeführter Vorgang ist, bei dem das Werkzeug, während das Werkzeug entlang der Bearbeitungsbahn bewegt wird und das zu bearbeitende Objekt bearbeitet, vorübergehend von der Bearbeitungsbahn angehoben wird, dadurch gekennzeichnet, dass die Unterbrechungsbahn-Berechnungseinheit (482) den Verfahrweg des Werkzeugs in dem Unterbrechungsvorgang auf Basis eines innerhalb des Bereichs von größer 0° bis kleiner oder gleich 90° festgelegten Anhebewinkels berechnet, wobei der Anhebewinkel ein Winkel ist, in dem das Werkzeug in dem Unterbrechungsvorgang in Bezug auf die Bearbeitungsbahn angehoben wird.
  2. Numerische Steuerung (1, 1a) nach Anspruch 1, wobei die Analyseverarbeitungseinheit (45) eine Analyseeinheit für Bearbeitungsunterbrechungsbefehle (451) aufweist, um unter den Befehlen, die in dem Bearbeitungsprogramm enthalten sind, einen Bearbeitungsunterbrechungsbefehl zu analysieren, der einen Befehlswert umfasst, der eine Betriebsbedingung für den Unterbrechungsvorgang spezifiziert, und die Unterbrechungsbahn-Berechnungseinheit (482) den Verfahrweg des Werkzeugs in dem Unterbrechungsvorgang auf Basis des im Bearbeitungsunterbrechungsbefehl enthaltenen Befehlswerts berechnet.
  3. Numerische Steuerung (1, 1a) nach Anspruch 2, wobei der Bearbeitungsunterbrechungsbefehl einen Befehlswert, der eine Verfahrstrecke des Werkzeugs zum Anheben des Werkzeugs von der Bearbeitungsbahn spezifiziert, und einen Befehlswert umfasst, der einen Winkel zwischen der Bewegungsrichtung des Werkzeugs und der Bearbeitungsbahn beim Anheben des Werkzeugs von der Bearbeitungsbahn spezifiziert.
  4. Numerische Steuerung (1, 1a) nach Anspruch 3, wobei der Bearbeitungsunterbrechungsbefehl ferner einen Befehlswert umfasst, der eine Position spezifiziert, in die das Werkzeug zurückgeführt werden soll, um das Werkzeug nach dem Anheben des Werkzeugs von der Bearbeitungsbahn wieder in Kontakt mit dem zu bearbeitenden Objekt zu bringen.
  5. Numerische Steuerung (1, 1a) nach Anspruch 3 oder 4, wobei der Bearbeitungsunterbrechungsbefehl ferner einen Befehlswert umfasst, der spezifiziert, ob eine Bahn des Werkzeugs eine lineare Form oder eine bogenförmige Form haben soll, wenn das Werkzeug nach dem Anheben des Werkzeugs von der Bearbeitungsbahn wieder in Kontakt mit dem zu bearbeitenden Objekt gebracht wird.
  6. Numerische Steuerung (1, 1a) nach einem der Ansprüche 3 bis 5, wobei der Bearbeitungsunterbrechungsbefehl ferner einen Befehlswert umfasst, der eine Zeitdauer angibt, während der das Werkzeug nach dem Anheben des Werkzeugs von der Bearbeitungsbahn in einem unbewegten Zustand gehalten wird.
  7. Numerische Steuerung (1a) nach einem der Ansprüche 2 bis 6, die aufweist: eine Betriebszustandsänderungseinheit (51), um zu lernen, wie der Betriebszustand bei Auftreten einer Behinderung zwischen dem Werkzeug und dem zu bearbeitenden Objekt während des Unterbrechungsvorgangs zu ändern ist.
  8. Numerische Steuerung (1a) nach Anspruch 7, wobei die Betriebszustandsänderungseinheit (51) durch eine maschinelle Lernvorrichtung implementiert wird, die das Lernen unter Verwendung eines Wertes eines Stroms, der durch einen Servomotor fließt, der das Werkzeug während des Unterbrechungsvorgangs bewegt, und unter Verwendung eines unter Befehlswerten, die in dem Bearbeitungsunterbrechungsbefehl enthalten sind, ausgewählten Befehlswerts, der eine Verfahrstrecke des Werkzeugs zum Anheben des Werkzeugs von der Bearbeitungsbahn angibt, durchführt.
  9. Maschinelle Lernvorrichtung (51), die lernt, wie eine Betriebsbedingung für einen Unterbrechungsvorgang, der von einer numerischen Steuerung (1, 1a) nach einem der Ansprüche 2 bis 6 durchgeführt wird, bei Auftreten einer Behinderung zwischen dem Werkzeug und dem zu bearbeitenden Objekt während des Unterbrechungsvorgangs zu ändern ist, wobei das Lernen unter Verwendung eines Wertes eines Stroms, der durch einen Servomotor fließt, der das Werkzeug während des Unterbrechungsvorgangs bewegt, und unter Verwendung eines unter Befehlswerten, die in dem Bearbeitungsunterbrechungsbefehl enthalten sind, ausgewählten Befehlswertes erfolgt, der eine Verfahrstrecke des Werkzeugs zum Anheben des Werkzeugs von der Bearbeitungsbahn angibt.
DE112018008169.9T 2018-12-28 2018-12-28 Numerische Steuerung und Maschinenlernvorrichtung Active DE112018008169B4 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/048575 WO2020136899A1 (ja) 2018-12-28 2018-12-28 数値制御装置および機械学習装置

Publications (2)

Publication Number Publication Date
DE112018008169T5 DE112018008169T5 (de) 2021-09-02
DE112018008169B4 true DE112018008169B4 (de) 2023-02-23

Family

ID=69998060

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018008169.9T Active DE112018008169B4 (de) 2018-12-28 2018-12-28 Numerische Steuerung und Maschinenlernvorrichtung

Country Status (5)

Country Link
US (1) US20220043426A1 (de)
JP (1) JP6661062B1 (de)
CN (1) CN113260933B (de)
DE (1) DE112018008169B4 (de)
WO (1) WO2020136899A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114578755B (zh) * 2022-03-03 2024-04-02 东莞市正森精密零件有限公司 一种具有刀具自动进给补偿功能的数控加工装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004011015A1 (de) 2004-03-02 2005-09-15 Brose Fahrzeugteile Gmbh & Co. Kg, Coburg Verfahren zum Überwachen der Verstellbewegung eines von einer Antriebseinrichtung angetriebenen Bauteils
US20090107308A1 (en) 2007-10-16 2009-04-30 Woody Bethany A Methods and systems for chip breaking in turning applications using cnc toolpaths
JP5599523B1 (ja) 2013-02-12 2014-10-01 三菱電機株式会社 数値制御装置
DE102017208060A1 (de) 2016-05-16 2017-11-16 Fanuc Corporation Servosteuerung, steuerverfahren, und computerprogramm für eine werkzeugmaschine zum oszillationsschneiden
DE102018002784A1 (de) 2017-04-14 2018-10-18 Fanuc Corporation Steuervorrichtung für Werkzeugmaschine, die Oszillationsschneiden durchführt

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06285701A (ja) * 1993-04-05 1994-10-11 Fanuc Ltd Nc旋削加工装置
JPH10124127A (ja) * 1996-10-16 1998-05-15 Mori Seiki Co Ltd Nc旋盤を用いたねじ切り装置及びその方法
CN100443224C (zh) * 2002-09-12 2008-12-17 大同玛希纳利股份有限公司 钢管端部的加工方法
JP5902753B2 (ja) * 2014-05-28 2016-04-13 ファナック株式会社 切上げ・切込み運動または円運動挿入機能を有する数値制御装置
KR101985116B1 (ko) * 2014-10-28 2019-05-31 미쓰비시덴키 가부시키가이샤 수치 제어 장치

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004011015A1 (de) 2004-03-02 2005-09-15 Brose Fahrzeugteile Gmbh & Co. Kg, Coburg Verfahren zum Überwachen der Verstellbewegung eines von einer Antriebseinrichtung angetriebenen Bauteils
US20090107308A1 (en) 2007-10-16 2009-04-30 Woody Bethany A Methods and systems for chip breaking in turning applications using cnc toolpaths
JP5599523B1 (ja) 2013-02-12 2014-10-01 三菱電機株式会社 数値制御装置
US20160011579A1 (en) 2013-02-12 2016-01-14 Mitsubishi Electric Corporation Numerical control device
DE102017208060A1 (de) 2016-05-16 2017-11-16 Fanuc Corporation Servosteuerung, steuerverfahren, und computerprogramm für eine werkzeugmaschine zum oszillationsschneiden
DE102018002784A1 (de) 2017-04-14 2018-10-18 Fanuc Corporation Steuervorrichtung für Werkzeugmaschine, die Oszillationsschneiden durchführt

Also Published As

Publication number Publication date
JP6661062B1 (ja) 2020-03-11
CN113260933A (zh) 2021-08-13
CN113260933B (zh) 2022-06-07
WO2020136899A1 (ja) 2020-07-02
US20220043426A1 (en) 2022-02-10
DE112018008169T5 (de) 2021-09-02
JPWO2020136899A1 (ja) 2021-02-18

Similar Documents

Publication Publication Date Title
DE102018002566B4 (de) Steuervorrichtung für eine Oszillationschneiden durchführende Werkzeugmaschine
DE60035129T2 (de) Vorrichtung und verfahren zur maschinellen simulation für numerisch gesteuerte bearbeitungsweisen
DE102018200794B4 (de) Aktionsinformations-lernvorrichtung, aktionsinformations-optimierungssystem und aktionsinformations-lernprogramm
DE102013015236B4 (de) Numerische Steuervorrichtung mit einer Wartefunktion zwischen Wegen
EP2561416B1 (de) Nc-programm und verfahren zur vereinfachten nachproduktion an einer werkzeugmaschine
DE102016101077B4 (de) Werkzeugmaschine mit einer Funktion zur automatischen Abänderung von Schneidebedingungen
DE102017004366B4 (de) Numerische Steuervorrichtung
DE102005037779B4 (de) Numerische Steuereinheit
DE10297651T5 (de) Numerisches Steuerverfahren und numerisches Steuersystem
DE112008003800T5 (de) Numerische Steuerverfahren und Vorrichtung dafür
DE112017005867B4 (de) Steuerungsvorrichtung und Motorsteuerungssystem
DE102018002784A1 (de) Steuervorrichtung für Werkzeugmaschine, die Oszillationsschneiden durchführt
DE102018214276A1 (de) Vorrichtung für maschinelles Lernen, Steuersystem, Steuervorrichtung und Verfahren für maschinelles Lernen
DE102019209104A1 (de) Ausgabevorrichtung, Steuervorrichtung und Ausgabeverfahren für einen Bewertungsfunktionswert
DE102010064308A1 (de) Steuerung für eine Werkzeugmaschine
EP2796954B1 (de) Numerische Steuerung mit Benachrichtigung eines CAM-Systems bei Änderung des Teileprogramms
DE10394189T5 (de) Numeriksteuersystem
DE112019007578T5 (de) Numerische Steuerung, numerisches Steuerverfahren und Maschinenlernvorrichtung
DE102020200638A1 (de) Steuervorrichtung und steuerverfahren von maschine
DE102020202700A1 (de) Steuereinrichtung für werkzeugmaschine
DE112018008169B4 (de) Numerische Steuerung und Maschinenlernvorrichtung
DE112018007741B4 (de) Maschinenlernvorrichtung und vorrichtung zur erzeugung vonprogrammen für eine numerisch gesteuerte bearbeitung
DE112019007889T5 (de) Bearbeitungsprogramm-umwandlungseinrichtung, numerische-steuereinrichtung und bearbeitungsprogramm-umwandlungsverfahren
DE2338880A1 (de) Verfahren und vorrichtungen zur steuerung der beweglichen teile einer werkzeugmaschine durch ein numerisches umriss- oder punkt-fuer-punkt-steuerungssystem, wobei zwei teile der maschine unabhaengig voneinander entlang einer gemeinsamen achse bewegt werden koennen
DE10297725T5 (de) Bearbeitungsprogrammgenierungsvorrichtung

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