DE102019007392A1 - Numerisches Steuersystem - Google Patents

Numerisches Steuersystem Download PDF

Info

Publication number
DE102019007392A1
DE102019007392A1 DE102019007392.4A DE102019007392A DE102019007392A1 DE 102019007392 A1 DE102019007392 A1 DE 102019007392A1 DE 102019007392 A DE102019007392 A DE 102019007392A DE 102019007392 A1 DE102019007392 A1 DE 102019007392A1
Authority
DE
Germany
Prior art keywords
program
look
unit
ahead
anticipation
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
DE102019007392.4A
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 DE102019007392A1 publication Critical patent/DE102019007392A1/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
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32416Tool information for program to use and needed timing, adapt timing
    • 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/35293Execute program and check block of data, on interrupt display block
    • 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

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 zur Stabilisierung einer Vorschubgeschwindigkeit, einer Abtraggeschwindigkeit und weiterer Faktoren parallel zu einem Vorgriff auf das Bearbeitungsprogramm vom Beginn des Bearbeitungsprogramms ab der Position eine Vorgriffsverarbeitungsfunktion starten kann. Eine numerische Steuerung 100 umfasst eine Programmausführeinheit 111, die ein Bearbeitungsprogramm ausführt, eine erste Programmvorgriffseinheit 112a und eine zweite Programmvorgriffseinheit 112b, die parallel zur Ausführung des Bearbeitungsprogramms von unterschiedlichen Blöcken in dem Bearbeitungsprogramm gleichzeitig auf das Bearbeitungsprogramm vorgreifen, und eine Vorgriffszuordnungseinheit 115, die eine Speichereinheit 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 ein numerisches Steuersystem.
  • 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 an 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 geringer 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 an 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 beispielsweise 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.
  • 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, ein numerisches Steuersystem bereitzustellen, bei dem jede von mehreren numerischen Steuerungen, die das numerische Steuersystem bilden, zur Stabilisierung einer Vorschubgeschwindigkeit, einer Abtraggeschwindigkeit und weiterer Faktoren einen Vorgriff einer anderen numerischen Steuerung auf das Bearbeitungsprogramm für die anfordernde numerische Steuerung an einer Position, an der Vorgriffsblöcke unzureichend sind und das Auftreten einer Geschwindigkeitssteueranomalie wahrscheinlich ist, parallel zu einem Vorgriff des Anforderers auf das eigene Bearbeitungsprogramm anfordern kann.
  • (1) Ein numerisches Steuersystem gemäß der vorliegenden Erfindung ist ein numerisches Steuersystem (beispielsweise ein später zu beschreibendes „numerisches Steuersystem 10“), bei dem mehrere numerische Steuerungen (beispielsweise eine später zu beschreibende „numerische Steuerung 100“) über ein Netzwerk (beispielsweise ein später zu beschreibendes „Netzwerk 400“) miteinander verbunden sind, wobei die numerischen Steuerungen eine Werkzeugmaschine mit Achsen durch Ausführen eines Bearbeitungsprogramms steuern, das aus mehreren Blöcken zusammengesetzt ist und eine Beschleunigung/Verlangsamung der Achsen steuert, wobei jede numerische Steuerung eine Steuereinheit (beispielsweise eine später zu beschreibende „CPU 11“) und eine Speichereinheit (beispielsweise ein später zu beschreibendes „RAM 13“) umfasst, 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 auf das Bearbeitungsprogramm vorgreift und eine erste Programmvorgriffseinheit und eine zweite Programmvorgriffseinheit 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 zum Vorgriff auf das Bearbeitungsprogramm einer anderen numerischen Steuerung und zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem zweiten Bereich anweist.
  • (2) Bei dem unter Punkt (1) beschriebenen numerischen Steuersystem kann die numerische Steuerung 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 Programmunterteilungseinheit (beispielsweise eine später zu beschreibende „Programmunterteilungseinheit 114“), die das Bearbeitungsprogramm bei der Ausführung einer Simulation durch die Programmausführeinheit entsprechend den Vorgriffsblöcken in einen Überschussvorgriffsbereich, in dem die Vorgriffsblöcke eine vorgegebene Anzahl übersteigen oder dieser entsprechen, und einen Ergänzungsvorgriffsbereich unterteilt, in dem die Vorgriffsblöcke unter einem vorgegebenen Wert liegen, wobei die Vorgriffszuordnungseinheit bei einem Vorgriff der Programmvorgriffseinheit auf den Überschussvorgriffsbereich die erste Programmvorgriffseinheit anweisen kann, auf diesen Überschussvorgriffsbereich vorzugreifen, und die zweite Programmvorgriffseinheit anweisen kann, auf den Ergänzungsvorgriffsbereich eines Bearbeitungsprogramms einer anderen numerischen Steuerung vorzugreifen, und bei einem Vorgriff der Programmvorgriffseinheit auf den Ergänzungsvorgriffsbereich den Vorgriff einer anderen numerischen Steuerung auf diesen Ergänzungsvorgriffsbereich anfordern und die erste Programmvorgriffseinheit anweisen kann, auf diesen Ergänzungsvorgriffsbereich vorzugreifen.
  • (3) Das unter Punkt (1) oder (2) beschriebene numerische Steuersystem kann ferner eine Einstellvorrichtung (beispielsweise eine später zu beschreibende „Einstellvorrichtung 300“) umfassen, die die Bearbeitungszeiten der mehreren numerischen Steuerungen so einstellt, dass bei einem Vorgriff einer numerischen Steuerung auf den Ergänzungsvorgriffsbereich des Bearbeitungsprogramms für diese Maschine keine andere numerische Steuerung auf den Ergänzungsvorgriffsbereich dieser numerischen Steuerung vorgreift.
  • (4) Bei dem unter einem der Punkte (1) bis (3) beschriebenen numerische Steuersystem können sämtliche der mehreren numerischen Steuerungen das gleiche Bearbeitungsprogramm ausführen.
  • Gemäß der vorliegenden Erfindung kann jede von mehreren numerischen Steuerungen, die das numerische Steuersystem bilden, zur Stabilisierung einer Vorschubgeschwindigkeit, einer Abtraggeschwindigkeit und weiterer Faktoren einen Vorgriff einer anderen numerischen Steuerung auf das Bearbeitungsprogramm für die anfordernde numerische Steuerung an einer Position, an der Vorgriffsblöcke unzureichend sind und das Auftreten einer Geschwindigkeitssteueranomalie wahrscheinlich ist, parallel zu einem Vorgriff des Anforderers auf das eigene Bearbeitungsprogramm anfordern.
  • Figurenliste
    • 1 ist ein Diagramm zur Veranschaulichung der Konfiguration eines numerischen Steuersystems, das numerische Steuerungen gemäß einer Ausführungsform der vorliegenden Erfindung umfasst. 2 ist ein Diagramm zur Veranschaulichung der Konfiguration der numerischen Steuerung gemäß der Ausführungsform der vorliegenden Erfindung. 3 ist ein Diagramm zur Veranschaulichung von Funktionsblöcken der numerischen Steuerung gemäß der Ausführungsform der vorliegenden Erfindung. 4 ist ein Diagramm zur Veranschaulichung von Funktionsblöcken der numerischen Steuerung gemäß der Ausführungsform der vorliegenden Erfindung. 5 ist ein Diagramm zur Veranschaulichung einer Differenz der Vorgriffsblöcke im Verlauf der Zeit und eines Überschussvorgriffsbereichs und eines Ergänzungsvorgriffsbereichs gemäß der Ausführungsform der vorliegenden Erfindung. 6 ist ein Diagramm zur Veranschaulichung eines Beispiels einer von einer Vorgriffszuordnungseinheit gemäß der Ausführungsform der vorliegenden Erfindung ausgeführten Speicherzuordnung. 7 ist ein Diagramm zur Veranschaulichung einer Bearbeitungszeit und einer Differenz der Vorgriffsblöcke im Verlauf der Zeit bei jeder numerischen Steuerung gemäß der Ausführungsform der vorliegenden Erfindung. 8 ist ein Diagramm zur Veranschaulichung einer Bearbeitungszeit und einer Differenz der Vorgriffsblöcke im Verlauf der Zeit bei jeder numerischen Steuerung gemäß der Ausführungsform der vorliegenden Erfindung. 9 ist ein Ablaufdiagramm zur Veranschaulichung eines ersten Arbeitsablaufs der numerischen Steuerung gemäß der Ausführungsform der vorliegenden Erfindung. 10 ist ein Ablaufdiagramm zur Veranschaulichung eines zweiten Arbeitsablaufs der numerischen Steuerung gemäß der Ausführungsform der vorliegenden Erfindung. 11 ist ein Graph zum Aufzeigen einer Instabilität der Geschwindigkeit aufgrund des Unvermögens, die Vorgriffsblöcke sicherzustellen.
  • GENAUE BESCHREIBUNG DER ERFINDUNG
  • Nun wird unter Bezugnahme auf die 1 bis 10 eine Ausführungsform der vorliegenden Erfindung beschrieben.
  • <Konfiguration der Erfindung>
  • 1 ist ein Blockdiagramm zur Veranschaulichung eines numerischen Steuersystems 10 gemäß der vorliegenden Erfindung. Wie in 10 dargestellt, umfasst das numerische Steuersystem 10 n numerische Steuerungen 100, n Werkzeugmaschinen 200 und eine Einstellvorrichtung 300.
  • 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.
  • Die Einstellvorrichtung 300 ist eine Vorrichtung, die die Zeitwahl für eine Bearbeitung durch die Werkzeugmaschine 200, d.h. die Ausführung des Bearbeitungsprogramms und des Vorgriffs durch die numerische Steuerung 100 einstellt. Einzelheiten zu der Einstellung dieser Zeiten sind später zu beschreiben.
  • Bei dieser Ausführungsform sind die numerische Steuerung 100 und die Werkzeugmaschine 200 ein Paar und zum Ermöglichen einer Kommunikation zwischen den beiden Vorrichtungen miteinander verbunden. Mehrere diese Paare aus der numerischen Steuerung 100 und der Werkzeugmaschine 200 können in einem Fertigungsbetrieb angeordnet sein, oder unterschiedliche Paare können in unterschiedlichen Fertigungsbetrieben angeordnet sein.
  • Die numerische Steuerung 100 und die Einstellvorrichtung 300 sind zum Ermöglichen einer Kommunikation zwischen den beiden Vorrichtungen miteinander verbunden. Die numerische Steuerung 100, die Werkzeugmaschine 200 und die Einstellvorrichtung 300 können über eine Verbindungsschnittstelle direkt miteinander verbunden sein, oder sie können über ein Netzwerk 400 miteinander verbunden sein. Das Netzwerk 400 kann ein in einem Fertigungsbetrieb installiertes lokales Netzwerk (LAN), das Internet, ein öffentliches Telefonnetz oder jede Kombination dieser sein. Hinsichtlich des spezifischen Modus der Kommunikation in dem Netzwerk 400 bestehen keine besonderen Beschränkungen, und es kann sich um eine kabelgebundene Verbindung oder eine drahtlose Verbindung handeln.
  • 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 an 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 an 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 Positions-/Geschwindigkeitsdetektor. Die Positions-/Geschwindigkeitsdetektoren geben Positions-/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 Positions-/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 Programmunterteilungseinheit 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 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.
  • Die Vorgriffsblöcke sind null, wenn die Position eines Bocks, 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.
  • 5 ist ein Graph zum Aufzeigen einer Differenz zwischen den Vorgriffsblöcken im Verlauf der Zeit. Bei einer 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öschcodes 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.
  • 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. In dem Bearbeitungsprogramm führen die zweite Programmvorgriffseinheit 112b bis n-te Programmvorgriffseinheit 112n in einem Bereich, in dem genügend Vorgriffsblöcke vorhanden sind, parallel zu einem Vorgriff der ersten Programmvorgriffseinheit 112a ab dem Beginn des Bearbeitungsprogramms einen Vorgriffsvorgang in einem Bereich, in dem nicht genügend Vorgriffsblöcke vorhanden sind, in einem Bearbeitungsprogramm aus, das von einer anderen numerischen Steuerung 100 ausgeführt wird. Darüber hinaus speichern die zweite Programmvorgriffseinheit 112b bis n-te Programmvorgriffseinheit 112n die Vorgriffsblöcke in dem Speicher ihrer numerischen Steuerung 100. Wenn dann die andere numerische Steuerung 100 den Block in dem Bereich ausführt, in dem nicht genügend Vorgriffsblöcke vorhanden sind, wird der Block, auf den bereits von der zweiten Programmvorgriffseinheit 112b bis n-ten Programmvorgriffseinheit 112n vorgegriffen wurde und der in dem Speicher der numerischen Steuerung 100 gespeichert ist, ausgeführt und verbraucht.
  • Bei dieser Ausführungsform der wird Begriff „Bereich, in dem genügend Vorgriffsblöcke vorhanden sind“ als „Überschussvorgriffsbereich“ bezeichnet, wie in 5 dargestellt. Ferner wird der Begriff „Bereich, in dem nicht genügend Vorgriffsblöcke vorhanden sind“ als „Ergänzungsvorgriffsbereich“ bezeichnet, wie in 5 dargestellt.
  • 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 einer ersten Folgenummer eines gerade ausgeführten Blocks und einer zweiten Folgenummer eines Blocks, auf den von der ersten Programmvorgriffseinheit 112a vorgegriffen wird, wenn die Programmausführeinheit 111 die erste Simulation des Bearbeitungsprogramms ausführt.
  • Die Programmunterteilungseinheit 114 unterteilt das Bearbeitungsprogramm in den Überschussvorgriffsbereich, in dem die Vorgriffsblöcke eine vorgegebene Anzahl übersteigen oder dieser entsprechen, und den Ergänzungsvorgriffsbereich, in dem die Vorgriffsblöcke unter einem vorgegebenen Wert liegen. Wie in dem Beispiel gemäß 5 dargestellt, kann die Programmunterteilungseinheit 114 einen Bereich, in dem die Vorgriffsblöcke über eine vorgegebene Zeitspanne auf einem vorgegebenen Wert oder mehr gehalten werden, als Überschussvorgriffsbereich definieren. Die Programmunterteilungseinheit 114 kann auch einen Bereich nach einem Rückgang der Vorgriffsblöcke auf null und bis zum Überschreiten eines vorgegebenen Werts durch die Vorgriffsblöcke als Ergänzungsvorgriffsbereich definieren.
  • 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.
  • Wenn die Programmvorgriffseinheit 112 auf den Überschussvorgriffsbereich vorgreift, weist die Vorgriffszuordnungseinheit 115 die erste Programmvorgriffseinheit 112a an, einen Vorgriff auf den Überschussvorgriffsbereich auszuführen, und weist die zweite Programmvorgriffseinheit 112b an, parallel zu dem von der ersten Programmvorgriffseinheit 112a ausgeführten Vorgriffsvorgang auf einen Ergänzungsvorgriffsbereich in dem Bearbeitungsprogramm einer anderen numerischen Steuerung vorzugreifen.
  • Dadurch speichert bei einem Vorgriff der Programmvorgriffseinheit 112 auf den Überschussvorgriffsbereich die erste Programmvorgriffseinheit 112a während eines Vorgriffs auf den Überschussvorgriffsbereich Vorgriffsblöcke in dem ersten Bereich, und die zweite Programmvorgriffseinheit 112b speichert während eines Vorgriffs auf den Ergänzungsvorgriffsbereich in dem Bearbeitungsprogramm der anderen numerischen Steuerung Vorgriffsblöche in dem zweiten Bereich. Die Programmausführeinheit 111 führt die in dem ersten Bereich gespeicherten Blöcke aus und verbraucht sie.
  • Bei einem Vorgriff der Programmvorgriffseinheit 112 auf den Überschussvorgriffsbereich fordert die Vorgriffszuordnungseinheit 115 das Ausführen eines Vorgriffsvorgangs auf den Ergänzungsvorgriffsbereich durch eine andere numerische Steuerung 100 an und weist die erste Programmvorgriffseinheit 112a an, auf den Ergänzungsvorgriffsbereich vorzugreifen.
  • Bei einem Vorgriff der Programmvorgriffseinheit 112 auf den Ergänzungsvorgriffsbereich greift die erste Programmvorgriffseinheit 112a auf Blöcke nach den in dem Speicher der anderen numerischen Steuerung 100 gespeicherten Blöcken vor. Nach dem Ausführen und dem Verbrauch der in dem Speicher der anderen numerischen Steuerung 100 gespeicherten Blöcke durch die Programmausführeinheit 111 führt die Programmausführeinheit 111 die Blöcke aus, auf die von der ersten Programmvorgriffseinheit 112a vorgegriffen wird und die in dem ersten Bereich gespeichert werden, und verbraucht sie.
  • Wenn bei der numerischen Steuerung 100, die die Anforderung eines Vorgriffs empfangen hat, die erste Programmvorgriffseinheit 112a auf den Überschussvorgriffsbereich vorgreift, weist die Vorgriffszuordnungseinheit 115 die zweite Programmvorgriffseinheit 112b an, auf den Ergänzungsvorgriffsbereich in dem Bearbeitungsprogramm einer anderen numerischen Steuerung vorzugreifen, die die Maschine ist, die den Vorgriff angefordert hat.
  • 6 zeigt ein Beispiel einer Vorgriffszuordnung durch die Vorgriffszuordnungseinheit 115. In dem in 6 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 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. Die Vorgriffszuordnungseinheit 115 weist auch die erste Programmvorgriffseinheit 112a zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem ersten Bereich während eines Vorgriffs auf den Überschussvorgriffsbereich an und weist die zweite Programmvorgriffseinheit 112b zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem zweiten Bereich während eines Vorgriffs auf den Ergänzungsvorgriffsbereich in dem Bearbeitungsprogramm einer anderen numerischen Steuerung 100 parallel zu dem von der ersten Programmvorgriffseinheit 112a ausgeführten Vorgriffsvorgang an.
  • Durch eine derartige Konfiguration der numerischen Steuerung 100 gemäß dieser Ausführungsform kann die numerische Steuerung 100 an einer Position, an der genügend Vorgriffsblöcke vorhanden sind, parallel zu einem Vorgriff auf das eigene Bearbeitungsprogramm dieser Maschine auf das Bearbeitungsprogramm für eine andere numerische Steuerung vorgreifen und einen Vorgriff einer anderen numerischen Steuerung auf das Bearbeitungsprogramm der anfordernden Maschine an einer Position, an der nicht genügend Vorgriffsblöcke vorhanden sind und das Auftreten einer Geschwindigkeitssteueranomalie wahrscheinlich ist, parallel zu einem Vorgriff auf das eigene Bearbeitungsprogramm dieser Maschine anfordern.
  • Um der Kürze willen ist der in 6 dargestellte Speicher in den ersten Bereich und den zweiten Bereich unterteilt, doch dies ist lediglich ein Beispiel, und die vorliegende Erfindung ist nicht auf diese Konfiguration beschränkt. Die Vorgriffszuordnungseinheit 115 kann den Speicher beispielsweise entsprechend der Anzahl an Programmvorgriffseinheiten 112a, 112b bis 112n, die die Programmvorgriffseinheit 112 bilden, in eine beliebige Anzahl an Bereichen unterteilen.
  • 7 ist ein Graph zum Aufzeigen der Differenz zwischen Vorgriffsblöcken im Verlauf der Zeit bei jeder der numerischen Steuerungen 100, die jede Werkzeugmaschine 200 steuern. Gemäß 7 wiederholt jede der Werkzeugmaschinen der Maschinen „Nr. 1“ bis „Nr. 3“ eine Schleife aus Vorbearbeitung, Fertigbearbeitung und Vorbereitungszeit. Die Vorgriffsblöcke der Vorbearbeitung und der Fertigbearbeitung unterliegen der gleichen Differenz im Verlauf der Zeit wie der in 5 dargestellten.
  • Die Einstellmaschine 300 vergleicht die Vorgriffszeit der numerischen Steuerung 100, die die Werkzeugmaschine 200 von Maschine „Nr. 2“ steuert, mit der Vorgriffszeit der numerischen Steuerung 100, die die Werkzeugmaschine 200 von Maschine „Nr. 1“ steuert, und verzögert die Vorgriffszeit der numerischen Steuerung 100, die die Werkzeugmaschine 200 von Maschine „Nr. 2“ steuert, um T1. Ähnlich vergleicht die Einstellmaschine 300 die Vorgriffszeit der numerischen Steuerung 100, die die Werkzeugmaschine 200 von Maschine „Nr. 3“ steuert, mit der Vorgriffszeit der numerischen Steuerung 100, die die Werkzeugmaschine 200 von Maschine „Nr. 1“ steuert, und verzögert die Vorgriffszeit der numerischen Steuerung 100, die die Werkzeugmaschine 200 von Maschine „Nr. 3“ steuert, um T2.
  • Dadurch kann ein gleichzeitiges Ausführen der Vorbearbeitung und der Fertigbearbeitung durch die Werkzeugmaschinen 200 der Maschinen „Nr. 1“ bis „Nr. 3“ verhindert werden. Ähnlich wie in 5 dargestellt sind jedoch bei der Fertigbearbeitung bei jeder numerischen Steuerung 100 nicht genügend Vorgriffsblöcke vorhanden, wenn die Einstellmaschine 300 einfach die Vorgriffszeit jeder numerischen Steuerung 100 verschiebt. Daher ordnet die Vorgriffszuordnungseinheit 115 die Vorgriffsblöcke unter den mehreren numerischen Steuerungen 100 zu, die jede der Werkzeugmaschinen 200 steuern.
  • 8 ist ein Graph zum Aufzeigen der Differenz zwischen den Vorgriffsblöcken im Verlauf der Zeit bei jeder numerischen Steuerung 100 nach der Zuordnung von Vorgriffsblöcken zu jeder numerischen Steuerung 100 durch die Vorgriffszuordnungseinheit 115. Genauer werden beispielsweise gemäß 8(a) die Vorgriffsblöcke für Maschine „Nr. 2“ verwendet, um 700 Blöcke zu den Vorgriffsblöcken für Maschine „Nr. 1“ hinzuzufügen. Gemäß 8(b) werden 700 Blöcke unter den Vorgriffsblöcken für Maschine „Nr. 1“ für die Vorgriffsblöcke für Maschine „Nr. 3“ verwendet. Gemäß 8(c) werden 700 Blöcke unter den Vorgriffsblöcken für Maschine „Nr. 2“ für die Vorgriffsblöcke für Maschine „Nr. 1“ verwendet. Gemäß 8(d) werden die Vorgriffsblöcke für Maschine „Nr. 3“ verwendet, um 700 Blöcke zu den Vorgriffsblöcken für Maschine „Nr. 2“ hinzuzufügen. Gemäß 8(e) werden 700 Blöcke unter den Vorgriffsblöcken für Maschine „Nr. 3“ für die Vorgriffsblöcke für Maschine „Nr. 2“ verwendet. Gemäß 8(f) werden die Vorgriffsblöcke für Maschine „Nr. 1“ verwendet, um 700 Blöcke zu den Vorgriffsblöcken für Maschine „Nr. 3“ hinzuzufügen.
  • Durch diese Konfiguration werden bei der Fertigbearbeitung in sämtlichen der Werkzeugmaschinen 200 der Maschinen „Nr. 1“ bis „Nr. 3“ ausreichend Vorgriffsblöcke erzeugt.
  • In den 7 und 8 wird davon ausgegangen, dass sämtliche Maschinen „Nr. 1“ bis „Nr. 3“ das gleiche Produkt A bearbeiten, doch dies ist lediglich ein Beispiel und die vorliegende Erfindung ist nicht auf diese Konfiguration beschränkt.
  • <Arbeitsablauf der Erfindung>
  • Nun wird unter Bezugnahme auf die 9 und 10 der Arbeitsablauf der numerischen Steuerung 100 gemäß der ersten Ausführungsform der vorliegenden Erfindung beschrieben.
  • <Arbeitsablauf bei der Unterteilung des
  • Bearbeitungsprogramms>
  • 9 ist ein Ablaufdiagramm zur Veranschaulichung des Arbeitsablaufs bei der Unterteilung des Bearbeitungsprogramms. 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 die berechnet Vorgriffsblock-Berechnungseinheit 113 die Vorgriffsblöcke.
  • In Schritt S14 unterteilt die Programmunterteilungseinheit 114 das Bearbeitungsprogramm in den Überschussvorgriffsbereich, in dem die Vorgriffsblöcke eine vorgegebene Anzahl übersteigen oder dieser entsprechen, und den Ergänzungsvorgriffsbereich, in dem die Vorgriffsblöcke unter einem vorgegebenen Wert liegen.
  • <Arbeitsablauf bei der Vorgriffszuordnung>
  • 10 ist ein Ablaufdiagramm zur Veranschaulichung des Arbeitsablaufs bei der Vorgriffszuordnung. Insbesondere zeigt 10 den Arbeitsablauf der Vorgriffszuordnungseinheit 115.
  • Wenn in Schritt S21 die Position, auf die vorzugreifen ist, in dem Überschussvorgriffsbereich liegt (S21: JA), wird die Verarbeitung mit Schritt S22 fortgesetzt. Wenn die Position, auf die vorzugreifen ist, nicht in dem Überschussvorgriffsbereich liegt (S21: NEIN), wird die Verarbeitung mit Schritt S24 fortgesetzt.
  • In Schritt S22 weist die Vorgriffszuordnungseinheit 115 die erste Programmvorgriffseinheit 112a an, einen Vorgriffsvorgang auf den Überschussvorgriffsbereich auszuführen.
  • In Schritt S23 weist die Vorgriffszuordnungseinheit 115 die zweite Programmvorgriffseinheit 112b an, einen Vorgriffsvorgang auf den Ergänzungsvorgriffsbereich in dem Bearbeitungsprogramm einer anderen numerischen Steuerung auszuführen.
  • Wenn in Schritt S24 die Position, auf die vorzugreifen ist, in dem Ergänzungsvorgriffsbereich liegt (S24: JA), wird die Verarbeitung mit Schritt S25 fortgesetzt. Wenn die Position, auf die vorzugreifen ist, nicht in dem Ergänzungsvorgriffsbereich liegt (S24: NEIN), wird die Verarbeitung mit Schritt S21 fortgesetzt (zurückgesetzt).
  • In Schritt S25 weist die Vorgriffszuordnungseinheit 115 eine andere numerische Steuerung 100 an, einen Vorgriffsvorgang in dem Ergänzungsvorgriffsbereich in dem Bearbeitungsprogramm der numerischen Steuerung 100 der Vorgriffszuordnungseinheit 115 auszuführen.
  • In Schritt S26 weist die Vorgriffszuordnungseinheit 115 die erste Programmvorgriffseinheit 112a an, einen Vorgriffsvorgang auf den Ergänzungsvorgriffsbereich auszuführen. Dann wird die Verarbeitung mit Schritt S21 fortgesetzt (zurückgesetzt).
  • <Ergebnisse der ersten Ausführungsform>
  • Jede der der numerischen Steuerungen 100, die das numerische Steuersystem 10 gemäß der ersten Ausführungsform der vorliegenden Erfindung bilden, umfasst die Programmvorgriffseinheit 112, die die erste Programmvorgriffseinheit 112a und die zweite Programmvorgriffseinheit 112b umfasst, die parallel zur Ausführung des Bearbeitungsprogramms auf das Bearbeitungsprogramm vorgreifen, und die Vorgriffszuordnungseinheit 115, die einen Speicher zumindest in einen ersten Bereich und einen zweiten Bereich unterteilt, die erste Programmvorgriffseinheit 112a zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem ersten Bereich anweist und die zweite Programmvorgriffseinheit 112b anweist, einen Vorgriffsvorgang zum Vorgreifen auf das Bearbeitungsprogramm einer anderen numerischen Steuerung auszuführen und Vorgriffsblöcke in dem zweiten Bereich zu speichern.
  • Dadurch kann jede von mehreren numerischen Steuerungen, die das numerische Steuersystem bilden, zur Stabilisierung einer Vorschubgeschwindigkeit, einer Abtraggeschwindigkeit und weiterer Faktoren einen Vorgriff einer anderen numerischen Steuerung auf das Bearbeitungsprogramm für die anfordernde numerische Steuerung an einer Position, an der die Vorgriffsblöcke unzureichend sind und das Auftreten einer Geschwindigkeitssteueranomalie wahrscheinlich ist, parallel zu einem Vorgriff des Anforderers auf das eigene Bearbeitungsprogramm anfordern.
  • Die numerische Steuerung 100 umfasst die Programmunterteilungseinheit 114, die das Bearbeitungsprogramm entsprechend den Vorgriffsblöcken in den Überschussvorgriffsbereich, in dem die Vorgriffsblöcke eine vorgegebene Anzahl überschreiten oder dieser entsprechen, und den Ergänzungsvorgriffsbereich unterteilt, in dem die Vorgriffsblöcke unter einem vorgegebenen Wert liegen. Ferner umfasst die numerische Steuerung 100 die Vorgriffszuordnungseinheit 115, und die Vorgriffszuordnungseinheit 115 weist bei einem Vorgriff der Programmvorgriffseinheit 112 auf den Überschussvorgriffsbereich die erste Programmvorgriffseinheit 112a an, auf den Überschussvorgriffsbereich vorzugreifen, und weist die zweite Programmvorgriffseinheit 112b an, auf den Ergänzungsvorgriffsbereich in dem Bearbeitungsprogramm einer anderen numerischen Steuerung 100 vorzugreifen. Ferner fordert die Vorgriffszuordnungseinheit 115 einen Vorgriff einer andern numerischen Steuerung 100 auf den Ergänzungsvorgriffsbereich an und weist die erste Programmvorgriffseinheit 112a an, auf den Ergänzungsvorgriffsbereich vorzugreifen.
  • Dadurch kann die numerische Steuerung 100 den Vorgriff einer andern numerischen Steuerung 100 auf einen Bereich, in dem nicht genügend Vorgriffsblöcke vorhanden sind, in dem Bearbeitungsprogramm anfordern.
  • Bei einem Vorgriff einer numerischen Steuerung 100 auf den Ergänzungsvorgriffsbereich des Bearbeitungsprogramms für diese Maschine stellt die Einstellmaschine 300 die Bearbeitungszeit unter den mehreren numerischen Steuerungen 100 so ein, dass keine andere numerische Steuerung 100 auf den Ergänzungsvorgriffsbereich dieser numerischen Steuerung 100 vorgreift.
  • Dadurch können die Vorgriffsblöcke unter den numerischen Steuerungen 100 nahtlos geteilt werden.
  • Darüber hinaus können die mehreren numerischen Steuerungen 100 das gleiche Bearbeitungsprogramm ausführen.
  • Durch diese Konfiguration ist es möglich, die Vorgriffsblöcke unter den numerischen Steuerungen 100 nahtlos zu teilen und die Vorgriffsblöcke mittels einer einfachen Schleife zu teilen.
  • <Modifikationsbeispiele>
  • <Modifikationsbeispiel 1>
  • Bei der vorstehend beschriebenen Ausführungsform unterteilt die Programmunterteilungseinheit 114 das Bearbeitungsprogramm entsprechend den Vorgriffsblöcken in den Überschussvorgriffsbereich und den Ergänzungsvorgriffsbereich, doch die vorliegende Erfindung ist nicht auf diese Konfiguration beschränkt. Die Programmunterteilungseinheit 114 kann das Bearbeitungsprogramm beispielsweise entsprechend dem Ergebnis eines Vergleichs der Abnahmerate der Vorgriffsblöcke mit einem vorgegebenen Wert in mehrere Bereiche unterteilen.
  • <Modifikationsbeispiel 2>
  • Bei der vorstehend beschriebenen Ausführungsform wird der Arbeitsablauf zur Unterteilung des Bearbeitungsprogramms ausgeführt, wenn die Programmausführeinheit 111 die Simulation des Bearbeitungsprogramms ausführt, doch die vorliegende Erfindung ist nicht auf diese Konfiguration beschränkt. Ein ähnlicher Arbeitsablauf kann beispielsweise während einer tatsächlichen Bearbeitung durch die numerische Steuerung 100 ausgeführt werden, die die Werkzeugmaschine 200 steuert.
  • <Modifikationsbeispiel 3>
  • Bei der vorstehend beschriebenen Ausführungsform umfasst das numerische Steuersystem 10 die Einstellvorrichtung 300, die die Bearbeitungszeit der Werkzeugmaschine 200, d.h. die zeitliche Abfolge der Ausführung des Bearbeitungsprogramms und die zeitliche Abfolge des Vorgriffs durch die numerische Steuerung 100 einstellt, doch die vorliegende Erfindung ist nicht auf diese Konfiguration beschränkt. Das numerische Steuersystem 10 muss beispielsweise die Einstellvorrichtung 300 nicht umfassen, und die vorstehend beschriebenen Zeitvorgaben können durch die mehreren miteinander kommunizierenden numerischen Steuerungen 100 autonom eingestellt werden.
  • 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 oder 100A 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
    Programmunterteilungseinheit
    115
    Vorgriffszuordnungseinheit
    200
    Werkzeugmaschine
    300
    Einstellmaschine
  • 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 (4)

  1. Numerisches Steuersystem (10), bei dem mehrere numerische Steuerungen (100) über ein Netzwerk (400) miteinander verbunden sind, wobei die numerischen Steuerungen eine Werkzeugmaschine mit Achsen durch Ausführen eines Bearbeitungsprogramms steuern, das aus mehreren Blöcken zusammengesetzt ist und eine Beschleunigung/Verlangsamung der Achsen steuert, wobei die numerische Steuerung (100) umfasst: eine Steuereinheit (11) und eine Speichereinheit (13), die Steuereinheit (11) umfasst: eine Programmausführeinheit (111), die das Bearbeitungsprogramm ausführt; eine Programmvorgriffseinheit (112), die parallel zur Ausführung des Bearbeitungsprogramms auf das Bearbeitungsprogramm vorgreift und 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) zum Vorgriff auf das Bearbeitungsprogramm einer anderen numerischen Steuerung (100) und zur Ausführung eines Vorgriffsvorgangs zum Speichern von Vorgriffsblöcken in dem zweiten Bereich anweist.
  2. Numerisches Steuersystem (10) nach Anspruch 1, wobei die numerische Steuerung (100) 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 Programmvorgriffseinheit (112) bei der Ausführung des Blocks vorgegriffen wird; und eine Programmunterteilungseinheit (114), die das Bearbeitungsprogramm bei der Ausführung einer Simulation durch die Programmausführeinheit (111) entsprechend den Vorgriffsblöcken in einen Überschussvorgriffsbereich, in dem die Vorgriffsblöcke eine vorgegebene Anzahl übersteigen oder dieser entsprechen, und einen Ergänzungsvorgriffsbereich unterteilt, in dem die Vorgriffsblöcke unter einem vorgegebenen Wert liegen, wobei die Vorgriffszuordnungseinheit (115) bei einem Vorgriff der Programmvorgriffseinheit (111) auf den Überschussvorgriffsbereich die erste Programmvorgriffseinheit (112a) anweist, auf diesen Überschussvorgriffsbereich vorzugreifen, und die zweite Programmvorgriffseinheit (112b) anweist, auf den Ergänzungsvorgriffsbereich eines Bearbeitungsprogramms einer anderen numerischen Steuerung vorzugreifen, und bei einem Vorgriff der Programmvorgriffseinheit (112) auf den Ergänzungsvorgriffsbereich den Vorgriff einer anderen numerischen Steuerung (100) auf diesen Ergänzungsvorgriffsbereich anfordert und die erste Programmvorgriffseinheit (112a) anweist, auf diesen Ergänzungsvorgriffsbereich vorzugreifen.
  3. Numerisches Steuersystem (10) nach Anspruch 1 oder 2, das ferner umfasst: eine Einstellvorrichtung (300), die die Bearbeitungszeiten der mehreren numerischen Steuerungen (100) so einstellt, dass bei einem Vorgriff einer numerischen Steuerung (100) auf den Ergänzungsvorgriffsbereich des Bearbeitungsprogramms für diese Maschine keine andere numerische Steuerung (100) auf den Ergänzungsvorgriffsbereich dieser numerischen Steuerung vorgreift.
  4. Numerisches Steuersystem (10) nach einem der Ansprüche 1 bis 3, wobei sämtliche der mehreren numerischen Steuerungen (100) das gleiche Bearbeitungsprogramm ausführen.
