DE69727461T2 - Überlagerungssteuerverfahren mit numerischer steuerung - Google Patents

Überlagerungssteuerverfahren mit numerischer steuerung Download PDF

Info

Publication number
DE69727461T2
DE69727461T2 DE69727461T DE69727461T DE69727461T2 DE 69727461 T2 DE69727461 T2 DE 69727461T2 DE 69727461 T DE69727461 T DE 69727461T DE 69727461 T DE69727461 T DE 69727461T DE 69727461 T2 DE69727461 T2 DE 69727461T2
Authority
DE
Germany
Prior art keywords
axis
overlay
acceleration
command value
command
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.)
Expired - Lifetime
Application number
DE69727461T
Other languages
English (en)
Other versions
DE69727461D1 (de
Inventor
Tomomi Nakazato
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
Application granted granted Critical
Publication of DE69727461D1 publication Critical patent/DE69727461D1/de
Publication of DE69727461T2 publication Critical patent/DE69727461T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • B23Q15/007Automatic control or regulation of feed movement, cutting velocity or position of tool or work while the tool acts upon the workpiece
    • B23Q15/013Control or regulation of feed movement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • 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/41Numerical 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 interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • G05B19/4103Digital interpolation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34161Superposition curves, combine xy slides with other xy or polar slides
    • 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/35406Decompose axis movement, group components, interpolate separately, superpose pulses
    • 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/45Nc applications
    • G05B2219/45136Turning, lathe
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50008Multiple, multi tool head, parallel machining
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50015Multi cutting, twin tools contact at same time workpiece, balance cutting

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Numerical Control (AREA)
  • Control Of Position Or Direction (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf ein Überlagerungssteuer-Verfahren für eine Werkzeugmaschine, in der eine Vielzahl von Steuersystemen durch eine rechnergestützte numerische Steuereinrichtung (CNC) gesteuert werden.
  • Es ist bereits ein Überlagerungssteuer-Verfahren bekannt, bei dem die Bewegung einer willkürlichen Achse in einem Steuersystem einer Bewegung einer Achse in einem anderen Steuersystem überlagert wird, um dadurch in einer Werkzeugmaschine, die durch eine numerische Steuereinrichtung, die ein Mehrfaches an Steuersystemen hat, gesteuert wird, die Achse des letzteren Steuersystem zu steuern, (s. z. B. EP 0 429 768 u. Zusammenfassung des Patents JP 02 181 203 ).
  • 2 zeigt ein Blockschaltbild, welches das Prinzip einer herkömmlichen Überlagerungssteuerung für ein Drehbank darstellt, die zwei Steuersysteme hat. Es sind zwei Steuersysteme vorgesehen, die unabhängig voneinander gesteuert werden, wobei jedes Vorbewegungswellen für X- u. Z Achsen hat. Auf der Grundlage eines Bearbeitungsprogramms wird für jedes Steuersystem eine Interpolationsverarbeitung für einen Bewegungsbefehl durchgeführt, und nachdem die Bewegungsbefehlswerte, die auf die X- und Z-Achsen zu verteilen sind, jeweils einer Beschleunigungs/Verzögerungs-Verarbeitung unterzogen sind, werden sie an jeweilige Servomotoren für die Achsen ausgegeben, so dass die X- u. Z-Achsen jedes der Steuersysteme unabhängig voneinander gesteuert werden.
  • Es gibt einen Fall, in dem die Steuerung mit einem Steuersystem als einem Referenzsystem und dem anderen Steuersystem als einem Überlagerungssystem durchgeführt wird, so dass die Bewegung einer Achse des einen Systems der Bewegung einer Achse des anderen Systems überlagert wird. Beispielsweise wird, wie in 3 gezeigt, ein Werkstück W durch ein Spannfutter 1 an einer Spindel angebracht, in Z-Achsen-Richtung (Rechts- und Linksrichtung in 3) bewegt und sowohl durch ein Werkzeug T1, das sich in X-Achsen-Richtung (aufwärts und abwärts in 3) bewegt, als auch durch ein Werkzeug T2 bearbeitet, das in X-Achsen-Richtung und Z-Achsen-Richtung bewegbar ist.
  • Im vorstehenden Fall muss die Bewegung des Werkzeugs T2 in Z-Achsen-Richtung der Bewegung des Werkstücks W in Z-Achsen-Richtung folgen. Daher wird das Steuersystem für das Werkzeug T1 als das Referenzsystem festgelegt, das Steuersystem für das Werkzeug T2 wird als das Überlagerungssystem festgelegt, und der Bewegungsbefehl für die Z-Achse des Referenzsystems wird zu dem Bewegungsbefehl für die Z-Achse des Überlagerungssystems addiert und ihm überlagert, um die Z-Achse des Überlagerungssystems zu steuern. Da die Bewegung des Werkstücks W in Z-Achsen-Richtung, d. h. die Bewegung in Z-Achsen-Richtung des Referenzsystems, der Bewegung des Werkzeugs T2 in Z-Achsen-Richtung überlagert wird, bewegt sich das Werkzeug T2 mit dem Werkstück W und bewegt sich gleichzeitig relativ zu dem Werkstück W um einen Betrag des Z-Achsen-Bewegungsbefehls für das Überlagerungssystem, wodurch das Werkstück W durch das Werkzeug T2 wie durch das Überlagerungssystem befohlen bearbeitet werden kann. Als ein Verfahren für eine solche Überlagerung wird ein Wert des Bewegungsbefehls für die Z-Achse des Referenzsystems (ein Wert, der auf die Z-Achse verteilt ist), welcher der Beschleunigung/Verzögerung-Verarbeitung unterzogen worden ist, zu einem Wert des Bewegungsbefehls für die Z-Achse des Überlagerungssystems addiert, welcher der Beschleunigungs/Verzögerungs-Verarbeitung unterogen worden ist, wie dies in 2 gezeigt ist, so dass der Servomotor für die Z-Achse des Überlagerungssystems, der auf der Grundlage des überlagerten Werts zu treiben ist, gesteuert wird. In diesem Fall wird die Überlagerungssteuerung in einem Zustand, in dem sowohl das Referenzsystem als auch das Überlagerungssystem gestoppt ist, gestartet und beendet.
  • Dies ist deswegen der Fall, weil wenn die Überlagerungssteuerung während der Bewegung des Referenzsystems gestartet wird, der Überlagerungswert für die überlagerte Achse nicht der Beschleunigungs/Verzögerungs-Verarbeitung unterzogen ist und der Bewegungsbefehlswert für die Referenzachse direkt addiert wird, um eine schnelle Beschleunigung der überlagert Achse zu veranlassen, so dass ein Stoß oder eine Schwingung auftritt oder ein Alarm infolge eines übermäßigen Anstiegs einer Positionsabweichung ausgegeben wird. Um dies unter Bezugnahme auf das Beispiel gemäß 3 zu erklären, ist festzustellen, dass wenn die Bewegung des Werkstücks W zu der Z-Achsenbewegung des Werkzeugs T2 des Überlagerungssystems während der Bewegung des Werkstücks W addiert wird, keine Beschleunigungs/Verzögerungs-Verarbeitung des Überlagerungs-Bewegungsbefehls für das Werkzeug T2 durchgeführt wird und einfach die Geschwindigkeit des Werkstücks W überlagert wird, um eine schnelle Beschleunigung zu veranlssen, so dass ein Stoß oder ein Schwingung auftritt. Daher werden in dem Fall, in dem eine Bearbeitung durch die zwei Steuersysteme mittels einer Sequenz mit einer Nicht-Überlagerungssteuerung, einer Überlagerungssteuerung und einer Nicht-Überlagerungssteuerung auszuführen ist, Bearbeitungsprogramme für das Referenz- und das Überlagerungssystems zuerst einzeln in einer Nicht-Überlagerungsbetriebsart, dann in einer Überlagerungsbetriebsart nach Abwarten, bis beide Bewegungen der zwei Steuersysteme abgeschlossen sind, und wieder in einer Nicht-Überlagerungsbetriebsart ausgeführt, nachdem die jeweiligen Bearbeitungsprogramme für die Überlagerungsbetriebsart beendet sind.
  • Jedoch hat jedesmal dann, wenn die Überlagerungssteuerung gestartet oder beendet wird, eines der zwei Steuersysteme zu warten, bis ein Bearbeitungsprogramm des anderen Steuersystem abgeschlossen ist, womit sich ein Problem dahingehend ergibt, dass eine Bearbeitungszeit und demzufolge ein Bearbeitungszyklus verlängert werden.
  • Um das Problem zu lösen, kann ein Verfahren eingesetzt werden, bei dem der Bewegungsbefehlswert vor dem Unterziehen deselben der Beschleunigungs/Verzögerungs-Verarbeitung für das Referenzsystem zu dem Bewegungsbefehlswert vor dem Unterziehen deselben der Beschleunigungs/Verzögerungs-Verarbeitung für das Überlagerungssystem addiert wird und dann der gewonnene Wert der Beschleunigungs/Verzögerungs-Verarbeitung unterzogen wird. Dieses Verfahren ist jedoch dadurch nachteilig, dass ein Wegfehler der überlagerten Achse auftritt, sofern nicht die Werte der Zeitkonstanten der Beschleunigungs/Verzögerungs-Verarbeitung für die Referenzachse und die überlagerte Achse gleich sind oder innerhalb eines bestimmten Bereichs nahe beieinander liegen.
  • Eine Aufgabe der vorliegenden Erfindung besteht darin, ein Überlagerungssteuer-Verfahren zu schaffen, bei dem es nicht notwendig ist, zu warten, bis das Referenzsystem und das Überlagerungssystems stoppen und die Überlagerungssteuerung gestartet und beendet werden kann, ohne zu verursachen, dass der Wegfehler auf die überlagerte Achse übertragen wird.
  • Ein Überlagerungssteuer-Verfahren gemäß der vorliegenden Erfindung umfasst Schritte zum Durchführen einer Beschleunigungs/Verzögerungs-Verarbeitung eines Bewegungsbefehlswerts, der für eine erste Achse in einem ersten Steuersystem von einer numerischen Steuereinrichtung verteilt wird, um einen beschleunigten/verzögerten Bewegungsbefehlswert für die erse Achse zu gewinnen, Durchführen einer Beschleunigungs/Verzögerungs-Ver-arbeitung eines Bewegungsbefehlswerts, der für eine zweite Achse in einem zweiten Steuersystem von der numerischen Steuereinrichtung verteilt wird, um einen beschleunigten/verzögerten Bewegungsbefehlswert für die zweite Achse zu gewinnen, Durchführen einer Beschleunigungs/Verzögerungs-Verarbeitung des Bewegungsbefehlswerts, der für die erste Achse von der numerischen Steuereinrichtung verteilt wird, getrennt von der Beschleu nigungs/Verzögerungs-Verarbeitung für die erste Achse und der Beschleunigungs/Verzögerungs-Verarbeitung für die zweite Achse und Addieren des gewonnenen Bewegungsbefehlswerts, der dem beschleunigten/verzögerten Bewegungsbefehlswert für die zweite Achse zu überlagern ist, wenn ein Überlagerungsbefehl eingegeben wird, und Bewegen der zweiten Achse auf der Grundlage des überlagerten Bewegungsbefehlswerts.
  • Wenn der Überlagerungsbefehl eingegeben wird, wird der zuvor genannte Überlagerungsprozess durch Positionieren der zweiten Achse in einer gewünschten Position in einem Koordinatensystem des ersten Steuersystems auf der Grundlage eine Befehls ausgeführt, der durch ein Bearbeitungsprogramm für das zweite Steuersystem vorgesehen ist.
  • 1 zeigt ein Blockschaltbild, welches das Prinzip eines Überlagerungssteuer-Verfahrens gemäß der vorliegenden Erfindung darstellt.
  • 2 zeigt ein Blockschaltbild, welches das Prinzip eines herkömmlichen Überlagerungssteuer-Verfahrens darstellt.
  • 3 zeigt eine schematische Darstellung einer Anwendung des Verfahrens gemäß der vorliegenden Erfindung auf eine Drehbank als eine Werkzeugmaschine.
  • 4 zeigt ein Blockschaltbild, das einen wententlichen Teil einer numerischen Steuereinrichtung zum Ausführen des Verfahrens gemäß der vorliegenden Erfindung darstellt.
  • 5 zeigt ein Flussdiagramm, das einen Prozess für ein Referenzsystem gemäß einem Ausführungsbeispiel der vorliegenden Erfindung darstellt.
  • 6 zeigt ein Flussdiagramm, das einen Prozess für ein Überlagerungssystem gemäß dem Ausführungsbeispiel darstellt.
  • Zuerst wird unter Bezugnahme auf 1 das Prinzip eines Überlagerungssteuer-Verfahrens gemäß der vorliegenden Erfindung erklärt. Das Verfahren gemäß der vorliegenden Erfindung unterscheidet sich von dem herkömmlichen Verfahren, das in 2 gezeigt ist, in folgender Hinsicht:
  • Bei dem herkömmlichen Verfahren wird der Bewegungsbefehlswert, der auf die Z-Achse des Referenzsystems verteilt wird, einer Beschleunigungs/Verzögerungs-Verarbeitung unterzogen, und der auf diese Weise gewonnene Befehlswert, der an den Z-Achsen-Motor auszugeben ist, wird dem Befehlswert für die Z-Achse des Überlagerungssystems überlagert. Gemäß der vorliegenden Erfindung ist im Gegensatz dazu ein Beschleunigungs/Verzögerungs-Verarbeitungsabschnitt für den Überlagerungsprozess getrennt von den Beschleunigungs/Verzögerungs-Verarbeitungsabschnitten, die den Referenz- und Überlagerungssystemen zugeordnet sind, vorsehen, der Bewegungsbefehlswert, der auf die Z-Achse des Referenzsystems verteilt wird, wird einer Beschleunigungs/Verzögerungs-Verarbeitung in dem Beschleunigungs/Verzögerungs-Verarbeitungsabschnitt unterzogen, der für den Überlagerungsprozess bestimmt ist, und der Befehlswert, der auf diese Weise gewonnen ist, wird zu dem Bewegungsbefehlswert für den Motor für die Z-Achse der überlagerten Achse addiert und demzufolge diesem überlagert.
  • Während der Bewegung der Z-Achse des Referenzsystems, beispielsweise während sich die Z-Achse mit einer vorbestimmten Geschwindigkeit nach einer Beschleunigung bewegt, wird wenn ein Überlagerungsbefehl eingegeben ist, der verteilte Bewegungswert, welcher der Z-Achse des Referenzsystems einzugeben isz, einer Beschleunigungs/Verzögerungs-Verarbeitung in dem Beschleunigungs/Verzögerungs-Verarbeitungsabschnitt für die Überlagerung unterzogen und dann zu dem Be wegungsbefehlswert für die Z-Achse des Überlagerungssystems addiert. Folglich wird die Geschwindigkeit der Z-Achse des Referenzsystems beim Start der Überlagerung nicht direkt zu dem Bewegungsbefehlswert für die Z-Achse des Überlagerungssystems addiert, sondern es wird die Z-Achse des Überlagerungssystems graduell beschleunigt, und wenn der Beschleunigungprozess durch den Beschleunigungs/Verzögerungs-Verarbeitungsabschnitt für die Überlagerung abgeschlossen ist, wird die Geschwindigkeit der Z-Achse des Referenzsystems in ihrer Geesamtheit zu dem Bewegungsbefehlswert für die Z-Achse des Überlagerungssystems addiert. Außerdem wird der Bewegungsbefehlswert, wenn die Überlagerung in dem Beschleunigungs/Verzögerungs-Verarbeitungsabschnitt beendet ist, graduell ausgegeben, um dadurch den Überlagerungswert graduell zu verringern, und schließlich wird die überlagerte Geschwindigkeit "0". Als Ergebnis erfährt die Bewegung der Z-Achse des Überlagerungssystems, wenn die Überlagerung gestartet oder beendet wird, keine schnelle Beschleunigung oder schnelle Verzögerung, wodurch die Überlagerung fliessend gestartet und beendet werden kann. Es ist auch möglich, die Beschleunigungs/Verzögerungs-Zeitkonstante des Beschleunigungs/Verzögerungs-Verarbeitungsabschnitts für die Überlagerung an diejenige der Z-Achse des Referenzsystems unabhängig von dem Überlagerungssystem anzupassen, so dass kein Wegfehler der überlagerten Achse auftritt.
  • 4 zeigt ein Blockschaltbild einer numerischen Steuereinrichtung 100 zum Ausführen eines Verfahren gemäß einem Ausführungsbeispiel der vorliegenden Erfindung. Die numerische Steuereinrichtung 100 steuert eine Drehbank als eine Werkzeugmaschine, die zwei Steuersysteme hat, die jeweils zwei X- u. Y-Achsen umfassen, wie dies in 3 gezeigt ist.
  • Ein Prozessor 11 der numerischen Steuereinrichtung 100 liest über einen Bus 21 Systemprogramme aus, die in einem ROM 12 gespeichert sind, und steuert die numerische Steuer einrichtung 100 allgemein gemäß den Systemprogrammen. Ein RAM 13 speichert vorübergehend Berechnungsdaten, Anzeigedaten und verschiedene Daten, die von einer Bedienungsperson durch eine CRT/MDI-Einheit 70 eingegeben werden. Ein CMOS-Speicher 14 ist ein nichtflüchtiger Speicher, der durch eine Batterie (nicht gezeigt) gestützt ist, um Daten, die darin gespeichert sind, selbst dann zurückzuhalten, wenn die Stromversorgung für die numerische Steuereinrichtung 100 abgeschaltet wird, und er speichert Bearbeitungsprogramme, die über eine Schnittstelle 15 eingelesen oder durch die CRT/MDI-Einheit 70 eingegeben werden. In den ROM 12 sind vorab verschiedene Systemprogramme zum Ausführen einer Aufbereitungsbetiebsart-Verarbeitung eingeschrieben, die zum Erstellen und Aufbereiten der Bearbeitungsprogramme und für die Verarbeitung zum automatischen Betrieb notwendig sind.
  • Die Schnittstelle 15 ist für eine externe Einrichtung vorgesehen, die mit der numerischen Steuereinrichtung 100 zu verbinden ist, und mit der Schnittstelle 15 ist eine externe Einrichtung 72, wie ein Floppy-Kassetten-Adapter, verbunden. Aus der externen Einrichtung 72 wird ein Bearbeitungsprogramm oder dgl. ausgelesen, und außerdem kann das Bearbeitungsprogramm, das in der numerischen Steuereinrichtung 100 aufbereitet ist, über die externe Einrichtung 72 in einer Floppy-Kassette usw. gespeichert werden.
  • Eine programmierbare Steuereinrichtung PC (Programmable Controller) 16 steuert Hilfs-Einrichtungen der Werkzeugmaschine, z. B. Aktoren, wie eine Roboterhand zum Wechseln von Werkzeugen, in Übereinstimmung mit Sequenzprogrammen, die in der numerischen Steuereinrichtung 100 gespeichert sind. Insbesondere in Übereinstimmung mit M-, S- u. T-Funktionen, die durch ein Bearbeitungsprogramm bestimmt sind, führt die PC 16 eine Umwandlung auf der Grundlage der Sequenzprogramme durch, um Signale, die für die Hilfs-Einrichtungen notwendig sind, zu gewinnen, und gibt die Signale über eine Eingabe/Ausgabe-Einheit 17 an die Hilfs- Einrichtung aus. Gemäß den ausgegebenen Signalen werden in den Hilfs-Einrichtugen z. B. verschiedene Aktoren betätigt. Außerdem empfängt die PC 16 Signale von verschiedenen Schaltern in einem Steuersschaltfeld, das auf dem Hauptkörper der Werkzeugmaschine montiert ist, verarbeitet die Signale und überträgt die verarbeiteten Signale zu dem Prozessor 11.
  • Die CRT/MDI-Einheit 70 ist eine Hand-Dateneingabe-Einrichtung, die mit einer Anzeigeeinrichtung, einer Tastatur usw. ausgestattet ist, und eine Schnittstelle 18 empfängt Befehle und Daten von der Tastatur der CRT/MDI-Einheit 70 und überträgt dieselben zu dem Prozessor 11. Eine Schnittstelle 19 ist mit einem Hand-Impulsgenerator 71 verbunden und empfängt Impulse von diesem. Der Hand-Impulsgenerator 71 ist in dem Steuerschaltfeld vorgesehen und wird benutzt, um ein Werkzeug durch Steuern der einzelnen Achsen mittels Verteilungsimpulsen, die durch Betätigung von Hand erzeugt werden, mit Präzision zu positionieren.
  • Achsensteuerschaltungen 30 bis 33, die zwei Paaren von Xu. Z-Achsen zum Bewegen eines Werkzeugs oder eines Werkstücks zugeordnet sind, werden Bewegungsbefehlswerte für die entsprechenden Achsen von dem Prozessor 11 zugeführt und geben die the Befehle an jeweilige Servoverstärkers 40 bis 43 aus. Auf den Empfang dieser Befehle hin treiben die Servoverstärker 40 bis 43 Servomotoren 50 bis 53, die den jeweiligen Achsen zugeordnet sind. In jeden der Servomotoren 50 bis 53, die den jeweiligen Achsen zugeordnet sind, sind Positions- und Geschwindigkeits-Detektoren eingebaut, und auf die Achsensteuerschaltungen 30 bis 33 werden Positions- und Geschwindigkeits-Rückkopplungssignale von den entsprechenden Positions- und Geschwindigkeits-Detektoren rückgekoppelt, so dass die Positionen und Geschwindigkeiten einer Rückkopplungsregelung unterzogen werden. In 4 ist eine Veranschaulichung der Rückkopplungen der Positions- und Geschwindigkeitssignale fortgelassen. Die Achsen- steuerschaltung 30, der Servoverstärker 40 und der Servomotor 50 bilden ein Antriebs-Steuersystem für die X-Achse eines ersten Steuersystems, und die Achsensteuerschaltung 31, der Servoverstärker 41 und der Servomotor Si bilden ein Antriebs-Steuersystem für die Z-Achse des ersten Steuersystems. Ähnlich bilden die Achsensteuerschaltung 32, der Servoverstärker 42 und der Servomotor 52 ein Antriebs-Steuersystem für die X-Achse eines zweiten Steuersystems, und die Achsensteuerschaltung 33, der Servoverstärker 43 und der Servomotor 53 bilden ein Antriebs-Steuersystem für die Z-Achse des zweiten Steuersystems.
  • Einer Spindel-Steuerschaltung 60 wird ein Spindel-Drehbefehl zugeführt, und sie gibt ein Spindel-Geschwindigkeitssignal an einen Spindel-Verstärker 61 aus. Auf den Empfang des Spindel-Geschwindigkeitssignals hin dreht der Spindel-Verstärker 61 einen Spindel-Motor 62 mit der befohlenen Drehgeschwindigkeit. Mit dem Spindel-Motor 62 ist durch Zahnräder, einen Treibriemen oder dgl. ein Positionskodierer 63 verbunden, der in Synchronismus mit der Drehung der Spindel Rückkopplungsimpulse ausgibt. Die Rückkopplungsimpulse werden auf die Spindel-Steuerschaltung 60 zur Geschwindigkeitsregelung rückgekoppelt.
  • Im folgenden wird anhand von 3 eine Beschreibung des Falls des Ausführens der vorliegenden Erfindung unter Benutzung einer Drehbank als eine Werkzeugmaschine gegeben, die erste und zweite Werkzeugständer A1 u. A2 hat, die durch die numerische Steuereinrichtung 100 gesteuert werden. Ein Werkstück W, das ein zu bearbeitendes Objekt ist, wird an einem Spannfutter 1 angebracht, das auf der Spindel 2 montiert ist. Das Werkstück W wird mit den Werkzeugen T1 u. T2 bearbeitet, die an dem ersten bzw. zweiten Werkzeugständer A1 u. A2 angebracht sind, und die Spindel 2 wird durch den Spindel-Motor 62 angetrieben, um das Werkstück W zu drehen. Die Spindel 2 wird auch durch den Z-Achsen-Servomotor 51 des ersten Steuersystems angetrieben, so dass sie in Z-Achsen-Richtung in Ausrichtung mit der Achse der Drehung derselben bewegt werden kann, um dadurch das Werkstück W in Z-Achsen-Richtung zu bewegen. Der erste Werkzeugständer A1 wird durch den X-Achsen-Servomotor 50 des erstes Steuersystems angetrieben, so dass er in X-Achsen-Richtung senkrecht zu der Z-Achsen-Richtung bewegt werden kann. In diesem Ausführungsbeispiel bildet das erste Steuersystem das Steuersystem für ein Referenzsystem. Der zweite Werkzeugständer A2 wird durch die Servomotoren 52 u. 53 des zweiten Steuersystems in den X- u. Z-Achsen-Richtungen angetrieben, und das zweite Steuersystem bildet das Steuersystem für ein Überlagerungssystem. Das Werkstück W kann durch das Referenz- und das Überlagerungssystem unabhängig voneinander bearbeitet werden und kann außerdem gleichzeitig durch die Werkzeuge T1 u. T2 durch Überlagern der Referenzsystem-Bewegung der Bewegung des Überlagerungssystems bearbeitet werden.
  • Wenn der Überlagerungsvorgang gestartet wird, ist es notwendig, dass eine Position auf einer Referenzachse für den Start der Überlagerung bestimmt wird und dass das Werkzeug T2 des Überlagerungssystems zu dieser Position bewegt wird. Im folgenden wird ein Verfahren für eine derartige Positionierung beschrieben.
  • Es sei angenommen, dass der Nullpunkt Or eines Maschinen-Koordinatensystems des Referenzsystems mit dem Axialmittelpunkt in der körperfernen Endfläche des Spannfutters 1 übereinstimmt und dass der Nullpunkt Ow eines Arbeits-Koordinatensystems des Referenzsystems mit einem Punkt auf der Z-Achse übereinstimmt, in dem die Z-Achse und eine vertikale Linie, die sich von der Spitze des Werkzeugs T1 aus erstreckt, zusammentreffen. Es sei außerdem angenommen, dass die Z-Achsen-Koordinate der Endfläche des Werkstücks W in dem Arbeits-Koordinatensystem Wm ist und dass die Z-Achsen-Koordinate einer gegenwärtigen Position der Spitze des Werkzeugs T2 in einem Maschinen-Koordinatensystem (Null punkt: Oi) des Überlagerungssystems Ms ist. Eine Position in dem Arbeits-Koordinatensystem des Referenzsystems, in der die Überlagerung zu starten ist, weist eine Distanz C auf der Z-Achse von der gegenwärtigen Position Wm des Werkstücks W in dem Arbeits-Koordinatensystem des Referenzsystems auf. Das Symbol D repräsentiert die Distanz zwischen dem Nullpunkt Oi des Maschinen-Koordinatensystems des Überlagerungssystems und dem Nullpunkt Ow des Arbeits-Koordinatensystems des Referenzsystems. Dann ist ein Bewegungswert U, um den der zweite Werkzeugständer A2 zur Überlagerung zu bewegen ist, durch die folgende Gl. (1) gegeben: U = D – Ms – (Wm + C) (1)
  • In Fällen, in denen sich das Arbeits-Koordinatensystem des Referenzsystems und das Maschinen-Koordinatensystem des Überlagerungssystems gegenüberstehen, wie dies in 3 gezeigt ist, wird der Bewegungswert U gemäß der obenstehenden Gl. (1) berechnet, in dem Fall jedoch, in dem die zwei Koordinatensysteme in der gleichen Richtung verlaufen, wird der Bewegungswert gemäß der folgenden Gl. (2) berechnet: U = D – Ms + (Wm + C) (2)
  • Gemäß 3 befindet sich die Position für die Überlagerung aus Gründen der Einfachheit der Veranschaulichung in einem Punkt mit einer Distanz C von der Endfläche des Werkstücks W in der positiven Richtung der Z-Achse des Arbeits-Koordinatensystems. In Fällen, in denen sich die Position für die Überlagerung näher an dem Nullpunkt des Arbeits-Koordinatensystems als die Endfläche des Werkstücks W befindet, nimmt C in den obenstehenden Gl. (1) und Gl. (2) einen negativen Wert an.
  • Gemäß der vorliegenden Erfindung werden die folgenden Befehle als ein Überlagerungs-Startbefehl, ein Überlagerungs-Beendigungsbefehl und ein Befehlsformat zum Bestimmen der Position für die Überlagerung bereitgestellt:
    Überlagerungs-Startbefehl: G126 Pa Pb
    Überlagerungs-Beendigungsbefehl: G127 Pb
    Befehl für die Überlagerungs-Position: G128 Pc
  • Das Symbol P repräsentiert einen Achsen-Namen (X, Y, Z), und a u. b repräsentieren Steuersystem-Nummern. Der Überlagerungs-Startbefehl "G126 Pa Pb" gibt die Überlagerung von Pb auf Pa an. Der Überlagerungs-Beendigungsbefehl "G127 Pb" bestimmt eine überlagerte Achse, deren Überlagerung zu beenden ist, in Zusammenwirkung mit dem Kode "G127". Der Befehl "G128 Pc", der die Position für die Überlagerung in dem Arbeits-Koordinatensystem bestimmt, verlangt, dass eine schnelle Vorwärtsbewegung zum Positionieren bis zu einer Position bewirkt wird, die eine Distanz c von der gegenwärtigen Position einer Achse aufweist, die durch P in dem Arbeits-Koordinatensystem des Referenzsystems bestimmt ist.
  • Wenn angenommen ist, dass in dem Ausführungsbeispiel, das in 3 u. 4 gezeigt ist, das Referenzsystem und das Überlagerungssystem, die das erste bzw. das zweite Steuersystem sind, durch "1" bzw. "2" repräsentiert sind, sind der Überlagerungs-Startbefehl, der Überlagerungs-Beendigungsbefehl und der Befehl für die Überlagerungs-Position wie folgt festgelegt:
    G126 Z2 Z1
    G127 Z1
    G128 Zc
  • Der Überlagerungs-Startbefehl, der Überlagerungs-Beendigungsbefehl und der Befehl für die Überlagerungs-Position sind in einem Bearbeitungsprogramm für das Überlagerungssystem bestimmt und müssen in einer Art und Weise program miert sein, dass dem Überlagerungs-Startbefehl "G126 Pa Pb" der Befehl "G128 Pc" für die Überlagerungs-Position folgt.
  • 5 u. 6 zeigen Flussdiagramme, die Prozesse für das Referenzsystem bzw. das Überlagerungssystem darstellen, die durch den Prozessor 11 der numerischen Steuereinrichtung 100 ausgeführt werden.
  • Zuerst wird der Prozess für das Referenzsystem erklärt.
  • Aus einem Bearbeitungsprogramm für das Referenzsystem wird ein Block ausgelesen (Schritt S1). Wenn der Befehl, der in diesem Block enthalten ist, nicht das Programmende befiehlt (Schritt S2), wird ein Verteilungsprozess zum Verteilen von Bewegungsbefehlswerten auf die X1- und Z1-Achsen auf der Grundlage des Bewegungsbefehls durchgeführt, der in dem Block bestimmt ist, um verteilte Bewegungswerte x1 u. z1 für die X1- bzw. Z1-Achse zu gewinnen, und es wird eine Beschleunigungs/Verzögerungs-Verarbeitung der verteilten Bewegungswerte x1 u. z1 durchgeführt, um beschleunigte/verzögerte Bewegungsbefehlswerte x1' u. z1' zu gewinnen, die der Beschleunigungs/Verzögerungs-Verarbeitung unterzogen worden sind (Schritte S3, S4). Die Beschleunigungs/Verzögerungs-Verarbeitung ist mit derjenigen identisch, die in herkömmlichen Verfahren eingesetzt wird. Im Falle einer linearen Beschleunigungs/Verzögerungs-Verarbeitung werden beispielsweise Register, deren Nummer durch die Beschleunigung/Verzögerungs-Zeitkonstante bestimmt ist, vorbereitet. Jedesmal dann, wenn ein verteilter Bewegungswert gewonnen ist (in jedem Verteilungszyklus), werden Werte, die in den Registern gespeichert sind, zu den jeweils nächsten Registern verschoben, während der gewonnene verteilte Befehlswert in einem Kopf-Register gespeichert wird, die Werte, die in den einzelnen Registern gespeichert sind, werden zusammenaddiert, und die Summe, die gewonnen ist, wird durch die Anzahl von Registern dividiert. Das Ergebnis wird ausgegeben.
  • Nachfolgend wird bestimmt ob jedes von Kennzeichungsbits F1 u. F2, die durch einen Überlagerungsbefehl (wie später beschrieben) auf "1" gesetzt werden, "0" ist oder nicht (Schritte S5, S6). Wenn keine Überlagerung ausgeführt wird, sind die Kennzeichungsbits F1 u. F2 "0". In diesem Fall setzt sich der Fluss zu Schritt S12 fort, in dem die beschleunigten/verzögerten Bewegungsbefehlswerte x1' u. z1' für die jeweiligen Achsen (X1, Z1), die in Schritt S4 gewonnen und der Beschleunigungs/Verzögerungs-Verarbeitung unterzogen wurden, an die entsprechenden Achsensteuerschaltungen 30 u. 31 ausgegeben werden, um die Servomotoren 50 u. 51 über die jeweiligen Servoverstärker 40 u. 41 zu treiben, so dass der Werkzeugständer A1 und das Werkstück W bewegt werden, um auf diese Weise das Werkstück W mit dem Werkzeug T1 zu bearbeiten.
  • Dann wird bestimmt, ob sich die Verteilung der Bewegungsbefehlswerte bis zu einem Endpunkt, der durch den betreffenden Block bestimmt ist, fortgesetzt hat oder nicht (Schritt S13), und wenn der Endpunkt noch nicht erreicht ist, kehrt der Fluss zu Schritt S3 zurück, und der zuvor erwähnte Prozess wird wiederholt. Der Prozess der Schritte S3 bis S13 wird in jedem Verteilungszyklus ausgeführt und ist kurz in dem Flussdiagramm veranschaulicht.
  • Wenn in Schritt S13 entschieden ist, dass der Endpunkt erreicht ist, setzt sich der Fluss zu Schritt S1 fort, um den nächsten Block auszulesen, und der zuvor erwähnte Prozess wird wiederholt ausgeführt, um das Werkstück W mit dem Werkzeug T1 zu bearbeiten. Wenn das Programmende ausgelesen ist (Schritt S2), wird die Operation beendet.
  • In dem Prozess für das Überlagerungssystem (s. 6) wird andererseits zuerst ein Block aus einem Bearbeitungsprogramm für das Überlagerungssystem (zweite Steuersystem) ausgelesen (Schritt T1), und es wird bestimmt, ob der Befehl in dem Block das Programmende bestimmt oder nicht (Schritt T2). Wenn kein Programmende bestimmt ist, wird bestimmt, ob der Überlagerungsbefehls-Kode "G126", der Überlagerungs-Beendigungsbefehls-Kode "G127" oder der Befehls-Kode "G128" für die Bewegung zu der Überlagerungs-Position bestimmt ist oder nicht (Schritte T3 bis T5). Wenn keiner dieser Befehle bestimmt ist, wird ein Verteilungsprozess zum Verteilen von Bewegungsbefehlswerten auf die X2- u. Z2-Achsen auf der Grundlage des Bewegungswerts, der in dem betreffenden Block bestimmt ist, durchgeführt, um verteilte Bewegungswerte x2 u. z2 für die jeweiligen Achsen zu gewinnen (Schritt T9), und es wird eine Beschleunigungs/Verzögerungs-Verarbeitung ähnlich derjenigen, die zuvor beschrieben wurde, der verteilten Bewegungswerte x2 u. z2 durchgeführt, um Bewegungsbefehlswerte x2' u. z2' für die jeweiligen Achsen zu gewinnen (Schritt T10).
  • Dann wird ein Überlagerungswert z1", der in einem Register R in Schritt S11 gespeichert ist (später zu beschreiben), zu dem Bewegungsbefehlswert z2' für die Z-Achse addiert, der durch die Beschleunigungs/Verzögerungs-Verarbeitung gewonnen ist, und die gewonnene Summe wird als ein überlagerter Bewegungsbefehlswert z2' benutzt (Schritt T11). Der überlagerte Bewegungsbefehlswert z2' wird an die Achsensteuerschaltung 33, die der Z2-Achse zugeordnet ist, ausgegeben, während der Bewegungsbefehlswert x2', der in Schritt T10 gewonnen ist, an die Achsensteuerschaltung 32, die der X2-Achse zugeordnet ist, ausgegeben wird (Schritt T12), um dadurch die Servomotoren 53 u. 52 über die jeweiligen Servoverstärker 43 u. 42 zu treiben, so dass der zweite Werkzeugständer A2 in den X- und Z-Achsen-Richtungen bewegt wird, um auf diese Weise das Werkstück W zu bearbeiten. Während keine Überlagerung ausgeführt wird, ist der Wert in dem Register R "0". Daher wird dem Bewegungsbefehlswert z2' für die Z-Achse nichts überlagert, und der Bewegungsbefehlswert z2', der in Schritt T10 gewonnen ist, wird schließlich ausgegeben.
  • Der Prozess (Schritte T9 bis T13) wird wiederholt, bis ein Endpunkt, der durch den betreffenden Block bestimmt ist, erreicht ist, und wenn in Schritt T13 entschieden ist, dass der Endpunkt erreicht ist, kehrt der Fluss zu Schritt T1 zurück, um den nächsten Block auszulesen, und der zuvor erwähnte Prozess wird wiederholt ausgeführt.
  • Wenn der Befehl in dem ausgelesenen Block den Überlagerungs-Startbefehls-Kode "G126 Z2 Z1" enthält (Schritt T3), der angibt, dass der Bewegungswert der Z1-Achse des Referenzsystems dem der Z2-Achse zu überlagern ist, werden die Kennzeichungsbits F1 u. F2 einzeln auf "1" gesetzt (Schritt T6), und der Fluss kehrt zu Schritt T1 zurück, in dem der nächste Block ausgelesen wird. Der Befehl "G128 Zc", der die Position zum Starten der Überlagerung bestimmt, ist folgend auf den Überlagerungs-Startbefehl beschrieben. Daher setzt sich der Fluss, wenn dieser Befehl ausgelesen ist, von Schritt T5 zu Schritt T8 fort, in dem ein Bewegungswert U gemäß der zuvor erwähnten Gl. (1) auf der Grundlage des Werts Wm der Z1-Achse in dem Arbeits-Koordinatensystem des Referenzsystems, der aus dem Wert gewonnen ist, der in dem Gegenwartspositions-Register zum Integrieren der verteilten Bewegungsbefehlswerte gespeichert ist, des gegenwärtigen Wert Ms der Z2-Achse in dem Maschinen-Koordinatensystem des Überlagerungssystems und des Befehlswerts c berechnet wird (Schritt T8). Der Fluss setzt sich dann zu Schritt T9 fort, und der Verteilungsprozess für den Bewegungswert U wird mit schneller Vorbewegungsgeschwindigkeit ausgeführt. In diesem Fall wird, da der betreffende Bewegungsbefehl nur für die Z2-Achse bestimmt ist, die Verteilung des Bewegungsbefehlswerts auf die Z2-Achse ausgeführt, die zuvor erwähnte Beschleunigungs/Verzögerungs-Verarbeitung wird durchgeführt, um den Bewegungsbefehlswert z2' zu gewinnen, und der Überlagerungswert zi", der in dem Register R gespeichert ist, wird zu dem Bewegungsbefehlswert z2' addiert, um den Bewegungsbefehlswert z2' zu gewinnen, der dann an die überlagerte Achsensteuerschaltung 33 ausgegeben wird. Wenn der Endpunkt noch nicht erreicht ist, wird der Prozess in den Schritten T9 bis T13 wiederholt ausgeführt.
  • Wenn die Bewegung um den befohlenen Bewegungswert U abgeschlossen ist und der Endpunkt erreicht ist, kehrt der Fluss zu Schritt T1 zurück, um den nächsten Block auszulesen, und es wird der zuvor erwähnte Prozess, der von Schritt T2 ab beginnt, ausgeführt. Zu der Zeit, zu der die Z2-Achse des Überlagerungssystems den Endpunkt nach dem Bewegen um den befohlenen Wert U erreicht und gleichzeitig der Überlagerungswert z1", der in dem Register R gespeichert ist, konstant wird (zu der Zeit, zu welcher der Überlagerungswert auf das Abschließen der Beschleunigung in dem Beschleunigungs/Verzögerungs-Verarbeitungs-Schritt S8 für die Überlagerung hin konstant wird), wird die Z2-Achse in der befohlenen Position positioniert. Insbesondere im Hinblick auf die Z1- u. Z2-Achsen, welche die Überlagerungsachse bzw. die überlagerte Achse sind, bleibt die tatsächliche Position der Z1-Achse des Referenzsystems hinter dem integrierte Wert der verteilten Bewegungsbefehlswerte um einen Betrag entsprechend dem Beschleunigungprozess bei der Beschleunigungs/Verzögerungs-Verarbeitung zurück und hat demzufolge eine Positionsabweichung in bezug auf den integrierten Wert der verteilten Bewegungsbefehlswerte. Auch im Falle des Unterziehens des verteilten Bewegungsbefehlswerts für die Z1-Achse der Beschleunigungs/Verzögerungs-Verarbeitung, welcher der Z2-Achse zu überlagern ist, bleibt der Überlagerungswert, der zu der Z2-Achse des Überlagerungssystems addiert ist, hinter dem integrierten Wert der verteilten Bewegungsbefehlswerte, die der Beschleunigungs/Verzögerungs-Verarbeitung zugeführt werden, um einen Betrag entsprechend der Beschleunigungs/Verzögerungs-Verarbeitung zurück. Demzufolge werden die zuvor erwähnten zwei Rückstände, wenn die Zeitkonstanten der zwei Beschleunigungs/ Verzögerungs-Verarbeitungen gleichgemacht werden, einander gleich. Da der Bewegungswert U auf der Grundlage des Werts, der in dem Gegenwartspositions-Register zum Integrieren der verteilten Bewegungsbefehlswerte gespeichert ist, berechnet wird, kann die Z2-Achse, die zu überlagern ist, schließlich in der befohlenen Position in dem Arbeits-Koordinatensystem des Referenzsystems positioniert werden.
  • Wenn die Kennzeichungsbits F1 u. F2 durch den Überlagerungs-Startbefehl in dem Prozess für das Überlagerungssystem (Schritte T3, T6) einzeln auf "1" gesetzt sind, wird der gesetzte Wert "1" des Kennzeichungsbits F1 in Schritt S5 des Prozesses für das Referenzsystem erfasst. Dann wird auf der Grundlage des verteilent Befehlswerts z1, der in Schritt S3 gewonnen ist, eine Beschleunigung/Verzögerungs-Verarbeitung für die Überlagerung durchgeführt (diese Beschleunigungs/Verzögerungs-Verarbeitung ist identisch mit derjenigen in Schritt S4 und wird unter Benutzung einer identischen Zeitkonstante durchgeführt), um einen Überlagerungswert z1" zu gewinnen (Schritt S8). Dann wird eine Bestimmung dahingehend vorgenommen, ob der Überlagerungswert z1" gleich "0" ist oder nicht (Schritt S9), und falls dies nicht der Fall ist, wird der Überlagerungswert z1" in dem Register R gespeichert (Schritt S11). Der Überlagerungswert z1", der auf diese Weise in dem Register R gespeichert ist, wird in Schritt T11 des Prozesses für das Überlagerungssystem zu dem beschleunigten/verzögerten Bewegungsbefehlswert z2' für die Z2-Achse des Überlagerungssystems, welcher Wert der Beschleunigungs/Verzögerungs-Verarbeitung unterzogen worden ist, addiert, und die gewonnene Summe wird an die entsprechende Achsensteuerschaltung 33 ausgegeben. Die beschleunigten/verzögerten Bewegungsbefehlswerte x1' u. z1' für die X1- u. Z1-Achsen, die in Schritt S4 gewonnen sind, werden an die jeweiligen Achsensteuerschaltungen 30 u. 31 ausgegeben (Schritt S12), um die Servomotoren 50 u. 51 über die jeweiligen Servoverstärker 40 u. 41 zu treiben, wodurch der Werkzeugständer A1 und das Werkstück W bewegt werden, um auf diese Weise das Werkstück W mit dem Werkzeug T1 zu bearbeiten.
  • Während das Kennzeichungsbit F1 danach auf "1" verbleibt, wird der Prozess in den Schritten S3 bis S5, S8, S9 und S11 bis S13 is ausgeführt, bis der Endpunkt des betreffenden Blocks erreicht ist. Wenn der Endpunkt des Blocks erreicht ist, kehrt der Fluss zu Schritt S1 zurück, und wenn in dem neuerlich ausgelesenen Block kein Programmende bestimmt ist, wird der Prozess in den Schritten S3 bis S5, S8, S9 und S11 bis S13 ausgeführt, bis der Endpunkt dieses Blocks erreicht ist.
  • In dem Überlagerungssystem wird in Schritt T11 der Überlagerungswert z1" zu dem Bewegungsbefehlswert für die Z2-Achse addiert, und der Servomotor 53, der dieser Achse zugeordnet ist, wird in Übereinstimmung mit der gewonnenen Summe getrieben. Demgemäß bewegt sich das Werkzeug T12 zusammen mit dem Werkstück W und bewegt sich gleichzeitig, wie es durch das Programm für das Überlagerungssystem bestimmt ist, mit dem Ergebnis, dass das Werkzeug T2 eine zu dem Werkstück W relative Bewegung ausführt, wie sie durch das Programm für das Überlagerungssystem befoheln ist. Dies ermöglicht es, das Werkstück W gleichzeitig mit den Werkzeugen T1 u. T2 zu bearbeiten.
  • Wenn in Schritt T4 des Prozesses für das Überlagerungssystem entschieden ist, dass der Überlagerungs-Beendigungsbefehl "G127 Pb" = "G127 Z1" bestimmt ist, wird das Kennzeichungsbit F1 auf "0" gesetzt (Schritt T7). Als Ergebnis setzt sich in dem Prozess für das Referenzsystem der Fluss von Schritt S5 zu Schritt S6 fort, in dem bestimmt wird, ob das Kennzeichungsbit F2 gleich "0" ist oder nicht. Da in diesem Fall das Kennzeichungsbit F2 auf "1" gesetzt worden ist, setzt sich der Fluss zu Schritt S7 fort, um den verteilten Befehlswert z1 auf "0" zu setzen, und es wird die Beschleunigungs/Verzögerungs-Verarbeitung durchgeführt, um den Überlagerungswert z1" zu gewinnen (Schritt S8). Der verteilte Befehlswert z1, welcher der Beschleunigungs/Verzögerungs-Verarbeitung zugeführt ist, ist "0". Daher ver ringert sich der Überlagerungswert z1" und wird schließlich "0", wenn die gesetzte Zeitkonstante (die Anzahl der Verteilungszyklen ist gleich der Anzahl von Registern, die bei der Beschleunigungs/Verzögerungs-Verarbeitung benutzt werden) abgelaufen ist. Als Ergebnis verringert sich der Überlagerungswert, der in Schritt T11 zu dem Überlagerungssystem addiert ist, graduell und wird schließlich "0". Auf das Erfassen von Null ("0") des Überlagerungswert z1" in Schritt S9 hin wird das Kennzeichungsbit F2 auf "0" gesetzt und der Fluss setzt sich zu Schritt S11 fort. Da die Kennzeichungsbits F1 u. F2 beide auf "0" gesetzt sind, wird danach die Beschleunigungs/Verzögerungs-Verarbeitung für die Überlagerung nicht ausgeführt. Stattdessen wird folgend auf die Schritte S5 u. S6 Schritt S12 ausgeführt, und es werden die Bewegungsbefehlswerte x1' u. z1' für die X1- u. Z1-Rchsen, die durch Unterziehen der verteilten Bewegungswerte der Beschleunigungs/Verzögerungs-Verarbeitung gewonnen sind, an die Achsensteuerschaltungen 30 bzw. 31 ausgegeben.
  • Wie zuvor beschrieben erfährt die Z2-Achse, da der Bewegungswert für die Z1-Achse der Beschleunigungs/Verzögerungs-Verarbeitung unterzogen und dann dem Bewegungswert für die Z2-Achse überlagert wird, zu der Zeit des Starts oder der Beendigung der Überlagerung keine plötzliche Geschwindigkeitsänderung, sondern wird graduell beschleunigt oder verzögert, und es tritt kein Stoß, keine Schwingung oder dgl. infolge einer schnellen Beschleunigung oder einer schnellen Verzögerung auf.
  • In dem Ausführungsbeispiel, das zuvor beschrieben wurde, werden die ersten und zweiten Steuersysteme als das Referenzsystem bzw. das Überlagerungssystem festgelegt, und die Z1-Achse des Referenzsystem wird als die Überlagerungs-Achse festgelegt, während die Z2-Achse des Überlagerungssystems als die überlagerte Achse festgelegt wird. Da der Überlagerungs-Start Befehl "G126 Pa Pb" die Überlagerungs-Achse und die überlagerte Achse bestimmt, wenn dieser Be fehl ausgelesen ist (Schritt T3), können die Überlagerungs-Achse und die überlagerte Achse in Schritt T6 gespeichert werden, es kann in Schritt S5 eine Bestimmung erfolgen, ob es eine gibt oder nicht, und wenn eine Überlagerungs-Achse existiert, wird der verteilte Bewegungsbefehlswert für die gespeicherte Überlagerungs-Achse einer Beschleunigungs/Verzögerungs-Verarbeitung unterzogen (Schritt S8), und der Überlagerungswert wird in Schritt S11 in dem Register gespeichert, das der gespeicherten überlagerten Achse zugeordnet ist. Dann können in Schritt T11 für alle Achsen Überlagerungswerte, die in den entsprechenden Registern gespeichert sind, zu den jeweiligen Bewegungsbefehlswerten addiert werden, die der Beschleunigungs/Verzögerungs-Verarbeitung unterzogen worden sind (die Werte, die in den Registern gespeichert sind, die solchen Achsen zugeordnet sind, die nicht als die überlagerte Achse bestimmt sind, sind "0"), so dass die gewonnenen Summen ausgegeben werden können.
  • Außerdem wird in dem vorstehenden Ausführungsbeispiel die Überlagerungssteuerung unter Steuerung durch das Bearbeitungsprogramm durchgeführt. Alternativ dazu kann der Überlagerungs-Start/Beendigungsbefehl ein Signal sein, das über die PC eingegeben ist, und die Achsensteuerung kann durch ein unabhängiges Befehlssystem, beispielsweise durch eine Achsensteuerung mittels der PC, befohlen werden.
  • Gemäß der vorliegenden Erfindung kann die Überlagerung ohne die Notwendigkeit einer Veranlassung der zwei Steuersysteme für die Überlagerungsachse und die überlagerte Achse, zur Einstellung von Zeitpunkten zu stoppen, gestartet und beendet werden, wodurch der Bearbeitungszyklus verkürzt werden kann. Ferner erfährt die Geschwindigkeit der überlagerten Achse keine plötzliche Änderung, wenn die Überlagerung gestartet oder beendet wird, so dass ein Stoß oder eine Schwingung nicht auftritt, was eine stabile Bearbeitung gestattet.

Claims (2)

  1. Überlagerungssteuer-Verfahren für eine Werkzeugmaschine, die eine Vielzahl von Steuersystemen hat, die unabhängig voneinander betriebsfähig sind und durch eine numerische Steuereinrichtung gesteuert werden, in der ein Bewegungsbefehlswert für eine erste Achse in einem ersten Steuersystem der Vielzahl von Steuersystemen einem Bewegungsbefehlswert für eine zweite Achse in einem zweiten Steuersystem der Vielzahl von Steuersystemen überlagert wird, welches Verfahren Schritte umfasst zum (a) Durchführen einer Beschleunigungs/Verzögerungs-Verarbeitung eines Bewegungsbefehlswerts, der für die erste Achse in dem ersten Steuersystem von der numerischen Steuereinrichtung verteilt wird, um einen beschleunigten/verzögerten Bewegungsbefehlswert für die erste Achse zu gewinnen, (b) Durchführen einer Beschleunigungs/Verzögerungs-Verarbeitung eines Bewegungsbefehlswerts, der für die zweite Achse in dem zweiten Steuersystem von der numerischen Steuereinrichtung verteilt wird, um einen beschleunigten/verzögerten Bewegungsbefehlswert für die zweite Achse zu gewinnen, welches Verfahren ferner gekennzeichnet ist durch Schritte zum (c) Durchführen einer Beschleunigungs/Verzögerungs-Verarbeitung des Bewegungsbefehlswerts, der für die erste Achse von der numerischen Steuereinrichtung verteilt wird, getrennt von der Beschleunigungs/Verzögerungs-Verarbeitung für die erste Achse in Schritt (a) und der Beschleunigungs/ Verzögerungs-Verarbeitung für die zweite Achse in Schritt (b) und Addieren des gewonnenen Bewegungsbefehlswerts, der dem beschleunigten/verzögerten Bewegungsbefehlswert für die zweite Achse zu überlagern ist, der in Schritt (b) gewonnen ist, wenn ein Überlagerungsbefehl eingegeben wird, und (d) Bewegen der zweiten Achse auf der Grundlage des überlagerten Bewegungsbefehlswerts, der in Schritt (c) gewonnen ist.
  2. Überlagerungssteuer-Verfahren nach Anspruch 1, wobei Schritt (c) ferner einen Schritt zum Positionieren der zweiten Achse in einer gewünschten Position in einem Koordinatensystem des ersten Steuersystems auf der Grundlage eines Befehls umfasst, der durch ein Bearbeitungsprogramm für das zweite Steuersystem vorgesehen ist.
DE69727461T 1996-07-10 1997-07-10 Überlagerungssteuerverfahren mit numerischer steuerung Expired - Lifetime DE69727461T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP19855196 1996-07-10
JP19855196A JP3459516B2 (ja) 1996-07-10 1996-07-10 数値制御装置による重畳制御方法
PCT/JP1997/002389 WO1998001796A1 (fr) 1996-07-10 1997-07-10 Procede de commande par superposition utilisant un dispositif de commande numerique

Publications (2)

Publication Number Publication Date
DE69727461D1 DE69727461D1 (de) 2004-03-11
DE69727461T2 true DE69727461T2 (de) 2004-07-01

Family

ID=16393061

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69727461T Expired - Lifetime DE69727461T2 (de) 1996-07-10 1997-07-10 Überlagerungssteuerverfahren mit numerischer steuerung

Country Status (5)

Country Link
US (1) US5977736A (de)
EP (1) EP0851328B1 (de)
JP (1) JP3459516B2 (de)
DE (1) DE69727461T2 (de)
WO (1) WO1998001796A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015007017B4 (de) * 2014-06-06 2020-08-27 Fanuc Corporation Numerische Steuervorrichtung mit einer Funktion zum Steuern der Geschwindigkeit durch eine überlagerte Steuerung

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100753243B1 (ko) * 2000-09-22 2007-08-30 시티즌 홀딩스 가부시키가이샤 수치제어 선반, 수치제어 선반의 제어 장치, 제어 방법 및 프로그램 기술 방법
DE10156781C1 (de) * 2001-11-19 2003-02-27 Siemens Ag Aktive Kompensation von mechanischen Schwingungen und Verformungen in industriellen Bearbeitungsmaschinen
JP3680064B2 (ja) 2003-04-21 2005-08-10 ファナック株式会社 数値制御装置
JP2005322076A (ja) * 2004-05-10 2005-11-17 Fanuc Ltd 数値制御装置
JP2006159345A (ja) * 2004-12-07 2006-06-22 Fanuc Ltd 制御装置
JP5129064B2 (ja) * 2008-08-26 2013-01-23 新日本工機株式会社 工作機械の数値制御装置
CN101887250B (zh) * 2009-05-12 2012-05-30 鸿富锦精密工业(深圳)有限公司 Cnc工具机控制装置
WO2014038002A1 (ja) * 2012-09-04 2014-03-13 三菱電機株式会社 数値制御装置
JP2015097045A (ja) * 2013-11-15 2015-05-21 ファナック株式会社 非常停止時に工具及び被加工物を保護するモータ制御装置
JP6267161B2 (ja) * 2015-08-10 2018-01-24 ファナック株式会社 平行する2軸の軸制御を行う数値制御装置
KR102613333B1 (ko) * 2017-09-12 2023-12-14 시티즌 도케이 가부시키가이샤 공작기계
DE112021000922T5 (de) * 2020-02-07 2022-11-17 Fanuc Corporation Betriebssteuervorrichtung und Programm

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60198606A (ja) * 1984-03-21 1985-10-08 Fanuc Ltd 数値制御装置の加減速方式
JPS63206804A (ja) * 1987-02-24 1988-08-26 Fanuc Ltd 数値制御方式
US5233276A (en) * 1987-06-30 1993-08-03 Deutsche Thomson-Brandt Gmbh Motor control circuit
DE3866203D1 (de) * 1987-09-28 1991-12-19 Siemens Ag Verfahren zur numerisch gesteuerten lageregelung elektromotorisch angetriebener achsen.
JPH01217604A (ja) * 1988-02-26 1989-08-31 Fanuc Ltd 同期制御方式
JP2800124B2 (ja) * 1988-12-31 1998-09-21 シチズン時計株式会社 数値制御工作機械の制御方法及びそのための制御装置
JP2559279B2 (ja) * 1989-11-30 1996-12-04 三菱電機株式会社 サーボモータの重畳・同期運転誤差補正装置
JP2642211B2 (ja) * 1990-01-31 1997-08-20 オ−クマ株式会社 重畳制御機能を有する数値制御装置
DE4123323C2 (de) * 1991-07-13 1994-02-10 Andreas Ehlerding Werkzeugträger

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015007017B4 (de) * 2014-06-06 2020-08-27 Fanuc Corporation Numerische Steuervorrichtung mit einer Funktion zum Steuern der Geschwindigkeit durch eine überlagerte Steuerung

Also Published As

Publication number Publication date
JPH1027013A (ja) 1998-01-27
WO1998001796A1 (fr) 1998-01-15
US5977736A (en) 1999-11-02
EP0851328A4 (de) 2001-07-25
DE69727461D1 (de) 2004-03-11
JP3459516B2 (ja) 2003-10-20
EP0851328A1 (de) 1998-07-01
EP0851328B1 (de) 2004-02-04

Similar Documents

Publication Publication Date Title
DE69727461T2 (de) Überlagerungssteuerverfahren mit numerischer steuerung
DE3750020T2 (de) Numerische Vorschubeinrichtung für eine Werkzeugmaschine.
DE102016003049B4 (de) Numerische Steuerung zur Ausführung reziproken Drehens in komplex fixiertem Zyklus
DE3218612C2 (de) Werkzeugmaschine mit Verschiebefehlerkompensation
DE2644596B2 (de) Numerische Steuerung für eine Mehrwerkzeugmaschine
DE602005005106T2 (de) Numerische Steuerung
DE102015111964A1 (de) Servomotoren-Steuersystem, das die Bearbeitungspräzision mehrerer Achsen verbessert
DE60130374T2 (de) Automatische drehbank, verfahren ihrer steuerung und einrichtung zu ihrer steuerung
DE3851387T2 (de) Geschwindigkeitsregelvorrichtung in einem servolenksystem.
DE69110583T2 (de) Numerische steuerung.
DE112012004962T5 (de) Numerische Steuervorrichtung
EP2650741A2 (de) Werkzeugmaschine
DE3142615A1 (de) Numerisch gesteuerte werkzeugmaschine
DE68929105T2 (de) Instruktionssystem für numerische daten
DE102016012042B4 (de) Numerische Steuerung mit Positionierung zur Vermeidung einer Kollision mit einem Werkstück
DE1966794B2 (de) Einrichtung zur numerischen Steuerung von Werkzeugmaschinen mittels einer zentralen Datenverarbeitungsanlage
WO1998010339A1 (de) Verfahren und vorrichtung zur steuerung der bewegung eines trägers
DE3855133T2 (de) Numerische steuerung
DE102006029527A1 (de) Verfahren und Vorrichtung zum Bearbeiten eines Werkstücks
DE102009026412A1 (de) Numerische Steuervorrichtung mit der Funktion zur Durchführung einer zyklischen Hochgeschwindigkeitsbearbeitung
DE3902460C2 (de)
DE2811069A1 (de) Numerisch gesteuertes werkzeugmaschinensystem
DE102015008297B4 (de) Numerische Steuerung mit Betrieb durch tabellenformatierte Daten
DE69030820T2 (de) Werkstückwechseleinrichtung
DE602004000384T2 (de) Numerische Steuereung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition