-
ALLGEMEINER STAND DER TECHNIK
-
1. Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft eine numerische Steuerung zum Steuern von Werkzeugmaschinen und verschiedenen Industriemaschinen, und insbesondere eine numerische Steuerung zum Steuern einer Werkzeugmaschine und dergleichen basierend auf Daten in Tabellenformat.
-
2. Beschreibung der verwandten Technik
-
Bekannt ist ein numerisches Steuerungsverfahren (sogenannte elektronische Nockensteuerung) für Werkzeugmaschinen, bei dem eine mit Referenzwerten synchronisierte Vorschubachsenposition und Spindelposition in einem Speicher in Tabellenform als Befehlsdaten gespeichert werden, so dass sie den Referenzwerten entsprechen anstatt den Befehlen von jeweiligen Blöcken eines NC-Programms, um die Vorschubachsenposition, die Spindelposition und dergleichen basierend auf den im Speicher gespeicherten Daten in Tabellenform zu steuern. In Arbeitsabläufen, die auf Daten in Tabellenform basieren, kann die mit einem Referenzwert synchronisierte Position selbst dann genau gesteuert werden, wenn sich die Vorschubgeschwindigkeit des Referenzwerts ändert, und ein Werkzeug kann, anders als das herkömmliche Verfahren, frei und unabhängig von einem Bearbeitungsprogramm arbeiten. Auf diese Weise wird die Bearbeitungszeit reduziert und die Bearbeitungsgenauigkeit verbessert. Eine Zeit, eine Vorschubachsenposition oder eine Spindelposition und dergleichen werden als Referenzwerte verwendet (siehe die veröffentlichte
japanische Patentanmeldung Nr. S59-177604 ). Weiterhin ist auch ein Steuerungsverfahren bekannt, bei dem Befehlspositionen in den Daten in Tabellenform durch Gleichungen zweiten, dritten, vierten und fünften Grades verbunden werden, um Stöße und Vibrationen in Maschinen zu verhindern (siehe veröffentlichte
japanische Patentanmeldung Nr. 2003-303005 und veröffentlichte
japanische Patentanmeldung Nr. 2007-304714 ).
-
Außerdem ist ein Steuerungsverfahren bekannt, in dem dieselben Referenzwerte in den Daten in Tabellenform von jeder zu steuernden Achse verwendet werden, und es werden unterschiedliche Referenzwerte für jeweilige Elemente von Arbeitsaufgaben verwendet (siehe veröffentlichte
japanische Patentanmeldung Nr. 2012-234445 ). Weiterhin offenbart die veröffentlichte
japanische Patentanmeldung Nr. 2012-234445 auch ein Verfahren in welchem, wenn eine Werkzeugmaschine basierend auf Daten in Tabellenform betrieben wird und ein Arbeitsvorgang einer zu steuernden Maschine verzögert ist, ein Bereitschaftsbetrieb von entsprechenden Steuerungsachsen und dergleichen durchgeführt wird, so dass die Steuerungsachsen und dergleichen synchronisiert gesteuert werden.
-
Wenn bei auf Daten in Tabellenform basierenden Arbeitsabläufen die Genauigkeit der durch eine CAM ausgegebenen Daten in Tabellenform mangelhaft ist, ändert sich die Geschwindigkeit zwischen den jeweiligen Befehlspositionen erheblich und es kann schwierig werden, eine Bearbeitungsoberfläche reibungslos zu bearbeiten.
-
1 ist ein Blockdiagramm von auf Daten in Tabellenform basierenden Arbeitsabläufen, wie sie aus der herkömmlichen Technik bekannt sind (offenbart in der veröffentlichten
japanischen Patentanmeldung Nr. 2003-303005 und in der veröffentlichten
japanischen Patentanmeldung Nr. 2007-304714 ). In dem in
1 dargestellten Beispiel werden die X- und die Z-Achse mit Referenzwerten synchronisiert. Eine numerische Steuerung, die Arbeitsabläufe basierend auf Befehlsdaten ausführt, die als Daten in Tabellenform gespeichert sind, umfasst einen Referenzwertzähler
3, der Signale zählt, die einen Referenzwert bilden wie etwa eine Zeit, eine Spindelposition und eine Vorschubachsenposition, eine X-Achsenwegtabelle Tx, eine Z-Achsenwegtabelle Tz, eine Interpolationsprozesseinheit
4x für die X-Achsenwegtabelle, eine Interpolationsprozesseinheit
4z für die Z-Achsenwegtabelle, einen X-Achsenservomotor
5x für die Vorschubachse und einen Z-Achsenservomotor
5z für die Vorschubachse. Die Die X-Achsenwegtabelle Tx und die Z-Achsenwegtabelle Tz werden in einem Speicher in einer numerischen Steuerung oder einer über ein Netzwerk mit der numerischen Steuerung verbundenen Speichervorrichtung bereitgestellt. Die einem Referenzwert als Befehlsdatenwert entsprechende X-Achsenposition und die dem Referenzwert entsprechende Z-Achsenposition werden in der X-Achsenwegtabelle Tx beziehungsweise der Z-Achsenwegtabelle Tz als Daten in Tabellenform eingerichtet und gespeichert. Nachfolgend werden die in den jeweiligen Achsenwegtabellen gespeicherten Befehlsdaten als Wegtabellendaten bezeichnet. Die Interpolationsprozesseinheit
4x für die X-Achsenwegtabelle und die Interpolationsprozesseinheit für die Z-Achsenwegtabelle lesen Daten in Tabellenform, die in der X-Achsenwegtabelle Tx und der Z-Achsenwegtabelle Tz gespeichert sind, basierend auf einem Referenzwert, der ein Eingabewert des Referenzwertzählers
3 ist, führen einen Interpolationsprozess durch und geben die interpolierten Daten in Tabellenform an den X-Achsenservomotor
5x und den Z-Achsenservomotor
5z aus, so dass der X-Achsenservomotor
5x und der Z-Achsenservomotor
5z bei mit den mit dem Referenzwert synchronisierten X-Achsen- und Z-Achsenpositionen angetrieben werden.
-
Wenn beispielsweise solche Wegtabellendaten, wie in 2 dargestellt, in der X-Achsenwegtabelle Tx und der Z-Achsenwegtabelle Tz gespeichert sind und ein Werkstück von einer Werkzeugmaschine bearbeitet wird, die basierend auf den Wegtabellendaten durch eine numerische Steuerung gesteuert wird, dann folgt der Werkzeugweg einem wie in 3 dargestellten Weg.
-
Die X-Achsenposition und die Z-Achsenposition befinden sich am Koordinatenursprung „0,000” wenn der Referenzwert L = 0,0 beträgt und die X- und die Z-Achse werden angetrieben, so dass sich die X-Achsenposition vom Koordinatenursprung aus bewegt, um die Position „0,200” zu erreichen, wenn der Referenzwert L = 100,0 erreicht, und die Z-Achsenposition bewegt sich vom Koordinatenursprung aus, um die Position „3,000” zu erreichen, wenn der Referenzwert L = 150,0 erreicht. Dies führt dazu, dass zum Zeitpunkt, wenn der Referenzwert L = 100.0 erreicht, die X-Achsenposition „0.200” ist und die Z-Achsenposition die Position „2.000” im Verlauf der Bewegung erreicht, um die Position „3.000” zu erreichen, wenn der Referenzwert L = 150,0 ist. Das heißt, die X-Achsen- und Z-Achsenpositionen erreichen P1(X, Z) = (0,200, 2,000) beim Referenzwert L = 100,0. Die Z-Achse wird angetrieben, so dass sich die X-Achsenposition von der Position P1 aus bewegt, um die Position „3,000” beim Referenzwert L = 200,0 zu erreichen und die Position „1,600” an der Position P2 zu erreichen, die dem Referenzwert L = 150,0 entspricht, bei dem die Z-Achsenposition die Zielposition „3.000” erreicht. Die Z-Achse wird angetrieben, so dass sich die Z-Achsenposition von der Position P2 aus bewegt, um die Position „0,000” beim Referenzwert L = 200,0 zu erreichen, und die X-Achsenposition und die Z-Achsenposition erreichen die Positionen P3 „3,000” beziehungsweise „0,000” beim Referenzwert L = 200,0.
-
Wenngleich die Bearbeitung gemäß einem solchen Werkzeugweg ausgeführt wird, können Schläge auftreten und es können Streifen auf einer fertigbearbeiteten Oberfläche eines Werkstücks sichtbar werden, da sich die Geschwindigkeit am Koordinatenursprung, den Positionen P1 und P2 und an der Position P3 abrupt ändert.
-
Um dieses Problem zu beseitigen werden gemäß der veröffentlichten
japanischen Patentanmeldung Nr. 2003-303005 und der veröffentlichten
japanischen Patentanmeldung Nr. 2007-304714 die Befehlspositionen durch Kurven von Gleichungen des vierten bis fünften Grades verbunden, und das Werkzeug wird entlang dieser Kurven bewegt, um dadurch das Auftreten von Schlägen zu vermeiden und eine glatte fertigbearbeitete Oberfläche zu erhalten. Obwohl bei den in der veröffentlichten
japanischen Patentanmeldung Nr. 2003-303005 und der veröffentlichten
japanischen Patentanmeldung Nr. 2007-304714 offenbarten Verfahren eine glatte fertigbearbeitete Oberfläche erreicht werden kann, da ein Befehlswerkzeugweg durch Verbinden aller Befehlspositionen durch Kurven vierten bis fünften Grades korrigiert wird, müssen jedoch die Bediener die Wegtabellendaten korrigieren, um die Verfahren für bestehende Wegtabellendaten anzuwenden.
-
KURZDARSTELLUNG DER ERFINDUNG
-
Es ist daher eine Aufgabe der vorliegenden Erfindung eine numerische Steuerung bereitzustellen, die eine Glättungsfunktion zum Begrenzen eines Korrekturbereichs eines Werkzeugwegs aufweist, ohne dass die Bediener selber vorhandene Wegtabellendaten in auf Daten in Tabellenform (Wegtabellendaten) basierenden Arbeitsabläufen einer Werkzeugmaschine korrigieren müssen, um dadurch eine glatte fertigbearbeitete Oberfläche zu erhalten, während der festgelegte Werkzeugweg soweit wie möglich aufrecht erhalten wird.
-
Die vorliegende Erfindung stellt eine numerische Steuerung bereit, die eine Glättungsfunktion in auf Daten in Tabellenform basierenden Arbeitsabläufen aufweist, die dazu eingerichtet ist, eine Zeit, eine Achsenposition oder eine Spindelposition als Referenzwert zu nutzen, Positionen von mehreren mit dem Referenzwert synchronisierten als Befehlsdaten in Tabellenform in einem Speicher oder einer über ein Netzwerk verbundenen Speichervorrichtung zu speichern, um so dem Referenzwert zu entsprechen, die Daten in Tabellenform sequenziell zu lesen, und die Positionen einer mit dem Referenzwert synchronisierten Achse in synchronisierter Weise zu steuern, wobei die numerische Steuerung umfasst: eine Tabellenformdaten-Vorabrufungseinheit, die dazu eingerichtet ist, die Daten in Tabellenform der mehreren zu synchronisierenden Achsen parallel vorab abzurufen; eine Werkzeugweg-Berechnungseinheit, die dazu eingerichtet ist, einen Werkzeugweg mittels der vorab abgerufenen Daten in Tabellenform zu berechnen; eine Geschwindigkeitsänderungspunkt-Erfassungseinheit, die dazu eingerichtet ist, Geschwindigkeitsänderungspunkte im Werkzeugweg zu erfassen; eine Korrekturbereichs-Festlegungseinheit, die dazu eingerichtet ist, einen Korrekturbereich am Geschwindigkeitsänderungspunkt durch eine Entfernung vom Geschwindigkeitsänderungspunkt festzulegen; eine Grenzpositions-Berechnungseinheit, die dazu eingerichtet ist, zwei Grenzpositionen vor und nach dem Geschwindigkeitsänderungspunkt auf dem Werkzeugweg zu berechnen, wobei die Positionen innerhalb und außerhalb des Korrekturbereichs liegen; eine Werkzeugweg-Korrektureinheit, die dazu eingerichtet ist, die zwei berechneten Grenzpositionen vor und nach dem Geschwindigkeitsänderungspunkt durch einen geglätteten Werkzeugweg zu verbinden; und eine Tabellenformdaten-Korrektureinheit, die dazu eingerichtet ist, die Daten in Tabellenform basierend auf dem korrigierten Werkzeugweg zu korrigieren.
-
Die Werkzeugweg-Korrektureinheit kann die zwei Grenzpositionen durch eine glatten kurvenförmigen Werkzeugweg mittels einer mehrdimensionalen Funktion, einer trigonometrischen Funktion oder einer Kombination davon verbinden.
-
Die Korrekturbereichs-Zuweisungseinheit kann die Entfernung vom Geschwindigkeitsänderungspunkt als Parameter festlegen oder mittels eines Eingabesignals oder eines Programmbefehls festlegen.
-
Wenn der Werkzeugweg auf einer 2-dimensionalen Ebene vorhanden ist, kann die Grenzpositions-Berechnungseinheit als Grenzpositionen die Schnittpunkte zwischen dem Werkzeugweg und einem Kreis mit einem der festgelegten Entfernung entsprechendem Radius und einem auf dem Geschwindigkeitsänderungspunkt liegenden Mittelpunkt berechnen. Wenn der Werkzeugweg in einem dreidimensionalen Raum vorhanden ist, kann die Grenzpositions-Berechnungseinheit als Grenzpositionen die Schnittpunkte zwischen dem Werkzeugweg und einer kugelförmigen Oberfläche mit einem der zugewiesenen Entfernung entsprechendem Radius und einem auf dem Geschwindigkeitsänderungspunkt liegenden Mittelpunkt berechnen.
-
Die numerische Steuerung kann ferner eine Korrekturbereichs-Einstelleinheit umfassen, die dazu eingerichtet ist, einen Radius des Korrekturbereichs auf einen halben Abstand zwischen den Geschwindigkeitsänderungspunkten einzustellen, wenn sich der durch die Korrekturbereichs-Festlegungseinheit festgelegte Korrekturbereich mit Korrekturbereichen vor und nach dem Korrekturbereich überdeckt.
-
Die Tabellenformdaten-Vorabrufungseinheit kann nachfolgende Befehlsdaten einer Achse lesen, die einen kleinsten Referenzwert unter den Referenzwerten der jeweiligen Elemente von Befehlsdaten, die sequenziell gelesen wurden, aufweist.
-
Mit der oben beschriebenen Ausgestaltung wird ein kleiner Bereich nahe des Geschwindigkeitsänderungspunkts des in den Daten in Tabellenform zugewiesenen Werkzeugwegs korrigiert, um einen glatten Werkzeugweg zu erhalten. Dadurch ist es möglich, das Auftreten von Schlägen, die von einer abrupten Geschwindigkeitsänderung herrühren, zu verhindern und eine glatte fertigbearbeitete Oberfläche zu erhalten. Zudem ist der Korrekturbereich des Werkzeugwegs klein, und die jeweiligen Achsen werden angetrieben, indem die anderen Daten außerhalb des kleinen Korrekturbereichs mit den Befehls-Referenzwerten in den Daten in Tabellenform vor der Korrektur synchronisiert werden. Somit wird die Synchronisation zwischen den Referenzwerten und den jeweiligen Achsen vollständig aufrechterhalten.
-
Da die Daten in Tabellenform durch die numerische Steuerung automatisch korrigiert werden, wenn Bediener den Korrekturbereich festlegen, kann die vorliegende Erfindung bei bestehenden Daten in Tabellenform angewendet werden.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Die oben beschriebenen und andere Aufgaben und Merkmale der vorliegenden Erfindung werden ersichtlich aus der folgenden Beschreibung von Ausführungsformen mit Bezug auf die beigefügten Zeichnungen, wobei:
-
1 ein Steuerungsblockdiagramm ist, das zeigt, wenn eine Werkzeugmaschine basierend auf Daten in Tabellenform betreiben wird;
-
2 ein Beispiel von Befehlsdaten ist, die in einer Wegtabelle im Blockdiagramm von 1 gespeichert werden;
-
3 ein erläuterndes Diagramm eines Werkzeugwegs ist, der auf den in der in 2 dargestellten Wegtabelle gespeicherten Befehlsdaten basiert;
-
4 ein erläuterndes Diagramm von Schnittpunkten eines Korrekturbereichskreises und eines Werkzeugwegs ist, die den Startpunkt und den Endpunkt eines Korrekturbereichs bestimmen;
-
5 ein Diagramm ist, das ein Beispiel von Befehlsdaten einer korrigierten Wegtabelle darstellt;
-
6 ein erläuterndes Diagramm eines korrigierten Werkzeugwegs ist;
-
7 ein erläuterndes Diagramm ist, um ein Beispiel zum Einstellen eines Radiuswerts eines Korrekturbereichs zu beschreiben;
-
8 ein erläuterndes Diagramm von Schnittpunkten eines Werkzeugwegs und einer kugelförmigen Oberfläche eines Korrekturbereichs in einem 3-dimensionalen Raum ist;
-
9 ein Blockdiagramm von wesentlichen Teilen einer numerischen Steuerung ist, die Arbeitsabläufe auf Basis der Wegtabelle gemäß einer Ausführungsform der vorliegenden Erfindung ausführt;
-
10 ein Ablaufdiagramm ist, das einen Algorithmus eines Tabellenformdaten-Korrekturprozesses gemäß einer Ausführungsform der vorliegenden Erfindung darstellt; und
-
11 ein Ablaufdiagramm ist, das einen Algorithmus eines Prozesses zum Berechnen des Startpunkts und des Endpunkts eines Korrekturbereichs im Tabellenformdaten-Korrekturprozess.
-
AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
Zunächst wird eine Übersicht der Arbeitsablaufsteuerung gemäß einer Ausführungsform der vorliegenden Erfindung beschrieben. In der vorliegenden Ausführungsform werden Wegtabellen aller zu synchronisierenden Achsen, die einem Werkzeugweg zugeordnet sind, vorab parallel gelesen, um den Werkzeugweg zu berechnen, ein Geschwindigkeitsänderungspunkt wird erfasst, und es wird ein Teil des Werkzeugwegs innerhalb eines vorbestimmten Bereichs vor und nach dem Geschwindigkeitsänderungspunkt korrigiert. Da es in Arbeitsabläufen, die auf Daten in Tabellenform basieren, sehr wichtig ist einen Referenzwert mit einem Koordinatenwert einer mit dem Referenzwert zu synchronisierenden Achse zu synchronisieren, ist es notwendig zu gewährleisten, dass die Synchronisation nach der Korrektur aufrechterhalten wird. Aufgrund dessen wird ein Bereich (Korrekturbereich), in dem die Korrektur durchgeführt wird, auf einen vorbestimmten Abstand zum Geschwindigkeitsänderungspunkt beschränkt, und die Synchronisation zwischen dem Referenzwert und den Koordinatenwerten von jeweiligen Achsen wird für die anderen Positionen, bei den keine Korrektur ausgeführt wird, vollständig aufrecht erhalten.
-
In Arbeitsabläufen, die auf Daten in Tabellenform gemäß der in 1 dargestellten verwandten Technik basieren, zeigt sich ein Werkzeugweg vor der Korrektur basierend auf den in der in 2 dargestellten X-Achsenwegtabelle Tx und der Z-Achsenwegtabelle Tz gespeicherten Daten in Tabellenform wie er in der wie oben beschrieben 3 dargestellt ist. In diesem Werkzeugweg kann sich die Geschwindigkeit an bestimmten Befehlspunkten (Referenzwerte L = 0,0, L1 = 100,0, L2 = 150,0 und L3 = 200,0) in jeder der X-Achsenwegtabelle Tx und der Z-Achsenwegtabelle Tz, die dem Werkzeugweg zugeordnet sind, ändern. Ob tatsächlich eine Geschwindigkeitsänderung vorliegt kann durch Vergleich von Geschwindigkeitskomponenten vor und nach dem Befehlspunkt bestimmt werden. Wenn beispielsweise, wie in dem in den 2 und 3 dargestellten Beispiel, der Referenzwert die Zeit (msec) ist und die X-Achsen- und Z-Achsenpositionen die Einheit „mm” aufweisen, werden die X-Achsen- und Z-Achsen-Geschwindigkeitskomponenten vor und nach dem Referenzwert L = 100,0 wie folgt berechnet. Wenn der Referenzwert eine andere Achsenposition ist, wie etwa eine Spindelposition, werden die X-Achsen- und Z-Achsen-Geschwindigkeitskomponenten als die dem Referenzwert entsprechenden Geschwindigkeitskomponenten berechnet.
Geschwindigkeit vor L = 100,0 (Position P1)
X-Achsenkomponente = 0,200 (mm)/100 (msec) = 0,002 (mm/msec)
-
Die Z-Achsenkomponente befindet sich Bewegung, um 3,000 (mm) bei L = 150,0 (msec) zu erreichen. Somit gilt
Z-Achsenkomponente = 3,000 (mm)/150,0 (msec) = 0,020 (mm/msec).
Geschwindigkeit nach L = 100,0
X-Achsenkomponente = 2,800 (mm)/100 (msec) = 0,028 (mm/sec)
-
Die Z-Achsenkomponente wird nicht geändert. Somit gilt
Z-Achsenkomponente = 3,000 (mm)/150,0 (msec) = 0,020 (mm/msec).
-
Da die X-Achsenkomponenten vor und nach dem Referenzwert L = 100,0 unterschiedlich sind kann bestimmt werden, dass die Position P1 ein Geschwindigkeitsänderungspunkt ist. Auf diese Weise ist es durch Vergleichen der Geschwindigkeitskomponenten vor und nach einem Befehlspunkt möglich zu bestimmen, ob ein bestimmter Punkt ein Geschwindigkeitsänderungspunkt ist.
-
Nachfolgend wird nur ein vorbestimmter Bereich um einen Geschwindigkeitsänderungspunkt herum korrigiert, um einen Korrekturbereich zu beschränken, in dem der Werkzeugweg vor und nach dem Geschwindigkeitsänderungspunkt korrigiert wird.
-
Der Korrekturbereich wird definiert durch Zuweisen eines Radius r, Berechnen der Schnittpunkte zwischen dem Werkzeugweg und einem Kreis mit dem Radius r, und durch Nutzen eines Bereichs zwischen den Schnittpunkten als den Korrekturbereich. Das heißt, die Schnittpunkte zeigen Grenzposition auf dem Werkzeugweg zwischen einer Fläche innerhalb des Korrekturbereichs und einer Fläche außerhalb des Korrekturbereichs an, und die Berechnung der Schnittpunkte führt dazu, dass die Grenzpositionen berechnet werden. Wenn beispielsweise ein Korrekturbereich (Radius r) 0,100 ist, ist ein in 4 durch eine gestrichelte Linie dargestellter Kreis ein Korrekturbereich beim Referenzwert L = 100,0 (Geschwindigkeitsänderungspunkt P1).
-
Ein Schnittpunkt 1 wird als Schnittpunkt zwischen einer geraden Linie, die einen Geschwindigkeitsänderungspunkt P0 (X = 0,000, Z = 0,000) und einen Geschwindigkeitsänderungspunkt P1 (X = 0,200, Z = 2,000) verbindet, und einem Kreis der den Radius 0,100 und einem Mittelpunkt auf dem Geschwindigkeitsänderungspunkt P1 (X = 0,200, Z = 2,000) aufweist, berechnet, und ein Schnittpunkt 2 wird berechnet als ein Schnittpunkt zwischen dem Kreis und einer geraden Linie, die den Geschwindigkeitsänderungspunkt P1 (X = 0,200, Z = 2,000) und eine Position P2 (X = 1,600, Z = 3,000), die der nächste Geschwindigkeitsänderungspunkt ist, verbindet.
Koordinate (X, Z) des Schnittpunkts 1 = (0,1900496..., 1,9004963....
-
Der Referenzwert L zum Zeitpunkt, wenn das Werkzeug den Schnittpunkt 1 erreicht, wird als ein Wert berechnet, bei dem die Z-Achsenposition den Z-Achsen-Koordinatenwert 1,9004963... des Schnittpunkts 1 erreicht, da sich die Z-Achsenposition von 0,000 zu 2,000 proportional mit dem sich von L = 0,0 auf L = 100,0 ändernden Referenzwert ändert.
Referenzwert L des Schnittpunkts 1 = 1,9004963... × 100/2,000 = 95,0248140... (msec)
-
Gleichermaßen gilt
Koordinate (X, Z) des Schnittpunkts 2 = (0,2813733..., 1,0581238...) Referenzwert L des Schnittpunkts 2 = 2,0581238... × 50/1,00 = 102,9061910... (msec)
-
Nachfolgend wird ein X-Achsenwerkzeugweg, dessen Startpunkt und Endpunkt die Schnittpunkte 1 und 2 der solchermaßen berechneten Grenzpositionen sind, zu den Befehlsdaten der X-Achsenwegtabelle Tx zugefügt, um die X-Achsenwegtabelle Tx zu korrigieren. Nachfolgend wird ein Werkzeugweg, dessen Startpunkt und Endpunkt als Befehle definiert werden, als Weg bezeichnet. Da sich der Schnittpunkt 1 auf einer Linie (Weg) befindet, die den Geschwindigkeitsänderungspunkt P0 (X = 0,000, Z = 0,000) und den Geschwindigkeitspunkt P1 (X = 0,200, Z = 2,000) verbindet, ist die X-Achsengeschwindigkeit auf dem Weg vom Geschwindigkeitsänderungspunkt P0 (L = 0,000, X = 0,000) zum Schnittpunkt 1 (L = 95,0248140..., X = 0,1900496...) die gleiche Geschwindigkeit (0,002 mm/sec) wie zuvor, und der Weg vom Schnittpunkt 1 (L = 95,0248140..., X = 0,1900496...) zum Schnittpunkt 2 (L = 102,9061910..., X = 0,2813733...) ist durch eine derartige kubische Funktion verbunden, dass die ursprüngliche Geschwindigkeit die X-Achsengeschwindigkeit (0,002 mm/msec) des vorhergehenden Wegs am Schnittpunkt 1 ist und die Endgeschwindigkeit die X-Achsengeschwindigkeit (0,028 mm/msec) des Wegs vom Geschwindigkeitsänderungspunkt P1 zum Geschwindigkeitsänderungspunkt P2 ist. Zudem bewegt sich das Werkzeug auf dem Weg vom Schnittpunkt 2 (L = 102,9061910..., X = 0,2813733...) zum Geschwindigkeitsänderungspunkt P2 (L = 150,0, X = 1,600) mit derselben Geschwindigkeit (0,028 mm/msec), wie auf dem vorhergehenden Weg vom Geschwindigkeitsänderungspunkt P1 zum Geschwindigkeitsänderungspunkt P2 definiert. Die Befehlsdaten der X-Achsenwegtabelle, in welchen der Weg vom Schnittpunkt 1 zum Schnittpunkt 2 hinzugefügt ist, sind wie in 5 dargestellt (5 stellt die Daten von zugefügten und korrigierten Positionen dar).
-
Zudem werden bei einer Änderung der X-Achsengeschwinndigkeit vor und nach einem Korrektur-Zielgeschwindigkeitsänderungspunkt die Befehlsdaten der Z-Achsenwegtabelle Tz ebenfalls in gleicher Weise korrigiert. Da in dem oben beschriebenen Beispiel die Z-Achsengeschwindigkeit 0,020 mm/msec beträgt und sich nicht vor und nach dem Korrektur-Zielgeschwindigkeitsänderungspunkt P1 ändert, werden die Befehlsdaten der Z-Achsenwegtabelle Tz nicht korrigiert.
-
Da eine Technik zum Verbinden zweier Punkte durch eine kubische Funktion in Arbeitsabläufen auf der Basis von Daten in Tabellenform in der veröffentlichten
japanischen Patentanmeldung Nr. 2003-3030004 offenbart und bekannt ist, wird deren Beschreibung nicht bereitgestellt. Zudem können zwei Punkte durch eine komplexere Funktion, wie eine Funktion vierten oder fünften Grades, verbunden werden. In diesem Fall wird bei einer Änderung einer Beschleunigung zwischen zwei Punkten die Beschleunigung kontinuierlich geändert. Außerdem kann ein Werkzeugweg korrigiert werden, um durch Geschwindigkeitsänderungspunkte zu laufen. Eine Technik zum Verbinden zweier Punkte durch eine solche Funktion vierten Grades oder fünften Grades in Arbeitsabläufen auf der Basis von Daten in Tabellenform ist in der veröffentlichten
japanischen Patentanmeldung Nr. 2007-304714 offenbart und ist bekannt. Weiterhin kann als ein ähnliches Korrekturverfahren ein Verfahren eingesetzt werden, das eine trigonometrische Funktion verwendet, sowie ein Verfahren, das mehrere Kombinationen von Funktionen verwendet.
-
Wenn Arbeitsabläufe, die auf Daten in Tabellenform basieren, mittels der auf diese Weise korrigierten Wegtabelle ausgeführt werden, wird der Werkzeugweg im Korrekturbereich geglättet korrigiert, wie in 6 dargestellt, und was den nicht-korrigierten Zielwerkzeugweg betrifft, wird die Synchronisation zwischen den Referenzwerten L und den jeweiligen Achsenkoordinatenwerten vollständig aufrechterhalten, wie bei der herkömmlichen Technik.
-
Obgleich eine Korrektur am Geschwindigkeitsänderungspunkt P1 (Referenzwert L = 100,0) beschrieben wurde, wird dieselbe Korrektur an allen Geschwindigkeitsänderungspunkten ausgeführt. Zudem kann der Korrekturbereich dynamisch geändert werden, indem der Radius r des Korrekturbereichs als ein Parameter festgelegt wird oder indem er, wie erforderlich, mittels eines Programmbefehls, eines Eingabesignals oder dergleichen festgelegt wird. Wenn eine Reihe von Geschwindigkeitsänderungspunkten in einem sehr kleinen Bereich auftreten, können sich weiterhin die Korrekturbereiche gegenseitig überlappen. Um dies zu verhindern, wird der Wert des Radius r des Korrekturbereichs eingestellt. Der Radius des Korrekturbereichs wird beispielsweise in folgender Weise eingestellt.
-
In dem Fall in dem der Befehlsradius r ≤ 0,5 × Abstand zwischen den Geschwindigkeitsänderungspunkten ist, wird der Wert des Befehlsradius r so eingesetzt wie er ist.
-
In dem Fall in dem der Befehlsradius r > 0,5 × Abstand zwischen den Geschwindigkeitsänderungspunkten ist, wird der zu verwendende Radiuswert auf „0,5 × Abstand zwischen den Geschwindigkeitsänderungspunkten” eingestellt.
-
7 ist ein erläuterndes Diagramm eines Werkzeugwegs, das zeigt, wenn der Korrekturbereich auf diese Weise eingestellt wird. Da der Abstand zwischen den Geschwindigkeitsänderungspunkten groß ist und der Abstand gleich oder größer als der doppelte als Parameter festgelegte Befehlsradius ist, oder indem ein Programmbefehl oder ein Eingabesignal verwendet wird, wird in den Korrekturbereichen A1, A2 und A5 der Befehlsradius r als Radius des Korrekturbereichs verwendet. Da jedoch in den Korrekturbereichen A3 und A4 der Abstand zwischen Geschwindigkeitsänderungspunkten kleiner als der doppelte Befehlsradius r ist, wird 1/2 des Abstands D zwischen den Geschwindigkeitsänderungspunkten als Radius r' des Korrekturbereichs (das heißt r' = 0,5 D) verwendet.
-
Obwohl in obenstehender Beschreibung ein Geschwindigkeitsänderungspunkt als ein Punkt definiert wird, an dem sich eine Bewegungsrichtung ändert, kann ein Punkt, an dem sich eine Bewegungsrichtung nicht ändert, sondern sich ein Absolutwert (das heißt, die Geschwindigkeit) einer Geschwindigkeit ändert (zum Beispiel, eine X-Achsengeschwindigkeitskomponente und eine Z-Achsengeschwindigkeitskomponente ändern sich im gleichen Verhältnis und eine kombinierte Geschwindigkeit der X-Achsen- und Z-Achsenkomponenten ändert sich), als der Geschwindigkeitsänderungspunkt definiert werden, und es kann dieselbe Korrektur wie oben beschrieben durchgeführt werden. Dadurch ist es möglich, das Auftreten von Schlägen und eine nachteilige Auswirkung auf die fertige Oberflächenqualität aufgrund einer abrupten Geschwindigkeitsänderung zu unterdrücken.
-
Darüber hinaus kann die vorliegende Erfindung auf einen 3-dimensionalen Raum angewendet werden und kann auf 3-dimensionales Bearbeiten in Übereinstimmung mit Arbeitsabläufen auf der Basis von Daten in Tabellenform angewendet werden.
-
8 ist ein erläuterndes Diagramm der Korrektur eines Werkzeugwegs vor und nach einem Geschwindigkeitsänderungspunkt in einem 3-dimensionalen Raum von X-, Y- und Z-Achsen.
-
(Cx, Cy, Cz) ist die XYZ-Koordinate eines Korrektur-Zielgeschwindigkeitsänderungspunkts.
-
(Vx, Vy, Vz) ist ein Geschwindigkeitsvektor von einem vorherigen Geschwindigkeitsänderungspunkt des Korrektur-Zielgeschwindigkeitspunkts.
-
(V'x, V'y, V'z) ist ein Geschwindigkeitsvektor zu einem nächsten Geschwindigkeitsänderungspunkt des Korrektur-Zielgeschwindigkeitsänderungspunkts.
-
In diesem Fall wird eine gerade Linie, die den vorherigen Geschwindigkeitsänderungspunkt und den Korrektur-Zielgeschwindigkeitsänderungspunkt verbindet, durch den nachfolgenden Ausdruck (1) ausgedrückt. (X, Y, Z) = (Cx, Cy, Cz) + t(Vx, Vy, Vz) (1)
-
Somit wird der Koordinatenwert (X, Y, Z) eines Punktes auf der geraden Linie durch den nachfolgenden Ausdruck (2) ausgedrückt. (X, Y, Z) = (Cx + t·Vx, Cy + t·Vy, Cz + t·Vz) (2)
-
Ein Korrekturbereich wird durch eine kugelförmige Oberfläche mit dem Radius r festgelegt, und die kugelförmige Oberfläche mit Mittelpunkt auf dem Korrektur-Zielgeschwindigkeitsänderungspunkt (Cx, Cy, Cz) wird durch den nachfolgenden Ausdruck (3) ausgedrückt. (X – Cx)2 + (Y – Cy)2 + (Z – Cz)2 = r2 (3)
-
Wenn der Koordinatenwert (X, Y, Z) des Punkts auf der in Ausdruck (2) definierten geraden Linie in den Ausdruck (3) eingesetzt wird, wird der Wert „t” an Schnittpunkten (Grenzpositionen) zwischen der geraden Linie und der kugelförmigen Oberfläche wie in Ausdruck (4) definiert berechnet. t = ±r/[(√(Vx2 + Vy2 + Vz2)] (4)
-
Obwohl zwei Schnittpunkte zwischen der geraden Linie und der geraden Linie und der kugelförmigen wie im Ausdruck (4) definiert berechnet werden, wird, da der Schnittpunkt 1 auf einer sich vom vorherigen Geschwindigkeitsänderungspunkt zum Korrektur-Zielgeschwindigkeitsänderungspunkt erstreckenden geraden Linie vorliegend näher an der negativen Seite des Vektor liegt als der Korrektur-Zielgeschwindigkeitsänderungspunkt, der Wert von „t” des Schnittpunkts 1 durch den nachfolgenden Ausdruck (5) ausgedrückt. t = –r/[(√(Vx2 + Vy2 + Vz2)] (5)
-
Wenn somit „t” im Ausdruck (5) in den Ausdruck (2) eingesetzt wird, wird der Koordinatenwert des Schnittpunkts 1 als der nachfolgende Ausdruck (6) ausgedrückt.
-
-
Der Wert von „t” und der Koordinatenwert am Schnittpunkt 2 werden in ähnlicher Weise berechnet. Da der Schnittpunkt 2 vorliegend näher an der positiven Seite des Vektors liegt als der Korrektur-Zielgeschwindigkeitsänderungspunkt, wird der Wert von „t” am Schnittpunkt 2 durch den nachfolgenden Ausdruck (7) ausgedrückt, und der Koordinatenwert des Schnittpunkts 2 wird durch den nachfolgenden Ausdruck (8) ausgedrückt.
t = r/[(√(V'x2 + V'y2 + V'z2)] (7)
-
Außerdem werden die Werte der Referenzwerte L, bei denen das Werkzeug die Schnittpunkte 1 und 2 erreicht, als Werte berechnet, die durch Addieren der jeweiligen „t”-Werte zu den Referenzwerten am Korrektur-Zielgeschwindigkeitsänderungspunkt erhalten werden.
-
Auf diese Weise werden die Referenzwerte und die Koordinatenwerte der X-Achsen-, Y-Achsen- und Z-Achsenwegtabellen am Schnittpunkt 1 und 2, die die Grenzpositionen sind, berechnet. In ähnlicher Weise wie bei einer Korrektur in einer 2-dimensionalen Ebene wird somit der Werkzeugweg korrigiert, so dass die Schnittpunkte 1 und 2 in den Wegtabellen mittels einer mehrdimensionalen Funktion oder einer trigonometrischen Funktion oder einer Kombination daraus durch eine Kurve geglättet verbunden werden.
-
Um einen Werkzeugweg am Geschwindigkeitsänderungsweg zu korrigieren ist es erforderlich, die Daten von Wegtabellen zu korrigieren, bevor die in den Wegtabellen gespeicherten Befehlsdaten ausgeführt werden, und die Wegtabellen vorab abzurufen. Das vorherige Abrufen von Wegtabellen involviert das Lesen der Referenzwerte L = 0 aus den jeweiligen Achsenwegtabellen, das Lesen von nachfolgenden Befehlsdaten einer Achse, deren Referenzwert der kleinste unter den gelesenen Werten ist, und das Lesen der Befehlsdaten, wenn der kleinste Referenzwert mehreren Achsen zugeordnet ist (wenn derselbe Referenzwert mehreren Achsen zugeordnet ist). Wenn der Vorabruf mindestens dreimal in diesem Verfahren ausgeführt wird, werden die Befehlsdaten von drei Referenzwerten gelesen, und eine Achse für die drei Referenzwerte gelesen werden, kann ein Geschwindigkeitsänderungspunkt an einem dem letzten Referenzpunkt vorhergehenden Referenzpunkt werden. Wenn beispielsweise die Referenzwerte L0, L1 und L2 nur aus der Wegtabelle einer bestimmten Achse (zum Beispiel der X-Achse) bei dreimaligem vorherigem Abrufen gelesen werden, ist es auch möglich, da es möglich ist, die Werkzeugwege (Wege) für die Referenzwerte L0 bis L1 und L1 bis L2 zu kennen, zu bestimmen, ob der dem Referenzpunkt L1 entsprechende Punkt ein Geschwindigkeitsänderungspunkt ist. Da sich die anderen Achsenpositionen (zum Beispiel die Y-Achse und die Z-Achse) in diesem Fall am Referenzpunktwert L1 bewegen, findet keine Geschwindigkeitsänderung statt. Außerdem, wenn der Referenzwert L1 für die anderen Achsen mit dem zweiten Vorabruf gelesen wird (das heißt, derselbe Referenzwert L1 wird mehreren Achsen zugeordnet), ist es möglich, da die nächsten Befehlsdaten für die Achsen gelesen werden, den Weg vor und nach dem Referenzwert L1 zu kennen und zu bestimmen, ob der Referenzwert L1 ein Geschwindigkeitsänderungspunkt ist. Danach ist es jedes Mal, wenn ein Vorabruf ausgeführt wird, möglich zu bestimmen, ob eine Geschwindigkeitsänderung bei den Referenzwerten L2, L3, usw. auftritt. Hier gilt L0 < L1 < L2 < L3 <... usw.
-
Wie in 7 dargestellt ist es in diesem Fall notwendig zu bestimmen, ob eine Reihe von Geschwindigkeitsänderungspunkten in sehr kleinen Abständen erscheinen, indem bestimmt wird, ob sich ein Korrekturbereich einer der Geschwindigkeitsänderungspunkte mit einem Korrekturbereich eines Geschwindigkeitsänderungspunkts vor und nach dem Geschwindigkeitsänderungspunkt überdeckt. Somit werden zwei oder mehr nicht-korrigierte Geschwindigkeitsänderungspunkte berechnet, und es wird ein Korrekturbereich eines Geschwindigkeitsänderungspunkts, an dem der Referenzwert am kleinsten ist, bestimmt. Wenn ein Befehl, der keine Geschwindigkeitsänderung involviert, in dem Vorabrufergebnis enthalten ist, wird, da ein solcher Befehl keinen Einfluss auf den Weg hat, der Befehl gelöscht, und das Vorabrufen wird kontinuierlich durchgeführt. Danach wird jedes Mal, wenn der nächste Geschwindigkeitsänderungspunkt gelesen wird, ein Werkzeugweg an einem den nächst kleineren Referenzwert aufweisenden Geschwindigkeitsänderungspunkt korrigiert.
-
9 ist ein Blockdiagramm von wesentlichen Teilen einer numerischen Steuerung, die Arbeitsabläufe auf Basis der Wegtabelle gemäß einer Ausführungsform der vorliegenden Erfindung ausführt. Eine CPU 11 ist ein Prozessor, der eine gesamte numerische Steuerung 10 steuert. Die CPU 11 liest ein in einem ROM 12 gespeichertes Systemprogramm über einen Bus 19 und steuert die gesamte numerische Steuerung 10 gemäß dem Systemprogramm. Ein RAM 13 speichert vorläufige Berechnungsdaten, Displaydaten und verschiedene Typen von Daten, die durch einen Bediener über eine Display/MDI-Einheit 20 eingegeben werden. Ein SRAM 14 ist als nichtflüchtiger Speicher konfiguriert, der durch eine Batterie (nicht dargestellt) gesichert ist, und in dem eine Speichervorrichtung selbst dann unterhalten wird, wenn die numerische Steuerung 10 abgeschaltet ist.
-
Die oben beschriebenen jeweiligen Elemente von Daten in Tabellenform (das heißt, Wegtabellen) werden vorab im SRAM 14 gespeichert. In der vorliegenden Ausführungsform können die Wegtabellendaten beispielsweise anstatt in der Speichervorrichtung in der numerischen Steuerung in einem externen Speicher gespeichert werden, der durch ein Netzwerk angeschlossen ist, und die Wegtabellendaten können sequenziell über das Netzwerk gelesen werden.
-
Eine Schnittstelle 15 ermöglicht der numerischen Steuerung 10 sich an ein externes Gerät (nicht dargestellt) anzuschließen. Eine programmierbare Maschinensteuerung (PMC) 16 gibt entsprechend einem in der numerischen Steuerung 10 installierten Ablaufprogramm ein Signal über eine I/O-Einheit 17 an eine Hilfsvorrichtung aus, wie einen Aktuator einer Werkzeugmaschine, um die Hilfsvorrichtung zu steuern. Außerdem empfängt die PMC 16 Signale von verschiedenen Schaltern eines im Hauptteil der Werkzeugmaschine vorgesehenen Bedienpults, verarbeitet die Signale und leitet dann die Signale weiter an die CPU 11.
-
Die Display/MDI-Einheit 20 ist ein manuelle Dateneingabevorrichtung mit einem Display, einer Tastatur und dergleichen, und die Schnittstelle 18 empfängt Befehle und Daten von der Tastatur der Display/MDI-Einheit 20 und leitet die Befehle und Daten an die CPU 11.
-
Achsensteuerungsschaltungen 30, 31 und 32 von jeweiligen Vorschubachsen empfangen Bewegungsbefehle für jeweilige Vorschubachsen von der CPU 11 und geben die Befehle für jeweilige Vorschubachsen an Servoverstärker 40, 41 beziehungsweise 42 aus. Die Servoverstärker 40, 41 und 42 empfangen diese Befehle, um die Servomotoren 50x, 51y beziehungsweise 52z von jeweiligen Vorschubachsen anzutreiben. Die Servomotoren 50x, 51y und 52z von jeweiligen Vorschubachsen weisen Positions-/Geschwindigkeitsdetektoren (nicht dargestellt) auf, leiten Positions- und Geschwindigkeits-Rückmeldesignale von den Positions-/Geschwindigkeitsdetektoren zurück an die Achsensteuerungsschaltungen 30, 31 und 32, um eine Positions-/Geschwindigkeitsregelung durchzuführen. Die Positions-/Geschwindigkeitsrückmeldung ist nicht in 9 dargestellt.
-
Außerdem empfängt eine Spindelsteuerungsschaltung 60 einen Spindelrotationsbefehl und gibt ein Spindelgeschwindigkeitssignal an einen Spindelverstärker 61 aus. Der Spindelverstärker 61 empfängt das Spindelgeschwindigkeitssignal, um einen Spindelmotor 62 mit der Befehlsdrehzahl rotieren zu lassen. Ein Positionscodierer 63 übermittelt einen Rückmeldeimpuls (Referenzimpuls) und ein Einzelumdrehungssignal zurück zur Spindelsteuerungsschaltung 60 synchron zur Rotation des Spindelmotors 62, um eine Geschwindigkeitssteuerung durchzuführen. Der Rückmeldeimpuls (Referenzimpuls) und das Einzelumdrehungssignal werden durch die CPU 11 mithilfe der Spindelsteuerungsschaltung 60 gelesen, und wenn der Referenzwert eine Spindelposition ist, wird der Rückmeldeimpuls (Referenzimpuls) durch einen im RAM 13 vorgesehenen Zähler (entsprechend dem Referenzwertzähler in 1) gezählt und wird als Referenzwert verwendet. Ein Spindelbefehlsimpuls kann gezählt werden und kann als Referenzwert verwendet werden.
-
Wenn der Referenzwert die Zeit ist, zählt der im RAM 13 vorgesehene Zähler die Anzahl von Zeitsignalimpulsen, die von einer Zählfunktion der numerischen Steuerung 10 erhalten werden und verwendet die gezählte Anzahl als den Referenzwert. Wenn der Referenzwert eine Vorschubachsenposition ist, wird alternativ die von einem Rückmeldesignal der Vorschubachse (in diesem Beispiel der X-Achse oder der Z-Achse) erhaltene Anzahl von Impulsen gezählt und wird als ein Referenzwert bei der Ausführung von auf Wegtabellen basierenden Arbeitsabläufen verwendet. Alternativ kann die Anzahl von Vorschubachsen-Befehlsimpulsen gezählt und als Referenzwert verwendet werden.
-
Die 10 und 11 sind Ablaufdiagramme, die einen Algorithmus eines Wegtabellendaten-Korrekturprozesses darstellen.
-
Zunächst werden alle einem Werkzeugweg zugeordnete Wegtabellen parallel vorab abgerufen (Schritt S1). Die vorab aus den Wegtabellen abgerufenen Geschwindigkeiten der jeweiligen Achsen werden kombiniert, um einen Werkzeugweg zu berechnen (Schritt S2). Es wird bestimmt, ob zwei oder mehr nicht-korrigierte Geschwindigkeitsänderungspunkte in dem Werkzeugweg vorhanden sind oder ob der nächste Geschwindigkeitsänderungspunkt der Endpunkt einer Wegtabelle ist (Schritt 3). Wenn zwei oder mehr nicht-korrigierte Geschwindigkeitsänderungspunkte nicht vorhanden sind, kehrt der Ablauf zu Schritt S1 zurück. Infolge des Vorabrufs wird, wenn zwei oder mehr nicht-korrigierte Geschwindigkeitsänderungspunkte vorhanden sind, ein Geschwindigkeitsänderungspunkt mit dem kleineren Referenzwert unter den nicht-korrigierten Geschwindigkeitsänderungspunkten als ein Korrektur-Zielgeschwindigkeitsänderungspunkt eingestellt (Schritt 4). Nachfolgend wird ein Prozess zum Berechnen des Startpunkts und des Endpunkts eines Korrekturbereichs des eingestellten Korrektur-Zielgeschwindigkeitsänderungspunkts ausgeführt (Schritt S5). Der Prozess zum Berechnen des Startpunkts und des Endpunkts des Korrekturbereichs ist der in 11 dargestellte Prozess und wird später beschrieben.
-
Wenn der Startpunkt und der Endpunkt des Korrekturbereichs berechnet werden, werden die jeweiligen Achsenwegtabellen korrigiert, so dass der Startpunkt und der Endpunkt des Korrekturbereichs am Korrektur-Zielgeschwindigkeitsänderungspunkt geglättet durch eine mehrdimensionale Funktion, eine trigonometrische Funktion oder einer Kombination davon verbunden werden (Schritt 6).
-
Danach wird bestimmt, ob der Endpunkt der Wegtabelle gelesen wurde und der Endpunkt der Wegtabelle korrigiert wurde (Schritt S7). Ist die Korrektur nicht abgeschlossen, kehrt der Ablauf zu Schritt S1 zurück und die auf den Schritt S1 folgenden Prozesse werden ausgeführt. Wenn der Endpunkt der Wegtabelle gelesen und korrigiert wurde, endet dieser Prozess.
-
Der Prozess des Berechnens des Startpunkts und des Endpunkts des Korrekturbereichs in Schritt S5 ist der in 11 dargestellte Prozess. Zunächst wird der Wert, der als Parameter festgelegt wird oder durch Verwendung eines Programmbefehls oder eines Eingabesignals festgelegt wird, in den Radius r des Korrekturbereichs eingesetzt(Schritt SB1).
-
Danach wird bestimmt, ob der Radius r des Korrekturbereichs größer als 1/2 des Abstands D zwischen dem Korrektur-Zielgeschwindigkeitsänderungspunkt und dem vorhergehenden Geschwindigkeitsänderungspunkt ist (Schritt SB2). Das heißt, es wird bestimmt, ob der einzustellende Korrekturbereich sich mit dem Korrekturbereich des vorhergehenden Geschwindigkeitsänderungspunkt überdeckt. Wenn der Radius r des Korrekturbereichs gleich oder kleiner als 0,5 D ist, geht der Ablauf weiter zu Schritt SB4. Wenn der Radius r des Korrekturbereichs größer als 0,5 D ist, wird der Radius r des Korrekturbereichs auf 0,5 D geändert (Schritt SB3). Nachfolgend wird bestimmt, ob der Radius r des Korrekturbereichs größer ist als 1/2 des Abstands D' zwischen dem Korrektur-Zielgeschwindigkeitsänderungspunkt und dem nächsten Geschwindigkeitsänderungspunkt (Schritt SB4). Dadurch wird bestimmt, ob sich der einzustellende Korrekturbereich mit dem Korrekturbereich des nächsten Geschwindigkeitsänderungspunkts überdeckt. Wenn der Radius r des Korrekturbereichs gleich oder kleiner als 0,5 D ist, geht der Ablauf weiter zu Schritt SB6. Wenn der Radius r des Korrekturbereichs größer als 0,5 D' ist, wird der Radius r des Korrekturbereichs auf 0,5 D' geändert (Schritt SB5).
-
Der Koordinatenwert eines Schnittpunkts zwischen dem Korrekturbereich des Kreises oder einer kugelförmigen Oberfläche in einem 3-dimensionalen Raum mit dem auf diese Weise berechneten Radius r und einer geraden Linie zwischen dem Korrektur-Zielgeschwindigkeitspunkt und dem vorhergehenden Geschwindigkeitsänderungspunkt wird berechnet, und dieser Koordinatenwert wird als Startpunkt des Korrekturbereichs verwendet. Außerdem wird ein Referenzwert L, bei dem das Werkzeug den Koordinatenwert (den Startpunkt des Korrekturbereichs) des Schnittpunkts erreicht, berechnet, und der berechnete Referenzwert wird als Referenzwert am Startpunkt des Korrekturbereichs verwendet (Schritt SB6).
-
Der Koordinatenwert eines Schnittpunkts zwischen dem Korrekturbereich des Kreises oder einer kugelförmigen Oberfläche in einem 3-dimensionalen Raum mit dem auf diese Weise berechneten Radius r und einer geraden Linie zwischen dem Korrektur-Zielgeschwindigkeitsänderungspunkt und dem nächsten Geschwindigkeitsänderungspunkt wird berechnet, und dieser Koordinatenwert wird als Endpunkt des Korrekturbereichs verwendet. Außerdem wird ein Referenzpunkt L (der Referenzwert am Endpunkt des Korrekturbereichs), an dem das Werkzeug den Koordinatenwert (den Endpunkt des Korrekturbereichs) des Schnittpunkts erreicht, berechnet (Schritt SB7), und der Ablauf kehrt zu dem in 10 dargestellten Prozess zurück (Schritt S6).
-
Obwohl der Prozess des Korrigierens der Wegtabellen-Befehlsdaten mit Bezug auf die 10 und 11 beschrieben wurde, können die auf Wegtabellen basierenden Arbeitsabläufe ausgeführt werden, nachdem der Prozess des Korrigierens der Wegtabellen-Befehlsdaten abgeschlossen wurde. Außerdem können auf Wegtabellen basierende Arbeitsabläufe mittels der korrigierten Wegtabellen-Befehlsdaten ausgeführt werden, während die Wegtabellen-Befehlsdaten in 10 und 11 vorab abgerufen werden.
-
Wenn in diesem Fall der Korrekturprozess hinter dem Ausführungsprozess zurückbleibt, kann eine Technik zum Anhalten des Zählens des Referenzwerts oder die Ausführung eines Bereitschaftszustands, wie in der veröffentlichten
japanischen Patentanmeldung Nr. 2012-234445 offenbart, verwendet werden.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- JP 59-177604 [0002]
- JP 2003-303005 [0002, 0005, 0009, 0009]
- JP 2007-304714 [0002, 0005, 0009, 0009, 0043]
- JP 2012-234445 [0003, 0003, 0082]
- JP 2003-3030004 [0043]