DE102019007383A1 - Numerische Steuerung - Google Patents

Numerische Steuerung Download PDF

Info

Publication number
DE102019007383A1
DE102019007383A1 DE102019007383.5A DE102019007383A DE102019007383A1 DE 102019007383 A1 DE102019007383 A1 DE 102019007383A1 DE 102019007383 A DE102019007383 A DE 102019007383A DE 102019007383 A1 DE102019007383 A1 DE 102019007383A1
Authority
DE
Germany
Prior art keywords
program
unit
look
ahead
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102019007383.5A
Other languages
English (en)
Inventor
Daisuke UENISHI
Chikara TANGO
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 DE102019007383A1 publication Critical patent/DE102019007383A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • 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/408Numerical 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 data handling or data format, e.g. reading, buffering or conversion of data
    • 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/33Director till display
    • G05B2219/33127Display each control parameter by name and its value
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35386Look ahead processing of plural block data from buffer
    • 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/42Servomotor, servo controller kind till VSS
    • G05B2219/42173Acceleration deceleration

Landscapes

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

Abstract

Es wird eine numerische Steuerung bereitgestellt, die eine Position in einem Bearbeitungsprogramm erfassen kann, an der aufgrund unzureichender Vorgriffsblöcke, die zur Bestimmung eines Beschleunigungs-/Verlangsamungsvorgangs verwendet werden, das Auftreten einer Geschwindigkeitssteueranomalie wahrscheinlich ist, und die ab dem Beginn des Bearbeitungsprogramms von der Position parallel zu einem Vorgriff auf das Bearbeitungsprogramm eine Vorgriffsverarbeitungsfunktion einleiten kann. Eine numerische Steuerung 100 umfasst eine Programmausführeinheit 111, die ein Bearbeitungsprogramm ausführt, eine Programmvorgriffseinheit 112, die parallel zur Ausführung des Bearbeitungsprogramms von unterschiedlichen Blöcken in dem Bearbeitungsprogramm gleichzeitig auf das Bearbeitungsprogramm vorgreift und die eine erste Programmvorgriffseinheit 112a und eine zweite Programmvorgriffseinheit 112b umfasst, und eine Vorgriffszuordnungseinheit 115, die eine Speichereinheit zumindest in einen ersten Bereich und einen zweiten Bereich unterteilt und die erste Programmvorgriffseinheit 112a zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem ersten Bereich anweist und die zweite Programmvorgriffseinheit 112b zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem zweiten Bereich anweist.

