DE102009003003B4 - Numerische Steuerung mit der Funktion einer Koordinatentransformation der Werkzeugphase - Google Patents

Numerische Steuerung mit der Funktion einer Koordinatentransformation der Werkzeugphase Download PDF

Info

Publication number
DE102009003003B4
DE102009003003B4 DE102009003003.4A DE102009003003A DE102009003003B4 DE 102009003003 B4 DE102009003003 B4 DE 102009003003B4 DE 102009003003 A DE102009003003 A DE 102009003003A DE 102009003003 B4 DE102009003003 B4 DE 102009003003B4
Authority
DE
Germany
Prior art keywords
tool
phase
vector
command
axes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102009003003.4A
Other languages
English (en)
Other versions
DE102009003003A1 (de
Inventor
Toshiaki Otsuki
Soichiro Ide
Osamu Hanaoka
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102009003003A1 publication Critical patent/DE102009003003A1/de
Application granted granted Critical
Publication of DE102009003003B4 publication Critical patent/DE102009003003B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4086Coordinate conversions; Other special calculations
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33263Conversion, transformation of coordinates, cartesian or polar

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)

Abstract

Numerische Steuerung zum Steuern einer Sechs-Achsen-Bearbeitungsmaschine, die ein Werkstück bearbeitet, indem ein Werkzeug relativ zu dem Werkstück unter Verwendung von drei linearen (X-, Y-, Z-)Achsen und drei Rotationsachsen von einer ersten (BB-), zweiten (CC-) und dritten (AA-)Rotationsachse bewegt wird, wobei die numerische Steuerung Folgendes umfasst: eine Bearbeitungsprogramm-Lesevorrichtung (1), die so ausgelegt ist, dass sie ein Bearbeitungsprogramm liest, das Befehle für die drei linearen (X-, Y-, Z-)Achsen, einen Werkzeugausrichtungsbefehl zum Zuweisen einer Werkzeugausrichtung und einen Werkzeugphasenbefehl zum Zuweisen einer Werkzeugphase enthält; eine Koordinatentransformationsvorrichtung (4, 6), die so ausgelegt ist, dass sie eine Koordinatentransformation einer Werkzeugmittelpunktposition (Vpos), die von den Befehlen für die drei linearen (X-, Y-, Z-)Achsen zugewiesen wird, und eine Koordinatentransformation einer Werkzeugausrichtung (Vt), die von dem Werkzeugausrichtungsbefehl zugewiesen wird, als Reaktion auf einen Koordinatentransformationsbefehl durchführt; eine Werkzeugmittelpunkt-Steuerungsvorrichtung (7), die so ausgelegt ist, dass sie die Positionen (X, Y, Z) der drei linearen Achsen sowie die Rotationspositionen (BB, CC) der ersten und zweiten Rotationsachse auf Basis der transformierten Werkzeugmittelpunktposition (Vpos') bzw. der transformierten Werkzeugausrichtung (Vt') festlegt; eine Werkzeugphasen-Steuerungsvorrichtung, die so ausgelegt ist, dass sie eine Rotationsposition (AA) der dritten Rotationsachse derart festlegt, dass die Werkzeugphase in die Richtung eines Werkzeugphasenvektors (Vpc) eingestellt wird, der aus dem Werkzeugausrichtungsbefehl und dem Werkzeugphasenbefehl erhalten wird; und eine Antriebsvorrichtung, die derart ausgelegt ist, dass sie die drei linearen Achsen an die festgelegten Positionen und die drei Rotationsachsen an die festgelegten Rotationspositionen treibt, dadurch gekennzeichnet, dass die Werkzeugphasen-Steuerungsvorrichtung eine Post-Transformations-Werkzeugphasen-Berechnungseinrichtung (8) enthält, die derart ausgelegt ist, dass sie einen Post-Transformations-Werkzeugphasenvektor (Vpc'), der dem Werkzeugphasenvektor (Vpc) entspricht, als Reaktion auf den Koordinatentransformationsbefehl bestimmt und zudem eine Post-Transformations-Rotationsposition der dritten (AA-)Rotationsachse bestimmt als einen Phasenwinkel (AA'), der zwischen dem Post-Transformations-Werkzeugphasenvektor (Vpc') und einem Post-Transformations-Werkzeugphasen-Nullvektor (Vp0') gebildet wird, der auf Basis der transformierten Werkzeugausrichtung (Vt') bestimmt wird.

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. GEBIET DER ERFINDUNG
  • Die Erfindung betrifft eine numerische Steuerung zum Steuern einer Sechs-Achsen-Bearbeitungsmaschine zum Bearbeiten eines Werkstücks, wobei drei lineare Achsen und drei Rotationsachsen verwendet werden.
  • 2. BESCHREIBUNG DES VERWANDTEN STANDES DER TECHNIK
  • Bei einem üblichen Bearbeitungsverfahren durch eine Fünf-Achsen-Bearbeitungsmaschine mit zwei Rotationsachsen und drei linearen Achsen wird eine Interpolation des Bewegungspfads für den Werkzeugmittelpunkt auf Basis einer befohlenen relativen Bewegungsgeschwindigkeit zwischen Werkstück und Werkzeug durchgeführt, wenn ein Bewegungsbefehl gegeben wird, der einen Bewegungspfad für den Werkzeugmittelpunkt (Tool Center Point) und eine Werkzeugausrichtung angibt. Zudem erfolgt eine Interpolation der Werkzeugausrichtung, wodurch sich der Werkzeugmittelpunkt mit der befohlenen Geschwindigkeit den befohlenen Bewegungspfad entlang bewegt, während die Werkzeugausrichtung geändert wird. Diese Befehls- und Bearbeitungstechnik bezeichnet man als Werkzeugmittelpunkt-Steuerung.
  • JP 2003-195 917 A offenbart eine Werkzeugmittelpunkt-Steuerung für eine Werkzeugmaschine mit zwei Rotationsachsen und drei linearen Achsen. Dieses Verfahren der Werkzeugmittelpunkt-Steuerung dient der Steuerung von Servomotoren auf Basis eines Bewegungsbefehls, der einen Bewegungspfad für den Werkzeugmittelpunkt und eine Werkzeugausrichtung angibt. Zu diesem Zweck erfolgt eine Interpolation des Bewegungspfads und der Werkzeugausrichtung auf Basis einer befohlenen relativen Bewegungsgeschwindigkeit zwischen Werkstück und Werkzeug. Interpolationspunkte auf dem Bewegungspfad werden so korrigiert, dass der Werkzeugmittelpunkt mit der befohlenen Geschwindigkeit den befohlenen Bewegungspfad entlang bewegt wird.
  • Die in JP 2003-195 917 A offenbarte Werkzeugmittelpunkt-Steuerung erleichtert das Schreiben eines Programms für ein Bearbeitungsverfahren zum Bewegen des Werkzeugmittelpunkts mit einer gewünschten Geschwindigkeit, während Rotationsachsen gedreht werden. Zudem kann das Programm kürzer sein. Sogar bei einer anderen Werkzeuglänge braucht das Programm nicht mithilfe von CAM umgeschrieben werden und der Bearbeitungszyklus lässt sich verkürzen.
  • JP S63-18 404 A offenbart ein Koordinatentransformationsverfahren für eine befohlene Position. Mit diesem Koordinatentransformationsverfahren braucht das Programm nicht mithilfe von CAM umgeschrieben werden und der Bearbeitungszyklus lässt sich verkürzen, sogar wenn der ursprüngliche Befehl koordinatentransformiert werden muss.
  • JP H04-341 829 A und JP 2007-133 880 A offenbaren ein Verfahren für ein Faseraufbringinstrument zum Aufbringen von Fasern (Kohlenstofffaser-Verbundmaterial) auf verschiedene Teile mit ungleichmäßigem Querschnitt, wie den Rumpf und die geneigten Flügel eines Flugzeugs, eine konische Kuppel und eine konische Raketenspitze. Das in JP H04-341 829 A offenbarte Faseraufbringinstrument hat einen Zuführkopf mit einer Zuführwalze. Eine von der Zuführwalze zugeführte Faser wird um einen Dorn gewickelt.
  • Siehe 1: Die Armposition wird durch die Achsen X, Y und Z gesteuert, die Werkzeugausrichtung durch die Achsen BB und CC und die Walzenausrichtung durch eine Achse AA. Die Walzenausrichtung stellt eine Werkzeugphase dar. Die AA-Achsenposition (Position der dritten Rotationsachse), die Walzenausrichtung und die Werkzeugphase sind deshalb miteinander synonym, obwohl darauf in der folgenden Beschreibung nicht hingewiesen wird. Die Achsen BB und CC entsprechen der ersten bzw. der zweiten Rotationsachse der Fünf-Achsen-Bearbeitungsmaschine des Standes der Technik, um welche die Werkzeugausrichtung gesteuert wird. Die Achse AA entspricht der dritten Rotationsachse, um welche die Werkzeugausrichtung gesteuert wird. In dem Zustand, der in 1 dargestellt ist, steht die Walze in einem Winkel von Null (0) Grad zu den Achsen BB und CC. Die Achsen BB und CC können in einem Winkelbereich von –45 Grad bei 45 Grad verändert werden. Zum leichteren Verständnis sind in 1 das Werkzeug und die Walze in größerem Maßstab dargestellt als ein Werkstück (z. B. der Rumpf eines Flugzeugs).
  • Auf der rechten Seite der 1 ist ein Teil nicht dargestellt, das dem Körper der in JP H04-341 829 A offenbarten Faseraufbringmaschine entspricht. Der Zuführkopf, die Zuführwalze und der Dorn, die in JP H04-341 829 A beschrieben sind, entsprechen dem Werkzeug, der Walze bzw. dem Werkstück in 1.
  • Ein NC-Programmbefehl zum Betreiben einer mehrachsigen Maschine wird in der Regel mittels CAM (Computer Aided Manufacturing) erzeugt. Im Folgenden wird ein mittels CAM erzeugtes Programmbeispiel 1-1 beschrieben (siehe 2). Das Symbol ”G43.4” steht für einen G-Code-Befehl zum Starten der Werkzeugmittelpunkt-Steuerung. ”G49” steht für einen G-Code-Befehl zum Aufheben der Werkzeugmittelpunkt-Steuerung. Auf die Symbole ”H” und ”F” folgen ein Befehl für eine Werkzeuglängen-Korrekturzahl und ein Befehl für eine Werkzeugmittelpunkt-Geschwindigkeit. Auf die Symbole ”X, Y, Z”, ”BB, CC” bzw. ”AA” folgen Befehle für die Werkzeugmittelpunktposition, die Werkzeugausrichtung bzw. die Walzenausrichtung.
  • 3 zeigt ein Programmbeispiel 1-2, bei dem die Werkzeugausrichtung mittels Vektor anstelle durch ”BB, CC” befohlen werden kann. Ein Befehl ”I, J, K” ist ein Vektorbefehl, der die Werkzeugausrichtung angibt. Wenn die Werkzeugausrichtung mittels Vektor befohlen wird, steuert die numerische Steuerung die Rotationsachsen (die Achsen BB und CC) derart, dass das Werkzeug in einer vorgegebenen Richtung betrieben wird.
  • In einigen Fällen muss eine Koordinatentransformation des Programmbeispiels 1-1 in 2 oder des Programmbeispiels 1-2 in 3 befohlen werden. Die Koordinatentransformation muss zum Beispiel dann ausgeführt werden, wenn die tatsächliche Werkzeugposition von der Werkzeugposition abweicht, die beim Schreiben des Programms mittels CAM verwendet wurde. Hier wird angenommen, dass ein Schiefe-Ebene-Bearbeitungsbefehl ausgeführt wird, der aus Koordinatentransformationen besteht.
  • Das in 4 dargestellte Programmbeispiel 2-1 ist ein Programmbeispiel für die Ausführung eines Schiefe-Ebene-Bearbeitungsbefehls. Ein Symbol ”G68.2” steht für einen G-Code-Befehl zum Starten des Schiefe-Ebene-Bearbeitungsbefehls, und ein Symbol ”G69” steht für einen G-Code-Befehl zu dessen Aufhebung. Ein Symbol ”G53.1” steht für einen Befehl zur Koordinatentransformation der Werkzeugausrichtung. Der Block ”G68.2” enthält ”X, Y, Z”, wodurch die Ursprungsposition eines Ziel-Koordinatensystems nach der Koordinatentransformation befohlen wird, sowie ”I, J, K”, wodurch Winkel befohlen werden, die bei der Koordinatentransformation verwendet werden sollen. Die numerische Steuerung der Fünf-Achsen-Bearbeitungsmaschine des Standes der Technik (mit drei linearen Achsen, einer ersten und einer zweiten Rotationsachse) führt die Koordinatentransformation derart durch, dass die befohlene Werkzeugmittelpunktposition und die befohlene Werkzeugausrichtung in eine Werkzeug-Endposition und eine Werkzeugausrichtung in einem neu erzeugten Koordinatensystem transformiert werden.
  • Siehe das Programmbeispiel 2-2 in 5: Die Werkzeugausrichtung kann mittels Vektor befohlen werden anstelle durch ”BB, CC” wie beim Programmbeispiel 1-2 (siehe 3). Wird die Werkzeugausrichtung mittels Vektor befohlen, führt die numerische Steuerung die Koordinatentransformation der befohlenen Richtung aus und steuert die Rotationsachsen (die Achsen BB und CC) derart, dass das Werkzeug in der koordinatentransformierten Richtung betrieben wird.
  • Bei der Fünf-Achsen-Bearbeitungsmaschine des Standes der Technik erfolgt jedoch keine Koordinatentransformation der Walzenausrichtung um eine dritte Rotationsachse. Weder das Programmbeispiel 2-1 (siehe 4) noch das Programmbeispiel 2-2 (siehe 5) enthalten einen Befehl ”AA”, und sogar wenn ein Befehl ”AA” enthalten ist, wird dafür keine Koordinatentransformation durchgeführt. Genauer gesagt, kommt es zu einem Alarm und der Betrieb wird gestoppt, wenn in einem Koordinatentransformations-(Schiefe-Ebene-Bearbeitungsbefehls-)Modus ein ”AA”-Befehl gegeben wird.
  • Bei einer Maschine, die für die Steuerung der Walzenausrichtung um die dritte Rotationsachse ausgelegt ist, können die Werkzeugmittelpunkt-Steuerung und der Schiefe-Ebene-Bearbeitungsbefehl nicht in Kombination verwendet werden. Damit man Werkzeugmittelpunkt-Steuerung und Schiefe-Ebene-Bearbeitungsbefehl in Kombination verwenden kann, muss ein programmierter Befehl für die Werkzeugmittelpunkt-Steuerung mittels CAM in einen Befehl nach der Koordinatentransformation umgeschrieben werden, was zeitraubend und mühselig ist.
  • Die DE 10 2006 022 831 A1 zeigt ein Verfahren zum Steuern einer Schleifmaschine und eine numerisch gesteuerte Schleifmaschine, wobei beim Steuern die Berechnung von Achssteuerbefehlen für den Achsen zugeordnete Achsantriebseinheiten in Echtzeit erfolgt durch Bereitstellung eines Transformationsmodells, welches Vektoren mit fünf Komponenten im Werkzeugkoordinatensystem in Steuerbefehle für die Bewegungen umrechnet.
  • Die US 7 283 889 B2 zeigt ein weiteres Verfahren und eine entsprechende Werkzeugmaschine bei der ein Ausrichtungsfehler der Achsen korrigiert wird.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Aufgabe der Erfindung ist es, eine numerische Steuerung bereitzustellen, die eine Koordinatentransformation (einen Schiefe-Ebene-Bearbeitungsbefehl) von einem Werkzeugmittelpunkt-Steuerungsbefehl durchführen kann einschließlich einer Steuerung der Werkzeugphase, die der Walzenausrichtung um eine dritte Rotationsachse entspricht.
  • Eine erfindungsgemäße numerische Steuerung steuert eine Sechs-Achsen-Bearbeitungsmaschine, die ein Werkstück bearbeitet, indem ein Werkzeug relativ zu dem Werkstück mithilfe von drei linearen Achsen und drei Rotationsachsen von einer ersten, zweiten und dritten Rotationsachse bewegt wird. Die numerische Steuerung umfasst: eine Bearbeitungsprogramm-Lesevorrichtung, die so ausgelegt ist, dass sie ein Bearbeitungsprogramm liest, das Befehle für die drei linearen Achsen, einen Werkzeugausrichtungsbefehl zum Zuweisen einer Werkzeugausrichtung und einen Werkzeugphasenbefehl zum Zuweisen einer Werkzeugphase enthält; eine Koordinatentransformationsvorrichtung, die so ausgelegt ist, dass sie eine Koordinatentransformation einer Werkzeugmittelpunktposition, die von den Befehlen für die drei linearen Achsen zugewiesen wird, und eine Koordinatentransformation einer Werkzeugausrichtung, die von dem Werkzeugausrichtungsbefehl zugewiesen wird, als Reaktion auf einen Koordinatentransformationsbefehl durchführt; eine Werkzeugmittelpunkt-Steuerungsvorrichtung, die so ausgelegt ist, dass sie die Positionen der drei linearen Achsen sowie die Rotationspositionen der ersten und zweiten Rotationsachse auf Basis der transformierten Werkzeugmittelpunktposition bzw. der transformierten Werkzeugausrichtung festlegt; eine Werkzeugphasen-Steuerungsvorrichtung, die so ausgelegt ist, dass sie eine Rotationsposition der dritten Rotationsachse derart festlegt, dass die Werkzeugphase in die Richtung eines Werkzeugphasenvektors eingestellt wird, der aus dem Werkzeugausrichtungsbefehl und dem Werkzeugphasenbefehl erhalten wird; sowie eine Antriebsvorrichtung, die derart ausgelegt ist, dass sie die drei linearen Achsen an die festgelegten Positionen und die drei Rotationsachsen an die festgelegten Rotationspositionen treibt. Die numerische Steuerung ist dadurch gekennzeichnet, dass die Werkzeugphasen-Steuerungsvorrichtung eine Post-Transformations-Werkzeugphasen-Berechnungseinrichtung enthält, die so ausgelegt ist, dass sie einen Post-Transformations-Werkzeugphasenvektor, der dem Werkzeugphasenvektor entspricht, als Reaktion auf den Koordinatentransformationsbefehl bestimmt und zudem eine Post-Transformations-Rotationsposition der dritten Rotationsachse bestimmt als einen Phasenwinkel, der zwischen dem Post-Transformations-Werkzeugphasenvektor und einem Post-Transformations-Werkzeugphasen-Nullvektor gebildet wird, der auf Basis der transformierten Werkzeugausrichtung bestimmt wird.
  • Der Werkzeugausrichtungsbefehl kann Befehle für die Rotationspositionen der ersten und der zweiten Rotationsachse enthalten.
  • Der Werkzeugausrichtungsbefehl kann einen Werkzeugausrichtungsvektor-Befehl enthalten.
  • Der Post-Transformations-Werkzeugphasenvektor kann ermittelt werden, indem eine Koordinatentransformation des Werkzeugphasenbefehlsvektors durchgeführt wird.
  • Der Post-Transformations-Werkzeugphasenvektor kann derart festgelegt werden, dass der zwischen dem Post-Transformations-Werkzeugphasenvektor und einer Bewegungsrichtung der Werkzeugmittelpunktposition an der transformierten Werkzeugmittelpunktposition gebildete Winkel gleich dem Winkel ist, der zwischen dem Werkzeugphasenvektor und einer Bewegungsrichtung der Werkzeugmittelpunkt-Position an der Werkzeugmittelpunktposition gebildet wird.
  • Die Bewegungsrichtungen der Werkzeugmittelpunktposition können für jeden Interpolationszeitraum auf Basis der Werkzeugmittelpunktpositionen im vorherigen und im derzeitigen Interpolationszeitraum bestimmt werden.
  • Die Bewegungsrichtungen der Werkzeugmittelpunktposition können für jeden Block des Bearbeitungsprogramms auf Basis der Werkzeugmittelpunktpositionen im vorherigen und im derzeitigen Block bestimmt werden.
  • Der Post-Transformations-Werkzeugphasen-Nullvektor lässt sich definieren als ein Vektor, der senkrecht zu der transformierten Werkzeugausrichtung in einer vertikalen Ebene ist, die einen transformierten Werkzeugausrichtungsvektor enthält, der die transformierte Werkzeugausrichtung angibt.
  • Der Post-Transformations-Werkzeugphasen-Nullvektor lässt sich definieren als ein Vektor, der senkrecht zu der transformierten Werkzeugausrichtung in einer horizontalen Ebene ist.
  • Die Erfindung ermöglicht die Durchführung einer Koordinatentransformation (eines Schiefe-Ebene-Bearbeitungsbefehls) von einem Werkzeugmittelpunkt-Steuerungsbefehl einschließlich der Steuerung einer Walzenausrichtung (Werkzeugphase) um eine dritte Rotationsachse.
  • Deshalb kann bei einer Maschine, welche die Walzenausrichtung um eine dritte Rotationsachse steuert, eine Koordinatentransformation (ein Schiefe-Ebene-Bearbeitungsbefehl) einer Werkzeugmittelpunkt-Steuerung einschließlich einer Steuerung der Walzenausrichtung (Werkzeugphase) um die dritte Rotationsachse durchgeführt werden, ohne dass ein Programmbefehl mittels CAM neu geschrieben werden muss.
  • Sogar nach der Koordinatentransformation wird die Positionsbeziehung zwischen Werkzeugausrichtung, Werkzeugbewegungsrichtung und Walzenausrichtung beibehalten, so dass eine Faser korrekt an einem Werkstück befestigt (oder darum gewickelt) wird.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Es zeigt:
  • 1 eine Darstellung einer Maschine mit einer dritten Rotationsachse für die Werkzeugphasensteuerung;
  • 2 das Programmbeispiel 1-1;
  • 3 das Programmbeispiel 1-2;
  • 4 das Programmbeispiel 2-1;
  • 5 das Programmbeispiel 2-2;
  • 6 eine Darstellung, dass die Walzenausrichtung (der Werkzeugphasen-Nullvektor) senkrecht zur Werkzeugausrichtung verläuft und in einer vertikalen Ebene liegt, die einen Werkzeugausrichtungsvektor enthält, ungeachtet der BB- und CC-Achsenpositionen, wenn eine Achse AA in einem Winkel von Null Grad verläuft;
  • 7 eine Darstellung, dass das ursprüngliche (X, Y, Z)-Koordinatensystem nach der Koordinatentransformation in ein (X', Y', Z')-Koordinatensystem gemäß einem Schiefe-Ebene-Bearbeitungsbefehl (einer Koordinatentransformation) transformiert wird;
  • 8 eine Darstellung, dass eine Walzenausrichtung (ein Werkzeugphasen-Nullvektor) in eine Richtung zeigt, die senkrecht zu einer Werkzeugausrichtung verläuft und in einer horizontalen Ebene enthalten ist, ungeachtet der BB- und CC-Achsenpositionen, wenn eine Achse AA in einem Winkel von Null Grad verläuft;
  • 9 eine Darstellung, dass die AA-Achsenposition AA einen Winkel angibt, der gebildet wird zwischen einem Werkzeugphasenbefehlsvektor Vpc, der eine Walzenausrichtung darstellt, und einem Werkzeugphasen-Nullvektor Vp0;
  • 10 das Programmbeispiel 3-1;
  • 11 das Programmbeispiel 3-2;
  • 12 eine Darstellung, wie in der Erfindung der Bewegungsrichtungsvektor Vm einer Werkzeugmittelpunktposition berechnet wird;
  • 13 ein Blockschema einer Anordnung des Standes der Technik;
  • 14 ein Blockschema, das die erfindungsgemäße Berechnungsvorrichtung für die koordinatentransformierte Werkzeugphase zeigt, die zu der in 13 dargestellten Werkzeugphasen-Steuerungsvorrichtung hinzugefügt wurde;
  • 15 ein Blockschema einer anderen Anordnung des Standes der Technik;
  • 16 ein Blockschema, das die erfindungsgemäße Berechnungsvorrichtung für die koordinatentransformierte Werkzeugphase zeigt, die zu der in 15 dargestellten Werkzeugphasen-Steuerungsvorrichtung hinzugefügt wurde;
  • 17 ein Fließschema einer ersten Ausführungsform der Erfindung, das den Algorithmus eines Verfahrens zeigt, das von einer Berechnungsvorrichtung für die koordinatentransformierte Werkzeugphase vorgenommen wird;
  • 18 ein Fließschema einer zweiten Ausführungsform der Erfindung, das den Algorithmus eines Verfahrens zeigt, das von einer Berechnungsvorrichtung für die koordinatentransformierte Werkzeugphase vorgenommen wird; und
  • 19 ein Blockschema, das eine numerische Steuerung (CNC) nach einer Ausführungsform der Erfindung zeigt.
  • EINGEHENDE BESCHREIBUNG
  • Zunächst wird ein Teil von einer Ausführungsform der Erfindung beschrieben, der auf dem Stand der Technik basiert. Ein Werkzeugausrichtungsvektor Vt (Vtx, Vty, Vtz)T, der eine Werkzeugausrichtung angibt, wird durch Gleichung (1) dargestellt, wenn die Winkelpositionen BB, CC um die Achsen BB und CC von einem Programmbefehl befohlen werden. Hier wird angenommen, dass der Vektor Vt in die positive Richtung einer X-Achse zeigt, wenn beide Winkel BB und CC Null Grad sind (der in 1 dargestellte Zustand). Das mathematische Symbol ”T” steht für Transposition, das Symbol ”·” für Multiplikation.
  • Figure DE102009003003B4_0002
  • Der Werkzeugausrichtungsvektor wird für die BB- und CC-Achsenpositionen berechnet und auf eine Vektorlänge von 1 normalisiert.
  • Dann wird ein Schiefe-Ebene-Bearbeitungsbefehl (eine Koordinatentransformation) befohlen. Gemäß dem Schiefe-Ebene-Bearbeitungsbefehl (der Koordinatentransformation) wird das ursprüngliche (X, Y, Z)-Koordinatensystem in ein (X', Y', Z')-Koordinatensystem nach der Koordinatentransformation transformiert (siehe 7: eine Koordinatentransformation ist durch eine gepunktete Linie dargestellt). Die Matrizen Mc und Mc3 für die Koordinatentransformation von dem (X, Y, Z)-Koordinatensystem in das (X', Y', Z')-Koordinatensystem werden berechnet. Sie entsprechen dem Schiefe-Ebene-Bearbeitungsbefehl (der Koordinatentransformation).
  • Hier wird angenommen, dass die durch X, Y, Z im ”G68.2”-Block, einem G-Code für den Schiefe-Ebene-Bearbeitungsbefehl, vorgegebene Koordinatenursprungsposition sich bei x0, y0, z0 befindet, Winkel für die Koordinatentransformation durch I, J, K als Euler-Winkel befohlen werden und die durch I, J, K befohlenen Daten α, β, γ sind. In diesem Fall wird die Matrix Mc durch die folgende Gleichung (2) dargestellt. Die Matrix Mc hat vier Zeilen und vier Spalten. Im Folgenden wird jeder Positionsvektor durch ein homogenes Koordinatensystem mit einem vierten Element ”1” dargestellt, aber seine Elemente sind weggelassen, wenn sie trivial sind.
  • Figure DE102009003003B4_0003
  • Gleichung (3) zeigt, dass die Matrix Mc3 durch Entfernen der vierten Zeile und der vierten Spalte der Matrix Mc erhalten wird.
  • Figure DE102009003003B4_0004
  • Gleichung (4) zeigt, dass ein befohlener Werkzeugmittelpunktpositionsvektor Vpos (X, Y, Z, 1)T mittels Koordinatentransformation in einen Positionsvektor Vpos' (X', Y', Z', 1)T mithilfe der Matrix Mc umgewandelt wird. X, Y bzw. Z Stehen für X-, Y-, Z-Achsenpositionen (siehe 7). Vpos' = Mc·Vpos (4)
  • Gleichung (5) zeigt, dass ein Werkzeugausrichtungsvektor Vt (Vtx, Vty, Vtz)T mittels Koordinatentransformation in Vt' (Vtx', Vty', Vtz')T mithilfe der Matrix Mc3 umgewandelt wird (siehe 7). Vt' = Mc3·Vt (5)
  • Dann werden die Positionen BB' und CC', also die BB- und CC-Achsenpositionen nach Ausführung des Schiefe-Ebene-Bearbeitungsbefehls (nach der Koordinatentransformation) aus Vt' ermittelt. Weil die folgende Gleichung (6) für Vt', BB' und CC' gilt wie Gleichung (1), werden BB' und CC' mithilfe des Standes der Technik bestimmt, wie die Gleichungen (7) zeigen.
  • Figure DE102009003003B4_0005
  • Als nächstes wird ein erfindungsgemäßer Werkzeugphasenvektor beschrieben.
  • Zunächst wird eine Walzenausrichtung beschrieben, die erhalten wird, wenn gilt AA = 0. Ungeachtet der BB- und CC-Achsenpositionen verläuft die Walzenausrichtung senkrecht zur Werkzeugausrichtung und ist in einer vertikalen Ebene enthalten, die den Werkzeugausrichtungsvektor Vt enthält (siehe 6), wenn die Achse AA in einem Winkel von Null Grad verläuft. Der Vektor, der die Werkzeugausrichtung angibt, wird als Wekzeugphasen-Nullvektor Vp0 (Vp0x, Vp0y, Vp0z) bezeichnet.
  • Bei diesem Beispiel wird angenommen, dass die Walzenausrichtung senkrecht zur Werkzeugausrichtung verläuft und in einer vertikalen Ebene enthalten ist, die den Werkzeugausrichtungsvektor enthält, ungeachtet der BB- und CC-Achsenpositionen, wenn die Achse AA in einem Winkel von Null Grad verläuft. Vp0 kann jedoch mit einem Offset versehen werden. Ist zum Beispiel ein Offset von 90 Grad gegeben, verläuft die Walzenausrichtung senkrecht zur Werkzeugausrichtung und ist in einer horizontalen Ebene enthalten, ungeachtet der BB- und CC-Achsenpositionen, wenn die Achse AA in einem Winkel von Null Grad verläuft (siehe 8).
  • Bei dieser Ausführungsform wird angenommen, dass die Walzenausrichtung senkrecht zur Werkzeugausrichtung verläuft und in einer vertikalen Ebene enthalten ist, die den Werkzeugausrichtungsvektor enthält, ungeachtet der BB- und CC-Achsenpositionen, wenn die Achse AA in einem Winkel von Null Grad verläuft (siehe 6). In diesem Fall kann der Werkzeugphasen-Nullvektor Vp0 durch die Berechnung entsprechend Gleichung (8) bestimmt werden. Vp0 = Vt × Vy × Vt (8)
  • Die jeweiligen Terme und Symbole in Gleichung (8) bedeuten Folgendes: Das Symbol ”×” steht für ein Vektorprodukt von zwei darum befindlichen Vektoren und ”Vy” steht für einen vertikalen Vektor (0, 1, 0)T. Der vertikale Vektor zeigt bei diesem Beispiel in Y-Achsenrichtung, kann aber in einer anderen Achsenanordnung auch in eine andere Achsenrichtung zeigen.
  • Das Symbol ”Vt” steht für eine Werkzeugausrichtung (Vtx, Vty, Vtz)T, welche die Werkzeugausrichtung angibt, die auf Basis der BB- und CC-Achsenpositionen ermittelt wird, wie in Gleichung (1) dargestellt. In einem Schiefe-Ebene-Bearbeitungs-befehls-Modus wird ein Werkzeugphasen-Nullvektor Vp0 vor der Koordinatentransformation ermittelt unter Verwendung des Werkzeugausrichtungsvektors Vt, wie durch Gleichung (8) angegeben. Die folgende Gleichung (9) zeigt, dass der Werkzeugphasen-Nullvektor Vp0' nach der Koordinatentransformation (siehe 7) ermittelt wird, indem anstatt Vt ein Werkzeugausrichtungsvektor nach der Koordinatentransformation, Vt', entsprechend dem Schiefe-Ebene-Bearbeitungsbefehl verwendet wird, der in Gleichung (5) dargestellt ist. Sogar im Schiefe-Ebene-Bearbeitungsbefehls-Modus verbleibt Vy der Vektor in der vertikalen Richtung (Y-Richtung) im ursprünglichen Koordinatensystem und zeigt nicht in die Richtung Y' in dem Koordinatensystem nach der Koordinatentransformation entsprechend dem Schiefe-Ebene-Bearbeitungsbefehl. Vp0' = Vt' × Vy × Vt' (9)
  • Infolge der Berechnungen in den Gleichungen (8) und (9) verlaufen Vp0 und Vp0' jeweils senkrecht zum Werkzeugausrichtungsvektor und liegen auf einer vertikalen Ebene, die jeweils einen entsprechenden Werkzeugausrichtungsvektor Vt bzw. Vt' enthält. Es wird darauf hingewiesen, dass der Richtung jedes der mit den Gleichungen (8) und (9) bestimmten Vektoren ein Offset von z. B. 45 Grad hinzugefügt werden kann.
  • Siehe 8: Wenn die Walzenausrichtung senkrecht zur Werkzeugausrichtung verläuft und in einer horizontalen Ebene enthalten ist, ungeachtet der BB- und CC-Achsenpositionen, wenn die Achse AA in einem Winkel von Null Grad verläuft, können Vp0 und Vp0' wie im Folgenden beschrieben bestimmt werden. Es sollte beachtet werden, dass der Richtung jedes der gemäß den Gleichungen (10) und (11) bestimmten Vektoren ein Offset von z. B. 45 Grad hinzugefügt werden kann. Vp0 = Vt × Vy (10) Vp0' = Vt' × Vy (11)
  • Eine AA-Achsenposition AA gibt den Winkel an zwischen einem Werkzeugphasenbefehlsvektor Vpc, der eine Walzenausrichtung darstellt, und einem Werkzeugphasen-Nullvektor Vp0 (siehe 9). Wenn eine Winkelposition AA um die Achse AA befohlen wird, wird ein Werkzeugphasenbefehlsvektor Vpc (Vpcx, Vpcy, Vpcz)T, der eine entsprechende Walzenausrichtung darstellt, berechnet wie durch Gleichung (12) angegeben. Die Winkelposition AA variiert von 0 bis 360 Grad. Vpc = Maa·Vp0 (12)
  • Gleichung (13) zeigt, dass die Matrix Maa eine Matrix für die Rotation durch AA um den Werkzeugausrichtungsvektor Vt ist.
  • Figure DE102009003003B4_0006
  • Im Schiefe-Ebene-Bearbeitungs(Koordinatentransformations)-befehlsmodus wird der Werkzeugphasenbefehlsvektor Vpc (Vpcx, Vpcy, Vpcz)T wie der Werkzeugausrichtungsvektor in Gleichung (5) mittels Koordinatentransformation in Vpc' (Vpcx', Vpcy', Vpcz')T überführt (siehe 7), wie Gleichung (14) zeigt. Vpc' = Mc3·Vpc (14)
  • Zudem ist die folgende Gleichung (15) erfüllt (siehe 7). Vpc' = Maa'·Vp0' (15)
  • Die Matrix Maa' ist die in Gleichung (16) dargestellte Matrix, in der Vt' und AA' für Vt und AA auf der rechten Seite der durch Gleichung (13) dargestellten Matrix Maa eingesetzt worden sind, d. h. einer Matrix für die Rotation um AA' um den Werkzeugausrichtungsvektor Vt'.
  • Figure DE102009003003B4_0007
  • Gleichung (15) enthält nur ein unbekanntes AA' und kann nach AA' aufgelöst werden. Deshalb kann man AA' erhalten, wenn der Schiefe-Ebene-Bearbeitungsbefehl (die Koordinatentransformation) für das Programm des Werkzeugmittelpunkt-Steuerungsbefehls durchgeführt wird, der AA enthält. Somit kann der Schiefe-Ebene-Bearbeitungsbefehl (die Koordinatentransformation) für das Programm des Werkzeugmittelpunkt-Steuerungsbefehls durchgeführt werden, der AA enthält, wie das Programmbeispiel 3-1 zeigt (siehe 10).
  • Wie beim Programmbeispiel 1-2 (siehe 3) und beim Programmbeispiel 2-2 (siehe 5) kann die Werkzeugausrichtung mittels Vektor anstelle der Verwendung von BB und CC befohlen werden, wie das Programmbeispiel 3-2 zeigt (siehe 11).
  • Als nächstes wird eine zweite Ausführungsform beschrieben. Die bereits in der Beschreibung der ersten Ausführungsform gegebene Beschreibung von Vp0 (siehe 6 und 8) und AA (siehe 9) entfällt.
  • Wenn eine Werkzeugmittelpunktposition als X, Y und Z befohlen wird, wird ein Bewegungsrichtungsvektor für die Werkzeugmittelpunktposition Vm (Vmx, Vmy, Vmz)T gemäß Gleichung (17) berechnet. Der für die Werkzeugmittelpunktposition Vm ist in 12 dargestellt. Die Berechnung von Vm erfolgt für jeden Befehlsblock durch die Berechnungsvorrichtung 8 für die koordinatentransformierte Werkzeugphase, die in 14 dargestellt wird. Die Symbole Xp, Yp, Zp stellen die X-, Y-, Z-Positionen des unmittelbar vorausgehenden Blocks dar. Es sollte beachtet werden, dass Vm auf Basis der X-, Y-, Z-Positionen im gegenwärtigen und in vorhergehenden Blöcken berechnet werden kann, wenn es Sätze von X-, Y-, Z-Positionen in vorhergehenden Blöcken gibt. Zum Beispiel kann Vm ein beweglicher Durchschnitt der X-, Y-, Z-Positionen im gegenwärtigen und in vorhergehenden Blöcken sein. Ein Bewegungsausmaß (d. h. der Nenner in Gleichung (17)) nimmt nicht den Wert 0 (Null) an.
  • Figure DE102009003003B4_0008
  • In der oben beschriebenen Ausführungsform wird der Bewegungsrichtungsvektor für die Werkzeugmittelpunktposition Vm für jeden Befehlsblock durch die in 14 dargestellte Berechnungsvorrichtung 8 für die koordinatentransformierte Werkzeugphase berechnet. Ersatzweise kann Vm für jede Interpolation unter Verwendung der in 16 dargestellten Berechnungsvorrichtung 8 für die koordinatentransformierte Werkzeugphase berechnet werden. In diesem Fall stellen Xp, Yp, Zp die X-, Y-, Z-Positionen im unmittelbar vorhergehenden Interpolationszyklus dar. Wenn es Sätze von Interpolationspositionen in vorhergehenden Interpolationszyklen gibt, kann Vm auf Basis der gegenwärtigen und der vorhergehenden Interpolationspositionen berechnet werden. Zum Beispiel kann Vm ein beweglicher Durchschnitt der gegenwärtigen und der vorhergehenden Interpolationspositionen sein.
  • Dann wird ein Winkel b zwischen dem Werkzeugphasen-Nullvektor Vp0 und dem Bewegungsrichtungsvektor für die Werkzeugmittelpunktposition Vm anhand von Gleichung (18) ermittelt (siehe 12). Vm = Mb·Vp0 (18)
  • Die Matrix Mb ist eine Matrix für die Rotation um den Werkzeugausrichtungsvektor Vt durch einen Winkel b (siehe Gleichung (19)).
  • Figure DE102009003003B4_0009
  • Die durch Gleichung (19) dargestellte Matrix Mb enthält nur einen unbekannten Winkel b, der durch Lösen von Gleichung (18) ermittelt werden kann.
  • Ein Winkel a, zwischen dem Werkzeugphasenbefehlsvektor Vpc, der in Form von AA befohlen wird, und dem Bewegungsrichtungsvektor für die Werkzeugmittelpunktposition Vm wird ermittelt (siehe 12), wie in Gleichung (20) dargestellt. a = b – AA (20)
  • Dann wird der Bewegungsrichtungsvektor für die Werkzeugmittelpunktposition Vm gemäß dem Schiefe-Ebene-Bearbeitungsbefehl (der Koordinatentransformation) in Vm' umgewandelt (siehe 12), wie in Gleichung (21) dargestellt. Vm' = Mc3·Vm (21)
  • Als nächstes wird ein Winkel b' zwischen Vm' und Vp0' anhand von Gleichung (22) bestimmt (siehe 12). Vm' = Mb'·Vp0' (22)
  • Das Symbol Mb' steht für eine Matrix für die Rotation durch den Winkel b' um den Werkzeugausrichtungsvektor Vt' nach Koordinatentransformation. Vt' ist derselbe wie in der ersten Ausführungsform.
  • Figure DE102009003003B4_0010
  • Gleichung (22) enthält nur ein unbekanntes b', das durch Lösen von Gleichung (22) ermittelt werden kann. Eine AA-Achsenposition AA' nach Durchführung des Schiefe-Ebene-Bearbeitungsbefehls (nach der Koordinatentransformation) kann anhand von Gleichung (24) bestimmt werden (siehe 12). AA' = b' – a (24)
  • Durch die in Gleichung (24) dargestellte Berechnung kann AA' ermittelt werden, so dass der befohlene Winkel a vor der Koordinatentransformation sogar nach der Koordinatentransformation beibehalten wird. Deshalb wird sogar bei Durchführung einer Koordinatentransformation die Positionsbeziehung zwischen Werkzeugausrichtung, Werkzeugbewegungsrichtung und Walzenausrichtung beibehalten und daher die Faser korrekt verarbeitet (gewickelt) (siehe 12).
  • Auch bei der ersten Ausführungsform wird der befohlene Winkel a vor der Koordinatentransformation sogar nach der Koordinatentransformation beibehalten. Deshalb wird sogar bei Durchführung einer Koordinatentransformation die Positionsbeziehung zwischen Werkzeugausrichtung, Werkzeugbewegungsrichtung und Walzenausrichtung beibehalten und daher die Faser korrekt verarbeitet (gewickelt).
  • Als nächstes wird anhand eines Blockschemas beschrieben, wie die Werkzeugphasen-Steuerung gemäß einer Ausführungsform der Erfindung verarbeitet wird.
  • 13 zeigt den Stand der Technik in einem Blockschema. Eine Bearbeitungsprogramm-Lesevorrichtung 1 liest ein Bearbeitungsprogramm, das einen Befehl für die drei linearen Achsen (Werkzeugmittelpunktpositionsbefehl), einen Werkzeugausrichtungsbefehl und einen Werkzeugphasenbefehl (AA-Achsenpositionsbefehl) enthält.
  • Die Analysevorrichtung 2 analysiert das gelesene Programm. Zu diesem Zeitpunkt berechnet die Koordinatentransformationsvorrichtung für die Analyse 4 die Matrizen Mc und Mc3 und führt eine Koordinatentransformation einer Position durch, die von dem Programm befohlen wird. Aus dem Werkzeugphasenbefehl (AA-Achsenpositionsbefehl) ermittelt die Werkzeugphasen-Steuerungsvorrichtung 5 eine dritte Rotationsachsenposition (AA-Achsenposition), die bei der Werkzeugphasen-Steuerung verwendet werden soll. Es wird darauf hingewiesen, dass die Koordinatentransformation und der Werkzeugphasenbefehl nicht gleichzeitig ausgeführt werden können. Eine Alarmerzeugungsvorrichtung 9 erzeugt einen Alarm und stoppt den Betrieb, wenn die Koordinatentransformation und der Werkzeugphasenbefehl gleichzeitig befohlen werden.
  • Entsprechend dem Inhalt, der durch Analyse mithilfe Analysevorrichtung 2 erhalten wird, interpoliert die Interpolationsvorrichtung 3 die Werkzeugmittelpunktposition und die Werkzeugausrichtung. Zu diesem Zeitpunkt führt eine Koordinatentransformationsvorrichtung für die Interpolation 6 Koordinatentransformationen der interpolierten Werkzeugmittelpunktposition und der interpolierten Werkzeugausrichtung unter Verwendung von Mc und Mc3 durch. Auf Basis der koordinatentransformierten Werkzeugmittelpunktposition und der koordinatentransformierten Werkzeugausrichtung ermittelt die Werkzeugmittelpunkt-Steuerungsvorrichtung 7 eine Werkzeugmittelpunktposition, eine erste Rotationsachsenposition, eine zweite Rotationsachsenposition und drei lineare Achsenpositionen.
  • Hinsichtlich der Werkzeugphase wird eine übliche Interpolation der durch die Analyse ermittelten dritten Rotationsachsenposition (AA-Achsenposition) durchgeführt. Es wird darauf hingewiesen, dass die Koordinatentransformation und der Werkzeugphasenbefehl nicht gleichzeitig ausgeführt werden können. Servomotoren an den jeweiligen Achsen werden auf die drei linearen Achsenpositionen und die durch die Interpolationsvorrichtung 3 ermittelten Rotationsachsenpositionen gesteuert, so dass sie die jeweiligen Achsen antreiben.
  • 14 zeigt eine Ausführungsform der Erfindung, wobei eine Berechnungsvorrichtung 8 für die koordinatentransformierte Werkzeugphase zu dem in 13 dargestellten Stand der Technik hinzugefügt wird. Die Berechnungsvorrichtung 8 für die koordinatentransformierte Werkzeugphase wird zu der in 13 dargestellten Werkzeugphasen-Steuerungsvorrichtung 5 hinzugefügt, wodurch die dritte Rotationsachsenpositionen als ein Winkel zu dem Werkzeugphasen-Nullvektor ermittelt wird, der in eine festgelegte Richtung zeigt, so dass die Werkzeugphase nach der Koordinatentransformation mit der festgelegten Richtung übereinstimmt. So wird es möglich, die Koordinatentransformation und den Werkzeugphasenbefehl gleichzeitig zu befehlen. Dadurch wird die bei dem in 13 gezeigten Stand der Technik bereitgestellte Alarmerzeugungsvorrichtung 9 unnötig.
  • 15 zeigt einen anderen Stand der Technik in einem Blockschema. Eine Bearbeitungsprogramm-Lesevorrichtung 1 liest ein Bearbeitungsprogramm, das einen Befehl für die drei linearen Achsen (Werkzeugmittelpunktpositionsbefehl), einen Werkzeugausrichtungsbefehl und einen Werkzeugphasenbefehl (AA-Achsenpositionsbefehl) enthält. Die Analysevorrichtung 2 analysiert das gelesene Programm. Die Koordinatentransformationsvorrichtung für die Analyse 4 berechnet die Matrizen Mc und Mc3 und führt eine Koordinatentransformation einer Position durch, die von dem Programm befohlen wird. Es wird darauf hingewiesen, dass die Koordinatentransformation und der Werkzeugphasenbefehl nicht gleichzeitig ausgeführt werden können. Wenn die Koordinatentransformation und der Werkzeugphasenbefehl gleichzeitig befohlen werden, erzeugt eine Alarmerzeugungsvorrichtung 9 einen Alarm und stoppt den Betrieb.
  • Entsprechend dem analysierten Inhalt interpoliert die Interpolationsvorrichtung 3 die Werkzeugmittelpunktposition und die Werkzeugausrichtung. Zu diesem Zeitpunkt führt eine Koordinatentransformationsvorrichtung für die Interpolation 6 Koordinatentransformationen der interpolierten Werkzeugmittelpunktposition und der interpolierten Werkzeugausrichtung unter Verwendung von Mc und Mc3 durch. Die Werkzeugmittelpunkt-Steuerungsvorrichtung 7 ermittelt eine Werkzeugmittelpunktposition, eine erste Rotationsachsenposition, eine zweite Rotationsachsenposition und drei lineare Achsenpositionen auf Basis der Werkzeugmittelpunktposition und der Werkzeugausrichtung nach der Koordinatentransformation. Zudem ermittelt die Werkzeugphasen-Steuervorrichtung 5 eine dritte Rotationsachsenposition, die bei der Werkzeugphasen-Steuerung verwendet werden soll. Es wird darauf hingewiesen, dass die Koordinatentransformation und der Werkzeugphasenbefehl nicht gleichzeitig ausgeführt werden können. Servomotoren an den jeweiligen Achsen werden auf die durch die Interpolationen ermittelten drei linearen Achsenpositionen und die Rotationsachsenpositionen gesteuert, so dass sie die jeweiligen Achsen antreiben.
  • 16 zeigt eine Ausführungsform der Erfindung, wobei eine Berechnungsvorrichtung 8 für die koordinatentransformierte Werkzeugphase zu dem in 15 dargestellten Stand der Technik hinzugefügt wird. Die Berechnungsvorrichtung 8 für die koordinatentransformierte Werkzeugphase wird zu der in 15 dargestellten Werkzeugphasen-Steuervorrichtung 5 hinzugefügt, und eine dritte Rotationsachsenposition als ein Winkel zu einem Werkzeugphasen-Nullvektor ermittelt, der in eine festgelegte Richtung zeigt, so dass die Werkzeugphase nach der Koordinatentransformation mit der festgelegten Richtung übereinstimmt. So wird es möglich, gleichzeitig die Koordinatentransformation und den Werkzeugphasenbefehl zu befehlen. Dadurch muss bei dem in 13 gezeigten Stand der Technik bereitgestellte Alarmerzeugungsvorrichtung 9 nicht mehr bereitgestellt werden.
  • 17 zeigt in einem Fließschema den Algorithmus eines Verfahrens, das von der in 14 dargestellten Berechnungsvorrichtung 8 für die koordinatentransformierte Werkzeugphase ausgeführt wird. Im Folgenden werden die jeweiligen Schritte beschrieben. Es werden befohlene AA-, BB- und CC-Achsenpositionen AA, BB, CC erhalten (Schritt SA1). Dann werden Vt anhand von Gleichung (1) sowie Vt' anhand von Gleichung (5) berechnet (Schritt SA2). Es wird darauf hingewiesen, dass die bei den Berechnungen verwendeten Mc und Mc3 bereits erhalten wurden. Wenn die Werkzeugausrichtung durch BB- und CC-Achsen-Befehle vorgegeben wird, wie beim Programmbeispiel 3-1 (10), sind BB und CC die befohlenen BB- und CC-Achsenpositionen. Wird die Werkzeugausrichtung durch einen Vektor vorgegeben, wie beim Programmbeispiel 3-2 (11), sind BB und CC die aus einem befohlenen Vektor umgewandelten BB- und CC-Achsenpositionen.
  • Als nächstes werden Vp0 anhand von Gleichung (8), Vp0' anhand von Gleichung (9) und Vpc' anhand von Gleichung (14) berechnet (Schritt SA3). Dann wird Gleichung (15) gelöst und dadurch AA' berechnet (Schritt SA4). Das Verfahren ist beendet.
  • 18 zeigt in einem Fließschema den Algorithmus eines Verfahrens, das von der in 16 dargestellten Berechnungsvorrichtung 8 für die koordinatentransformierte Werkzeugphase ausgeführt wird. Im Folgenden werden die jeweiligen Schritte beschrieben. Es wird ermittelt, ob F1 gleich 0 ist oder nicht (Schritt SB1). Wenn ermittelt wird, dass F1 gleich 0 ist, wird F1 auf 1 gesetzt. Dadurch werden die X-, Y-, Z-Positionen beim Blockstart auf Xp, Yp und Zp gesetzt und das Verfahren geht weiter zum Schritt SB2 (Schritte SB9 und SB10). Wird dagegen ermittelt, dass F1 nicht gleich 0 ist, werden die befohlenen X-, Y-, Z-, AA-, BB- und CC-Achsenpositionen X, Y, Z, AA, BB, CC erhalten (Schritt SB2). Es wird darauf hingewiesen, dass X, Y, Z, AA, BB, CC durch die Werkzeugmittelpunkt-Steuerungsvorrichtung und die Werkzeugphasen-Steuerungsvorrichtung des Standes der Technik berechnet werden.
  • Als nächstes werden Vt anhand von Gleichung (1) sowie Vt' anhand von Gleichung (5) berechnet (Schritt SB3). Es wird darauf hingewiesen, dass Mc und Mc3 bereits erhalten wurden. Dann werden Vp0 anhand von Gleichung (8), Vp0' anhand von Gleichung (9) und Vm anhand von Gleichung (17) berechnet und Gleichung (18) wird gelöst, wodurch ”b” bestimmt wird (Schritt SB4).
  • Als nächstes werden ”a” anhand von Gleichung (20) (Schritt SB5) und Vm' anhand von Gleichung (21) berechnet und Gleichung (22) wird gelöst, so dass b' bestimmt wird (Schritt SB6). Dann wird AA' anhand von Gleichung (24) berechnet (Schritt SB7). Als nächstes werden X, Y und Z auf Xp, Yp und Zp gesetzt (Schritt SB8) und das Verfahren ist beendet.
  • Es wird darauf hingewiesen, dass ”F1” im Schritt SB1 ein Kennzeichen ist, das zur Identifikation eines ersten Interpolationszyklus verwendet wird. Das Kennzeichen F1 ist in einem Anfangszustand auf 0 gesetzt. Im Schritt SB4 werden Xp, Yp, Zp im ersten Interpolationszyklus (F1 = 0) auf Basis der X-, Y-, Z-Positionen beim Blockstart bestimmt. Im zweiten und in folgenden Interpolationszyklen werden Xp, Yp, Zp jeweils auf die X-, Y-, Z-Positionen im vorhergehenden Interpolationszyklus eingestellt. Im zweiten und in folgenden Interpolationszyklen kann jedoch eine Anzahl vorhergehender Interpolationsdaten zurückbehalten und Vm auf Basis dieser Daten bestimmt werden. Zum Beispiel kann Vm ein beweglicher Durchschnitt der jeweiligen Interpolationsdaten sein.
  • 19 zeigt in einem Blockschema eine numerische Steuerung (CNC) 100 für die Durchführung einer Werkzeugphasen-Steuerung nach einer Ausführungsform der Erfindung. Eine CPU 11 ist ein Prozessor zum Steuern der gesamten numerischen Steuerung 100. Die CPU 11 liest über einen Bus 20 ein Systemprogramm, das in einem ROM 12 gespeichert ist, und steuert die gesamte numerische Steuerung 100 anhand des Systemprogramms.
  • Ein RAM 13 speichert temporäre Rechendaten, Anzeigedaten und verschiedene Daten, die von einem Benutzer über eine LCD/MDI-Einrichtung 70 eingegeben werden.
  • Ein SRAM-Speicher 14 wird von einer Batterie (nicht dargestellt) unterstützt und ist als Permanentspeicher konstituiert, der gespeicherten Inhalt zurückbehalten kann, sogar wenn die Stromversorgung zur numerischen Steuerung 100 abgeschaltet wird. Der SRAM-Speicher 14 speichert Bearbeitungsprogramme, die über eine Schnittstelle 15 gelesen oder über die LCD/MDI-Einrichtung 70 und dergleichen eingegeben werden. Ein Bearbeitungsprogramm zur Durchführung der Erfindung und ein anderes Bearbeitungsprogramm können über die Schnittstelle 15 gelesen oder über eine LCD/MDI-Einrichtung 70 eingegeben und im SRAM-Speicher 14 gespeichert werden.
  • Der ROM 12 wird zuvor mit Systemprogrammen beschrieben zur Durchführung eines Verfahrens, mit dem ein Bearbeitungsprogramm erzeugt und in einem Editiermodus editiert wird, und eines Verfahrens für den automatischen Betrieb. Ein Programm, das bei der erfindungsgemäßen Werkzeugphasen-Steuerung verwendet wird, ist ebenfalls im ROM 12 gespeichert.
  • Die Schnittstelle 15 kann eine Verbindung zwischen der numerischen Steuerung 100 und einer externen Vorrichtung 72, wie einem Adapter, herstellen. Bearbeitungsprogramme, Parameter usw. werden aus der externen Vorrichtung 72 gelesen. Ein durch die numerische Steuerung editiertes Bearbeitungsprogramm kann in einer externen Speichervorrichtung über die externe Vorrichtung 72 gespeichert werden.
  • Eine PC (programmierbare Steuerung) 16 gibt Signale an Hilfsvorrichtungen (z. B. eine Schmiermittelzuführvorrichtung) für eine Werkzeugmaschine über eine EIN/AUS-Einheit 17 gemäß einem Sequenzprogramm aus, das in der numerischen Steuerung 100 enthalten ist. Dadurch werden die Hilfsvorrichtungen gesteuert. Die PC 16 empfängt Signale von Schaltern auf einer Bedienungskonsole 71, die am Werkzeugmaschinenkörper angebracht ist, führt daran die gewünschte Signalverarbeitung durch und sendet die verarbeiteten Signale an die CPU 11.
  • Die LCD/MDI-Einrichtung 70 ist eine Vorrichtung zur manuellen Dateneingabe mit einer Anzeige und einer Tastatur. Eine Schnittstelle 18 empfängt Befehle und Daten von der Tastatur der LCD/MDI-Einrichtung 70 und sendet sie an die CPU 11. Eine Schnittstelle 19 ist mit der Bedienungskonsole 71 verbunden, die einen manuellen Impulsgenerator aufweist.
  • Die Servoregler 30 bis 35 für die jeweiligen Achsen empfangen Achsenbewegungsbefehle von der CPU 11 und geben die Befehle an Servoverstärker 40 bis 45 aus. Als Reaktion auf diese Befehle treiben die Servorverstärker 40 bis 45 Achsen-Servomotoren 50 bis 55 an. Die Achsen-Servomotoren 50 bis 55 mit Positionsdetektoren (nicht gezeigt) senden Feedbacksignale von den Positionsdetektoren zurück an die Servoregler 30 bis 35. Die Servoregler 30 bis 35 für die jeweiligen Achsen führen eine Positions-/Geschwindigkeitsregelung auf Basis der Feedbacksignale durch.
  • Die oben beschriebene Hardware-Konfiguration der numerischen Steuerung 100 ist gleich derjenigen der numerischen Steuerung des Standes der Technik. Die numerische Steuerung 100 kann eine Sechs-Achsen-Bearbeitungsmaschine so steuern, dass eine Werkzeugmittelpunkt-Steuerung durchgeführt wird. Die erfindungsgemäße numerische Steuerung 100 führt das in der ersten oder der zweiten Ausführungsform beschriebene Verfahren durch und kann dadurch eine Koordinatentransformation (einen Schiefe-Ebene-Bearbeitungsbefehl) von einem Werkzeugmittelpunkt-Befehl einschließlich einer Werkzeugphasen-Steuerung durchführen.

