DE102017215787B4 - Steuerungseinrichtung, Steuerungsverfahren und Computerprogramm für Werkzeugmaschine - Google Patents

Steuerungseinrichtung, Steuerungsverfahren und Computerprogramm für Werkzeugmaschine Download PDF

Info

Publication number
DE102017215787B4
DE102017215787B4 DE102017215787.9A DE102017215787A DE102017215787B4 DE 102017215787 B4 DE102017215787 B4 DE 102017215787B4 DE 102017215787 A DE102017215787 A DE 102017215787A DE 102017215787 B4 DE102017215787 B4 DE 102017215787B4
Authority
DE
Germany
Prior art keywords
command
oscillation
offset value
cutting tool
workpiece
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102017215787.9A
Other languages
English (en)
Other versions
DE102017215787A1 (de
Inventor
Naoto Sonoda
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 DE102017215787A1 publication Critical patent/DE102017215787A1/de
Application granted granted Critical
Publication of DE102017215787B4 publication Critical patent/DE102017215787B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/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/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
    • G05B19/27Numerical 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 using an absolute digital measuring device
    • G05B19/29Numerical 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 using an absolute digital measuring device for point-to-point control
    • 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/416Numerical 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 control of velocity, acceleration or deceleration
    • 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/34015Axis controller
    • 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
    • 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/45044Cutting
    • 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/50216Synchronize speed and position of several axis, spindles

Abstract

Steuerungseinrichtung (100), die eine Werkzeugmaschine steuert, die mehrere Steuerungs-Achsen umfasst und zum Bearbeiten eines Werkstücks (10, 20) als einem zu bearbeitenden Gegenstand durch Schneiden mittels koordinierter Bewegung entlang der Steuerungs-Achsen eingesetzt wird, wobei die Steuerungseinrichtung umfasst:eine Einheit (120) zum Beziehen eines Positions-Befehls, die einen Positions-Befehl bezieht, der an einen Servomotor (400) zum Antreiben eines Schneidwerkzeugs gerichtet ist, oder einen Positions-Befehl bezieht, der an einen Servomotor (400) zum Antreiben des Werkstücks (10, 20) gerichtet ist;eine Einheit (118) zum Ermitteln einer Drehgeschwindigkeit, die eine Drehgeschwindigkeit des rotierenden Schneidwerkzeugs oder die des rotierenden Werkstücks (10, 20) ermittelt;eine Einheit (104) zum Berechnen einer Beschleunigung, die eine Beschleunigung des Servomotors auf Basis des bezogenen Positions-Befehls berechnet;eine Einheit (102) zum Berechnen eines Oszillations-Befehls, die einen Oszillations-Befehl auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit berechnet, wobei der berechnete Oszillations-Befehl das Schneidwerkzeug und das Werkstück (10, 20) veranlasst, relativ zueinander in einer Bearbeitungs-Richtung entlang einer Bearbeitungs-Strecke zu oszillieren, auf der sich das Schneidwerkzeug bewegt;eine Einheit (106) zum Berechnen eines Offset-Wertes, die einen Offset-Wert auf Basis der berechneten Beschleunigung berechnet;eine Offset-Einheit (108), die einen Offset der Amplitude des berechneten Oszillations-Befehls durchführt, indem sie den berechneten Offset-Wert zu der Amplitude addiert; sowieeine Antriebs-Einheit (116, 110), die ein Antriebs-Signal, das zum Antreiben des Servomotors (400) dient, auf Basis des Oszillations-Befehls bestimmt, der die Offset-Amplitude und den bezogenen Positions-Befehl einschließt, und das Antriebs-Signal ausgibt.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine Steuerungseinrichtung, ein Steuerungsverfahren und ein Computerprogramm für eine Werkzeugmaschine, die zum Bearbeiten durch Schneiden eines Werkstücks mittels koordinierter Bewegung entlang mehrerer Achsen eingesetzt wird.
  • Verwandte Technik
  • Bekannt ist eine herkömmliche Werkzeugmaschine, die zum Bearbeiten durch Schneiden eines Werkstücks als einem zu bearbeitenden Gegenstand mittels koordinierter Bewegung entlang mehrerer Achsen eingesetzt wird. Bei einem Bearbeitungsverfahren, das in einigen Fällen für eine derartige Werkzeugmaschine eingesetzt wird, werden ein Schneidwerkzeug und ein Werkstück veranlasst, relativ zueinander in einer Bearbeitungsrichtung zu oszillieren, um durch das Schneiden entstandene Späne zu zerkleinern.
  • Beispielsweise offenbart das weiter unten erwähnte Patentdokument 1 eine Methode des Bearbeitens durch Schneiden, die durchgeführt wird, indem ein Schneidwerkzeug bei einer niedrigen Frequenz in Schwingung versetzt wird. Bei der Methode gemäß Patentdokument 1 kommt ein Steuerungsmechanismus zum Einsatz, der das Schneidwerkzeug durch Steuerung eines Vorschub-Antriebsmotors des Schneidwerkzeugs mit einer niedrigen Frequenz in einer Zweiachsen-Richtung vibrieren lässt. Das Schneidwerkzeug wird in Abhängigkeit von der Drehgeschwindigkeit eines Werkstücks oder der Drehgeschwindigkeit des Schneidwerkzeugs sowie des Maßes des Vorschubs des Schneidwerkzeugs während einer Drehung des Werkstücks oder des Schneidwerkzeugs in der Zweiachsen-Richtung synchronisiert vorgeschoben. Die im folgenden aufgeführten Daten werden im Voraus in Form einer Tabelle als Daten gespeichert, die Betrieb bei einer niedrigen Frequenz von 25 Hz oder mehr ermöglichen, d. h. das Maß der Vorwärtsbewegung, das Maß der Rückwärtsbewegung, eine Geschwindigkeit der Vorwärtsbewegung sowie eine Geschwindigkeit der Rückwärtsbewegung eines Vorschubmechanismus des Schneidwerkzeugs, der auf mechanische Eigenschaften an einem Tisch, wie beispielsweise Masse und Eigenschaften eines Motors, anspricht. Der Vorschub-Antriebsmotor des Schneidwerkzeugs wird auf Basis der gespeicherten Daten gesteuert. Patentdokument 1 führt an, dass, wenn beim Schneiden niederfrequente Schwingung optimal erzeugt wird, Späne zerkleinert werden, so dass es unwahrscheinlich ist, dass die Späne an dem Schneidwerkzeug haften.
  • Patentdokument 1 berücksichtigt jedoch nicht, dass es zu Überlagerung mit einem Objekt in der Umgebung kommt, wenn die Position des Schneidwerkzeugs durch die Schwingung (Oszillation) bei einer niedrigen Frequenz oszilliert. Daher kann die Methode aus Patentdokument 1 nur angewendet werden, wenn sich kein störendes Objekt in der Nähe einer Position befindet, die das Schneidwerkzeug möglicherweise erreicht. So erweist sich der Einsatz dieser Methode als schwierig, wenn sich ein Abschnitt, der sich von einem Abschnitt als einem mittels Schneiden zu bearbeitenden Gegenstand unterscheidet, oder ein Objekt, das sich von dem Gegenstand unterscheidet, in der Nähe des Gegenstandes befindet.
  • Das weiter unten erwähnte Patentdokument 2 offenbart eine Methode, bei der ein Oszillations-Befehl erzeugt wird, um Wirkung von Vibration entlang eines Bearbeitungs-Weges auf Basis vorgegebener Vibrations-Bedingungen, wie beispielsweise Frequenz und Amplitude, zuzulassen. Beispielsweise wird ein Bearbeitungs-Befehl mit dem erzeugten Oszillations-Befehl überlagert, und wird ein resultierender Befehl zur Servosteuerung entlang jeder Achse verteilt. Das heißt, um ein Werkzeug auf einer Bewegungs-Strecke relativ zu einem Bearbeitungs-Gegenstand zu bewegen, wird das Werkzeug in Schwingung versetzt, so dass es der Bewegungs-Strecke folgt. Ein Befehls-Hub (ein mittels eines Bewegungs-Befehls bewirkter Hub) in einer Zeiteinheit (einem Interpolations-Zyklus) wird unter Verwendung des Bewegungs-Befehls bestimmt, der die Bewegungs-Strecke einschließt, die eine Bearbeitungs-Position und eine Bearbeitungs-Geschwindigkeit anzeigt. Ein Vibrations-Hub, der ein durch Vibration verursachter Hub ist, die in dieser Zeiteinheit zu einem dem Bewegungs-Befehl entsprechenden Moment auftritt, wird unter Verwendung der Vibrations-Bedingungen einschließlich Frequenz und Amplitude bestimmt. Der Befehls-Hub und der Vibrations-Hub werden kombiniert, um einen Kombinations-Hub zu bestimmen. Anschließend wird ein Hub in der Zeiteinheit so bestimmt, dass eine nach Bewegung des Kombinations-Hubs bestimmte Position auf einer Kurven-Bewegungs-Strecke liegt. Patentdokument 2 führt an, dass mit diesem Verfahren Bearbeitung unter verschiedenen Bedingungen ermöglicht wird, ohne dass Erstellung einer Tabelle erforderlich ist, die Vibrations-Bedingungen für ein Werkzeug speichert.
  • Hinsichtlich Patentdokument 2 wird jedoch in Betracht gezogen, dass es durch Anwendung hochfrequenter Oszillation beispielsweise wahrscheinlich wird, dass ein Befehl nicht präzise gegeben werden kann. Es wird davon ausgegangen, dass dies insbesondere dann problematisch wird, wenn eine Oszillations-Frequenz so erhöht wird, dass sie sich einer Befehlsverteilungs-Frequenz nähert. Wenn beispielsweise die Befehlsverteilungs-Frequenz 100 Hz beträgt und die Oszillations-Frequenz 50 Hz beträgt, können Befehle nur an zwei Punkten während eines Oszillations-Zyklus erteilt werden. Diese Tendenz wird noch ausgeprägter, wenn die Oszillations-Frequenz weiter erhöht wird und sich der Befehlsverteilungs-Frequenz immer weiter nähert, und es wird in einigen Fällen als schwierig betrachtet, akkurate Steuerungen auszuüben. Wenn Ausübung akkurater Steuerung erschwert wird, kann dies zu einer Situation führen, in der, wenn sich ein Abschnitt, der sich von einem Abschnitt als einem zu bearbeitenden Gegenstand unterscheidet, oder ein Teil, das sich von dem Gegenstand unterscheidet, in der Nähe einer angewiesenen Strecke für ein Schneidwerkzeug befindet, das Schneidwerkzeug beispielsweise durch einen derartigen anderen Abschnitt oder ein derartiges anderes Teil (als ein behinderndes Objekt bezeichnet) behindert wird. So wird die Anwendung der Methode in Patentdokument 2 erschwert, wenn sich ein bestimmtes behinderndes Objekt in der Nähe der angewiesenen Strecke für das Schneidwerkzeug befindet.
  • Bei der herkömmlichen Methode zum Steuern einer Werkzeugmaschine unter Einsatz von Oszillation ist, wie oben beschrieben, davon ausgegangen worden, dass es dabei wahrscheinlich ist, dass ein Schneidwerkzeug aufgrund der auf das Schneidwerkzeug wirkenden Oszillation gegenüber einer primären angewiesenen Route um die Amplitude der Oszillation (als Oszillations-Amplitude bezeichnet) verschoben wird. Dadurch besteht eine Gefahr der Behinderung des Schneidwerkzeugs durch ein behinderndes Objekt, wenn das behindernde Objekt in der Nähe eines Abschnitts, wie beispielsweise eines zu schneidenden Gegenstandes, vorhanden ist.
    • Patentdokument 1: Japanisches Patent Nr. 5033929
    • Patentdokument 2: Japanisches Patent Nr. 5599523
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die vorliegende Erfindung ist angesichts des oben dargestellten Problems gemacht worden. Mit der vorliegenden Erfindung sollen eine Steuerungseinrichtung, ein Steuerungsverfahren und ein Computerprogramm für eine Werkzeugmaschine geschaffen werden, mit denen Oszillation der Werkzeugmaschine gesteuert wird, die zum oszillierenden Schneiden genutzt wird, um eine Wahrscheinlichkeit von Behinderung eines Werkzeugs zum Bearbeiten durch ein behinderndes Objekt selbst dann zur verringern, wenn sich das behindernde Objekt in der Nähe einer angewiesenen Strecke für ein Werkstück als einem zu schneidenden Gegenstand befindet.
  • Die Entwickler der vorliegenden Erfindung haben das Prinzip der Steuerung über einen Bewegungsbereich eines Schneidwerkzeugs mittels Addieren eines vorgegebenen Offsets zu einer Oszillations-Amplitude ausgearbeitet und so die vorliegende Erfindung entwickelt.
  • 1) Eine Steuerungseinrichtung gemäß der vorliegenden Erfindung (z.B. eine weiter unten beschriebene Servo-Steuerungseinrichtung 100) ist eine Steuerungseinrichtung, die eine Werkzeugmaschine steuert, die mehrere Steuerungs-Achsen umfasst und zum Bearbeiten eines Werkstücks (z.B. eines weiter unten beschriebenen Werkstücks 10 oder 20) als einem zu bearbeitenden Gegenstand durch Schneiden mittels koordinierter Bewegung entlang der Steuerungs-Achsen eingesetzt wird. Die Steuerungseinrichtung umfasst eine Einheit zum Beziehen eines Positions-Befehls (z.B. eine weiter unten beschriebene Einheit 120 zum Beziehen eines Positions-Befehls), die einen Positions-Befehl, der an einen Servomotor (z.B. einen weiter unten beschriebenen Servomotor 400) zum Antreiben eines Schneidwerkzeugs gerichtet ist, oder einen Positions-Befehl bezieht, der an einen Servomotor zum Antreiben des Werkstücks gerichtet ist, eine Einheit zum Ermitteln einer Drehgeschwindigkeit (z.B. eine weiter unten beschriebene Einheit 118 zum Ermitteln einer Drehgeschwindigkeit), die eine Drehgeschwindigkeit des rotierenden Schneidwerkzeugs oder des rotierenden Werkstücks ermittelt, eine Einheit zum Berechnen einer Beschleunigung (z.B. eine weiter unten beschriebene Einheit 104 zum Berechnen einer Beschleunigung), die eine Beschleunigung des Servomotors auf Basis des bezogenen Positions-Befehls berechnet, eine Einheit zum Berechnen eines Oszillations-Befehls (z.B. eine weiter unten beschriebene Einheit 102 zum Berechnen eines Oszillations-Befehls), die einen Oszillations-Befehl auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit berechnet, wobei der berechnete Oszillations-Befehl das Schneidwerkzeug und das Werkstück veranlasst, relativ zueinander in einer Bearbeitungs-Richtung entlang einer Bearbeitungs-Strecke zu oszillieren, auf der sich das Schneidwerkzeug bewegt, eine Einheit zum Berechnen eines Offset-Wertes (z.B. eine weiter unten beschriebene Einheit 106 zum Berechnen eines Offset-Wertes), die einen Offset-Wert auf Basis der berechneten Beschleunigung berechnet, eine Offset-Einheit (z.B. eine weiter unten beschriebene Einheit 108 zum Korrigieren des Oszillations-Befehls), die Offset der Amplitude des berechneten Oszillations-Befehls durchführt, indem sie den berechneten Offset-Wert zu der Amplitude addiert, sowie eine Antriebs-Einheit (z.B. eine Einheit 116 zum Steuern von Position, Geschwindigkeit und Strom sowie ein Addierer 110, die weiter unten beschrieben werden), die ein Antriebs-Signal, das zum Antreiben des Servomotors dient, auf Basis des Oszillations-Befehls bestimmt, der die Offset-Amplitude und den bezogenen Positions-Befehl einschließt, und das Antriebs-Signal ausgibt.
  • 2) Bei der in 1) beschriebenen Steuerungseinrichtung kann die Einheit zum Berechnen eines Oszillations-Befehls den Oszillations-Befehl zum Zerkleinern von Spänen berechnen, die bei der Bearbeitung durch Schneiden entstehen.
  • 3) Bei der in 1) oder 2) beschriebenen Steuerungseinrichtung kann die Einheit zum Berechnen eines Oszillations-Befehls eine Einheit zum Berechnen einer Oszillations-Frequenz (z.B. die weiter unten beschriebene Einheit 102 zum Berechnen eines Oszillations-Befehls), die eine Oszillations-Frequenz auf Basis der ermittelten Drehgeschwindigkeit berechnet, sowie eine Einheit zum Berechnen einer Oszillations-Amplitude (z.B. die weiter unten beschriebene Einheit 102 zum Berechnen eines Oszillations-Befehls) umfassen, die die Oszillations-Amplitude auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit berechnet.
  • 4) Bei der in 3) beschriebenen Steuerungseinrichtung kann die Einheit zum Berechnen einer Oszillations-Amplitude die Oszillations-Amplitude berechnen, indem sie einen Hub bei einer Drehung des Schneidwerkzeugs oder des Werkstücks auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit bestimmt und indem sie den bestimmten Hub mit einer ersten Konstante multipliziert.
  • 5) Bei der in 3) beschriebenen Steuerungseinrichtung kann die Einheit zum Berechnen einer Oszillations-Frequenz die Oszillations-Frequenz berechnen, indem sie die ermittelte Drehgeschwindigkeit mit einer zweiten Konstante multipliziert.
  • 6) Bei der in einem der Punkte 1) bis 3) beschriebenen Steuerungseinrichtung kann die Einheit zum Berechnen einer Beschleunigung die Beschleunigung auf Basis eines Positions-Rückkopplungswertes über den Servomotor berechnen.
  • 7) Bei der in einem der Punkte 1) bis 6) beschriebenen Steuerungseinrichtung kann die Offset-Einheit Offset der Amplitude des berechneten Oszillations-Befehls durchführen, indem sie einen Offset-Wert von einer externen Steuerungseinrichtung höherer Ordnung (z.B. eine weiter unten beschriebene Steuerungseinrichtung 200 höherer Ordnung) bezieht, statt den durch die Einheit zum Berechnen eines Offset-Wertes berechneten Offset-Wert zu verwenden, und indem sie den bezogenen Offset-Wert zu der Amplitude addiert.
  • 8) Bei der in einem der Punkte 1) bis 6) beschriebenen Steuerungseinrichtung kann die Einheit zum Berechnen eines Offset-Wertes einen Offset-Wert in einer Richtung der Bearbeitungs-Strecke bestimmen, wenn auf Basis der Beschleunigung durch den Servomotor durchgeführter Betrieb als Betrieb in einer Betriebs-Startperiode (z.B. einer weiter unten beschriebenen Betriebs-Startperiode S) bestimmt wird.
  • 9) Bei der in einem der Punkte 1) bis 6) beschriebenen Steuerungseinrichtung kann die Einheit zum Berechnen eines Offset-Wertes einen Offset-Wert in einer Richtung entgegengesetzt zu einer Richtung der Bearbeitungs-Strecke bestimmen, wenn auf Basis der Beschleunigung durch den Servomotor durchgeführter Betrieb als Betrieb in einer Betriebs-Abschlussperiode (z.B. einer weiter unten beschriebenen Betriebs-Abschlussperiode T) bestimmt wird.
  • 10) Bei der in einem der Punkte 1) bis 6) beschriebenen Steuerungseinrichtung kann die Einheit zum Berechnen eines Offset-Wertes einen Offset-Wert in einer Richtung der Bearbeitungs-Strecke oder in einer Richtung entgegengesetzt zu einer Richtung der Bearbeitungs-Strecke bestimmen, wenn auf Basis der Beschleunigung durch den Servomotor durchgeführter Betrieb als Betrieb in einer Betriebs-Startperiode oder Betrieb in einer Betriebs-Abschlussperiode bestimmt wird, und kann die Einheit zum Berechnen eines Offset-Wertes bestimmen, dass ein Offset-Wert null ist, wenn der durchgeführte Betrieb als Betrieb in einer anderen Periode als der Betriebs-Startperiode oder der Betriebs-Abschlussperiode bestimmt wird.
  • 11) Ein Steuerungsverfahren gemäß der vorliegenden Erfindung ist ein Verfahren zum Steuern einer Werkzeugmaschine, die mehrere Steuerungs-Achsen umfasst und zum Bearbeiten eines Werkstücks als einem zu bearbeitenden Gegenstand durch Schneiden mittels koordinierter Bewegung entlang der Steuerungs-Achsen eingesetzt wird. Das Verfahren umfasst einen Schritt zum Beziehen eines Positions-Befehls, mit dem ein Positions-Befehl, der an einen Servomotor zum Antreiben eines Schneidwerkzeugs gerichtet ist, oder ein Positions-Befehl bezogen wird, der an einen Servomotor zum Antreiben des Werkstücks gerichtet ist, einen Schritt zum Ermitteln einer Drehgeschwindigkeit, mit dem eine Drehgeschwindigkeit des rotierenden Schneidwerkzeugs oder des rotierenden Werkstücks ermittelt wird, einen Schritt zum Berechnen einer Beschleunigung, mit dem eine Beschleunigung des Servomotors auf Basis des bezogenen Positions-Befehls berechnet wird, einen Schritt zum Berechnen eines Oszillations-Befehls, mit dem ein Oszillations-Befehl auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit berechnet wird, wobei der berechnete Oszillations-Befehl das Schneidwerkzeug und das Werkstück veranlasst, relativ zueinander in einer Bearbeitungs-Richtung entlang einer Bearbeitungs-Strecke zu oszillieren, auf der sich das Schneidwerkzeug bewegt, einen Schritt zum Berechnen eines Offset-Wertes, mit dem ein Offset-Wert auf Basis der berechneten Beschleunigung berechnet wird, einen Offset-Schritt, mit dem Offset der Amplitude des berechneten Oszillations-Befehls durchgeführt wird, indem der berechnete Offset-Wert zu der Amplitude addiert wird, sowie einen Antriebs-Schritt, mit dem ein Antriebs-Signal, das zum Antreiben des Servomotors dient, auf Basis des Oszillations-Befehls bestimmt wird, der die Offset-Amplitude und den bezogenen Positions-Befehl einschließt, und das Antriebs-Signal ausgegeben wird.
  • 12) Ein Computerprogramm gemäß der vorliegenden Erfindung veranlasst einen Computer als eine Steuerungseinrichtung zu arbeiten, die eine Werkzeugmaschine steuert, die mehrere Steuerungs-Achsen umfasst und zum Bearbeiten eines Werkstücks als einem zu bearbeitenden Gegenstand durch Schneiden mittels koordinierter Bewegung entlang der Steuerungs-Achsen eingesetzt wird. Das Computerprogramm veranlasst den Computer einen Vorgang zum Beziehen eines Positions-Befehls, mit dem ein Positions-Befehl, der an einen Servomotor zum Antreiben eines Schneidwerkzeugs gerichtet ist, oder ein Positions-Befehl bezogen wird, der an einen Servomotor zum Antreiben des Werkstücks gerichtet ist, einen Vorgang zum Ermitteln einer Drehgeschwindigkeit, mit dem eine Drehgeschwindigkeit des rotierenden Schneidwerkzeugs oder des rotierenden Werkstücks ermittelt wird, einen Vorgang zum Berechnen einer Beschleunigung, mit dem eine Beschleunigung des Servomotors auf Basis des bezogenen Positions-Befehls berechnet wird, einen Vorgang zum Berechnen eines Oszillations-Befehls, mit dem ein Oszillations-Befehl auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit berechnet wird, wobei der berechnete Oszillations-Befehl das Schneidwerkzeug und das Werkstück veranlasst, relativ zueinander in einer Bearbeitungs-Richtung entlang einer Bearbeitungs-Strecke zu oszillieren, auf der sich das Schneidwerkzeug bewegt, einen Vorgang zum Berechnen eines Offset-Wertes, mit dem ein Offset-Wert auf Basis der berechneten Beschleunigung berechnet wird, einen Offset-Vorgang, mit dem Offset der Amplitude des berechneten Oszillations-Befehls durchgeführt wird, indem der berechnete Offset-Wert zu der Amplitude addiert wird, sowie einen Antriebs-Vorgang, mit dem ein Antriebs-Signal, das zum Antreiben des Servomotors dient, auf Basis des Oszillations-Befehls bestimmt wird, der die Offset-Amplitude und den bezogenen Positions-Befehl einschließt, und das Antriebs-Signal ausgegeben wird.
  • Gemäß der vorliegenden Erfindung wird Offset einer Amplitude der Oszillation in der Betriebs-Startperiode oder/und der Betriebs-Abschlussperiode der Bearbeitung durch Schneiden durchgeführt. Damit kann eine Wahrscheinlichkeit von Überlagerung des Schneidwerkzeugs und der Bearbeitungs-Strecke (angewiesene Strecke) (Überlagerung des Schneidwerkzeugs und eines Abschnitts oder eines Teils (behinderndes Objekt), der/das in der Nähe des Schneidwerkzeugs vorhanden ist) reduziert werden.
  • Figurenliste
    • 1A ist eine der Erläuterung dienende Ansicht, die zeigt, wie Bearbeitung durch Schneiden mittels Oszillation durchgeführt wird;
    • 1B ist eine der Erläuterung dienende Ansicht, die zeigt, wie Bearbeitung durch Schneiden mittels Oszillation durchgeführt wird;
    • 2 ist ein Konfigurations-Blockdiagramm einer Servo-Steuerungseinrichtung gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung;
    • 3 ist ein Diagramm, das die Funktion der Servo-Steuerungseinrichtung gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung darstellt;
    • 4 ist ein Diagramm, das die Funktion der Servo-Steuerungseinrichtung gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung darstellt;
    • 5A ist eine der Erläuterung dienende Ansicht, die zeigt, wie ein Werkzeug durch die Servo-Steuerungseinrichtung gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung veranlasst wird zu arbeiten;
    • 5B ist eine der Erläuterung dienende Ansicht, die zeigt, wie ein Werkzeug durch die Servo-Steuerungseinrichtung gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung veranlasst wird zu arbeiten;
    • 6 ist ein Flussdiagramm, das die Funktion der Servo-Steuerungseinrichtung gemäß der bevorzugten Ausführungsform der vorliegenden Erfindung darstellt.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • Beispiele einer Ausführungsform der vorliegenden Erfindung werden im Folgenden beschrieben. Eine in der vorliegenden Ausführungsform beschriebene Servo-Steuerungseinrichtung ist für eine Werkzeugmaschine bestimmt, die mehrere Steuerungs-Achsen umfasst. Die Servo-Steuerungseinrichtung dient dazu, die Werkzeugmaschine, die zum Bearbeiten durch Schneiden eines Werkstücks als einem zu bearbeitenden Gegenstand eingesetzt wird, zu veranlassen, intermittierendes Schneiden durchzuführen, indem sie ein Schneidwerkzeug und das Werkstück relativ zueinander in einer Bearbeitungs-Richtung oszillieren lässt und so Späne zerkleinert.
  • Erläuterung des Prinzips oszillierender Bewegung 1A und 1B sind jeweils eine der Erläuterung dienende Ansicht zum Erläutern oszillierender Bewegung. 1A ist eine der Erläuterung dienende Ansicht, die zeigt, wie eine Oberfläche eines Werkstücks 10 Bearbeitung durch Schneiden mit einem Schneidwerkzeug 14 unterzogen wird und dabei das Werkstück 10 um eine Spindelachse 12 als eine Drehachse herum gedreht wird. Eine Achse, die in der gleichen Richtung wie die Spindelachse 12 verläuft, ist, wie in 1A gezeigt, eine Z-Achse, und eine der Achsen im rechten Winkel zu der Spindelachse 12 ist eine Y-Achse. Das Schneidwerkzeug 14 dient dazu, die Oberfläche des Werkstücks 10 auf Basis eines vorgegebenen Programms zu schneiden. Diese Bearbeitung findet entlang der Z-Achse bzw. in einer Bearbeitungs-Richtung B in einem vorgegebenen Winkel zu der Z-Achse statt. Eine Richtung, in der die Bearbeitung auf diese Weise stattfindet, wird als die Bearbeitungs-Richtung B bezeichnet.
  • Während der erwähnten Bearbeitung durch Schneiden wird das Schneidwerkzeug 14 in der Bearbeitungs-Richtung B in Oszillation A versetzt. Es wird beispielsweise erwartet, dass mit der Oszillation A Späne fein zerkleinert werden. Die Oszillation A bewirkt sogenannte Vibration des Schneidwerkzeugs 14 in der Bearbeitungs-Richtung. Das Schneidwerkzeug 14 wird wiederholt in einen Zustand, in dem es in Kontakt mit dem Werkstück 10 ist, und einen Zustand versetzt, in dem es nicht in Kontakt mit ihm ist. Wenn das Schneidwerkzeug 14 mit dem Werkstück 10 in Kontakt ist, bewegt sich das Schneidwerkzeug 14 an der Oberfläche des Werkstücks 10 auf einem in 1A gezeigten Schneid-Weg D. Wenn das Schneidwerkzeug 14 nicht mit dem Werkstück 10 in Kontakt ist, bewegt sich das Schneidwerkzeug 14 an der Oberfläche des Werkstücks 10 auf einem in 1A gezeigten Luft-Weg C. Mit dem erwähnten intermittierenden Schneiden wird feines Zerkleinern von Spänen oder effektive Kühlung des Schneidwerkzeugs 14 erzielt.
  • 1B ist eine der Erläuterung dienende Ansicht, die ein anderes Beispiel für Oszillation eines Schneidwerkzeugs zeigt. 1B ist eine der Erläuterung dienende Ansicht, die zeigt, wie ein Werkstück 20 mit einem inneren Hohlraum Bearbeitung durch Schneiden im Inneren des Hohlraums mit einem Schneidwerkzeug 24 unterzogen wird. In 1B dreht sich das Schneidwerkzeug 24 relativ zu dem Werkstück 20 und dient die Achse des Schneidwerkzeugs 24 als eine Spindelachse. Das heißt, in der vorliegenden Patentbeschreibung bezeichnet eine Spindelachse die im Folgenden aufgeführten zwei Achsen. In 1A bezeichnet die Spindelachse 12 eine Achse, um die sich das Werkstück 10 herum dreht. In 1B bezeichnet die Spindelachse 22 eine Achse, um die sich das Schneidwerkzeug 24 herum dreht. Wie in 1A ist eine Achse, die in der gleichen Richtung verläuft wie die Spindelachse 22 in 1B die Z-Achse und ist eine der Achsen im rechten Winkel zu der Spindelachse 22 in 1B die X-Achse. Das Schneidwerkzeug 24 dient dazu, eine Oberfläche der Innenseite des Hohlraums des Werkstücks 20 auf Basis eines vorgegebenen Programms zu schneiden. Wie in 1A verläuft diese Bearbeitung in der Bearbeitungs-Richtung B.
  • In 1B wird die Oszillation A ebenfalls in der Bearbeitungs-Richtung B auf das Schneidwerkzeug 24 ausgeübt und wird das Schneidwerkzeug 24 ebenfalls wiederholt in einen Zustand, in dem es mit dem Werkstück 20 in Kontakt ist, und einen Zustand versetzt, in dem es nicht mit ihm in Kontakt ist. Wenn das Schneidwerkzeug 24 mit dem Werkstück 20 in Kontakt ist, bewegt sich das Schneidwerkzeug 24 an der Oberfläche des Werkstücks 20 auf einem in 1B gezeigten Schneid-Weg D. Wenn das Schneidwerkzeug 24 nicht mit dem Werkstück 20 in Kontakt ist, bewegt sich das Schneidwerkzeug 24 an der Oberfläche des Werkstücks 20 auf einem in 1B gezeigten Luft-Weg C. 1A und 1B zeigen beide die Beispiele, bei denen die Schneidwerkzeuge 14 und 24 veranlasst werden, zu oszillieren. Als Alternative dazu kann die Konfiguration auch so sein, dass das Werkstück 10 oder 20 veranlasst wird, zu oszillieren.
  • Bei der herkömmlichen Methode wird Oszillation bewirkt, indem einem Servomotor ein Befehl für die Oszillation zusätzlich zu einem primären Befehl zum Antreiben des Schneidwerkzeugs 14 (24) usw. erteilt wird. Zum Beispiel wird herkömmlicherweise eine Anweisung zur Oszillation lediglich unter Berücksichtigung eines Befehls (eines Positions-Befehls oder einer Drehgeschwindigkeit einer Spindelachse) zum Zeitpunkt der Anweisung erteilt. So ist es möglich, dass, wenn sich ein behinderndes Objekt, das ein Schneidwerkzeug behindert, in der Nähe einer Strecke für das Schneidwerkzeug befindet, das behindernde Objekt und das Schneidwerkzeug einander überlagern. Eine in der vorliegenden Ausführungsform vorgeschlagene Servo-Steuerungseinrichtung passt diese Oszillations-Bewegung in einer Anfangsperiode des Bearbeitungsvorgangs (als eine Betriebs-Startperiode S bezeichnet) oder einer Abschlussperiode des Bearbeitungsvorgangs (als eine Betriebs-Abschlussperiode T bezeichnet) an und ermöglicht so Verringerung einer Wahrscheinlichkeit von Behinderung durch ein behinderndes Objekt, das sich in der Nähe einer Bearbeitungs-Strecke befindet. Diese Anpassung der Oszillations-Bewegung wird realisiert, indem ein Offset-Wert zur Amplitude der Oszillation addiert wird.
  • Das heißt, die Servo-Steuerungseinrichtung gemäß der vorliegenden Ausführungsform ist dadurch gekennzeichnet, dass sie in Reaktion auf eine angewiesene Beschleunigung einen Offset-Wert zu einem Oszillations-Befehl addiert. Wenn dabei eine Beschleunigung in einer positiven Richtung (Bearbeitungs-Richtung) stark ist, wird der durchgeführte Betrieb als Betrieb in der Betriebs-Startperiode S (Anfangsperiode des Betriebs) bestimmt. Dann wird ein Offset-Wert in der Bearbeitungs-Richtung zur Amplitude der Oszillation addiert. Dieser Offset-Wert wird als Vorwärts-Offset bezeichnet. Wenn eine Beschleunigung in einer negativen Richtung (Richtung entgegengesetzt zu der Bearbeitungs-Richtung) stark ist, wird der durchgeführte Betrieb als Betrieb in der Betriebs-Abschlussperiode T (Abschlussperiode des Betriebs) bestimmt. Dann wird ein Offset-Wert in einer Richtung entgegengesetzt zu der Bearbeitungs-Richtung zur Amplitude der Oszillation addiert. Dieser Offset-Wert wird als ein Rückwärts-Offset bezeichnet. Bei dem in der vorliegenden Ausführungsform beschriebenen Beispiel wird Offset der Amplitude der Oszillation sowohl in der Betriebs-Startperiode als auch der Betriebs-Abschlussperiode durchgeführt. Als Alternative ist es möglich, Offset der Amplitude der Oszillation nur in der Betriebs-Startperiode oder der Betriebs-Abschlussperiode durchzuführen. Eine in der vorliegenden Patentbeschreibung erwähnte Strecke bezeichnet eine Bearbeitungs-Strecke. Das heißt, diese Bearbeitungs-Strecke ist eine Strecke, auf der sich ein Schneidwerkzeug beispielsweise in Reaktion auf einen an das Schneidwerkzeug gerichteten Positions-Befehl bewegt (der das Schneidwerkzeug folgt). Die Bearbeitungs-Strecke wird auch als eine angewiesene Strecke bezeichnet.
  • Gemäß der vorliegenden Ausführungsform wird, wie oben beschrieben, ein Offset-Wert auf Basis einer angewiesenen Beschleunigung bestimmt. Der bestimmte Offset-Wert wird zu einem Oszillations-Befehl (Amplitude des Oszillations-Befehls) addiert. Als Alternative dazu kann der Offset-Wert von einer Steuerungseinrichtung einer höheren Ordnung (als Steuerungseinrichtung höherer Ordnung bezeichnet) bereitgestellt werden. Die Steuerungseinrichtung höherer Ordnung gibt einen Positions-Befehl für den Bearbeitungsvorgang mit einem Schneidwerkzeug aus. So wird davon ausgegangen, dass die Steuerungseinrichtung höherer Ordnung in der Lage ist, die Betriebs-Startperiode S und die Betriebs-Abschlussperiode T zu erkennen. Aus diesem Grund ist es möglicherweise vorzuziehen, dass die Steuerungseinrichtung höherer Ordnung einen zur Amplitude eines Oszillations-Befehls zu addierenden Offset-Wert bereitstellt. Der Oszillations-Befehl enthält im Wesentlichen eine Frequenz der Oszillation (als eine Oszillations-Frequenz bezeichnet) sowie eine Amplitude der Oszillation (als Oszillations-Amplitude bezeichnet). Der Oszillations-Befehl kann zusätzlich verschiedene Parameter enthalten. Der Oszillations-Befehl kann beispielsweise das Maß des Vorschubs eines Schneidwerkzeugs, das Maß der Vorwärtsbewegung, das Maß der Rückwärtsbewegung, eine Geschwindigkeit der Vorwärtsbewegung sowie eine Geschwindigkeit der Rückwärtsbewegung des Schneidwerkzeugs einschließen.
  • Konfiguration
  • Im Folgenden wird die Konfiguration einer Servo-Steuerungseinrichtung 100 gemäß der vorliegenden Ausführungsform anhand der Zeichnungen beschrieben. 2 ist ein Konfigurations-Blockdiagramm der Servo-Steuerungseinrichtung 100 gemäß der vorliegenden Ausführungsform. Eine Steuerungseinrichtung 200 höherer Ordnung gibt, wie in 2 gezeigt, einen Positions-Befehl aus. Die Servo-Steuerungseinrichtung 100 treibt einen Servomotor 400 für eine Werkzeugmaschine (in den Zeichnungen nicht dargestellt) an, um ein Schneidwerkzeug der Werkzeugmaschine oder ein Werkstück in Übereinstimmung mit dem Positions-Befehl zu steuern. Die Servo-Steuerungseinrichtung 100 entspricht einem bevorzugten Beispiel einer Steuerungseinrichtung gemäß den Patentansprüchen. Die Steuerungseinrichtung 200 höherer Ordnung ist eine Steuerungseinrichtung höherer Ordnung für Steuerung der Werkzeugmaschine über die Servo-Steuerungseinrichtung 100. Die Steuerungseinrichtung 200 höherer Ordnung kann beispielsweise als ein Computer konfiguriert sein. In einem weiteren Beispiel kann die Steuerungseinrichtung 200 höherer Ordnung als eine Bedienkonsole oder ein Bedienfeld konfiguriert sein, die/das von einem Benutzer betätigt wird. In einem weiteren Beispiel kann die Steuerungseinrichtung 200 höherer Ordnung als eine Administrations-Vorrichtung (Administrations-Computer) konfiguriert sein, die/der für integrierte Administration mehrerer Werkzeugmaschinen verantwortlich ist. In einem anderen Beispiel kann die Steuerungseinrichtung 200 höherer Ordnung als ein Controller (Steuerungs-Computer) konfiguriert sein, der für die gesamte Steuerung einer Fertigungsanlage verantwortlich ist.
  • Die Servo-Steuerungseinrichtung 100 besteht vorzugsweise aus einem Computer, der eine CPU und einen Speicher enthält. Jede im Folgenden beschriebene Einheit (jede Berechnungs-Einheit, eine Steuerungs-Einheit usw.) kann mittels Ausführung eines vorgegebenen Programms in dem Speicher durch die CPU realisiert werden. Dieses Programm entspricht einem bevorzugten Beispiel eines Computerprogramms gemäß den Patentansprüchen. Die Servo-Steuerungseinrichtung 100 gemäß der vorliegenden Ausführungsform umfasst eine Einheit 102 zum Berechnen eines Oszillations-Befehls, eine Einheit 104 zum Berechnen einer Beschleunigung, eine Einheit 106 zum Berechnen eines Offset-Wertes, eine Einheit 108 zum Korrigieren des Oszillations-Befehls sowie eine Einheit 116 zum Steuern von Position, Geschwindigkeit und Strom
  • Die Einheit 102 zum Berechnen eines Oszillations-Befehls berechnet einen Oszillations-Befehl auf Basis einer Drehgeschwindigkeit einer Spindelachse und eines von der Steuerungseinrichtung 200 höherer Ordnung ausgegebenen Positions-Befehls. Die Einheit 104 zum Berechnen einer Beschleunigung berechnet eine Beschleunigung des Servomotors 400. Die Beschleunigung wird mittels zweier Verfahren berechnet, das heißt einem Verfahren, das auf einem Positions-Befehl basiert, und einem Verfahren, das auf einem Positions-Rückkopplungswert basiert. Diese Verfahren werden weiter unten ausführlich beschrieben. Die Einheit 106 zum Berechnen eines Offset-Wertes berechnet einen Offset-Wert auf Basis der durch die Einheit 104 zum Berechnen einer Beschleunigung berechneten Beschleunigung. Die Einheit 108 zum Korrigieren des Oszillations-Befehls korrigiert den Oszillations-Befehl durch Addieren des Offset-Wertes zu dem Oszillations-Befehl. Der zu verwendende Offset-Wert kann ein durch die Einheit 106 zum Berechnen eines Offset-Wertes berechneter Offsetwert sein oder kann ein von der Steuerungseinrichtung 200 höherer Ordnung bereitgestellter Offset-Wert sein. Diese Verwendung wird weiter unten ausführlich beschrieben. Die Einheit 116 zum Steuern von Position, Geschwindigkeit und Strom bestimmt ein Antriebs-Signal für den Servomotor 400 durch Addieren des korrigierten Oszillations-Befehls zu dem Positions-Befehl.
  • Die Servo-Steuerungseinrichtung 100 enthält des Weiteren eine Einheit 118 zum Ermitteln einer Drehgeschwindigkeit, die eine Drehgeschwindigkeit einer Spindelachse ermittelt, eine Einheit 120 zum Beziehen eines Positions-Befehls, die einen Positions-Befehl von der Steuerungseinrichtung 200 höherer Ordnung bezieht, sowie eine Einheit 122 zum Ermitteln einer Position, die einen Positions-Rückkopplungswert ermittelt. Eine Drehgeschwindigkeit der Spindelachse kann die Anzahl von Umdrehungen pro Minute (pro Sekunde) sein oder kann eine Winkelgeschwindigkeit sein. Jede dieser Ermittlungs-Einheiten wird vorzugsweise unter Verwendung einer Eingabe-Schnittstelle eines Computers, eines Programms, das Informationen durch Steuern der Eingabe-Schnittstelle ermittelt, und einer CPU konfiguriert, die das Programm ausführt. Dieses Programm entspricht ebenfalls einem bevorzugten Beispiel eines Computerprogramms gemäß den Patentansprüchen. Jede dieser Registrier-Einheiten kann beispielsweise einen Puffer zum Speichern von außen empfangener Daten enthalten.
  • Funktion
  • Die Funktion der Servo-Steuerungseinrichtung 100 wird im Folgenden ausführlich auf Basis des Konfigurations-Blockdiagramms in 2, der der Erläuterung der Funktion dienenden Diagramme bzw. Ansichten in 3, 4, 5A und 5B sowie des Flussdiagramms in 6 ausführlich erläutert. Die Einheit 120 zum Beziehen eines Positions-Befehls ist eine Schnittstelle, die einen an den Servomotor 400 gerichteten Positions-Befehl zum Antreiben eines Schneidwerkzeugs oder einen an den Servomotor 400 gerichteten Positions-Befehl zum Antreiben des Werkstücks 10 (20) bezieht, die beide von der Steuerungseinrichtung 200 höherer Ordnung ausgegeben werden. Der durch die Einheit 120 zum Beziehen eines Positions-Befehls ermittelte Positions-Befehl wird der Einheit 102 zum Berechnen eines Oszillations-Befehls, der Einheit 104 zum Berechnen einer Beschleunigung sowie einem Addierer 110 zugeführt. Die Einheit 120 zum Beziehen eines Positions-Befehls entspricht einem bevorzugten Beispiel einer Einheit zum Beziehen eines Positions-Befehls gemäß den Patentansprüchen. Des Weiteren entspricht der durch die Einheit 120 zum Beziehen eines Positions-Befehls durchgeführte Vorgang des Beziehens eines Positions-Befehls einem Schritt zum Beziehen eines Positions-Befehls als Schritt S1 in 6.
  • Die Einheit 118 zum Ermitteln einer Drehgeschwindigkeit ist eine Schnittstelle, die eine Drehgeschwindigkeit einer Spindelachse des rotierenden Werkstücks oder einer Spindelachse des rotierenden Schneidwerkzeugs ermittelt. Die ermittelte Drehgeschwindigkeit wird der Einheit 102 zum Berechnen eines Oszillations-Befehls zugeführt. Die Einheit 118 zum Ermitteln einer Drehgeschwindigkeit entspricht einem bevorzugten Beispiel einer Einheit zum Ermitteln einer Drehgeschwindigkeit gemäß den Patentansprüchen. Der durch die Einheit 118 zum Ermitteln einer Drehgeschwindigkeit durchgeführte Vorgang zum Ermitteln der Drehgeschwindigkeit der Spindelachse entspricht einem Schritt zum Ermitteln einer Drehgeschwindigkeit als Schritt S2 in 6. Eine in der vorliegenden Ausführungsform genannte Drehgeschwindigkeit kann eine Drehgeschwindigkeit des Schneidwerkzeugs oder des Werkstücks sein. Eine Drehgeschwindigkeit kann beispielsweise unter Verwendung eines an der Spindelachse des Schneidwerkzeugs befindlichen Drehgeschwindigkeit-Sensors ermittelt werden. Als Alternative dazu kann eine Drehgeschwindigkeit auf Basis eines Grades der zeitlichen Änderung eines von der Steuerungseinrichtung 200 höherer Ordnung ausgegebenen Positions-Befehls bestimmt werden. Als weitere Alternative wird eine Drehgeschwindigkeit vorzugsweise auf Basis des Grades der Änderung (bzw. eines Differentials) eines Positions-Rückkopplungswertes bestimmt, der von einem Detektor 500 zum Erfassen eines Drehwinkels des Servomotors 400 erfasst wird, der weiter unten beschrieben wird.
  • Die Einheit 104 zum Berechnen einer Beschleunigung berechnet eine Beschleunigung des Servomotors 400 auf Basis des Positions-Befehls. Eine Geschwindigkeit wird ermittelt, indem die Position des Servo-Motors 400 differenziert wird. Eine Beschleunigung wird ermittelt, indem die Geschwindigkeit differenziert wird. In einigen Fällen wird die ermittelte Beschleunigung als eine angewiesene Beschleunigung bezeichnet. Diese Funktion der Einheit 104 zum Berechnen einer Beschleunigung wird ebenfalls durch Ausführung eines diese Funktion der Einheit 104 zum Berechnen einer Beschleunigung beschreibenden Programms durch die CPU der Servo-Steuerungseinrichtung 100 realisiert. Dieses Programm ist in einer bestimmten Speichervorrichtung in der Servo-Steuerungseinrichtung 100 gespeichert. Als Alternative dazu kann es in einer externen Speichervorrichtung gespeichert sein. Dieses Programm entspricht ebenfalls einem bevorzugten Beispiel eines Computerprogramms gemäß den Patentansprüchen. Eine der charakteristischen Eigenschaften der vorliegenden Ausführungsform besteht darin, dass durch Berechnen der Beschleunigung auf die oben beschriebene Weise durch den Servomotor 400 durchgeführter Betrieb als Betrieb in der Betriebs-Startperiode S, Betrieb in der Betriebs-Abschlussperiode T oder Betrieb in einer anderen Periode als der Betriebs-Startperiode S und der Betriebs-Abschlussperiode T bestimmt wird. Auf Basis dieser Bestimmung kann Offset eines Oszillations-Befehls (Amplitude des Oszillations-Befehls) für ein Werkzeug durchgeführt werden.
  • Vorzugsweise berechnet die Einheit 104 zum Berechnen einer Beschleunigung eine Ist-Beschleunigung nicht auf Basis eines Positions-Befehls, sondern einer tatsächlichen Bewegung des Servomotors 400. Es wird davon ausgegangen, dass mit dieser Berechnung einer Beschleunigung genauere Berechnung eines Beschleunigungswertes auf Basis der tatsächlichen Bewegung erzielt wird. Die Position des Servomotors 400 wird durch den in 2 gezeigten Detektor 500 erfasst und als ein Positions-Rückkopplungswert ausgegeben. Der Positions-Rückkopplungswert wird über die Einheit 122 zum Ermitteln einer Position in die Servo-Steuerungseinrichtung 100 eingeleitet. Die Einheit 122 zum Ermitteln einer Position führt den ermittelten Positions-Rückkopplungswert der Einheit 104 zum Berechnen einer Beschleunigung und dem Addierer 110 zu.
  • Die Einheit 104 zum Berechnen einer Beschleunigung kann eine Beschleunigung bestimmen, indem sie eine Ist-Position des Servomotors 400 unter Verwendung dieses Positions-Rückkopplungswertes anstelle eines Positions-Befehls erfasst, die erfasste Position differenziert, um eine Geschwindigkeit zu berechnen, und die berechnete Geschwindigkeit differenziert. Eine Beschleunigung kann auf Basis tatsächlicher Bewegung des Servomotors 400 erfasst werden. Es wird davon ausgegangen, dass dadurch ein höherer Grad an Genauigkeit einer resultierenden Beschleunigung als bei Berechnung einer Beschleunigung auf Basis eines von der Steuerungseinrichtung 200 höherer Ordnung bereitgestellten Positions-Befehls erzielt wird. Jedoch wird davon ausgegangen, dass Verwendung eines Wertes, der als eine Rückmeldung der tatsächlichen Bewegung des Servomotors 400 ermittelt wird, eine gewisse Verzögerung bei Berechnung einer Beschleunigung gegenüber der Verwendung eines Positions-Befehls von der Steuerungseinrichtung 200 höherer Ordnung bewirkt. Die Einheit 104 zum Berechnen einer Beschleunigung entspricht einem bevorzugten Beispiel einer Einheit zum Berechnen einer Beschleunigung gemäß den Patentansprüchen. Der oben beschriebene Vorgang zum Bestimmen einer Beschleunigung, der durch die Einheit 104 zum Berechnen einer Beschleunigung durchgeführt wird, entspricht einem Schritt zum Berechnen einer Beschleunigung als Schritt S3 in 6.
  • Anschließend berechnet die Einheit 102 zum Berechnen eines Oszillations-Befehls einen Oszillations-Befehl auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit. Das heißt, gemäß der vorliegenden Ausführungsform berechnet die Einheit 102 zum Berechnen eines Oszillations-Befehls einen Oszillations-Befehl, indem sie einen im folgenden beschriebenen Vorgang auf Basis des von der Steuerungseinrichtung 200 höherer Ordnung ausgegebenen Positions-Befehls ausführt. Die im Folgenden beschriebenen Berechnungen werden ebenfalls durch Ausführung eines Programms, das die Funktion der Einheit 102 zum Berechnen eines Oszillations-Befehls beschreibt, durch die CPU der Servo-Steuerungseinrichtung 100 durchgeführt. Dieses Programm entspricht ebenfalls einem bevorzugten Beispiel eines Computerprogramms gemäß den Patentansprüchen.
  • Zunächst berechnet die Einheit 102 zum Berechnen eines Oszillations-Befehls die Oszillations-Amplitude auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit. Beispielsweise kann die Einheit 102 zum Berechnen eines Oszillations-Befehls das Maß des Vorschubs während einer Drehung der Spindelachse auf Basis des Positions-Befehls und der Drehgeschwindigkeit der Spindelachse bestimmen und die Oszillations-Amplitude festlegen, indem sie beispielsweise das bestimmte Maß des Vorschubs während einer Drehung mit 1,5 multipliziert. Dieser numerische Wert 1,5 entspricht einem bevorzugten Beispiel einer ersten Konstante gemäß den Patentansprüchen. Die Einheit 102 zum Berechnen eines Oszillations-Befehls, die verantwortlich für Berechnung der Oszillations-Amplitude ist, entspricht einem bevorzugten Beispiel einer Einheit zum Berechnen einer Oszillations-Amplitude gemäß den Patentansprüchen. Der durch die Einheit 102 zum Berechnen eines Oszillations-Befehls durchgeführte Vorgang zum Berechnen der Oszillations-Amplitude entspricht einem Teil eines Schritts zum Berechnen eines Oszillations-Befehls als Schritt S4 in 6.
  • Anschließend berechnet die Einheit 102 zum Berechnen eines Oszillations-Befehls eine Oszillations-Frequenz auf Basis der ermittelten Drehgeschwindigkeit. Die Einheit 102 zum Berechnen eines Oszillations-Befehls bestimmt beispielsweise vorzugsweise einen Wert, indem sie die Drehgeschwindigkeit mit 1,5 multipliziert, und legt einen resultierenden Wert als eine Oszillations-Frequenz fest. Dieser numerische Wert 1,5 entspricht einem bevorzugten Beispiel einer zweiten Konstante gemäß den Patentansprüchen. Die Einheit 102 zum Berechnen eines Oszillations-Befehls, die verantwortlich für Berechnung einer Oszillations-Frequenz ist, entspricht einem bevorzugten Beispiel einer Einheit zum Berechnen einer Oszillations-Frequenz gemäß den Patentansprüchen. Der durch die Einheit 102 zum Berechnen eines Oszillations-Befehls durchgeführte Vorgang zum Berechnen der Oszillations-Frequenz entspricht einem Teil eines Schritts zum Berechnen eines Oszillations-Befehls als Schritt S4 in 6.
  • Anschließend berechnet die Einheit 102 zum Berechnen eines Oszillations-Befehls einen Oszillations-Befehl auf Basis der berechneten Oszillations-Amplitude und der berechneten Oszillations-Frequenz. Der berechnete Oszillations-Befehl wird zusammen mit dem von der Steuerungseinrichtung 200 höherer Ordnung ausgegebenen Positions-Befehl zu dem Servomotor 400 übertragen. Dadurch wird Oszillations-Bewegung zu Bewegung des Schneidwerkzeugs (bzw. des Werkstücks) addiert. Die Einheit 102 zum Berechnen eines Oszillations-Befehls, die verantwortlich für Berechnung eines Oszillations-Befehls ist, entspricht einem bevorzugten Beispiel einer Einheit zum Berechnen eines Oszillations-Befehls gemäß den Patentansprüchen. Der durch die Einheit 102 zum Berechnen eines Oszillations-Befehls durchgeführte Vorgang zum Berechnen des Oszillations-Befehls entspricht einem Teil eines Schritts zum Berechnen eines Oszillations-Befehls als Schritt S4 in 6.
  • Anschließend berechnet die Einheit 106 zum Berechnen eines Offset-Wertes einen zu dem Oszillations-Befehl zu addierenden Offset-Wert auf Basis einer durch die Einheit 104 zum Berechnen einer Beschleunigung berechneten Beschleunigung. Dieser Vorgang wird ebenfalls durch Ausführung eines Programms, das diese Funktion der Einheit 106 zum Berechnen eines Offset-Wertes beschreibt, durch die CPU der Servo-Steuerungseinrichtung 100 realisiert. Dieses Programm ist in einer bestimmten Speichervorrichtung in der Servo-Steuerungseinrichtung 100 gespeichert. Als Alternative dazu kann es in einer externen Speichervorrichtung gespeichert sein. Dieses Programm entspricht ebenfalls einem bevorzugten Beispiel eines Computerprogramms gemäß den Patentansprüchen.
  • Betriebs-Startperiode S, Betriebs-Abschlussperiode T
  • Wenn die berechnete Beschleunigung einen positiven Wert hat, stellt die Einheit 106 zum Berechnen eines Offset-Wertes fest, dass der Servomotor 400 Betrieb in der Betriebs-Startperiode S durchführt. Wenn durchgeführter Betrieb als Betrieb in der Betriebs-Startperiode S bestimmt wird, bestimmt die Einheit 106 zum Berechnen eines Offset-Wertes einen Offset-Wert in einer Richtung der Bearbeitungs-Strecke. 3 ist ein Diagramm, das eine Beziehung zwischen dem Maß des Vorschubs, das heißt der Position des Servomotors, und der Zeit darstellt. Der hier als Beispiel beschriebene Bearbeitungsvorgang läuft so ab, dass der Servomotor 400 beginnt, sich von einer Position P2 aus zu bewegen und dann an einer Position P1 anhält, an der der Servomotor 400 den Bearbeitungsvorgang beendet. In der Darstellung in 3 wird eine Periode, in der eine Beschleunigung einen positiven Wert hat, nachdem der Servomotor 400 begonnen hat, sich zu bewegen, als die Betriebs-Startperiode S bestimmt. Das heißt, diese Periode bezeichnet eine Periode, in der der Servomotor 400 beschleunigt wird. Umgekehrt wird die Periode, in der der Servomotor 400 beschleunigt wird, als eine Anfangsperiode bestimmt, nachdem der Bearbeitungsvorgang begonnen worden ist, das heißt, die Betriebs-Startperiode S.
  • Charakteristisch für die vorliegende Ausführungsform ist, dass, wenn die Einheit 106 zum Berechnen eines Offset-Wertes auf Basis einer Beschleunigung durchgeführten Betrieb als Betrieb in der Betriebs-Startperiode S bestimmt, die Einheit 106 zum Berechnen eines Offset-Wertes einen Offset-Wert in der Richtung der Bearbeitungs-Strecke bestimmt (berechnet). Wenn der Offset-Wert in der Richtung der Bearbeitungs-Strecke bestimmt wird, das heißt, in einer Richtung, in der sich der Servomotor 400 bewegt, kann die Amplitude der Oszillation Offset in der Richtung der Bearbeitungs-Strecke unterzogen werden. Dadurch kann das Schneidwerkzeug so gesteuert werden, dass es sich stets auf die Position P1 zu bewegt, die von der Position P2 als einer Start-Position entfernt ist. So kann, selbst wenn sich ein behinderndes Objekt Q an einer Seite befindet, die der Position P1, von der Position P2 aus gesehen, als einem Ziel der Bewegung des Schneidwerkzeugs gegenüberliegt, eine Wahrscheinlichkeit von Bewegung des Schneidwerkzeugs auf das behindernde Objekt Q zu als Ergebnis der Oszillations-Bewegung reduziert werden. 3 zeigt eine derartige Oszillation des Schneidwerkzeugs. Eine angewiesene Strecke für das Werkzeug wird mit der Oszillations-Bewegung vorgegebener Amplitude und einer vorgegebenen Frequenz überlagert. Indem Offset dieser Amplitude auf die Position P1 zu durchgeführt wird, wird das Schneidwerkzeug so gesteuert, dass es sich, von der Position P2 aus gesehen, nicht in einer Richtung entgegengesetzt zu der Position P1 bewegt. So kann, wenn sich das behindernde Objekt Q in der Nähe der Position P2 (und an der der Position P1 gegenüberliegenden Seite) befindet, eine Wahrscheinlichkeit von Behinderung durch das behindernde Objekt Q reduziert werden. Wenn die Beschleunigung im Wesentlichen null beträgt, stellt die Einheit 106 zum Berechnen eines Offset-Wertes fest, dass durchgeführter Betrieb weder Betrieb in der Betriebs-Startperiode S noch Betrieb in der Betriebs-Abschlussperiode T ist. Dann bestimmt (berechnet) die Einheit 106 zum Berechnen eines Offset-Wertes den Offset-Wert so, dass er null ist.
  • Im Unterschied dazu stellt, wenn die berechnete Beschleunigung einen negativen Wert hat, die Einheit 106 zum Berechnen eines Offset-Wertes fest, dass der Servomotor 400 Betrieb in der Betriebs-Abschlussperiode T durchführt. Wenn durchgeführter Betrieb als Betrieb in der Betriebs-Abschlussperiode T bestimmt wird, berechnet die Einheit 106 zum Berechnen eines Offset-Wertes einen Offset-Wert in einer Richtung entgegengesetzt zu der Richtung der Bearbeitungs-Strecke. In der Darstellung in 3 beginnt der Servomotor 400, sich von der Position P2 aus zu bewegen und kommt an der Position P1 zum Halten, an der der Servomotor 400 den Bearbeitungsvorgang beendet. In der Darstellung in 3 ist eine Periode, in der sich der Servomotor 400 der Position P1 nähert und eine Beschleunigung einen negativen Wert hat, die Betriebs-Abschlussperiode T. Das heißt, diese Periode bezeichnet eine Periode, in der der Servomotor 400 abgebremst wird. Umgekehrt wird die Periode, in der der Servomotor 400 abgebremst wird, als eine Periode unmittelbar vor Abschluss des Bearbeitungsvorgangs bestimmt, das heißt die Betriebs-Abschlussperiode T.
  • Die vorliegende Ausführungsform ist dadurch gekennzeichnet, dass, wenn die Einheit 106 zum Berechnen eines Offset-Wertes auf Basis einer Beschleunigung durchgeführten Betrieb als Betrieb in der Betriebs-Abschlussperiode T bestimmt, die Einheit 106 zum Berechnen eines Offset-Wertes einen Offset-Wert in der Richtung entgegengesetzt zu der Richtung der Bearbeitungs-Strecke bestimmt (berechnet). Wenn der Offset-Wert in der Richtung entgegengesetzt zu der Richtung der Bearbeitungs-Strecke bestimmt wird, das heißt in einer Richtung, in der sich der Servomotor 400 von der Abschluss-Position P1 auf die Start-Position P2 zu bewegt, kann Offset der Amplitude der Oszillation zu der Start-Position P2 hin durchgeführt werden, das heißt in der Richtung entgegengesetzt zu der Richtung der Bearbeitungs-Strecke. Dadurch kann das Schneidwerkzeug so gesteuert werden, dass es sich stets auf die Start-Position P2 zu bewegt, die von der Abschluss-Position P1 entfernt ist. So kann, selbst wenn sich das behindernde Objekt Q, von der Position P1 aus gesehen, an einer der Start-Position P2 gegenüberliegenden Seite befindet, eine Wahrscheinlichkeit von Bewegung des Schneidwerkzeugs auf das behindernde Objekt Q zu aufgrund der Oszillations-Bewegung reduziert werden. 3 zeigt eine derartige Oszillation des Schneidwerkzeugs. Die angewiesene Strecke für das Werkzeug wird, wie in 3 gezeigt, mit der Oszillations-Bewegung vorgegebener Amplitude und einer vorgegebenen Frequenz überlagert. Indem Offset dieser Amplitude auf die Position P2 zu durchgeführt wird, wird das Schneidwerkzeug so gesteuert, dass es sich nicht in einer, von der Position P1 aus gesehen, der Position P2 entgegengesetzten Richtung bewegt. So kann, wenn sich das behindernde Objekt Q nahe an der Position P1 (und an der der Position P2 gegenüberliegenden Seite) befindet, eine Wahrscheinlichkeit der Behinderung durch das behindernde Objekt Q reduziert werden.
  • Dadurch wird eine Wahrscheinlichkeit von Abweichungen des Schneidwerkzeugs von der Bearbeitungs-Strecke nach außen aufgrund der Oszillations-Bewegung reduziert. So kann, selbst wenn sich ein behinderndes Objekt Q in der Nähe der Bearbeitungs-Strecke befindet, Wahrscheinlichkeit von Behinderung durch das behindernde Objekt Q dennoch reduziert werden (siehe 3). Die Einheit 106 zum Berechnen eines Offset-Wertes entspricht einem bevorzugten Beispiel einer Einheit zum Berechnen eines Offset-Wertes gemäß den Patentansprüchen. Der oben beschriebene Vorgang zum Bestimmen (Berechnen) eines Offset-Wertes, der durch die Einheit 106 zum Berechnen eines Offset-Wertes durchgeführt wird, entspricht einem Schritt zum Berechnen eines Offset-Wertes als Schritt S5 in 6.
  • Auf Basis des durch die Einheit 106 zum Berechnen eines Offset-Wertes berechneten Offset-Wertes korrigiert die Einheit 108 zum Korrigieren des Oszillations-Befehls den durch die Einheit 102 zum Berechnen eines Oszillations-Befehls berechneten Oszillations-Befehl. Das heißt, die Einheit 108 zum Korrigieren des Oszillations-Befehls addiert, wie oben unter Bezugnahme auf 3 beschrieben, den durch die Einheit 106 zum Berechnen eines Offset-Wertes berechneten Offset-Wert zu der Amplitude in dem Oszillations-Befehl. Die Einheit 108 zum Korrigieren des Oszillations-Befehls führt den so korrigierten Oszillations-Befehl dem Addierer 110 zu. Dieser Vorgang wird ebenfalls durch Ausführung eines Programms, das diese Funktion der Einheit 108 zum Korrigieren des Oszillations-Befehls beschreibt, durch die CPU der Servo-Steuerungseinrichtung 100 realisiert. Das heißt, die Einheit 108 zum Korrigieren des Oszillations-Befehls wird durch das Programm, das den Vorgang zum Korrigieren eines Oszillations-Befehls beschreibt, und die CPU der Servo-Steuerungseinrichtung 100 zur Ausführung dieses Programms realisiert. Dieses Programm ist in einer bestimmten Speichervorrichtung in der Servo-Steuerungseinrichtung 100 gespeichert. Als Alternative dazu kann es in einer externen Speichervorrichtung gespeichert sein. Dieses Programm entspricht ebenfalls einem bevorzugten Beispiel eines Computerprogramms gemäß den Patentansprüchen.
  • Die Einheit 108 zum Korrigieren des Oszillations-Befehls verwendet, wie oben beschrieben, den durch die Einheit 106 zum Berechnen eines Offset-Wertes berechneten Offset-Wert. Die Einheit 108 zum Korrigieren des Oszillations-Befehls kann einen mit einem anderen Verfahren ermittelten Offset-Wert verwenden. Beispielsweise korrigiert die Einheit 108 zum Korrigieren des Oszillations-Befehls den Oszillations-Befehl vorzugsweise unter Verwendung eines von der Steuerungseinrichtung 200 höherer Ordnung bereitgestellten Offset-Wertes. Der in der vorliegenden Ausführungsform erwähnte Offset-Wert wird in Reaktion darauf bestimmt, ob sich der Servomotor 400 in der Betriebs-Startperiode S, in der Betriebs-Abschlussperiode T oder in einer anderen Periode als der Betriebs-Startperiode S und der Betriebs-Abschlussperiode T befindet. Diese Feststellung hinsichtlich einer Periode wird vorzugsweise durch die Einheit 106 zum Berechnen eines Offset-Wertes auf Basis einer Beschleunigung getroffen. Dabei ist die Steuerungseinrichtung 200, die den als ein Ausgangspunkt dienenden Positions-Befehl ausgegeben hat, inhärent in der Lage, diese Feststellung zu treffen. So wird diese Feststellung vorzugsweise auch durch die Steuerungseinrichtung 200 höherer Ordnung getroffen und gibt die Steuerungseinrichtung 200 höherer Ordnung einen Offset-Wert vorzugsweise auf Basis der Feststellung aus. Wenn die Steuerungseinrichtung 200 höherer Ordnung einen Offset-Wert ausgibt, kann die Einheit 108 zum Korrigieren des Oszillations-Befehls einen Oszillations-Befehl korrigieren, indem sie den von der Steuerungseinrichtung 200 höherer Ordnung ausgegebenen Offset-Wert zu dem Oszillations-Befehl (Amplitude des Oszillations-Befehls) addiert. Die Servo-Steuerungseinrichtung 100 kann den Offset-Wert über einen Ausgang einer Einheit 124 zum Ermitteln eines Offset-Wertes von der Steuerungseinrichtung 200 höherer Ordnung beziehen. Die Einheit 124 zum Ermitteln eines Offset-Wertes führt den ermittelten Offset-Wert der Einheit 108 zum Korrigieren des Oszillations-Befehls zu. Die Einheit 108 zum Korrigieren des Oszillations-Befehls korrigiert den Oszillations-Befehl unter Verwendung des so von der Steuerungseinrichtung 200 höherer Ordnung bezogenen Offset-Wertes und führt dem Addierer 110 den korrigierten Oszillations-Befehl zu.
  • Die Einheit 108 zum Korrigieren des Oszillations-Befehls entspricht einem bevorzugten Beispiel einer Offset-Einheit gemäß den Patentansprüchen. Die oben beschriebene Funktion der Einheit 108 zum Korrigieren des Oszillations-Befehls entspricht einem Offset-Schritt als Schritt S6 in 6.
  • Beziehung zwischen Geschwindigkeit von Servomotor 400, Beschleunigung und Offset
  • Gemäß der vorliegenden Ausführungsform wird ein Offset-Wert jeweils in der Betriebs-Startperiode S und der Betriebs-Abschlussperiode T des Servomotors 400 berechnet. In einer anderen Periode als der Betriebs-Startperiode S und der Betriebs-Abschlussperiode T wird kein Offset-Wert berechnet. Das heißt, in einer anderen Periode als der Betriebs-Startperiode S und der Betriebs-Abschlussperiode T wird festgestellt, dass ein Offset-Wert „null“ ist. 4 ist ein Diagramm, das eine beispielhafte Beziehung zwischen jeder dieser Perioden, einer Geschwindigkeit, einer Beschleunigung und einem Offset-Wert darstellt. In einem Diagramm (a) in 4 stellt eine horizontale Achse die Zeit dar und stellt eine vertikale Achse eine Geschwindigkeit des Servomotors 400 dar. In einem Diagramm (b) in 4 stellt eine horizontale Achse die Zeit dar und stellt eine vertikale Achse eine Beschleunigung des Servomotors 400 dar. In einem Diagramm (c) in 4 stellt eine horizontale Achse die Zeit dar und stellt eine vertikale Achse einen Offset-Wert dar. In der Betriebs-Startperiode S wird, wie mit den Diagrammen in 4 dargestellt, der Servomotor 400 mit einer konstanten Beschleunigung (siehe das Diagramm (b) in 4) beschleunigt und arbeitet mit einer zunehmenden Geschwindigkeit (siehe das Diagramm (a) in 4). Diese Periode, in der die positive Beschleunigung erzeugt wird, wird als die Betriebs-Startperiode S bestimmt, und anschließend wird ein Offset berechnet (siehe das Diagramm (c) in 4). Dieser berechnete Offset-Wert in der Betriebs-Startperiode S ist ein positiver Wert, der für einen Offset in einer Vorwärtsrichtung relativ zu einer Bearbeitungs-Richtung steht. So wird dieser spezielle Offset-Wert als ein Vorwärts-Offset (siehe das Diagramm (c) in 4) bezeichnet.
  • In der Betriebs-Startperiode S wird, wie oben beschrieben, ein Offset in der Vorwärtsrichtung relativ zu der Bearbeitungs-Richtung durchgeführt. So kann, selbst beim Auftreten von Oszillation eine Wahrscheinlichkeit von Abweichung des Schneidwerkzeugs von der Bearbeitungs-Strecke (Abweichung über die Position P2 in 3 hinaus) dennoch reduziert werden. Dadurch kann, selbst wenn sich das bestimmte behindernde Objekt Q in der Nähe der Bearbeitungs-Strecke befindet, eine Wahrscheinlichkeit von Behinderung durch das behindernde Objekt Q dennoch reduziert werden. In der Betriebs-Abschlussperiode T wird, wie mit den Diagrammen in 4 gezeigt, der Servomotor 400 mit einer konstanten negativen Beschleunigung abgebremst (siehe das Diagramm (b) in 4), so dass er mit einer abnehmenden Geschwindigkeit arbeitet (siehe das Diagramm (a) in 4). Diese Periode, in der die negative Beschleunigung erzeugt wird, wird als die Betriebs-Abschlussperiode T bestimmt, und dann wird ein Offset berechnet (siehe das Diagramm (c) in 4). Dieser berechnete Offset-Wert in der Betriebs-Abschlussperiode T ist ein negativer Wert, der einen Offset in einer Rückwärtsrichtung relativ zu der Bearbeitungs-Richtung anzeigt. Dieser spezielle Offset-Wert wird so als ein Rückwärts-Offset bezeichnet (siehe das Diagramm (c) in 4).
  • In der Betriebs-Abschlussperiode T wird, wie oben beschrieben, ein Offset in der Rückwärtsrichtung relativ zu der Bearbeitungs-Richtung durchgeführt. So kann, selbst beim Auftreten von Oszillation eine Wahrscheinlichkeit von Abweichung des Schneidwerkzeugs von der Bearbeitungs-Strecke (Abweichung über die Position P1 in 3 hinaus) dennoch reduziert werden. Dadurch kann, selbst wenn sich das bestimmte behindernde Objekt Q in der Nähe der Bearbeitungs-Strecke befindet, eine Wahrscheinlichkeit von Behinderung durch das behindernde Objekt Q dennoch reduziert werden. In einer „anderen Periode als der Betriebs-Startperiode S und der Betriebs-Abschlussperiode T“ wird festgestellt, dass ein Offset-Wert „null“ ist (kein Offset durchgeführt wird). Die vorliegende Ausführungsform ist, wie oben beschrieben, dadurch gekennzeichnet, dass die Amplitude eines Oszillations-Befehls Offset unterzogen wird. Es ist beispielsweise möglich, dass die Offset-Verarbeitung nur in der Betriebs-Startperiode S ausgeführt wird. Umgekehrt ist es möglich, dass diese Verarbeitung nur in der Betriebs-Abschlussperiode T ausgeführt wird. Die Offset-Verarbeitung kann, wie oben unter Bezugnahme auf 3, 4 usw. beschrieben, sowohl in der Betriebs-Startperiode S als auch der Betriebs-Abschlussperiode T ausgeführt werden.
  • Beziehung zwischen behinderndem Objekt Q und Werkstück 10
  • Es wird nicht zugelassen, dass sich das behindernde Objekt Q auf einer angewiesenen Strecke (Bearbeitungs-Strecke) relativ zu dem Werkstück 10 (20) als einem zu bearbeitenden Gegenstand befindet. In einigen Fällen befindet sich jedoch auch das behindernde Objekt Q in der Nähe der angewiesenen Strecke. Das behindernde Objekt Q kann von jedem beliebigen Typ sein. Wenn ein zu bearbeitender Gegenstand ein Schraubengewinde-Teil einer Schraube ist, kann beispielsweise ein Teil dieser Schraube, wie z.B. ein Kopf, das behindernde Objekt Q sein. Als weiteres Beispiel kann ein Teilabschnitt einer Spannvorrichtung, die das Werkstück 10 (20) zylindrischer Form trägt, das behindernde Objekt Q sein.
  • 5A und 5B sind der Erläuterung dienende Ansichten, die jeweils eine beispielhafte Position des behindernden Objektes Q und des Werkstücks 10 (20) relativ zueinander zeigen.
  • 5A ist eine Schnittansicht des Werkstücks 10 (20) in einem Zustand, in dem es in der Betriebs-Startperiode S bearbeitet wird, nachdem der Bearbeitungsvorgang an dem Werkstück 10 (20) begonnen hat. Eine X-Achse und eine Z-Achse in 5A liegen in einem Koordinatensystem, das demjenigen in 1A gleicht. Die Bearbeitungs-Richtung B ist in der Richtung der Z-Achse definiert. 5A zeigt einen Umriss E des Querschnitts des Werkstücks. Ein Schneidwerkzeug bewegt sich an dem Werkstück 10 (20) auf einer angewiesenen Strecke F. Dabei wird ein an das Schneidwerkzeug gerichteter Befehl mit einem Oszillations-Befehl überlagert, so dass eine Werkzeug-Strecke H (angewiesene Strecke + Oszillations-Befehl), wie in 5A gezeigt, eine gekrümmte Strecke wird. Bei einem derartigen Bearbeitungsvorgang bewirkt, wenn das behindernde Objekt Q, wie beispielsweise eine Spannvorrichtung, an einem Endabschnitt des Werkstücks 10 (20) angebracht ist, die Oszillations-Bewegung des Schneidwerkzeugs, dass das Schneidwerkzeug der Werkzeug-Strecke H folgt, die gegenüber der angewiesenen Strecke F um ein Maß versetzt ist, das durch den Oszillations-Befehl vorgegeben wird. Dadurch wird es wahrscheinlich, dass es zu Überlagerung I durch das behindernde Objekt Q kommt (siehe 5A). Gemäß der vorliegenden Ausführungsform wird eine Wahrscheinlichkeit der Überlagerung I reduziert, indem ein Offset zu dem Oszillations-Befehl (Amplitude des Oszillations-Befehls) addiert wird.
  • Desgleichen ist 5B eine Schnittansicht des Werkstücks 10 (20) in einem Zustand, in dem es in der Betriebs-Abschlussperiode T bearbeitet wird, wenn der Bearbeitungsvorgang an dem Werkstück 10 (20) abgeschlossen wird. Eine X-Achse und eine Z-Achse in 5B liegen ebenfalls in einem Koordinatensystem, das dem in 1A gleicht.
  • Die Bearbeitungs-Richtung B ist in der Richtung der Z-Achse definiert. 5B zeigt die Kontur E des Querschnitts des Werkstücks. Das Schneidwerkzeug bewegt sich an dem Werkstück 10 (20) entlang der gekrümmten Werkzeug-Strecke H (angewiesene Route + Oszillations-Befehl). Bei diesem Bearbeitungsvorgang wird es, wenn das behindernde Objekt Q, wie beispielsweise eine Klemmbacke zum Festklemmen des Werkstücks 10 (20), an einem Endabschnitt des Werkstücks 10 (20) angebracht ist, durch die Oszillations-Bewegung des Schneidwerkzeugs wahrscheinlich, dass es zu der Überlagerung I zwischen dem Schneidwerkzeug und dem behindernden Objekt Q kommt (siehe 5B). Gemäß der vorliegenden Ausführungsform wird eine Wahrscheinlichkeit der Überlagerung I reduziert, wenn ein Offset zu dem Oszillations-Befehl (Amplitude des Oszillations-Befehls) addiert wird. Dadurch wird es weniger wahrscheinlich, dass sich das Schneidwerkzeug auf das behindernde Objekt Q zu bewegt.
  • Der auf die oben beschriebene Weise korrigierte Oszillations-Befehl wird durch den Addierer 110 zu dem Positions-Befehl addiert und dann der Einheit 116 zum Steuern von Position, Geschwindigkeit und Strom zugeführt. Der Addierer 110 addiert den von der Steuerungseinrichtung 200 höherer Ordnung ausgegebenen Positions-Befehl, den korrigierten Oszillations-Befehl und den Positions-Rückkopplungswert und führt der Einheit 116 zum Steuern von Position, Geschwindigkeit und Strom einen resultierenden Wert zu. In 2 ist der Oszillations-Befehl als korrigierter Eingang in den Addierer 110 mit einem Minus-Zeichen „-“ dargestellt. Der Grund dafür besteht darin, dass gemäß der vorliegenden Ausführungsform ein Oszillations-Befehl Polarität in einer einem Positions-Befehl entgegengesetzten Richtung hat. Der korrigierte Oszillations-Befehl kann je nach Polarität mit „-“ oder „+“ gekennzeichnet werden. Der Positions-Rückkopplungswert stellt eine Rückmeldung einer tatsächlichen Position des Servomotors 400 dar. Durch Ausführen von Rückkopplungsregelung mittels Rückführen der Position des Servomotors 400 soll Steuerung des Servomotors 400 an eine genauere Position erreicht werden.
  • Auf Basis des Positions-Befehls, der den addierten Oszillations-Befehl nach Korrektur enthält, bestimmt die Einheit 116 zum Steuern von Position, Geschwindigkeit und Strom ein Antriebs-Signal, das zum Antreiben des Servomotors 400 eingesetzt wird, und führt das Antriebs-Signal einem externen Verstärker 300 zu (gibt es an ihn aus). So entsprechen die Einheit 116 zum Steuern von Position, Geschwindigkeit und Strom und der Addierer 110 bevorzugten Beispielen einer Antriebs-Einheit gemäß den Patentansprüchen. Die Ausgabe des Antriebs-Signals durch die Einheit 116 zum Steuern von Position, Geschwindigkeit und Strom und der Addierer 110 entsprechen einem Antriebs-Schritt als Schritt S7 in dem Flussdiagramm in 6.
  • Der Verstärker 300 verstärkt das erwähnte Antriebs-Signal, um dem Servomotor 400 ausreichend Energie zum Antreiben des Servomotors 400 zuzuführen. Der Servomotor 400 wird unter Verwendung des (verstärkten) Antriebs-Signals angetrieben. 2 zeigt einen Verstärker 300 und einen Servomotor 400. Als Alternative dazu können mehrere Verstärker 300 und mehrere Servomotoren 400 vorhanden sein. Bei Mehrachsen-Steuerung (bei einer Werkzeugmaschine, die mehrere Steuerungs-Achsen enthält) können die Anzahl der Verstärker 300 und die der Servomotoren 400 so bestimmt werden, dass sie der Anzahl der Steuerungs-Achsen entsprechen.
  • Der Detektor 500 befindet sich an einer Antriebswelle des Servomotors 400. Indem er die Position des Servomotors 400 erfasst, kann der Detektor 500 im Wesentlichen eingesetzt werden, um die Position des Schneidwerkzeugs und die des Werkstücks zu erfassen. Der Detektor 500 kann beispielsweise als ein Drehgeber oder ein Lineargeber konfiguriert sein. Der Detektor 500 gibt einen Positions-Rückkopplungswert an die Einheit 122 zum Ermitteln einer Position aus. Die Einheit 122 zum Ermitteln einer Position ist eine Schnittstelle, die die Position des Servomotors 400 (die Position des Werkzeugs oder die des Werkstücks) als den Positions-Rückkopplungswert ermittelt. Der durch die Einheit 122 zum Ermitteln einer Position ermittelte Positions-Rückkopplungswert wird zu dem Addierer 110 addiert. Dadurch wird Implementierung sogenannter Rückkopplungsregelung realisiert, so dass die Position des Servomotors 401 und eine durch den Positions-Befehl bestimmte Position genauer übereinstimmen können.
  • In dem Flussdiagramm in 6 wird nach dem Antriebs-Schritt als Schritt S7 ein Positions-Befehl, der kontinuierlich von der Steuerungseinrichtung 200 höherer Ordnung ausgegeben wird, bezogen (der Schritt zum Beziehen eines Positions-Befehls als Schritt S1). Anschließend werden die nachfolgenden Schritte von Schritt S1 an wiederholt durchlaufen. Dabei werden die Schritte in dem Flussdiagramm in 6 tatsächlich kontinuierlich an einem ausgegebenen Positions-Befehl ausgeführt. So kann jeder der Schritte in 6 parallel in Form von Pipeline-Verarbeitung ausgeführt werden. Die Servo-Steuerungseinrichtung 100 gemäß der vorliegenden Ausführungsform veranlasst einen Servomotor für eine Werkzeugmaschine, die mehrere Steuerungs-Achsen enthält, wie oben beschrieben, Oszillations-Bewegung durchzuführen. Das heißt, gemäß der vorliegenden Ausführungsform wird in einer Anfangs-Periode des Bearbeitungsvorgangs (Betriebs-Startperiode S) und einer AbschlussPeriode des Bearbeitungsvorgangs (Betriebs-Abschlussperiode T) ein Offset zu einer Amplitude eines Oszillations-Befehls addiert. Durch diesen Vorgang wird es weniger wahrscheinlich, dass das behindernde Objekt Q, das sich in der Nähe einer angewiesenen Strecke (Bearbeitungs-Strecke) befindet, beispielsweise ein Schneidwerkzeug behindert.
  • So müssen gemäß der vorliegenden Ausführungsform die Anfangsperiode des Bearbeitungsvorgangs (Betriebs-Startperiode S) und die Abschlussperiode des Bearbeitungsvorgangs (Betriebs-Abschlussperiode T) effizient bestimmt werden. Dazu wird gemäß der vorliegenden Ausführungsform eine Beschleunigung des Servomotors 400 erfasst, und wird auf Basis der erfassten Beschleunigung durchgeführter Betrieb als Betrieb in der Betriebs-Startperiode S oder Betrieb in der Betrieb-Abschlussperiode T bestimmt. Dadurch kann eine Bestimmung hinsichtlich jeder Periode effizient und korrekt durchgeführt werden. Die Steuerungseinrichtung 200 höherer Ordnung zum Ausgeben eines Positions-Befehls ist inhärent in der Lage, die Betriebs-Startperiode S und die Betriebs-Abschlussperiode T zu erkennen. So kann die Steuerungseinrichtung 200 höherer Ordnung so konfiguriert sein, dass sie einen Offset-Wert auf Basis einer Bestimmung hinsichtlich einer derartigen Periode ausgibt. In diesem Fall kann die Einheit 108 zum Korrigieren des Oszillations-Befehls der Servo-Steuerungseinrichtung 100 gemäß der vorliegenden Ausführungsform einen von der Steuerungseinrichtung 200 höherer Ordnung ausgegebenen Offset-Wert anstelle eines durch die Einheit 106 zum Berechnen eines Offset-Wertes berechneten Offset-Wertes verwenden und den ausgegebenen Offset-Wert zu einem Oszillations-Befehl addieren und damit einen korrigierten Oszillations-Befehl ermitteln. Wenn ein derartiger Vorgang zum Einsatz kommt, kann die in 2 gezeigte Servo-Steuerungseinrichtung so konfiguriert sein, dass sie die Einheit 104 zum Berechnen einer Beschleunigung und die Einheit 106 zum Berechnen eines Offset-Wertes nicht enthält.
  • Festlegen einer ersten Konstante und einer zweiten Konstante Gemäß der vorliegenden Ausführungsform wird die erste Konstante für Multiplikation auf 1,5 festgelegt. Die erste Konstante kann jedoch in einem Bereich von 0,5 bis 10 festgelegt werden. Dabei muss die Oszillations-Amplitude im Allgemeinen 0,5-mal oder mehr größer sein als eine Amplitude, die einen Hub (ein Hub in einer Bearbeitungs-Richtung) (des Werkstücks 10 oder des Schneidwerkzeugs 24) erzeugt, der während einer Drehung der Spindelachse bestimmt wird. Eine Geschwindigkeit der Spindelachse während einer Drehung kann auch unter Verwendung von Änderung des oben beschriebenen Winkels der Spindelachse (einer Winkelgeschwindigkeit) geschätzt werden. Eine Geschwindigkeit der Bewegung kann auch unter Verwendung von Änderung eines Positions-Befehls (eines Geschwindigkeits-Befehls) geschätzt werden. Die für eine Drehung der Spindelachse erforderliche Zeit wird unter Verwendung der geschätzten Winkelgeschwindigkeit bestimmt. So kann ein Hub des Werkstücks 10 (oder des Schneidwerkzeugs) während einer Drehung der Spindelachse bestimmt werden, indem die Zeit einer Drehung mit dem Geschwindigkeits-Befehl multipliziert wird.
  • Die Oszillations-Amplitude kann bestimmt (festgelegt) werden, indem der auf die oben beschriebene Weise bestimmte Hub mit der ersten Konstante modifiziert wird. Die erste Konstante kann so festgelegt werden, dass die Oszillations-Amplitude 0,5-mal oder mehr größer ist als ein Hub in einer Bearbeitungs-Richtung. Eine derartige Bestimmung der ersten Konstante kann von einem Menschen oder durch die Servo-Steuerungseinrichtung 100 oder die Steuerungseinrichtung 200 höherer Ordnung durchgeführt werden. Beispielsweise wird die erste Konstante vorzugsweise in einem Bereich von einem Wert, der größer ist als 1, bis zu einem Wert festgelegt, der kleiner ist als 2, noch besser in einem Bereich um 1,5 herum. Diese Bereiche numerischer Werte entsprechen auch bevorzugten Beispielen der ersten Konstante gemäß den Patentansprüchen. Gemäß der vorliegenden Ausführungsform wird als ein Beispiel die zweite Konstante für Multiplikation ebenfalls auf 1,5 festgelegt. Die zweite Konstante kann jedoch auch in einem Bereich von 0,5 bis 10 festgelegt werden. Das heißt, die zweite Konstante wird vorzugsweise in einem Bereich von einem Wert, der größer ist als 1, bis zu einem Wert festgelegt, der kleiner ist als 2, noch besser in einem Bereich um 1,5 herum. Diese Bereiche numerischer Werte entsprechen auch bevorzugten Beispielen der zweiten Konstante gemäß den Patentansprüchen.
  • Die Steuerungseinrichtung 200 höherer Ordnung kann so konfiguriert sein, dass sie der Servo-Steuerungseinrichtung 100 die erste Konstante und die zweite Konstante vorgibt. In diesem Fall kann die Servo-Steuerungseinrichtung 100 die vorgegebene erste Konstante und die vorgegebene zweite Konstante in einem bestimmten Speicher in der Servo-Steuerungseinrichtung 100 speichern. Ein Benutzer kann die erste Konstante und die zweite Konstante festlegen, indem er die Steuerungseinrichtung 200 höherer Ordnung betätigt. Der Benutzer kann diese Konstanten festlegen, indem er die Servo-Steuerungseinrichtung 100 direkt betätigt.
  • Steuerung von Berechnung des Oszillations-Befehls
  • Die Einheit 102 zum Berechnen eines Oszillations-Befehls kann verschiedene Oszillations-Befehle für verschiedene Zwecke berechnen. Beispielsweise wird ein Oszillations-Befehl zum Zerkleinern von beim Schneiden entstehenden Spänen vorzugsweise so berechnet, dass er bewirkt, dass ein Schneidwerkzeug und ein Werkstück relativ zueinander in einer Bearbeitungs-Richtung oszillieren, in der sich das Schneidwerkzeug bewegt.
  • Die Einheit 102 zum Berechnen eines Oszillations-Befehls ist vorzugsweise so konfiguriert, dass sie Berechnung eines Oszillations-Befehls in Reaktion auf eine von außen gegebene Anweisung beginnt, unterbricht oder beendet. Beispielsweise kann die Einheit 102 zum Berechnen eines Oszillations-Befehls so konfiguriert sein, dass sie Berechnung eines Oszillations-Befehls in Reaktion auf Anweisung von der Steuerungseinrichtung 200 höherer Ordnung als einer externen Vorrichtung beginnt, unterbricht oder beendet.
  • Die Servo-Steuerungseinrichtung 100 muss eine Schnittstellen-Einheit zum Empfangen einer derartigen Anweisung aufweisen, die von der Steuerungseinrichtung 200 höherer Ordnung ausgegeben wird. Vorzugsweise kann des Weiteren eine andere Schnittstelle, wie beispielsweise die Einheit 118 zum Ermitteln einer Drehgeschwindigkeit usw. als diese Schnittstellen-Einheit dienen.
  • Wie die Einheit 102 zum Berechnen eines Oszillations-Befehls ist die Einheit 108 zum Korrigieren des Oszillations-Befehls vorzugsweise so konfiguriert, dass sie Korrektur eines Oszillations-Befehls in Reaktion auf eine von außen gegebene Anweisung beginnt, unterbricht oder beendet. Beispielsweise kann die Einheit 108 zum Korrigieren des Oszillations-Befehls so konfiguriert sein, dass sie den Korrekturvorgang in Reaktion auf Anweisung von der Steuerungseinrichtung 200 höherer Ordnung als einer externen Vorrichtung beginnt, unterbricht oder beendet. Die Einheit 124 zum Ermitteln eines Offset-Wertes, die einen Offset-Wert empfängt, kann als eine Schnittstellen-Einheit zum Empfangen dieser von der Steuerungseinrichtung 200 höherer Ordnung ausgegebenen Anweisung dienen. Als Alternative dazu kann eine andere Schnittstelle eingerichtet werden.
  • Obwohl die Ausführungsform der vorliegenden Erfindung detailliert dargestellt worden ist, stellt die oben stehende Beschreibung der Ausführungsform lediglich bestimmte Beispiele dar, die eingesetzt werden, um die vorliegende Erfindung umzusetzen. Der technische Schutzumfang der vorliegenden Erfindung ist nicht auf die oben beschriebene Ausführungsform beschränkt. Innerhalb eines nicht vom Schutzumfang der Erfindung abweichenden Bereiches sind verschiedene Veränderungen an der vorliegenden Erfindung denkbar, und auch diese Veränderungen werden vom technischen Schutzumfang der vorliegenden Erfindung abgedeckt.
  • Bezugszeichenliste
  • 10, 20
    Werkstück
    12, 22
    Spindelachse
    10, 24
    Schneidwerkzeug
    100
    Servo-Steuerungseinrichtung
    102
    Einheit zum Berechnen eines Oszillations-Befehls
    104
    Einheit zum Berechnen einer Beschleunigung
    106
    Einheit zum Berechnen eines Offset-Wertes
    108
    Einheit zum Korrigieren des Oszillations-Befehls
    116
    Einheit zum Steuern von Position, Geschwindigkeit und Strom
    118
    Einheit zum Ermitteln einer Drehgeschwindigkeit
    120
    Einheit zum Beziehen eines Positions-Befehls
    122
    Einheit zum Ermitteln einer Position
    124
    Einheit zum Ermitteln eines Offset-Wertes
    200
    Steuerungseinrichtung höherer Ordnung
    300
    Verstärker
    400
    Servomotor
    500
    Detektor
    A
    Oszillation
    B
    Bearbeitungs-Richtung
    C
    Bewegung in der Luft
    D
    Schneiden
    E
    Kontur von Werkstück-Querschnitt
    F
    angewiesene Strecke
    H
    Werkzeug-Strecke (angewiesene Strecke + Oszillations-Befehl)
    I
    Überlagerung
    Q
    behinderndes Objekt
    S
    Betriebs-Startperiode
    T
    Betriebs-Abschlussperiode

Claims (12)

  1. Steuerungseinrichtung (100), die eine Werkzeugmaschine steuert, die mehrere Steuerungs-Achsen umfasst und zum Bearbeiten eines Werkstücks (10, 20) als einem zu bearbeitenden Gegenstand durch Schneiden mittels koordinierter Bewegung entlang der Steuerungs-Achsen eingesetzt wird, wobei die Steuerungseinrichtung umfasst: eine Einheit (120) zum Beziehen eines Positions-Befehls, die einen Positions-Befehl bezieht, der an einen Servomotor (400) zum Antreiben eines Schneidwerkzeugs gerichtet ist, oder einen Positions-Befehl bezieht, der an einen Servomotor (400) zum Antreiben des Werkstücks (10, 20) gerichtet ist; eine Einheit (118) zum Ermitteln einer Drehgeschwindigkeit, die eine Drehgeschwindigkeit des rotierenden Schneidwerkzeugs oder die des rotierenden Werkstücks (10, 20) ermittelt; eine Einheit (104) zum Berechnen einer Beschleunigung, die eine Beschleunigung des Servomotors auf Basis des bezogenen Positions-Befehls berechnet; eine Einheit (102) zum Berechnen eines Oszillations-Befehls, die einen Oszillations-Befehl auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit berechnet, wobei der berechnete Oszillations-Befehl das Schneidwerkzeug und das Werkstück (10, 20) veranlasst, relativ zueinander in einer Bearbeitungs-Richtung entlang einer Bearbeitungs-Strecke zu oszillieren, auf der sich das Schneidwerkzeug bewegt; eine Einheit (106) zum Berechnen eines Offset-Wertes, die einen Offset-Wert auf Basis der berechneten Beschleunigung berechnet; eine Offset-Einheit (108), die einen Offset der Amplitude des berechneten Oszillations-Befehls durchführt, indem sie den berechneten Offset-Wert zu der Amplitude addiert; sowie eine Antriebs-Einheit (116, 110), die ein Antriebs-Signal, das zum Antreiben des Servomotors (400) dient, auf Basis des Oszillations-Befehls bestimmt, der die Offset-Amplitude und den bezogenen Positions-Befehl einschließt, und das Antriebs-Signal ausgibt.
  2. Steuerungseinrichtung (100) nach Anspruch 1, wobei die Einheit (102) zum Berechnen eines Oszillations-Befehls den Oszillations-Befehl zum Zerkleinern von Spänen berechnet, die bei der Bearbeitung durch Schneiden entstehen.
  3. Steuerungseinrichtung (100) nach Anspruch 1 oder 2, wobei die Einheit (102) zum Berechnen eines Oszillations-Befehls umfasst: eine Einheit (102) zum Berechnen einer Oszillations-Frequenz, die eine Oszillations-Frequenz auf Basis der ermittelten Drehgeschwindigkeit berechnet; sowie eine Einheit (102) zum Berechnen einer Oszillations-Amplitude, die die Oszillations-Amplitude auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit berechnet.
  4. Steuerungseinrichtung (100) nach Anspruch 3, wobei die Einheit (102) zum Berechnen einer Oszillations-Amplitude die Oszillations-Amplitude berechnet, indem sie einen Hub bei einer Drehung des Schneidwerkzeugs oder des Werkstücks (10, 20) auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit bestimmt und indem sie den bestimmten Hub mit einer ersten Konstante multipliziert.
  5. Steuerungseinrichtung (100) nach Anspruch 3, wobei die Einheit (102) zum Berechnen einer Oszillations-Frequenz die Oszillations-Frequenz berechnet, indem sie die ermittelte Drehgeschwindigkeit mit einer zweiten Konstante multipliziert.
  6. Steuerungseinrichtung (100) nach einem der Ansprüche 1 bis 3, wobei die Einheit (104) zum Berechnen einer Beschleunigung die Beschleunigung auf Basis eines Positions-Rückkopplungswertes über den Servomotor (400) berechnet.
  7. Steuerungseinrichtung (100) nach einem der Ansprüche 1 bis 6, wobei die Offset-Einheit (108) den Offset der Amplitude des berechneten Oszillations-Befehls durchführt, indem sie einen Offset-Wert von einer externen Steuerungseinrichtung (200) höherer Ordnung bezieht, statt den durch die Einheit (106) zum Berechnen eines Offset-Wertes berechneten Offset-Wert zu verwenden, und indem sie den bezogenen Offset-Wert zu der Amplitude addiert.
  8. Steuerungseinrichtung (100) nach einem der Ansprüche 1 bis 6, wobei die Einheit (106) zum Berechnen eines Offset-Wertes einen Offset-Wert in einer Bearbeitungs-Richtung der Bearbeitungs-Strecke, in welche sich das Schneidwerkzeug bewegt, bestimmt, wenn ein auf Basis der Beschleunigung durch den Servomotor (400) durchgeführter Betrieb als Betrieb in einer Betriebs-Startperiode bestimmt wird.
  9. Steuerungseinrichtung (100) nach einem der Ansprüche 1 bis 6, wobei die Einheit (106) zum Berechnen eines Offset-Wertes einen Offset-Wert in einer Bearbeitungs-Richtung entgegengesetzt zu einer Richtung der Bearbeitungs-Strecke, in welche sich das Schneidwerkzeug bewegt, bestimmt, wenn ein auf Basis der Beschleunigung durch den Servomotor (400) durchgeführter Betrieb als Betrieb in einer Betriebs-Abschlussperiode bestimmt wird.
  10. Steuerungseinrichtung (100) nach einem der Ansprüche 1 bis 6, wobei die Einheit (106) zum Berechnen eines Offset-Wertes einen Offset-Wert in einer Richtung der Bearbeitungs-Strecke oder in einer Richtung entgegengesetzt zu einer Richtung der Bearbeitungs-Strecke bestimmt, wenn ein auf Basis der Beschleunigung durch den Servomotor (400) durchgeführter Betrieb als Betrieb in einer Betriebs-Startperiode oder Betrieb in einer Betriebs-Abschlussperiode bestimmt wird, und die Einheit (106) zum Berechnen eines Offset-Wertes bestimmt, dass ein Offset-Wert null ist, wenn der durchgeführte Betrieb als Betrieb in einer anderen Periode als der Betriebs-Startperiode oder der Betriebs-Abschluss-periode bestimmt wird.
  11. Verfahren zum Steuern einer Werkzeugmaschine, die mehrere Steuerungs-Achsen umfasst und zum Bearbeiten eines Werkstücks (10, 20) als einem zu bearbeitenden Gegenstand durch Schneiden mittels koordinierter Bewegung entlang der Steuerungs-Achsen eingesetzt wird, wobei das Verfahren umfasst: einen Schritt zum Beziehen eines Positions-Befehls, mit dem ein Positions-Befehl, der an einen Servomotor (400) zum Antreiben eines Schneidwerkzeugs gerichtet ist, oder ein Positions-Befehl bezogen wird, der an einen Servomotor (400) zum Antreiben des Werkstücks (10, 20) gerichtet ist; einen Schritt zum Ermitteln einer Drehgeschwindigkeit, mit dem eine Drehgeschwindigkeit des rotierenden Schneidwerkzeugs oder des rotierenden Werkstücks (10, 20) ermittelt wird; einen Schritt zum Berechnen einer Beschleunigung, mit dem eine Beschleunigung des Servomotors (400) auf Basis des bezogenen Positions-Befehls berechnet wird; einen Schritt zum Berechnen eines Oszillations-Befehls, mit dem ein Oszillations-Befehl auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit berechnet wird, wobei der berechnete Oszillations-Befehl das Schneidwerkzeug und das Werkstück (10, 20) veranlasst, relativ zueinander in einer Bearbeitungs-Richtung entlang einer Bearbeitungs-Strecke zu oszillieren, auf der sich das Schneidwerkzeug bewegt; einen Schritt zum Berechnen eines Offset-Wertes, mit dem ein Offset-Wert auf Basis der berechneten Beschleunigung berechnet wird; einen Offset-Schritt, mit dem ein Offset der Amplitude des berechneten Oszillations-Befehls durchgeführt wird, indem der berechnete Offset-Wert zu der Amplitude addiert wird; sowie einen Antriebs-Schritt, mit dem ein Antriebs-Signal, das zum Antreiben des Servomotors (400) dient, auf Basis des Oszillations-Befehls bestimmt wird, der die Offset-Amplitude und den bezogenen Positions-Befehl einschließt, und das Antriebs-Signal ausgegeben wird.
  12. Computerprogramm, das einen Computer veranlasst, als eine Steuerungseinrichtung zu arbeiten, die eine Werkzeugmaschine steuert, die mehrere Steuerungs-Achsen umfasst und zum Bearbeiten eines Werkstücks (10, 20) als einem zu bearbeitenden Gegenstand durch Schneiden mittels koordinierter Bewegung entlang der Steuerungs-Achsen eingesetzt wird, wobei das Computerprogramm den Computer veranlasst, die folgenden Vorgänge auszuführen: einen Vorgang zum Beziehen eines Positions-Befehls, mit dem ein Positions-Befehl, der an einen Servomotor (400) zum Antreiben eines Schneidwerkzeugs gerichtet ist, oder ein Positions-Befehl bezogen wird, der an einen Servomotor (400) zum Antreiben des Werkstücks (10, 20) gerichtet ist; einen Vorgang zum Ermitteln einer Drehgeschwindigkeit, mit dem eine Drehgeschwindigkeit des rotierenden Schneidwerkzeugs oder des rotierenden Werkstücks (10, 20) ermittelt wird; einen Vorgang zum Berechnen einer Beschleunigung, mit dem eine Beschleunigung des Servomotors (400) auf Basis des bezogenen Positions-Befehls berechnet wird; einen Vorgang zum Berechnen eines Oszillations-Befehls, mit dem ein Oszillations-Befehl auf Basis des bezogenen Positions-Befehls und der ermittelten Drehgeschwindigkeit berechnet wird, wobei der berechnete Oszillations-Befehl das Schneidwerkzeug und das Werkstück (10, 20) veranlasst, relativ zueinander in einer Bearbeitungs-Richtung entlang einer Bearbeitungs-Strecke zu oszillieren, auf der sich das Schneidwerkzeug bewegt; einen Vorgang zum Berechnen eines Offset-Wertes, mit dem ein Offset-Wert auf Basis der berechneten Beschleunigung berechnet wird; einen Offset-Vorgang, mit dem Offset der Amplitude des berechneten Oszillations-Befehls durchgeführt wird, indem der berechnete Offset-Wert zu der Amplitude addiert wird; sowie einen Antriebs-Vorgang, mit dem ein Antriebs-Signal, das zum Antreiben des Servomotors (400) dient, auf Basis des Oszillations-Befehls bestimmt wird, der die Offset-Amplitude und den bezogenen Positions-Befehl einschließt, und das Antriebs-Signal ausgegeben wird.