Description

  • HINTERGRUND DER ERFINDUNG
  • Bereich der Erfindung
  • Die vorliegende Erfindung betrifft eine numerische Steuerung.
  • Verwandte Technik
  • In der heutigen Fertigungsindustrie werden IT-Elemente und andere Vorrichtungen in kleineren Maßstäben und mit höherer Präzision hergestellt, und das Interesse an einer Bearbeitung mit hoher Geschwindigkeit und hoher Präzision steigt. Zum Erzielen einer noch höheren Qualität der Bearbeitung ist die Anzahl eine Werkstückbearbeitungsprogrammen zur Bearbeitung mit hoher Geschwindigkeit und hoher Präzision gestiegen, die mit Toleranzen von geringerer Größenordnung erstellt werden.
  • Herkömmlicherweise konnten Bearbeitungsprogramme mit geringen Toleranzen aufgrund einer geringen Verarbeitungsleistung der Computer nicht realistisch genutzt werden. In den jüngsten Jahren haben sich jedoch sowohl die Leistung der Computer als auch die Leistung der computergestützten Fertigung (CAM, computer aided manufacturing) bis zu dem Punkt verbessert, an dem nun leicht Bearbeitungsprogramme mit geringen Toleranzen erstellt werden können, und es ist zu erwarten, dass sich dieser Trend in den kommenden Jahren noch verstärken wird.
  • Ein anderer Aspekt als die Toleranz, der zur Erzielung einer Bearbeitung von hoher Qualität wesentlich ist, ist die Vereinheitlichung exakter gerader Linien. Die Qualität der Bearbeitung wird erhöht, wenn eine Vibration durch eine Stabilisierung der Beschleunigung/Verlangsamung auf jeder Achse verringert wird. Dadurch ist die Anzahl der Programme für eine Bearbeitung von hoher Qualität gestiegen, die selbst exakte gerade Linien bieten.
    Daher sind Bearbeitungsprogramme heute aus mehr Blöcken aufgebaut.
  • Gemäß dem Stand der Technik greift eine numerische Steuerung auf Programme vor und liest ein Programm unter einer Reihe von vorab gespeicherten Programmen aus und verarbeitet es nach dem FIFO-Verfahren (FIFO - first in, first out, zuerst herein - zuerst hinaus) entsprechend Vorgriffsblöcken nach als nächstes auszuführenden Blöcken. Dann bestimmt die numerische Steuerung einen Beschleunigungs-/Verlangsamungsvorgang und führt eine Achsensteuerung aus.
  • Bei derartigen Programmen für eine Bearbeitung von hoher Qualität tritt jedoch das folgende Problem auf. Das heißt, die Programme weisen kurze exakte gerade Linien und eine hohe Befehlsgeschwindigkeit auf, was bedeutet, dass die zur Bestimmung des Beschleunigungs-/Verlangsamungsvorgangs verwendeten Vorgriffsblöcke nicht sichergestellt werden können, wenn die Verarbeitungszeit zum Ausführen des Programms kürzer als die für die Vorgriffsverarbeitung erforderliche Zeit ist. Dadurch wird die Beschleunigung/Verlangsamung nicht unter Berücksichtigung des Programmverhaltens bestimmt, und Änderungen der Geschwindigkeit sind nicht konstant, und es kann keine Bearbeitung von hoher Qualität erzielt werden.
  • 11 ist ein Graph, der die Differenz der Beschleunigung/Verlangsamung im Verlauf der Zeit bei einer instabilen Veränderung der Geschwindigkeit zeigt. Wie in 11 dargestellt, bewegt sich eine Geschwindigkeit bei einer Befehlsgeschwindigkeit von 6.000 mm/min anfänglich stabil. Bei 2.000 mm/min ist die Verarbeitungszeit zum Ausführen des Programms zu kurz, und die zur Bestimmung des Beschleunigungs-/Verlangsamungsvorgangs verwendeten Vorgriffsblöcke konnten nicht sichergestellt werden. Daher wurde die Geschwindigkeit instabil und bewegte sich geringfügig, wie in 11 durch den Pfeil angezeigt. Ein derartiges Verhalten ist besonders schwerwiegend, wenn eine Werkzeugmaschine wie bei einer 5-Achsen-Bearbeitung eine große Anzahl von Achsen aufweist und wenn die numerische Steuerung eine verringerte Verarbeitungsleistung aufweist. Diese Probleme können durch eine Erhöhung der Verarbeitungsleistung der für den Vorgriff auf die Bearbeitungsprogramme oder ihre Ausführung verwendeten numerischen Steuerung gelöst werden. Ähnliche Probleme treten jedoch auf, wenn die Befehlsgeschwindigkeit weiter erhöht wird, indem die Programme detaillierter erstellt oder die Maschinen aufgerüstet werden.
  • Zur Bereitstellung einer Lösung dieser Probleme offenbart die in Patentschrift 1 beschriebene Erfindung eine Technologie, bei der eine numerische Steuerung überwacht, ob ein Mangel oder ein Überschuss an Daten in einem Puffer besteht, die von dem FIFO-Verfahren bis zur Verwendung von in analysierten NC-Daten bestehenden Analysedaten als Mittel zur Interpolation der Beschleunigung/Verlangsamung gehalten werden. Genauer bestimmt die Technologie, dass unzureichend Daten vorhanden sind, wenn die Menge an Daten, deren Vorhandensein in dem Puffer prognostiziert wird, unter einen unteren Grenzwert sinkt.
  • Patentschrift 1: Japanisches Patent Nr. 3723015
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Ein Beispiel einer Position, an der Daten in einem Bearbeitungsprogramm unzureichend sind, ist eine Position, an der exakte gerade Linien in Bezug aufeinander durchgehend sind, wie vorstehend beschrieben. An einer derartigen Position tritt eine Geschwindigkeitssteueranomalie auf.
  • Bei einer Vorbearbeitung existiert allgemein ausgedrückt kein Bearbeitungsprozess, bei dem exakte gerade Linien in Bezug aufeinander durchgehend sind. Stattdessen befinden sich die Vorgriffsblöcke durchgehend an einer Obergrenze, und zu viel Verarbeitungsleistung kann verwendet werden. Bei einer Fertigbearbeitung muss das Werkzeug unmittelbar vor dem Beginn der Bearbeitung gewechselt werden, und dadurch wird die Vorgriffsfunktion angehalten, oder ein Löschcode gelangt in das Programm, und die Bearbeitung beginnt ohne wesentliche Vorgriffsblöcke. Dadurch gelangt die Verarbeitung in einen Bearbeitungsabschnitt, an dem exakte gerade Linien durchgehend sind und die Vorgriffsblöcke null werden.
  • 12 ist ein Graph zum Aufzeigen Differenz der Vorgriffsblöcke im Verlauf der Zeit in dem vorstehend beschriebenen Fall.
    Bei der Vorbearbeitung werden die maximalen Vorgriffsblöcke gehalten (1.000 Blöcke, was erheblich mehr als die erforderlichen Vorgriffsblöcke ist).
    Dann gehen in einem Abschnitt, an dem die Vorgriffsfunktion aufgrund der Notwendigkeit eines Wechsels des Werkzeugs oder des Eintrags eines Löschcode in das Programm angehalten wird, die Vorgriffsblöcke zurück und werden schließlich null. Die Verarbeitung wird dann mit Verarbeitungsblöcken fortgesetzt, die der Fertigbearbeitungsverarbeitung in dem Bearbeitungsprogramm entsprechen. Die Fertigbearbeitung wird jedoch eingeleitet, während die Vorgriffsblöcke lediglich auf 300 ansteigen, und daher werden die Vorgriffsblöcke schließlich null.
  • Die in Patentschrift 1 offenbarte Technologie erhöht einfach die Priorität des NC-Datenanalyseverarbeitungsprozesses, wenn bestimmt wird, dass unzureichend Daten vorhanden sind, und bestimmt nicht, welche Daten in den NC-Daten unzureichend sind oder an welcher Position unzureichend Daten vorhanden sind, und ist daher ungeeignet zur Bewältigung von Geschwindigkeitssteueranomalien an Stellen, an denen die Daten unzureichend sind.
  • Es ist eine Aufgabe der vorliegenden Erfindung, eine numerische Steuerung bereitzustellen, die eine Position in einem Bearbeitungsprogramm erfassen kann, an der aufgrund unzureichender Vorgriffsblöcke, die zur Bestimmung eines Beschleunigungs-/Verlangsamungsvorgangs verwendet werden, das Auftreten einer Geschwindigkeitssteueranomalie wahrscheinlich ist, und zur Stabilisierung einer Vorschubgeschwindigkeit, einer Abtraggeschwindigkeit und weiterer Faktoren von der Position ab dem Beginn des Bearbeitungsprogramms parallel zu einem Vorgriff auf das Bearbeitungsprogramm eine Vorgriffsverarbeitungsfunktion einleiten kann.
    • (1) Eine numerische Steuerung gemäß der vorliegenden Erfindung ist eine numerische Steuerung zur Steuerung einer Werkzeugmaschine mit Achsen durch Ausführen eines Bearbeitungsprogramms, das aus mehreren Blöcken zusammengesetzt ist und eine Beschleunigung/Verlangsamung der Achsen steuert, wobei die numerische Steuerung umfasst: eine Steuereinheit (beispielsweise eine später zu beschreibende „CPU 11“) und eine Speichereinheit (beispielsweise ein später zu beschreibendes „RAM 13“), wobei die Steuereinheit umfasst: eine Programmausführeinheit (beispielsweise eine später zu beschreibende „Programmausführeinheit 111“), die das Bearbeitungsprogramm ausführt; eine Programmvorgriffseinheit (beispielsweise eine später zu beschreibende „Programmvorgriffseinheit 112“), die parallel zur Ausführung des Bearbeitungsprogramms von unterschiedlichen Blöcken in dem Bearbeitungsprogramm gleichzeitig auf das Bearbeitungsprogramm vorgreift und eine erste Programmvorgriffseinheit (beispielsweise eine später zu beschreibende „erste Programmvorgriffseinheit 112a“) und eine zweite Programmvorgriffseinheit (beispielsweise eine später zu beschreibende „zweite Programmvorgriffseinheit 112b“) umfasst; und eine Vorgriffszuordnungseinheit (beispielsweise eine später zu beschreibende „Vorgriffszuordnungseinheit 115“), die die Speichereinheit zumindest in einen ersten Bereich und einen zweiten Bereich unterteilt und die erste Programmvorgriffseinheit zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem ersten Bereich anweist und die zweite Programmvorgriffseinheit zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem zweiten Bereich anweist.
    • (2) Die unter Punkt (1) beschriebene numerische Steuerung kann ferner umfassen: eine Vorgriffsblock-Berechnungseinheit (beispielsweise eine später zu beschreibende „Vorgriffsblock-Berechnungseinheit 113“), die Vorgriffsblöcke berechnet, die die Differenz zwischen einer ersten Folgenummer, die die Nummer eines von der Programmausführeinheit gerade ausgeführten Blocks ist, und einer zweiten Folgenummer sind, die die Nummer eines Blocks ist, auf den von der ersten Programmvorgriffseinheit bei der Ausführung des Blocks vorgegriffen wird; und eine Erschöpfungsblock-Erfassungseinheit (beispielsweise eine später zu beschreibende „Erschöpfungsblock-Erfassungseinheit 114“), die einen Erschöpfungsblock erfasst, der ein Block ist, bei dem die Vorgriffsblöcke unter einen vorgegebenen Wert sinken, wobei die Vorgriffszuordnungseinheit nach der Erfassung des Erschöpfungsblocks die erste Programmvorgriffseinheit anweisen kann, ab einem Anfangsblock des Bearbeitungsprogramms vorzugreifen, und die zweite Programmvorgriffseinheit anweisen kann, ab dem Erschöpfungsblock vorzugreifen.
    • (3) Die unter Punkt (1) beschriebene numerische Steuerung kann ferner umfassen: eine Bearbeitungspräzisionsindex-Berechnungseinheit (beispielsweise eine später zu beschreibende „Bearbeitungspräzisionsindex-Berechnungseinheit 116“), die einen Bearbeitungspräzisionsindex berechnet, der eine Bearbeitungspräzision zu jedem Block des Bearbeitungsprogramms angibt; und eine Bearbeitungspräzisionerfordernisblock-Erfassungseinheit (beispielsweise eine später zu beschreibende „Bearbeitungspräzisionerfordernisblock-Erfassungseinheit 117“), die einen Bearbeitungspräzisionerfordernisblock erfasst, der ein Block ist, bei dem der Bearbeitungspräzisionsindex höher als ein vorgegebener Wert ist, wobei die Vorgriffszuordnungseinheit nach der Erfassung des Erschöpfungsblocks die erste Programmvorgriffseinheit anweisen kann, ab einem Anfangsblock des Bearbeitungsprogramms vorzugreifen, und die zweite Programmvorgriffseinheit anweisen kann, ab dem Bearbeitungspräzisionerfordernisblock vorzugreifen.
    • Gemäß der vorliegenden Erfindung ist es möglich, eine Position in einem Bearbeitungsprogramm zu erfassen, an der aufgrund unzureichender Vorgriffsblöcke, die zur Bestimmung eines Beschleunigungs-/Verlangsamungsvorgangs verwendet werden, das Auftreten einer Geschwindigkeitssteueranomalie wahrscheinlich ist, und von der Position ab dem Beginn des Bearbeitungsprogramms parallel zu einem Vorgriff auf das Bearbeitungsprogramm eine Vorgriffsverarbeitungsfunktion zur Stabilisierung einer Vorschubgeschwindigkeit, einer Abtraggeschwindigkeit und weiterer Faktoren einzuleiten.
  • Figurenliste
    • 1 ist ein Diagramm zur Darstellung der Konfiguration eines Steuersystems, das eine numerische Steuerung gemäß einer ersten Ausführungsform der vorliegenden Erfindung umfasst. 2 ist ein Diagramm zur Darstellung der Konfiguration der numerischen Steuerung gemäß der ersten Ausführungsform der vorliegenden Erfindung.
    • 3 ist ein Diagramm zur Darstellung von Funktionsblöcken der numerischen Steuerung gemäß der ersten Ausführungsform der vorliegenden Erfindung.
    • 4 ist ein Diagramm zur Darstellung von Funktionsblöcken der numerischen Steuerung gemäß der ersten Ausführungsform der vorliegenden Erfindung.
    • 5 ist ein Diagramm zur Darstellung eines Beispiels einer von einer Vorgriffszuordnungseinheit gemäß der ersten Ausführungsform der vorliegenden Erfindung ausgeführten Speicherzuweisung.
    • 6 ist ein Graph zum Aufzeigen einer Differenz der Vorgriffsblöcke im Verlauf der Zeit gemäß der ersten Ausführungsform der vorliegenden Erfindung.
    • 7 ist ein Ablaufdiagramm zur Veranschaulichung eines Arbeitsablaufs der numerischen Steuerung gemäß der ersten Ausführungsform der vorliegenden Erfindung.
    • 8 ist ein Ablaufdiagramm zur Veranschaulichung eines Arbeitsablaufs der numerischen Steuerung gemäß der ersten Ausführungsform der vorliegenden Erfindung.
    • 9 ist ein Diagramm zur Darstellung von Funktionsblöcken einer numerischen Steuerung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung.
    • 10 ist ein Diagramm zur Darstellung eines Arbeitsablaufs der numerischen Steuerung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung.
    • 11 ist ein Graph zum Aufzeigen einer Instabilität der Geschwindigkeit aufgrund des Unvermögens, die Vorgriffsblöcke sicherzustellen.
    • 12 ist ein Graph zum Aufzeigen einer Differenz der Vorgriffsblöcke im Verlauf der Zeit beim Stand der Technik.
  • GENAUE BESCHREIBUNG DER ERFINDUNG
  • <Erste Ausführungsform>
  • Nun wird unter Bezugnahme auf die 1 bis 8 eine erste Ausführungsform der vorliegenden Erfindung beschrieben.
  • <Konfiguration der Erfindung>
  • 1 zeigt die Konfiguration eines Steuersystems 10, das eine numerische Steuerung 100 gemäß einer ersten Ausführungsform der vorliegenden Erfindung umfasst, und einer Werkzeugmaschine 200, die von der numerischen Steuerung 100 gesteuert wird.
  • Die numerische Steuerung 100 ist eine Maschine, die zur numerischen Steuerung der Werkzeugmaschine 200 unter Verwendung von später zu beschreibenden Funktionen einen Betriebsbefehl an die Werkzeugmaschine 200 ausgibt. Eine genaue Beschreibung der Konfiguration und der Funktionen der numerischen Steuerung 100 erfolgt später.
  • Die Werkzeugmaschine 200 ist eine Vorrichtung, die eine vorgegebene Bearbeitung wie ein Abtragen ausführt. Die Werkzeugmaschine 200 umfasst einen Motor, der zur Bearbeitung eines Werkstücks angesteuert wird, und eine Spindel und eine Vorschubachse, die an dem Motor angebracht sind. Die Werkzeugmaschine 200 umfasst auch Befestigungselemente und Werkzeuge, die den jeweiligen Achsen entsprechen. Der Motor der Werkzeugmaschine 200 wird entsprechend einem Betriebsbefehl angesteuert, der von der numerischen Steuerung 100 so ausgegeben wird, dass die Werkzeugmaschine 200 eine vorgegebene Bearbeitung ausführt. Hierbei besteht hinsichtlich der Inhalte der vorgegebenen Bearbeitung keine besondere Beschränkung, und andere Typen von Bearbeitung als ein Abtragen wie ein Schleifen, ein Polieren, ein Walzen oder ein Schmieden können ebenfalls eingesetzt werden.
  • 2 stellt eine beispielhafte Konfiguration der numerischen Steuerung 100 gemäß der Ausführungsform der vorliegenden Erfindung dar.
    Die numerische Steuerung 100 umfasst hauptsächlich eine CPU 11, ein ROM 12, ein RAM 13, ein CMOS 14, Schnittstellen 15, 18 und 19, eine programmierbare Maschinensteuerung (PMC) 16, eine E-/A-Einheit 17, Achsensteuerschaltungen 30 bis 34, Servoverstärker 40 bis 44, eine Spindelsteuerschaltung 60 und einen Spindelverstärker 61.
  • Die CPU 11 ist ein Prozessor, der die gesamte numerische Steuerung 100 steuert.
    Die CPU 11 liest über einen Bus 25 ein in dem ROM 12 gespeichertes Systemprogramm aus und steuert die gesamte numerische Steuerung 100 entsprechend dem Systemprogramm.
  • In dem RAM 13 werden temporäre Berechnungsdaten und Anzeigedaten und unterschiedliche Typen von durch einen Bediener unter Verwendung einer Anzeige-/MDE-Einheit 70 eingegebenen Daten gespeichert.
  • Der CMOS-Speicher 14 ist ein nicht flüchtiger Speicher, der durch eine (nicht gezeigte) Batterie abgesichert ist und seinen Speicherzustand selbst dann beibehält, wenn der Strom für die numerische Steuerung 100 abgeschaltet ist. In dem CMOS-Speicher 14 werden ein über die Schnittstelle 15 in den CMOS-Speicher 14 gelesenes Bearbeitungsprogramm, ein über die Anzeige-/MDE-Einheit 70 in den CMOS-Speicher 14 eingegebenes Bearbeitungsprogramm und weitere Daten gespeichert.
  • In das ROM 12 werden vorab unterschiedliche Typen von Systemprogrammen zum Ausführen einer Verarbeitung in einem zum Erstellen und Editieren von Bearbeitungsprogrammen erforderlichen Editiermodus und einer Verarbeitung für einen automatischen Betrieb geschrieben.
  • Unterschiedliche Typen von Bearbeitungsprogrammen wie die Bearbeitungsprogramme zur Implementierung der vorliegenden Erfindung können unter Verwendung der Schnittstelle 15 oder der Anzeige-/MDE-Einheit 70 eingegeben und in dem CMOS-Speicher 14 gespeichert werden.
  • Die Schnittstelle 15 kann die numerische Steuerung 100 mit einer externen Vorrichtung 72 wie einem Adapter verbinden. Bearbeitungsprogramme, unterschiedliche Parameter und weitere Daten werden von der Seite der externen Vorrichtung 72 gelesen.
    Bearbeitungsprogramme, die in der numerischen Steuerung 100 editiert werden, können unter Verwendung der externen Vorrichtung 72 in einer externen Speichereinrichtung gespeichert werden.
  • Die programmierbare Maschinensteuerung (PMC) 16 gibt unter Verwendung eines in der numerischen Steuerung 100 gespeicherten Ablaufprogramms über die E-/A-Einheit 17 Signale an eine Hilfsvorrichtung (beispielsweise ein Stellglied in Form einer zum Wechseln von Werkzeugen verwendeten Roboterhand) einer Werkzeugmaschine aus und steuert die Vorrichtung.
    Die PMC 16 empfängt Signale wie die von unterschiedlichen Schaltern auf einer am Körper der Werkzeugmaschine vorgesehenen Bedienkonsole und sendet diese Signale nach dem Ausführen einer erforderlichen Signalverarbeitung eine die CPU 11.
  • Die Anzeige-/MDE-Einheit 70 ist eine manuelle Dateneingabevorrichtung, die Komponenten wie eine Anzeige und eine Tastatur umfasst.
    Die Schnittstelle 18 empfängt Befehle und Daten von einer Tastatur der Anzeige-/MDE-Einheit 70 und sendet diese Befehle und Daten eine die CPU 11.
    Die Schnittstelle 19 ist mit einer Bedienkonsole 71 verbunden. Die Bedienkonsole 71 umfasst einen manuellen Impulsgenerator.
  • Die Achsensteuerschaltungen 30 bis 34 für jede Achse empfangen Bewegungsbefehlsgrößen für jede Achse von der CPU 11 und geben die Befehle für jede Achse an die Servoverstärker 40 bis 44 aus.
  • Die Servoverstärker 40 bis 44 empfangen diese Befehle und treiben Servomotoren 50 bis 54 für jede Achse an. Jeder Servomotor 50 bis 54 für jede Achse umfasst einen Positionen-/Geschwindigkeitsdetektor. Die Positionen-/Geschwindigkeitsdetektoren geben Positionen-/Geschwindigkeits-Feedback-Signale aus, die zum Ausführen einer Feedback-Steuerung der Position/Geschwindigkeit an jede Achsensteuerschaltung 30 bis 34 zurückgeleitet werden.
    Es wird darauf hingewiesen, dass in den Blockdiagrammen auf die Darstellung dieses Positionen-/Geschwindigkeits-Feedback verzichtet wurde.
  • Die Spindelsteuerschaltung 60 empfängt einen Spindeldrehbefehl für die Werkzeugmaschine und gibt ein Spindeldrehzahlsignal an den Spindelverstärker 61 aus.
    Der Spindelverstärker 61 empfängt das Spindeldrehzahlsignal und dreht den Spindelmotor 62 der Werkzeugmaschine zum Antreiben des Werkzeugs mit der befohlenen Drehzahl.
  • Der Spindelmotor 62 ist mittels eines Zahnrads, eines Riemens oder einer anderen Komponente mit einem Impulsgeber 63 verbunden.
    Der Impulsgeber 63 gibt einen mit der Drehung der Spindel synchronen Feedback-Impuls aus.
    Der Feedback-Impuls wird über den Bus 25 von der CPU 11 gelesen.
  • Bei der in 2 dargestellten beispielhaften Konfiguration der numerischen Steuerung 100 sind fünf Achsensteuerschaltungen (die Achsensteuerschaltungen 30 bis 34) und fünf Servomotoren (die Servomotoren 50 bis 54) dargestellt.
    Die vorliegende Erfindung ist jedoch nicht auf diese Konfiguration beschränkt, und es kann jede Anzahl an Achsensteuerschaltungen und Servomotoren vorgesehen sein.
  • 3 ist ein Funktionsblockdiagramm zur Darstellung einer Funktion, mittels derer die CPU 11 über den Bus 25 in dem ROM 12 gespeicherte Systemprogramme und Anwendungsprogramme ausliest und die vorliegende Erfindung entsprechend diesen Systemprogrammen und Anwendungsprogrammen implementiert.
    Die CPU 11 umfasst eine Programmausführeinheit 111, eine Programmvorgriffseinheit 112, eine Vorgriffsblock-Berechnungseinheit 113, eine Erschöpfungsblock-Erfassungseinheit 114 und eine Vorgriffszuordnungseinheit 115.
  • Die Programmausführeinheit 111 führt ein Bearbeitungsprogramm aus.
    Genauer führt die Programmausführeinheit 111 bei dieser Ausführungsform eine Simulation des Bearbeitungsprogramms aus. Bei dieser Simulation ist beispielsweise vorzugsweise ein Werkstück in der Werkzeugmaschine 200 angeordnet, und die Werkzeugmaschine 200 wird tatsächlich betrieben, statt dass das Bearbeitungsprogramm lediglich leer ausgeführt wird. Der Grund hierfür ist, dass sich die (später zu beschreibende) Differenz der Vorgriffsblöcke im Verlauf der Zeit abhängig von der Betriebsumgebung und der Achsenkonfiguration der Werkzeugmaschine 200 verändert.
  • Parallel zu der von der Programmausführeinheit 111 ausgeführten Simulation des Bearbeitungsprogramms greift die Programmvorgriffseinheit 112 auf das Bearbeitungsprogramm vor, bevor die Simulation ausgeführt wird.
  • 4 zeigt eine beispielhafte Konfiguration der Programmvorgriffseinheit 112.
    Die Programmvorgriffseinheit 112 umfasst eine erste Programmvorgriffseinheit 112a, eine zweite Programmvorgriffseinheit 112b bis zu einer n-ten Programmvorgriffseinheit 112n.
    Diese Programmvorgriffseinheiten 112 greifen von unterschiedlichen Positionen in einem Bearbeitungsprogramm auf das Bearbeitungsprogramm vor.
  • Die Vorgriffsblöcke sind null, wenn die Position eines Blocks, auf den von der Programmvorgriffseinheit 112 vorzugreifen ist, oder die Position eines Blocks, der von der Programmausführeinheit 111 auszuführen ist, das Ende des Bearbeitungsprogramms erreicht.
    Die Vorgriffsblöcke gehen jedoch normalerweise nicht gleichmäßig auf null zurück. Die Verringerungsrate der Vorgriffsblöcke verändert sich abhängig von der Verarbeitungszeit für jeden Block, die aufgrund einer Änderung der Krümmung der Bearbeitungsbahn oder der Achsenkonfiguration unterschiedlich ist.
  • Insbesondere wenn die Geschwindigkeit, mit der die Programmausführeinheit 111 das Bearbeitungsprogramm ausführt, schneller wird und die Verarbeitungszeit für jeden Block an einer Position in dem Bearbeitungsprogramm, an der exakte gerade Linien durchgehend sind, kürzer wird, nimmt die Rückgangsrate der Vorgriffsblöcke zu.
    Wenn dies geschieht, können die Vorgriffsblöcke, die zur Bestimmung des Beschleunigungs-/Verlangsamungsvorgangs verwendet werden, nicht sichergestellt werden, und es tritt eine Geschwindigkeitssteueranomalie auf, bei der die Änderung der Geschwindigkeit nicht mehr konstant ist.
  • Bei dieser Ausführungsform umfasst die Programmvorgriffseinheit 112, wie in 4 dargestellt, die mehreren Programmvorgriffseinheiten, d.h. die erste Programmvorgriffseinheit 112a, die zweite Vorgriffseinheit 112b bis zur n-ten Programmvorgriffseinheit 112n. Parallel zu dem Vorgriff durch die erste Programmvorgriffseinheit 112a ab dem Beginn des Bearbeitungsprogramms greifen die zweite Programmvorgriffseinheit 112b bis n-te Programmvorgriffseinheit 112n ab einem Block, an dem das Auftreten einer Geschwindigkeitssteueranomalie wahrscheinlich ist, in dem Bearbeitungsprogramm vor und speichern diesen Block in dem Speicher.
    Wenn dann die Programmausführeinheit 111 den Block ausführt, an dem das Auftreten einer Geschwindigkeitssteueranomalie wahrscheinlich ist, wird der Block, auf den von der zweiten Programmvorgriffseinheit 112b bis n-ten Programmvorgriffseinheit 112n bereits zugegriffen wurde und der in dem Speicher gespeichert wurde, ausgeführt und verbraucht.
  • Der Kürze halber wird hier ein Fall beschrieben, in dem die Programmvorgriffseinheit 112 die erste Programmvorgriffseinheit 112a und die zweite Programmvorgriffseinheit 112b umfasst, doch die vorliegende Erfindung ist nicht auf diese Konfiguration beschränkt.
  • Die Vorgriffsblock-Berechnungseinheit 113 berechnet die Vorgriffsblöcke. Diese Zahl ist die Differenz zwischen der Folgenummer eines von der Programmausführeinheit 111 gerade ausgeführten Blocks und der Folgenummer eines Blocks, auf den von der Programmvorgriffseinheit 112 zu dem Zeitpunkt vorgegriffen wird, zu dem der Block ausgeführt wird.
  • Insbesondere berechnet die Vorgriffsblock-Berechnungseinheit 113 bei dieser Ausführungsform die Vorgriffsblöcke als Differenz zwischen der Folgenummer des gerade ausgeführten Blocks und der Folgenummer des Blocks, auf den von der ersten Programmvorgriffseinheit 112a vorgegriffen wird, wenn die Programmausführeinheit 111 die erste Simulation des Bearbeitungsprogramms ausführt.
  • Die Erschöpfungsblock-Erfassungseinheit 114 vergleicht die Vorgriffsblöcke mit einem festgelegten Wert und erfasst den Block an dem Punkt, an dem die Vorgriffsblöcke unter den festgelegten Wert sinken.
    Dieser Block wird als „Erschöpfungsblock“ bezeichnet.
  • Wenn bei dieser Ausführungsform die zweite Simulation des Bearbeitungsprogramms ausgeführt wird oder wenn das Bearbeitungsprogramm tatsächlich ausgeführt wird, greift die erste Programmvorgriffseinheit 112a ab dem Beginn des Bearbeitungsprogramms vor, und die zweite Programmvorgriffseinheit 112b greift parallel zu diesem Vorgang ab dem „Erschöpfungsblock“ auf das Bearbeitungsprogramm vor.
  • Die Vorgriffszuordnungseinheit 115 unterteilt einen Speicher (beispielsweise das vorstehend beschriebene RAM 13), in dem Blöcke gespeichert werden, auf die von der Programmvorgriffseinheit 112 vorgriffen wird, in einen ersten Bereich, der von der ersten Programmvorgriffseinheit 112a verwendet wird, und einen zweiten Bereich, der von der zweiten Programmvorgriffseinheit 112b verwendet wird.
    Des Weiteren weist die Vorgriffszuordnungseinheit 115 die erste Programmvorgriffseinheit 112a zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem ersten Bereich bei gleichzeitigem Vorgriff ab dem Beginn des Bearbeitungsprogramms und die zweite Programmvorgriffseinheit 112b zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem zweiten Bereich bei gleichzeitigem Vorgriff ab dem Erschöpfungsblock an.
  • Dadurch speichert die erste Programmvorgriffseinheit 112a während eines Vorgriffs ab dem Beginn des Bearbeitungsprogramms Vorgriffsblöcke in dem ersten Bereich, und die zweite Programmvorgriffseinheit 112b speichert während eines Vorgriffs ab dem Erschöpfungsblock Vorgriffsblöcke in dem zweiten Bereich.
    Die Programmausführeinheit 111 führt zuerst den in dem ersten Bereich gespeicherten Block aus und führt nach dem Verbrauch dieses Blocks den in dem zweiten Bereich gespeicherten Block aus und verbraucht ihn.
  • 5 zeigt ein Beispiel einer Vorgriffszuordnung durch die Vorgriffszuordnungseinheit 115.
    In dem in 5 dargestellten Bearbeitungsprogramm ist die Nummer M198P0001 (ROUGH) eine Anweisung für eine Vorbearbeitung, und die Nummer „M198P0002“ (FINISH) ist eine Anweisung für eine Fertigbearbeitung.
    Die Nummer „M198P0002 (FINISH)“ entspricht einem Erschöpfungsblock.
  • Die Vorgriffszuordnungseinheit 115 unterteilt 1.000 Blöcke, die die Obergrenze des Speichers sind, in 300 Blöcke zur Verwendung durch die erste Programmvorgriffseinheit 112a und 700 Blöcke zur Verwendung durch die zweite Programmvorgriffseinheit 112b, und klassifiziert die zuerst genannten Blöcke als ersten Bereich und die zuletzt genannten Blöcke als zweiten Bereich.
    Anschließend weist Vorgriffszuordnungseinheit 115 die erste Programmvorgriffseinheit 112a zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem ersten Bereich während des Vorgriffs ab dem Beginn des Bearbeitungsprogramms und die zweite Programmvorgriffseinheit 112b zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem zweiten Bereich während eines Vorgriffs ab dem Erschöpfungsblock „M198P0002 (FINISH)“ an. Dadurch werden die in dem Erschöpfungsblock enthaltenen 700 Blöcke vor der Verarbeitung des Erschöpfungsblocks durch die Programmausführeinheit 111 in dem zweiten Bereich gespeichert. Wenn die Programmausführeinheit 111 beginnt, den Erschöpfungsblock zu verarbeiten, greift die zweite Programmvorgriffseinheit 112b ab dem 701. Block in dem Erschöpfungsblock vor, weil die 700 in dem Erschöpfungsblock enthaltenen Blöcke bereits in dem zweiten Bereich gespeichert sind.
  • Gemäß 5 ist der Speicher der Kürze halber in den ersten Bereich und den zweiten Bereich unterteilt, doch der Speicher ist nicht auf diese Konfiguration beschränkt.
    Der Speicher kann beispielsweise entsprechend der Anzahl an Programmvorgriffseinheiten 112 in eine beliebige Anzahl an Bereichen unterteilt werden.
  • Durch diese Ausgestaltung der numerischen Steuerung 100 gemäß der ersten Ausführungsform ist es möglich, eine Position in dem Bearbeitungsprogramm zu erfassen, an der das Auftreten einer Geschwindigkeitssteueranomalie aufgrund unzureichender Vorgriffsblöcke, die zur Bestimmung eines Beschleunigungs-/Verlangsamungsvorgangs verwendet werden, wahrscheinlich ist, und ab der Position parallel zu einem Vorgriff auf das Bearbeitungsprogramm ab dem Beginn des Bearbeitungsprogramms eine Vorgriffsverarbeitungsfunktion zu starten.
  • 6 ist ein Graph zum Aufzeigen der normalen Differenz der Vorgriffsblöcke aufgrund der numerischen Steuerung 100 gemäß der ersten Ausführungsform.
    Weil während der Vorbearbeitung lediglich 300 Blöcke zugeordnet werden, werden die Vorgriffsblöcke während der Vorbearbeitung auf 300 Blöcken gehalten.
    Anschließend gehen die Vorgriffsblöcke in einem Abschnitt, in dem die Vorgriffsfunktion aufgrund der Notwendigkeit eines Wechsels des Werkzeugs oder des Eintrags eines Löschcodes in das Programm angehalten wird, zurück und werden schließlich null.
    Die Verarbeitung wird dann mit der Verarbeitung des Erschöpfungsblocks fortgesetzt, die in dem Bearbeitungsprogramm der Fertigbearbeitungsverarbeitung entspricht. Weil die zweite Programmvorgriffseinheit 112b 700 Blöcke in dem zweiten Bereich in dem Speicher gespeichert hat, betragen die Vorgriffsblöcke 700.
    Ferner beginnt die zweite Programmvorgriffseinheit 112b, auf Blöcke nach dem in dem zweiten Bereich gespeicherten Block des Speichers vorzugreifen, und die Vorgriffsblöcke steigen auf 1.000 an.
    Anschließend gehen die Vorgriffsblöcke zurück, wenn die Programmausführeinheit 111 das Bearbeitungsprogramm ausführt, doch die Vorgriffsblöcke werden nicht null.
  • <Arbeitsablauf der Erfindung>
  • Nun werden unter Bezugnahme auf 7 bis 8 die Arbeitsabläufe der numerischen Steuerung 100 gemäß der ersten Ausführungsform der vorliegenden Erfindung beschrieben.
  • <Arbeitsablauf bei der Erfassung eines Erschöpfungsblocks>
  • 7 ist ein Ablaufdiagramm zur Veranschaulichung des Arbeitsablaufs bei der Erfassung des Erschöpfungsblocks. In Schritt S11 führt die Programmausführeinheit 111 eine Simulation des Bearbeitungsprogramms aus.
  • In Schritt S12 greift die Programmvorgriffseinheit 112 (die erste Programmvorgriffseinheit 112a) parallel zu der von der Programmausführeinheit 111 ausgeführten Simulation des Bearbeitungsprogramms vor der Ausführung der Simulation auf das Bearbeitungsprogramm vor.
  • In Schritt S13 berechnet die Vorgriffsblock-Berechnungseinheit 113 die Vorgriffsblöcke.
  • Wenn in Schritt S14 die Vorgriffsblöcke unter einen vorgegebenen Wert sinken (S14: JA), wird die Verarbeitung mit Schritt S15 fortgesetzt.
    Wenn die Vorgriffsblöcke mehr als der vorgegebene Wert sind oder mit diesem übereinstimmen (S14: NEIN), wird die Verarbeitung mit den Schritten S11 und S12 fortgesetzt.
  • In S15 erfasst die Erschöpfungsblock-Erfassungseinheit 114 den Erschöpfungsblock.
  • <Arbeitsablauf bei der Vorgriffszuordnung>
  • 8 ist ein Ablaufdiagramm zur Veranschaulichung des Arbeitsablaufs bei der Vorgriffszuordnung.
    In Schritt S21 ordnet die Vorgriffszuordnungseinheit 115 den Vorgriffsvorgang für das Bearbeitungsprogramm der ersten Programmvorgriffseinheit 112a und der zweiten Programmvorgriffseinheit 112b zu.
    Genauer unterteilt die Vorgriffszuordnungseinheit 115 den Speicher, in dem die Blöcke gespeichert werden, auf die von der Programmvorgriffseinheit 112 zugegriffen wird, in einen ersten Bereich zur Verwendung durch die erste Programmvorgriffseinheit 112a und einen zweiten Bereich zur Verwendung durch die zweite Programmvorgriffseinheit 112b. Anschließend weist die Vorgriffszuordnungseinheit 115 die erste Programmvorgriffseinheit 112a zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem ersten Bereich während eines Vorgriffs ab dem Beginn des Bearbeitungsprogramms und die zweite Programmvorgriffseinheit 112b zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem zweiten Bereich während eines Vorgriffs ab dem Erschöpfungsblock an.
  • In Schritt S22 führt die Programmausführeinheit 111 das Bearbeitungsprogramm aus.
    In Schritt S23 führt die erste Programmvorgriffseinheit 112a ab dem Beginn des Bearbeitungsprogramms parallel zur Ausführung des Bearbeitungsprogramms durch die Programmausführeinheit 111 vor der Ausführung des Bearbeitungsprogramms einen Vorgriff aus.
  • In Schritt S24 die greift zweite Programmvorgriffseinheit 112b parallel zu dem Vorgriff auf das Bearbeitungsprogramm durch die erste Programmvorgriffseinheit 112a ab dem Erschöpfungsblock auf das Bearbeitungsprogramm vor.
  • <Ergebnisse der ersten Ausführungsform>
  • Die numerische Steuerung 100 gemäß der ersten Ausführungsform der vorliegenden Erfindung umfasst die Programmvorgriffseinheit 112, die die erste Programmvorgriffseinheit 112a und die zweite Programmvorgriffseinheit 112b umfasst, die parallel zur Ausführung des Bearbeitungsprogramms von unterschiedlichen Blöcken in dem Bearbeitungsprogramm gleichzeitig auf das Bearbeitungsprogramm vorgreifen, und die Vorgriffszuordnungseinheit 115, die einen Speicher zumindest in einen ersten Bereich und einen zweiten Bereich unterteilt, weist die erste Programmvorgriffseinheit 112a zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem ersten Bereich und die zweite Programmvorgriffseinheit 112b zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem zweiten Bereich an.
  • Dadurch ist es möglich, eine Position in einem Bearbeitungsprogramm zu erfassen, an der aufgrund unzureichender Vorgriffsblöcke, die zur Bestimmung eines Beschleunigungs-/Verlangsamungsvorgangs verwendet werden, das Auftreten einer Geschwindigkeitssteueranomalie wahrscheinlich ist, und von dieser Position aus eine Vorgriffsverarbeitungsfunktion zur Stabilisierung einer Vorschubgeschwindigkeit, einer Abtraggeschwindigkeit und weiterer Faktoren zu starten.
  • Die numerische Steuerung 100 umfasst auch die Vorgriffsblock-Berechnungseinheit 113, die die Vorgriffsblöcke berechnet, und die Erschöpfungsblock-Erfassungseinheit 114, die den Erschöpfungsblock erfasst, an dem die Vorgriffsblöcke unter einen vorgegebenen Wert sinken. Nach der Erfassung des Erschöpfungsblocks weist die Vorgriffszuordnungseinheit 115 die erste Programmvorgriffseinheit 112a an, ab dem Beginn des Bearbeitungsprogramms vorzugreifen, und weist die zweite Programmvorgriffseinheit 112b an, ab dem Erschöpfungsblock vorzugreifen.
  • Dadurch kann die numerische Steuerung 100 gleichzeitig und parallel ab dem Beginn des Bearbeitungsprogramms und ab dem Erschöpfungsblock, bei dem die Vorgriffsblöcke unzureichend sind, einen Vorgriff ausführen.
  • <Zweite Ausführungsform>
  • Nun wird unter Bezugnahme auf die 9 und 10 eine zweite Ausführungsform der vorliegenden Erfindung beschrieben. Der Kürze halber sind nachstehend lediglich Komponenten einer numerischen Steuerung 100A gemäß der zweiten Ausführungsform beschrieben, die sich von denen der numerischen Steuerung 100 gemäß der ersten Ausführungsform unterscheiden.
  • <Konfiguration der Erfindung>
  • Die numerische Steuerung 100A gemäß der zweiten Ausführungsform unterscheidet sich dadurch von der numerischen Steuerung 100 gemäß der ersten Ausführungsform, dass die numerische Steuerung 100A anstelle der CPU 11 eine CPU 11A umfasst.
  • 9 ist ein funktionales Blockdiagramm der CPU 11A. Die CPU 11A unterscheidet sich dadurch von der CPU 11, dass die CPU 11A keine Vorgriffsblock-Berechnungseinheit 113 oder Erschöpfungsblock-Erfassungseinheit 114 und stattdessen eine Bearbeitungspräzisionsindex-Berechnungseinheit 116 und eine Bearbeitungspräzisionerfordernisblock-Erfassungseinheit 117 umfasst.
  • Die Bearbeitungspräzisionsindex-Berechnungseinheit 116 berechnet einen Bearbeitungspräzisionsindex, der angibt, wie viel Bearbeitungspräzision für jeden Block erforderlich ist, aus dem das Bearbeitungsprogramm zusammengesetzt ist. Die Bearbeitungspräzisionsindex-Berechnungseinheit 116 berechnet den Bearbeitungspräzisionsindex anhand der Anzahl an exakten geraden Linien, die in jedem Block abgespant werden, oder der Anzahl an Linien in mit jedem Block verbundenen Subroutinen.
  • Die Bearbeitungspräzisionerfordernisblock-Erfassungseinheit 117 vergleicht den Bearbeitungspräzisionsindex zur Erfassung eines Blocks, bei dem der Bearbeitungspräzisionsindex höher als ein vorgegebener Wert ist, mit dem vorgegebenen Wert.
    Dieser Block wird hier als „Bearbeitungspräzisionerfordernisblock“ bezeichnet.
  • Bei dieser Ausführungsform greift die erste Programmvorgriffseinheit 112a bei der zweiten Simulation des Bearbeitungsprogramms ab dem Beginn des Bearbeitungsprogramms vor, und die zweite Programmvorgriffseinheit 112b greift parallel zu diesem Vorgang ab dem „Bearbeitungspräzisionerfordernisblock“ vor.
  • <Arbeitsablauf der Erfindung>
  • Nun wird unter Bezugnahme auf 10 der Arbeitsablauf der numerischen Steuerung 100A gemäß der zweiten Ausführungsform der vorliegenden Erfindung beschrieben.
  • <Arbeitsablauf bei der Erfassung eines Bearbeitungspräzisionerfordernisblocks>
  • 10 ist ein Ablaufdiagramm zur Veranschaulichung des Arbeitsablaufs bei der Erfassung des Bearbeitungspräzisionerfordernisblocks.
    In Schritt S31 führt die Programmausführeinheit 111 eine Simulation des Bearbeitungsprogramms aus.
  • In Schritt S32 greift die Programmvorgriffseinheit 112 (die erste Programmvorgriffseinheit 112a) parallel zu der von der Programmausführeinheit 111 ausgeführten Simulation des Bearbeitungsprogramms vor der Ausführung der Simulation auf das Bearbeitungsprogramm vor.
  • In Schritt S33 berechnet die Bearbeitungspräzisionsindex-Berechnungseinheit 116 den Bearbeitungspräzisionsindex.
  • Wenn in Schritt S34 der Bearbeitungspräzisionsindex höher als ein vorgegebener Wert ist (S34: JA), wird die Verarbeitung mit Schritt S35 fortgesetzt.
    Wenn der Bearbeitungspräzisionsindex kleiner als der vorgegebene Wert ist oder mit diesem übereinstimmt (S34: NEIN), wird die Verarbeitung mit den Schritten S31 und S32 fortgesetzt.
  • In Schritt S35 erfasst die Bearbeitungspräzisionerfordernisblock-Erfassungseinheit 117 den Bearbeitungspräzisionerfordernisblock.
  • <Arbeitsablauf bei der Vorgriffszuordnung>
  • Der Arbeitsablauf bei der Vorgriffszuordnung durch die numerische Steuerung 100A gemäß der zweiten Ausführungsform stimmt mit der Ausnahme, dass die zweite Programmvorgriffseinheit 112b den Vorgriff statt ab dem Erschöpfungsblock ab dem Bearbeitungspräzisionerfordernisblock ausführt, mit dem bei der Vorgriffszuordnung durch die numerische Steuerung 100 gemäß der ersten Ausführungsform überein.
  • <Ergebnisse der zweiten Ausführungsform>
  • Die numerische Steuerung 100A umfasst ferner die Bearbeitungspräzisionsindex-Berechnungseinheit 116, die den Bearbeitungspräzisionsindex berechnet, der die Bearbeitungspräzision zu jedem Block des Bearbeitungsprogramms angibt, und die Bearbeitungspräzisionerfordernisblock-Erfassungseinheit 117, die einen Bearbeitungspräzisionerfordernisblock erfasst, der ein Block ist, bei dem der Bearbeitungspräzisionsindex höher als ein vorgegebener Wert ist. Nach der Erfassung des Bearbeitungspräzisionerfordernisblocks weist die Vorgriffszuordnungseinheit 115 die erste Programmvorgriffseinheit 112a an, ab einem Anfangsblock des Bearbeitungsprogramms vorzugreifen, und weist die zweite Programmvorgriffseinheit 112b an, ab dem Bearbeitungspräzisionerfordernisblock vorzugreifen.
  • Dadurch kann die numerische Steuerung 100A ab dem Beginn des Bearbeitungsprogramms und gleichzeitig und parallel ab dem Bearbeitungspräzisionerfordernisblock vorgreifen, bei dem eine hohe Bearbeitungspräzision erforderlich ist.
  • <Modifikationsbeispiele>
  • <Modifikationsbeispiel 1>
  • Bei der vorstehend beschriebenen ersten Ausführungsform definiert die Erschöpfungsblock-Erfassungseinheit 114 einen Erschöpfungsblock als Block, bei dem die Vorgriffsblöcke unter einen vorgegebenen Wert sinken, doch die vorliegende Erfindung ist nicht auf diese Konfiguration beschränkt.
    Die Erschöpfungsblock-Erfassungseinheit 114 kann einen Erschöpfungsblock beispielsweise als Block definieren, bei dem die Rückgangsrate der Vorgriffsblöcke einen vorgegebenen Wert übersteigt.
  • <Modifikationsbeispiel 2>
  • Bei der vorstehend beschriebenen Ausführungsform werden der Arbeitsablauf zur Erfassung des Erschöpfungsblocks und der Arbeitsablauf zur Erfassung des Bearbeitungspräzisionerfordernisblocks ausgeführt, wenn die Programmausführeinheit 111 die Simulation des Bearbeitungsprogramm ausführt, doch die vorliegende Erfindung ist nicht auf diese Konfiguration beschränkt.
    Es können beispielsweise ähnliche Arbeitsabläufe bei einer tatsächlichen Bearbeitung ausgeführt werden, bei der die numerische Steuerung 100 oder 100A die Werkzeugmaschine 200 steuert.
  • <Modifikationsbeispiel 3>
  • Bei der vorstehend beschriebenen Ausführungsform erfasst die numerische Steuerung 100 die Position des Erschöpfungsblocks, und die zweite Programmvorgriffseinheit 112b greift ab dem Erschöpfungsblock vor, doch die numerische Steuerung 100 ist nicht auf diese Konfiguration beschränkt. Die numerische Steuerung 100 kann beispielsweise die Anzahl an Sekunden ab dem Beginn der Ausführung des Bearbeitungsprogramms erfassen, die dem Erschöpfungsblock entspricht, und die zweite Programmvorgriffseinheit 112b kann ab der Anzahl an Sekunden vorgreifen.
    Ähnlich kann die numerische Steuerung 100A statt der Position des Bearbeitungspräzisionerfordernisblocks die Anzahl an Sekunden ab dem Beginn der Ausführung des Bearbeitungsprogramms erfassen, die dem Bearbeitungspräzisionerfordernisblock entspricht, und die zweite Programmvorgriffseinheit 112b kann ab der Anzahl an Sekunden vorgreifen.
  • Vorstehend wurden Ausführungsformen der vorliegenden Erfindung beschrieben, doch die vorliegende Erfindung ist nicht auf die vorstehend beschriebenen Ausführungsformen beschränkt.
    Sämtliche der beschriebenen Ergebnisse sind lediglich die positivsten Ergebnisse, die durch die vorliegende Erfindung erzielt werden, und sie sind nicht auf die hier vorgelegte Beschreibung beschränkt.
  • Das von der numerischen Steuerung 100 verwendete Steuerverfahren wird durch Software implementiert.
    Bei der Verwendung von Software werden die Programme, die diese Software bilden, auf einem Computer (in der numerischen Steuerung 100 oder 100A) installiert.
    Diese Programme können auf einem entnehmbaren Medium aufgezeichnet und an einen Benutzer vertrieben werden, oder sie können über ein Netzwerk als Datei zum Herunterladen auf den Computer eines Benutzers zugänglich gemacht werden. Diese Programme können dem Computer eines Benutzers (der numerischen Steuerung 100 oder 100A) auch über ein Netzwerk als Internet-Service zur Verfügung gestellt werden, statt heruntergeladen zu werden.
  • Bezugszeichenliste
  • 10
    Steuersystem
    100
    numerische Steuerung
    111
    Programmausführeinheit
    112, 112a, 112b, 112n
    Programmvorgriffseinheit
    113
    Vorgriffsblock-Berechnungseinheit
    114
    Erschöpfungsblock-Erfassungseinheit
    115
    Vorgriffszuordnungseinheit
    116
    Bearbeitungspräzisionsindex-Berechnungseinheit
    117
    Bearbeitungspräzisionerfordernisblock-Erfassungseinheit
    200
    Werkzeugmaschine
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 3723015 [0009]

