DE102019008550A1 - Numerische Steuerung - Google Patents

Numerische Steuerung Download PDF

Info

Publication number
DE102019008550A1
DE102019008550A1 DE102019008550.7A DE102019008550A DE102019008550A1 DE 102019008550 A1 DE102019008550 A1 DE 102019008550A1 DE 102019008550 A DE102019008550 A DE 102019008550A DE 102019008550 A1 DE102019008550 A1 DE 102019008550A1
Authority
DE
Germany
Prior art keywords
command
numerical control
block
addresses
axis
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
DE102019008550.7A
Other languages
English (en)
Inventor
Chihiro ABE
Manabu Saitou
Takenori Ono
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 DE102019008550A1 publication Critical patent/DE102019008550A1/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/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • 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/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4141Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by a controller or microprocessor per axis
    • 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/35259Divide program in machining division blocks, and name them
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35349Display part, programmed locus and tool path, traject, dynamic locus

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Numerical Control (AREA)

Abstract

Eine numerische Steuerung umfasst eine Befehlsanalyseeinheit zum Analysieren des Bearbeitungsprogramms, in dem der Achsenbewegungsbefehl für eine Mehrzahl von Abschnitten in einem Block des Bearbeitungsprogramms beschrieben wird, in einer Leseverarbeitung für den einen Block, um eine Mehrzahl von Koordinatenwerten oder Bewegungsbeträgen festzulegen, und eine Blockinformationserzeugungseinheit zum Erzeugen der Blockinformation für die Mehrzahl von Abschnitten auf Grundlage der Mehrzahl von Koordinatenwerten oder Bewegungsbeträgen. Jede von einer oder mehreren Adressen wird nur einmal beschrieben und eine Mehrzahl von Befehlswerten, die den entsprechenden Adressen entsprechen, wird gemäß einer vorgegebenen Reihenfolge in dem Achsenbewegungsbefehl beschrieben, und die Befehlsanalyseeinheit legt eine Korrelation zwischen den Adressen und den Befehlswerten gemäß der Reihenfolge fest.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Offenbarung betrifft eine numerische Steuerung und betrifft insbesondere eine numerische Steuerung, die eine einfache und effiziente Durchführung von kontinuierlichen Achsensteuerbefehlen für eine Mehrzahl von Achsen realisiert.
  • Beschreibung der verwandten Technik
  • In einem Bearbeitungsprogramm (NC-Programm), das von einer numerischen Steuerung ausgeführt wird, wird normalerweise für jeden Block ein Liniensegment oder Bogenbewegungsbefehl beschrieben. Wenn ein Bearbeitungsweg, der eine Mehrzahl von Liniensegmenten oder Bögen umfasst, befohlen wird, ist es somit notwendig, den Achsenbewegungsbefehl kontinuierlich über eine Mehrzahl von Blöcken zu beschreiben (siehe 1).
  • Zusätzlich liest die numerische Steuerung normalerweise in dem NC-Programm beschriebene Befehlsblöcke nacheinander aus einem Kopf zur Analyse eines Programms, erzeugt Blockinformation, führt Interpolationsverarbeitung auf Grundlage der Blockinformation durch und schafft einen Verteilungsimpuls für jede Achse.
  • Um eine exzellente bearbeitete Oberfläche zu erlangen, muss die numerische Steuerung den Verteilungsimpuls kontinuierlich schaffen und ohne Unterbrechung ausgeben. Aus diesem Grund muss die numerische Steuerung vor der Interpolationsverarbeitung die Schaffung der für die Interpolation notwendigen Blockinformation abschließen. Somit beginnt die numerische Steuerung normalerweise, jeden Block des NC-Programms zu lesen, bevor ein in einem Block beschriebener Befehl ausgeführt wird, und analysiert alle Befehle, die in dem NC-Programm enthalten sind, was als Vorausabrufverarbeitung bezeichnet wird (siehe 2).
  • Der herkömmliche Achsenbewegungsbefehl weist folgende Probleme auf.
    1. (1) Es kann nur ein Abschnitt in einem Block befohlen werden. Aus diesem Grund entspricht Blockinformation, die in der Vorausabrufverarbeitung für einen Block schafft werden kann, im Wesentlichen einem Liniensegment. Wenn eine Festzyklusfunktion verwendet wird, können durch einen Blockbefehl eine Mehrzahl von Blockinformationen erzeugt werden. Die Festzyklusfunktion wird jedoch nur in einem begrenzten Aspekt verwendet, wie z.B. der Wiederholung eines vorgegebenen Vorgangs, und ist keine allgemeine Funktion.
    2. (2) Bei der Vorausabrufverarbeitung wird jedes Mal, wenn ein Block analysiert wird, zusätzlich zu der Befehlsanalyse eine Verarbeitung wie Modalschaltung oder Bestimmung verschiedener Signale zusammen durchgeführt. Aus diesem Grund nimmt, wenn die Anzahl der Blöcke zunimmt, die Anzahl der Verarbeitungszeiten zu, die nicht die Befehlsanalyse betreffen, und nimmt eine Gesamtverarbeitungszeit zu.
  • Als ein Schema zur Lösung eines solchen Problems ist es denkbar, ein Schema zum Erzeugen von Liniensegmenten einer Mehrzahl von Abschnitten unter Verwendung eines Blockbefehls bereitzustellen. JP 57-201903 A beschreibt z.B. eine numerische Steuerung, die einen Vorgang über eine Mehrzahl von Sequenzen in einem Block durchführt.
  • Das in JP 57-201903 A beschriebene Schema hat jedoch Einschränkungen dahingehend, dass eine Unterprogrammfunktion zur Durchführung des Vorgangs über die Mehrzahl von Sequenzen erforderlich ist und es notwendig ist, ein spezielles Zeichen zu verwenden, um eine Mehrzahl von Vorgängen zu beschreiben. Aus diesen Gründen bestehen Probleme dahingehend, dass die Verwendung dieses Systems komplizierte Arbeit erfordert und eine Situation, in der das System angewendet wird, begrenzt ist.
  • Die Offenbarung dient der Lösung eines solchen Problems und eine Aufgabe der Offenbarung ist es, eine numerische Steuerung bereitzustellen, die eine einfache und effiziente Durchführung von kontinuierlichen Achsensteuerbefehlen für eine Mehrzahl von Achsen realisiert.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Eine numerische Steuerung gemäß einer Ausführungsform der Offenbarung ist eine numerische Steuerung zum Analysieren eines in einem Bearbeitungsprogramm beschriebenen Achsenbewegungsbefehls zum Erzeugen von Blockinformation eines Weges, wobei die numerische Steuerung eine Befehlsanalyseeinheit zum Analysieren des Bearbeitungsprogramms, in dem der Achsenbewegungsbefehl für eine Mehrzahl von Abschnitten in einem Block des Bearbeitungsprogramms beschrieben wird, in einer Leseverarbeitung für den einen Block, um eine Mehrzahl von Koordinatenwerten oder Bewegungsbeträgen festzulegen, und eine Blockinformationserzeugungseinheit zum Erzeugen der Blockinformation für die Mehrzahl von Abschnitten auf Grundlage der Mehrzahl von Koordinatenwerten oder Bewegungsbeträgen, wobei jede von einer oder mehreren Adressen nur einmal beschrieben wird und eine Mehrzahl von Befehlswerten, die den entsprechenden Adressen entsprechen, gemäß einer vorgegebenen Reihenfolge in dem Achsenbewegungsbefehl beschrieben wird, und die Befehlsanalyseeinheit eine Korrelation zwischen den Adressen und den Befehlswerten gemäß der Reihenfolge festlegt, umfasst.
  • In der numerischen Steuerung gemäß einer Ausführungsform der Offenbarung wird eine modale Schaltverarbeitung durchgeführt, nachdem die Blockinformation für die Mehrzahl von in dem einen Block beschriebenen Abschnitten erzeugt wird.
  • In der numerischen Steuerung gemäß einer Ausführungsform der Offenbarung ist die Mehrzahl von Befehlswerten als Variablen vom Array-Typ vorgegeben.
  • In der numerischen Steuerung gemäß einer Ausführungsform der Offenbarung ist die Mehrzahl von Befehlswerten durch eine externe Datei vorgegeben.
  • In der numerischen Steuerung gemäß einer Ausführungsform der Offenbarung sind die eine oder mehreren Adressen und die Mehrzahl von Befehlswerten als ein Datensatz vorgegeben.
  • In der numerischen Steuerung gemäß einer Ausführungsform der Offenbarung sind die eine oder mehreren Adressen auf verschiedene Befehle bezogen, die kein Befehl eines Koordinatenwerts oder eines Bewegungsausmaßes sind.
  • In der numerischen Steuerung gemäß einer Ausführungsform der Offenbarung dürfen die Adressen weggelassen werden, wenn es keine Änderung der den Adressen entsprechenden Befehlswerte gibt.
  • In der numerischen Steuerung gemäß einer Ausführungsform der Offenbarung dürfen die den Adressen entsprechenden Befehlswerte weggelassen werden, wenn es keine Änderung der Befehlswerte gibt.
  • Gemäß der vorliegenden Offenbarung ist es möglich, eine numerische Steuerung bereitzustellen, die eine einfache und effiziente Durchführung von kontinuierlichen Achsensteuerbefehlen für eine Mehrzahl von Achsen realisiert.
  • Figurenliste
  • Die Aufgabe und das Merkmal der Offenbarung, vorstehend beschrieben, sowie andere Aufgaben und Eigenschaften werden aus der nachstehenden Beschreibung der Ausführungsformen unter Bezugnahme auf die beigefügten Zeichnungen offensichtlich. In den Zeichnungen sind:
    • 1 ein Diagramm, das ein Beispiel für ein herkömmliches Bearbeitungsprogramm zeigt;
    • 2 ein Diagramm, das ein Beispiel für herkömmliche Vorausabrufverarbeitung zeigt;
    • 3 ein Diagramm, das ein Beispiel für eine Hardwarekonfiguration einer numerischen Steuerung zeigt;
    • 4 ein Diagramm, das ein Beispiel für einen herkömmlichen Achsenbewegungsbefehl zeigt;
    • 5 ein Diagramm, das ein Beispiel für einen Achsenbewegungsbefehl in der vorliegenden Ausführungsform zeigt;
    • 6 ein Diagramm, das ein Beispiel für einen Achsenbewegungsbefehl in der vorliegenden Ausführungsform zeigt;
    • 7 ein Diagramm, das ein Beispiel für einen Achsenbewegungsbefehl in der vorliegenden Ausführungsform zeigt;
    • 8 ein Diagramm, das ein Beispiel für einen Achsenbewegungsbefehl in der vorliegenden Ausführungsform zeigt;
    • 9 ein Diagramm, das ein Beispiel für einen Achsenbewegungsbefehl in der vorliegenden Ausführungsform zeigt;
    • 10 ein Diagramm, das ein Beispiel für einen Achsenbewegungsbefehl in der vorliegenden Ausführungsform zeigt;
    • 11 ein Diagramm, das ein Beispiel für einen Achsenbewegungsbefehl in der vorliegenden Ausführungsform zeigt;
    • 12 ein Diagramm, das ein Betriebsbeispiel einer herkömmlichen numerischen Steuerung zeigt;
    • 13 ein Diagramm, das ein Betriebsbeispiel der numerischen Steuerung zeigt;
    • 14 ein Diagramm, das ein Betriebsbeispiel der numerischen Steuerung zeigt; und
    • 15 ein Diagramm, das ein Beispiel für eine funktionale Konfiguration der numerischen Steuerung zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • 3 ist ein schematisches Hardwarekonfigurationsdiagramm, das eine numerische Steuerung 1 gemäß einer Ausführungsform zeigt. Die numerische Steuerung 1 ist eine Vorrichtung, die z.B. eine Industriemaschine steuert, die Bohrvorgänge durchführt. Die numerische Steuerung 1 umfasst eine zentrale Verarbeitungseinheit (CPU) 11, einen Nur-Lese-Speicher (ROM) 12, einen Direktzugriffsspeicher (RAM) 13, einen nichtflüchtigen Speicher 14, einen Bus 10, eine Achsensteuerschaltung 16, einen Servoverstärker 17 und eine Schnittstelle 18. Ein Servomotor 50 und eine Ein-/Ausgabevorrichtung 60 sind mit der numerischen Steuerung 1 verbunden.
  • Die CPU 11 ist ein Prozessor, der die numerische Steuerung 1 als ein Ganzes steuert. Die CPU 11 liest ein in dem ROM 12 gespeichertes Systemprogramm über den Bus 10. Die CPU 11 steuert die gesamte numerische Steuerung 1 gemäß dem Systemprogramm.
  • Der ROM 12 speichert z.B. im Voraus ein Systemprogramm zur Ausführung verschiedener Steuervorgänge einer Maschine.
  • Der RAM 13 speichert vorübergehend Berechnungsdaten oder Anzeigedaten sowie Daten, ein Programm oder dergleichen, die von einer Bedienungsperson über die Ein-/Ausgabevorrichtung 60 eingegeben werden.
  • Der nichtflüchtige Speicher 14 ist z.B. durch eine Batterie (nicht gezeigt) abgesichert. Der nichtflüchtige Speicher 14 behält einen Speicherzustand selbst dann bei, wenn eine Energiequelle der numerischen Steuerung 1 ausgeschaltet wird. Der nichtflüchtige Speicher 14 speichert Daten, ein Programm usw., die von der Ein-/Ausgabevorrichtung 60 eingegeben werden. Das Programm und die Daten, die in dem nichtflüchtigen Speicher 14 gespeichert sind, können während der Ausführung und Verwendung in den RAM 13 geladen werden.
  • Die Achsensteuerschaltung 16 steuert eine Betriebsachse der Maschine. Die Achsensteuerschaltung 16 empfängt ein von der CPU 11 ausgegebenes Bewegungsbefehlsausmaß der Achse und gibt einen Bewegungsbefehl der Betriebsachse an den Servoverstärker 17 aus.
  • Der Servoverstärker 17 empfängt den von der Achsensteuerschaltung 16 ausgegebenen Achsenbewegungsbefehl und treibt den Servomotor 50 an.
  • Der Servomotor 50 wird von dem Servoverstärker 17 angetrieben, um die Betriebsachse der Maschine zu bewegen. In der vorliegenden Ausführungsform wird eine Spindel von dem Servomotor 50 bewegt. Der Servomotor 50 verfügt z.B. über einen Positions-/Geschwindigkeitsdetektor. Der Positions-/Geschwindigkeitsdetektor gibt ein Positions-/Geschwindigkeitsrückkopplungssignal aus. Dieses Positions-/Geschwindigkeitsrückkopplungssignal wird an die Achsensteuerschaltung 16 rückgekoppelt, so dass eine Positions-/Geschwindigkeitsrückkopplungssteuerung durchgeführt wird.
  • In 3 ist im Übrigen nur ein Satz einer Achsensteuerschaltung 16, eines Servoverstärkers 17 und eines Servomotors 50 gezeigt. In der Praxis wird der Satz jedoch für jede in der zu steuernden Maschine vorhandene Achse schafft.
  • Die Ein-/Ausgabevorrichtung 60 ist eine Daten-Ein-/Ausgabevorrichtung, die eine Anzeigevorrichtung, eine Hardwaretaste, etc. umfasst. Die Ein-/Ausgabevorrichtung 60 ist z.B. eine MDI-Einheit oder ein Bedienfeld. Die Ein-/Ausgabevorrichtung 60 zeigt von der CPU 11 über die Schnittstelle 18 empfangene Information auf einer Anzeigevorrichtung an. Die Ein-/Ausgabevorrichtung 60 leitet einen Befehl, Daten usw., die von einer Hardwaretaste usw. eingegeben wurden, über die Schnittstelle 18 an die CPU 11 weiter.
  • 15 ist ein Blockdiagramm, das einen Überblick über eine funktionale Konfiguration der numerischen Steuerung 1 zeigt. Die numerische Steuerung 1 umfasst eine Befehlsanalyseeinheit 101 und eine Blockinformationserzeugungseinheit 103.
  • Die Befehlsanalyseeinheit 101 liest und analysiert ein Bearbeitungsprogramm, das einen Achsenbewegungsbefehl umfasst, der Liniensegmente einer Mehrzahl von Abschnitten unter Verwendung eines Blockbefehls definieren kann. Die Befehlsanalyseeinheit 101 legt alle Koordinatenpunkte als Bewegungsziele auf Grundlage eines Analyseergebnisses des Bearbeitungsprogramms fest. Die Blockinformationserzeugungseinheit 103 erzeugt Blockinformation der Liniensegmente der Mehrzahl von Abschnitten auf Grundlage der von der Befehlsanalyseeinheit 101 festgelegten Koordinatenpunkte.
  • Eine Festlegung des Achsenbewegungsbefehls der vorliegenden Ausführungsform, der von der Befehlsanalyseeinheit 101 analysiert werden kann, wird mit Bezugnahme auf 4 bis 6 beschrieben. 4 ist ein Diagramm, das ein Beispiel für einen herkömmlichen Achsenbewegungsbefehl zeigt. Der Achsenbewegungsbefehl umfasst eine Kombination aus einer durch Buchstaben (G, X, Y, Z, etc.) angegebenen Adresse und einem durch Zahlen angegebenen Befehlswert. Befehle wie G91 und G00 werden als G-Codes bezeichnet. Ein G-Code bewirkt, dass die numerische Steuerung 1 eine Vorbereitungsfunktion zur Durchführung der Bearbeitung ausführt. Ein Befehl wie F4000. ist ein Bewegungsbefehl. Ein Zahlenwert des Bewegungsbefehls gibt eine Vorschubgeschwindigkeit an. Jeder Befehl wie X1.5, Y2., und Z-95 bezeichnet einen Koordinatenwert oder ein Bewegungsausmaß einer X-Achse, einer Y-Achse und einer Z-Achse. Gemäß einem herkömmlichen Beschreibungsverfahren für den Achsenbewegungsbefehl kann prinzipiell nur ein Liniensegment durch einen Block (eine Zeile des Bearbeitungsprogramms) ausgedrückt werden.
  • Andererseits können in dem Achsenbewegungsbefehl der vorliegenden Ausführungsform Inhalte, die einem Befehl für eine Mehrzahl von herkömmlichen Blöcken entsprechen, unter Verwendung eines Befehls für einen Block beschrieben werden. Dieser Achsenbewegungsbefehl hat die folgenden Merkmale.
    1. (1) Innerhalb eines Befehls eines Blockes ist es möglich, eine Mehrzahl von Befehlswerten (Koordinatenwerten, Bewegungsbeträgen usw.) zu bestimmen, die jeder Adresse entsprechen.
    2. (2) Eine Korrelation zwischen einer Adresse und einem Befehlswert wird gemäß einer vorgegebenen Regel beschrieben. Die Regel ist nicht insbesondere begrenzt. Beispielsweise sind die folgenden Regeln vorhanden.
      1. (a) Eine Korrelation zwischen einer Adresse und einer Mehrzahl von Befehlswerten ist durch eine Mehrzahl von Typen von vorgegebenen Trennzeichen definiert. In einem Beispiel von 5 wird z.B. ein Satz von Befehlswerten für jeden Abschnitt durch „[„und“]“ (eckige Klammern) definiert. Zusätzlich zeigt „,“ (Komma) ein Trennzeichen zwischen den Befehlswerten jeder Adresse an. Das heißt, [x1, y1, z1] ist eine Befehlswertgruppe, die ein Liniensegment in einem ersten Abschnitt definiert, x1 ist ein X-Achsen-Befehlswert, y1 ist ein Y-Achsen-Befehlswert und z1 ist ein Z-Achsen-Befehlswert. Auf ähnliche Weise ist [x2, y2, z2] eine Befehlswertgruppe, die ein Liniensegment in einem zweiten Abschnitt definiert, und ist [x3, y3, z3] eine Befehlswertgruppe, die ein Liniensegment in einem dritten Abschnitt definiert. 6 ist ein Achsenbewegungsbefehl, der gemäß einem in 5 gezeigten Format beschrieben wird. Der in 6 beschriebene Inhalt ist äquivalent zu dem Achsenbewegungsbefehl gemäß einem herkömmlichen Beschreibungsverfahren, das in 4 gezeigt ist. Achsenbewegungsbefehle, die in 4 von einer zweiten Zeile zu einer dritten Zeile beschrieben werden, sind in eine zweite Zeile in 6 integriert. Auf ähnliche Weise sind in 4 beschriebene Achsenbewegungsbefehle von einer vierten Zeile zu einer sechsten Zeile in eine dritte Zeile in 6 integriert. In der vorliegenden Ausführungsform ist es möglich, herkömmliche Befehle für eine Mehrzahl von Blöcken in einen Befehl für einen Block zu integrieren.
      2. (b) Korrelationen zwischen Adressen und einer Mehrzahl von Befehlswerten sind durch vorgegebene Trennzeichen und numerische Reihenfolge definiert. Beispielsweise können eine Befehlswertgruppe x1, y1 und z1, die Liniensegmente in einem ersten Abschnitt definiert (x1 ist ein Befehlswert auf der X-Achse, y1 ist ein Befehlswert auf der Y-Achse und z1 ist ein Befehlswert auf der Z-Achse), eine Befehlswertgruppe x2, y2 und z2, die Liniensegmente in einem zweiten Abschnitt definiert (x2 ist ein Befehlswert auf der X-Achse, y2 ist ein Befehlswert auf der Y-Achse und z2 ist ein Befehlswert auf der Z-Achse), ..., eine Befehlswertgruppe xn, yn und zn, die Liniensegmente in einem n-ten Abschnitt definiert (xn ist ein Befehlswert auf der X-Achse, yn ist ein Befehlswert auf der Y-Achse, und zn ist ein Befehlswert auf der Z-Achse) auch kollektiv für jeden Abschnitt wie folgt beschrieben werden. X ,  Y ,  Z = x1 ,  y1 ,  z1 ,  x2 ,  y2 ,  z2 , ,xn ,  yn ,  zn
        Figure DE102019008550A1_0001
        Alternativ können die Befehlswertgruppen auch für jede Adresse wie folgt kollektiv beschrieben werden. X ,  Y ,  Z = x1 ,  x2 , ,xn ,  y1 , y2 , yn ,  z1 , z2 , zn
        Figure DE102019008550A1_0002
      3. (c) Der in dem vorstehenden Punkt (a) oder (b) gezeigte Befehl kann auch durch eine Variable vom Array-Typ beschrieben werden. 8 (zweite Zeile und vierte Zeile) ist ein Beispiel, in dem der folgende Achsenbewegungsbefehl A unter Verwendung von einer Variablen vom Array-Typ umgeschrieben wird. Der Achsenbewegungsbefehl A wird gemäß einem in 5 gezeigten Format beschrieben. In 8 wird eine rechte Seite des Achsenbewegungsbefehls A im Voraus in einer Variablen vom Array-Typ (zweite Zeile) gespeichert und wird der Befehl in einer Form beschrieben, die sich auf die Variable (vierte Zeile) bezieht. Achsenbewegungsbefehl A: N22 G01 X , Y , Z  = [ 1,   2,   3 ] ,   [ 2,   3,   4 ] ,   [ 3,   4,   5 ] , ,   [ 10,   11,   12 ] ;
        Figure DE102019008550A1_0003
      4. (d) Ein in dem vorstehenden Punkt (a) oder (b) gezeigter Befehl kann auch unter Verwendung einer Bezugnahme auf eine Datei beschrieben werden. 9 (dritte Zeile) ist ein Beispiel, in dem der folgende Achsenbewegungsbefehl B unter Verwendung einer Bezugnahme auf eine Datei umgeschrieben wird. Der Achsenbewegungsbefehl B wird gemäß einem in 5 gezeigten Format beschrieben. In 9 wird der Inhalt, der einer rechten Seite des Achsenbewegungsbefehls B entspricht, im Voraus in einer externen Datei (PATH1.csv) beschrieben und wird der Befehl in einer Form beschrieben, die sich auf den Inhalt der Datei (dritte Zeile) bezieht. Achsenbewegungsbefehl B: N22 G01 X , Y , Z  = [ 0,  0 ,  0 ] ,   [ 1,  1 ,  1 ] ,   [ 2,  2 ,  2 ] , ;
        Figure DE102019008550A1_0004
        Auf ähnliche Weise ist 10 (dritte Zeile) ein Beispiel, in dem der folgende Achsenbewegungsbefehl C unter Verwendung einer Bezugnahme auf eine Datei umgeschrieben wird. Der Achsenbewegungsbefehl C wird gemäß einem in 5 gezeigten Format beschrieben. In 10 wird der Inhalt, der einer rechten Seite des Achsenbewegungsbefehls C entspricht, im Voraus in einer externen Datei (CAM_DATA.NC) beschrieben und wird der Befehl in einer Form beschrieben, die sich auf den Inhalt der Datei (dritte Zeile) bezieht. Achsenbewegungsbefehl C: N22 G01 X , Y , Z  = [ X0 ,  Y 0,  Z0 ] ,   [ X1 ,  Y1 ,  Z1 ] ,   [ X2 ,  Y2 ,  Z2 ] , [ X3 ,  Y3 ,  Z3 ] , ;
        Figure DE102019008550A1_0005
        Ein Dateiformat der externen Datei oder ein Format des Achsenbewegungsbefehls kann jegliches Dateiformat oder Format sein, solange eine Korrelation zu dem Befehlsinhalt vor dem Umschreiben aufrechterhalten wird. Es ist jedoch erforderlich, dass die Befehlsanalyseeinheit 101 die Korrelation erkennen und den Befehlsinhalt vor dem Umschreiben wiederherstellen kann.
      5. (e) Ein Befehl kann auch in einer Form beschrieben werden, die sich auf den Datensatz bezieht. 11 (zweite Zeile) ist ein Beispiel, in dem der folgende Achsenbewegungsbefehl D in ein Format umgeschrieben wird, das sich auf einen Datensatz bezieht. In 11 wird der Inhalt eines Teils folgend auf N21 des Achsenbewegungsbefehls D im Voraus in einem Datensatz (z.B. einer Struktur) (CYCLE1) gespeichert und wird der Befehl in einer Form beschrieben, die sich auf den Inhalt des Datensatzes (zweite Zeile) bezieht. Achsenbewegungsbefehl D:
        • N21 G00 X0. Y10. Z50.;
        • G01 Y20. Z55. F100.;
        • X10.;
        • G00 X15. Y20.;
        Das Format des Datensatzes kann jegliches Format sein, solange eine Korrelation zu dem Befehlsinhalt vor dem Umschreiben aufrechterhalten wird. Es ist jedoch erforderlich, dass die Befehlsanalyseeinheit 101 die Korrelation erkennen und den Befehlsinhalt vor dem Umschreiben wiederherstellen kann. Selbst wenn ein Datensatz verwendet wird, wird eine Adresse nur einmal in dem Datensatz beschrieben.
    3. (3) Befehle wie G-Codes können auch integriert und beschrieben werden, wie in Punkt (2) gezeigt. 7 zeigt z.B. ein Beispiel, in dem ein Befehl, der in einem herkömmlichen Beschreibungsverfahren als der folgende Achsenbewegungsbefehl E in einem herkömmlichen Beschreibungsverfahren beschrieben wird, in eine Zeile gemäß dem Format von 5 integriert und beschrieben wird. Achsenbewegungsbefehl E:
      • G00 X100, Y100, Y100, Z0
      • G01 X1, Y1, Z1
      • G01 X2, Y2, Z2
    4. (4) Bei einer Adresse, die keine Änderung eines Befehlswertes hat, kann die Befehlsbeschreibung weggelassen werden. Wenn sich z.B. in einem Beispiel von 6 die Z-Achse nicht bewegt (erste Zeile), werden nur die Befehle für die X-Achse und die Y-Achse beschrieben und wird für die Z-Achse kein Befehl beschrieben. Auf ähnliche Weise werden, wenn sich die X-Achse nicht bewegt (dritte Zeile), in diesem Block nur Befehle beschrieben, die sich auf die Y-Achse und die Z-Achse beziehen, und wird kein Befehl für die X-Achse beschrieben.
    5. (5) Ein Befehlswert (Zahlenwert) kann bei der Definition einer Achsenadresse weggelassen werden. Der Achsenbewegungsbefehl F kann z.B. wie folgt beschrieben werden. Achsenbewegungsbefehl F: G01 X , Y  = [ 0,   0 ] ,   [ 1,   ] ,   [ ,   2 ] .
      Figure DE102019008550A1_0006
      Dieser Befehl wird durch Integrieren und Beschreiben eines Achsenbewegungsbefehls G, der in einem herkömmlichen Beschreibungsverfahren wie folgt beschrieben wurde, in einer Zeile erlangt. Achsenbewegungsbefehl G:
      • G01 X0 Y0;
      • G01 X1;
      • G01 Y2;
  • Ein charakteristischer Betrieb der numerischen Steuerung 1 wird mit Bezugnahme auf die Ablaufdiagramme von 12 und 13 beschrieben. 12 ist ein Diagramm, das einen Betrieb einer herkömmlichen numerischen Steuerung zeigt. Die herkömmliche numerische Steuerung liest einen Block eines Bearbeitungsprogramms (S1) und analysiert den Block (S2). Dann wird Blockinformation eines in einem Block beschriebenen Liniensegments erzeugt (S3). Zusätzlich zu der Verarbeitung von S1 bis S3 führt die numerische Steuerung eine Zusatzverarbeitung wie z.B. Modalschaltung oder Bestimmung verschiedener Signale für jeden Block durch (S4). Die numerische Steuerung wiederholt die Verarbeitung von S1 bis S4 für alle Blöcke des Bearbeitungsprogramms.
  • 13 ist ein Diagramm, das einen Betrieb der numerischen Steuerung 1 gemäß der vorliegenden Ausführungsform zeigt. Die Befehlsanalyseeinheit 101 der numerischen Steuerung 1 liest einen Block des Bearbeitungsprogramms (S101) und analysiert ein Programm des gelesenen einen Blockes (S102). Wenn das Bearbeitungsprogramm nacheinander Liniensegmente einer Mehrzahl von Abschnitten mit einem Befehl eines Blockes definiert, der gemäß dem vorstehend beschriebenen Format (siehe (a) von 14) beschrieben wird, analysiert die Befehlsanalyseeinheit 101 hier den Block und extrahiert eine Mehrzahl von darin beschriebenen Koordinatenwerten oder Bewegungsbeträgen (siehe (b) von 14).
  • Die Blockinformationserzeugungseinheit 103 erzeugt Blockinformation eines Liniensegments unter Verwendung des von der Befehlsanalyseeinheit 101 (S103) extrahierten Koordinatenpunkts oder Bewegungsausmaßes. Hier wird Blockinformation eines Liniensegments mit einem unverarbeiteten Koordinatenpunkt oder Bewegungsausmaß mit einer frühesten Befehls-Reihenfolge (S103) erzeugt. Danach wird bestimmt, ob ein unverarbeiteter Koordinatenpunkt oder ein unverarbeitetes Bewegungsausmaß übrig bleibt (S104). Wenn der unverarbeitete Koordinatenpunkt oder das unverarbeitete Bewegungsausmaß übrig bleibt, kehrt die Verarbeitung zu S103 zurück und wird Blockinformation eines Liniensegments erzeugt. Wenn kein unverarbeiteter Koordinatenpunkt oder kein unverarbeitetes Bewegungsausmaß mehr übrig bleibt, wird eine Zusatzverarbeitung wie z.B. Modalschaltung oder Bestimmung verschiedener Signale durchgeführt (S105) und wird die Verarbeitung dieses Blockes beendet. Die numerische Steuerung 1 wiederholt die Verarbeitung von S101 bis S105 für alle Blöcke des Bearbeitungsprogramms.
  • Gemäß der vorliegenden Ausführungsform liest und analysiert die Befehlsanalyseeinheit 101 ein Bearbeitungsprogramm, das einen Achsenbewegungsbefehl umfasst, der Liniensegmente einer Mehrzahl von Abschnitten mit einem Befehl eines Blockes definieren kann, und legt alle Koordinatenpunkte als ein Bewegungsziel fest. Die Blockinformationserzeugungseinheit 103 erzeugt Blockinformation von Liniensegmenten einer Mehrzahl von Abschnitten auf Grundlage der von der Befehlsanalyseeinheit 101 festgelegten Koordinatenpunkte. Auf diese Weise ist es möglich, einen Bearbeitungsweg, der eine Mehrzahl von Liniensegmenten umfasst, unter Verwendung einer kleinen Anzahl von Blöcken zu steuern.
  • Zusätzlich ist es gemäß der vorliegenden Ausführungsform möglich, einen Block aus dem Bearbeitungsprogramm vorabzurufen, um eine Mehrzahl von Blockinformationen zu erzeugen. Aus diesem Grund ist es möglich, den mit der Zusatzverarbeitung verbundenen Aufwand wie Modalschaltung und Bestimmung verschiedener Signale zu unterdrücken. Folglich wird die Effizienz im Vergleich zu der herkömmlichen Vorausabrufverarbeitung verbessert.
  • Zusätzlich kann in einem Festzyklus herkömmlicherweise nur ein Festbetrieb durchgeführt werden. Bei der vorliegenden Ausführungsform kann jedoch ein Weg in Form einer in 11 gezeigten Matrix unter Verwendung eines Datensatzes frei eingestellt werden. Auf diese Weise ist es für eine Bedienungsperson einfach, einen Befehlspunkt zu verstehen.
  • Zusätzlich ist es in der vorliegenden Ausführungsform möglich, durch Durchführen eines Achsenbewegungsbefehls in einem Format, das sich auf eine Variable vom Array-Typ oder eine externe Datei bezieht, eine Achsenbewegung zu befehlen, ohne einen Koordinatenwert direkt in dem Programm festzulegen. Auf diese Weise wird die Vielseitigkeit erhöht, da die Koordinatenwerte wiederverwendet werden können.
  • Zusätzlich wird in der vorliegenden Ausführungsform Blockinformation von Liniensegmenten einer Mehrzahl von Abschnitten unter Verwendung eines Befehls eines Blockes erzeugt. Aus diesem Grund ist es nicht erforderlich, eine bestimmte Unterprogrammfunktion oder ein spezielles Zeichen zu verwenden. Folglich ist es möglich, eine Technologie gemäß der vorliegenden Offenbarung kostengünstig einzuführen.
  • Die vorliegende Offenbarung ist im Übrigen nicht auf die vorstehend beschriebene Ausführungsform beschränkt und kann entsprechend geändert werden, ohne vom Geist der vorliegenden Offenbarung abzuweichen. In der vorstehend beschriebenen Ausführungsform wurde z.B. hauptsächlich ein Beispiel beschrieben, in dem die Blockinformationserzeugungseinheit 103 die Blockinformation der Liniensegmente erzeugt. Die vorliegende Offenbarung ist jedoch nicht darauf beschränkt. Beispielsweise kann Blockinformation eines beliebigen Weges, wie z.B. eines Bogens, durch ein ähnliches Schema erzeugt werden.
  • Zusätzlich zeigt die vorstehend beschriebene Ausführungsform ein Beispiel, in dem G-Codes, die sich auf Befehle in einer Mehrzahl von Abschnitten beziehen, in eine Zeile integriert sind. Die vorliegende Offenbarung ist jedoch nicht darauf beschränkt. Es ist z.B. auch möglich, jegliche Befehle eines Bearbeitungsbefehls wie F-Code, eine Hilfsfunktion wie M-Code usw. zu integrieren.
  • Ein Beschreibungsverfahren für eine Korrelation zwischen einer Adresse und einer Mehrzahl von Befehlswerten, das in der vorstehenden Ausführungsform gezeigt ist, ist nur ein Beispiel. Wenn ein Befehl, der sich auf einen Weg einer Mehrzahl von Abschnitten bezieht, in einem Block beschrieben wird, wird eine Adresse nur einmal beschrieben und wird mindestens ein Befehlswert, der jeder Adresse entspricht, definiert, wobei eine Beschreibung in jedem Format erlaubt ist.
  • 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 57201903 A [0006, 0007]