DE102017215787.9A 2016-09-07 2017-09-07 Steuerungseinrichtung, Steuerungsverfahren und Computerprogramm für Werkzeugmaschine Active DE102017215787B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-174972 2016-09-07
JP2016174972A JP6487397B2 (ja) 2016-09-07 2016-09-07 工作機械の制御装置、制御方法及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
DE102017215787A1 DE102017215787A1 (de) 2018-03-08
DE102017215787B4 true DE102017215787B4 (de) 2022-06-23

Family

ID=61198290

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017215787.9A Active DE102017215787B4 (de) 2016-09-07 2017-09-07 Steuerungseinrichtung, Steuerungsverfahren und Computerprogramm für Werkzeugmaschine

Country Status (4)

Country Link
US (1) US10409255B2 (de)
JP (1) JP6487397B2 (de)
CN (1) CN107797515B (de)
DE (1) DE102017215787B4 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6412197B1 (ja) * 2017-04-04 2018-10-24 ファナック株式会社 揺動切削を行う工作機械の制御装置
JP6503000B2 (ja) * 2017-04-18 2019-04-17 ファナック株式会社 揺動切削を行う工作機械の制御装置
JP6503001B2 (ja) 2017-04-18 2019-04-17 ファナック株式会社 揺動切削を行う工作機械の制御装置
JP6503002B2 (ja) 2017-04-20 2019-04-17 ファナック株式会社 揺動切削を行う工作機械の制御装置
JP6636998B2 (ja) * 2017-08-22 2020-01-29 ファナック株式会社 数値制御装置
JP6864025B2 (ja) * 2018-04-06 2021-04-21 ファナック株式会社 工作機械の制御装置
JP6784717B2 (ja) * 2018-04-09 2020-11-11 ファナック株式会社 工作機械の制御装置
JP6802212B2 (ja) * 2018-04-24 2020-12-16 ファナック株式会社 表示装置
JP6763917B2 (ja) * 2018-07-10 2020-09-30 ファナック株式会社 工作機械の制御装置
JP6885910B2 (ja) * 2018-10-15 2021-06-16 ファナック株式会社 数値制御装置
US11137737B2 (en) * 2018-11-29 2021-10-05 Fanuc Corporation Numerical control device, program recording medium and control method
CN113168155B (zh) * 2018-11-29 2022-05-13 三菱电机株式会社 数控装置及数控方法
JP7276453B2 (ja) * 2019-07-09 2023-05-18 株式会社安川電機 電力変換装置、圧送装置、電力変換方法、プログラム、診断装置及び診断方法
TWI739469B (zh) * 2020-06-09 2021-09-11 新代科技股份有限公司 螺紋加工斷屑控制系統及其控制方法
TWI739468B (zh) * 2020-06-09 2021-09-11 新代科技股份有限公司 斷屑控制系統及其控制方法
CN113485250B (zh) * 2021-07-15 2022-09-20 深圳市汇川技术股份有限公司 轨迹规划方法、设备及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5033929B2 (de) 1973-10-19 1975-11-05
EP0442540A2 (de) 1985-05-07 1991-08-21 The Cross Company Direkt gesteuerte Drehmaschine
US5342152A (en) 1990-10-11 1994-08-30 Medeksza Ludwik A Method and apparatus for forming intermittent chips while machining holes with a rotating tool
JP5033929B1 (ja) 2011-11-10 2012-09-26 ハリキ精工株式会社 工作機械
DE102011077568A1 (de) 2011-06-15 2012-12-20 Sauer Ultrasonic Gmbh Werkzeugmaschine, Werkstückbearbeitungsverfahren
JP5599523B1 (ja) 2013-02-12 2014-10-01 三菱電機株式会社 数値制御装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT331439B (de) 1973-07-24 1976-08-25 Voest Ag Strangfuhrung fur eine stranggiessanlage
JPS5599523A (en) 1979-01-23 1980-07-29 Matsushita Electric Ind Co Ltd Combustion safety device
JP2003117765A (ja) * 2001-10-03 2003-04-23 Toshiba Mach Co Ltd 数値制御工作機械の運転制御方法および数値制御工作機械
JP4299865B2 (ja) * 2007-01-04 2009-07-22 ファナック株式会社 工作機械の制御装置及び制御方法
JP4620159B2 (ja) * 2009-05-21 2011-01-26 ファナック株式会社 周期的な往復動作を制御するサーボモータ制御装置
KR101721225B1 (ko) * 2010-09-28 2017-03-29 삼성전자주식회사 디바이스 제어 방법 및 장치와 컴퓨터로 읽을 수 있는 저장 매체
JP5139592B1 (ja) * 2012-09-12 2013-02-06 ハリキ精工株式会社 工作機械
EP2957972B1 (de) * 2014-04-23 2018-06-13 Mitsubishi Electric Corporation Vorrichtung für numerische steuerung
JP5902753B2 (ja) * 2014-05-28 2016-04-13 ファナック株式会社 切上げ・切込み運動または円運動挿入機能を有する数値制御装置
CN104614984B (zh) * 2014-11-20 2017-04-19 南京理工大学 一种电机位置伺服系统的高精度控制方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5033929B2 (de) 1973-10-19 1975-11-05
EP0442540A2 (de) 1985-05-07 1991-08-21 The Cross Company Direkt gesteuerte Drehmaschine
US5342152A (en) 1990-10-11 1994-08-30 Medeksza Ludwik A Method and apparatus for forming intermittent chips while machining holes with a rotating tool
DE102011077568A1 (de) 2011-06-15 2012-12-20 Sauer Ultrasonic Gmbh Werkzeugmaschine, Werkstückbearbeitungsverfahren
JP5033929B1 (ja) 2011-11-10 2012-09-26 ハリキ精工株式会社 工作機械
JP5599523B1 (ja) 2013-02-12 2014-10-01 三菱電機株式会社 数値制御装置