Claims (3)

  1. Numerische Steuerung (100) zur Steuerung einer Werkzeugmaschine mit Achsen durch Ausführen eines Bearbeitungsprogramms, das aus mehreren Blöcken zusammengesetzt ist und eine Beschleunigung/Verlangsamung der Achsen steuert, wobei die numerische Steuerung umfasst: eine Steuereinheit (11) und eine Speichereinheit (13), wobei die Steuereinheit (11) umfasst: eine Programmausführeinheit (111), die das Bearbeitungsprogramm ausführt; eine Programmvorgriffseinheit (112), die parallel zur Ausführung des Bearbeitungsprogramms von unterschiedlichen Blöcken in dem Bearbeitungsprogramm gleichzeitig auf das Bearbeitungsprogramm vorgreift und die eine erste Programmvorgriffseinheit (112a) und eine zweite Programmvorgriffseinheit (112b) umfasst; und eine Vorgriffszuordnungseinheit (115), die die Speichereinheit (13) zumindest in einen ersten Bereich und einen zweiten Bereich unterteilt und die erste Programmvorgriffseinheit (112a) zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem ersten Bereich anweist und die zweite Programmvorgriffseinheit (112b) zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem zweiten Bereich anweist.
  2. Numerische Steuerung (100) nach Anspruch 1, die ferner umfasst: eine Vorgriffsblock-Berechnungseinheit (113), die Vorgriffsblöcke berechnet, die die Differenz zwischen einer ersten Folgenummer, die die Nummer eines von der Programmausführeinheit (111) gerade ausgeführten Blocks ist, und einer zweiten Folgenummer sind, die die Nummer eines Blocks ist, auf den von der ersten Programmvorgriffseinheit bei der Ausführung des Blocks vorgegriffen wird; und eine Erschöpfungsblock-Erfassungseinheit (114), die einen Erschöpfungsblock erfasst, der ein Block ist, bei dem die Vorgriffsblöcke unter einen vorgegebenen Wert sinken, wobei die Vorgriffszuordnungseinheit (115) nach der Erfassung des Erschöpfungsblocks die erste Programmvorgriffseinheit (112a) anweist, ab einem Anfangsblock des Bearbeitungsprogramms vorzugreifen, und die zweite Programmvorgriffseinheit (112b) anweist, ab dem Erschöpfungsblock vorzugreifen.
  3. Numerische Steuerung (100) nach Anspruch 1, die ferner umfasst: eine Bearbeitungspräzisionsindex-Berechnungseinheit (116), die einen Bearbeitungspräzisionsindex berechnet, der eine Bearbeitungspräzision zu jedem Block des Bearbeitungsprogramms angibt; und eine Bearbeitungspräzisionerfordernisblock-Erfassungseinheit (117), die einen Bearbeitungspräzisionerfordernisblock erfasst, der ein Block ist, bei dem der Bearbeitungspräzisionsindex höher als ein vorgegebener Wert ist, wobei die Vorgriffszuordnungseinheit (115) nach der Erfassung des Erschöpfungsblocks die erste Programmvorgriffseinheit (112a) anweist, ab einem Anfangsblock des Bearbeitungsprogramms vorzugreifen, und die zweite Programmvorgriffseinheit (112b) anweist, ab dem Bearbeitungspräzisionerfordernisblock vorzugreifen.
