-
Technischer Bereich
-
Die vorliegende Erfindung betrifft eine Werkzeugmaschinensteuervorrichtung.
-
Stand der Technik
-
Typischerweise wurde das Oszillationsschneiden in einigen Fällen als Maßnahme gegen Späne eingesetzt, die z. B. beim Schneiden in einem Bohr- oder Drehverfahren anfallen. Um das Oszillationsschneiden zu implementieren, ist beispielsweise eine Technik zum Überlagern eines Oszillationsbefehls auf einen Bewegungsbefehl bekannt (siehe z. B. Patentdokument 1). Nach dieser Technik kann das Oszillationsschneiden gemäß einem Überlagerungsbefehl durchgeführt werden, der durch die Überlagerung des Oszillationsbefehls auf den Bewegungsbefehl erzeugt wird, während die Späne erzeugt werden.
-
Patentdokument 1: Japanische ungeprüfte Patentanmeldung, Veröffentlichungs-Nr. 2019-28597
-
Offenbarung der Erfindung
-
Die durch die Erfindung zu lösenden Probleme
-
In Abhängigkeit von einer Oszillationsphase am Start/Ende der Überlagerung des Oszillationsbefehls auf den Bewegungsbefehl wird durch die Überlagerung des Oszillationsbefehls ein diskontinuierlicher Überlagerungsbefehl erzeugt. Aufgrund eines solchen diskontinuierlichen Überlagerungsbefehls ändert sich die Beschleunigung schnell, und in einigen Fällen wird an einer Werkzeugmaschine eine Erschütterung verursacht. Wenn die Erschütterung an der Werkzeugmaschine verursacht wird, könnte eine solche Erschütterung eine nachteilige Wirkung auf die Bearbeitungsgenauigkeit haben.
-
Aus diesen Gründen bestand ein Bedarf an einer Werkzeugmaschinensteuervorrichtung, die in der Lage ist, die an der Werkzeugmaschine beim Oszillationsschneiden verursachte Erschütterung zu reduzieren.
-
Mittel zur Lösung des Problems
-
Ein Aspekt der vorliegenden Offenbarung ist eine Steuervorrichtung für eine Werkzeugmaschine, die eine Bearbeitung durchführt während sie bewirkt, dass ein Werkzeug und ein Werkstück relativ zueinander oszillieren. Die Werkzeugmaschinensteuervorrichtung umfasst einen Oszillationsbefehlserzeuger, der einen Oszillationsbefehl basierend auf einer Oszillationsbedingung erzeugt, einen Oszillationsstart/ende-Bestimmer, der den Start/das Ende einer Oszillation basierend auf dem Oszillationsbefehl bestimmt, und eine Steuerung, die bewirkt, dass das Werkzeug und das Werkstück basierend auf einem Überlagerungsbefehl, der durch die Überlagerung des Oszillationsbefehls auf einen Bewegungsbefehl gemäß einem Ergebnis des Bestimmens durch den Oszillationsstart/ende-Bestimmer erzeugt wird, relativ zueinander oszillieren. Der Oszillationsstart/ende-Bestimmer bestimmt den Start/das Ende der Oszillation in einem Fall, in dem ein Absolutwert des Oszillationsbefehls einem vorgegebenen Wert entspricht oder kleiner ist.
-
Wirkungen der Erfindung
-
Gemäß einem Aspekt der vorliegenden Offenbarung kann die Werkzeugmaschinensteuervorrichtung bereitgestellt werden, die in der Lage ist, an einer Werkzeugmaschine beim Oszillationsschneiden verursachte Erschütterungen zu reduzieren.
-
Figurenliste
-
- 1 ist ein Diagramm, das die Konfiguration einer Werkzeugmaschinensteuervorrichtung gemäß einer ersten Ausführungsform der vorliegenden Offenbarung zeigt;
- 2 ist eine Grafik, die ein Beispiel eines Bewegungsbefehls zeigt;
- 3 ist eine Grafik, die ein Beispiel eines Oszillationsbefehls zeigt;
- 4 ist eine Grafik, die einen Überlagerungsbefehl in einem Fall zeigt, in dem eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 3 auf den Bewegungsbefehl der 2 von einer Oszillationsphase von 0° und 180° abweicht;
- 5 ist eine Grafik, die einen Überlagerungsbefehl in einem Fall zeigt, in dem eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 3 auf den Bewegungsbefehl der 2 nicht von einer Oszillationsphase von 0° und 180° abweicht;
- 6 ist eine Grafik, die ein weiters Beispiel eines Oszillationsbefehls zeigt;
- 7 ist eine Grafik, die einen Überlagerungsbefehl in einem Fall zeigt, in dem eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 6 auf den Bewegungsbefehl der 2 von einer Oszillationsphase abweicht, bei der der Oszillationsbefehl 0 ist;
- 8 ist eine Grafik, die einen Überlagerungsbefehl in einem Fall zeigt, in dem eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 6 auf den Bewegungsbefehl der 2 nicht von einer Oszillationsphase abweicht, bei der der Oszillationsbefehl 0 ist; und
- 9 ist ein Diagramm, das die Konfiguration einer Werkzeugmaschinensteuervorrichtung gemäß einer zweiten Ausführungsform der vorliegenden Offenbarung zeigt.
-
Bevorzugter Modus zum Ausführen der Erfindung
-
Nachfolgend werden Ausführungsformen der vorliegenden Offenbarung unter Bezugnahme auf die Zeichnungen ausführlich beschrieben. Es ist zu beachten, dass in der Beschreibung einer zweiten Ausführungsform oder später eine Beschreibung von Komponenten und vorteilhaften Wirkungen, die denen einer ersten Ausführungsform gemein sind, weggelassen wird und nur Komponenten und vorteilhafte Wirkungen beschrieben werden, die sich von denen der ersten Ausführungsform unterscheiden. In der vorliegenden Beschreibung bedeutet ein Oszillationsbefehl ein Momentanwert eines Befehls bei einer bestimmten Oszillationsphase, und eine Oszillationsamplitude bedeutet ein Amplitudenwert einer Sinuswelle oder einer Kosinuswelle.
-
[Erste Ausführungsform]
-
Die 1 ist ein Funktionsblockdiagramm einer Werkzeugmaschinensteuervorrichtung 1 gemäß der ersten Ausführungsform der vorliegenden Offenbarung. Wie in der 1 gezeigt, weist die Werkzeugmaschinensteuervorrichtung 1 gemäß der vorliegenden Ausführungsform eine Servosteuervorrichtung 10 auf und steuert den Antrieb eines Motors 30, der eine Zugspindel antreibt.
-
Wie in der 1 gezeigt, weist die Werkzeugmaschinensteuervorrichtung 1 gemäß der vorliegenden Ausführungsform einen ersten Addierer 11, einen Oszillationsbedingungseinsteller 12, einen Oszillationsbefehlserzeuger 13, einen Oszillationsstart/ende-Bestimmer 14, einen zweiten Addierer 15, eine lernende Steuerung 16, einen dritten Addierer 17 und einen Positions-/Geschwindigkeitssteuerung 18.
-
Wie in der 1 gezeigt, wird in der Werkzeugmaschinensteuervorrichtung 1 gemäß der vorliegenden Ausführungsform ein Bewegungsbefehl für den Motor 30 in den ersten Addierer 11 der später beschriebenen Servosteuervorrichtung 10 eingegeben, wobei der Bewegungsbefehl basierend auf einer Bearbeitungsbedingung durch einen nicht gezeigten Bewegungsbefehlserzeuger erzeugt wird.
-
Der erste Addierer 11 berechnet eine Positionsabweichung. Insbesondere berechnet der erste Addierer 11 eine kosinuswellenförmige Differenz zwischen einem Positionsbefehl und einer Positionsrückmeldung darstellenden Positionsabweichung, basierend auf einer Positionserfassung an der Zugspindel durch einen Codierer des Motors 30.
-
Der Oszillationsbedingungseinsteller 12 stellt eine Oszillationsbedingung ein. Insbesondere stellt der Oszillationsbedingungseinsteller 12 die Oszillationsamplitude oder einen Oszillationsamplituden-Multiplikationsfaktor und eine Oszillationsfrequenz oder einen Oszillationsfrequenz-Multiplikationsfaktor ein. Die Oszillationsbedingung umfassend die Oszillationsamplitude oder den Multiplikationsfaktor der Oszillationsamplitude und die Oszillationsfrequenz oder den Multiplikationsfaktors der Oszillationsfrequenz wird in den später beschriebenen Oszillationsbefehlserzeuger 13 eingegeben.
-
Der Oszillationsbefehlserzeuger 13 erzeugt den Oszillationsbefehl basierend auf der Oszillationsbedingung. Der Oszillationsbefehlserzeuger 13 kann den Oszillationsbefehl aus der Bearbeitungsbedingung und der Oszillationsbedingung einschließlich des Oszillationsamplituden-Multiplikationsfaktors und des Oszillationsfrequenz-Multiplikationsfaktors erhalten oder kann den Oszillationsbefehl aus der Oszillationsbedingung einschließlich der Oszillationsamplitude und der Oszillationsfrequenz erhalten. Die Bedingung einschließlich der Multiplikationsfaktoren und die Bedingung einschließlich der Nicht-Multiplikationsfaktoren können nach Bedarf kombiniert werden. Das heißt, der Oszillationsbefehl kann ohne Verwendung der Bearbeitungsbedingung erzeugt werden, solange die Oszillationsamplitude und die Oszillationsfrequenz direkt als die Oszillationsbedingung in Anbetracht der Anwendung z. B. auf einen Fall eingestellt werden, in dem eine Oszillationswelle angehalten wird.
-
Der Oszillationsstart/ende-Bestimmer 14 bestimmt den Start/das Ende der Oszillation basierend auf dem Oszillationsbefehl. Das Bestimmen des Starts/Endes der Oszillation durch die Oszillationsstart/ende-Bestimmer 14 wird später ausführlich beschrieben.
-
Der zweite Addierer 15 erzeugt einen Überlagerungsbefehl. Insbesondere erzeugt der zweite Addierer 15 einen Überlagerungsbefehl durch die Überlagerung des von dem Oszillationsbefehlserzeuger 13 erzeugten Oszillationsbefehls auf die vom ersten Addierer 11 berechnete Positionsabweichung. Es ist zu beachten, dass der zweite Addierer 15 dazu konfiguriert sein kann, den Oszillationsbefehl dem durch den Oszillationsbefehlsgenerator 13 erzeugten Bewegungsbefehl hinzu zu addieren. Alternativ kann der Oszillationsbefehlserzeuger 13 dazu konfiguriert sein, den Oszillationsbefehl (einen Geschwindigkeitsbefehl) zu erzeugen, und der zweite Addierer 15 kann dazu konfiguriert sein, den Oszillationsbefehl dem Bewegungsbefehl (einem Geschwindigkeitsbefehl) hinzu zu addieren.
-
Darüber hinaus überlagert der zweite Addierer 15 den Oszillationsbefehl auf die Positionsabweichung gemäß einem Ergebnis des Bestimmens durch den Oszillationsstart/ende-Bestimmer 14. Das heißt, der zweite Addierer 15 startet die Überlagerung des Oszillationsbefehls auf die Positionsabweichung in einem Fall, in dem der Oszillationsstart/ende-Bestimmer 14 bestimmt hat, dass die Oszillation startet, und beendet die Überlagerung des Oszillationsbefehls auf die Positionsabweichung in einem Fall, in dem der Oszillationsstart/ende-Bestimmer 14 bestimmt hat, dass die Oszillation endet.
-
Die lernende Steuerung 16 berechnet einen Überlagerungsbefehl-Kompensationsbetrag basierend auf dem Überlagerungsbefehl und kompensiert den Überlagerungsbefehl derart, dass der berechnete Kompensationsbetrag dem Überlagerungsbefehl durch den dritten Addierer 17 hinzuaddiert wird. Die lernende Steuerung 16 hat einen Speicher, speichert im Speicher die Oszillationsphase und den Kompensationsbetrag in Zuordnung zueinander in einem oder mehreren Oszillationszyklen, liest den im Speicher gespeicherten Kompensationsbetrag zu einer Zeit aus, in dem es möglich ist, eine Phasenverzögerung der Oszillation gemäß dem Ansprechverhalten des Motors 30 zu kompensieren und gibt den Kompensationsbetrag an den dritten Addierer 17 aus. In einem Fall, in dem die dem auszugebenden Kompensationsbetrag zugeordnete Oszillationsphase nicht im Speicher gespeichert ist, kann der auszugebende Kompensationsbetrag aus einem Kompensationsbetrag berechnet werden, der einer Oszillationsphase nahe der oben beschriebenen Oszillationsphase zugeordnet ist. Im Allgemeinen nimmt die Positionsabweichung für den Oszillationsbefehl zu, wenn die Oszillationsfrequenz zunimmt. Somit führt die lernende Steuerung 16 eine Kompensation durch, so dass die Folgefähigkeit des zyklischen Oszillationsbefehls verbessert werden kann. Als Ergebnis kann auch die Folgefähigkeit des Überlagerungsbefehls verbessert werden und eine an einer Werkzeugmaschine während des Oszillationsschneidens verursachte Erschütterung kann verringert werden. Entsprechend kann die Bearbeitungsgenauigkeit verbessert werden.
-
Die Positions-/Geschwindigkeitssteuerung 18 erzeugt basierend auf dem Überlagerungsbefehl nach der Addition des Kompensationsbetrags einen Drehmomentbefehl für den Motor 30, der die Zugspindel antreibt, wodurch der Motor 30 entsprechend dem erzeugten Drehmomentbefehl gesteuert wird. Dementsprechend wird eine Bearbeitung durchgeführt, während ein Werkzeug und ein Werkstück relativ zueinander oszillieren.
-
Als nächstes wird das Bestimmen des Starts/Endes der Oszillation durch den Oszillationsstart/ende-Bestimmer 14 ausführlich beschrieben. Der Oszillationsstart/ende-Bestimmer bestimmt den Start/das Ende der Oszillation in einem Fall, in dem ein Absolutwert des Oszillationsbefehls einem vorgegebenen Wert entspricht oder kleiner ist. Der vorgegebene Wert kann z. B. auf einen Wert von 0 oder einen Wert nahe dem gesetzt werden und kann basierend auf einer Beschleunigung berechnet werden. In einem Fall, in dem eine Oszillationsstart/ende-Bedingung zu diesem Zeitpunkt erfüllt ist, wird bestimmt, dass die Oszillation startet/endet. Beispielsweise kann das Bestimmen basierend auf der Oszillationsamplitude, dem Bewegungsbefehl, einer Meldung von einer ein Bearbeitungsprogramm verwaltenden übergeordneten Steuervorrichtung oder einem externen Signal erfolgen. In einem Fall, in dem das Bestimmen basierend auf der Oszillationsamplitude oder dem Bewegungsbefehl durchgeführt wird, kann bestimmt werden, dass die Oszillation bei dem vorgegebenen oder einem höheren Wert startet, und es kann bestimmt werden, dass die Oszillation im Fall von weniger als dem vorgegebenen Wert endet. Der vorgegebene Wert für das Bestimmen des Starts/Endes kann eine Hysterese aufweisen. In einem Fall, in dem das Bestimmen basierend auf der Meldung von der übergeordneten Steuervorrichtung oder dem externen Signal durchgeführt wird, kann bestimmt werden, dass die Oszillation startet, wenn der Start (EIN) gemeldet wird, und es kann bestimmt werden, dass die Oszillation endet, wenn das Ende (AUS) gemeldet wird. Der absolute Wert des Oszillationsbefehls, der der Positionsabweichung zu überlagern ist, ist der vorgegebene Wert oder weniger, so dass die diskontinuierliche Überlagerungsbefehlserzeugung am Start/Ende der Oszillation verringert werden kann und die an der Werkzeugmaschine verursachte Erschütterung verringert werden kann.
-
Es ist zu beachten, dass in der vorliegenden Ausführungsform der Oszillationsstart/ende-Bestimmer 14 eine Zeitvorgabe des Starts/Endes der Oszillation bestimmt, und daher kann eine derartiger Zeitvorgabe von einer Oszillationsstart/ende-Zeitvorgabe abweichen, die durch das Bearbeitungsprogramm vorgegeben wird. Der Oszillationsstart/ende-Bestimmer 14 kann dazu konfiguriert sein, eine Zeitvorgabe des Starts/Endes der Oszillation derart zu bestimmen, dass der Abweichungsbetrag von der durch das Bearbeitungsprogramm vorgegebenen Oszillationsstart/ende-Zeitvorgabe innerhalb eines vorbestimmten Bereichs liegt.
-
Das Bestimmen des Oszillationsstarts/-endes durch den Oszillationsstart/ende-Bestimmer 14 wird genauer unter Bezugnahme auf spezielle Beispiele beschrieben, die in den 2 bis 8 gezeigt sind. Die 2 ist eine Grafik, der ein Beispiel des Bewegungsbefehls in einem Fall zeigt, in dem der Bewegungsbefehl konstant ist. In einem Fall, in dem der in der 2 gezeigte Bewegungsbefehl eine konstante Geschwindigkeit ist, ist ein linearer Befehl derart gezeigt, dass eine Zeit und ein Bewegungsbetrag in einer proportionalen Beziehung zueinander stehen. Die 3 ist eine Grafik, die ein Beispiel des Oszillationsbefehls in einem Fall zeigt, in dem der Befehl die Form einer Sinuswelle hat.
-
Die 4 ist eine Grafik, die einen Überlagerungsbefehl in einem Fall zeigt, in dem eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 3 auf den Bewegungsbefehl der 2 von einer Oszillationsphase von 0° und 180° abweicht. Da der Oszillationsbefehl der 3 die Sinuswelle ist, ist der Oszillationsbefehl 0 bei einer Oszillationsphase von 0° und 180°. Wenn somit eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 3 von einer Oszillationsphase von 0° und 180° abweicht, ist der Oszillationsbefehl ein anderer Wert als 0 und der Befehl beim Start/Ende der Überlagerung ist aus diesem Grund diskontinuierlich, wie in der 4 gezeigt. In der 4 geben von gestrichelten Linien umgebene Abschnitte den Start/das Ende der Überlagerung an und zeigen das Auftreten einer großen Erschütterung.
-
Andererseits ist die 5 eine Grafik, die einen Überlagerungsbefehl in einem Fall zeigt, in dem eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 3 auf den Bewegungsbefehl der 2 nicht von einer Oszillationsphase 0° und 180° abweicht. Wenn eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 3 bei einer Oszillationsphase von 0° und 180° liegt, ist der Oszillationsbefehl 0, und daher ist der Befehl am Start/Ende der Überlagerung kontinuierlich und glatt, wie in der 5 gezeigt. In der 5 geben von gestrichelten Linien umgebene Abschnitte den Start/das Ende der Überlagerung an und zeigen eine Erschütterungsreduzierung.
-
Die 6 ist eine Grafik, die ein weiters Beispiel eines Oszillationsbefehls zeigt. Wie bei dem in der 6 gezeigten Oszillationsbefehl kann der Oszillationsbefehl die Form einer Kosinuswelle haben, und eine Position auf der vertikalen Achse kann versetzt sein.
-
Die 7 ist eine Grafik, die einen Überlagerungsbefehl in einem Fall zeigt, in dem eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 6 auf den Bewegungsbefehl der 2 von einer Oszillationsphase abweicht, bei der der Oszillationsbefehl 0 ist. Der Oszillationsbefehl der 6 ist die Kosinuswelle und die Position auf der vertikalen Achse ist versetzt. Der Oszillationsbefehl im Fall einer Oszillationsphase von 0° ist 0, wie der 6 ersichtlich ist. Wenn somit eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 6 von einer Oszillationsphase von 0° abweicht, ist der Oszillationsbefehl ein anderer Wert als 0 und der Befehl beim Start/Ende der Überlagerung ist aus diesem Grund diskontinuierlich, wie in der 7 gezeigt. In der 7 geben von gestrichelten Linien umgebene Abschnitte den Start/das Ende der Überlagerung an und zeigen das Auftreten einer großen Erschütterung.
-
Andererseits ist die 8 eine Grafik, die einen Überlagerungsbefehl in einem Fall zeigt, in dem eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 6 auf den Bewegungsbefehl der 2 nicht von einer Oszillationsphase abweicht, bei der der Oszillationsbefehl 0 ist. Wenn eine Zeitvorgabe des Starts/Endes der Überlagerung des Oszillationsbefehls der 6 einer Oszillationsphase von 0° entspricht, ist der Oszillationsbefehl 0, und daher ist der Befehl am Start/Ende der Überlagerung kontinuierlich und glatt, wie in der 8 gezeigt. In der 8 geben von gestrichelten Linien umgebene Abschnitte den Start/das Ende der Überlagerung an und zeigen eine Erschütterungsreduzierung.
-
Wie unter Bezugnahme auf die 2 bis 8 beschrieben, startet/endet die Oszillation zu einem solchen Zeitpunkt, dass der Oszillationsbefehl klein ist, so dass die an der Werkzeugmaschine verursachte Erschütterung reduziert werden kann.
-
Gemäß der Werkzeugmaschinensteuervorrichtung 1 der vorliegenden Ausführungsform werden die folgenden vorteilhaften Wirkungen erzeugt. In der vorliegenden Ausführungsform ist der Oszillationsstart/ende-Bestimmer 14 vorgesehen, der den Start/das Ende der Oszillation basierend auf dem Oszillationsbefehl bestimmt, und der Oszillationsbefehl wird dem Bewegungsbefehl gemäß dem Ergebnis des Bestimmens durch den Oszillationsstart/ende-Bestimmer 14 überlagert, um den Überlagerungsbefehl zu erzeugen. In einem Fall, in dem der Absolutwert des Oszillationsbefehls dem vorgegebenen Wert entspricht oder kleiner ist, bestimmt der Oszillationsstart/ende-Bestimmer 14 den Start/das Ende der Oszillation. Mit dieser Konfiguration startet/endet die Überlagerung des Oszillationsbefehls auf den Bewegungsbefehl, wenn der Absolutwert des Oszillationsbefehls dem vorgegebenen Wert entspricht oder kleiner ist, und daher kann eine diskontinuierliche Befehlserzeugung reduziert werden und die an der Werkzeugmaschine verursachte Erschütterung kann reduziert werden. Entsprechend kann die Bearbeitungsgenauigkeit beim Oszillationsschneiden verbessert werden.
-
[Zweite Ausführungsform]
-
Die 9 ist ein Diagramm, das die Konfiguration einer Werkzeugmaschinensteuervorrichtung 1A gemäß einer zweiten Ausführungsform der vorliegenden Offenbarung zeigt. Wie in der 9 gezeigt, weist die Werkzeugmaschinensteuervorrichtung 1A gemäß der zweiten Ausführungsform eine Servosteuervorrichtung 10A auf und unterscheidet sich von der ersten Ausführungsform dadurch, dass die Werkzeugmaschinensteuervorrichtung 1A ferner einen Oszillationsamplitudenrechner 121 und eine Oszillationsphasenrechner122 aufweist. Ein Oszillationsbefehlserzeuger 13A entspricht dem Oszillationsbefehlserzeuger 13 der ersten Ausführungsform, ein Oszillationsstart/ende-Bestimmer 14A entspricht dem Oszillationsstart/ende-Bestimmer 14 der ersten Ausführungsform, und andere Komponenten ähneln denen der ersten Ausführungsform.
-
Der Oszillationsamplitudenrechner 121 berechnet eine Oszillationsamplitude basierend auf einer Oszillationsbedingung. Beispielsweise berechnet der Oszillationsamplitudenrechner 121 die Oszillationsamplitude basierend auf einem durch einen Oszillationsbedingungseinsteller 12 eingestellten Oszillationsamplituden-Multiplikationsfaktor.
-
Der Oszillationsphasenrechner 122 berechnet eine Oszillationsphase basierend auf der Oszillationsbedingung. Beispielsweise berechnet der Oszillationsphasenrechner 122 die Oszillationsphase (eine Oszillationsfrequenz) basierend auf einem durch den Oszillationsbedingungseinsteller 12 eingestellten Oszillationsfrequenz-Multiplikationsfaktor.
-
Der Oszillationsbefehlserzeuger 13A der vorliegenden Ausführungsform erzeugt einen Oszillationsbefehl basierend auf der durch den Oszillationsamplitudenrechner 121 berechneten Oszillationsamplitude und der durch den Oszillationsphasenrechner 122 berechneten Oszillationsphase.
-
Die Oszillationsstart/ende-Bestimmer 14A der vorliegenden Ausführungsform bestimmt den Start/das Ende der Oszillation basierend auf zumindest einem aus der durch den Oszillationsamplitudenrechner 121 berechneten Oszillationsamplitude oder der durch den Oszillationsphasenrechner 122 berechneten Oszillationsphase.
-
Genauer gesagt kann der Oszillationsstart/ende-Bestimmer 14A den Start/das Ende einer Oszillation bestimmen, wenn die Oszillationsamplitude (ein Amplitudenwert einer Sinuswelle oder einer Kosinuswelle) beispielsweise einem vorgegebenen Wert entspricht oder kleiner ist. Mit dieser Konfiguration kann ein diskontinuierlicher Befehl am Start/Ende der Überlagerung des Oszillationsbefehls reduziert werden.
-
Der Oszillationsstart/ende-Bestimmer 14A kann den Start/das Ende der Oszillation bei einer Oszillationsphase bestimmen, bei der ein Absolutwert des Oszillationsbefehls einem vorgegebenen Wert entspricht oder kleiner ist. Der vorgegebene Wert wird auf 0 gesetzt, damit die Erschütterung weiter reduziert werden kann. Im Fall des in der 3 gezeigten und oben beschriebenen sinuswellenförmigen Oszillationsbefehls kann das Bestimmen des Starts/Endes der Oszillation durchgeführt werden, wenn die Oszillationsphase 0° oder 180° ist. Im Fall des oben beschriebenen kosinuswellenförmigen Oszillationsbefehls in einem Zustand, in dem die Position auf der vertikalen Achse versetzt ist, wie in der 6 gezeigt, kann das Bestimmen des Starts/Endes der Oszillation durchgeführt werden, wenn die Oszillationsphase 0° ist.
-
Gemäß der vorliegenden Ausführungsform startet/endet das Überlagern des Oszillationsbefehls auf einen Bewegungsbefehl, wenn der Absolutwert des Oszillationsbefehls dem vorgegebenen Wert entspricht oder kleiner ist, wie in der ersten Ausführungsform. Somit kann eine diskontinuierliche Befehlserzeugung reduziert werden und die an einer Werkzeugmaschine verursachte Erschütterung kann reduziert werden. Entsprechend kann die Bearbeitungsgenauigkeit beim Oszillationsschneiden verbessert werden.
-
Es sei angemerkt, dass die vorliegende Offenbarung nicht auf die oben beschriebenen Aspekte beschränkt ist und Veränderungen und Modifikationen, die innerhalb eines Umfangs vorgenommen werden, in dem die Aufgabe der vorliegenden Offenbarung erreicht werden kann, in der vorliegenden Offenbarung umfasst sind. Beispielsweise sind in der zweiten Ausführungsform der Oszillationsamplitudenrechner 121 und der Oszillationsphasenrechner 122 vorgesehen, wobei aber nur eine dieser Komponenten vorgesehen sein kann.
-
Bezugszeichenliste
-
- 1, 1A
- Werkzeugmaschinensteuervorrichtung
- 10, 10A
- Servosteuervorrichtung
- 11
- erster Addierer
- 12
- Oszillationsbedingungseinsteller
- 13, 13A
- Oszillationsbefehlserzeuger
- 14, 14A
- Oszillationsstart/ende-Bestimmer
- 15
- zweiter Addierer
- 16
- lernende Steuerung (lernende Steuerung)
- 17
- dritter Addierer (lernende Steuerung)
- 18
- Positions-/Geschwindigkeitssteuerung (Steuerung)
- 30
- Motor
- 121
- Oszillationsamplitudenrechner
- 122
- Oszillationsphasenrechner