DE102019007392.4A 2018-10-31 2019-10-23 Numerisches Steuersystem Pending DE102019007392A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-205703 2018-10-31
JP2018205703A JP6838031B2 (ja) 2018-10-31 2018-10-31 数値制御システム

Publications (1)

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

Family

ID=70326617

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019007392.4A Pending DE102019007392A1 (de) 2018-10-31 2019-10-23 Numerisches Steuersystem

Country Status (4)

Country Link
US (1) US11415964B2 (de)
JP (1) JP6838031B2 (de)
CN (1) CN111123844B (de)
DE (1) DE102019007392A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7376260B2 (ja) * 2019-06-19 2023-11-08 ファナック株式会社 数値制御装置
JP7260241B2 (ja) 2020-04-13 2023-04-18 アルプスアルパイン株式会社 取付物取付状態の管理システム

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 (19)

* 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 数値制御装置
JPH07191728A (ja) * 1991-08-30 1995-07-28 Makino Milling Mach Co Ltd 数値制御における送り速度制御方法および装置
JP2724647B2 (ja) * 1991-11-20 1998-03-09 株式会社牧野フライス製作所 数値制御における送り速度制御方法
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 ファナック株式会社 先読み停止機能を有する数値制御装置
EP2634655B1 (de) * 2010-10-27 2019-02-20 Makino Milling Machine Co., Ltd. Numerisches steuerverfahren für ein maschinenwerkzeug sowie numerische steuerungsvorrichtung
JP5657623B2 (ja) * 2012-09-21 2015-01-21 ファナック株式会社 系統間待合せ機能を有する数値制御装置
JP5715217B2 (ja) * 2013-10-18 2015-05-07 ファナック株式会社 プログラムの先読み機能を備えた数値制御装置
JP6299527B2 (ja) * 2014-08-29 2018-03-28 ブラザー工業株式会社 数値制御装置と制御方法
JP6200456B2 (ja) * 2015-06-29 2017-09-20 ファナック株式会社 工作機械とロボット間の干渉チェックシステム
CN106681275B (zh) * 2015-11-05 2019-04-09 中国科学院沈阳计算技术研究所有限公司 一种数控加工程序段的前瞻预取方法
JP6444938B2 (ja) * 2016-05-12 2018-12-26 ファナック株式会社 条件指定による加工プログラム先読み開始機能を備えた数値制御装置
CN106383493B (zh) * 2016-09-30 2018-12-18 同济大学 一种数控机床的实时防碰撞方法
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
CN111123844A (zh) 2020-05-08
US11415964B2 (en) 2022-08-16
CN111123844B (zh) 2023-09-15
US20200133241A1 (en) 2020-04-30
JP2020071697A (ja) 2020-05-07
JP6838031B2 (ja) 2021-03-03