DE102019007383.5A 2018-10-31 2019-10-23 Numerische Steuerung Pending DE102019007383A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-205702 2018-10-31
JP2018205702A JP6838030B2 (ja) 2018-10-31 2018-10-31 数値制御装置

Publications (1)

Publication Number Publication Date
DE102019007383A1 true DE102019007383A1 (de) 2020-04-30

Family

ID=70326583

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019007383.5A Pending DE102019007383A1 (de) 2018-10-31 2019-10-23 Numerische Steuerung

Country Status (4)

Country Link
US (1) US11402822B2 (de)
JP (1) JP6838030B2 (de)
CN (1) CN111123845B (de)
DE (1) DE102019007383A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6838030B2 (ja) 2018-10-31 2021-03-03 ファナック株式会社 数値制御装置
JP6838031B2 (ja) * 2018-10-31 2021-03-03 ファナック株式会社 数値制御システム
JP6901454B2 (ja) 2018-10-31 2021-07-14 ファナック株式会社 数値制御装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3723015B2 (ja) 1999-07-26 2005-12-07 三菱電機株式会社 数値制御装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61256407A (ja) * 1985-05-09 1986-11-14 Mitsubishi Electric Corp 数値制御装置
JP2724647B2 (ja) * 1991-11-20 1998-03-09 株式会社牧野フライス製作所 数値制御における送り速度制御方法
JPH07191728A (ja) * 1991-08-30 1995-07-28 Makino Milling Mach Co Ltd 数値制御における送り速度制御方法および装置
JPH10254517A (ja) * 1997-03-06 1998-09-25 Yaskawa Electric Corp 数値制御装置の異常検出方法
JP2006293537A (ja) 2005-04-07 2006-10-26 Fanuc Ltd 数値制御装置
JP2007094936A (ja) * 2005-09-30 2007-04-12 Fanuc Ltd 数値制御装置
JP2007164509A (ja) * 2005-12-14 2007-06-28 Fanuc Ltd 数値制御装置
JP4221016B2 (ja) 2006-07-25 2009-02-12 ファナック株式会社 干渉チェックを行う数値制御装置
JP4271248B2 (ja) * 2007-05-24 2009-06-03 ファナック株式会社 先読み停止機能を有する数値制御装置
JP5657623B2 (ja) * 2012-09-21 2015-01-21 ファナック株式会社 系統間待合せ機能を有する数値制御装置
JP5715217B2 (ja) * 2013-10-18 2015-05-07 ファナック株式会社 プログラムの先読み機能を備えた数値制御装置
JP6299527B2 (ja) * 2014-08-29 2018-03-28 ブラザー工業株式会社 数値制御装置と制御方法
CN104331025B (zh) * 2014-10-31 2017-01-25 西安交通大学 一种面向微小线段高效加工的速度前瞻预处理方法
JP6200456B2 (ja) 2015-06-29 2017-09-20 ファナック株式会社 工作機械とロボット間の干渉チェックシステム
JP6444938B2 (ja) * 2016-05-12 2018-12-26 ファナック株式会社 条件指定による加工プログラム先読み開始機能を備えた数値制御装置
WO2018138870A1 (ja) 2017-01-27 2018-08-02 三菱電機株式会社 選択装置及びプログラム
JP6838030B2 (ja) 2018-10-31 2021-03-03 ファナック株式会社 数値制御装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3723015B2 (ja) 1999-07-26 2005-12-07 三菱電機株式会社 数値制御装置