Claims (9)

  1. Numerische Steuerung zum Steuern einer Sechs-Achsen-Bearbeitungsmaschine, die ein Werkstück bearbeitet, indem ein Werkzeug relativ zu dem Werkstück unter Verwendung von drei linearen (X-, Y-, Z-)Achsen und drei Rotationsachsen von einer ersten (BB-), zweiten (CC-) und dritten (AA-)Rotationsachse bewegt wird, wobei die numerische Steuerung Folgendes umfasst: eine Bearbeitungsprogramm-Lesevorrichtung (1), die so ausgelegt ist, dass sie ein Bearbeitungsprogramm liest, das Befehle für die drei linearen (X-, Y-, Z-)Achsen, einen Werkzeugausrichtungsbefehl zum Zuweisen einer Werkzeugausrichtung und einen Werkzeugphasenbefehl zum Zuweisen einer Werkzeugphase enthält; eine Koordinatentransformationsvorrichtung (4, 6), die so ausgelegt ist, dass sie eine Koordinatentransformation einer Werkzeugmittelpunktposition (Vpos), die von den Befehlen für die drei linearen (X-, Y-, Z-)Achsen zugewiesen wird, und eine Koordinatentransformation einer Werkzeugausrichtung (Vt), die von dem Werkzeugausrichtungsbefehl zugewiesen wird, als Reaktion auf einen Koordinatentransformationsbefehl durchführt; eine Werkzeugmittelpunkt-Steuerungsvorrichtung (7), die so ausgelegt ist, dass sie die Positionen (X, Y, Z) der drei linearen Achsen sowie die Rotationspositionen (BB, CC) der ersten und zweiten Rotationsachse auf Basis der transformierten Werkzeugmittelpunktposition (Vpos') bzw. der transformierten Werkzeugausrichtung (Vt') festlegt; eine Werkzeugphasen-Steuerungsvorrichtung, die so ausgelegt ist, dass sie eine Rotationsposition (AA) der dritten Rotationsachse derart festlegt, dass die Werkzeugphase in die Richtung eines Werkzeugphasenvektors (Vpc) eingestellt wird, der aus dem Werkzeugausrichtungsbefehl und dem Werkzeugphasenbefehl erhalten wird; und eine Antriebsvorrichtung, die derart ausgelegt ist, dass sie die drei linearen Achsen an die festgelegten Positionen und die drei Rotationsachsen an die festgelegten Rotationspositionen treibt, dadurch gekennzeichnet, dass die Werkzeugphasen-Steuerungsvorrichtung eine Post-Transformations-Werkzeugphasen-Berechnungseinrichtung (8) enthält, die derart ausgelegt ist, dass sie einen Post-Transformations-Werkzeugphasenvektor (Vpc'), der dem Werkzeugphasenvektor (Vpc) entspricht, als Reaktion auf den Koordinatentransformationsbefehl bestimmt und zudem eine Post-Transformations-Rotationsposition der dritten (AA-)Rotationsachse bestimmt als einen Phasenwinkel (AA'), der zwischen dem Post-Transformations-Werkzeugphasenvektor (Vpc') und einem Post-Transformations-Werkzeugphasen-Nullvektor (Vp0') gebildet wird, der auf Basis der transformierten Werkzeugausrichtung (Vt') bestimmt wird.
  2. Numerische Steuerung nach Anspruch 1, wobei der Werkzeugausrichtungsbefehl Befehle für die Rotationspositionen der ersten (BB-) und der zweiten (CC-)Rotationsachse enthält.
  3. Numerische Steuerung nach Anspruch 1, wobei der Werkzeugausrichtungsbefehl einen Werkzeugausrichtungsvektor-Befehl enthält.
  4. Numerische Steuerung nach einem der Ansprüche 1 bis 3, wobei der Post-Transformations-Werkzeugphasenvektor (Vpc') ermittelt wird mittels Durchführen einer Koordinatentransformation des Werkzeug phasenbefehlsvektors (Vpc).
  5. Numerische Steuerung nach einem der Ansprüche 1 bis 3, wobei der Post-Transformations-Werkzeugphasenvektor (Vpc') derart bestimmt wird, dass ein Winkel (a) zwischen dem Post-Transformations-Werkzeugphasenvektor (Vpc') und einer Bewegungsrichtung der Werkzeugmittelpunktposition (Vm') an der transformierten Werkzeugmittelpunktposition (Vpos') gleich dem Winkel (a) zwischen dem Werkzeugphasenvektor (Vpc) und einer Bewegungsrichtung der Werkzeugmittelpunkt-Position (Vm) an der Werkzeugmittelpunktposition (Vpos) ist.
  6. Numerische Steuerung nach Anspruch 5, wobei die Bewegungsrichtungen der Werkzeugmittelpunktposition (Vm, Vm') für jeden Interpolationszeitraum auf Basis der Werkzeugmittelpunktpositionen (Vpos, Vpos') im vorherigen und im derzeitigen Interpolationszeitraum bestimmt werden.
  7. Numerische Steuerung nach Anspruch 5, wobei die Bewegungsrichtungen der Werkzeugmittelpunktposition (Vm, Vm') für jeden Block des Bearbeitungsprogramms auf Basis der Werkzeugmittelpunktpositionen (Vpos, Vpos') im vorherigen und im derzeitigen Block bestimmt werden.
  8. Numerische Steuerung nach einem der Ansprüche 1 bis 7, wobei der Post-Transformations-Werkzeugphasen-Nullvektor (Vp0') definiert ist als ein Vektor, der senkrecht zu der transformierten Werkzeugausrichtung (Vt') in einer vertikalen Ebene ist, die einen transformierten Werkzeugausrichtungsvektor enthält, der die transformierte Werkzeugausrichtung (Vt') angibt.
  9. Numerische Steuerung nach einem der Ansprüche 1 bis 7, wobei der Post-Transformations-Werkzeugphasen-Nullvektor (Vp0') definiert ist als ein Vektor, der senkrecht zu der transformierten Werkzeugausrichtung (Vt') in einer horizontalen Ebene ist.
DE102009003003.4A 2008-06-11 2009-05-11 Numerische Steuerung mit der Funktion einer Koordinatentransformation der Werkzeugphase Active DE102009003003B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008153507A JP4503659B2 (ja) 2008-06-11 2008-06-11 座標変換工具位相制御用数値制御装置
JP2008-153507 2008-06-11

Publications (2)

Publication Number Publication Date
DE102009003003A1 DE102009003003A1 (de) 2009-12-17
DE102009003003B4 true DE102009003003B4 (de) 2017-07-06

Family

ID=41317912

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102009003003.4A Active DE102009003003B4 (de) 2008-06-11 2009-05-11 Numerische Steuerung mit der Funktion einer Koordinatentransformation der Werkzeugphase

Country Status (2)

Country Link
JP (1) JP4503659B2 (de)
DE (1) DE102009003003B4 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4945664B2 (ja) 2010-07-28 2012-06-06 ファナック株式会社 傾斜面を加工する多軸加工機用数値制御装置
JP5221724B2 (ja) * 2011-09-07 2013-06-26 ファナック株式会社 ワーク設置誤差補正部を有する多軸工作機械用数値制御装置
JP5426728B2 (ja) 2012-06-28 2014-02-26 ファナック株式会社 多軸加工機用工具姿勢制御機能を有する数値制御装置
WO2014016943A1 (ja) 2012-07-26 2014-01-30 三菱電機株式会社 数値制御装置
JP5452788B1 (ja) * 2013-06-06 2014-03-26 三菱電機株式会社 数値制御装置
CN103809507B (zh) * 2014-03-06 2016-05-25 苏州新代数控设备有限公司 具有坐标同步功能的数值控制系统及其数值控制方法
CN111077849B (zh) * 2019-12-11 2021-04-20 北京动力机械研究所 一种五轴数控机床整体叶轮自适应加工方法
US20230097923A1 (en) * 2020-03-04 2023-03-30 Fanuc Corporation Numerical control device
DE112021004029T5 (de) 2020-10-05 2023-05-17 Fanuc Corporation Numerische steuerung und werkzeugmaschine
CN116261695A (zh) 2020-10-05 2023-06-13 发那科株式会社 程序生成装置以及机床
CN116540630B (zh) * 2023-07-05 2023-09-29 中科航迈数控软件(深圳)有限公司 机床的控制方法、装置、设备及存储介质
CN118342338B (zh) * 2024-06-18 2024-10-18 成都飞机工业(集团)有限责任公司 一种五轴加工中心换刀位姿检测装置及检测方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7283889B2 (en) * 2003-02-19 2007-10-16 Fanuc Ltd Numerical control device, and numerical control method
DE102006022831A1 (de) * 2006-05-16 2007-11-22 Siemens Ag Verfahren zum Steuern einer Schleifmaschine und numerisch gesteuerte Schleifmaschine

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6318404A (ja) 1986-07-09 1988-01-26 Fanuc Ltd 位置制御方法
CA2057222C (en) * 1990-12-19 1998-05-19 Keith G. Shupe Fiber placement delivery system
JP3643098B2 (ja) 2001-10-16 2005-04-27 ファナック株式会社 数値制御装置
JP4036151B2 (ja) * 2003-07-14 2008-01-23 三菱電機株式会社 数値制御装置及び数値制御方法
US7376480B2 (en) 2005-11-09 2008-05-20 The Boeing Company Multihead composite material application machine programming method and apparatus for manufacturing composite structures

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7283889B2 (en) * 2003-02-19 2007-10-16 Fanuc Ltd Numerical control device, and numerical control method
DE102006022831A1 (de) * 2006-05-16 2007-11-22 Siemens Ag Verfahren zum Steuern einer Schleifmaschine und numerisch gesteuerte Schleifmaschine

Also Published As

Publication number Publication date
JP2009301232A (ja) 2009-12-24
JP4503659B2 (ja) 2010-07-14
DE102009003003A1 (de) 2009-12-17

Similar Documents

Publication Publication Date Title
DE102009003003B4 (de) Numerische Steuerung mit der Funktion einer Koordinatentransformation der Werkzeugphase
DE102012003196B4 (de) Numerische Steuervorrichtung mit einer Geschwindigkeitssteuerfunktion für eine maschinelle Mehrachsenverarbeitungsvorrichtung
DE102011108282B4 (de) Numerische Steuerung für eine Mehrachsenmaschine zum Bearbeiten einer geneigten Bearbeitungsebene
DE102019001948B4 (de) Steuerung und maschinelle Lernvorrichtung
DE102011110111B4 (de) Numerische Steuerung einer mehrachsigen Werkzeugmaschine für das Steuern der Lage der Tool Center Point Position
DE69024854T2 (de) Verfahren zur Steuerung von Roboterbewegungen
DE102012017331B4 (de) Numerische Steuervorrichtung mit einer Werkstücksetzfehlerkompensierungseinheit für eine Mehrachsenwerkzeugmaschine
DE10352815B4 (de) Simulationsverfahren für eine Bearbeitung eines Werkstücks durch eine Werkzeugmaschine und korrespondierender Rechner
DE102011015296B4 (de) Numerische Steuerung für eine mehrachsige Werkzeugmaschine
DE102015107436B4 (de) Lernfähige Bahnsteuerung
DE102015015093B4 (de) Roboterprogrammiervorrichtung zum Instruieren eines Roboters für eine Bearbeitung
DE112017000203B4 (de) Numerische Steuerung und numerisches Steuerungsverfahren
DE102017001783B4 (de) Numerische Steuervorrichtung, die eine Erhöhung der Anzahl Analyseziffern eines Programmbefehls ermöglicht
DE102012000932A1 (de) Numerische Steuerungsvorrichtung mit einer Werkstückfehler-Kompensationseinheit für eine dreiachsige Werkzeugmaschine
DE102018000369B4 (de) Numerische steuerung
DE102011104445B4 (de) Numerische Steuerung für eine Werkzeugmaschine mit einer Funktion zur Geschwindigkeitssteuerung einer Bogenführung
WO2009037066A1 (de) Virtuelle werkzeugmaschine zur darstellung von aktionen von bearbeitungseinheiten einer realen werkzeugmaschine
DE102019006725B4 (de) Steuereinrichtung und Steuersystem
DE102015004483A1 (de) Robotersteuerung und Robotersystem zum Bewegen eines Roboters als Reaktion auf eine Kraft
DE102013010404A1 (de) Numerische Steuerung mit einer Werkzeugausrichtungssteuerfunktion für Mehrachsen-Bearbeitungsmaschinen
DE102020124734A1 (de) Simulationsgerät
DE102015009210A1 (de) Numerische Steuerung mit Unterstützung eines linkshändigen Koordinatensystems
DE19532146A1 (de) NC-Verfahren und zugehörige Vorrichtung
DE112013006637B4 (de) Numerische Steuervorrichtung und maschinelles Bearbeitungsverfahren
DE102019000890B4 (de) Robotersystem zum Ausführen einer Lernsteuerung basierend auf Bearbeitungsergebnissen und diesbezügliches Steuerverfahren

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R082 Change of representative

Representative=s name: HASELTINE LAKE LLP, DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G05B0019410000

Ipc: G05B0019408000

R081 Change of applicant/patentee

Owner name: FANUC LTD, OSHINO-MURA, JP

Free format text: FORMER OWNER: FANUC LTD., OSHINO, YAMANASHI, JP

R082 Change of representative

Representative=s name: HASELTINE LAKE KEMPNER LLP, DE

Representative=s name: HL KEMPNER PATENTANWALT, RECHTSANWALT, SOLICIT, DE

Representative=s name: HASELTINE LAKE LLP, DE

R020 Patent grant now final
R082 Change of representative

Representative=s name: HL KEMPNER PATENTANWAELTE, SOLICITORS (ENGLAND, DE

Representative=s name: HL KEMPNER PATENTANWALT, RECHTSANWALT, SOLICIT, DE