Similar Documents

Publication Publication Date Title
DE102016010064B4 (de) Numerische Steuerung mit Bearbeitungsbedingungsanpassungsfunktion zum Verringern des Auftretens von Rattern oder Werkzeugverschleiss/-bruch
DE102018203956B4 (de) Maschinelle Lernvorrichtung, Servosteuerungsvorrichtung, Servosteuerungssystem und maschinelles Lernverfahren
DE3382779T2 (de) Werkzeugmaschinensteuerung für die Benutzung mit verteilten Systemen.
DE112012006379B4 (de) Numerische Steuervorrichtung
DE102016014152B4 (de) Numerische Steuervorrichtung
DE102017207822A1 (de) Vorrichtung zur verarbeitung eines bearbeitungsprogramms und damit ausgestattete mehrachsige bearbeitungsmaschine
DE102019110434A1 (de) Werkzeugwahlvorrichtung und Maschinenlernvorrichtung
DE102019007383A1 (de) Numerische Steuerung
DE102016103440A1 (de) Steuervorrichtung, die durch Gruppieren mehrerer Systeme eine Steuerung zentral handhaben kann
DE102019007384A1 (de) Numerische Steuerung
DE102019007392A1 (de) Numerisches Steuersystem
DE112018007741B4 (de) Maschinenlernvorrichtung und vorrichtung zur erzeugung vonprogrammen für eine numerisch gesteuerte bearbeitung
DE102020124734A1 (de) Simulationsgerät
DE102019007393A1 (de) Numerische Steuerung
DE102020003527A1 (de) Numerische Steuervorrichtung
DE102018119945A1 (de) Bearbeitungszeitvorhersagesystem
EP3625631B1 (de) Verfahren zum betrieb einer numerisch gesteuerten werkzeugmaschine sowie werkzeugmaschine dazu
DE102019007382A1 (de) Numerische Steuerung
DE102019204884A1 (de) Einstellvorrichtung und Einstellprogramm
DE102019007381A1 (de) Numerische Steuerung
DE112017003357B4 (de) Auswahlvorrichtung, Auswahlverfahren und Programm
EP3955073A1 (de) Betreiben einer wenigstens zweiachsigen werkzeugmaschine
DE102018003638A1 (de) Numerische Steuerung
DE19614232A1 (de) Verfahren und Vorrichtung für die numerische Steuerung
DE112012006342B4 (de) Numerische Steuervorrichtung und numerisches Steuersystem

Legal Events

Date Code Title Description
R012 Request for examination validly filed