Also Published As

Publication number Publication date
CN111123845B (zh) 2023-09-15
US20200133242A1 (en) 2020-04-30
US11402822B2 (en) 2022-08-02
JP6838030B2 (ja) 2021-03-03
JP2020071696A (ja) 2020-05-07
CN111123845A (zh) 2020-05-08

Similar Documents

Publication Publication Date Title
DE102016010064B4 (de) Numerische Steuerung mit Bearbeitungsbedingungsanpassungsfunktion zum Verringern des Auftretens von Rattern oder Werkzeugverschleiss/-bruch
EP0311703B1 (de) Verfahren zum Steuern einer Werkzeugmaschine
EP3335086B1 (de) Verfahren und steuervorrichtung zum optimierten steuern einer werkzeugmaschine
DE102019007383A1 (de) Numerische Steuerung
DE102017009760B4 (de) Numerische Steuervorrichtung und Steuerverfahren für eine numerische Steuervorrichtung
DE102017004366B4 (de) Numerische Steuervorrichtung
DE102013015236A1 (de) Numerische Steuervorrichtung mit einer Wartefunktion zwischen Wegen
DE102019007384A1 (de) Numerische Steuerung
DE102019110434A1 (de) Werkzeugwahlvorrichtung und Maschinenlernvorrichtung
DE102015200870A1 (de) Gerät zum Erzeugen eines NC-Programms, das eine Leistungseinsparung berücksichtigt
DE102019007393A1 (de) Numerische Steuerung
DE102019007382A1 (de) Numerische Steuerung
DE102019007392A1 (de) Numerisches Steuersystem
DE112018007741B4 (de) Maschinenlernvorrichtung und vorrichtung zur erzeugung vonprogrammen für eine numerisch gesteuerte bearbeitung
DE102019007381A1 (de) Numerische Steuerung
DE112021004248T5 (de) Numerisches Steuersystem und Robotersteuerverfahren
EP3658996B1 (de) Verfahren zum betrieb einer numerisch gesteuerten produktionsanlage sowie produktionsanlage dazu
DE102018003638A1 (de) Numerische Steuerung
EP3955073A1 (de) Betreiben einer wenigstens zweiachsigen werkzeugmaschine
DE102020003527A1 (de) Numerische Steuervorrichtung
DE19614232A1 (de) Verfahren und Vorrichtung für die numerische Steuerung
DE102018003992B4 (de) Numerische Steuervorrichtung
DE102017010569B4 (de) Numerische Steuervorrichtung
DE102022210231A1 (de) Verfahren zum Drehen von Werkstücken, Werkzeugmaschine und Bearbeitungsprogramm
EP3224680B1 (de) Fertigungssystem mit zusätzlicher funktionalität und betriebsverfahren

Legal Events

Date Code Title Description
R012 Request for examination validly filed