Claims (8)

  1. Numerische Steuerung zum Analysieren eines in einem Bearbeitungsprogramm beschriebenen Achsenbewegungsbefehls zum Erzeugen von Blockinformation eines Weges, wobei die numerische Steuerung umfasst: eine Befehlsanalyseeinheit zum Analysieren des Bearbeitungsprogramms, in dem der Achsenbewegungsbefehl für eine Mehrzahl von Abschnitten in einem Block des Bearbeitungsprogramms beschrieben wird, in einer Leseverarbeitung für den einen Block, um eine Mehrzahl von Koordinatenwerten oder Bewegungsbeträgen festzulegen; und eine Blockinformationserzeugungseinheit zum Erzeugen der Blockinformation für die Mehrzahl von Abschnitten auf Grundlage der Mehrzahl von Koordinatenwerten oder Bewegungsbeträgen, wobei jede von einer oder mehreren Adressen nur einmal beschrieben wird und eine Mehrzahl von Befehlswerten, die den entsprechenden Adressen entsprechen, gemäß einer vorgegebenen Reihenfolge in dem Achsenbewegungsbefehl beschrieben wird, und die Befehlsanalyseeinheit eine Korrelation zwischen den Adressen und den Befehlswerten gemäß der Reihenfolge festlegt.
  2. Numerische Steuerung nach Anspruch 1, wobei eine modale Schaltverarbeitung durchgeführt wird, nachdem die Blockinformation für die Mehrzahl von in dem einen Block beschriebenen Abschnitten erzeugt wird.
  3. Numerische Steuerung nach Anspruch 1, wobei die Mehrzahl von Befehlswerten als Variablen vom Array-Typ vorgegeben ist.
  4. Numerische Steuerung nach Anspruch 1, wobei die Mehrzahl von Befehlswerten durch eine externe Datei vorgegeben ist.
  5. Numerische Steuerung nach Anspruch 1, wobei die eine oder mehreren Adressen und die Mehrzahl von Befehlswerten als ein Datensatz vorgegeben sind.
  6. Numerische Steuerung nach Anspruch 1, wobei die eine oder mehreren Adressen auf verschiedene Befehle bezogen sind, die kein Befehl eines Koordinatenwertes oder eines Bewegungsbetrages sind.
  7. Numerische Steuerung nach Anspruch 1, wobei die Adressen weggelassen werden dürfen, wenn es keine Änderung der den Adressen entsprechenden Befehlswerte gibt.
  8. Numerische Steuerung nach Anspruch 1, wobei die den Adressen entsprechenden Befehlswerte weggelassen werden dürfen, wenn es keine Änderung der Befehlswerte gibt.