Also Published As

Publication number Publication date
CN107797515A (zh) 2018-03-13
CN107797515B (zh) 2020-02-18
US20180067466A1 (en) 2018-03-08
US10409255B2 (en) 2019-09-10
DE102017215787A1 (de) 2018-03-08
JP2018041275A (ja) 2018-03-15
JP6487397B2 (ja) 2019-03-20

Similar Documents

Publication Publication Date Title
DE102017215787B4 (de) Steuerungseinrichtung, Steuerungsverfahren und Computerprogramm für Werkzeugmaschine
DE102017208060B4 (de) Servosteuerung, steuerverfahren, und computerprogramm für eine werkzeugmaschine zum oszillationsschneiden
DE102017205214A1 (de) Servo-steuereinheit, steuerverfahren und computerprogramm für ein maschinenwerkzeug das für oszillierendes schneiden verwendet wird
DE102018003786B4 (de) Anzeigevorrichtung und Bearbeitungssystem zum Oszillationsschneiden
DE102011018536B4 (de) Numerische Steuerung mit einer Oszillationsvorgangsfunktion, die im Stande ist, die Geschwindigkeit in einem optionalen Abschnitt zu ändern
DE102018002566B4 (de) Steuervorrichtung für eine Oszillationschneiden durchführende Werkzeugmaschine
DE102005015810B4 (de) Bearbeitungszeit-Berechnungsvorrichtung
EP2216698A2 (de) Verfahren und Vorrichtung zum Erzeugen von transformierten Steuerdaten zum Steuern eines Werkzeugs an einer Werkzeugmaschine
DE102018006614B4 (de) Numerische Steuerung
DE102016104515B4 (de) Numerische Steuervorrichtung und Steuerverfahren
DE112013006799T5 (de) Numerische Steuerungsvorrichtung
DE102019204947A1 (de) Anzeigegerät
DE102017005976A1 (de) Numerische Steuerung
DE102018003051B4 (de) Steuervorrichtung für eine Werkzeugmaschine, die Vibrationsschneiden durchführt
DE112019007578T5 (de) Numerische Steuerung, numerisches Steuerverfahren und Maschinenlernvorrichtung
DE112014007112T5 (de) Numerisch gesteuerte Vorrichtung
DE112017007995T5 (de) Numerisches steuersystem und motorantriebssteuerung
DE102019205035B4 (de) Steuerung für Werkzeugmaschine
DE112018008087B4 (de) Numerisches Steuerungsgerät und numerisches Steuerungsverfahren
DE102017000473A1 (de) Vorrichtung und Verfahren zum Steuern einer Werkzeugmaschine für das Steuern des synchronisierten Betriebs von Spindelachse und Vorschubachse
DE102009038155B4 (de) Servomotorsteuergerät
DE102015008246B4 (de) Numerische Steuerung mit Werkzeugspitzenpunktsteuerungsfunktion
DE102018221127A1 (de) Robotersystem
DE102018002308A1 (de) Numerische Steuerung
EP3470943A2 (de) Verfahren zur berechnung von führungsgrössen einer präzisionsmaschine, ultrapräzisions- oder präzisionsmaschine und bauteil

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: GRUENECKER PATENT- UND RECHTSANWAELTE PARTG MB, DE

R083 Amendment of/additions to inventor(s)
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final