-
Hintergrund
-
Technischer Bereich
-
Die vorliegende Erfindung betrifft eine numerische Steuerung mit einer Funktion, einen Oszillationsvorgang eines Schleifwerkzeugs an einer Schleifmaschine zu steuern.
-
Stand der Technik
-
Eine Schleifmaschine, die ein Maschinenwerkzeug schleift, führt einen Oszillationsvorgang zum Schleifen einer Seitenfläche eines Werkstücks durch Bewegen einer Z-Achse in vertikaler Richtung sowie Bewegen einer X-Achse und Y-Achse zusammen mit der Bewegung der Z-Achse aus.
-
Die veröffentlichte
US-Patentanmeldung Nr. 2005/0215176 A1 beschreibt eine numerische Steuerung, die zwei oder mehr Steuerachsen zum Durchführen einer Umrisssteuerung steuert, wobei die Vorrichtung ein Schneidbewegungsdatenerzeugungsmittel aufweist, das die zwei oder mehr Steuerachsen gleichzeitig steuert, um einen Schneidvorgang durchzuführen, und gleichzeitig Bewegungsdaten zum Durchführen der Umrisssteuerung erzeugt.
-
Die veröffentlichte japanische Patentanmeldung
JP H04- 8 473 A beschreibt, dass eine numerische Steuerung, die ein Schneidsteuersystem zum Steuern eines Schneidvorgangs eines Schleifwerkzeugs einsetzt, ein Schneidabstandberechnungsmittel zum Berechnen eines Schneidabstands aus einem bestimmten oberen Totpunkt und unteren Totpunkt, eine Korrekturtabelle, die einen einer Schneidgeschwindigkeit entsprechenden Schneidkorrekturwert speichert, und einen Addierer aufweist, der den Schneidabstand und den Schneidkorrekturwert addiert, um einen Schneidabstand-Befehlswert zu berechnen.
-
Die veröffentlichte japanische Patentanmeldung
JP H09- 230 920 A beschreibt, dass nur ein spezifischer Bereich durch Ändern eines Schneidbetrags (Englisch: cut amount) und einer Vorschubgeschwindigkeit eines Werkzeugs in einem in einer NC-Werkzeugmaschine zuvor gesetzten Bereich bearbeitet wird, um die Bearbeitungszeit beim Werkstückschneiden zu verkürzen. Die veröffentlichte japanische Patentanmeldung JP H11- 65 633 A beschreibt, dass ein Verhältnis einer Vorschubgeschwindigkeit zu einer Spindelumdrehung hinsichtlich eines bestimmten Bereichs geändert wird. Die veröffentlichte japanische Patentanmeldung
JP H08- 243 799 A beschreibt eine Stanzvorgangsteuervorrichtung, die eine Bahn eines Stanzwerkzeugs unterteilt, und sogar die gleiche Position als eine unterschiedliche Position bearbeitet, wodurch eine Geschwindigkeit für jeden Abschnitt in einer Stanzmaschine geändert werden kann.
-
Die Geschwindigkeitssteuerung des in der vorstehend beschriebenen veröffentlichten
US-Patentanmeldung Nr. 2005/0215176 A1 und der veröffentlichten japanischen Patentanmeldung
JP H04- 8 473 A3 Oszillationsvorgangs gibt einen Bewegungsbetrag (Englisch: moving amount) mit einer bestimmten konstanten Geschwindigkeit aus. Daher ist ein Beschleunigungs-/Abbrems-Vorgang an einem Grenzwendepunkt erforderlich. Dementsprechend wird eine Akkumulation des Bewegungsbetrags verursacht, die die Genauigkeit des Grenzpunkts beeinflusst.
-
Die vorstehend beschriebene veröffentlichte japanische Patentanmeldung
JP H04- 8 473 A offenbart ein Verfahren zum Korrigieren der Akkumulation des Bewegungsbetrags aufgrund des Beschleunigungs-/Abbrems-Vorgangs und einer Verzögerung eines Servomotors. In Abhängigkeit von der Bestimmung einer Geschwindigkeits- und Zeitkonstante während der Beschleunigung und Abbremsung steigt die Akkumulation des Bewegungsbetrags während der Beschleunigung und Abbremsung an, und somit steigt der Korrekturbetrag an. Demzufolge braucht es viel Zeit die Korrektur zu vollenden.
-
In dem in der veröffentlichten japanischen Patentanmeldung
JP H09- 230 920 A und in der veröffentlichten japanischen Patentanmeldung
JP H11- 65 633 A beschriebenen Verfahren wird der bestimmte Bereich mit einem Bit-Muster (Englisch: bit pattern) bearbeitet. Dementsprechend wird die Bestimmung, die den Unterschied der Bewegungsrichtung betrifft, nicht vorgenommen. In dem Oszillationsvorgang ist selbst die gleiche Position erforderlich, um als eine unterschiedliche Position bearbeitet zu werden, wenn die Bewegungsrichtung unterschiedlich ist. Daher kann der in der veröffentlichten japanischen Patentanmeldung
JP H09- 230 920 A und in der veröffentlichten japanischen Patentanmeldung
JP H11- 65 633 A beschriebene Stand der Technik nicht auf den Oszillationsvorgang angewandt werden.
-
In dem in der veröffentlichten japanischen Patentanmeldung
JP H08- 243 799 A beschriebenen Verfahren wird die Position jedes Abschnitts in Abhängigkeit von einer Dicke eines Werkstücks geändert. Jedoch richtet sich dieses Verfahren ursprünglich auf eine Steuerung eines Stanzverfahrens, und eine kontinuierliche Steuerung wie etwa der Oszillationsvorgang ist nicht angedacht. Ferner übernimmt dieses Verfahren nicht die Änderung der Bahn, sodass dieses nicht für den Fall angewendet werden kann, bei dem sich der Oszillationsbereich verschiebt.
-
Die
DE 10 2006 022 831 A1 offenbart eine numerisch gesteuerte Schleifmaschine mit einer Datenverarbeitungseinrichtung, die in Echtzeit Achssteuerbefehle für Achsantriebseinheiten mittels einem Transformationsmodell aus ihr zugeführten Vektorinformationen über die Solloberflächenkontur eines Werkstücks berechnet. Die Achssteuerbefehle werden dann den Achsantriebseinheiten zugeführt, die diese dann umsetzen und die jeweiligen Achsen der Schleifmaschine antreiben.
-
Die
DE 10 2007 060 732 A1 beschreibt eine NC-Drehmaschine mit einer Berechnungseinheit, die relative Verschiebungen zwischen einem Werkstück und einem Sattel der Maschine aus den Ausgaben von zwei Beschleunigungssensoren berechnet. Eine Addiererschaltung addiert sodann die Änderung im relativen Abstand, die zwischen dem Sattel und dem Werkstück auftritt, zu einer Positionsrückmeldung des Werkzeugs, um den Einfluss von periodischen Biegeschwingungen der Maschine zu minimieren.
-
Ferner beschreibt die
DE 60 2005 001 420 T2 eine Schleifmaschine zum Bearbeiten von Zahnrädern, wobei die Vorschubgeschwindigkeit des Schleifrads in Bezug auf das Werkstück entlang der Hublänge des Schleifrads variiert wird, um ein unregelmäßiges Oberflächenmuster auf den Zahnoberflächen hervorzubringen.
-
Kurzfassung der Erfindung
-
Die vorliegende Erfindung ist im Hinblick auf die vorstehend beschriebenen Probleme des Stands der Technik geschaffen, und bezweckt eine numerische Steuerung bereitzustellen, die eine Werkzeugmaschine steuert, wobei die Werkzeugmaschine im Stande ist die Genauigkeit an einem Grenzpunkt zu erhöhen ohne eine Akkumulation eines Bewegungsbetrags (Englisch: moving amount) während der Beschleunigung und Abbremsung an einem Grenzwendepunkt zu erzeugen.
-
Eine weitere Aufgabe der vorliegenden Erfindung ist eine numerische Steuerung bereitzustellen, die eine Werkzeugmaschine steuert, wobei die Werkzeugmaschine im Stande ist eine Geschwindigkeit in einem optionalen Abschnitt gemäß einer Oszillationssteuerung zu ändern, um eine Schleifbearbeitungszeit zu verringern, in der die Werkzeugmaschine viele Hübe vornimmt und um eine Bearbeitungszykluszeit zu verkürzen.
-
Eine numerische Steuerung, die die Werkzeugmaschine steuert, welche eine sich in einem optionalen Bereich hin- und herbewegende oszillierende Achse aufweist, umfasst eine Benennungseinheit, die Positionen eines unteren Totpunkts und eines oberen Totpunkts bestimmt, wenn sich die oszillierende Achse hin- und herbewegt, und eine Referenzgeschwindigkeit in einem Oszillationsvorgang bestimmt, wenn sich die oszillierende Achse hin- und herbewegt; eine Phasenberechnungseinheit, die von der aktuellen Position der oszillierenden Achse eine aktuelle Phase in dem Fall berechnet, bei dem ein Hub der oszillierenden Achse als ein Zyklus definiert ist; eine Geschwindigkeitsberechnungseinheit, die die Geschwindigkeit der oszillierenden Achse in der aktuellen Phase basierend auf der durch die Phasenberechnungseinheit berechneten aktuellen Phase und der Referenzgeschwindigkeit berechnet; und eine Steuereinheit, die die oszillierende Achse basierend auf der durch die Geschwindigkeitsberechnungseinheit berechneten Geschwindigkeit steuert.
-
Die vorstehend beschriebene numerische Steuerung kann ferner eine Geschwindigkeitsänderungseinheit umfassen, die die Geschwindigkeit der oszillierenden Achse in einem optionalen Abschnitt der Phase ändert. Die vorstehend beschriebene numerische Steuerung kann ferner eine Bestimmungseinheit, die bestimmt, ob die Geschwindigkeitsdifferenz, die die Differenz zwischen der Geschwindigkeit der oszillierenden Achse in dem durch die Geschwindigkeitsänderungseinheit geänderten Abschnitt und der Geschwindigkeit vor der Änderung ist, innerhalb einer maximalen Beschleunigung liegt oder nicht; und eine Änderungseinheit umfassen, die ein Geschwindigkeitsänderungsverhältnis ändert, wenn die Geschwindigkeitsdifferenz die maximale Beschleunigung als ein Ergebnis der Bestimmung durch die Bestimmungseinheit übersteigt.
-
Die Referenzgeschwindigkeit ist die Maximalgeschwindigkeit während der Bewegung der oszillierenden Achse von dem unteren Totpunkt zu dem oberen Totpunkt.
-
Die vorliegende Erfindung kann eine numerische Steuerung bereitstellen, die eine Werkzeugmaschine steuert, wobei die Werkzeugmaschine im Stande ist, die Genauigkeit an einem Grenzpunkt zu erhöhen ohne eine Akkumulation eines Bewegungsbetrags während der Beschleunigung und Abbremsung an einem Grenzwendepunkt zu erzeugen.
-
Die vorliegende Erfindung kann auch eine numerische Steuerung bereitstellen, die eine Werkzeugmaschine steuert und die eine Geschwindigkeit in einem optionalen Abschnitt gemäß einer Oszillationssteuerung ändern kann, um eine Schleifbearbeitungszeit zu verringern, in der die Werkzeugmaschine viele Hübe vornimmt, und die eine Bearbeitungszeit verkürzen kann.
-
Figurenliste
-
Die obige und andere Aufgaben und Merkmale der vorliegenden Erfindung werden anhand der folgenden Beschreibung der Ausführungsformen mit Bezug auf die beigefügten Zeichnungen deutlicher, wobei:
- 1 ist eine Ansicht zum Beschreiben eines in einer Schleifmaschine eingesetzten Oszillationsvorgangs.
- 2 ist eine Ansicht zum Beschreiben einer Oszillationsfunktion, die die Position einer oszillierenden Achse basierend auf Phaseninformation steuert.
- 3 ist eine Ansicht zum Beschreiben, dass eine Geschwindigkeitssteuerung, in der die Beschleunigung und Abbremsung sanft (Englisch: gently wie eine Sinuswelle durchgeführt wird möglich ist.
- 4 ist ein Blockschaltbild, das eine numerische Steuerung darstellt, die den Oszillationsvorgang gemäß der vorliegenden Erfindung ausführt.
- 5 ist eine Ansicht zum Beschreiben einer Geschwindigkeitssteuerung gemäß des Stands der Technik.
- 6 ist eine Ansicht zum Beschreiben der Geschwindigkeitssteuerung gemäß der vorliegenden Erfindung.
- 7 ist ein Ablaufdiagramm, das einen Algorithmus zeigt, der den Oszillationsvorgang in der Geschwindigkeitssteuerung basierend auf der Phaseninformation gemäß der vorliegenden Erfindung durchführt.
- 8 ist eine Ansicht zum Beschreiben, dass die Geschwindigkeit in dem durch die Phaseninformation optional bestimmten Abschnitt geändert wird.
- 9 ist eine Ansicht zum Beschreiben, dass eine Erschütterung durch Halten von Winkelinformation selbst während der Beschleunigung und Abbremsung reduziert werden kann, und in dem es ermöglicht wird, eine Geschwindigkeitsänderung durchzuführen wo eine Geschwindigkeit die maximale Beschleunigung α nicht übersteigt.
- 10 ist eine Ansicht zum Beschreiben, dass die Zykluszeit reduziert wird wenn ein Geschwindigkeitsverhältnis in dem Abschnitt, in dem das Schleifwerkzeug nicht in Kontakt mit der Schneidfläche ist, erhöht wird.
- 11 ist eine Ansicht zum Beschreiben, dass die Geschwindigkeitsänderung durchgeführt werden kann, ohne den bestimmten Abschnitt selbst in dem Fall zu ändern, in dem der Oszillationsbereich verschoben ist.
- 12A und 12B sind Ablaufdiagramme, die einen Algorithmus des Oszillationsvorgangs darstellen, in dem das Geschwindigkeitsverhältnis in dem durch die Phaseninformation bestimmten Abschnitt geändert werden kann.
-
Beschreibung der bevorzugten Ausführungsformen
-
1 ist eine Ansicht zum Beschreiben eines in einer Schleifmaschine eingesetzten Oszillationsvorgangs.
-
Eine oszillierende Achse 1, die eine Schleifachse ist, bewegt sich in einer Z-Achsenrichtung hin- und her, um einem Schleifwerkzeug 2 das, wie in 1 als „Oszillationsvorgang 5“ gezeigt, Auf- und Abbewegen zu ermöglichen. Das Schleifwerkzeug 2 rotiert in einer Richtung, die in 1 als „Drehrichtung 6“ bezeichnet ist, und schiebt sich in eine X-Achsenrichtung senkrecht zu der Z-Achsenrichtung vor, wobei dabei eine Seitenfläche eines Werkstücks 3 geschliffen wird, die als „Schleiffläche 4“ gekennzeichnet ist. Das Schleifwerkzeug 2 wird so angetrieben, dass es eine Zeitspanne gibt wenn das Schleifwerkzeug 2 von dem Werkstück 3 innerhalb eines Zyklus des Oszillationsvorgangs getrennt wird.
-
Eine numerische Steuerung mit einer Oszillationsvorgangsfunktion steuert eine Werkzeugmaschine, wie beispielsweise eine Schleifmaschine, wobei sie die Werkzeugmaschine dazu veranlasst eine Hin- und Herbewegung in der Z-Achsenrichtung vorzunehmen, und gleichzeitig die Werkzeugmaschine veranlasst sich in die X-Achsenrichtung und Y-Achsenrichtung zu bewegen, die orthogonal zu der Z-Achse sind, um einen Oszillationsvorgang zum Schleifen der Seitenfläche des Werkstücks 3 durchzuführen. Die Bewegung in der Z-Achsenrichtung (in der vertikalen Richtung) ist konstant. Der Endpunkt, der ein Grenzpunkt des Oszillationsbereichs in der oberen Richtung ist wird als ein oberer Totpunkt bezeichnet, während der Endpunkt, der ein Grenzpunkt des Oszillationsbereichs in der unteren Richtung ist als ein unterer Totpunkt bezeichnet wird. In 1 ist der Endpunkt in der oberen Richtung als oberere Totpunkte ZU1 und ZU2 dargestellt, während der Endpunkt in der unteren Richtung als untere Totpunkte ZL1 und ZL2 dargestellt ist. In 1 wird der Oszillationsbereich des Werkzeugs 2 von einem Oszillationsbereich A1 zu einem Oszillationsbereich A2 an einem Übergangspunkt Zs geändert. Die Änderung des Oszillationsbereichs kann, wie später beschrieben, durch ein Bearbeitungsprogramm bestimmt werden.
-
2 ist eine Ansicht zum Beschreiben der Oszillationsfunktion, die die Position der oszillierenden Achse basierend auf Phaseninformation steuert.
-
Der Bereich, in dem die oszillierende Achse 1 (siehe 1) oszilliert, wird als „Oszillationsbereich A“ bezeichnet, der Endpunkt, der der Grenzpunkt des Oszillationsbereichs in der unteren Richtung des Oszillationsvorgangs ist, wird als der untere Totpunkt ZL bezeichnet, und der Endpunkt, der der Grenzpunkt des Oszillationsbereichs in der oberen Richtung des Oszillationsvorgangs ist, wird als oberer Totpunkt ZU bezeichnet. Die Phase θL an dem unteren Totpunkt ZL ist als 0(2π) Radiant definiert, während die Phase θU an dem oberen Totpunkt ZU als π Radiant definiert ist. Die Wellenform in 2 stellt den Oszillationsvorgang der oszillierenden Achse 1 (Werkzeug 2) eines Zyklus dar.
-
Was die Phase θ der Position Z in dem Oszillationsvorgang betrifft, sind Positionen Z während der Bewegung von dem unteren Totpunkt Z
L zu dem oberen Totpunkt Z
U 0<θ<π, und Positionen Z während der Bewegung von dem oberen Totpunkt Z
U zu dem unteren Totpunkt Z
L π<θ<2π(0), wodurch selbst die gleiche Position als unterschiedliche Positionen
7 und
8 in Abhängigkeit der Bewegungsrichtung der oszillierenden Achse bearbeitet werden kann. Die Beziehung zwischen der Position Z und der Phase θ kann durch die nachfolgend beschriebene Gleichung (1) oder Gleichung (2) dargestellt werden.
-
Wenn die Gleichung (1) bezüglich θ differenziert wird, wird eine Gleichung (3), wie nachstehend beschrieben, erhalten.
-
Die Beziehung zwischen der Phase θ und der Zeit t wird durch die nachstehend beschriebene Gleichung (4) unter Verwendung einer später beschriebenen Referenzgeschwindigkeit F
B dargestellt.
-
Eine Schätzgleichung (Englisch: rate equation) basierend auf einer Sinuswelle, wie nachstehend durch Gleichung (5) beschrieben, kann von der Gleichung (3) und der Differenzialgleichung der Gleichung (4) bezüglich der Zeit t abgeleitet werden. Wenn die Referenzgeschwindigkeit F
B, die die Maximalgeschwindigkeit während des Oszillationsvorgangs ist, zuvor gesetzt wird, oder ein Befehl gleichzeitig mit dem Oszillationsvorgang ausgegeben wird, und die Geschwindigkeit während dem Oszillationsvorgang aus der nachstehend beschriebenen Gleichung (5) berechnet wird, kann eine Geschwindigkeitssteuerung, in der die Geschwindigkeit sanft (Englisch: gently), wie durch die Sinuswelle (siehe
3) dargestellt, beschleunigt oder abgebremst wird, realisiert werden.
-
Die Geschwindigkeit kann unter Verwendung der nachstehend beschriebenen Gleichungen (6) und (7), anstatt der Gleichungen (4) und (5), und durch Setzen oder Ausgeben eines Befehls einer Winkelgeschwindigkeit ω anstatt der Referenzgeschwindigkeit F
B während des Oszillationsvorgangs, berechnet werden.
-
Der Befehl der in dem Bearbeitungsprogramm angewiesenen Oszillationsvorgangsanweisung kann in einem nachstehend beschriebenen Format ausgegeben werden.
- G81.1 Z_ Q_ FB_;( _: Optional numerical values, respectively)
- G01 X_ Y_ F_ ;
- G80
-
In dem vorstehend beschriebenen Bearbeitungsprogramm bedeutet „G81.1“ ein Oszillationsvorgangsstart-Befehlskode, „Z“ bedeutet der obere Totpunkt (ZU), „Q“ bedeutet der Oszillationsabstand (der Abstand von dem oberen Totpunkt (ZU) zu dem unteren Totpunkt (ZL)), und „FB“ bedeutet die Referenzgeschwindigkeit in dem Oszillationsvorgang. „G80“ bedeutet ein Oszillationsvorgangs-Stoppbefehl. „G01“ bedeutet ein Linear-Interpolations-Befehlskode (Englisch: linear interpolation command code), „X“ bedeutet der Bewegungsbetrag (Englisch: moving amount) auf der X-Achse, „Y“ bedeutet der Bewegungsbetrag (Englisch: moving amount) auf der Y-Achse, und „F“ bedeutet ein Syntheseparameter (Englisch: synthesis rate) auf der X-Achse und der Y-Achse.
-
4 ist ein Blockschaltbild, das eine numerische Steuerung darstellt, die den Oszillationsvorgang gemäß der vorliegenden Erfindung ausführt. Die numerische Steuerung liest, analysiert, und führt für jeden Block das vorstehend erwähnte Bearbeitungsprogramm aus. Eine numerische Steuereinheit 22 führt ein Verfahren von nachstehend beschriebenen und in 7, 12A und 12B dargestellten Ablaufdiagrammen aus, um die Oszillationssteuerung gemäß der vorliegenden Erfindung auszuführen.
-
Folgend wird mit Bezug auf 5 und 6 eine Geschwindigkeitssteuerung gemäß des Stands der Technik mit der Geschwindigkeitssteuerung gemäß der vorliegenden Erfindung verglichen. In der nachfolgenden Beschreibung erfolgt der Oszillationsvorgang ohne korrigiert zu werden, wobei der Oszillationsabschnitt 30.000 Millimeter (oberer Totpunkt: 30.000 Millimeter, unterer Totpunkt: 0.000 Millimeter) ist, und der Oszillationsvorgang für einen Hub 0.3 Sekunden braucht.
-
5 ist eine Ansicht zum Beschreiben einer Geschwindigkeitssteuerung gemäß des Stands der Technik. In 5 gibt eine dicke Linie h die Bewegung der tatsächlichen Achse an, und eine dünne Linie t gibt eine Integration eines von der numerischen Steuereinheit (siehe 4) der numerischen Steuerung an eine Servosteuereinheit ausgegebenen Ausgangsimpulses an. In der Geschwindigkeitssteuerung gemäß des Stands der Technik wird ein Fehler von etwa 6.036 Millimeter aufgrund der Summe der Verzögerung in der Beschleunigung und Abbremsung (Zeitkonstante von 0.09 Sekunden) und der Verzögerung eines Servomotors, wie in 5 dargestellt, hervorgerufen.
-
Demgegenüber ist 6 eine Ansicht zum Beschreiben der Geschwindigkeitssteuerung gemäß der vorliegenden Erfindung. In 6 gibt eine dicke Linie h die Bewegung der tatsächlichen Achse an, und eine dünne Linie t gibt eine Integration eines von der numerischen Steuereinheit (siehe 4) der numerischen Steuerung an eine Servosteuereinheit ausgegebenen Ausgangspulses an. Im Falle der Geschwindigkeitssteuerung gemäß der vorliegenden Erfindung gibt es keine Verzögerung in der Beschleunigung und Abbremsung, sondern nur eine Verzögerung des Servomotors. Aufgrund der Verzögerung des Servomotors wird ein Fehler von etwa 2.235 Millimeter, wie in 6 dargestellt, hervorgerufen.
-
Folglich ist, wie aus dem Vergleich zwischen 5 und 6 entnommen, der Fehler in der Geschwindigkeitssteuerung gemäß der vorliegenden Erfindung etwa 1/3 des Fehlers in der Geschwindigkeitssteuerung gemäß des Stands der Technik.
-
Wenn der Fehler klein ist, wird der notwendige Korrekturbetrag verringert, sodass die Verringerung der Zeit, die für die Korrektur benötigt wird, erzielt werden kann. Der Fehler in der Geschwindigkeitssteuerung gemäß der vorliegenden Erfindung wird nur durch die Verzögerung des Servomotors verursacht. Daher kann, wenn das Verfahren einer vorhergehenden Vorwärtsschub- oder Lernfunktion kombiniert wird, der Fehler ohne eine Korrektur wie im Stand der Technik verringert werden.
-
7 ist ein Ablaufdiagramm, das einen Algorithmus darstellt, der den Oszillationsvorgang in der Geschwindigkeitssteuerung basierend auf der Phaseninformation gemäß der vorliegenden Erfindung durchführt. Dieser wird gemäß der jeweiligen Schritten beschrieben. In dem Ablaufdiagramm ist eine „Zeiteinheit“ (Englisch: unit time) als 1 Millisekunde definiert.
-
[Schritt SA100] Analysiere den Oszillationsvorgangs-Befehlkode (Englisch: oscillating operation command code). Der Oszillationsvorgangs-Befehlskode ist in dem Bearbeitungsprogramm geschrieben, das durch die numerische Steuerung gelesen wird.
-
[Schritt SA101] Setze Daten. Im Besonderen werden die oberen Totpunktposition Z
U Millimeter, die unteren Totpunktposition Z
L Millimeter und die Referenzgeschwindigkeit F
B Millimeter/Minute des Oszillationsvorgangs jeweils gesetzt. Da die „Zeiteinheit“ als 1 Millisekunde definiert ist, wird die Referenzgeschwindigkeit F
B mit der Einheit Millimeter/Minute in die Referenzgeschwindigkeit F
B mit der Einheit Millimeter/Millisekunde umgewandelt. Die Beziehung zwischen der Referenzgeschwindigkeit F
B und der wie vorstehend beschrieben gesetzten Referenzgeschwindigkeit F
B ist wie folgt.
-
[Schritt SA102] Substituiere eine Position Zalt in dem vorangehenden Vorgangszyklus in die Position Z (aktuelle Position) in dem aktuellen Vorgangszyklus, um die aktuelle Position Z zu beschaffen.
-
[Schritt SA103] Berechne die aktuelle Phase θ von einer nachstehend beschriebenen Gleichung (8) basierend auf den in Schritt SA101 gesetzten Daten Z
U und Z
L und der in Schritt SA102 beschafften aktuellen Position Z.
-
[Schritt SA104] Berechne den Bewegungsbetrag ΔZ pro Zeiteinheit (1 Millisekunde) von der aktuellen Phase θ, die in dem Schritt SA103 berechnet wurde, unter Verwendung von einer Näherungsgleichung (Englisch: approximate equation) ΔZ=fBsinθ Millimeter/Millisekunde × 1 Millisekunde.
-
[Schritt SA105] Addiere den Bewegungsbetrag ΔZ pro Zeiteinheit (1 Millisekunde), der in dem Schritt SA104 berechnet wurde, zu der in dem Schritt SA102 beschafften aktuellen Position Z, wodurch Zalt erhalten wird. Im Besonderen wird das Verfahren Zalt ← Z + ΔZ durchgeführt.
-
[Schritt SA106] Bestimme, ob ein End-Befehl ausgegeben wird oder nicht, und wenn der End-Befehl ausgeben wurde, beende das Verfahren, wohingegen wenn der End-Befehl nicht ausgeben wurde, fahre mit Schritt SA107 fort.
-
[Schritt SA107] Bestimme, ob die in Schritt SA101 gesetzten Daten geändert werden sollen oder nicht. Wenn die Daten geändert werden sollen, fährt das Programm mit Schritt SA101 fort, und wenn die Daten nicht geändert werden sollen, fährt das Programm mit Schritt SA102 fort.
-
8 ist eine Ansicht zum Beschreiben, dass die Geschwindigkeit in dem durch die Phaseninformation optional bestimmten Abschnitt geändert wird.
-
Eine Startphase θS und eine Endphase θE eines optionalen Abschnitts, in dem die Geschwindigkeit geändert wird, und die Referenzgeschwindigkeit (Winkelgeschwindigkeit) FB in dem Oszillationsvorgang nach der Änderung werden zuvor gesetzt, oder sie werden gleichzeitig mit dem Oszillationsvorgang angewiesen. Ein Satz von optionalen Abschnitten und Referenzgeschwindigkeiten (Winkelgeschwindigkeiten) FB des Oszillationsvorgangs nach der Änderung können mehrfach bereitgestellt werden. Die Bestimmung, ob die oszillierende Achse in dem bestimmten Abschnitt zugegen ist oder nicht, wird während des Oszillationsvorgangs immer ausgeführt. Wenn die oszillierende Achse in dem bestimmten Abschnitt zugegen ist, wird die Referenzgeschwindigkeit (Winkelgeschwindigkeit) des jeweiligen Oszillationsvorgangs geändert. Da die Referenzgeschwindigkeit (Winkelgeschwindigkeit) des Oszillationsvorgangs geändert wird, wird die in der selben Phase berechnete Geschwindigkeit geändert.
-
Anstatt die Referenzgeschwindigkeit in dem Oszillationsvorgang zu ändern, kann ein mit der Referenzgeschwindigkeit F
B zu multiplizierender Koeffizient k (Geschwindigkeitsverhältnis) geändert werden. Im Besonderen kann der Koeffizient k, wie in der nachstehend beschriebenen Schätzgleichung (9) angegeben, geändert werden. Die Gleichung (9) entspricht einer, in der k×F
B←F
B in der Gleichung (5) ermittelt wird und k×ω←ω in der Gleichung (7) ermittelt wird.
-
Wenn die Referenzgeschwindigkeit F
B (Winkelgeschwindigkeit ω) oder das Geschwindigkeitsverhältnis k geändert wird, wird ein Unterschied zwischen der tatsächlichen aktuellen Phase und der durch die Zeit t bestimmten aktuellen Phase hervorgerufen. Folglich muss die Zeit t geändert werden, wenn die Referenzgeschwindigkeit (Winkelgeschwindigkeit) oder das Geschwindigkeitsverhältnis geändert wird. Wenn die Beziehung zwischen der aktuellen Position Z und dem Winkel θ in der Gleichung (1), wie durch die nachstehend beschriebenen Gleichungen (10) und (11) dargestellt, verwendet wird, kann die Geschwindigkeit von der aktuellen Position Z erhalten werden, und nicht von der Zeit (Steuerzyklus) t.
-
Andererseits, wenn die Referenzgeschwindigkeit oder das Geschwindigkeitsverhältnis einfach geändert wird, können, falls der Geschwindigkeitsunterschied groß ist, Erschütterungen, wie in 8 dargestellt, hervorgerufen werden. Daher wird das Verfahren für die Beschleunigung und Abbremsung benötigt. Da die aktuelle Geschwindigkeit aus der Schätzgleichung der Sinuswelle vor und nach der Änderung der Referenzgeschwindigkeit oder des Geschwindigkeitsverhältnisses berechnet wird, muss die Winkelinformation auch während der Beschleunigung und Abbremsung, während dem Berechnen der Geschwindigkeit aus der Winkelinformation, aktualisiert werden. Wenn der Algorithmus, der dazu verwendet wird, um das in den nachstehend beschriebenen Gleichungen (12) bis (17) dargestellte Geschwindigkeitsverhältnis zu ändern, sodass die Geschwindigkeit erhöht oder verringert wird, um zu verhindern, dass die Beschleunigung die maximale Beschleunigung α übersteigt, verwendet wird, kann, bei gleichbleibender Winkelinformation, die Geschwindigkeitsänderung, in der die Beschleunigung die maximale Beschleunigung α nicht übersteigt, ausgeführt werden. Somit können die Erschütterungen, wie in 9 dargestellt, verringert werden.
-
(I) Die Sinuswellengeschwindigkeit f
t (der Bewegungsbetrag der oszillierenden Achse pro Zeiteinheit (
1 Millisekunde)) durch das aktuelle Geschwindigkeitsverhältnis k
t ist durch die nachstehend beschriebene Gleichung (12) dargestellt. In dieser Gleichung ist f
B die Referenzgeschwindigkeit mit einer Einheit von Millimeter/Millisekunde.
-
(II) Die Sinuswellengeschwindigkeit f
neu durch das Geschwindigkeitsverhältnis k
neu nach der Änderung ist durch die nachstehend beschriebene Gleichung (13) dargestellt.
-
Wenn der absolute Wert der Geschwindigkeitsdifferenz (f
neu - f
t) der oszillierenden Achse basierend auf der Änderung des Geschwindigkeitsverhältnisses von k
t zu k
neu größer ist als die maximale Beschleunigung α, und die aktuelle Phase weder 0 (die Position des unteren Totpunkts) noch π (die Position des oberen Totpunkts) (im Besonderen, |f
neu-f
t| >α sowie θ≠0 und θ≠π), wird die als Bewegungsbetrag der oszillierenden Achse pro Zeiteinheit (
1 Millisekunde) dienende Geschwindigkeit f
t (die Sinuswellengeschwindigkeit) gemäß der maximalen Beschleunigung α unter Verwendung der nachstehend beschriebenen Gleichung (14) geändert.
-
Das nächste Geschwindigkeitsverhältnis k
t+1 wird durch die nachstehend beschriebene Gleichung (15) aktualisiert.
-
Andererseits, wenn der absolute Wert der Geschwindigkeitsdifferenz (f
neu- f
t) der oszillierenden Achse basierend auf der Änderung des Geschwindigkeitsverhältnisses von k
t zu k
neu nicht größer ist als die maximale Beschleunigung α, oder die aktuelle Phase
0 (die Position des unteren Totpunkts) oder π (die Position des oberen Totpunkts) ist (im Besonderen, falls |f
neu-f
t|≤α, θ=0, oder θ=π), dann wird das aktuelle Geschwindigkeitsverhältnis f
t auf das geänderte Geschwindigkeitsverhältnis k
neu aktualisiert. Die Geschwindigkeit f ist diesmal durch die nachstehend beschriebene Gleichung (16) dargestellt.
-
Das nächste Geschwindigkeitsverhältnis k
t+1 wird durch die nachstehend beschriebene Gleichung (17) aktualisiert.
-
Außer die vorstehend erwähnte maximale Beschleunigung α als einen festen Wert zu behandeln, kann die maximale Beschleunigung α gemäß der Zeitkonstante oder der aktuellen Geschwindigkeitsdifferenz variiert werden, wodurch die Geschwindigkeit sanfter erhöht und verringert werden kann.
-
1 ist eine Darstellung, die eine Beispielbearbeitung zeigt, in der sich die oszillierende Achse während einer Hin- und Herbewegung in der Z-Achsenrichtung in die X-Achsenrichtung bewegt. In der in 1 dargestellten Bearbeitung kann, wenn das Geschwindigkeitsverhältnis in dem Abschnitt, in dem die oszillierende Achse nicht in Kontakt mit der Schleifoberfläche ist, erhöht wird, die Zykluszeit verringert werden. In dem in 1 gezeigten Bearbeitungsbeispiel wird angenommen, dass wenn die oszillierende Achse den Übergangspunkt ZS erreicht, der Übergangsbefehl von dem Oszillationsbereich A1 zu dem Oszillationsbereich A2 ausgegeben wurde.
-
10 ist eine Ansicht zum Beschreiben, dass die Zykluszeit verringert wird, wenn das Geschwindigkeitsverhältnis in dem Bereich, in dem das Schleifwerkzeug nicht in Kontakt mit der Schneidfläche ist, erhöht wird.
-
Zum Beispiel ist, wenn die Länge der Schleiffläche in der X-Achsenrichtung 60 Millimeter ist, und der Befehl so ist, dass sich die oszillierende Achse in die X-Achsenrichtung um etwa 1.0 Millimeter in einem Hub des Oszillationsvorgangs bewegt, ein Oszillationsvorgang mit etwa 60 Hüben erforderlich. Wenn die Geschwindigkeitsänderung in dem bestimmten Abschnitt nicht durchgeführt wird, dauert es etwa 24.0 Sekunden für 60 Hübe, falls der Befehl für den Oszillationsvorgang, in dem es etwa 0.40 Sekunden für einen Hub dauert, ausgegeben ist. Wenn das Geschwindigkeitsverhältnis in dem bestimmten Abschnitt [0.5 π∼1.2 π] durch einen Faktor von 1.5 erhöht wird, wird die Zeitdauer für einen Hub 0.35 Sekunden. In diesem Fall, dauert es etwa 21.0 Sekunden für 60 Hübe, was bedeutet, dass die Zykluszeit um 3.0 Sekunden verringert werden kann.
-
11 ist eine Ansicht zum Beschreiben, dass die Geschwindigkeitsänderung durchgeführt werden kann, ohne den bestimmten Abschnitt selbst in dem Fall zu ändern, in dem der Oszillationsbereich an dem Übergangspunkt ZS verschoben ist.
-
12A und 12A sind Ablaufdiagramme, die einen Algorithmus des Oszillationsvorgangs darstellen, in dem das Geschwindigkeitsverhältnis in dem durch die Phaseninformation bestimmten Abschnitt geändert werden kann. Dieser wird gemäß der jeweiligen Schritte beschrieben. In dem Ablaufdiagramm ist eine „Zeiteinheit“ als 1 Millisekunde definiert.
-
[Schritt SB100] Analysiere den Oszillationsvorgangs-Befehlskode (Englisch: oscillating operation command code). Der Oszillationsvorgangs-Befehlskode ist in dem Bearbeitungsprogramm geschrieben, das durch die numerische Steuerung gelesen wird.
-
[Schritt SB101] Setze t auf 0 und setze k auf 1, wobei t eine Zeit bedeutet und k das Geschwindigkeitsverhältnis bedeutet.
-
[Schritt SB102] Setze Daten. Im Besonderen werden die oberen Totpunktposition ZU Millimeter, die unteren Totpunktposition ZL Millimeter und die Referenzgeschwindigkeit FB Millimeter/Minute des Oszillationsvorgangs jeweils gesetzt. Ferner wird, unter Verwendung der Gleichung fB =FB×1/60000, die Referenzgeschwindigkeit fB mit einer Einheit von Millimeter/Millisekunde von der gesetzten Referenzgeschwindigkeit FB (Millimeter/Minute) erhalten.
-
[Schritt SB103] Bestimme, ob die Gleichung t = 0 erfüllt wurde oder nicht, oder ob, der bestimmte Abschnitt geändert werden soll oder nicht. Setze in beiden Fällen mit Schritt SB104 fort, und setze in keinem von beiden Fällen mit Schritt SB105 fort.
-
[Schritt SB104] Setze den bestimmten Abschnitt (bestimmter Abschnitt 1, bestimmter Abschnitt 2, ... bestimmter Abschnitt n), und setze die Geschwindigkeit oder das Geschwindigkeitsverhältnis in jedem Abschnitt.
-
[Schritt SB105] Beschaffe die aktuelle Position Z. Im Besonderen wird Zalt durch Z substituiert, wobei Zalt die Position in dem vorhergehenden Vorgangszyklus bedeutet und Z die Position in dem aktuellen Vorgangszyklus bedeutet.
-
[Schritt SB106] Berechne die aktuelle Phase θ aus der vorstehend beschriebenen Gleichung (8).
-
[Schritt SB107] Berechne den Bewegungsbetrag ΔZ pro Zeiteinheit (1 Millisekunde) (= die Geschwindigkeit der oszillierenden Achse in dem gegenwärtigen Abschnitt vor der Geschwindigkeitsänderung) unter Verwendung einer Näherungsgleichung (Englisch: approximate equation) ΔZ =fBsinθ Millimeter/Millisekunde × 1 Millisekunde.
-
[Schritt SB108] Bestimme, ob die aktuelle Phase innerhalb des bestimmten Abschnitts ist oder nicht, und wenn sie innerhalb des bestimmten Abschnitts ist, setze mit Schritt SB109 fort. Wenn sie nicht innerhalb des bestimmten Abschnitts ist, setze mit Schritt SB113 fort.
-
[Schritt SB109] Berechne den Bewegungsbetrag ΔZn pro Zeiteinheit (1 Millisekunde) nach der Änderung des Geschwindigkeitsverhältnisses (= die Geschwindigkeit der oszillierenden Achse in dem gegenwärtigen Abschnitt nach der Geschwindigkeitsänderung).
-
[Schritt SB110] Bestimme, ob die Änderung des Bewegungsbetrags ΔZn pro Zeiteinheit (1 Millisekunde) aufgrund der Änderung des Geschwindigkeitsverhältnisses (der absolute Wert des Unterschieds zwischen des in Schritt SB107 berechneten Bewegungsbetrags ΔZ pro Zeiteinheit (1 Millisekunde) und des in Schritt SB109 berechneten Bewegungsbetrags ΔZn pro Zeiteinheit (1 Millisekunde)) innerhalb der maximalen Beschleunigung α liegt oder nicht. Wenn sie innerhalb der maximalen Beschleunigung α liegt, setze mit Schritt SB111 fort, und wenn sie nicht innerhalb der maximalen Beschleunigung α liegt, setze mit Schritt SB112 fort.
-
[Schritt SB111] Führe eine erste Aktualisierung des Bewegungsbetrags ΔZ pro Zeiteinheit (1 Millisekunde) und des Geschwindigkeitsverhältnisses aus. Im Besonderen wird ΔZn auf ΔZ aktualisiert, und kn wird auf k aktualisiert.
-
[Schritt SB112] Führe eine zweite Aktualisierung des Bewegungsbetrags ΔZ pro Zeiteinheit (
1 Millisekunde) und des Geschwindigkeitsverhältnisses k aus. Im Besonderen werden ΔZ und k durch die nachstehend beschriebene Gleichung (18) aktualisiert. In der Gleichung (18) wird die Einheit von α auf der linken Seite zum Aktualisieren von ΔZ als (Millimeter/Millisekunde
2) × 1
2 (Millisekunde
2) betrachtet und die Einheit von α auf der rechten Seite zum Aktualisieren von k wird als (Millimeter/Millisekunde
2) × 1 (Millisekunde) betrachtet, um die Einheiten zu vereinheitlichen.
-
[Schritt SB113] Aktualisiere die Position. Im Besonderen wird Zalt durch Z + ΔZ aktualisiert.
-
[Schritt SB114] Bestimme, ob ein End-Befehl ausgegeben wird oder nicht. Wenn der End-Befehl ausgegeben wird, beende das Verfahren. Wenn der End-Befehl nicht ausgegeben wird, setze mit Schritt SB115 fort.
-
[Schritt SB115] Setze t auf t + 1. Im Besonderen wird die Zeit um 1 Zeiteinheit (1 Millisekunde) vorgestellt.
-
[Schritt SB116] Bestimme, ob die Daten geändert werden sollen oder nicht. Wenn die Daten geändert werden, setze mit Schritt SB102 fort. Wenn die Daten nicht geändert werden sollen, setze mit Schritt SB103 fort.