-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung
-
Die Erfindung betrifft eine numerische Steuerung und insbesondere eine solche, die in der Lage ist, einen Nachlauf (Totgang) zu unterdrücken, der bei der Werkzeugspitzenpunktsteuerung auftritt.
-
Zum Stand der Technik
-
Bei einer Werkzeugspitzenpunktsteuerung wird ein Steuerpunkt eines Werkzeuges so gesteuert, dass ein Spitzenpunkt des Werkzeuges sich auf einem vorgeschriebenen Weg mit einer +n vorgeschriebenen Geschwindigkeit in einer 5-achsigen Bearbeitung bewegt mit gleichzeitiger Befehlsgabe für die Bewegung der Linearachsen und der Drehachsen, auch bei Vorliegen eines Befehls, der eine momentane Änderung der Stellung des Werkzeuges bewirkt.
-
Bezüglich einer solchen Werkzeugspitzenpunktsteuerung beschreibt die japanische Patentveröffentlichung
JP 2003-195917 A eine numerische Steuerung zum Steuern einer 5-achsigen Werkzeugmaschine, wobei die Steuerung in der Lage ist, einen Tisch linear entlang einer X-Achse und einer Y-Achse anzutreiben bei Rotation des Tisches um eine C-Achse, bei der es sich um eine Drehachse um die Z-Achse, senkrecht zur X- und Y-Achse handelt, und zum linearen Antreiben eines Werkzeuges entlang der Z-Achse bei Drehung des Werkzeuges um eine A-Achse, bei der es sich um die Drehachse gemäß der X-Achse handelt.
-
Bei der Werkzeugspitzenpunktsteuerung der numerischen Steuerung gemäß der japanischen Patentveröffentlichung
JP 2003-195917 A wird ein Befehl zur Bewegung eines Werkzeugspitzenpunktes in einen Befehl zur Bewegung eines Werkzeugsteuerpunktes umgewandelt und in der Mitte des Weges wird der Werkzeugsteuerpunkt so angetrieben, dass der Werkzeugspitzenpunkt sich auf dem befohlenen Bewegungsweg bewegt. Wenn beispielsweise gemäß
12 ein Befehl zum Bewegen des Werkzeugspitzenpunktes im Betriebszustand mit Werkzeugspitzenpunktsteuerung gegeben wird, ändert sich die Stellung des Werkzeuges von Punkt zu Punkt jedoch wird der Werkzeugspitzenpunkt so gesteuert dass er sich befehlsgemäß auf einer geraden Linie bewegt. In diesem Fall ist der Weg des Steuerpunktes entsprechend der Änderung der Stellung des Werkzeuges und bildet somit eine gekrümmte Linie gemäß
12.
-
Wie oben beschrieben, bildet bei der Werkzeugspitzensteuerung ein Weg des Steuerpunktes im Allgemeinen eine gekrümmte Linie. Dies verursacht ein Problem dahingehend, dass der Weg des Steuerpunktes mit hoher Wahrscheinlichkeit in der Mitte eines Blockes während der Werkzeugspitzenpunktsteuerung eine Umkehrung ausführt (einen Nachlauf, Totgang, erzeugt). Bei der Befehlsgabe gemäß 13 scheint der Steuerpunktweg eine gerade Linie zu sein. Tatsächlich aber fällt der Steuerpunktweg bei jedem Befehlsblock geringfügig in Y-Achsenrichtung leicht zurück. Insbesondere, wie dargestellt, fällt der Steuerpunktweg in Y-Achsenrichtung an einem Punkt A in der Mitte eines Blockes und auch an einem Punkt B, einer Nahtstelle zwischen Blöcken, zurück.
-
Dementsprechend kann während einer Werkzeugspitzenpunktsteuerung der Weg leicht eine Verschiebung erleiden, was eine Kompensationsfunktion erfordert, wie eine Nachlaufkorrektur und eine Nachlaufbeschleunigung. Solche Kompensationsfunktionen können aber übermäßig wirksam sein und Probleme hinsichtlich der Bearbeitungsqualität der Oberfläche zur Folge haben.
-
JP 2010-146176 A beschreibt eine Werkzeugspitzenpunktsteuerung zum Steuerung eines Werkzeuges, sodass ein Bearbeitungspunkt sich entlang einer gleichmäßigen Kurve bewegt und eine Referenzposition des Werkzeuges sich gleichmäßig bewegt. Die numerische Steuerung erzeugt auf Basis der Befehlszeichenfolge der Bearbeitungs-punkte eine approximative Kurve der Bearbeitungspunkte, erhält eine Folge von korrigierten Punkten der Bearbeitungspunkte, indem die Befehlszeichenfolge der Bearbeitungs-punkte innerhalb einer ersten Toleranz zu der approximativen Kurve der Bearbeitungs-punkte verschoben wird, und erhält als die Bearbeitungskurve eine Kurve, die durch die korrigierten Punkte des Bearbeitungspunktes läuft.
-
DE 102005015810 A1 beschreibet eine Vorrichtung zum Berechnen einer Achsverstellzeit, wenn die Vorrichtung für numerische Steuerung selbst über einen Algorithmus zum Einstellen der Vorschubgeschwindigkeit oder dergleichen verfügt.
-
KURZBESCHREIBUNG DER ERFINDUNG
-
Es ist deshalb ein Ziel der Erfindung, eine numerische Steuerung bereitzustellen, die in der Lage ist, einen Nachlauf (Totgang) zu unterbinden, der bei einer Werkzeugspitzenpunktsteuerung auftritt. Dieses Ziel wird erreicht durch numerische Steuerungen gemäß der Ansprüche 1-3.
-
Eine numerische Steuerung mit Werkzeugspitzenpunktsteuerungsfunktion gemäß einer Variante der vorliegenden Erfindung erzeugt in einer mehrachsigen Werkzeugmaschine mit drei Linearachsen und zwei Rotationsachsen einen ersten Bewegungsbefehl zur Bewegung eines Spitzenpunktes eines Werkzeuges entlang einem ersten Bewegungsweg und erzeugt auf Basis des ersten Bewegungsbefehls einen zweiten Bewegungsbefehl zum Bewegen eines Steuerpunktes des Werkzeuges entlang einem zweiten Bewegungsweg. Die numerische Steuerung mit Werkzeugspitzenpunktsteuerungsfunktion enthält eine Steuerpunkt-Interpolationseinheit zur Ausgabe eines dritten Bewegungsbefehls zum Bewegen des Steuerpunktes des Werkzeuges entlang einem dritten Bewegungsweg, der gewonnen wird durch lineare Interpolation des zweiten Bewegungsweges. Die Steuerpunkt-Interpolationseinheit hat eine vorläufige Werkzeugspitzenpunktbewegungspfad-Berechnungseinheit zum Berechnen, auf Basis des dritten Bewegungsweges, eines vierten Bewegungsweges des Spitzenpunktes des Werkzeuges, eine Prüfeinheit zum Überprüfen ob der Abstand zwischen dem ersten Bewegungsweg und dem vierten Bewegungsweg innerhalb einer vorgegebenen Toleranz liegt, und eine Nachlinearinterpolationsbewegungsbefehlsausgabeeinheit zum Ausgeben des dritten Bewegungsbefehls wenn die Prüfeinheit festgestellt hat, dass die Distanz innerhalb der vorgegebenen Toleranzen liegt.
-
Eine numerische Steuerung mit Werkzeugspitzenpunktsteuerfunktion gemäß einer anderen Variante der Erfindung erzeugt in einer mehrachsigen Werkzeugmaschine mit drei Linearachsen und zwei Rotationsachsen einen ersten Bewegungsbefehl zum Bewegen eines Spitzenpunktes eines Werkzeuges entlang einem ersten Bewegungsweg und erzeugt auf Basis des ersten Bewegungsbefehls einen zweiten Bewegungsbefehl zum Bewegen eines Steuerpunktes des Werkzeuges entlang einem zweiten Bewegungsweg. Die numerische Steuerung mit Werkzeugspitzenpunktsteuerfunktion enthält eine Steuerpunkt-Interpolationseinheit zum Ausgeben eines dritten Bewegungsbefehls zum Bewegen des Steuerpunktes des Werkzeuges entlang einem dritten Bewegungsweg, der gewonnen wird durch lineare Interpolation des zweiten Bewegungsweges. Die Steuerpunkt-Interpolationseinheit enthält eine Prüfeinheit zum Prüfen ob der Abstand zwischen dem zweiten Bewegungsweg und dem dritten Bewegungsweg innerhalb einer vorgegebenen Toleranz liegt, und eine Nachlinearinterpolationsbewegungsbefehlsausgabeeinheit zum Ausgeben des dritten Bewegungsbefehls wenn die Prüfeinheit feststellt, dass der Abstand innerhalb der vorgegebenen Toleranz liegt.
-
Eine numerische Steuerung mit Werkzeugspitzenpunktsteuerfunktion gemäß einer weiteren Variante der Erfindung erzeugt in einer mehrachsigen Werkzeugmaschine mit drei Linearachsen und zwei Drehachsen einen ersten Bewegungsbefehl zum Bewegen eines Spitzenpunktes eines Werkzeuges entlang einem ersten Bewegungsweg und erzeugt auf Basis des ersten Bewegungsbefehls einen zweiten Bewegungsbefehl zum Bewegen eines Steuerpunktes des Werkzeuges entlang einem zweiten Bewegungsweg. Die numerische Steuerung mit Werkzeugspitzenpunktsteuerfunktion hat eine Steuerpunkt-Interpolationseinheit zum Ausgeben eines dritten Bewegungsbefehls zum Bewegen des Steuerpunktes des Werkzeuges entlang einem dritten Bewegungsweg, der gewonnen wird durch Linearinterpolation des zweiten Bewegungsweges. Die Steuerpunkts-Interpolationseinheit enthält eine Zähleinheit für die zweite Bewegungsbefehlsinterpolation zum Ermitteln, ob die Bewegung des Steuerpunktes des Werkzeuges auf Basis des zweiten Bewegungsbefehls innerhalb einer vorgegebenen Anzahl von Interpolationszyklen vervollständigt ist, eine Nachlinearinterpolationsbewegungsbefehlsausgabeeinheit zum Ausgeben des dritten Bewegungsbefehls wenn die Zähleinheit für die zweite Bewegungsbefehlsinterpolation feststellt, dass die Bewegung des Steuerpunktes des Werkzeuges auf Basis des zweiten Bewegungsbefehls innerhalb der vorgegebenen Anzahl von Interpolationszyklen vervollständigt ist, und eine Zähleinheit für die erste Bewegungsbefehlsinterpolation zum Ermitteln, ob die Bewegung des Spitzenpunktes des Werkzeuges auf Basis des ersten Bewegungsbefehls innerhalb einer vorgegebenen Anzahl von Interpolationszyklen vervollständigt ist, und eine Nachlinearinterpolationsbewegungsbefehlsausgabeeinheit zum Ausgeben des dritten Bewegungsbefehls wenn die Zähleinheit für die erste Bewegungsbefehlsinterpolation feststellt, dass die Bewegung des Spitzenpunktes des Werkzeuges auf Basis des ersten Bewegungsbefehls innerhalb der vorgegebenen Anzahl von Interpolationszyklen abgeschlossen ist.
-
Aufgrund der obigen Konfiguration der numerischen Steuerung gemäß der Erfindung weicht der Weg des Werkzeugspitzenpunktes im Allgemeinen vom befohlenen Weg ab. Die Abweichung des Werkzeugspitzenpunktes aufgrund der Linearinterpolation des Steuerpunktweges ist jedoch innerhalb eines zulässigen Bereiches und das Auftreten eines Nachlaufes des Steuerpunktes wird weniger wahrscheinlich im Vergleich zu einer herkömmlichen Werkzeugspitzenpunktsteuerung. Im Ergebnis kann der Einsatz einer Kompensationsfunktion bezüglich des Nachlaufs minimiert werden, was die Bearbeitungsqualität der Oberfläche verbessert.
-
Obige sowie weitere Ziele und Merkmale der vorliegenden Erfindung werden noch deutlicher aus der nachfolgenden Beschreibung vom Ausführungsbeispielen mit Blick auf die Figuren.
-
Figurenliste
-
- 1 ist ein Blockdiagramm der Hauptkomponenten einer numerischen Steuerung für einige Ausführungsbeispiele der Erfindung;
- 2 ist ein schematisches Funktionsblockdiagramm einer numerischen Steuerung für einige Ausführungsbeispiele der vorliegenden Erfindung;
- 3 zeigt schematisch einen Vorgang der Linearinterpolation eines Bewegungsweges eines Steuerpunktes gemäß Ausführungsbeispiel 1 der Erfindung;
- 4 zeigt eine Positionsbeziehung zwischen einem Werkzeugspitzenpunkt und einem Steuerpunkt bei Ausführungsbeispiel 1 der Erfindung;
- 5 erläutert Schritte bei der Berechnung eines Abstandes zwischen Wegen bei Ausführungsbeispiel 1 der Erfindung;
- 6 ist ein Flussdiagramm eines Steuerpunkt-Interpolationsverfahrens in Ausführungsbeispiel 1 der Erfindung;
- 7 zeigt schematisch einen Vorgang der Linearinterpolation eines Bewegungsweges eines Steuerpunktes gemäß Ausführungsbeispiel 2 der Erfindung;
- 8 erläutert die Schritte beim Berechnen eines Abstandes zwischen Wegen bei Ausführungsbeispiel 2 der Erfindung;
- 9 ist ein Flussdiagramm für den Steuerpunkt-Interpolationsprozess bei Ausführungsbeispiel 2 der Erfindung;
- 10 erläutert schematisch einen Prozess der Linearinterpolation eines Bewegungsweges eines Steuerpunktes bei Ausführungsbeispiel 3 der Erfindung;
- 11 ist ein Flussdiagramm für den Steuerpunkt-Interpolationsprozess bei Ausführungsbeispiel 3 der Erfindung;
- 12 erläutert die Werkzeugspitzenpunktsteuerung beim Stand der Technik; und
- 13 erläutert ein Problem bei der herkömmlichen Werkzeugspitzenpunktsteuerung.
-
BESCHREIBUNG BEVORZUGTER AUSFÜHRUNGSBEISPIELE IM EINZELNEN
-
1 ist ein Blockdiagramm zur Erläuterung der Hauptkomponenten einer numerischen Steuerung (CNC) 100, mit welcher die Werkzeugspitzenpunktsteuerung gemäß einigen Ausführungsbeispielen der Erfindung verwirklicht wird.
-
Eine CPU 11 steuert insgesamt die numerische Steuerung 100. Die CPU 11 liest über einen Bus 20 ein in einem ROM 12 gespeichertes Systemprogramm. Die CPU 11 steuert dann die gesamte numerische Steuerung entsprechend dem Systemprogramm. Ein RAM 13 speichert zeitweise Rechendaten, Anzeigedaten und weitere unterschiedliche Arten von Daten, die von einer Bedienungsperson über eine Anzeige-/MDI-Einheit 70 eingegeben werden.
-
Ein CMOS 14 wird durch eine Batterie gestützt (nicht gezeigt) und ist eingerichtet als nicht-flüchtiger Speicher, der seinen Speicherzustand beibehält, auch wenn die numerische Steuerung 100 ohne Strom ist oder abgeschaltet ist. Der CMOS-Speicher 14 speichert ein Bearbeitungsprogramm, zum Beispiel das weiter unten beschriebene, welches über eine Schnittstelle 15 eingelesen wird, und ein Bearbeitungsprogramm, welches beispielsweise über die Anzeige-/MDI-Einheit 70 eingegeben worden ist. Unterschiedliche Systemprogramme zur Ausführung eines Verfahrens im Editionszustand, die erforderlich sind zur Erzeugung und Edition eines Bearbeitungsprogrammes, sowie einer Bearbeitung im automatischen Betrieb sind vorab in dem ROM 12 abgelegt. Verschiedene Bearbeitungsprogramme, wie ein Bearbeitungsprogramm gemäß der vorliegenden Erfindung, können über die Schnittstelle 15 oder die Anzeige-/MDI-Einheit 70 eingegeben und im CMOS-Speicher 14 abgespeichert werden.
-
Die Schnittstelle 15 verbindet eine externe Einrichtung 72, wie einen Adapter, mit der numerischen Steuerung 100. Ein Bearbeitungsprogramm und unterschiedliche Parameter werden beispielsweise über die externe Einrichtung 72 eingelesen. Auch ein Bearbeitungsprogramm, welches von der numerischen Steuerung 100 editiert wird, kann in einem externen Speicher über die externe Einrichtung 72 abgespeichert werden. Eine programmierbare Maschinensteuerung (PMC) 16 steuert eine Hilfseinrichtung (z.B. einen Aktuator, wie eine Roboterhand zum Ersatz eines Werkzeuges) einer Werkzeugmaschine durch Ausgabe eines Signals an die Hilfseinrichtung über einer I/O-Einheit 17 (Eingabe/Ausgabe) entsprechend einem Ablaufprogramm, das in die numerische Steuerung 10 eingegeben ist. Auch empfängt die PMC 16 ein Signal von unterschiedlichen Schaltern einer Bedienoberfläche auf dem Gehäuse der Werkzeugmaschine und verarbeitet die Signale wie erforderlich und gibt sie an die CPU 11.
-
Die Anzeige-/MDI-Einheit 70 dient der manuellen Dateneingabe und hat insbesondere eine Anzeigeeinrichtung, eine Tastatur oder dergleichen. Eine Schnittstelle 18 empfängt zum Beispiel einen Befehl und über die Tastatur eingegebene Daten und gibt dies an die CPU 11. Eine Schnittstelle 19 ist an die Bedienoberfläche 71 mit einem manuellen Pulsgenerator oder dergleichen angeschlossen. AchsenSteuerschaltungen 30 bis 34 für jeweilige Achsen empfangen für jede von der CPU 11 gesteuerte Achse Bewegungsdaten und geben Befehle für die jeweiligen Achsen an Servoverstärker 40 bis 44. Bei Empfang des Befehls treiben die Servoverstärker 40 bis 44 Servomotoren 50 bis 54 für die jeweiligen Achsen. Die Servomotoren 50 bis 54 der Achsen haben jeweils einen Positions-/Geschwindigkeitsdetektor und es erfolgt eine Rückkoppelsteuerung durch Rückführung eines Positions-/Geschwindigkeitsrückkoppelsignals von dem Positions-/Geschwindigkeitsdetektor zu den Achsensteuerschaltungen 30 bis 34. Die Rückkoppelung von Position/Geschwindigkeit ist im Blockdiagramm nicht dargestellt.
-
Eine Spindelsteuerschaltung 60 empfängt Spindelrotationsbefehle für die Werkzeugmaschine und gibt ein Spindelgeschwindigkeitssignal an einen Spindelverstärker 61. Bei Empfang des Spindelgeschwindigkeitssignals, dreht der Spindelverstärker 61 einen Spindelmotor 62 der Werkzeugmaschine mit der befohlenen Drehgeschwindigkeit zum Antrieb eines Werkzeuges.
-
Ein Positionscodierer 63 ist mit dem Spindelmotor 62 über ein Getriebe oder einen Riemen oder dergleichen verbunden. Der Positionscodierer 61 läuft synchron mit der Drehung der Spindel und gibt Rückkoppelpulse, die durch den Prozessor 11 gelesen werden.
-
2 ist ein schematisches Funktionsblockdiagramm einer numerischen Steuerung einiger Ausführungsbeispiele der Erfindung.
-
Ein Block im NC-Programm, also einem Bearbeitungsprogramm, wird in einer Befehlsprogramm-Analyseeinheit 110 analysiert und ein vorgegebener Steuerpunkt-Interpolationsprozess wird in einer Steuerpunkt-Interpolationseinheit 120 ausgeführt. Mit Bezug auf eine Bearbeitungskoordinatenposition auf einer Linearachse und einer Rotationsposition auf einer Rotationsachse, welche durch den vorgegebenen Steuerpunkt-Interpolationsprozess gewonnen werden, wird durch eine Interpolationseinheit 130 ein Interpolationsprozess ausgeführt, um auf jeder Achse für jeden Interpolationszyklus eine Position zu gewinnen, sodass der Steuerpunkt auf einem Bewegungsweg mit einer befohlenen Relativgeschwindigkeit sich bewegt. Auf Basis der Interpolationsdaten wird ein Bewegungsbefehl an die Servoverstärker 40 bis 44 der jeweiligen Achsen zu deren Steuerung gegeben.
-
Ein Steuerpunkt-Interpolationsprozess mittels der Steuerpunkt-Interpolationseinheit 120 wird nun im Einzelnen mit Blick auf die Ausführungsbeispiele 1 bis 3 näher beschrieben.
-
<Ausführungsbeispiel 1>
-
Diese Ausführungsform ist ein Beispiel für die Unterdrückung (Unterbindung) eines Nachlaufs (Totgangs) durch lineare Interpolation eines Steuerpunktweges eines Steuerpunktbefehls, konvertiert aus einem Werkzeugspitzenpunktbefehl in einem Werkzeugspitzenpunktsteuermodus. Eine lineare Interpolationseinheit konfiguriert einen vorgegebenen Weg als linearen Weg.
-
Im Allgemeinen wird im Betriebszustand einer Werkzeugspitzenpunktsteuerung ein Werkzeugspitzenpunktbefehl einmal in einen Steuerpunktbefehl gewandelt und eine Steuerung wird so ausgeführt, dass ein Werkzeugspitzenpunkt linear interpoliert wird. Bei diesem Ausführungsbeispiel wird aber ein Steuerpunktweg auch im Betriebszustand der Werkzeugspitzenpunktsteuerung linear interpoliert wenn ein Werkzeugspitzenpunktweg, gerechnet bei vorläufiger linearer Interpolation im Werkzeugspitzenpunktsteuerungsbetriebszustand, innerhalb eines hinnehmbaren Bereiches (nachfolgend mit „Toleranz“ bezeichnet) in Bezug auf den ursprünglich befohlenen Weg liegt.
-
3 erläutert schematisch den Prozess der linearen Interpolation eines Bewegungsweges eines Steuerpunktes gemäß einer Technik nach diesem Ausführungsbeispiel anhand der Bewegung eines Werkzeugspitzenpunktes und des Steuerpunktes.
-
In 3 zeigt <1> die Bewegung des Steuerpunktes wenn ein Bewegungsweg für den Steuerpunkt vorläufig linear interpoliert wird. Wie dargestellt, bewegt sich der Werkzeugspitzenpunkt bei vorläufiger linearer Interpolation des Weges für den Steuerpunkt auf einem vorläufigen Werkzeugspitzenpunktweg, der mit <2> einen Bogen beschreibt. Bei diesem Ausführungsbeispiel wird ermittelt, ob ein Abstand zwischen dem Werkzeugspitzenpunktweg, berechnet bei vorläufiger linearer Interpolation des Steuerpunktweges, und einem Werkzeugspitzenpunktweg <3>, welcher für die Werkzeugspitzenpunktsteuerung vorgesehen ist, innerhalb einer (vorgegebenen) Toleranz liegt.
-
Angenommen sei gemäß 4, dass die Koordinaten des Steuerpunktes M im Maschinenkoordinatensystem ΣM (XM, YM, ZM) seien und die Koordinaten des Werkzeugspitzenpunktes T im Maschinenkoordinatensystem ΣM (XT, YT, ZT) seien, während beispielsweise die Neigung des Werkzeuges bezügliche einer A-Achse AP und eine Werkzeuglängenkorrekturstrecke H ist. Der Werkzeugspitzenpunktweg kann dann aus dem Steuerpunktweg unter Verwendung der Gleichung (1) berechnet werden.
-
Der Steuerpunktweg kann auch berechnet werden durch inverse Kalkulation, ausgehend vom Werkzeugspitzenpunktweg auf Basis der Gleichung (1).
-
5 zeigt in vergrößertem Maßstab einen Abschnitt des Werkzeugspitzenpunktweges entspreched
3. Angenommen sei, dass gemäß
5 ein Einheitsvektor in Richtung des Werkzeugspitzenpunktweges <3> ein Vektor v und ein Startpunkt des Werkzeugspitzenpunktweges <3> ein Vektor P
s ist. Ein Punkt auf dem Werkzeugspitzenpunktweg <3> kann dann als Vektor p gemäß dem nachfolgenden Ausdruck dargestellt werden:
wobei 0 ≤ I ≤ Blocklänge des Weges <3>.
-
Ein Punkt auf dem vorläufigen Werkzeugspitzenpunktweg <2> sei der Vektor q. Ein Abstand d zwischen dem Punkt q und dem Werkzeugspitzenpunktweg <3> kann mit der folgenden Gleichung berechnet werden:
-
Die Steuerpunkt-Interpolationseinheit 120 ermittelt, ob der Abstand zwischen dem vorläufigen Werkzeugspitzenpunktweg <2> und dem Werkzeugspitzenpunktweg <3> innerhalb eines Toleranzbereiches liegt und hierzu wird ein Punkt qi auf dem vorläufigen Werkzeugspitzenpunktweg <2> entsprechend den Interpolationszyklusintervallen festgelegt, für jeden Punkt qi der Abstand d von dem Werkzeugspitzenpunktweg <3> mit der Gleichung (3) berechnet, und es wird ermittelt, ob der Abstand d für alle Punkt qi gleich oder kleiner ist als ein Toleranzwert.
-
6 erläutert als Flussdiagramm den Algorithmus der linearen Interpolation eines Bewegungsweges eines Steuerpunktes gemäß der Technik dieses Ausführungsbeispieles.
-
Bei Start des Verfahrens wird anfänglich ein Bewegungsbefehl für einen Werkzeugspitzenpunkt konvertiert in einen Bewegungsbefehl für einen Steuerpunkt (S601). Sodann wird unter Verwendung des Steuerpunktbefehls gemäß Schritt S601 ein vorläufiger Werkzeugspitzenpunktweg auf Basis einer linearen Interpolation eines Bewegungsweges des Steuerpunktes berechnet (S602). Sodann wird für jedes Interpolationsintervall auf dem vorläufigen Werkzeugspitzenpunktweg der Punkt qi auf Basis der vorläufigen linearen Interpolation des Bewegungsweges des Steuerpunktes gewonnen (S603). Für jeden Punkt qi wird der Abstand di von einem ursprünglich befohlenen Werkzeugspitzenweg berechnet und ermittelt, ob alle diese Abstände di im Toleranzbereich liegen (S604).
-
Wenn in Schritt S604 festgestellt wird, dass alle Abstände di im Toleranzbereich liegen, dann wird ein Bewegungsbefehl auf Basis einer linearen Interpolation des Steuerpunktes eingesetzt (S605). Gibt es irgendeinen Punkt qi, dessen Abstand di nicht innerhalb des Toleranzbereiches liegt, dann wird ein Bewegungsbefehl auf Basis einer linearen Interpolation des Werkzeugspitzenpunktes eingesetzt (S606).
-
Durch dieses Verfahren weicht im Allgemeinen der Weg für den Werkzeugspitzenpunkt vom befohlenen Weg ab. Die Abweichung des Werkzeugspitzenpunktes aufgrund der linearen Interpolation des Steuerpunktweges liegt jedoch innerhalb eines Toleranzbereiches und ein Zurückfallen des Steuerpunktes wird weniger wahrscheinlich im Vergleich mit einer herkömmlichen Werkzeugspitzenpunktsteuerung, wodurch letztlich die Bearbeitungsqualität der Oberfläche verbessert werden kann.
-
<Ausführungsbeispiel 2>
-
Bei Ausführungsbeispiel 1 wird ein Nachlauf (ein Zurückfallen) unterdrückt durch eine lineare Interpolation des Steuerpunktweges wenn der vorläufige Werkzeugspitzenpunktweg, gerechnet in dem Werkzeugspitzenpunkt-Steuermodus wenn der Steuerpunktweg vorläufig linear interpoliert wird, innerhalb eines Toleranzbereiches liegt, welcher in Bezug auf den ursprünglich befohlenen Werkzeugspitzenpunktweg definiert ist. Bei Ausführungsbeispiel 2 wird andererseits ein Steuerpunktweg auch im Werkzeugspitzenpunkt-Steuerbetriebszustand linear interpoliert wenn der Steuerpunktweg, berechnet im Werkzeugspitzenpunkt-Steuerbetriebszustand bei linearer Interpolation des Werkzeugspitzenpunktweges, innerhalb eines Toleranzbereiches liegt, welcher in Bezug auf einen Weg definiert (eingesetzt) ist, welcher durch vorläufige lineare Interpolation des Steuerpunktweges gewonnen wird.
-
7 erläutert schematisch das Verfahren einer linearen Interpolation eines Bewegungsweges eines Steuerpunktes gemäß der Technik dieses Ausführungsbeispieles anhand der Bewegung des Werkzeugspitzenpunktes und des Steuerpunktes.
-
In 7 bedeutet <1> die Bewegung des Werkzeugspitzenpunktes, der in der Werkzeugspitzenpunktsteuerung linear interpoliert wird. Wenn, wie dargestellt, der Werkzeugspitzenpunktweg linear interpoliert ist, bewegt sich der Steuerpunkt auf einem Steuerpunktweg, der durch <2> angezeigt ist und einen Bogen bildet. Bei diesem Ausführungsbeispiel wird ermittelt, ob ein Abstand zwischen dem Steuerpunktweg, berechnet mit linearer Interpolation des Werkzeugspitzenpunktweges, und einem vorläufigen Steuerpunktweg <3>, gewonnen durch vorläufige lineare Interpolation des Steuerpunktweges, innerhalb eines Toleranzbereiches liegt.
-
Die Technik der Berechnung des Werkzeugspitzenpunktweges aus dem Steuerpunktweg und die Technik der Berechnung des Steuerpunktweges aus dem Werkzeugspitzenpunktweg sind die gleichen wie bei Ausführungsbeispiel 1, sodass diese Techniken nicht erneut beschrieben werden brauchen.
-
8 ist eine vergrößerte Darstellung eines Abschnittes des Steuerpunktweges gemäß 7.
-
Gemäß
8 ist ein Einheitsvektor in Richtung des vorläufigen Steuerpunktweges <3> ein Vektor v und ein Startpunkt des vorläufigen Steuerpunktweges <3> ist ein Vektor p
s. Dann kann ein Punkt auf dem vorläufigen Steuerpunktweg <3> als Vektor p mit der folgenden Gleichung dargestellt werden:
wobei 0 ≤ I ≤ Blocklänge des Weges <3>.
-
Ein Punkt auf dem Steuerpunktweg <2> sei durch einen Vektor q dargestellt. Ein Abstand d zwischen dem Punkt q und dem vorläufigen Steuerpunktweg <3> kann dann mit folgender Gleichung berechnet werden:
-
Die Steuerpunkt-Interpolationseinheit 120 ermittelt, ob der Abstand zwischen dem Steuerpunktweg <2> und dem vorläufigen Steuerpunktweg <3> innerhalb eines Toleranzbereiches liegt und hierzu wird ein Punkt qi auf dem Steuerpunktweg <2> gemäß Interpolationszyklusintervallen bestimmt, der Abstand d für jeden Punkt qi mit Gleichung (5) berechnet, und für alle Punkte qi ermittelt, ob der Abstand d vom vorläufigen Steuerpunktweg <3> gleich oder kleiner ist als ein vorgegebener Toleranzwert.
-
9 erläutert den Algorithmus der linearen Interpolation eines Bewegungsweges eines Steuerpunktes gemäß der Technik dieses Ausführungsbeispieles.
-
Bei Beginn des Verfahren wird zunächst der Steuerpunktweg berechnet wenn ein Werkzeugspitzenpunkt linear interpoliert wird (S901). Sodann wird der Punkt qi für jeden Interpolationszyklus auf dem in Schritt S901 berechneten Steuerpunktweg gewonnen (S902). Für jeden Punkt qi wird der Abstand di von dem vorläufigen Steuerpunktweg, gewonnen durch vorläufige lineare Interpolation, berechnet und es wird geprüft, ob alle Distanzen di innerhalb eines Toleranzbereiches liegen (S903).
-
Wenn in Schritt S903 festgestellt wird, dass alle Distanzen d, innerhalb des Toleranzbereiches liegen, dann wird ein Bewegungsbefehl auf Basis einer linearen Interpolation des Steuerpunktes eingesetzt (S904). Liegt der Abstand di irgendeines Punktes qi nicht im Toleranzbereich, wird ein Bewegungsbefehl auf Basis einer linearen Interpolation des Werkzeugspitzenpunktes eingesetzt (S905).
-
Durch dieses Verfahren wird das Auftreten eines Nachlaufes (Zurückfallens) des Steuerpunktes weniger wahrscheinlich im Vergleich mit einer herkömmlichen Werkzeugspitzensteuerung und dies ergibt eine Verbesserung der Qualität der bearbeiteten Oberfläche.
-
<Ausführungsbeispiel 3>
-
Bei den Ausführungsbeispielen 1 und 2 wird ein Nachlauf (Zurückfallen) durch lineare Interpolation des Steuerpunktweges unterdrückt wenn die Abweichung eines Weges aufgrund der linearen Interpolation des Steuerpunktweges oder des Werkzeugspitzenpunktweges innerhalb einer Toleranz liegt. Bei Ausführungsbeispiel 3 erfolgt die Steuerung so, dass der Steuerpunktweg linear interpoliert wird wenn eine Interpolation eines Bewegungsblockes innerhalb einer spezifischen Anzahl von Interpolationen in Abhängigkeit von einer befohlenen Geschwindigkeit abgeschlossen ist. Die Technik dieses Ausführungsbeispieles basiert auf dem Umstand, dass dann, wenn ein Befehl für einen Bewegungsblock aufgeteilt wird in Bewegungsbefehle für jeweilige Interpolationszyklen auf Basis einer befohlenen Geschwindigkeit und der Bewegungsblock in einer kleiner Anzahl von Interpolationszyklen abgeschlossen ist, die Abweichung eines Werkzeugspitzenpunktes auch dann klein ist wenn der Steuerpunktweg in dem Bewegungsblock linear interpoliert wird, und dass bei kleiner werdender Anzahl von Interpolationen die Wirkung von Nachlauf (Totgang) ansteigt weil die Anzahl der zwischen einer Umkehr am Punkt A und einer Umkehr am Punkt B ausgeführten Interpolationszyklen gemäß 13 absinkt und die Rückschläge häufiger auftreten.
-
10 zeigt schematisch das Verfahren der linearen Interpolation eines Steuerpunktweges gemäß der Technik dieses Ausführungsbeispieles anhand der Bewegung des Werkzeugspitzenpunktes und des Steuerpunktes.
-
Wenn gemäß 10 ein Bewegungsblock entsprechend Interpolationszyklen in jeweilige Bewegungsbefehle unterteilt ist und eine Steuerung der Bewegung auf einem Steuerpunktweg beispielsweise in zwei Interpolationen gemäß <1> abgeschlossen ist, dann kann erwartet werden, dass die Wirkung auf einen Werkzeugspitzenpunktweg aufgrund einer linearen Interpolation des Steuerpunktweges klein ist. Deshalb wird der Steuerpunkt linear interpoliert gemäß <2>.
-
11 erläutert als Flussdiagramm den Algorigthmus zur linearen Interpolation eines Bewegungsweges des Steuerpunktes gemäß der Technik dieses Ausführungsbeispieles.
-
Nach Beginn des Verfahrens wird bei Verarbeitung eines Befehls für einen Bewegungsblock die von dem Steuerpunkt in einer vorgegebenen Anzahl von Interpolationszyklen zurückzulegende Strecke auf Basis einer momentan angewiesenen Geschwindigkeit des Bewegungsblockes berechnet (S1101). Angenommen sei eine angewiesene Geschwindigkeit von F pro Minute [mm/min] und ein Interpolationszyklus sei dt [ms]. Ein Bewegungsbetrag des Steuerpunktes für jeden Interpolationszyklus ergibt sich dann als F x dt/60000. Es wird dann ermittelt, ob eine für den Block befohlene Blocklänge kürzer ist als die Strecke, welche der Steuerpunkt in zwei gemäß Schritt S1101 berechneten Interpolationszyklen zurücklegen kann (S1102). Wird in Schritt S1102 festgestellt, dass die für den Block befohlene Blocklänge kürzer ist als die Strecke, welche der Steuerpunkt in zwei Interpolationszyklen zurücklegt, wird ein Befehl auf Basis einer linearen Interpolation des Steuerpunktes eingesetzt (S1103). Wird hingegen in Schritt S1102 festgestellt, dass die für den Block befohlene Blocklänge länger ist als die Strecke, welche der Steuerpunkt in zwei Interpolationszyklen zurücklegen kann, wird ein Befehl auf Basis einer linearen Interpolation des Werkzeugspitzenpunktes eingesetzt (S1104).
-
Die Anzahl der für eine Vervollständigung eines Bewegungsblockes erforderlichen Interpolationszyklen, innerhalb derer der Steuerpunkt linear interpoliert wird, kann als Parameter in dem CMOS 14 beispielsweise eingestellt werden, um flexibel auf unterschiedliche Arten der Bearbeitung reagieren zu können.
-
Durch Ausführung des erfindungsgemäßen Verfahrens wird eine Umkehr eines Steuerpunktes im Vergleich mit einer herkömmlichen Werkzeugspitzenpunktsteuerung unwahrscheinlicher und dies ergibt eine Verbesserung der Oberflächenbearbeitungsqualität.