DE102019008550.7A 2018-12-17 2019-12-10 Numerische Steuerung Pending DE102019008550A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-235835 2018-12-17
JP2018235835A JP7088820B2 (ja) 2018-12-17 2018-12-17 数値制御装置

Publications (1)

Publication Number Publication Date
DE102019008550A1 true DE102019008550A1 (de) 2020-06-18

Family

ID=70858708

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019008550.7A Pending DE102019008550A1 (de) 2018-12-17 2019-12-10 Numerische Steuerung

Country Status (4)

Country Link
US (1) US11194313B2 (de)
JP (1) JP7088820B2 (de)
CN (1) CN111324086B (de)
DE (1) DE102019008550A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2023276121A1 (de) 2021-07-01 2023-01-05

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57201903A (en) 1981-01-20 1982-12-10 Okuma Mach Works Ltd Plural operation sequence generating system in numerical control device

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2982010B2 (ja) * 1989-06-23 1999-11-22 三菱電機株式会社 数値制御方法及び装置
US7043332B1 (en) * 2000-09-22 2006-05-09 Citizen Watch Co., Ltd. Numeric control lathe and method for controlling the same
KR100766310B1 (ko) * 2006-01-04 2007-10-11 포항공과대학교 산학협력단 G 코드로부터 step-nc 파트 프로그램으로 변환하는 방법 및 기록매체
JP2008287471A (ja) * 2007-05-17 2008-11-27 Fanuc Ltd 5軸加工機の数値制御方法
JP6363643B2 (ja) * 2016-03-04 2018-07-25 ファナック株式会社 プログラム指令の解析桁数を増やすことを可能とする数値制御装置
JP6426662B2 (ja) * 2016-06-30 2018-11-21 ファナック株式会社 スカイビング加工制御を行う数値制御装置
JP6464135B2 (ja) * 2016-12-22 2019-02-06 ファナック株式会社 数値制御装置
JP6320668B1 (ja) * 2017-07-14 2018-05-09 三菱電機株式会社 数値制御装置および数値制御方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57201903A (en) 1981-01-20 1982-12-10 Okuma Mach Works Ltd Plural operation sequence generating system in numerical control device

