DE102013010853B4 - Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist - Google Patents

Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist Download PDF

Info

Publication number
DE102013010853B4
DE102013010853B4 DE102013010853.5A DE102013010853A DE102013010853B4 DE 102013010853 B4 DE102013010853 B4 DE 102013010853B4 DE 102013010853 A DE102013010853 A DE 102013010853A DE 102013010853 B4 DE102013010853 B4 DE 102013010853B4
Authority
DE
Germany
Prior art keywords
block
program
machining
tool
program restart
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
DE102013010853.5A
Other languages
English (en)
Other versions
DE102013010853A1 (de
Inventor
Makoto Haga
Makoto Suzuki
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102013010853A1 publication Critical patent/DE102013010853A1/de
Application granted granted Critical
Publication of DE102013010853B4 publication Critical patent/DE102013010853B4/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/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4067Restoring data or position after power failure or other interruption
    • 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/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34365After interrupt of operation, do other task and go on - resume operation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50098After interrupt, interpolate with suitable startpoint different from stoppoint
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50102Store history of operation, after power failure, restart from history, journal
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50104Before restarting program, restore machine status existing at stop time
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

Numerische Steuervorrichtung (10), die eine Werkzeugmaschine (50, 51, 52, 62, 63) steuert, die eine Vielzahl von gesteuerten Achsen aufweist, durch Analysieren und Ausführen von Blöcken eines maschinellen Bearbeitungsprogramms, um ein Werkstück maschinell zu bearbeiten, und die eine Programmneustartfunktion aufweist, in der Programmneustartblockdaten zur Wiederaufnahme und zum Beenden einer ausgesetzten maschinellen Bearbeitung des Werkstücks erlangt werden und eine teilweise maschinelle Bearbeitung des Werkstücks durchgeführt wird auf der Grundlage der erlangten Programmneustartblockdaten, wobei die numerische Steuervorrichtung umfasst:eine Registrierungseinheit für einen spezifizierten Bereich, die eingerichtet ist, um einen maschinellen Bearbeitungsbereich von jeder der gesteuerten Achsen zu spezifizieren und den spezifizierten maschinellen Bearbeitungsbereich zu registrieren;eine Passierblockbestimmungseinheit für einen spezifizierten Bereich, die eingerichtet ist, um einen Block des maschinellen Bearbeitungsprogramms zu analysieren und zu bestimmen, ob ein Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block, der durch die Analyse des Blocks erlangt wird, eine Grenze des maschinellen Bearbeitungsbereichs passiert oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist;eine Erlangungseinheit für Programmneustartblockdaten, die eingerichtet ist, um:- die Programmneustartblockdaten eines Blocks des maschinellen Bearbeitungsprogramms zu erlangen, falls durch die Passierblockbestimmungseinheit für einen spezifizierten Bereich bestimmt wird, dass der Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block eine Grenze des maschinellen Bearbeitungsbereichs passiert, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist, und- zusätzlich zu den Programmneustartblockdaten eines Blocks des maschinellen Bearbeitungsprogramms die Programmneustartblockdaten von unmittelbar vorangegangenen und nachfolgenden Blöcken des Blocks zu erlangen, falls durch die Passierblockbestimmungseinheit für einen spezifizierten Bereich bestimmt wird, dass der Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block eine Grenze des registrierten maschinellen Bearbeitungsbereichs passiert; undeine Listenanzeigeeinheit, die eingerichtet ist, um eine Liste einer Vielzahl von Programmneustartblockdatensätzen anzuzeigen, die durch die Erlangungseinheit für Programmneustartblockdaten erlangt sind;eine Auswahleinheit für Programmneustartblockdaten, die eingerichtet ist, um einen der Programmneustartblockdatensätze auszuwählen, der in einer Liste angezeigt ist;eine Anzeigeeinheit für ein maschinelles Bearbeitungsprogramm, die eingerichtet ist, um ein maschinelles Bearbeitungsprogramm anzuzeigen, das dem ausgewählten Programmneustartblockdatensatz benachbart ist; undeine Setzeinheit, die eingerichtet ist, um den ausgewählten Programmneustartblockdatensatz oder einen Block des benachbarten maschinellen Bearbeitungsprogramms als einen Startblock und einen Endblock eines Programms zu setzen, das durch die Programmneustartfunktion wieder aufgenommen wird.

Description

  • Hintergrund der Erfindung
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine numerische Steuervorrichtung, die Werkzeugmaschinen steuert, und insbesondere eine numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist.
  • 2. Beschreibung des verwandten Stands der Technik
  • Eine Programmneustartfunktion zum Erlangen von Daten eines nicht-schneidenden Befehlsblocks als Programmneustartblockdaten zum Wiederaufnehmen eines ausgesetzten maschinellen Bearbeitungsprozesses eines Werkstücks wird zum Beispiel in der JP 2009-053 801 A offenbart.
  • Diese Programmneustartblockdaten umfassen Informationen, die zum Wiederaufnehmen des Programms erforderlich sind, wie eine Nummer eines Blocks des momentan ausgeführten maschinellen Bearbeitungsprogramms, Start- und Endpositionen des momentan ausgeführten Blocks, verschiedene Abschnitte von Modalinformationen des momentan ausgeführten Blocks, eine Nummer einer Hauptprogramm- und einer Unterprogrammaufrufblockposition, und eine Gesamtanzahl von Blöcken von dem Hauptprogramm hin zu dem momentan ausgeführten Block.
  • Nicht-schneidende Befehle umfassen, abgesehen von einem Erlangungscode für Programmneustartblockdaten, der als ein nicht-schneidender Befehl zur Erlangung der Programmneustartblockdaten vorab registriert ist, Schnellumkehrungsbefehle, Hilfsfunktionsbefehle, Befehle zum Bewegen einer vorab registrierten, gesteuerten Achse, Werkzeugpositionskorrekturbefehle, Verweilbefehle, Spindelanhaltebefehle, Spindeldrehbefehle und Unterprogrammaufrufbefehle.
  • Damit jedoch entschieden wird, in welchem Abschnitt des maschinell verarbeiteten Objekts die maschinelle Bearbeitung von Grund auf wieder aufzunehmen ist, erfordert es eine große Anzahl von Schritten durch Prüfung zu bestimmen, welcher der nicht-schneidenden Befehlsblöcke der Befehl ist, dessen Ausführung gewünscht ist, und dies kann ein Faktor zum Auftreten von menschlichen Fehlern sein.
  • Die JP H09-160 620 A offenbart ein Beispiel einer Lösung für dieses Problem. Gemäß der Offenbarung werden Befehlsdaten gespeichert, wird ein maschineller Bearbeitungsbereich ausgewählt und werden die Befehlsdaten hinsichtlich des maschinellen Bearbeitungsbereichs geprüft. Falls die Befehlsdaten Befehle mit einschließen, die innerhalb des maschinellen Bearbeitungsbereichs auszuführen sind, werden die Befehle dieser Befehlsdaten ausgeführt. Falls die Befehlsdaten Befehle mit umfassen, die außerhalb des maschinellen Bearbeitungsbereichs ausgeführt werden, werden die Befehle dieser Befehlsdaten nicht ausgeführt. Als nächstes wird bestimmt, ob eine axiale Bewegung, die durch die Befehlsdaten angewiesen ist, eine Bewegung von außerhalb in den maschinellen Bearbeitungsbereich hinein ist oder nicht, und falls die axiale Bewegung als eine solche bestimmt wird, dann wird ein Schnitt zwischen dem axialen Bewegungsweg und einer Grenze des maschinellen Bearbeitungsbereichs, oder ein Punkt in der Umgebung bestimmt, und wird dieser Schnitt oder Punkt als der Startpunkt zur Wiederaufnahme des Programms gesetzt.
  • Anhand dieses Verfahrens liegt jedoch keine Einrichtung vor, um Programme zu verifizieren, die dem Startblock benachbart sind, bevor das Programm wieder aufgenommen wird, da ein Risiko vorliegt, dass der Bediener das Programm von einem Block aus ausführen kann, der von dem beabsichtigten verschieden ist. Des Weiteren, da kein Block als der Endblock des wieder aufgenommenen Programms gesetzt wird, falls das maschinelle Bearbeitungsprogramm eine Reihe von Prozessen unter Verwendung einer Vielzahl von Werkzeugmaschinen mit umfasst und wieder und wieder in dem spezifizierten maschinellen Bearbeitungsbereich wiederholt wird, liegt ein Risiko dahingehend vor, dass die maschinelle Bearbeitung jenseits eines beabsichtigten Bereichs des maschinellen Bearbeitungsprogramms ausgeführt werden kann.
  • Eine weitere Lösung wird in der JP 2007-226 648 A offenbart, wobei eine Ausführungsstartposition zum Starten einer Ausführung eines maschinellen Bearbeitungsprogramms und eine Ausführungsendposition zum Beenden der Ausführung gespeichert werden, und das Programm lediglich von dem Befehl entsprechend der Ausführungsstartposition zu dem Befehl entsprechend der Ausführungsendposition ausgeführt wird.
  • Anhand dieses Verfahrens werden jedoch eine Ausführungsstartposition und eine Ausführungsendposition eindeutig definiert, d.h. kann die Ausführungsstartposition oder die Ausführungsendposition nicht frei unter einer Vielzahl von Blöcken ausgewählt werden, die ein Werkzeug anweisen, sich auf einem Weg zu bewegen, der eine Grenze eines gegebenen maschinellen Bearbeitungsbereichs schneidet, oder aus deren benachbarten Blöcken.
  • Die Druckschrift EP 2 104 013 A2 offenbart eine numerische Steuerung, in der Informationen über jeden Block eines Bearbeitungsprogramms bei der Ausführung, von den bestimmt wurde, dass er einen spezifischen Code enthält, durch welchen der Zustand einer genannten spezifischen Funktion geändert ist, als Programmneustartblockdaten für den Neustart der ausgesetzten Bearbeitung aufgenommen und gespeichert werden, wobei eine vorbestimmte Anzahl von Teilen der Programmneustartblockdaten ablegt und, wenn die Anzahl von Teilen der Programmneustartblockdaten eine vorbestimmte Anzahl übersteigt, der älteste Teil von Programmneustartblockdaten identifiziert wird und der älteste Teil mit dem neuesten Teil der Programmneustartblockdaten überschrieben werden.
  • Die Druckschrift DE 10 2011 015 296 A1 offenbart eine Technik, in der ein verifizierter Werkzeugrichtungsvektor aus drei bestimmten Rotationsachsenpositionen bestimmt wird. Es wird verifiziert, ob eine Differenz zwischen dem verifizierten Werkzeugrichtungsvektor und einem interpolierten Werkzeugrichtungsvektor innerhalb einer vorgegebenen Toleranz liegt oder nicht, und es wird die Berechnung der Positionen der Rotationsachsen durch erneute Berechnung von Evaluationswerten derart wiederholt, dass die kleineren Bewegungsbeträge in höherem Maße ausgewertet werden, falls die Differenz nicht innerhalb der Toleranz liegt.
  • Kurzfassung der Erfindung
  • Demgemäß besteht eine Aufgabe der Erfindung in einem Bereitstellen einer numerischen Steuervorrichtung, die eine Programmneustartfunktion aufweist, mit der Befehlsblöcke eines spezifizierten maschinellen Bearbeitungsbereichs eines maschinell bearbeiteten Objekts leicht nach Bedarf geprüft werden, um als ein Startblock und ein Endblock zur Wiederaufnahme eines Programms gesetzt zu werden, so dass das maschinelle Bearbeitungsprogramm teilweise wieder ausgeführt werden kann.
  • Gemäß der Erfindung werden Steuervorrichtungen gemäß den unabhängigen Ansprüchen bereitgestellt. Entwicklungen sind in den abhängigen Ansprüchen dargestellt.
  • Eine numerische Steuervorrichtung steuert vorzugsweise eine Werkzeugmaschine, die eine Vielzahl von gesteuerten Achsen aufweist, durch Analysieren und Ausführen von Blöcken eines maschinellen Bearbeitungsprogramms zum maschinellen Bearbeiten eines Werkstücks, und weist eine Programmneustartfunktion auf, in der Programmneustartblockdaten zur Wiederaufnahme und zum Beenden einer ausgesetzten maschinellen Bearbeitung des Werkstücks erlangt werden, und eine teilweise maschinelle Bearbeitung des Werkstücks auf der Grundlage der erlangten Programmneustartblockdaten durchgeführt wird.
  • Vorzugsweise umfasst die numerische Steuervorrichtung: eine Registrierungseinheit für einen spezifizierten Bereich, die einen maschinellen Bearbeitungsbereich von jeder der gesteuerten Achsen spezifiziert und den spezifizierten maschinellen Bearbeitungsbereich registriert; eine Passierblockbestimmungseinheit für einen spezifizierten Bereich, die einen Block des maschinellen Bearbeitungsprogramms analysiert und bestimmt, ob ein Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block, der durch Analysieren des Blocks erlangt ist, eine Grenze des maschinellen Bearbeitungsbereichs passiert oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist; und eine Erlangungseinheit für Programmneustartblockdaten, die die Programmneustartblockdaten eines Blocks des maschinellen Bearbeitungsprogramms erlangt, falls durch die Passierblockbestimmungseinheit für einen spezifizierten Bereich bestimmt wird, dass der Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block eine Grenze des maschinellen Bearbeitungsbereichs passiert, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist.
  • Die Passierblockbestimmungseinheit für einen spezifizierten Bereich bestimmt vorzugsweise, ob eine Sequenz der distalen Endpunkte des Werkzeugs, die durch Korrigieren des Bewegungswegs des Werkzeugs hin zu den Positionen der werkzeugdistalen Endpunkte die Grenze des maschinellen Bearbeitungsbereichs passiert oder nicht.
  • Die Erlangungseinheit für Programmneustartblockdaten erlangt vorzugsweise, zusätzlich zu den Programmneustartblockdaten eines Blocks des maschinellen Bearbeitungsprogramms, die Programmneustartblockdaten von unmittelbar vorangehenden und nachfolgenden Blöcken des Blocks, falls durch die Passierblockbestimmungseinheit für einen spezifizierten Bereich bestimmt wird, dass der Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block eine Grenze des registrierten maschinellen Bearbeitungsbereichs passiert.
  • Die numerische Steuervorrichtung umfasst vorzugsweise: eine Listenanzeigeeinheit, die eine Liste einer Vielzahl von Programmneustartblockdatensätzen anzeigt, die durch die Erlangungseinheit für Programmneustartblockdaten erlangt ist; eine Auswahleinheit für Programmneustartblockdaten, die einen der Programmneustartblockdatensätze auswählt, der in der Liste angezeigt ist; eine Anzeigeeinheit für ein maschinelles Bearbeitungsprogramm, die ein maschinelles Bearbeitungsprogramm anzeigt, das dem ausgewählten Programmneustartblockdatensatz benachbart ist; und eine Setzeinheit, die den ausgewählten Programmneustartblockdatensatz und einen Block des benachbarten maschinellen Bearbeitungsprogramms als einen Startblock und einen Endblock eines Programms setzt, das durch die Programmneustartfunktion wieder aufgenommen wird.
  • Vorzugsweise umfasst die numerische Steuervorrichtung: eine Registrierung für einen spezifizierten Bereich, die einen maschinellen Bearbeitungsbereich von jeder der gesteuerten Achsen spezifiziert und den spezifizierten maschinellen Bearbeitungsbereich registriert; eine Bestimmungseinheit, die bestimmt, ob ein Block des maschinellen Bearbeitungsprogramms ein nicht-schneidender Block ist oder nicht; eine Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block, die einen nicht-schneidenden Block des maschinellen Bearbeitungsprogramms analysiert, falls der nicht-schneidende Block eine Bewegung umfasst, um zu bestimmen, ob ein Bewegungsweg eines Werkzeugs gemäß Anweisung durch diesen Block sich innerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist, und die demgegenüber bestimmt, ob eine Werkzeugposition während einer Ausführung jenes nicht-schneidenden Blocks sich innerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist, falls der nicht-schneidende Block des maschinellen Bearbeitungsprogramms keine Bewegung mit umfasst; und eine Erlangungseinheit für Programmneustartblockdaten, die die Programmneustartblockdaten des nicht-schneidenden Blocks erlangt, in dem ein Werkzeugweg oder eine Werkzeugposition bestimmt wurde, sich innerhalb des maschinellen Bearbeitungsbereichs durch die Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block zu befinden, und entnommen wurde.
  • Der nicht-schneidende Block umfasst vorzugsweise zumindest einen eines Erlangungscodes für Programmneustartblockdaten, der als ein nicht-schneidender Befehl zur Erlangung der Programmneustartblockdaten vorab registriert ist, eines schnellen Umkehrbefehls, eines Hilfsfunktionsbefehls, eines Befehls zur Bewegung einer vorab registrierten, gesteuerten Achse, eines Werkzeugpositionskorrekturbefehls, eines Verweilbefehls, eines Spindelanhaltebefehls, eines Spindeldrehbefehls und eines Unterprogrammaufrufbefehls.
  • Die Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block bestimmt vorzugsweise, ob eine Sequenz der distalen Endpunkte des Werkzeugs, die durch Korrigieren des Bewegungswegs des Werkzeugs hin zu den Positionen der distalen Endpunkte des Werkzeugs erlangt wird, die Grenze des maschinellen Bearbeitungsbereichs passiert oder nicht, oder bestimmt, ob eine Position eines distalen Endpunktes des Werkzeugs, die durch Korrigieren der Werkzeugposition hin zu der Position des distalen Endpunkts des Werkzeugs erlangt wird, sich innerhalb des maschinellen Bearbeitungsbereichs befindet.
  • Die numerische Steuervorrichtung umfasst weiterhin vorzugsweise: eine Listenanzeigeeinheit, die eine Liste einer Vielzahl von Programmneustartblockdatensätzen anzeigt, die durch die Erlangungseinheit für Programmneustartblockdaten erlangt ist; eine Auswahleinheit für Programmneustartblockdaten, die einen der Programmneustartblockdatensätze auswählt, der in einer Liste angezeigt ist; eine Anzeigeeinheit für ein maschinelles Bearbeitungsprogramm, die ein maschinelles Bearbeitungsprogramm anzeigt, das dem ausgewählten Programmneustartblockdatensatz benachbart ist; und eine Setzeinheit, die den ausgewählten Programmneustartblockdatensatz oder einen Block des benachbarten maschinellen Bearbeitungsprogramms als einen Startblock und einen Endblock eines Programms setzt, das durch die Programmneustartfunktion wieder aufzunehmen ist.
  • Vorzugsweise umfasst die numerische Steuervorrichtung: eine Registrierung für einen spezifizierten Bereich, die einen maschinellen Bearbeitungsbereich von jeder der gesteuerten Achsen spezifiziert und den spezifizierten maschinellen Bearbeitungsbereich registriert; eine Bestimmungseinheit, die bestimmt, ob ein Block des maschinellen Bearbeitungsprogramms ein nicht-schneidender Block ist oder nicht; eine Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block, die einen nicht-schneidenden Block des maschinellen Bearbeitungsprogramms analysiert, falls der nicht-schneidende Block eine Bewegung mit umfasst, um zu bestimmen, ob ein Bewegungsweg eines Werkzeugs gemäß Anweisung durch diesen Block sich außerhalb des maschinellen Bearbeitungsbereichs befindet, oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist, und die dem gegenüber bestimmt, ob eine Werkzeugposition während einer Ausführung jenes nicht-schneidenden Blocks sich außerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist, falls der nicht-schneidende Block des maschinellen Bearbeitungsprogramms keine Bewegung mit umfasst; und eine Erlangungseinheit für Programmneustartblockdaten, die die Programmneustartblockdaten des nicht-schneidenden Blocks erlangt, in dem ein Werkzeugweg oder eine Werkzeugposition bestimmt wurde, sich außerhalb des maschinellen Bearbeitungsbereichs zu befinden, durch die Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block, und entnommen wurde.
  • Der nicht-schneidende Block umfasst vorzugsweise zumindest eines eines Erlangungscodes für Programmneustartblockdaten, der als ein nicht-schneidender Befehl zur Erlangung der Programmneustartblockdaten vorab registriert ist, eines schnellen Umkehrbefehls, eines Hilfsfunktionsbefehls, eines Befehls zum Bewegen einer vorab registrierten, gesteuerten Achse, eines Werkzeugpositionskorrekturbefehls, eines Verweilbefehls, eines Spindelanhaltebefehls, eines Spindeldrehbefehls und eines Unterprogrammaufrufbefehls.
  • Die Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block umfasst vorzugsweise die Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block und bestimmt vorzugsweise, ob eine Sequenz der distalen Endpunkte des Werkzeugs, die durch Korrigieren des Bewegungswegs des Werkzeugs hin zu den Positionen der distalen Endpunkte des Werkzeugs erlangt ist, die Grenze des maschinellen Bearbeitungsbereichs passiert oder nicht, oder bestimmt, ob eine Position eines distalen Endpunktes des Werkzeugs, die durch Korrigieren der Werkzeugposition hin zu der Position des distalen Endpunkts des Werkzeugs erlangt ist, sich außerhalb des maschinellen Bearbeitungsbereichs befindet.
  • Die numerische Steuervorrichtung umfasst weiterhin vorzugsweise: eine Listenanzeigeeinheit, die eine Liste einer Vielzahl von Programmneustartblockdatensätzen anzeigt, die durch die Erlangungseinheit für Programmneustartblockdaten erlangt ist; eine Auswahleinheit für Programmneustartblockdaten, die einen der Programmneustartblockdatensätze auswählt, der in einer Liste angezeigt ist; eine Anzeigeeinheit für ein maschinelles Bearbeitungsprogramm, die ein maschinelles Bearbeitungsprogramm anzeigt, das dem ausgewählten Programmneustartblockdatensatz benachbart ist; und eine Setzeinheit, die den ausgewählten Programmneustartblockdatensatz oder einen Block des benachbarten maschinellen Bearbeitungsprogramms als einen Startblock und einen Endblock eines Programms setzt, das durch die Programmneustartfunktion wieder aufzunehmen ist.
  • Die Programmneustartblockdaten sind vorzugsweise Daten, die zur Wiederaufnahme des Programms erforderlich sind, und umfassen vorzugsweise zumindest eines einer Blocknummer eines momentan ausgeführten maschinellen Bearbeitungsprogramms, Start- und Endpositionen des momentan ausgeführten Blocks, verschiedene Abschnitte von Modalinformationen eines momentan ausgeführten Blocks, eine Nummer einer Hauptprogramm- und Unterprogrammaufrufblockposition und eine Gesamtanzahl von Blöcken von dem Hauptprogramm hin zu dem momentan ausgeführten Block.
  • Vorzugsweise werden Befehlsblöcke eines spezifizierten maschinellen Bearbeitungsbereichs des maschinell bearbeiteten Objekts mit Leichtigkeit nach Bedarf geprüft, um als ein Startblock und ein Endblock zur Wiederaufnahme eines Programms gesetzt zu werden, so dass das maschinelle Bearbeitungsprogramm teilweise wieder ausgeführt werden kann, wodurch das Auftreten von menschlichen Fehlern und die Anzahl von Schritten verringert werden können. Bei Wiederaufnahme der maschinellen Bearbeitung können ebenso die Programme verifiziert werden, die dem Startblock und dem Endblock benachbart sind, so dass das Risiko der unabsichtlichen Ausführung der maschinellen Bearbeitung bei einem Bereich, der von dem beabsichtigten Bereich des Programms verschieden ist, verringert werden kann.
  • Figurenliste
  • Die vorstehend beschriebenen und weitere Aufgaben und Merkmale der Erfindung werden aus der nachfolgenden Beschreibung von Ausführungsbeispielen unter Bezugnahme auf die beiliegenden Zeichnungen offensichtlich werden. Es zeigen:
    • 1 eine Darstellung zur Beschreibung eines Falls, in dem verschiedene Werte als die Minimal- und Maximalwerte (Minimum ≠ Maximum) zur Bewegung entlang jeder der drei Achsen (X-Achse, Y-Achse und Z-Achse) einer Werkzeugmaschine gesetzt werden, die durch eine numerische Steuervorrichtung gesteuert ist;
    • 2 eine Darstellung zur Beschreibung eines Falls, in dem der gleiche Wert als der Minimal- und Maximalwert (Minimum = Maximum) zur Bewegung entlang einer Achse (Z-Achse) der Werkzeugmaschine gesetzt wird;
    • 3 eine Darstellung zur Beschreibung eines Falls, in dem der gleiche Wert als der Minimal- und Maximalwert (Minimum = Maximum) zur Bewegung entlang zweier Achse (Y-Achse und Z-Achse) der Werkzeugmaschine gesetzt wird;
    • 4 eine Darstellung zur Beschreibung eines Falls, in dem der gleiche Wert als der Minimal- und Maximalwert zur Bewegung entlang aller drei Achsen der Werkzeugmaschine gesetzt wird;
    • 5 eine Darstellung zur Beschreibung eines Bereichs (Raums), wenn die jeweiligen Minimal- und Maximalwerte zur Bewegung entlang der drei Achsen (X-Achse, Y-Achse und Z-Achse) der Werkzeugmaschine wie in 1 gezeigt gesetzt werden;
    • 6 eine Darstellung zur Beschreibung eines Bereichs (Fläche), wenn die jeweiligen Minimal- und Maximalwerte zur Bewegung entlang der drei Achsen (X-Achse, Y-Achse und Z-Achse) der Werkzeugmaschine wie in 2 gezeigt gesetzt werden;
    • 7 ein Ablaufdiagramm zur Beschreibung eines Prozesses, der durch eine Passierblockbestimmungseinheit für einen spezifizierten Bereich ausgeführt wird;
    • 8 ein Ablaufdiagramm zur Beschreibung eines Prozesses, der durch eine Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block ausgeführt wird;
    • 9 ein Ablaufdiagramm zur Beschreibung eines Prozesses, der durch eine Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block ausgeführt wird;
    • 10 eine Darstellung, die ein Beispiel des Auswählens eines Bereichs zeigt, in dem eine maschinelle Bearbeitung wieder aufzunehmen ist;
    • 11 eine Darstellung zur Beschreibung eines Beispiels eines maschinellen Bearbeitungsprogramms;
    • 12 eine Darstellung, die ein Beispiel eines Unterprogramms zeigt, das während der Ausführung des maschinellen Bearbeitungsprogramms ausgeführt wird, das in 11 gezeigt ist;
    • 13 eine Darstellung, die die Bewegung eines Werkzeugs in jeweiligen Blöcken zeigt, wenn das in 11 gezeigte maschinelle Bearbeitungsprogramm (N100 bis N118) ausgeführt wird;
    • 14 eine Darstellung, die die Bewegung eines Werkzeugs in jeweiligen Blöcken zeigt, wenn das in 11 gezeigte maschinelle Bearbeitungsprogramm (N200 bis N213) ausgeführt wird;
    • 15 ein erstes Beispiel eines Programmneustartblocklistenschirms;
    • 16 ein zweites Beispiel eines Programmneustartblocklistenschirms;
    • 17 ein drittes Beispiel eines Programmneustartblocklistenschirms;
    • 18 ein viertes Beispiel eines Programmneustartblocklistenschirms;
    • 19 ein fünftes Beispiel eines Programmneustartblocklistenschirms;
    • 20 ein Ablaufdiagramm, das den Gesamtablauf eines Programmneustartprozesses zeigt;
    • 21 ein Ablaufdiagramm, das den Ablauf eines vorbereitenden Prozesses zur Wiederaufnahme eines Programms zeigt;
    • 22 ein Ablaufdiagramm, das den Ablauf eines maschinellen Ist-Bearbeitungsprozesses durch das wieder aufgenommene Programm zeigt; und
    • 23 eine Blockdarstellung, die eine numerische Steuervorrichtung zeigt, die eine Programmneustartfunktion aufweist.
  • Beschreibung der bevorzugten Ausführungsbeispiele
  • In der Erfindung werden Blockdaten eines Blocks, der eine Bewegung eines Werkzeugs zum Schneiden mit einer Grenze einer Ebene oder eines Raums, der als ein maschineller Bearbeitungsbereich durch Spezifizieren von Bereichen einer Vielzahl von gesteuerten Achsen registriert ist, oder seines benachbarten Blocks, als Programmneustartblockdaten zur Wiederaufnahme und zum Beenden eines maschinellen Bearbeitungsprozesses eines Werkstücks erlangt.
  • Falls der maschinelle Bearbeitungsbereich als ein Raum spezifiziert wird, werden ebenso Blockdaten von nicht-schneidenden Blöcken erlangt, die innerhalb oder außerhalb des maschinellen Bearbeitungsbereichs durchgeführt werden.
  • Eine teilweise maschinelle Bearbeitung des Werkstücks kann auf der Grundlage der so erlangten Programmneustartblockdaten durchgeführt werden. Die Blockdaten können aus einer Liste einer Vielzahl von so erlangten Programmneustartblockdatensätzen ausgewählt werden, und benachbarte Blöcke können ebenso als ein Startblock und ein Endblock für das wiederaufgenommene Programm ausgewählt werden.
  • Die numerische Steuervorrichtung gemäß der Erfindung steuert eine Werkzeugmaschine, die eine Vielzahl von gesteuerten Achsen aufweist, um ein Werkstück maschinell zu bearbeiten, durch Analysieren und Ausführen von Blöcken eines maschinellen Bearbeitungsprogramms. Diese numerische Steuervorrichtung umfasst eine Programmneustartfunktion zum Wiederaufnehmen einer ausgesetzten maschinellen Bearbeitung eines Werkstücks, wobei Blockdaten zur Wiederaufnahme und zum Beenden der ausgesetzten maschinellen Bearbeitung als Programmneustartblockdaten erlangt werden und eine teilweise maschinelle Bearbeitung des Werkstücks auf der Grundlage der erlangten Programmneustartblockdaten durchgeführt wird. Einige Ausführungsbeispiele dieser numerischen Steuervorrichtung, die eine Programmneustartfunktion aufweist, werden nachstehend beschrieben werden.
  • (Ausführungsbeispiel 1)
  • Die numerische Steuervorrichtung gemäß Ausführungsbeispiel 1, die eine Programmneustartfunktion aufweist, umfasst eine Registrierungseinheit für einen spezifizierten Bereich, eine Passierblockbestimmungseinheit für einen spezifizierten Bereich und eine Erlangungseinheit für Programmneustartblockdaten. Die Registrierungseinheit für einen spezifizierten Bereich spezifiziert einen maschinellen Bearbeitungsbereich von jeder der gesteuerten Achsen einer Werkzeugmaschine. Die Passierblockbestimmungseinheit für einen spezifizierten Bereich analysiert einen Block eines maschinellen Bearbeitungsprogramms und bestimmt, ob ein Bewegungsweg eines Werkzeugs, der durch die Analyse des Blocks bestimmt ist, eine Grenze eines maschinellen Bearbeitungsbereichs passiert oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist. Falls die Passierblockbestimmungseinheit für einen spezifizierten Bereich bestimmt, dass der Block des maschinellen Bearbeitungsprogramms ein Block ist, der eine Bewegung anweist, die die Grenze des registrierten maschinellen Bearbeitungsbereichs passiert, dann erlangt die Erlangungseinheit für Programmneustartblockdaten die Programmneustartblockdaten jenes Blocks.
  • Diese Registrierungseinheit für einen spezifizierten Bereich, die Passierblockbestimmungseinheit für einen spezifizierten Bereich und die Erlangungseinheit für Programmneustartblockdaten werden jeweils nachstehend beschrieben werden.
  • < Registrierungseinheit für einen spezifizierten Bereich >
  • Die Registrierungseinheit für einen spezifizierten Bereich entscheidet, in welchem Abschnitt des maschinell bearbeiteten Objekts die maschinelle Bearbeitung wieder aufgenommen werden muss auf der Grundlage einer Zeichnung oder dergleichen des Objekts. In einer numerischen Steuervorrichtung, die unter Bezugnahme auf 23 beschrieben ist, werden Daten zum Spezifizieren eines Bereichs in die numerische Steuervorrichtung mittels einer Eingabeeinrichtung eingegeben, wie einer Monitor/manuellen Eingabeeinheit 20, und in einem Speicher gespeichert.
  • 1 zeigt eine Darstellung zur Beschreibung eines Falls, in dem verschiedene Werte als die Minimal- und Maximalwerte (Minimum ≠ Maximum) zur Bewegung entlang jeder der drei Achsen (X-Achse, Y-Achse und Z-Achse) einer Werkzeugmaschine gesetzt werden, die durch die numerische Steuervorrichtung gesteuert ist. 2 zeigt eine Darstellung zur Beschreibung eines Falls, in dem der gleiche Wert als der Minimal- und Maximalwert (Minimum = Maximum) zur Bewegung entlang einer Achse (Z-Achse) der Werkzeugmaschine gesetzt wird. 3 zeigt eine Darstellung zur Beschreibung eines Falls, in dem der Fall beschrieben wird, in dem der gleiche Wert als der Minimal- und Maximalwert zur Bewegung entlang zweier Achsen (Y-Achse und Z-Achse) der Werkzeugmaschine verwendet wird. 4 zeigt eine Darstellung zur Beschreibung eines Falls, in dem der gleiche Wert als der Minimal- und Maximalwert zur Bewegung entlang aller drei Achsen der Werkzeugmaschine verwendet wird.
  • Die Art und Weise, wie ein Bereich spezifiziert wird, wird nachstehend unter Verwendung eines dreidimensionalen Raums beschrieben werden, der durch X-, Y- und Z-Koordinaten aufgespannt wird. Es werden Minimal- und Maximalwerte für jede der X-Achse, Y-Achse und Z-Achse gesetzt, um einen ebenen oder räumlichen maschinellen Bearbeitungsbereich zu spezifizieren.
  • Falls die Minimal- und Maximalwerte für alle der drei, X-, Y- und Z-Achsen verschieden sind, wie in dem Beispiel gemäß 1, wird der spezifizierte Bereich ein „Raum“ sein, wie in 5 gezeigt.
  • Falls die Minimal- und Maximalwerte für zwei der drei, X-, Y- und Z-Achsen (z.B. X-Achse und Y-Achse) verschieden sind, während der Minimal- und Maximalwert der gleiche für die verbleibende eine Achse ist, wie in dem Beispiel gemäß 2, wird der spezifizierte Bereich eine „Fläche“ sein, wie in 6 gezeigt.
  • Falls die Minimal- und Maximalwerte für eine der drei, X-, Y- und Z-Achsen (z.B. X-Achse) verschieden sind, während der Minimal- und Maximalwert der gleiche für die verbleibenden zwei Achsen ist, wie in dem Beispiel gemäß 3, wird der spezifizierte Bereich eine „Gerade“ werden.
  • Falls die Minimal- und Maximalwerte die gleichen für alle drei, X-, Y- und Z-Achsen sind, wie in dem Beispiel gemäß 4, wird der spezifizierte Bereich ein „Punkt“ sein.
  • Es sei darauf hingewiesen, dass unter Verwendung anderer Achsen als der X-Achse, Y-Achse und Z-Achse (die drei Grundachsen sind, die durch die numerische Steuervorrichtung gesteuert werden), ebenso ein Bereich spezifiziert und registriert werden kann.
  • < Passierblockbestimmungseinheit für einen spezifizierten Bereich >
  • Die Passierblockbestimmungseinheit für einen spezifizierten Bereich analysiert Blöcke eines maschinellen Bearbeitungsprogramms und bestimmt, ob der Bewegungsweg eines Werkzeugs, der als ein Ergebnis der Analyse erlangt ist, einen Schnitt mit einer Grenze eines maschinellen Bearbeitungsbereichs aufweist oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist. Der Prozess, der durch diese Passierblockbestimmungseinheit für einen spezifizierten Bereich ausgeführt wird, wird nachstehend unter Bezugnahme auf das Ablaufdiagramm gemäß 7 beschrieben werden.
  • Zuerst wird bestimmt, ob ein maschineller Bearbeitungsbereich spezifiziert wurde oder nicht, unter Verwendung von Koordinaten, durch die Registrierungseinheit für einen spezifizierten Bereich (A1). Falls kein maschineller Bearbeitungsbereich spezifiziert wurde (NEIN bei Entscheidung A1), dann endet der Prozess hier, während, falls ein maschineller Bearbeitungsbereich spezifiziert wurde (JA bei Entscheidung A1), dann bestimmt wird, ob alle Blöcke des maschinellen Bearbeitungsprogramms analysiert wurden oder nicht (A2). Falls alle Blöcke analysiert wurden (JA bei Entscheidung A2), dann endet der Prozess hier. Falls noch immer einige Blöcke übrig sind, die zu analysieren sind (NEIN bei Entscheidung A2), dann werden die Blöcke des maschinellen Bearbeitungsprogramms eingelesen (A3).
  • Dann wird bestimmt, ob ein Bewegungsweg eines Werkzeugs, der durch einen der Blöcke ausgebildet wird, die in Schritt A3 eingelesen werden (momentan analysierter Block) einen Schnitt mit einer Grenze des maschinellen Bearbeitungsbereichs aufweist oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist (A4). Falls kein Schnitt vorliegt (NEIN bei Entscheidung A4), dann geht der Prozess zurück zu dem Entscheidungsschritt A2. Falls ein Schnitt vorliegt (JA bei Entscheidung A4), dann wird bestimmt, ob die Programmneustartdaten der vorangehenden und nachfolgenden Blöcke des momentan analysierten Blocks programmiert sind, um zusammen erlangt zu werden (A5). Ein „Bewegungsweg eines Werkzeugs‟, der in dem Entscheidungsschritt A4 verwendet wird, kann eine Sequenz der distalen Endpunkte des Werkzeugs sein, die durch Korrigieren des Bewegungswegs des Werkzeugs durch Berücksichtigung der Länge des Werkzeugs und einer Drehachse erlangt wird.
  • Falls die Programmneustartdaten der vorangegangenen und nachfolgenden Blöcke des momentan analysierten Blocks programmiert sind, um zusammen erlangt zu werden (JA bei Entscheidung A5), dann werden die Daten des momentan analysierten Blocks und der unmittelbar vorangegangenen und nachfolgenden Blöcke kollektiv als „Programmneustartblockdaten“ erlangt und in dem Speicher gespeichert (A6), und dann geht der Prozess zurück zu dem Entscheidungsschritt A2. Falls die Programmneustartdaten der vorangegangenen und nachfolgenden Blöcke des momentan analysierten Blocks nicht programmiert sind, um zusammen erlangt zu werden (NEIN bei Entscheidung A5), dann werden die Daten des momentan analysierten Blocks als die „Programmneustartblockdaten“ erlangt und in dem Speicher gespeichert (A7), und dann geht der Prozess zurück zu dem Entscheidungsschritt A2.
  • Diese „Programmneustartblockdaten“ sind Daten, die zur Wiederaufnahme des Programms erforderlich sind und umfassen eine Blocknummer des momentan ausgeführten maschinellen Bearbeitungsprogramms, Start- und Endpositionen des momentan ausgeführten Blocks, verschiedenen Abschnitte von Modalinformationen des momentan ausgeführten Blocks, eine Nummer einer Hauptprogramm- und einer Unterprogrammaufrufblockposition, eine Gesamtanzahl von Blöcken von dem Hauptprogramm hin zu dem momentan ausgeführten Block und dergleichen.
  • < Erlangungseinheit für Programmneustartblockdaten >
  • Die Erlangungseinheit für Programmneustartblockdaten kann Programmneustartblockdaten durch eines der nachfolgenden zwei Verfahren (Verfahren 1 und Verfahren 2) erlangen.
  • (Verfahren 1)
  • Falls ein Bereich bereits spezifiziert und registriert ist, bevor ein maschinelles Bearbeitungsprogramm ausgeführt wird (d.h., falls Daten, die einen Bereich spezifizieren, bereits in dem Speicher der numerischen Steuervorrichtung gesetzt und gespeichert sind), werden die Programmneustartblockdaten während der Ausführung des maschinellen Bearbeitungsprogramms erlangt.
  • (Verfahren 2)
  • In dem Fall, in dem der spezifizierte Bereich nach einer Unterbrechung der maschinellen Bearbeitung registriert wird und dann ein „Such“-Vorgang durchgeführt wird, läuft das Programm ab, ohne die Achsen zu bewegen, so dass die Programmneustartblockdaten durch die Modalinformationen von Codes erlangt werden, wie G-Codes, M-Codes, S-Codes, T-Codes und B-Codes, die durch das maschinelle Bearbeitungsprogramm angewiesen sind, und durch einen „Vorab-Ausführungsmodus“, in dem die internen Koordinaten der numerischen Steuervorrichtung (CNC) bei hoher Geschwindigkeit aktualisiert werden.
  • (Ausführungsbeispiel 2)
  • Die numerische Steuervorrichtung gemäß Ausführungsbeispiel 2, die eine Programmneustartfunktion aufweist, umfasst eine Registrierungseinheit für einen spezifizierten Bereich, eine Bestimmungseinheit, eine Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block und eine Erlangungseinheit für Programmneustartdaten. Die Registrierungseinheit für einen spezifizierten Bereich spezifiziert einen maschinellen Bearbeitungsbereich von jeder der gesteuerten Achsen einer Werkzeugmaschine. Die Bestimmungseinheit bestimmt, ob ein Block eines maschinellen Bearbeitungsprogramms ein nicht-schneidender Block ist oder nicht. Falls der Block des maschinellen Bearbeitungsprogramms ein nicht-schneidender Block ist, der eine Bewegung mit umfasst, dann analysiert die Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block diesen nicht-schneidenden Block, um zu bestimmen, ob ein Bewegungsweg eines Werkzeugs gemäß Anweisung durch diesen Block sich innerhalb des registrierten maschinellen Bearbeitungsbereichs befindet oder nicht, während, falls der Block des maschinellen Bearbeitungsprogramms ein nicht-schneidender Block ist, der keine Bewegung mit umfasst, die Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block bestimmt, ob die Werkzeugposition während der Ausführung jenes nicht-schneidenden Blocks sich innerhalb des registrierten maschinellen Bearbeitungsbereichs befindet oder nicht. Die Erlangungseinheit für Programmneustartblockdaten erlangt die Programmneustartblockdaten des nicht-schneidenden Blocks, in dem ein Werkzeugweg oder eine Werkzeugposition bestimmt wurde, sich innerhalb des maschinellen Bearbeitungsbereichs zu befinden durch die Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block, und entnommen wurde.
  • <Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block>
  • (a) Falls ein nicht-schneidender Block ein Block ist, der eine Bewegung mit umfasst, dann analysiert die Innerhalb- oder Außerhalbbestimmungseinheit für den nicht-schneidenden Block diesen nicht-schneidenden Block, um zu bestimmen, ob ein Bewegungsweg eines Werkzeugs, der als ein Ergebnis der Analyse erlangt ist (nachstehend Werkzeugweg), sich innerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist, während (b) falls der nicht-schneidende Block ein Block ist, der keine Bewegung mit umfasst, die Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block bestimmt, ob die Position des Werkzeugs während der Ausführung jenes nicht-schneidenden Blocks (nachstehend Werkzeugposition) sich innerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist. Der Prozess, der durch diese Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block ausgeführt wird, wird unter Bezugnahme auf das Ablaufdiagramm gemäß 8 beschrieben werden.
  • Zuerst wird bestimmt, ob ein maschineller Bearbeitungsbereich spezifiziert wurde oder nicht durch Koordinaten in der Registrierungseinheit für einen spezifizierten Bereich (B1). Falls kein maschineller Bearbeitungsbereich spezifiziert wurde (NEIN bei Entscheidung B1), dann endet der Prozess hier, während, falls ein maschineller Bearbeitungsbereich spezifiziert wurde (JA bei Entscheidung B1), dann weiterhin bestimmt wird, ob Blockdaten eines nicht-schneidenden Blocks programmiert sind oder nicht, als die Programmneustartblockdaten erlangt zu werden, falls sich die Werkzeugposition innerhalb des spezifizierten Bereichs befindet (B2). Falls die Blockdaten eines nicht-schneidenden Blocks nicht programmiert sind, in einem derartigen Fall erlangt zu werden (NEIN bei Entscheidung B2), dann endet der Prozess hier. Falls die Blockdaten eines nicht-schneidenden Blocks programmiert sind, in einem solchen Fall erlangt zu werden (JA bei Entscheidung B2), dann wird bestimmt, ob alle Blöcke, die in dem maschinellen Bearbeitungsprogramm registriert sind, analysiert wurden oder nicht (B3). Falls alle Blöcke analysiert wurden (JA bei Entscheidung B3), dann endet der Prozess hier. Falls noch einige Blöcke vorliegen, die zu analysieren sind (NEIN bei Entscheidung B3), dann werden die Blöcke des maschinellen Bearbeitungsprogramms eingelesen (B4).
  • Dann wird bestimmt, ob ein Block, der durch die Ausführung des Schritts B4 eingelesen ist (momentan analysierter Block), ein nicht-schneidender Block ist oder nicht (B5). Falls er kein nicht-schneidender Block ist (NEIN bei Entscheidung B5), dann wird der Entscheidungsschritt B3 wieder durchgeführt, während, falls er ein nicht-schneidender Block ist (JA bei Entscheidung B5), dann als nächstes bestimmt wird, ob dieser nicht-schneidende Block ein Block ist oder nicht, der einen Befehl umfasst, der eine Bewegung mit umfasst (B6).
  • Falls er bestimmt wird, ein Block zu sein, der einen Befehl umfasst, der eine Bewegung mit umfasst (JA bei Entscheidung B6), dann wird als nächstes bestimmt, ob der Werkzeugweg sich innerhalb des spezifizierten Bereichs befindet oder nicht (B7). Falls sich der Werkzeugweg nicht innerhalb des spezifizierten Bereichs befindet (NEIN bei Entscheidung B7), dann wird der Entscheidungsschritt B3 wieder durchgeführt. Demgegenüber, falls der Werkzeugweg bestimmt wird, sich innerhalb des spezifizierten Bereichs zu befinden, werden Blockdaten jenes Blocks als die Programmneustartblockdaten erlangt und in dem Speicher gespeichert (B8), wonach der Prozess wieder zu dem Entscheidungsschritt B3 zurückkehrt.
  • Falls er bestimmt wird, kein Block zu sein, der einen Befehl umfasst, der eine Bewegung mit umfasst (NEIN bei Entscheidung B6), dann wird bestimmt, ob die Werkzeugposition sich innerhalb des spezifizierten Bereichs befindet oder nicht (B9). Falls sich die Werkzeugposition nicht innerhalb des spezifizierten Bereichs befindet (NEIN bei Entscheidung B9), dann kehrt der Prozess zurück zu dem Entscheidungsschritt B3, während, falls die Werkzeugposition bestimmt wird, sich innerhalb des spezifizierten Bereichs zu befinden (JA bei Entscheidung B9), dann werden die Programmneustartblockdaten jenes Blocks erlangt und in dem Speicher gespeichert (B8), wonach der Prozess wieder zu dem Entscheidungsschritt B3 zurückkehrt.
  • (Ausführungsbeispiel 3)
  • Die numerische Steuervorrichtung gemäß Ausführungsbeispiel 3, die eine Programmneustartfunktion aufweist, umfasst eine Registrierungseinheit für einen spezifizierten Bereich, eine Bestimmungseinheit, eine Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block und eine Erlangungseinheit für Programmneustartblockdaten. Die Registrierungseinheit für einen spezifizierten Bereich spezifiziert einen maschinellen Bearbeitungsbereich von jeder der gesteuerten Achsen einer Werkzeugmaschine. Die Bestimmungseinheit bestimmt, ob ein Block eines maschinellen Bearbeitungsprogramms ein nicht-schneidender Block ist oder nicht. Falls der Block des maschinellen Bearbeitungsprogramms ein nicht-schneidender Block ist, der eine Bewegung mit umfasst, dann analysiert die Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block diesen nicht-schneidenden Block, um zu bestimmen, ob ein Bewegungsweg eines Werkzeugs gemäß Anweisung durch diesen Block sich außerhalb des registrierten maschinellen Bearbeitungsbereichs befindet oder nicht, während, falls der Block des maschinellen Bearbeitungsprogramms ein nicht-schneidender Block ist, der keine Bewegung mit umfasst, die Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block bestimmt, ob die Werkzeugposition während der Ausführung jenes nicht-schneidenden Blocks sich außerhalb des registrierten maschinellen Bearbeitungsbereichs befindet oder nicht. Die Erlangungseinheit für Programmneustartblockdaten erlangt die Programmneustartblockdaten des nicht-schneidenden Blocks, in dem ein Werkzeugweg oder eine Werkzeugposition bestimmt wurde, sich außerhalb des maschinellen Bearbeitungsbereichs zu befinden, durch die Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block, und entnommen wurde.
  • <Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block>
  • (a) Falls ein nicht-schneidender Block ein Block ist, der eine Bewegung mit umfasst, dann analysiert die Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block diesen nicht-schneidenden Block, um zu bestimmen, ob ein Bewegungsweg eines Werkzeugs, der als ein Ergebnis der Analyse erlangt wird (nachstehend Werkzeugweg), sich außerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist, während (b), falls der nicht-schneidende Block ein Block ist, der keine Bewegung mit umfasst, die Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block bestimmt, ob die Position des Werkzeugs während der Ausführung jenes nicht-schneidenden Blocks (nachstehend Werkzeugposition) sich außerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist. Der Prozess, der durch diese Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block ausgeführt wird, wird nachstehend unter Bezugnahme auf das Ablaufdiagramm gemäß 9 beschrieben werden.
  • Zuerst wird bestimmt, ob ein maschineller Bearbeitungsbereich durch die Registrierungseinheit für einen spezifizierten Bereich spezifiziert wurde oder nicht (C1). Falls kein maschineller Bearbeitungsbereich spezifiziert wurde (NEIN bei Entscheidung C1), dann endet der Prozess hier, während, falls ein maschineller Bearbeitungsbereich spezifiziert wurde (JA bei Entscheidung C1), dann weiterhin bestimmt wird, ob Blockdaten eines nicht-schneidenden Blocks programmiert sind oder nicht, als die Programmneustartblockdaten erlangt zu werden, falls sich die Werkzeugposition außerhalb des spezifizierten Bereichs befindet (C2). Falls die Blockdaten eines nicht-schneidenden Blocks nicht programmiert sind, in einem solchen Fall erlangt zu werden (NEIN bei Entscheidung C2), dann endet der Prozess hier. Falls die Blockdaten eines nicht-schneidenden Blocks programmiert sind, in einem solchen Fall erlangt zu werden (JA bei Entscheidung C2), dann wird bestimmt, ob alle Blöcke, die in dem maschinellen Bearbeitungsprogramm registriert sind, analysiert wurden oder nicht (C3).
  • Falls alle Blöcke analysiert wurden (JA bei Entscheidung C3), dann endet der Prozess hier. Falls noch immer einige Blöcke vorliegen, die zu analysieren sind (NEIN bei Entscheidung C3), dann werden die Blöcke des maschinellen Bearbeitungsprogramms eingelesen (C4).
  • Dann wird bestimmt, ob ein Block, der durch die Ausführung des Schritts C4 eingelesen ist (momentan analysierter Block), ein nicht-schneidender Block ist oder nicht (C5). Falls er kein nicht-schneidender Block ist (NEIN bei Entscheidung C5), dann wird der Entscheidungsschritt C3 wieder durchgeführt, während, falls er ein nicht-schneidender Block ist (JA bei Entscheidung C5), dann als nächstes bestimmt wird, ob dieser nicht-schneidende Block ein Block ist oder nicht, der einen Befehl umfasst, der eine Bewegung mit umfasst (C6).
  • Falls er bestimmt wird, ein Block zu sein, der einen Befehl umfasst, der eine Bewegung mit umfasst (JA bei Entscheidung C6), dann wird als nächstes bestimmt, ob der Werkzeugweg sich außerhalb des spezifizierten Bereichs befindet oder nicht (C7). Falls sich der Werkzeugweg nicht außerhalb des spezifizierten Bereichs befindet (NEIN bei Entscheidung C7), dann kehrt der Prozess wieder zu dem Entscheidungsschritt C3 zurück. Demgegenüber, falls der Werkzeugweg bestimmt wird, sich außerhalb des spezifizierten Bereichs zu befinden, dann werden die Programmneustartblockdaten jenes Blocks erlangt und in dem Speicher gespeichert (C8), wonach der Prozess wieder zu dem Entscheidungsschritt C3 zurückkehrt.
  • Falls er bestimmt wird, kein Block zu sein, der einen Befehl umfasst, der eine Bewegung mit umfasst (NEIN bei Entscheidung C6), dann wird bestimmt, ob sich die Werkzeugposition außerhalb des spezifizierten Bereichs befindet oder nicht (C9). Falls sich die Werkzeugposition nicht außerhalb des spezifizierten Bereichs befindet (NEIN bei Entscheidung C9), dann kehrt der Prozess zu dem Entscheidungsschritt C3 zurück, während, falls die Werkzeugposition bestimmt wird, sich außerhalb des spezifizierten Bereichs zu befinden (JA bei Entscheidung C9), dann die Programmneustartblockdaten jenes Blocks erlangt und in dem Speicher gespeichert werden (C8), wonach der Prozess wieder zu dem Entscheidungsschritt C3 zurückkehrt.
  • Die Entscheidung bei C7, um zu „bestimmen, ob sich der Werkzeugweg außerhalb des spezifizierten Bereichs befindet oder nicht“ und die Entscheidung bei C9, um zu „bestimmen, ob sich die Werkzeugposition außerhalb des spezifizierten Bereichs befindet oder nicht“, können jeweils durch eine Entscheidung ersetzt werden, zu „bestimmen, ob sich der Werkzeugweg angrenzend außerhalb des spezifizierten Bereichs befindet oder nicht“ und die Entscheidung, zu „bestimmen, ob sich die Werkzeugposition angrenzend außerhalb des spezifizierten Bereichs befindet oder nicht“. Hierbei bedeutet der Werkzeugweg oder die Werkzeugposition, der oder die sich „angrenzend außerhalb des spezifizierten Bereichs befindet“, dass sich der Werkzeugweg oder die Werkzeugposition innerhalb eines Bereichs einer spezifizierten Anzahl von Blöcken von einem benachbarten Block des momentan analysierten Blocks (Block, der durch die Ausführung des Schritts C4 eingelesen ist) befindet, oder innerhalb eines bestimmten angrenzenden Bereichs, der durch Koordinaten spezifiziert ist.
  • Die Erlangungseinheit für Programmneustartblockdaten wird nachstehend unter Bezugnahme auf 10 bis 19 beschrieben werden.
  • Die numerische Steuervorrichtung ist derart aufgebaut, dass, wenn ein Bereich eines maschinell bearbeiteten Objekts, in dem die maschinelle Bearbeitung wieder aufzunehmen ist, spezifiziert und registriert wird, wie in 10 gezeigt, und wenn die numerische Steuervorrichtung das in 11 gezeigte maschinelle Bearbeitungsprogramm und das in 12 gezeigte Unterprogramm analysiert, das während der Ausführung des maschinellen Bearbeitungsprogramms durchgeführt wird, die numerische Steuervorrichtung die Programmneustartblockdaten von Blöcken, deren Werkzeugwege eine Grenze dieses registrierten spezifizierten Bereichs passieren, und von nicht-schneidenden Blöcken erlangt, die innerhalb dieses spezifizierten Bereichs ausgeführt werden. Diese Programmneustartblockdaten, die zu erlangen sind, werden nachstehend beschrieben werden.
  • Die Art und Weise, wie die Blöcke innerhalb des spezifischen Bereichs ausgeführt werden, wird nachstehend unter Bezugnahme auf 13 und 14 beschrieben werden. 13 zeigt eine Darstellung, die die Bewegung eines Werkzeugs in jeweiligen Blöcken zeigt, wenn das in 11 gezeigte maschinelle Bearbeitungsprogramm (N100 bis N118) ausgeführt wird. 14 zeigt eine Darstellung, die die Bewegung eines Werkzeugs in jeweiligen Blöcken zeigt, wenn das in 11 gezeigte maschinelle Bearbeitungsprogramm (N200 bis N213) ausgeführt wird.
  • Wie in 13 gezeigt, falls Blöcke N100 bis N118 auszuführen sind, werden Blöcke N104 bis N116 bei den Grenzen des spezifizierten Bereichs oder innerhalb des spezifizierten Bereichs ausgeführt werden. Wie in 14 gezeigt, falls Blöcke N200 bis N213 auszuführen sind, werden Blöcke N204 bis N208 innerhalb der Grenzen des spezifizierten Bereichs oder innerhalb des spezifizierten Bereichs ausgeführt werden. Deshalb werden Blockdaten der Blöcke N104, N116, N204 und N208, deren Werkzeugwege eine Grenze des spezifizierten Bereichs passieren, als die Programmneustartblockdaten erlangt.
  • Des Weiteren, unter Bezugnahme auf 15, werden Blöcke N105, N115, N205, N901/N908/N909, die durch N205, N206, N207 und N901/N908/N909, die durch N207 ausgeführt sind, als nicht-schneidende Blöcke erlangt, die innerhalb des spezifizierenden Bereichs auszuführen sind.
  • Die „Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block“ in Ausführungsbeispiel 2, die „Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block“ in Ausführungsbeispiel 3 und die „Erlangungseinheit für Programmneustartblockdaten“ in Ausführungsbeispielen 2 und 3 werden nachstehend beschrieben werden.
  • Die numerische Steuervorrichtung ist derart aufgebaut, dass, wenn ein Bereich, in dem die maschinelle Bearbeitung wieder aufzunehmen ist, spezifiziert und registriert ist, wie in 10 gezeigt, und wenn die numerische Steuervorrichtung das in 11 gezeigte maschinelle Bearbeitungsprogramm und das in 12 gezeigte Unterprogramm analysiert, das während der Ausführung des maschinellen Bearbeitungsprogramms durchgeführt wird, die numerische Steuervorrichtung die Programmneustartblockdaten von Blöcken erlangt, deren Werkzeugwege eine Grenze dieses registrierten spezifizierten Bereichs passieren, sowie die Programmneustartblockdaten von unmittelbar vorangegangenen und nachfolgenden Blöcken dieses Blocks. Diese Programmneustartblockdaten, die zu erlangen sind, werden nachstehend beschrieben werden.
  • Unter Bezugnahme auf 16 werden Blockdaten von Blöcken N103, N104, N105, N115, N116, N117, N203, N204, N205 und N909, die durch N207, N208 und N209 ausgeführt werden, als Programmneustartblockdaten erlangt. Wie aus 13 klar ersichtlich ist, kann die Zykluszeit verkürzt werden, falls der Block N105 unmittelbar nach dem Block (N104), dessen Werkzeugweg die Grenze des registrierten spezifizierten Bereichs passiert, als der Startblock zur Wiederaufnahme des Programms gesetzt wird, und der Block N115 unmittelbar vor dem Block (N116), dessen Werkzeugweg die Grenze des registrierten spezifizierten Bereichs passiert, als der Endblock des wiederaufgenommenen Programms gesetzt wird, verglichen mit dem Setzen des Blocks N104, dessen Werkzeugweg die Grenze des spezifizierten Bereichs passiert, als den Startblock zur Wiederaufnahme des Programms und zum Setzen des Blocks N116, dessen Werkzeugweg die Grenze des spezifizierten Bereichs passiert, als den Endblock des wiederaufgenommenen Programms.
  • Wie ebenso aus 13 klar ersichtlich ist, kann ein breiterer Bereich für die wieder aufgenommene maschinelle Bearbeitung gesetzt werden, falls der Block N117 unmittelbar nach dem Block (N116), dessen Werkzeugweg die Grenze des spezifizierten Bereichs passiert, als der Endblock des wiederaufgenommenen Programms gesetzt wird, verglichen mit dem Setzen des Blocks N104, dessen Werkzeugweg die Grenze des spezifizierten Bereichs passiert, als den Startblock zur Wiederaufnahme des Programms und zum Setzen des Blocks N116, dessen Werkzeugweg die Grenze des spezifizierten Bereichs passiert, als den Endblock des wiederaufgenommenen Programms, wodurch die maschinelle Bearbeitung verlässlicher für den maschinellen Sollbearbeitungsabschnitt wieder aufgenommen werden kann.
  • < Start/Endblocksetzeinheit der Programmneustartfunktion >
  • Die Start/Endblocksetzeinheit der Programmneustartfunktion wird nachstehend beschrieben werden. Durch Durchführen einer Suche in einem Programmneustartblocklistenschirm wird eine Liste von Blockdatensätzen auf diesem Schirm angezeigt, die durch die Erlangungseinheit für Programmneustartblockdaten erlangt ist (vgl. 15).
  • Eine Liste von Programmneustartblockdatensätzen erscheint auf der linken Seite des Programmneustartblocklistenschirms und irgendein gegebener der Programmneustartblockdatensätze kann durch Bewegen eines Cursors darüber ausgewählt werden. Auf der rechten Seite des Programmneustartblocklistenschirms wird eine Liste von Programmen in der Umgebung des ausgewählten Programmneustartblockdatensatzes angezeigt. Der Cursor kann ebenso über einen Block in der Umgebung bewegt werden, wie in 17 gezeigt.
  • Ein Startblock zur Wiederaufnahme des Programms wird durch Bewegen des Cursors über einen der Programmneustartblockdatensätze oder Programme in der Umgebung gesetzt, die in Listen auf dem Programmneustartblocklistenschirm angezeigt sind, und durch Drücken eines Setzknopfs zum Setzen des ausgewählten als den Startblock für den wieder aufgenommenen Betrieb. Eine „S“-Markierung erscheint auf jeder linken Seite der Programmneustartblockdaten, die als der Startblock zur Wiederaufnahme des Programms gesetzt sind, und des Programms in der Umgebung der ausgewählten Programmneustartblockdaten. Zum Beispiel, falls N204 als der Startblock zur Wiederaufnahme des Programms gesetzt wird, erscheint eine „S“-Markierung auf dem Programmneustartblocklistenschirm, wie in 18 gezeigt.
  • In ähnlicher Art und Weise wird ein Endblock für das wieder aufgenommene Programm gesetzt durch Bewegen des Cursors über einen der Programmneustartblockdatensätze oder ein Programm in der Umgebung, die in Listen auf dem Programmneustartblocklistenschirm angezeigt sind, und durch Drücken eines Setzknopfes zum Setzen des ausgewählten als den Endblock für den wiederaufgenommenen Betrieb gesetzt. Eine „E“-Markierung erscheint auf jeder linken Seite der Programmneustartblockdaten, die als der Endblock für das wieder aufgenommene Programm gesetzt sind, und des Programms in der Umgebung der ausgewählten Programmneustartblockdaten. Zum Beispiel, falls N908 als der Endblock für das wieder aufgenommene Programm gesetzt wird, erscheint eine „E“-Markierung auf dem Programmneustartblocklistenschirm, wie in 19 gezeigt. Dieser Endblock für das wieder aufgenommene Programm muss ein Block sein, der später abgearbeitet wird als der Startblock zur Wiederaufnahme des Programms.
  • Nach Vollendung dieses vorbereitenden Betriebs zur Wiederaufnahme des Programms wird die maschinelle Ist-Bearbeitung durch das wieder aufgenommene Programm derart ausgeführt, dass die Programme zwischen dem Startblock und dem Endblock wieder aufgenommen werden können.
  • Als nächstes wird der Gesamtprogrammneustartprozess einschließlich des Betriebs zum Setzen des Startblocks und des Endblocks der Programmneustartfunktion, die vorstehend beschrieben ist, unter Bezugnahme auf 20 beschrieben werden.
  • Zuerst wird bestimmt, ob ein maschineller Bearbeitungsbereich durch die Registrierungseinheit für einen spezifizierten Bereich spezifiziert wurde oder nicht (D1). Falls kein maschineller Bearbeitungsbereich spezifiziert wurde (NEIN bei Entscheidung D1), dann endet der Prozess hier. Falls ein maschineller Bearbeitungsbereich spezifiziert wurde (JA bei Entscheidung D1), dann überwacht das System weiterhin, ob ein Knopf gedrückt wurde oder nicht, und wartet, bis der Knopf gedrückt wird (D2 und D3).
  • Wenn der Knopf gedrückt wird (JA bei Entscheidung D3), dann wird bestimmt, ob der gedrückte Knopf ein solcher ist, der eine Ausführung eines wieder aufgenommenen Programms anweist oder nicht (D4). Falls er kein Programmneustartausführungsknopf ist (NEIN bei Entscheidung D4), dann wird ein vorbereitender Prozess zur Wiederaufnahme des in 21 beschriebenen Programms (das nachstehend beschrieben werden wird) durchgeführt, wonach der Prozess zu Schritt D2 zurückgeht. Falls er ein Programmneustartausführungsknopf ist (JA bei Entscheidung D4), dann wird bestimmt, ob alle Einstellungen, die für die maschinelle Ist-Bearbeitung durch das wieder aufgenommene Programm erforderlich sind, vollendet wurden (D5).
  • Falls die Einstellung, die für die maschinelle Ist-Bearbeitung durch das wieder aufgenommene Programm erforderlich ist, vollendet wurde (JA bei Entscheidung D5), dann wird die maschinelle Ist-Bearbeitung durch das wieder aufgenommene Programm, die in 22 gezeigt ist (wie nachstehend beschrieben werden wird) durchgeführt, wonach der Prozess endet. Falls die Einstellung, die für die maschinelle Ist-Bearbeitung durch das wieder aufgenommene Programm erforderlich ist, nicht vollendet wurde (NEIN bei Entscheidung D5), dann kehrt der Prozess zu Schritt D2 zurück.
  • Der vorbereitende Prozess zur Wiederaufnahme eines Programms, der in 21 gezeigt ist, das gemäß einem Entscheidungsergebnis bei dem Entscheidungsschritt D4 des Programmneustartprozesses gemäß 20 durchgeführt wird, wird nachstehend ausführlicher beschrieben werden.
  • Zuerst wird bestimmt, ob ein Suchknopf gedrückt wurde oder nicht (E1). Falls der Suchknopf gedrückt wurde (JA bei Entscheidung E1), dann wird die Gesamtheit des Programms „virtuell ausgeführt“ und wird die Liste von erlangten Programmneustartblockdatensätzen gemäß den Einstellungen des spezifizierten Bereichs angezeigt (E2). Danach werden die Einstellung des Startblocks und des Endblocks für das wieder aufgenommene Programm beide rückgesetzt (E3). Diese Schritte E2 und E3 werden als „Suchvorgang“ bezeichnet.
  • Falls der Suchknopf nicht gedrückt wurde (NEIN bei Entscheidung E1), dann wird weiterhin bestimmt, ob der Suchvorgang (E2 und E3) zumindest einmal durchgeführt wurde (E4). Falls kein Suchvorgang durchgeführt wurde (NEIN bei Entscheidung E4), dann wird dieser vorbereitete Prozess zur Wiederaufnahme des Programms hier beendet (der Prozess geht nämlich zu Schritt D2 über, der in 20 gezeigt ist). Demgegenüber, falls der Suchvorgang zuvor durchgeführt wurde (JA bei Entscheidung E4), dann wird bestimmt, ob ein Startblocksetzknopf zur Wiederaufnahme des Programms gedrückt wurde oder nicht (E5).
  • Falls der Startblocksetzknopf zur Wiederaufnahme des Programms gedrückt wurde (JA bei Entscheidung E5), dann wird ein Startblock zur Wiederaufnahme des Programms gesetzt (E6) und dieser vorbereitete Prozess zur Wiederaufnahme des Programms endet hier. Demgegenüber, falls der Startblocksetzknopf zur Wiederaufnahme des Programms nicht gedrückt wurde (NEIN bei Entscheidung E5), dann wird bestimmt, ob ein Endblocksetzknopf für das wieder aufgenommene Programm gedrückt wurde oder nicht (E7). Falls der Endblocksetzknopf für das wieder aufgenommene Programm nicht gedrückt wurde (NEIN bei Entscheidung E7), dann endet dieser vorbereitende Prozess zur Wiederaufnahme des Programms hier.
  • Falls der Endblocksetzknopf für das wieder aufgenommene Programm gedrückt wurde (JA bei Entscheidung E7), dann wird als nächstes bestimmt, ob ein Block, der dem Block vorangeht, der als der Endblock des wieder aufgenommenen Programms zu setzen ist, bereits als der Startblock zur Wiederaufnahme des Programms gesetzt wurde (E8). Falls kein solcher Block als der Startblock zur Wiederaufnahme des Programms gesetzt wurde (NEIN bei Entscheidung E8), dann endet dieser vorbereitende Prozess zur Wiederaufnahme des Programms hier. Falls ein Block als solcher bereits als Startblock zur Wiederaufnahme des Programms gesetzt wurde (JA bei Entscheidung E8), dann wird der Endblock für das wieder aufgenommene Programm gesetzt und endet der vorbereitende Prozess zur Wiederaufnahme des Programms.
  • „Virtuelles Ausführen“ des Programms bei Schritt E2 bedeutet, dass Modalinformationen (oder funktionale Informationen), ein Status von Hilfsfunktionen und/oder Koordinaten aktualisiert werden, ohne eine Ist-Bewegung des Werkzeugs, auf der Grundlage der Analyseergebnisse des Programms.
  • Eine maschinelle Ist-Bearbeitung durch das wieder aufgenommene Programm, das gemäß einem Entscheidungsergebnis bei Entscheidungsschritt D5 des Programmneustartprozesses gemäß 20 durchgeführt wird, wird nachstehend ausführlicher unter Bezugnahme auf 22 beschrieben werden.
  • Zuerst wird die Startposition des Blocksatzes als der Startblock zur Wiederaufnahme des Programms aus den Programmneustartblockdaten eingelesen und wird eine Positionierung durchgeführt (F1). Das Programm wird analysiert und eine maschinelle Ist-Bearbeitung wird gemäß den Analyseergebnissen durchgeführt (F2). Dann wird bestimmt, ob der analysierte Block der Endblock des wieder aufgenommenen Programms ist oder nicht (F3). Falls der analysierte Block nicht der Endblock des wieder aufgenommenen Programms ist (NEIN bei Entscheidung F3), dann kehrt der Prozess zu Schritt F2 zurück, in dem das Programm analysiert wird und die maschinelle Ist-Bearbeitung auf der Grundlage der Analyse durchgeführt wird. Falls der analysierte Block der Endblock des wieder aufgenommenen Programms ist (JA bei Entscheidung F3), dann wird die maschinelle Ist-Bearbeitung durch das wieder aufgenommene Programm beendet.
  • Wesentliche Teile der numerischen Steuervorrichtung 10 gemäß einem Ausführungsbeispiel der Erfindung werden nachstehend unter Bezugnahme auf die Blockdarstellung gemäß 23 beschrieben werden.
  • Eine CPU 11 steuert allgemein die numerische Steuervorrichtung 10, d.h. der Prozessor liest Systemprogramme aus, die in einem ROM 12 gespeichert sind, über einen Bus 19, und steuert die numerische Steuervorrichtung 10 insgesamt. Ein RAM 13 speichert zeitweilig Berechnungsdaten, Anzeigedaten oder verschiedene Dateneinträge, die durch einen Bediener über eine Monitor/manuelle Eingabeeinheit 20 eingegeben sind. Diese Monitor/manuelle Eingabeeinheit 20 ist durch eine Anzeigevorrichtung aufgebaut, die durch einen CRT oder einen Flüssigkristall und eine manuelle Eingabeeinrichtung, wie eine Tastatur, ausgebildet ist.
  • Ein SRAM 14 ist als ein nicht-flüchtiger Speicher aufgebaut und wird durch eine (nicht gezeigte) Sicherungsbatterie mit Strom versorgt, so dass er gespeicherte Daten selbst dann beibehalten kann, wenn die numerische Steuervorrichtung 10 stromlos geschaltet wird. Dieser SRAM 14 speichert eine Entscheidungstabelle, die Erlangungscodes für Programmneustartblockdaten spezifiziert, die als nicht-schneidende Befehle zur Erlangung der Programmneustartblockdaten vorab registriert sind, schnelle Umkehrbefehle, Hilfsfunktionsbefehle, Befehle zum Bewegen einer vorab registrierten, gesteuerten Achse, Werkzeugpositionskorrekturbefehle, Verweilbefehle, Spindelanhaltebefehle, Spindeldrehbefehle und Unterprogrammaufrufbefehle, um eine spätere Bestimmung dessen zu ermöglichen, ob ein Block eines maschinellen Bearbeitungsprogramms einen nicht-schneidenden Befehl umfasst oder nicht.
  • In dem SRAM 14 sind maschinelle Bearbeitungsprogramme gespeichert, die über eine Schnittstelle 15 eingelesen werden, oder maschinelle Bearbeitungsprogramme, die über die Monitor/manuelle Eingabeeinheit 20 eingegebenen sind. Der ROM 12 weist das bereits in ihm gespeicherte Programm zur Erlangung von Programmneustartblockdaten zur Realisierung der Programmneustartfunktion gemäß der Erfindung auf.
  • Die Schnittstelle 15 richtet eine Verbindung zwischen der numerischen Steuervorrichtung 10 und externen Vorrichtungen ein. Eine programmierbare Maschinensteuervorrichtung (PMC, Programmable Machine Controller) 16 gibt Signale über eine E/A-Einheit 17 zu Hilfsvorrichtungen einer Werkzeugmaschine aus, die gesteuert werden (wie ein Stellglied einer Roboterhand zum Wechseln von Werkzeugen) und steuert diese gemäß einem Sequenzprogramm, das in der numerischen Steuervorrichtung 10 installiert ist. Die PMC empfängt Signale von verschiedenen Schaltern auf einem Bedienpanel, das in dem Hauptkörper der Werkzeugmaschine eingerichtet ist, die durch die numerische Steuervorrichtung 10 gesteuert wird, und sendet die Signale zu der CPU 11 nach Durchführung einer notwendigen Signalverarbeitung.
  • Achsensteuerschaltungen 30 bis 32 von jeweiligen Vorschubachsen (gesteuerten Achsen) empfangen Befehle, die Bewegungsbeträge der jeweiligen Vorschubachsen von der CPU 11 empfangen, und geben Vorschubbefehle zu Servoverstärkern 40 bis 42 aus. Die Servoverstärker 40 bis 42 treiben Servomotoren 50 bis 52 der jeweiligen Vorschubachsen der Werkzeugmaschine an (Steuersollvorgabe). Die Servomotoren 50 bis 52 umfassen jeweils einen Positions-/Geschwindigkeitssensor zur Regelung der Position und Geschwindigkeit unter Verwendung von Rückkopplungen aus den Positions-/Geschwindigkeitssensoren. Die Positions-/Geschwindigkeitsregelung ist in 23 nicht gezeigt. Eine Spindelsteuerschaltung 33 gibt ein Spindelgeschwindigkeitssignal zu einem Spindelverstärker 61 gemäß einem Spindeldrehbefehl aus. Der Spindelverstärker 61 dreht den Spindelmotor 62 bei der angewiesenen Drehgeschwindigkeit auf der Grundlage des Spindelgeschwindigkeitssignals, wodurch die Spindel angetrieben wird. Ein Positionssensor 63 sendet Rückkopplungsimpulse zu der Spindelsteuerschaltung 33 in Einklang mit der Drehung des Spindelmotors 62.

Claims (9)

  1. Numerische Steuervorrichtung (10), die eine Werkzeugmaschine (50, 51, 52, 62, 63) steuert, die eine Vielzahl von gesteuerten Achsen aufweist, durch Analysieren und Ausführen von Blöcken eines maschinellen Bearbeitungsprogramms, um ein Werkstück maschinell zu bearbeiten, und die eine Programmneustartfunktion aufweist, in der Programmneustartblockdaten zur Wiederaufnahme und zum Beenden einer ausgesetzten maschinellen Bearbeitung des Werkstücks erlangt werden und eine teilweise maschinelle Bearbeitung des Werkstücks durchgeführt wird auf der Grundlage der erlangten Programmneustartblockdaten, wobei die numerische Steuervorrichtung umfasst: eine Registrierungseinheit für einen spezifizierten Bereich, die eingerichtet ist, um einen maschinellen Bearbeitungsbereich von jeder der gesteuerten Achsen zu spezifizieren und den spezifizierten maschinellen Bearbeitungsbereich zu registrieren; eine Passierblockbestimmungseinheit für einen spezifizierten Bereich, die eingerichtet ist, um einen Block des maschinellen Bearbeitungsprogramms zu analysieren und zu bestimmen, ob ein Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block, der durch die Analyse des Blocks erlangt wird, eine Grenze des maschinellen Bearbeitungsbereichs passiert oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist; eine Erlangungseinheit für Programmneustartblockdaten, die eingerichtet ist, um: - die Programmneustartblockdaten eines Blocks des maschinellen Bearbeitungsprogramms zu erlangen, falls durch die Passierblockbestimmungseinheit für einen spezifizierten Bereich bestimmt wird, dass der Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block eine Grenze des maschinellen Bearbeitungsbereichs passiert, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist, und - zusätzlich zu den Programmneustartblockdaten eines Blocks des maschinellen Bearbeitungsprogramms die Programmneustartblockdaten von unmittelbar vorangegangenen und nachfolgenden Blöcken des Blocks zu erlangen, falls durch die Passierblockbestimmungseinheit für einen spezifizierten Bereich bestimmt wird, dass der Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block eine Grenze des registrierten maschinellen Bearbeitungsbereichs passiert; und eine Listenanzeigeeinheit, die eingerichtet ist, um eine Liste einer Vielzahl von Programmneustartblockdatensätzen anzuzeigen, die durch die Erlangungseinheit für Programmneustartblockdaten erlangt sind; eine Auswahleinheit für Programmneustartblockdaten, die eingerichtet ist, um einen der Programmneustartblockdatensätze auszuwählen, der in einer Liste angezeigt ist; eine Anzeigeeinheit für ein maschinelles Bearbeitungsprogramm, die eingerichtet ist, um ein maschinelles Bearbeitungsprogramm anzuzeigen, das dem ausgewählten Programmneustartblockdatensatz benachbart ist; und eine Setzeinheit, die eingerichtet ist, um den ausgewählten Programmneustartblockdatensatz oder einen Block des benachbarten maschinellen Bearbeitungsprogramms als einen Startblock und einen Endblock eines Programms zu setzen, das durch die Programmneustartfunktion wieder aufgenommen wird.
  2. Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist, gemäß Anspruch 1, wobei die Passierblockbestimmungseinheit für einen spezifizierten Bereich eingerichtet ist, um zu bestimmen, ob eine Sequenz der distalen Endpunkte des Werkzeugs, die durch Korrigieren des Bewegungswegs des Werkzeugs hin zu den Positionen der werkzeugdistalen Endpunkte erlangt wird, die Grenze des maschinellen Bearbeitungsbereichs passiert oder nicht.
  3. Numerische Steuervorrichtung (10), die eine Werkzeugmaschine steuert (50, 51, 52, 53, 63), die eine Vielzahl von gesteuerten Achsen aufweist, durch Analysieren und Ausführen von Blöcken eines maschinellen Bearbeitungsprogramms, um ein Werkstück maschinell zu bearbeiten, und die eine Programmneustartfunktion aufweist, in der Programmneustartblockdaten zur Wiederaufnahme und zum Beenden einer ausgesetzten maschinellen Bearbeitung des Werkstücks erlangt werden und eine teilweise maschinelle Bearbeitung des Werkstücks durchgeführt wird, auf der Grundlage der erlangten Programmneustartblockdaten, wobei die numerische Steuervorrichtung umfasst: eine Registrierungseinheit für einen spezifizierten Bereich, die eingerichtet ist, um einen maschinell bearbeiteten Bereich von jeder der gesteuerten Achsen zu spezifizieren und den spezifizierten maschinellen Bearbeitungsbereich zu registrieren; eine Bestimmungseinheit, die eingerichtet ist, um zu bestimmen, ob ein Block des maschinellen Bearbeitungsprogramms ein nicht-schneidender Block ist oder nicht; eine Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block, die eingerichtet ist, um einen nicht-schneidenden Block des maschinellen Bearbeitungsprogramms zu analysieren, falls der nicht-schneidende Block eine Bewegung mit umfasst, um zu bestimmen, ob ein Bewegungsweg eines Werkzeugs gemäß Anweisung durch diesen Block sich innerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist, und die demgegenüber eingerichtet ist, um zu bestimmen, ob eine Werkzeugposition während einer Ausführung jenes nicht-schneidenden Blocks sich innerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifizierten Bereich registriert ist, falls der nicht-schneidende Block des maschinellen Bearbeitungsprogramms keine Bewegung mit umfasst; und eine Erlangungseinheit für Programmneustartblockdaten, die eingerichtet ist, um: - die Programmneustartblockdaten des nicht-schneidenden Blocks zu erlangen, in dem ein Werkzeugweg oder eine Werkzeugposition durch die Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block als sich innerhalb des maschinellen Bearbeitungsbereichs befindend bestimmt und entnommen wurde; - zusätzlich zu den Programmneustartblockdaten eines Blocks des maschinellen Bearbeitungsprogramms die Programmneustartblockdaten von unmittelbar vorangegangenen und nachfolgenden Blöcken des Blocks zu erlangen, falls durch eine Passierblockbestimmungseinheit für einen spezifizierten Bereich bestimmt wird, dass der Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block eine Grenze des registrierten maschinellen Bearbeitungsbereichs passiert; und eine Listenanzeigeeinheit, die eingerichtet ist, um eine Liste einer Vielzahl von Programmneustartblockdatensätzen anzuzeigen, die durch die Erlangungseinheit für Programmneustartblockdaten erlangt ist; eine Auswahleinheit für Programmneustartblockdaten, die eingerichtet ist, um einen der Programmneustartblockdatensätze auszuwählen, der in einer Liste angezeigt ist; eine Anzeigeeinheit für ein maschinelles Bearbeitungsprogramm, die eingerichtet ist, um ein maschinelles Bearbeitungsprogramm anzuzeigen, das dem ausgewählten Programmneustartblockdatensatz benachbart ist; und eine Setzeinheit, die eingerichtet ist, um den ausgewählten Programmneustartblockdatensatz oder einen Block des benachbarten maschinellen Bearbeitungsprogramms als einen Startblock und einen Endblock eines Programms zu setzen, das durch die Programmneustartfunktion wieder aufgenommen wird.
  4. Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist, gemäß Anspruch 3, wobei der nicht-schneidende Block zumindest eines der folgenden umfasst: ein Erlangungscode für Programmneustartblockdaten, der als ein nicht-schneidender Befehl zur Erlangung der Programmneustartblockdaten vorab registriert ist, ein schneller Umkehrbefehl, ein Hilfsfunktionsbefehl, ein Befehl zum Bewegen einer vorab registrierten, gesteuerten Achse, ein Werkzeugpositionskorrekturbefehl, ein Verweilbefehl, ein Spindelanhaltebefehl, ein Spindeldrehbefehl und ein Unterprogrammaufrufbefehl.
  5. Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist, gemäß Anspruch 3, wobei die Innerhalb- oder Außerhalbbestimmungseinheit für einen nicht-schneidenden Block bestimmt, ob eine Sequenz der distalen Endpunkte des Werkzeugs, die durch Korrigieren des Bewegungswegs des Werkzeugs hin zu den Positionen der distalen Endpunkte des Werkzeugs erlangt wird, die Grenze des maschinellen Bearbeitungsbereichs passiert oder nicht, oder bestimmt, ob eine Position eines distalen Endpunkts des Werkzeugs, die durch Korrigieren der Werkzeugposition hin zu der Position des distalen Endpunkts des Werkzeugs erlangt wird, sich innerhalb des maschinellen Bearbeitungsbereichs befindet.
  6. Numerische Steuervorrichtung (10), die eine Werkzeugmaschine (50, 51, 52, 62, 63) steuert, die eine Vielzahl von gesteuerten Achsen aufweist, durch Analysieren und Ausführen von Blöcken eines maschinellen Bearbeitungsprogramms, um ein Werkstück maschinell zu bearbeiten, und die eine Programmneustartfunktion aufweist, in der Programmneustartblockdaten zur Wiederaufnahme und zum Beenden einer ausgesetzten maschinellen Bearbeitung des Werkstücks erlangt werden und eine teilweise maschinelle Bearbeitung des Werkstücks durchgeführt wird auf der Grundlage der erlangten Programmneustartblockdaten, wobei die numerische Steuervorrichtung umfasst: eine Registrierungseinheit für einen spezifizierten Bereich, die eingerichtet ist, um einen maschinellen Bearbeitungsbereich von jeder der gesteuerten Achsen zu spezifizieren und den spezifizierten maschinellen Bearbeitungsbereich zu registrieren; eine Bestimmungseinheit, die eingerichtet ist, um zu bestimmen, ob ein Block des maschinellen Bearbeitungsprogramms ein nicht-schneidender Block ist oder nicht; eine Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block, die eingerichtet ist, um einen nicht-schneidenden Block des maschinellen Bearbeitungsprogramms zu analysieren, falls der nicht-schneidende Block eine Bewegung mit umfasst, um zu bestimmen, ob ein Bewegungsweg eines Werkzeugs gemäß Anweisung durch diesen Block sich außerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifischen Bereich registriert ist, und die demgegenüber eingerichtet ist, um zu bestimmen, ob eine Werkzeugposition während einer Ausführung jenes nicht-schneidenden Blocks sich außerhalb des maschinellen Bearbeitungsbereichs befindet oder nicht, der in der Registrierungseinheit für einen spezifischen Bereich registriert ist oder nicht, falls der nicht-schneidende Block des maschinellen Bearbeitungsprogramms keine Bewegung mit umfasst; und eine Erlangungseinheit für Programmneustartblockdaten, die eingerichtet ist, um: - die Programmneustartblockdaten des nicht-schneidenden Blocks zu erlangen, in dem ein Werkzeugweg oder eine Werkzeugposition durch die Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block als sich außerhalb des maschinellen Bearbeitungsbereichs befindend bestimmt und entnommen wurde, und - zusätzlich zu den Programmneustartblockdaten eines Blocks des maschinellen Bearbeitungsprogramms die Programmneustartblockdaten von unmittelbar vorangegangenen und nachfolgenden Blöcken des Blocks zu erlangen, falls durch eine Passierblockbestimmungseinheit für einen spezifizierten Bereich bestimmt wird, dass der Bewegungsweg eines Werkzeugs gemäß Anweisung durch den Block eine Grenze des registrierten maschinellen Bearbeitungsbereichs passiert; und eine Listenanzeigeeinheit, die eingerichtet ist, um eine Liste einer Vielzahl von Programmneustartblockdatensätzen anzuzeigen, die durch die Erlangungseinheit für Programmneustartblockdaten erlangt sind; eine Auswahleinheit für Programmneustartblockdaten, die eingerichtet ist, um einen der Programmneustartblockdatensätze auszuwählen, der in einer Liste angezeigt ist; eine Anzeigeeinheit für ein maschinelles Bearbeitungsprogramm, die eingerichtet ist, um ein maschinelles Bearbeitungsprogramm anzuzeigen, das dem ausgewählten Programmneustartblockdatensatz benachbart ist; und eine Setzeinheit, die eingerichtet ist, um den ausgewählten Programmneustartblockdatensatz oder einen Block des benachbarten maschinellen Bearbeitungsprogramms als einen Startblock und einen Endblock eines Programms zu setzen, das durch die Programmneustartfunktion wieder aufgenommen wird.
  7. Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist, gemäß Anspruch 6, wobei der nicht-schneidende Block zumindest eines der folgenden umfasst: ein Erlangungscode für Programmneustartblockdaten, die als nicht-schneidender Befehl zur Erlangung der Programmneustartblockdaten vorab registriert ist, ein schneller Umwandlungsbefehl, ein Hilfsfunktionsbefehl, ein Befehl zur Bewegung einer vorab registrierten, gesteuerten Achse, ein Werkzeugpositionskorrekturbefehl, ein Verweilbefehl, ein Spindelanhaltebefehl, ein Spindeldrehbefehl und ein Unterprogrammaufrufbefehl umfassen.
  8. Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist, gemäß Anspruch 6, wobei die Außerhalb- oder Innerhalbbestimmungseinheit für einen nicht-schneidenden Block bestimmt, ob eine Sequenz der distalen Endpunkte des Werkzeugs, die durch Korrigieren des Bewegungswegs des Werkzeugs zu den Positionen der distalen Endpunkte des Werkzeugs erlangt ist, die Grenze des maschinellen Bearbeitungsbereichs passiert oder nicht, oder bestimmt, ob eine Position eines distalen Endpunkts des Werkzeugs, die durch Korrigieren der Werkzeugposition zu der Position des distalen Endpunkts des Werkzeugs erlangt ist, sich außerhalb des maschinellen Bearbeitungsbereichs befindet.
  9. Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist, gemäß zumindest einem der Ansprüche 1, 3 und 6, wobei die Programmneustartblockdaten Daten sind, die zur Wiederaufnahme des Programms erforderlich sind, und die zumindest eine einer Blocknummer eines momentan ausgeführten maschinellen Bearbeitungsprogramms, Start- und Endpositionen des momentan ausgeführten Blocks, verschiedene Abschnitte von Modalinformationen eines momentan ausgeführten Blocks, eine Nummer einer Hauptprogramm- und einer Unterprogrammaufrufblockposition und eine Gesamtanzahl von Blöcken von dem Hauptprogramm hin zu dem momentan ausgeführten Block umfassen.
DE102013010853.5A 2012-07-05 2013-06-28 Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist Active DE102013010853B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-151307 2012-07-05
JP2012151307A JP5543534B2 (ja) 2012-07-05 2012-07-05 プログラム再開機能を備えた数値制御装置

Publications (2)

Publication Number Publication Date
DE102013010853A1 DE102013010853A1 (de) 2014-01-09
DE102013010853B4 true DE102013010853B4 (de) 2021-11-11

Family

ID=49780762

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102013010853.5A Active DE102013010853B4 (de) 2012-07-05 2013-06-28 Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist

Country Status (4)

Country Link
US (1) US9494929B2 (de)
JP (1) JP5543534B2 (de)
CN (1) CN103529753B (de)
DE (1) DE102013010853B4 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5956506B2 (ja) * 2014-05-23 2016-07-27 ファナック株式会社 プログラム加工再開機能を有する数値制御装置
JP6444933B2 (ja) * 2016-04-25 2018-12-26 ファナック株式会社 非切削状態において消費電力低減を行う数値制御装置
JP6542710B2 (ja) * 2016-05-26 2019-07-10 ファナック株式会社 アラーム解決のためのプログラム修正支援機能を備えた数値制御装置
WO2017214636A1 (en) * 2016-06-11 2017-12-14 Corrpro Companies, Inc. System and method for protecting one or more pipes against corrosion and corrosion-protected pipe
JP6408040B2 (ja) * 2017-01-17 2018-10-17 ファナック株式会社 数値制御装置
JP6687575B2 (ja) * 2017-10-05 2020-04-22 ファナック株式会社 数値制御装置
JP6693927B2 (ja) * 2017-10-11 2020-05-13 ファナック株式会社 制御装置
JP2019144828A (ja) * 2018-02-20 2019-08-29 ファナック株式会社 数値制御装置
JP6748146B2 (ja) * 2018-05-17 2020-08-26 ファナック株式会社 制御装置、制御方法及び制御プログラム
JP7194965B2 (ja) * 2018-08-01 2022-12-23 中村留精密工業株式会社 工作機械
JP7022049B2 (ja) 2018-12-05 2022-02-17 ファナック株式会社 認識装置、システムおよび認識方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09160620A (ja) 1995-12-08 1997-06-20 Toshiba Mach Co Ltd 数値制御装置
JP2007226648A (ja) 2006-02-24 2007-09-06 Brother Ind Ltd 数値制御装置、数値制御方法及びコンピュータプログラム
JP2009053801A (ja) 2007-08-24 2009-03-12 Fanuc Ltd プログラム再開機能を備えた数値制御装置
EP2104013A2 (de) 2008-03-17 2009-09-23 Fanuc Ltd Numerisches Steuergerät mit Bearbeitungsneustartfunktion
DE102011015296A1 (de) 2010-05-10 2011-11-10 Fanuc Corporation Numerische Steuerung für eine mehrachsige Werkzeugmaschine

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5731003A (en) * 1980-08-01 1982-02-19 Fanuc Ltd Numerical control system
JPS59142613A (ja) * 1983-02-03 1984-08-15 Fanuc Ltd 数値制御加工再開制御装置
JPS60157607A (ja) * 1984-01-26 1985-08-17 Fanuc Ltd 数値制御方法
US4992712A (en) * 1988-09-07 1991-02-12 Mitsubishi Denki Kabushiki Kaisha Control device for industrial machine
JP2817749B2 (ja) 1991-10-07 1998-10-30 三菱電機株式会社 レーザ加工装置
WO2003032097A1 (fr) * 2001-10-03 2003-04-17 Mitsubishi Denki Kabushiki Kaisha Appareil a commande numerique
EP1548527B1 (de) * 2003-12-22 2010-02-17 Siemens Aktiengesellschaft Steuerungs- oder Regelungseinrichtung einer Werkzeug- oder Produktionsmaschine
JP2008134983A (ja) * 2006-10-30 2008-06-12 Fanuc Ltd 加工再開機能を備えた数値制御装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09160620A (ja) 1995-12-08 1997-06-20 Toshiba Mach Co Ltd 数値制御装置
JP2007226648A (ja) 2006-02-24 2007-09-06 Brother Ind Ltd 数値制御装置、数値制御方法及びコンピュータプログラム
JP2009053801A (ja) 2007-08-24 2009-03-12 Fanuc Ltd プログラム再開機能を備えた数値制御装置
EP2104013A2 (de) 2008-03-17 2009-09-23 Fanuc Ltd Numerisches Steuergerät mit Bearbeitungsneustartfunktion
DE102011015296A1 (de) 2010-05-10 2011-11-10 Fanuc Corporation Numerische Steuerung für eine mehrachsige Werkzeugmaschine

Also Published As

Publication number Publication date
US9494929B2 (en) 2016-11-15
JP2014013539A (ja) 2014-01-23
CN103529753B (zh) 2016-03-23
JP5543534B2 (ja) 2014-07-09
US20140012408A1 (en) 2014-01-09
DE102013010853A1 (de) 2014-01-09
CN103529753A (zh) 2014-01-22

Similar Documents

Publication Publication Date Title
DE102013010853B4 (de) Numerische Steuervorrichtung, die eine Programmneustartfunktion aufweist
DE102015107436B4 (de) Lernfähige Bahnsteuerung
DE102005015810B4 (de) Bearbeitungszeit-Berechnungsvorrichtung
DE102012008541B4 (de) Numerische Steuervorrichtung mit einer Operationsfunktion auf der Grundlage von Daten im Tabellenformat
DE102013011688B4 (de) Datenanzeigevorrichtung für Maschinenwerkzeuge zur Anzeige von Daten aufgrund vorgegebener Zustände
DE102010036499A1 (de) Werkzeugvektor-Anzeigevorrichtung für eine Werkzeugmaschine mit Drehachse
DE102014012868B4 (de) Datenerlangungsvorrichtung zur Erlangung der Ursache des Anhaltens einer Antriebsachse und von darauf bezogenen Informationen
DE102008001011A1 (de) Numerische Steuervorrichtung
DE102012108963A1 (de) Numerische Steuerung mit einer Darstellung der Werkzeug-Trajektorie
DE102018107864B4 (de) Offline-Programmiervorrichtung und -verfahren mit der Funktion zur Erzeugung eines Programms zur Detektion einer Werkstückposition mittels eines Kontaktsensors
DE102012000932A1 (de) Numerische Steuerungsvorrichtung mit einer Werkstückfehler-Kompensationseinheit für eine dreiachsige Werkzeugmaschine
DE102016000689B4 (de) Zur teilweisen Korrektur eines Bearbeitungszyklus fähige numerische Steuerung
DE102017116459B4 (de) Cad/cam-cnc-integriertes system
DE102016000160B4 (de) Numerische Steuerung, eingerichtet für einen Teach-Betrieb mit wechselnden Arbeitsbereichen
EP0120204A1 (de) Verfahren zum Wiederanfahren eines Werkzeuges an eine Werkstückkontur
DE102013102656B4 (de) Schneidstrecken-berechnungseinrichtung für eine mehrachsen-werkzeugmaschine
DE102020124734A1 (de) Simulationsgerät
DE102015016489B4 (de) Numerische Steuerung
DE102004019653B4 (de) Simulationsvorrichtung
DE102015008246B4 (de) Numerische Steuerung mit Werkzeugspitzenpunktsteuerungsfunktion
DE102017108492B4 (de) Steuervorrichtung eines Roboters, die ein Betriebsprogramm, in dem der Zustand einer zusätzlichen Achse enthalten ist, anzeigt
DE102015011081A1 (de) Numerische Steuerungsvorrichtung
DE102014009190B4 (de) Numerische Steuereinheit mit einer Schirmanzeigeumschaltfunktion, die einem NC-Programm nachfolgt
DE102014116481A1 (de) Werkzeugmaschine zum Abkanten und Abkantverfahren
DE102014012718A1 (de) Steuereinheit für eine zentralisierte Steuerung durch Gruppieren einer Vielzahl von Wegen

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: WUESTHOFF & WUESTHOFF PATENT- UND RECHTSANWAEL, DE

Representative=s name: WUESTHOFF & WUESTHOFF, PATENTANWAELTE PARTG MB, DE

R012 Request for examination validly filed
R012 Request for examination validly filed

Effective date: 20141030

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final