Also Published As

Publication number Publication date
JP2020098428A (ja) 2020-06-25
CN111324086A (zh) 2020-06-23
US20200192334A1 (en) 2020-06-18
CN111324086B (zh) 2024-05-07
JP7088820B2 (ja) 2022-06-21
US11194313B2 (en) 2021-12-07

Similar Documents

Publication Publication Date Title
DE102018000369B4 (de) Numerische steuerung
DE112015004939B4 (de) Verfahren zum Optimieren der Produktivität eines Bearbeitungsprozesses einer CNC-Maschine
DE69230599T2 (de) Numerische Steuereinheit
EP2453326B1 (de) Verfahren und System zur Bedienung einer Maschine aus der Automatisierungstechnik
DE102016117560B4 (de) Werkzeugmaschine zum erzeugen einer geschwindigkeitsverteilung
DE102018007630A1 (de) Numerisches steuersystem
DE102018123849A1 (de) System zum Ausgleichen einer thermischen Verschiebung
DE102010010105B4 (de) Numerische Steuerungseinrichtung mit einer Achsrekonfigurationsmöglichkeit
DE102020212798A1 (de) Verfahren und vorrichtung zur simulation einer bearbeitung an einer werkzeugmaschine mittels selbstlernendem system
DE102011011661A1 (de) Numerische Steuerung mit einer Werkzeugbahn-Anzeigefunktion
DE102017004366A1 (de) Numerische Steuervorrichtung
DE102019110434A1 (de) Werkzeugwahlvorrichtung und Maschinenlernvorrichtung
DE102011104445A1 (de) Numerische Steuerung für eine Werkzeugmaschine mit einer Funktion zur Geschwindigkeitssteuerung einer Bogenführung
DE102015011006B4 (de) Numerische Steuervorrichtung zur Vereinfachung der Einstellung einer maschinellen Arbeitsbewegung
DE102009003003A1 (de) Numerische Steuerung mit der Funktion einer Koordinatentransformation der Werkzeugphase
DE102017001783A1 (de) Numerische Steuervorrichtung, die eine Erhöhung der Anzahl Analyseziffern eines Programmbefehls ermöglicht
DE112018008126T5 (de) Machine-Learning-Vorrichtung, Bearbeitungsprogrammerzeugungsvorrichtung und Machine-Learning-Verfahren
DE102015009210A1 (de) Numerische Steuerung mit Unterstützung eines linkshändigen Koordinatensystems
DE102017222474A1 (de) Numeriksteuerung und datenstruktur
DE102019001177B4 (de) Steuergerät, maschinelle Lernvorrichtung und System
DE69414658T2 (de) Verfahren zur ausführung eines bearbeitungsprogrammes
DE102018007107A1 (de) Steuereinrichtung und maschinenlerneinrichtung
DE102019008550A1 (de) Numerische Steuerung
DE112021003517T5 (de) Numerisches Steuersystem
DE102020116210A1 (de) Parameterverwaltungsvorrichtung und Parameterverwaltungssystem

Legal Events

Date Code Title Description
R012 Request for examination validly filed