DE102011012385B4 - Numerisches Steuergerät, das eine 5-Achsen-Werkzeugmaschine steuert - Google Patents

Numerisches Steuergerät, das eine 5-Achsen-Werkzeugmaschine steuert Download PDF

Info

Publication number
DE102011012385B4
DE102011012385B4 DE102011012385.7A DE102011012385A DE102011012385B4 DE 102011012385 B4 DE102011012385 B4 DE 102011012385B4 DE 102011012385 A DE102011012385 A DE 102011012385A DE 102011012385 B4 DE102011012385 B4 DE 102011012385B4
Authority
DE
Germany
Prior art keywords
axis
compensation
rotation
dependent
amounts
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
DE102011012385.7A
Other languages
English (en)
Other versions
DE102011012385A1 (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 DE102011012385A1 publication Critical patent/DE102011012385A1/de
Application granted granted Critical
Publication of DE102011012385B4 publication Critical patent/DE102011012385B4/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/404Numerical 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 control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • 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/49Nc machine tool, till multiple
    • G05B2219/49344Surface, 5-axis surface machining
    • 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/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50297Compensation of positioning error due to a-axis, b-axis tool rotation

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)
  • Automatic Control Of Machine Tools (AREA)

Abstract

Eine 5-Achsen-Werkzeugmaschine, die ein auf einem Tisch angebrachtes Werkstück mit drei linearen Achsen und zwei Rotationsachsen spanend bearbeitet, wird von einem numerischen Steuergerät gesteuert. Das numerische Steuergerät berechnet einen Translations-Kompensationsbetrag und einen Rotations-Kompensationsbetrag, indem achsenabhängige Translations-Kompensationsbeträge und achsenabhängige Rotations-Kompensationsbeträge auf Basis der Sollpositionen der Achse ermittelt werden. Das numerische Steuergerät bewegt dann die drei linearen Achsen und die zwei Rotationsachsen der 5-Achsen-Werkzeugmaschine in Positionen, die erhalten werden, indem der so berechnete Translations-Kompensationsbetrag und der Rotations-Kompensationsbetrag zu einer Sollposition der linearen Achse bzw. einer Sollposition der Rotationsachse addiert werden.

Description

  • Hintergrund der Erfindung
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft ein numerisches Steuergerät, das eine 5-Achsen-Werkzeugmaschine mit drei linearen Achsen und zwei Rotationsachsen steuert. Die vorliegende Erfindung betrifft insbesondere ein numerisches Steuergerät, das die Steuerung so ausführt, dass die Position eines Werkzeugmittelpunktes fehlerfrei in eine Position bewegt wird, während außerdem die Ausrichtung (Richtung) des Werkzeugs fehlerfrei zu einer Ausrichtung (Richtung) kompensiert wird, indem Kompensationsbeträge entsprechend den Fehlern wie linearachsenabhängige Translationsfehler oder linearachsenabhängige Rotationsfehler in Abhängigkeit von einer Position der linearen Achse oder rotationsachsenabhängige Translationsfehler in Abhängigkeit von einer Position der Rotationsachse eingestellt werden, um dadurch eine hochpräzise spanende Bearbeitung auszuführen.
  • 2. Beschreibung der verwandten Technik
  • Die JP 2009-151 756 A bzw. US 2009/0 140 684 A1 offenbart als nächstliegender Stand der Technik ein numerisches Steuergerät nach Anspruch 1, ohne die Merkmale: dass die Kompensationsbetrag-Addiereinheit die Translations-Kompensationsbeträge zur Sollposition der linearen Achsen und die Rotations-Kompensationsbeträge zur Sollposition der Rotationsachsen addiert, und eine Einheit die drei linearen Achsen und die zwei Rotationsachsen so antreibt, dass sie Positionen einnehmen, die von der Kompensationsbetrag-Addiereinheit ermittelt wurden, wobei, um den Rotationsfehler des Werkzeuglängen-Kompensationsvektors zu kompensieren, die Rotations-Kompensationsbeträge unter Zuhilfenahme eines Vergleichsausdrucks ermittelt werden, der den Werkzeuglängen-Kompensationsvektor mit dem Produkt aus einem Rotationsfehlerwerkzeuglängenkompensationsvektor und einer Transformationsmatrix, die die Rotations-Kompensationsbeträge aufweist, gleichsetzt.
  • Bei der in der oben genannten JP 2009-151 756 A offenbarten Technik erfolgt nur eine Kompensation der Position der linearen Achse. Das bedeutet, dass sich zwar ein Werkzeugmittelpunktposition fehlerfrei in eine Position bewegt, aber die Ausrichtung (Richtung) des Werkzeugs immer noch fehlerbehaftet ist.
  • Die DE 100 46 092 A1 und DE 101 55 430 A1 weisen neben einer Lagekompensation auch eine Orientierungskompensation auf. Ferner lehrt die US 2009/0 157 218 A1 , dass ein Werkzeuglängenvektor neu orientiert wird.
  • Eine solche Kompensation nach der herkömmlichen Technik verursacht keinerlei Probleme, wenn die spanende Bearbeitung bezüglich eines Werkzeugmittelpunktes ausgeführt wird. Wenn die spanende Bearbeitung jedoch bezüglich einer Stirnfläche des Werkzeugs oder in der Richtung eines Werkzeugs ausgeführt wird, wie etwa beim Bohren, ist die Ausrichtung (Richtung) des Werkzeugs von Bedeutung, und nur die Kompensation, den Werkzeugmittelpunkt fehlerfrei in eine Position zu bewegen, ist nicht ausreichend. Somit kann eine hochpräzise spanende Bearbeitung nach der herkömmlichen Technik nicht ausgeführt werden, wenn ein Fehler auftritt, der durch das mechanische System bei der Bearbeitung mit einer Stirnfläche eines Werkzeugs oder beim Bohren mit einer 5-Achsen-Werkzeugmaschine erzeugt wird.
  • Die Hauptfehler, die bei einer 5-Achsen-Werkzeugmaschine auftreten, bei der ein Werkstück spanend bearbeitet wird, sind die folgenden vier Fehler: (1) ein linearachsenabhängiger Translationsfehler, der von der Position einer linearen Achse abhängt, (2) ein rotationsachsenabhängiger Translationsfehler, der von der Position einer Rotationsachse abhängt; (3) ein linearachsenabhängiger Rotationsfehler, der von der Position einer linearen Achse abhängt, und (4) ein rotationsachsenabhängiger Rotationsfehler, der von der Position einer Rotationsachse abhängt.
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung legt deshalb Kompensationsbeträge entsprechend den oben genannten vier Fehlern fest, um einen Translations-Kompensationsbetrag auf Basis der Kompensationsbeträge zu erhalten, und addiert den erhaltenen Translations-Kompensationsbetrag zu einer Sollposition der linearen Achse, und um einen Rotations-Kompensationsbetrag zu erhalten, und addiert den erhaltenen Rotations-Kompensationsbetrag zu einer Sollposition der Rotationsachse. Es ist deshalb die Aufgabe der vorliegenden Erfindung ein numerisches Steuergerät zum Steuern einer 5-Achsen-Werkzeugmaschine bereitzustellen, das eine Werkzeug-Mittelpunktposition fehlerfrei in eine Position bewegt, während außerdem die Werkzeugausrichtung (Richtung) fehlerfrei zu einer Richtung kompensiert wird, um eine hochpräzise spanende Bearbeitung zu verwirklichen. Mit anderen Worten, es ist die Aufgabe der vorliegenden Erfindung, ein numerisches Steuergerät bereitzustellen, das die spanende Bearbeitung mit einer befehlsgemäßen Werkzeugausrichtung (Richtung) selbst bei Bearbeitung mit einer Stirnfläche eines Werkzeugs oder beim Bohren mit einer 5-Achsen-Werkzeugmaschine ausführen kann.
  • Die vorliegende Erfindung betrifft ein numerisches Steuergerät nach Anspruch 1. Vorteilhafte Weiterbildungen sind in den abhängigen Ansprüchen erläutert.
  • Die Sollposition der linearen Achse und die Sollposition der Rotationsachse können Positionen der drei linearen Achsen und der zwei Rotationsachsen sein, die auf Basis eines Programmbefehls interpoliert werden.
  • Die Sollposition der linearen Achse und die Sollposition der Rotationsachse können Positionen der drei linearen Achsen und der zwei Rotationsachsen aufgrund eines Programmbefehls sein.
  • Gemäß der vorliegenden Erfindung werden Kompensationsbeträge entsprechend den jeweiligen Fehlern festgelegt, wodurch ein Translations-Kompensationsbetrag aus den Kompensationsbeträgen erhalten wird. Der erhaltene Translations-Kompensationsbetrag wird zu einer Sollposition der linearen Achse addiert und ein Rotations-Kompensationsbetrag wird ebenalls als Kompensationsbeträge für die Rotationsachsen erhalten. Die erhaltenen Rotations-Kompensationsbeträge werden zu einer Sollposition der Rotationsachse addiert. Demnach ist eine hochpräzise spanende Bearbeitung durch fehlerfreies Bewegen einer Werkzeug-Mittelpunktposition in eine Position möglich, während außerdem die Werkzeugausrichtung in eine fehlerfreien Ausrichtung kompensiert wird.
  • Kurzbeschreibung der Zeichnungen
  • Die genannte Aufgabe und die Merkmale der vorliegenden Erfindung erschließen sich aus der folgenden Beschreibung von Ausführungsformen unter Bezugnahme auf die beiliegenden Zeichnungen; es zeigen:
  • 1 ein Diagramm eines Beispiels einer 5-Achsen-Werkzeugmaschine des Typs mit drehbarem Werkzeugkopf, die einen drehbaren Werkzeugkopf aufweist und von einem numerischen Steuergerät gemäß der vorliegenden Erfindung gesteuert wird, wobei eine B-Achse und eine C-Achse Rotationsachsen sind, aber auch andere Kombinationen wie eine A-Achse und die C-Achse oder die A-Achse und die B-Achse möglich sind;
  • 2 ein Diagramm zur Verdeutlichung von Rotations- und Translationsfehlern und deren Kompensation bei der 5-Achsen-Werkzeugmaschine des Typs mit drehbarem Werkzeugkopf von 1;
  • 3 ein Diagramm mit dem erläutert wird, dass bei Annahme, es liege kein Rotationsfehler aufgrund eines Rotationselements Mr einer Transformationsmatrix vor, der Rotationsmittelpunkt einer B-Achse in einer Richtung (Nb0) liegt, die durch Drehen einer Y-Achsenrichtung um C erhalten wird, bei der es sich im den Rotationsmittelpunkt der B-Achse handelt, wenn C = 0 erfüllt wird, und der Rotationsmittelpunkt einer C-Achse Nc0 ist, wobei es sich um die Z-Achsenrichtung handelt;
  • 4 ein Diagramm eines dreidimensionalen Koordinatensystems, das in Gitterzonen geteilt ist;
  • 5 ein Diagramm einer Gitterzone, die eine Sollposition Pl(X, Y, Z) der linearen Achse enthält, für die ein Kompensationsvektor zu berechnen ist;
  • 6 ein Diagramm eines zweidimensionalen Koordinatensystems, das in Gitterzonen geteilt ist;
  • 7 ein Diagramm einer Gitterzone, die eine Sollposition Pr(B, C) der Rotationsachse enthält, für die ein Kompensationsvektor zu berechnen ist;
  • 8 ein Diagramm eines eindimensionalen Koordinatensystems der B-Achse, das in vorgegebenen Abständen geteilt ist;
  • 9 ein Diagramm einer geteilten Zone, die eine Sollposition B der B-Achse enthält, für die ein Kompensationsvektor zu berechnen ist;
  • 10 ein Diagramm, das zeigt, dass ein C-achsenabhängiger Translations-Kompensationsbetrag und ein C-achsenabhängiger Rotations-Kompensationsbetrag in einem gegebenen Punkt eines C-Achsen-Koordinatensystems auf Basis einer C-achsenabhängigen Kompensationstabelle berechnet werden;
  • 11 ein Blockdiagramm eines Hauptteils einer ersten Ausführungsform des numerischen Steuergeräts, das eine 5-Achsen-Werkzeugmaschine steuert, gemäß der vorliegenden Erfindung;
  • 12 ein Blockdiagramm eines Hauptteils einer zweiten Ausführungsform des numerischen Steuergeräts, das eine 5-Achsen-Werkzeugmaschine steuert, gemäß der vorliegenden Erfindung;
  • 13 ein Blockdiagramm eines Hauptteils einer dritten Ausführungsform des numerischen Steuergeräts, das eine 5-Achsen-Werkzeugmaschine steuert, gemäß der vorliegenden Erfindung; und
  • 14 ein Flussdiagramm eines Kompensationsalgorithmus, der in der ersten Ausführungsform des numerischen Steuergeräts der vorliegenden Erfindung implementiert ist.
  • Detaillierte Beschreibung der bevorzugten Ausführungsformen
  • Nachstehend werden Ausführungsformen eines numerischen Steuergeräts, das eine 5-Achsen-Werkzeugmaschine gemäß der vorliegenden Erfindung steuert, anhand der Zeichnungen beschrieben. 5-Achsen-Werkzeugmaschinen werden allgemein in drei Typen eingeteilt, bei denen es sich um einen ”Typ mit rotierendem Werkzeugkopf”, einen ”Typ mit rotierendem Tisch” und einen ”kombinierten Typ (bei dem sowohl der Werkzeugkopf als auch der Tisch drehbar sind)” handelt. Da jedoch Rotationsachsen nicht immer so gesteuert werden können, dass ein eventueller Fehler einer Werkzeugausrichtung (Richtung) relativ zu einem Werkstück bei einer 5-Achsen-Werkzeugmaschine des ”Typs mit rotierendem Tisch” oder des ”kombinierten Typs” kompensiert wird, ist die Erfindung gemäß der vorliegenden Anmeldung insbesondere für eine 5-Achsen-Werkzeugmaschine des ”Typs mit rotierendem Werkzeugkopf” vorgesehen.
  • 1 zeigt ein Beispiel einer 5-Achsen-Werkzeugmaschine, die von einem numerischen Steuergerät gemäß der vorliegenden Erfindung gesteuert wird. Die in 1 dargestellte 5-Achsen-Werkzeugmaschine ist ein Typ mit rotierendem Werkzeugkopf, bei der ein Werkzeugkopf 11 drehbar ist. Die Rotationsachsen sind hier die B-Achse und die C-Achse. Es können aber auch die A-Achse und die C-Achse oder die A-Achse und die B-Achse sein.
  • Als Nächstes werden Rotationsfehler und Translationsfehler sowie deren Kompensation bei einer 5-Achsen-Werkzeugmaschine des Typs mit rotierendem Werkzeugkopf anhand von 2 beschrieben.
  • 2, die ein Werkzeugkopf-Koordinatensystem in einer (Xt, Yt, Zt)-Koordinate mit dem Rotationsmittelpunkt eines Werkzeugkopfes als Ursprung darstellt, zeigt, dass das Werkzeugkopf-Koordinatensystem aufgrund eines linearachsenabhängigen Translationsfehlers und eines linearachsenabhangigen Rotationsfehlers zu einer (Xt', Yt', Zt')-Koordinate verschoben ist, und ferner, dass das Werkzeugkopf-Koordinatensystem aufgrund eines rotationsachsenabhängigen Translationsfehlers und eines rotationsachsenabhängigen Rotationsfehlers zu einer (Xt'', Vt'', Zt'')-Koordinate verschoben ist.
  • In 2 repräsentieren –ΔIn, –ΔJn und –ΔKn (n = L, R) Rotationsfehler um die X-Achse, die Y-Achse bzw. die Z-Achse, zwischen den Koordinatensystemen. –ΔXn, –ΔYn und –ΔZn (n = L, R) repräsentieren Translationsfehler in der X-Achsenrichtung, der Y-Achsenrichtung bzw. der Z-Achsenrichtung zwischen den Koordinatensystemen. Die Fehlerbeträge sind sehr klein und deshalb in 2 vergrößert dargestellt, um sie deutlicher zu machen.
  • Die linearachsenabhängigen Translations-Kompensationsbeträge und die linearachsenabhängigen Rotations-Kompensationsbeträge auf Basis einer Sollposition Pl(X, Y, Z) (in den Figuren auch „Befehlsposition” genannt) der linearen Achse werden durch (ΔXL, ΔYL, ΔZL) bzw. (ΔIL, ΔJL, ΔKL) repräsentiert und die rotationsachsenabhängigen Translations-Kompensationsbeträge sowie die rotationsachsenabhängingen Rotations-Kompensationsbeträge auf Basis einer Sollposition Pr(B, C) der Rotationsachse werden durch (ΔXR, ΔYR, ΔZR) bzw. (ΔIR, ΔJR, ΔKR) repräsentiert. Diese werden als achsenabhängige Translations-Kompensationsbeträge und achsenabhängige Rotations-Kompensationsbeträge bezeichnet. Da die Fehler und Kompensationsbeträge bezüglich eines rotierenden Werkzeugkopfes mit positiven und negativen Vorzeichen entgegengesetzt sind, werden die Fehler durch ein ”negatives Vorzeichen” an ihren Kompensationsbeträgen in den Zeichnungen und der Beschreibung dargestellt.
  • Ein Vektor –T'(–Tx', –Ty', –Tz')T, der invers zu einem tatsächlichen Werkzeuglängen-Kompensationsvektor T'(Tx', Ty', Tz')T ist, kann durch Multiplizieren eines Vektors –T(–Tx, –Ty, –Tz)T, der invers zu einen Werkzeuglängen-Kompensationsvektor T(Tx, Ty, Tz)T ist, mit Transformationsmatrizen entsprechend den Fehlern wie im folgenden Ausdruck (1) erhalten werden. ”T” im Rahmen dieser Beschreibung bedeutetet Transposition. ”T wird jedoch nicht besonders beschrieben, wenn die Transposition offensichtlich ist.
  • Die Matrizen im Ausdruck (1) sind Translations- und Rotationstransformationsmatrizen und (ΔIL, ΔJL, ΔKL) und (ΔIR, ΔJR, ΔKR) sind Radianeinheiten. Außerdem wird bei Annahme, dass die Werte der Rotationsfehler (–ΔIL, –ΔJL, –ΔKL) und (–ΔIR, -ΔJR, –ΔKR) hinreichend klein sind, davon ausgegangen, dass die jeweiligen Elemente der Matrizen im Ausdruck (1) die Gleichungen sin(–ΔIn) = –Mn, sin(–Mn) = –Mn, sin(–ΔKn) = –ΔKn, cos(–ΔIn) = 1, cos(–ΔJn) = 1, cos(–ΔKn) = 1 (n = L, R) erfüllen, so dass der Ausdruck eine Näherung ist, in der Fehlerterme zweiter oder höherer Ordnung bei der Expansion zu Potenzreihen der trigonometrischen Funktionen vernachlässigt werden. Alternativ können trigonometrische Funktionen natürlich in den Transformationsmatrizen ohne Näherung verwendet werden.
  • Figure DE102011012385B4_0002
  • Alternativ kann anstelle des Ausdrucks (1) auch der folgende Ausdruck (2) erhalten werden, indem Fehlerterme zweiter Ordnung in den Ergebnissen der Multiplikation der Transformationsmatrizen vernachlässigt werden.
  • Figure DE102011012385B4_0003
  • Es ist ein Fall denkbar, bei dem rotationsachsenabhängige Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) und rotationsachsenabhängige Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) auf Basis einer Sollposition Pr der Rotationsachse signifikanter sind als linearachsenabhängige Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) und linearachsenabhängige Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) auf Basis einer Sollposition Pl der linearen Achse und die linearachsenabhängigen Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) sowie die linearachsenabhängigen Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) auf Basis einer Sollposition Pl der linearen Achse vernachlässigt werden können. In einem solchen Fall wird die Matrix, die (ΔXL, ΔYL, ΔZL) und (ΔIL, ΔJL, ΔKL) als Elemente enthält, aus den zwei Transformationsmatrizen auf der rechten Seite des Ausdrucks (1) anstelle des oben beschriebenen Ausdrucks (1) wie folgt gelöscht. Als Ergebnis wird der folgende Ausdruck (3) erhalten.
  • Figure DE102011012385B4_0004
  • Andererseits ist ein Fall möglich, in dem die linearachsenabhängigen Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) und die linearachsenabhängigen Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) auf Basis einer Sollposition Pl der linearen Achse signifikanter sind als die rotationsachsenabhängigen Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) und die rotationsachsenabhängigen Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) auf Basis einer Sollposition Pr der Rotationsachse und die rotationsachsenabhängigen Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) sowie die rotationsachsenabhängigen Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) auf Basis einer Sollposition Pr der Rotationsachse vernachlässigt werden können. In einem solchen Fall wird die Matrix, die (ΔXR, ΔYR, ΔZR) und (ΔIR, ΔJR, ΔKR) als Elemente enthält, aus den zwei Transformationsmatrizen auf der rechten Seite des Ausdrucks (1) anstelle des Ausdrucks (1) gelöscht. Als Ergebnis wird der folgende Ausdruck (4) erhalten.
  • Figure DE102011012385B4_0005
  • Wenn die Multiplikation der zwei Transformationsmatrizen im Ausdruck (1) ausgeführt wird, ohne die Fehlerterme zweiter Ordnung wie in Ausdruck (2) zu vernachlässigen, wird der folgende Ausdruck (5) erhalten.
  • Figure DE102011012385B4_0006
  • Die Rotationselemente und die Translationselemente in den obigen Ausdrücken (5), (2), (3) und (4) werden getrennt und kollektiv im folgenden Ausdruck (6) ausgedrückt. Mr repräsentiert die Rotationselemente der Transformationsmatrix und Mt repräsentiert die Translationselemente der Transformationsmatrix.
  • Figure DE102011012385B4_0007
  • Auf Basis des Ausdrucks (6) wird die Beziehung von T', Mr, T und Mt durch den folgenden Ausdruck (7) beschrieben. Wie aus den obigen Ausdrücken (5), (2), (3) und (4) ersichtlich ist, ist Mr eine Matrix, die Rotationsfehler enthält. –T' = Mr·(–T) + Mt (7)
  • Wie der folgende Ausdruck (8) zeigt, können die Translations-Kompensationsbeträge ΔCt(ΔX, ΔY, ΔZ) durch Umkehr des Vorzeichens der Translationsfehler erhalten werden. Diese Beträge sind die Translations-Kompensationsbeträge ΔCt in 2. ΔCt = –Mt (8)
  • Indem hier nur die Rotationselemente betrachtet werden und angenommen wird, dass ein Vektor, der durch Transformieren des Werkzeuglängen-Kompensationsvektors T mit den Rotationselementen Mr erhalten wird, Te(Tex, Tey, Tez) ist, wird die Beziehung durch den folgenden Ausdruck (9) beschrieben. Te repräsentiert einen Werkzeuglängen-Kompensationsvektor für den Rotationsfehler auf Basis einer fehlerhaften Werkzeugausrichtung (Richtung) aufgrund von Rotationsfehlern. (Siehe 2). –Te = Mr·(–T) (9)
  • Der obige Ausdruck (7) kann durch den folgenden Ausdruck (10) gemäß 2 beschrieben werden. T' = Te + ΔCt (10)
  • Der Werkzeuglängen-Kompensationsvektor Te für den Rotationsfehler kann berechnet werden, wenn die Rotationsfehler dem Befehls-Werkzeuglängen-Kompensationsvektor T wie im obigen Ausdruck (9) bereitgestellt werden.
  • Wenn andererseits der relationale Ausdruck einer Transformationsmatrix Rr mit den aktuellen Positionen B und C der B-Achse und der C-Achse, die Rotationsachsen sind, und den Kompensationsbeträgen ΔB und ΔC der B-Achse und der C-Achse in den Positionen erhalten werden kann, dem Werkzeuglängen-Kompensationsvektor Te für den Rotationsfehler und der Werkzeuglängen-Kompensationsvektor T erhalten werden kann, und wenn die Kompensationsbeträge ΔB und ΔC der B-Achse und C-Achse durch Lösen des relationalen Ausdrucks erhalten werden können, kann der Werkzeuglängen-Kompensationsvektor Te für den Rotationsfehler zum eigentlichen Werkzeuglängen-Kompensationsvektor T transformiert werden. Die Beträge ΔB und ΔC sind die Rotations-Kompensationsbeträge ΔCr(ΔB, ΔC) für die B-Achse und die C-Achse, um die fehlerbehaftete Werkzeugausrichtung (Richtung) aufgrund der Rotationsfehler zur Soll-Werkzeugausrichtung (Richtung) zu korrigieren. Rr·Te = T (11)
  • Nunmehr wird die Beziehung der oben genannten Größen Rr, Te und T beschrieben. Zunächst wird eine Matrix R, die sich um einen Einheitsvektor n(n1, n2, n3) als Rotationsmittelpunkt um einen Winkel θ dreht, durch den folgenden Ausdruck (12) beschrieben. (Dies wird z. B. beschrieben in ”MATHEMATICAL ELEMENTS FOR COMPUTER GRAPHICS” von David F. Rogers und 3. Alan Adams).
  • Figure DE102011012385B4_0008
  • Rr im obigen Ausdruck (11) repräsentiert eine Matrix, die sich um eine Richtung Nb dreht, die durch Drehen der Y-Achsenrichtung um die aktuelle Position C der C-Achse und ferner durch Drehen um den Fehlerbetrag von Mr als ein Rotationsmittelpunkt um ΔB erhalten wird, die sich danach in Richtung Nc dreht, die durch Drehen der Z-Achsenrichtung um den Fehlerbetrag von Mr als Rotationsmittelpunkt um ΔC erhalten wird (siehe 2).
  • Die Richtungen Nb und Nc basieren offensichtlich auf den Fakten, dass dann, wenn davon ausgegangen wird, dass kein Rotationsfehler aufgrund von Mr vorhanden ist, der Rotationsmittelpunkt der B-Achse eine Richtung (Nb0) ist, die durch Drehen der Y-Achsenrichtung, die der Rotationsmittelpunkt der B-Achse ist, um C, wenn C = 0 wie in 3 dargestellt erhalten wird, und der Rotationsmittelpunkt der C-Achse andererseits eine Richtung Nc0 ist, die die Z-Achsen Richtung ist, und dass Nb und Nc tatsächlich Rotationsfehler aufgrund von Mr bezüglich der Rotationsmittelpunkte (Nb0, Nc0) ohne Fehler haben. Somit wird Nb durch den folgenden Ausdruck (13) und Nc wird durch den folgenden Ausdruck (14) ausgedrückt. Hier wird angenommen, dass die orthogonale Beziehung zwischen Nb und Nc beibehalten wird.
  • Figure DE102011012385B4_0009
  • Anhand des obigen Ausdrucks (12) wird eine Matrix Rb, die sich um Nb als Rotationsmittelpunkt um ΔB dreht, durch den folgenden Ausdruck (15) beschrieben, und eine Matrix Rc, die sich um Nc als Rotationsmittelpunkt um ΔC dreht, wird durch den folgenden Ausdruck (16) beschrieben. In den Ausdrücken wird eine Näherung als cos(Δα) = 1 und sin(Δα) = Δα(α = B, C) vorgenommen und Fehlerterme zweiter oder höherer Ordnung werden vernachlässigt. Alternativ kann die Berechnung natürlich ohne eine derartige Näherung ausgeführt werden.
  • Figure DE102011012385B4_0010
  • Dementsprechend wird Rr durch den folgenden Ausdruck (17) als das Produkt aus Rc und Rb beschrieben.
  • Figure DE102011012385B4_0011
  • Durch Anwenden von Rr im obigen Ausdruck (11) werden simultane Gleichungen wie im folgenden Ausdruck (18) erhalten.
  • Figure DE102011012385B4_0012
  • ΔB und ΔC können aus den simultanen Gleichungen erhalten werden. Speziell wird ΔB durch den folgenden Ausdruck (19) auf Basis von Gleichung (3) im Ausdruck (18) erhalten.
  • Figure DE102011012385B4_0013
  • Wenn ΔB auf diese Weise erhalten wird, kann ΔC durch die Gleichung (1) oder (2) im obigen Ausdruck (18) erhalten werden. So wird z. B. ΔC durch den folgenden Ausdruck (20) auf Basis der Gleichung (1) erhalten.
  • Figure DE102011012385B4_0014
  • Die Rotations-Kompensationsbeträge ΔCr(ΔB, ΔC) zur Korrektur des Werkzeug-Kompensationsvektors T für den Rotationsfehler bezüglich dem ursprünglichen Soll-Werkzeuglängen-Kompensationsvektor können aus diesen Werten erhalten werden. Dann werden die Translations-Kompensationsbeträge ΔCt(ΔX, ΔY, ΔZ) zur Sollposition Pl(X, Y, Z) der linearen Achse addiert, um eine korrigierte Position Pl'(X', Y', Z') der linearen Achse zu erhalten, und die Rotations-Kompensationsbeträge ΔCr(ΔB, ΔC) werden zur Sollposition Pr(B, C) der Rotationsachse addiert, um eine korrigierte Position Pr'(B', C') der Rotationsachse zu erhalten, so dass die Achsen in die jeweiligen korrigierten Achsenpositionen getrieben werden. Dementsprechend kann die Werkzeug-Mittelpunktposition fehlerfrei in eine Position bewegt werden, während auch die Werkzeugausrichtung (Richtung) in eine fehlerfreie Richtung bewegt wird.
  • Insbesondere ist die richtige Werkzeugkopfposition bezüglich der Sollposition Pl(X, Y, Z) der linearen Achse eine Position der (Xt, Yt, Zt)-Koordinate, aber die tatsächliche Werkzeugkopfposition ist fehlerbedingt eine Position der (Xt'', Yt'', Zt'')-Koordinate, wie aus 2 ersichtlich ist. Indem eine Korrektur mit den Translations-Kompensationsbeträgen ΔCt(ΔX, ΔY, Z) und den Rotations-Kompensationsbeträgen ΔCr(ΔB, ΔC) ausgeführt wird, wird also der tatsächliche Werkzeugkopf aus der durch waagrechte Streifen dargestellten Position in die durch senkrechte Streifen in 2 dargestellte Position bewegt, und die Werkzeugausrichtung wird zur Sollausrichtung. Als Ergebnis kann die Werkzeug-Mittelpunktposition fehlerfrei in eine Position bewegt werden, während auch die Werkzeugausrichtung in eine fehlerfreie Ausrichtung gedreht wird.
  • Es ist zu beachten, dass der Nenner und der Zähler in den vorstehenden Ausdrücken (19) und (20) Werkzeuglängen-Kompensationsvektorelemente oder Werkzeuglängen-Kompensationsvektorelemente für den Rotationsfehler enthalten. Es ist also auch möglich, einen Richtungsvektor nur der Richtungskomponenten des Werkzeuglängen-Kompensationsvektors zu berechnen, indem der Nenner und der Zähler durch die Länge der Werkzeuglängen-Kompensationsvektoren dividiert werden. Speziell dann, wenn der Richtungsvektor von T durch (it, jt, kt) und der Richtungsvektor von Te durch (ite, jte, kte) repräsentiert werden, können die Elemente von T und Te in den obigen Ausdrücken (19) und (20) durch die Richtungsvektoren ersetzt werden.
  • Nunmehr werden die Einstellung und Berechnung der Kompensationsbeträge beschrieben.
  • Es wird eine Ausführungsform zum Erhalten der linearachsenabhängigen Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) und der linearachsenabhängigen Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) auf Basis einer Sollposition Pl(X, Y, Z) der linearen Achse und der rotationsachsenabhängigen Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) sowie der rotationsachsenabhängigen Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) auf Basis einer Sollposition Pr(B, C) der Rotationsachse beschrieben.
  • Zuerst wird ein Verfahren zum Erhalten der linearachsenabhängigen Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) und der linearachsenabhängigen Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) auf Basis der Sollposition Pl(X, Y, Z) der linearen Achse beschrieben.
  • 4 ist ein Diagramm eines dreidimensionalen Koordinatensystems, das in Gitterzonen unterteilt ist. Das dreidimensionale Koordinatensystem ist in ein regelmäßiges Gitter unterteilt. Die Schnittpunkte der Grenzlinien der Gitterteilung werden als Gitterpunkte Pl0 bis Pl26 bezeichnet. Es ist zu beachten, dass nur ein Teil des Koordinatensystems in 4 dargestellt ist, und dass in der Praxis die gesamte Zone, in der eine Maschine bewegt werden kann, in ein Gitter unterteilt ist. Außerdem ist zu beachten, dass die Gitterabstände nicht regelmäßig zu sein brauchen. Zum Beispiel können Gitterpositionen der jeweiligen Achsen wie die X-Achsenpositionen der Gitterpunkte Pl0, Pl1, Pl2 auf der X-Achse, die Y-Achsenpositionen der Gitterpunkte Pl0, Pl3, Pl6 auf der Y-Achse und die Z-Achsenpositionen der Gitterpunkte Pl0, Pl9, Pl18 auf der Z-Achse als Sollwerte eingestellt werden.
  • Durch das mechanische System verursachte Fehler (Translationsfehler und Rotationsfehler) an den Gitterpunkten werden im Voraus gemessen. Das Messverfahren wird hierin nicht ausführlich beschrieben. Ein Vektor mit dem gleichen Absolutwert wie die Richtung entgegengesetzt einem durch das mechanische System an einem Gitterpunkt verursachten Fehler wird als ”Gitterpunkt-Kompensationsvektor” bezeichnet. Die Kompensationsbeträge werden also durch einen sechsdimensionalen Vektor Un(UnX, UnY, UnZ, UnI, UnJ, Unk: n = 0 bis 26) repräsentiert. (UnX, UnY, UnZ) entsprechen den linearachsenabhängigen Translations-Kompensationsbeträgen (ΔXL, ΔYL, ΔZL), während (UnI, UnJ, UnK) den linearachsenabhängigen Rotations-Kompensationsbeträgen (ΔIL, ΔJL, ΔKL) entsprechen. Die Gitterpunkt-Kompensationsvektoren werden in einem nicht flüchtigen Speicher der dgl. gespeichert, der im numerischen Steuergerät in Form einer linearachsenabhängigen Kompensationsbetragstabelle vorgesehen ist. Wenn die Teilung in ein Gitter mit zu kleinen Zonen erfolgt, wird die Datenmenge der Gitterpunkt-Kompensationsvektoren groß, wodurch eine große Speicherkapazität des Speichers erforderlich wird. Deshalb kann die Anzahl der Gitterpunkte, bei denen ein Kompensationsbetrag so genau wie möglich ist, berechnet werden, während die Reduzierung der Datenmenge einigen Zehnfachen pro Achse entspricht.
  • Nunmehr wird ein Verfahren zum Berechnen der linearachsenabhängigen Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) und der linearachsenabhängigen RotationsKompensationsbeträge (ΔIL, ΔJL, ΔKL) auf Basis einer gegebenen Sollposition Pl(X, Y, Z) der linearen Achse beschrieben.
  • 5 ist ein Diagramm einer Gitterzone, die eine Sollposition Pl(X, Y, Z) der linearen Achse enthält, für die ein Kompensationsvektor zu berechnen ist. Im Beispiel von 5 liegt die Sollposition Pl(X, Y, Z) der linearen Achse, für die ein Kompensationsvektor zu berechnen ist, in einer durch die Gitterpunkte Pl0, Pl1, Pl3, Pl4, Pl9, Pl10, Pl12 und Pl13 definierten Zone.
  • Die Gitterabstände der X-Achse, der Y-Achse und der Z-Achse sind Lx, Ly bzw. Lz. Außerdem sind Gitterpunkt-Kompensationsvektoren U0(U0X, U0Y, U0Z, U0I, U0J, U0K), U1(U1X, U1Y, U1Z, U1I, U1J, U1K) ... U13(U13X, U13Y, U13Z, U13I, U13J, U13K) für die Gitterpunkte Pl0, Pl1, Pl3, Pl4, Pl9, Pl10, Pl12 bzw. Pl13 eingestellt. Im Folgenden wird angenommen, dass diese Zone ein lineares Vektorfeld ist, in dem die den jeweiligen Gitterpunkten entsprechenden Gitterpunkt-Kompensationsvektoren in den Gitterpunktpositionen gegeben sind.
  • Wenn ein den Punkt Pl(X, Y, Z) enthaltender Bereich erhalten wird, wird der Gitterpunkt Pl0(Pl0x, Pl0y, Pl0z) als Referenzpunkt bestimmt. Um dann einen Kompensationsvektor für den Punkt Pl zu erhalten, wird die Position im Gitter zuerst zu [0, 1] normalisiert. Die normalisierten Koordinatenwerte (x, y, z) des Punktes Pl werden durch die folgenden Ausdrücke (21) bis (23) bestimmt, wobei die Gitterabstände der X-Achse, der Y-Achse und der Z-Achse Lx, Ly bzw. Lz sind. x = (X – Pl0x)/Lx (21) y = (Y – Pl0y)/Ly (22) z = (Z – Pl0z)/Lz (23)
  • Ein Kompensationsvektor ΔLc(ΔXL, ΔYL, ΔZL, ΔIL, ΔJL, ΔKL) im Punkt Pl wird mit dem folgenden Ausdruck (24) auf Basis der Koordinatenwerte (x, y, z) berechnet.
  • Figure DE102011012385B4_0015
  • Auf diese Weise können die linearachsenabhängigen Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) und die linearachsenabhängigen Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) im gegebenen Punkt Pl(X, Y, Z) des Koordinatensystems der linearen Achse berechnet werden.
  • Wie oben erläutert wird das dreidimensionale Koordinatensystem in ein Gitter unterteilt, wie in 4 dargestellt ist, und der Kompensationsbetragsvektor in der Position des Punktes Pl auf den drei linearen Achsen wird aus den Gitterpunkt-Kompensationsvektoren in den Gitterpunkten erhalten. Alternativ können auch ein zweidimensionales Koordinatensystem und ein eindimensionales Koordinatensystem, das später beschrieben wird, kombiniert werden und der Kompensationsbetragsvektor als ein Kompensationsbetragsvektor in einer Position des Punktes Pl auf zwei linearen Achsen und ein Kompensationsbetragsvektor in einer Position des Punktes Pl auf der anderen linearen Achse erhalten werden. Ferner ist es wahlweise auch möglich, eindimensionale Koordinatensysteme zu kombinieren und den Kompensationsbetragsvektor als einen Kompensationsbetragsvektor in einer Position des Punktes Pl auf einer linearen Achse, einen Kompensationsbetragsvektor in einer Position desselben auf einer anderen linearen Achse und einen Kompensationsbetragsvektor in einer Position desselben auf der anderen linearen Achse zu erhalten.
  • Nunmehr wird ein Verfahren zum Erhalten der rotationsachsenabhängigen Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) und der rotationsachsenabhängigen Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) auf Basis einer Sollposition Pr(B, C) der Rotationsachse beschrieben.
  • 6 ist ein Diagramm eines in Gitterzonen unterteilten zweidimensionalen Koordinatensystems. Das zweidimensionale Koordinatensystem ist in ein regelmäßiges Gitter geteilt. Die Schnittpunkte der Grenzlinien der Gitterteilung werden als Gitterpunkte Pr0 bis Pr8 bezeichnet. Es ist zu beachten, dass nur ein Teil des Koordinatensystems in 6 dargestellt ist, und dass in der Praxis die gesamte Zone, in der eine Maschine bewegt werden kann, in ein Gitter unterteilt ist. Analog zur Beschreibung von 4 ist außerdem zu beachten, dass die Gitterabstände nicht regelmäßig zu sein brauchen. Zum Beispiel können Gitterpositionen auf den jeweiligen Achsen wie die B-Achsenpositionen der Gitterpunkte Pr0, Pr1, Pr2 auf der B-Achse und die C-Achsenpositionen der Gitterpunkte Pr0, Pr3, Pr6 auf der C-Achse als Sollwerte eingestellt werden.
  • Durch das mechanische System verursachte Fehler (Translationsfehler und Rotationsfehler) an den Gitterpunkten werden im Voraus gemessen. Ein Vektor mit dem gleichen Absolutwert wie die Richtung entgegengesetzt zu einem gemessenen Fehler wird als ”Gitterpunkt-Kompensationsvektor” bezeichnet. Die Kompensationsbeträge werden also durch einen sechsdimensionalen Vektor Vn(VnX, VnY, VnZ, VnI, VnJ, VnK: n = 0 bis 8) repräsentiert. (VnX, VnY, VnZ) entsprechen den rotationsachsenabhängigen Translations-Kompensationsbeträgen (ΔXR, ΔYR, ΔZR), und (VnI, VnJ, VnK) den rotationsachsenabhängigen Rotations-Kompensationsbeträgen (ΔIR, ΔJR, ΔKR). Die Gitterpunkt-Kompensationsvektoren werden in einem nicht flüchtigen Speicher oder dgl. in Form einer rotationsachsenabhängigen Kompensationsbetragstabelle gespeichert. Nunmehr wird ein Verfahren zum Berechnen der rotationsachsenabhängigen Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) und der rotationsachsenabhängigen Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) auf Basis einer gegebenen Sollposition Pr(B, C) der Rotationsachse beschrieben.
  • 7 ist ein Diagramm einer Gitterzone, die eine Sollposition Pr(B, C) der Rotationsachse enthält, für die ein Kompensationsvektor zu berechnen ist. Im Beispiel von 7 liegt die Sollposition Pr(B, C) der Rotationsachse, für die ein Kompensationsvektor zu berechnen ist, in einer durch die Gitterpunkte Pr0, Pr1, Pr3 und Pr4 definierten Zone.
  • Außerdem werden die Gitterpunkt-Kompensationsvektoren V0(V0X, V0Y, V0Z, V0I, V0J, V0K), V1(V1X, V1Y, V1Z, V1I, V1J, V1K) ... V4(V4X, V4Y, V4Z, V4I, V4J, V4K) für die Gitterpunkte Pr0, Pr1, Pr3 bzw. Pr4 eingestellt. Im Folgenden wird angenommen, dass diese Zone ein lineares Vektorfeld ist, in dem die den jeweiligen Gitterpunkten entsprechenden Gitterpunkt-Kompensationsvektoren in den Gitterpunktpositionen gegeben sind.
  • Wenn eine den Sollpunkt Pr(B, C) der Rotationsachse enthaltende Zone erhalten wird, wird der Gitterpunkt Pr0(Pr0b, Pr0c) als Referenzpunkt bestimmt. Um dann einen Kompensationsvektor für den Punkt Pr zu erhalten, wird die Position im Gitter zuerst zu [0, 1] normalisiert. Die normalisierten Koordinatenwerte (b, c) des Punktes Pr werden durch die folgenden Ausdrücke (25) bis (26) bestimmt, wobei die Gitterabstände der B-Achse und der C-Achse Lb bzw. Lc sind. b = (B – Pr0b)/Lb (25) c = (C – Pr0c)/Lc (26)
  • Ein Kompensationsvektor ΔRc(ΔXR, ΔYR, ΔZR, ΔIR, ΔJR, ΔKR) im Punkt Pr wird durch den folgenden Ausdruck (27) auf Basis der Koordinatenwerte (b, c) berechnet. ΔαR = V0α·(1 – b)(1 – c) + V1α·b(1 – c) + V3α·(1 – b)c + V4α·b·c (α = X, Y, Z, I, J, K) (27)
  • Auf diese Weise können die rotationsachsenabhängigen Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) und die rotationsachsenabhängigen Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) in einem gegebenen Punkt Pr(B, C) des Koordinatensystems der Rotationsachse berechnet werden. Wie oben erläutert wird das zweidimensionale Koordinatensystem in ein Gitter unterteilt, wie in 6 dargestellt ist, und der Kompensationsbetragsvektor in der Position des Punktes Pr auf den zwei linearen Achsen wird aus den Gitterpunkt-Kompensationsvektoren in den Gitterpunkten erhalten. Alternativ können auch eindimensionale Koordinatensysteme, die später beschrieben werden, kombiniert werden und der Kompensationsbetragsvektor kann als ein Kompensationsbetragsvektor in einer Position des Punktes Pr auf einer Rotationsachse und ein Kompensationsbetragsvektor in einer Position desselben auf der anderen Rotationsachse erhalten werden.
  • 8 ist Diagramm eines eindimensionalen Koordinatensystems der B-Achse, das in vorgegebenen Abständen unterteilt ist. Die Teilungspunkte in vorgegebenen Abständen sind durch Pb0, Pb1 und Pb2 repräsentiert. Es ist zu beachten, dass nur ein Teil des Koordinatensystems in 8 dargestellt ist, und dass in der Praxis die gesamte Zone, in der eine Maschine bewegt werden kann, in vorgegebenen Abständen unterteilt ist. Analog zur Beschreibung der 4 und 6 ist außerdem zu beachten, dass die Abstände der Teilungspunkte nicht regelmäßig zu sein brauchen. Zum Beispiel können die Positionen der Teilungspunkte Pb0, Pb1 und Pb2 auf der B-Achse als Sollwerte eingestellt werden.
  • Durch das mechanische System verursachte Fehler (Translationsfehler und Rotationsfehler) an den Teilungspunkten werden im Voraus gemessen. Ein Vektor mit dem gleichen Absolutwert wie die Richtung entgegengesetzt zu einem gemessenen Fehler wird als ”Teilungspunkt-Kompensationsvektor” bezeichnet. Die Kompensationsbeträge werden also durch einen sechsdimensionalen Vektor Vn(VnX, VnY, VnZ, VnI, VnJ, VnK: n = 0 bis 2) repräsentiert. (VnX, VnY, VnZ) entsprechen den B-achsenabhängigen Translations-Kompensationsbeträgen (ΔXB, ΔYB, ΔZB) und (VnI, VnJ, VnK) den B-achsenabhängigen Rotations-Kompensationsbeträgen (ΔIB, ΔJB, ΔKB). Die Teilungspunkt-Kompensationsvektoren werden in einem nicht flüchtigen Speicher oder dgl. in Form einer B-achsenabhängigen Kompensationsbetragstabelle gespeichert.
  • 9 ist ein Diagramm einer unterteilten Zone, die eine Sollposition B der B-Achse enthält, für die ein Kompensationsvektor zu berechnen ist. Im Beispiel von 9 liegt die Sollposition B der B-Achse, für die ein Kompensationsvektor zu berechnen ist, in einer durch die Teilungspunkte Pb0 und Pb1 definierten Zone. Außerdem werden die Teilungspunkt-Kompensationsvektoren V0(V0X, V0Y, V0Z, V0I, V0J, V0K) und V1(V1X, V1Y, V1Z, V1I, V1J, V1K) für die Teilungspunkte Pb0 bzw. Pb1 eingestellt. Ein normalisierter Koordinatenwert b des Punktes B wird durch den folgenden Ausdruck (28) bestimmt, wobei der Teilungsabstand der B-Achse Lb ist. b = (B – Pb0)/Lb (28)
  • Die B-achsenabhängigen Translations-Kompensationsbeträge (ΔXB, ΔYB, ΔZB) und die B-achsenabhängigen Rotations-Kompensationsbeträge (ΔIB, ΔJB, ΔKB) im Punkt B werden durch den folgenden Ausdruck (29) auf Basis des Koordinatenwerts b berechnet. ΔαB = V0α·(1 – b) + V1α·b (α = X, Y, Z, I, J, K) (29)
  • Auf diese Weise kann der Kompensationsvektor im gegebenen Punkt B im B-Achsenkoordinatensystem berechnet werden.
  • Auf ähnliche Weise können die C-achsenabhängigen Translations-Kompensationsbeträge (ΔXC, ΔYC, ΔZC) und die C-achsenabhängigen Rotations-Kompensationsbeträge (ΔIC, ΔJC, ΔKC) in einem gegebenen Punkt C in einem C-Achsenkoordinatensystem auf Basis einer in 10 dargestellten C-achsenabhängigen Kompensationstabelle berechnet weden.
  • Die Kompensation kann auch durch Kombinieren der Teilungspunkt-Kompensationsvektoren in solchen eindimensionalen Koordinatensystemen für die jeweiligen zwei Rotationsachsen ausgeführt werden. Obwohl ferner die linearachsenabhängigen Kompensationsbeträge Gitterpunkt-Kompensationsvektoren sind, die durch Teilen des dreidimensionalen Koordinatensystems in ein dreidimensionales Gitter wie in 4 erhalten werden, ist es auch möglich, die Kompensation kombiniert auszuführen, indem das Koordinatensystem in zwei lineare Achsen mit hohen Korrelationskoeffizienten und eine Achse mit niedrigem Korrelationskoeffizienten geteilt wird; die von den zwei linearen Achsen abhängigen Kompensationsbeträge mit hohen Korrelationskoeffizienten werden als Gitterpunkt-Kompensationsvektoren erhalten, die in ein zweidimensionales Gitter geteilt werden wie in 6 dargestellt und die von der einen Achse mit niedrigem Korrelationskoeffizienten abhängigen Kompensationsbeträge werden als Teilungspunkt-Kompensationsvektor in einem eindimensionalen Koordinatensystem erhalten, wie in 8 dargestellt. Alternativ ist es auch möglich, die Kompensationsbeträge nur als die Gitterpunkt-Kompensationsvektoren, die in das zweidimensionale Gitter geteilt werden, zu erhalten, ohne den Teilungspunkt-Kompensationsvektor unter den Kompensationsvektoren im eindimensionalen Koordinatensystem zu verwenden.
  • Die Kompensation kann außerdem durch Kombinieren der Teilungspunkt-Kompensationsvektoren in eindimensionalen Koordinatensystemen ausgeführt werden, wie in 8 für die jeweiligen drei linearen Achsen dargestellt. Alternativ kann die Kompensation auch durch Kombinieren von (einem) Kompensationsvektor(en) für nur eine Achse oder zwei Achsen ausgeführt werden.
  • 11 ist ein Blockdiagramm eines Hauptteils einer ersten Ausführungsform der vorliegenden Erfindung des numerischen Steuergeräts, das eine 5-Achsen-Werkzeugmaschine steuert. Bei der ersten Ausführungsform wird ein Werkzeuglängen-Kompensationsbefehl an das numerische Steuergerät gesandt. Bei der ersten Ausführungsform wird ein Programmblock in einem Befehlsanalysator 1 analysiert, und ein Werkzeuglängen-Kompensationsvektor T(Tx, Ty, Tz) wird von einem Werkzeuglängen-Kompensationsvektor-Addierelement 2 zu einer Sollposition einer Werkzeug-Mittelpunktposition, die das Analyseergebnis ist, addiert, um eine Koordinatenposition der linearen Maschinenachse zu erhalten, zu der der Werkzeuglängen-Kompensationsvektor addiert worden ist.
  • Die Koordinatenposition der linearen Maschinenachse und die Solldrehpositionen der Rotationsachsen werden von einem Interpolator 3 interpoliert, um die Koordinatenpositionen der Maschine für die jeweiligen Achsen zu erzeugen, und eine Beschleunigungs-/Verzögerungsverarbeitung erfolgt in jedem der Beschleunigungs-/Verzögerungs-Prozessoren 4x, 4y, 4z, 4b(a) und 4c für die jeweiligen Achsen (X, Y, Z, B(A), C-Achsen). Dann werden die durch die obigen Ausdrücke (1) bis (6) und (8) erhaltenen Translations-Kompensationsbeträge zur Sollposition Pl(X, Y, Z) der linearen Achse in einem Kompensator 5 nach Abschluss der Beschleunigungs-/Verzögerungsverarbeitung für die jeweiligen Achsen addiert, um eine korrigierte Position Pl'(X', Y', Z') der linearen Achse zu erhalten. Außerdem werden die mit den obigen Ausdrücken (1) bis (6), (9) und (13) bis (20) erhaltenen Rotations-Kompensationsbeträge im Kompensator 5 zur Sollposition Pr(B, C) der Rotationsachse nach Abschluss der Beschleunigungs-/Verzögerungsverarbeitung für die jeweiligen Achsen addiert, um eine korrigierte Position Pr'(B', C') der Rotationsachse zu erhalten.
  • Dann werden die Servomotoren 6x, 6y, 6z, 6b(a) und 6c in die korrigierte Position Pl'(X', Y', Z') der linearen Achse für die X-Achse, die Y-Achse und die Z-Achse, die lineare Achsen sind, und die korrigierte Position Pr'(B', C') der Rotationsachse für die B(A)-Achse und die C-Achse, die Rotationsachsen sind, getrieben. Informationen zu den linearachsenabhängigen Kompensationsbeträgen, den rotationsachsenabhängigen Kompensationsbeträgen und zum Werkzeuglängen-Kompensationsvektor, die in den obigen Ausdrücken (1) bis (5) verwendet werden, werden im Voraus in einer Eingabedateneinheit 7 gespeichert. Informationen vom Werkzeuglängen-Kompensationsvektor-Addierelement 2 werden als Informationen des Werkzeuglängen-Kompensationsvektors verwendet.
  • 12 ist ein Blockdiagramm eines Hauptteils einer zweiten Ausführungsform der vorliegenden Erfindung des numerischen Steuergeräts, das eine 5-Achsen-Werkzeugmaschine steuert. Bei der zweiten Ausführungsform wird im numerischen Steuergerät eine Werkzeugmittelpunksteuerung angewendet.
  • Bei dieser Ausführungsform wird ein Programmblock in einem Befehlsanalysator 1 analysiert, um eine Soll-Werkzeug-Mittelpunktposition zu erhalten, die erhaltene Soll-Werkzeug-Mittelpunktposition wird von einem Interpolator 3 interpoliert, und ein Werkzeuglängen-Kompensationsvektor T(Tx, Ty, Tz) wird zu der so interpolierten Werkzeug-Mittelpunktposition von einem Werkzeuglängen-Kompensationsvektor-Addierelement 2 addiert. Das Additionsergebnis wird einer Beschleunigungs-/Verzögerungsverarbeitung in den Beschleunigungs-/Verzögerungsprozessoren für die jeweiligen Achsen unterzogen, um eine Sollposition Pl(X, Y, Z) der linearen Achse zu erhalten. Dann werden die durch die obigen Ausdrücke (1) bis (6) und (8) erhaltenen Translations-Kompensationsbeträge in einem Kompensator 5 zur Sollposition Pl(X, Y, Z) der linearen Achse addiert, um eine korrigierte Position Pl'(X', Y', Z') der linearen Achse zu erhalten. Andererseits werden die durch die obigen Ausdrücke (1) bis (6), (9) und (13) bis (20) erhaltenen Rotations-Kompensationsbeträge im Kompensator 5 zur Sollposition Pr(B, C) der Rotationsachse nach der Beschleunigungs-/Verzögerungsverarbeitung durch die Beschleunigungs-/Verzögerungsprozessoren für die jeweiligen Achsen addiert, um eine korrigierte Position Pr'(B', C') der Rotationsachse zu erhalten.
  • Dann werden die Servomotoren 6x, 6y und 6z in die korrigierte Position Pl'(X', Y', Z') der linearen Achse für die X-Achse, die Y-Achse und die Z-Achse, die lineare Achsen sind, getrieben, und die Servomotoren 6b(a) und 6c in die korrigierte Position Pr'(B', C') der Rotationsachse für die B(A)-Achse und die C-Achse getrieben, die Rotationsachsen sind.
  • Informationen zu den linearachsenabhängigen Kompensationsbeträgen, den rotationsachsenabhängigen Kompensationsbeträgen und zum Werkzeuglängen-Kompensationsvektor, die in den obigen Ausdrücken (1) bis (5) im Kompensator 5 verwendet werden, werden im Voraus in einer Eingabedateneinheit 7 gespeichert. Informationen vom Werkzeuglängen-Kompensationsvektor-Addierelement 2 werden als Informationen des Werkzeuglängen-Kompensationsvektors verwendet.
  • 13 ist ein Blockdiagramm eines Hauptteils einer dritten Ausführungsform der vorliegenden Erfindung des numerischen Steuergeräts, das eine 5-Achsen-Werkzeugmaschine steuert. Bei der dritten Ausführungsform wird ein Werkzeuglängen-Kompensationsbefehl an das numerische Steuergerät gelegt.
  • Bei der dritten Ausführungsform wird ein Programmblock in einem Befehlsanalysator 1 analysiert, um eine Soll-Werkzeug-Mittelpunktposition zu erhalten, und ein Werkzeuglängen-Kompensationsvektor T(Tx, Ty, Tz) wird zu der erhaltenen Werkzeug-Mittelpunktposition von einem Werkzeuglängen-Kompensationsvektor-Addierelement 2 addiert, um eine Sollposition Pl(X, Y, Z) der linearen Achse zu erhalten, zu der der Werkzeuglängen-Kompensationsvektor addiert wird.
  • Dann werden die durch die obigen Ausdrücke (1) bis (6) und (8) erhaltenen Translations-Kompensationsbeträge in einem Kompensator 5 zur Sollposition Pl(X, Y, Z) der linearen Achse addiert, um eine korrigierte Position Pl'(X', Y', Z') der linearen Achse zu erhalten. Außerdem werden die durch die obigen Ausdrücke (1) bis (6), (9) und (13) bis (20) erhaltenen Rotations-Kompensationsbeträge im Kompensator 5 zur Sollposition Pr(B, C) der Rotationsachse addiert, um eine korrigierte Position Pr'(B', C') der Rotationsachse zu erhalten.
  • Die korrigierte Position der linearen Achse und die korrigierte Position der Rotationsachse werden in einem Interpolator 3 interpoliert und die so interpolierten Positionen der jeweiligen Achsen (X, Y, Z, B(A), C-Achsen) werden einer Beschleunigungs-/Verzögerungsverarbeitung durch die Beschleunigungs-/Verzögerungsprozessoren 4x, 4y, 4z, 4b(a) und 4c unterzogen, und nach Abschluss der Beschleunigungs-/Verzögerungsverarbeitung werden die Servomotoren 6x, 6y, 6z, 6b(a) und 6c für die jeweiligen Achsen in die Positionen der jeweiligen Achsen getrieben.
  • 14 ist ein Flussdiagramm eines Kompensationsalgorithmus, der in der ersten Ausführungsform der vorliegenden Erfindung des numerischen Steuergeräts implementiert ist. Der Algorithmus wird nachstehend gemäß den jeweiligen Schritten beschrieben.
  • [Schritt S1] Ein Werkzeuglängen-Kompensationsvektor (Tx, Ty, Tz) wird erhalten.
  • [Schritt S2] Achsenabhängige Translations-Kompensationsbeträge und achsenabhängige Rotations-Kompensationsbeträge werden durch die Ausdrücke (21) bis (27) auf Basis der Sollposition Pl(X, Y, Z) der linearen Achse und der Sollposition Pr(B, C) der Rotationsachse, der linearachsenabhängigen Kompensationsbetragstabelle und der rotationsachsenabhängigen Kompensationsbetragstabelle erhalten.
  • [Schritt S3] Translations-Kompensationsbeträge ΔCt und Rotations-Kompensationsbeträge ΔCr werden mittels der Ausdrücke (1) bis (20) auf Basis des in Schritt S1 erhaltenen Werkzeuglängen-Kompensationsvektors (Tx, Ty, Tz) und der in Schritt S2 erhaltenen achsenabhängigen Translations-Kompensationsbeträge und der achsenabhängigen Rotations-Kompensationsbeträge berechnet.
  • [Schritt S4] Die in Schritt S3 berechneten Translations-Kompensationsbeträge ΔCt werden zur Sollposition Pl(X, Y, Z) der linearen Achse addiert, um die Maschinen-Koordinatenpositionen, in die die linearen Achsen zu bewegen sind (korrigierte Position Pl der linearen Achse) zu erhalten. Außerdem wird ΔCr zur Position Pr(B, C) der Rotationsachse addiert, um die Maschinenkoordinatenpositionen, in die die Rotationsachsen zu bewegen sind, zu erhalten (korrigierte Position Pr'(B', C') der Rotationsachse).

Claims (11)

  1. Numerisches Steuergerät zum Steuern einer 5-Achsen-Werkzeugmaschine, die ein auf einem Tisch angebrachtes Werkstück mit drei linearen Achsen (X, Y, Z) und zwei Rotationsachsen (B, C) zum Drehen eines Werkzeugkopfes spanend bearbeitet, wobei das numerische Steuergerät aufweist: – eine Berechnungseinheit für achsenabhängige Kompensationsbeträge, die achsenabhängige Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL; ΔXR, ΔYR, ΔZR) und achsenabhängige Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL; ΔIR, ΔJR, ΔKR) auf Basis einer Sollposition der Achsen (Pr (B, C)Pl(X, Y, Z)) sowie achsenabhängigen Kompensationsbetragstabellen ermittelt; – Berechnungseinheiten für Translations-Kompensationsbeträge (ΔCt (ΔX, ΔY, ΔZ)) und Rotations-Kompensationsbeträge (ΔCr (ΔB, ΔC)), die die Translations-Kompensationsbeträge (ΔCt (ΔX, ΔY, ΔZ)) und Rotations-Kompensationsbeträge (ΔCr (ΔB, ΔC)) aus einem Werkzeuglängen-Kompensationsvektor (Tx, Ty, Tz) und den achsenabhängigen Translations-Kompensationsbeträgen (ΔXL, ΔYL, ΔZL; ΔXR, ΔYR, ΔZR) und den achsenabhängigen Rotations-Kompensationsbeträgen (ΔIL, ΔJL, ΔKL; ΔIR, ΔJR, ΔKR) ermitteln, wobei, um den Rotationsfehler des Werkzeuglängen-Kompensationsvektors (Tx, Ty, Tz) zu kompensieren, die Rotations-Kompensationsbeträge (ΔCr(ΔB, ΔC)) unter Zuhilfenahme eines Vergleichsausdruckes ermittelt werden, der den Werkzeuglängen-Kompensationsvektor (Tx, Ty, Tz) mit dem Produkt aus einem Rotationsfehlerwerkzeuglängenkompensationsvektor (Tex, Tey, Tez) mit einer Transformationsmatrix (Rr), die die Rotations-Kompensationsbeträge (ΔCr(ΔB, ΔC)) aufweist, gleichsetzt; – eine Kompensationsbetrag-Addiereinheit, die Translations-Kompensationsbeträge (ΔCt(ΔX, ΔY, ΔZ)) zur Sollposition (Pl(X, Y, Z)) der linearen Achsen (X, Y, Z) und die Rotations-Kompensationsbeträge (ΔCr(ΔB, ΔC)) zur Sollposition der Rotationsachsen (Pr(B, C)) addiert; und eine Einheit, die die drei linearen Achsen (X, Y, Z) und die zwei Rotationsachsen (B, C) antreibt, so dass sie Positionen einnehmen, die von der Kompensationsbetrag-Addiereinheit ermittelt wurden.
  2. Numerisches Steuergerät nach Anspruch 1, bei dem die Berechnungseinheit für die achsenabhängigen Kompensationsbeträge rotationsachsenabhängige Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) und rotationsachsenabhängige Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) als die achsenabhängigen Translations-Kompensationsbeträge und die achsenabhängigen Rotations-Kompensationsbeträge auf Basis der Sollposition der Rotationsachsen (Pr(B, C)) ermittelt, und wobei die Berechnungseinheiten für die Translations-Kompensationsbeträge (ΔCt(ΔX, ΔY, ΔZ)) und die Rotations-Kompensationsbeträge (ΔCr(ΔB, ΔC)) die Translations-Kompensationsbeträge (ΔCt(ΔX, ΔY, ΔZ)) aus den rotationsachsenabhängigen Translations-Kompensationsbeträgen (ΔXR, ΔYR, ΔZR) ermitteln, die von der Berechnungseinheit für die achsenabhängigen Kompensationsbeträge ermittelt werden, und die Rotations-Kompensationsbeträge (ΔCr(ΔB, ΔC)) aus den rotationsachsenabhängigen Rotations-Kompensationsbeträgen (ΔIR, MR, ΔKR) ermitteln, die von der Berechnungseinheit für die achsenabhängigen Kompensationsbeträge ermittelt werden.
  3. Numerisches Steuergerät nach Anspruch 1, bei dem die Berechnungseinheit für die achsenabhängigen Kompensationsbeträge linearachsenabhängige Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) und linearachsenabhängige Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) als die achsenabhängigen Translations-Kompensationsbeträge und die achsenabhängigen Rotations-Kompensationsbeträge auf Basis der Sollposition der linearen Achsen (Pl(X, Y, Z) ermittelt, und wobei die Berechnungseinheiten für die Translations-Kompensationsbeträge (ΔCt(ΔX, ΔY, ΔZ)) und die Rotations-Kompensationsbeträge (ΔCr(ΔB, ΔC)) die Translations-Kompensationsbeträge (ΔCt(ΔX, ΔY, ΔZ)) aus den linearachsenabhängigen Translations-Kompensationsbeträgen (ΔXL, ΔYL, ΔZL) ermitteln, die von der Berechnungseinheit für die achsenabhängigen Kompensationsbeträgen ermittelt werden, und die Rotations-Kompensationsbeträge (ΔCr(ΔB, ΔC)) aus den linearachsenabhängigen Rotations-Kompensationsbeträgen (ΔIL, ΔJL, ΔKL) ermitteln, die von der Berechnungseinheit für die achsenabhängigen Kompensationsbeträge ermittelt werden.
  4. Numerisches Steuergerät nach Anspruch 1, bei dem die Berechnungseinheit für die achsenabhängigen Kompensationsbeträge linearachsenabhängige Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) und linearachsenabhängige Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) auf Basis der Sollposition der linearen Achsen (Pl(X, Y, Z) und ferner rotationsachsenabhängige Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) sowie rotationsachsenabhängige Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) auf Basis der Sollposition der Rotationsachsen (Pr(B, C)) als die achsenabhängigen Translations-Kompensationsbeträge und die achsenabhängigen Rotations-Kompensationsbeträge ermittelt, und wobei die Berechnungseinheiten für die Translations-Kompensationsbeträge (ΔCt(ΔX, ΔY, ΔZ)) und die Rotations-Kompensationsbeträge (ΔCr(ΔB, ΔC)) die Translations-Kompensationsbeträge (ΔCt (ΔX, ΔY, ΔZ)) aus den linearachsenabhängigen Translations-Kompensationsbeträgen (ΔXL, ΔYL, ΔZL) und den rotationsachsenabhängigen Translations-Kompensationsbeträgen (ΔXR, ΔYR, ΔZR) ermitteln, die von der Berechnungseinheit für die achsenabhängigen Kompensationsbeträge ermittelt wird, und die Rotations-Kompensationsbeträge (ΔCr(ΔB, ΔC)) aus den linearachsenabhängigen Rotations-Kompensationsbeträgen (ΔIL, ΔJL, ΔKL) und den rotationsachsenabhängigen Rotations-Kompensationsbeträgen (ΔIR, ΔJR, ΔKR) ermitteln, die von der Berechnungseinheit für die achsenabhängigen Kompensationsbeträge ermittelt werden.
  5. Numerisches Steuergerät nach Anspruch 1, bei dem die Berechnungseinheit für die achsenabhängigen Kompensationsbeträge den Raum eines dreidimensionalen Koordinatensystems, der durch die drei linearen Achsen (X, Y, Z) definiert wird, in Gitterzonen in vorgegebenen Abständen (Lx, Ly, Lz) in den jeweiligen Achsenrichtungen teilt, Gitterpunkt-Kompensationsvektoren (ΔLc) mit Rotations-Kompensationsbeträgen (ΔCr(ΔB, ΔC)) und Translations-Kompensationsbeträgen (ΔCt(ΔX, ΔY, ΔZ)) für entsprechende Gitterpunkte in den Gitterzonen speichert, und linearachsenabhängige Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) und linearachsenabhängige Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) für Positionen der drei linearen Achsen (X, Y, Z) auf Basis der Gitterpunkt-Kompensationsvektoren (ΔLc) berechnet.
  6. Numerisches Steuergerät nach Anspruch 1, bei dem die Berechnungseinheit für die achsenabhängigen Kompensationsbeträge den Raum eines zweidimensionalen Koordinatensystems, der durch die zwei Rotationsachsen (B, C) definiert wird, in Gitterzonen in vorgegebenen Abständen (LB, LC) in den jeweiligen Achsenrichtungen teilt, Gitterpunkt-Kompensationsvektoren (Vn) mit Rotations-Kompensationsbeträgen (ΔCr(ΔB, ΔC)) und Translations-Kompensationsbeträgen (ΔCt(ΔX, ΔY, ΔZ)) für entsprechende Gitterpunkte in den Gitterzonen speichert, und rotationsachsenabhängige Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) und rotationsachsenabhängige Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) für Positionen der zwei Rotationsachsen (B, C) auf Basis der Gitterpunkt-Kompensationsvektoren (Vn) berechnet.
  7. Numerisches Steuergerät nach Anspruch 1, bei dem die Berechnungseinheit für die achsenabhängigen Kompensationsbeträge den Raum eines eindimensionalen Koordinatensystems einer Rotationsachse (B) der zwei Rotationsachsen (B, C) in vorgegebenen Abständen teilt, Teilungspunkt-Kompensationsvektoren (Vn) mit Rotations-Kompensationsbeträgen (ΔCr (ΔB, ΔC)) und Translations-Kompensationsbeträgen (ΔCt(ΔX, ΔY, ΔZ)) für entsprechende Teilungspunkte in den vorgegebenen Abständen speichert, den Raum eines eindimensionalen Koordinatensystems der anderen Rotationsachse (C) der zwei Rotationsachsen (B, C) in vorgegebenen Abständen teilt, Teilungspunkt-Kompensationsvektoren (Vn) mit Rotations-Kompensationsbeträgen (ΔCr(ΔB, ΔC)) und Translations-Kompensationsbeträgen (ΔCt(ΔX, ΔY, ΔZ)) für entsprechende Teilungspunkte in den vorgegebenen Abständen speichert, und rotationsachsenabhängige Rotations-Kompensationsbeträge (ΔIR, ΔJR, ΔKR) und rotationsachsenabhängige Translations-Kompensationsbeträge (ΔXR, ΔYR, ΔZR) für Positionen der jeweiligen zwei Rotationsachsen (B, C) auf Basis der Teilungspunkt-Kompensationsvektoren (Vn) berechnet.
  8. Numerisches Steuergerät nach Anspruch 1, bei dem die Berechnungseinheit für die achsenabhängigen Kompensationsbeträge den Raum eines zweidimensionalen Koordinatensystems, der durch zwei lineare Achsen der drei linearen Achsen (X, Y, Z) definiert wird, in Gitterzonen in vorgegebenen Abständen in den jeweiligen Achsenrichtungen teilt, Gitterpunkt-Kompensationsvektoren mit Rotations-Kompensationsbeträgen (ΔCr(ΔB, ΔC)) und Translations-Kompensationsbeträgen (ΔCt(ΔX, ΔY, ΔZ)) für entsprechende Gitterpunkte in den Gitterzonen speichert, und linearachsenabhängige Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) sowie linearachsenabhängige Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) für Positionen der zwei linearen Achsen auf Basis der Gitterpunkt-Kompensationsvektoren berechnet, und außerdem den Raum eines eindimensiononalen Koordinatensystems der anderen einen der drei linearen Achsen in vorgegebenen Abständen teilt, Teilungspunkt-Kompensationsvektoren mit Rotations-Kompensationsbeträgen (ΔCr(ΔB, ΔC)) und Translations-Kompensationsbeträgen (ΔCt(ΔX, ΔY, AZ)) für entsprechende Teilungspunkte in den vorgegebenen Abständen speichert, und linearachsenabhängige Rotations-Kompensationsbeträge (All, ΔJL, ΔKL) und linearachsenabhängige Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) für eine Position der anderen einen linearen Achse auf Basis der Teilungspunkt-Kompensationsvektoren berechnet.
  9. Numerisches Steuergerät nach Anspruch 1, bei dem die Berechnungseinheit für die achsenabhängigen Kompensationsbeträge Räume eines eindimensionalen Koordinatensystems der jeweiligen drei linearen Achsen (X, Y, Z) in vorgegebenen Abständen teilt, Teilungspunkt-Kompensationsvektoren mit Rotations-Kompensationsbeträgen (ΔCr(ΔB, ΔC)) und Translations-Kompensationsbeträgen (ΔCt(ΔX, ΔY, ΔZ)) für entsprechende Teilungspunkte in den vorgegebenen Abständen speichert, und linearachsenabhängige Rotations-Kompensationsbeträge (ΔIL, ΔJL, ΔKL) und linearachsenabhängige Translations-Kompensationsbeträge (ΔXL, ΔYL, ΔZL) für entsprechende Positionen der drei linearen Achsen (X, Y, Z) auf Basis der Teilungspunkt-Kompensationsvektoren berechnet.
  10. Numerisches Steuergerät nach Anspruch 1, bei dem die Sollposition der linearen Achsen (Pl(X, Y, Z)) und die Sollposition der Rotationsachsen (Pr(B, C)) Positionen der drei linearen Achsen (X, Y, Z) und der zwei Rotationsachsen (B, C) sind, die auf Basis eines Programmbefehls interpoliert werden.
  11. Numerisches Steuergerät nach Anspruch 1, bei dem die Sollposition der linearen Achsen (Pl(X, Y, Z)) und die Sollposition der Rotationsachsen (Pr(B, C)) Positionen der drei linearen Achsen (X, Y, Z) und der zwei Rotationsachsen (B, C) auf Basis eines Programmbefehls sind.
DE102011012385.7A 2010-03-29 2011-02-25 Numerisches Steuergerät, das eine 5-Achsen-Werkzeugmaschine steuert Active DE102011012385B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010-075670 2010-03-29
JP2010075670A JP4837115B2 (ja) 2010-03-29 2010-03-29 5軸加工機を制御する数値制御装置

Publications (2)

Publication Number Publication Date
DE102011012385A1 DE102011012385A1 (de) 2011-09-29
DE102011012385B4 true DE102011012385B4 (de) 2016-01-07

Family

ID=44586239

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102011012385.7A Active DE102011012385B4 (de) 2010-03-29 2011-02-25 Numerisches Steuergerät, das eine 5-Achsen-Werkzeugmaschine steuert

Country Status (4)

Country Link
US (1) US8283884B2 (de)
JP (1) JP4837115B2 (de)
CN (1) CN102207730B (de)
DE (1) DE102011012385B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018005283B4 (de) 2017-07-10 2021-08-26 Fanuc Corporation Numerische Steuervorrichtung

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5789114B2 (ja) * 2011-04-04 2015-10-07 オークマ株式会社 工作機械の補正値演算方法及びプログラム
JP5778649B2 (ja) * 2012-10-02 2015-09-16 ファナック株式会社 並進回転誤差補正量作成装置
JP6048174B2 (ja) * 2013-01-31 2016-12-21 ブラザー工業株式会社 数値制御装置とロストモーション補償方法
JP5792251B2 (ja) 2013-09-27 2015-10-07 ファナック株式会社 誤差補正量作成装置
JP5873070B2 (ja) * 2013-12-20 2016-03-01 ファナック株式会社 ワークに対する相対的工具方向の入力が可能な数値制御装置
CN104511654A (zh) * 2014-12-23 2015-04-15 易正雄 一种切削加工机
JP6321586B2 (ja) 2015-07-10 2018-05-09 ファナック株式会社 軸移動方向を考慮した誤差補正を可能とする数値制御装置
CN105234743B (zh) * 2015-10-13 2017-06-16 天津大学 一种五轴加工中心刀具变形误差补偿方法
JP6363643B2 (ja) * 2016-03-04 2018-07-25 ファナック株式会社 プログラム指令の解析桁数を増やすことを可能とする数値制御装置
JP6845612B2 (ja) * 2016-03-07 2021-03-17 中村留精密工業株式会社 工作機械における機械精度の測定方法及び装置
EP3438773B1 (de) * 2017-08-04 2020-09-30 Siemens Aktiengesellschaft Bearbeitung von werkstücken mit modellgestützter fehlerkompensation
CN108527555A (zh) * 2018-06-07 2018-09-14 国家***北京林业机械研究所 一种双旋转操作头
CN109926612A (zh) * 2018-11-08 2019-06-25 中铁山桥集团有限公司 一种平板数控钻孔机床辅助编程的方法
US11815874B2 (en) * 2019-04-30 2023-11-14 C. R. Onsrud, Inc. Aggregate programming method and system for CNC machines
CN113732818B (zh) * 2020-05-29 2023-01-24 大族激光科技产业集团股份有限公司 数控机床旋转轴的校准方法、装置、设备及存储介质
CN113732819B (zh) * 2020-05-29 2023-01-24 大族激光科技产业集团股份有限公司 数控机床c轴的校准方法、装置、计算机设备及存储介质
CN113732817B (zh) * 2020-05-29 2023-01-24 大族激光科技产业集团股份有限公司 数控机床a轴的校准方法、装置、计算机设备及存储介质
CN113609606B (zh) * 2021-07-19 2023-09-08 渤海造船厂集团有限公司 三维空间下的大口径管路补偿量计算方法
CN113485098A (zh) * 2021-09-07 2021-10-08 成都飞机工业(集团)有限责任公司 一种带压力反馈的五轴数控机床的控制***及其控制方法
WO2023248481A1 (ja) * 2022-06-24 2023-12-28 ファナック株式会社 データ符号化装置及びデータ符号化プログラム
WO2023248483A1 (ja) * 2022-06-24 2023-12-28 ファナック株式会社 近似誤差検出装置及び近似誤差検出プログラム
WO2023248482A1 (ja) * 2022-06-24 2023-12-28 ファナック株式会社 データ復号化装置、誤差補正システム及びデータ復号化プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10046092A1 (de) * 2000-09-18 2002-04-11 Siemens Ag Verfahren zur Kompensation von statischen Positionsfehlern und Orientierungsfehlern
DE10155430A1 (de) * 2001-11-12 2003-05-28 Siemens Ag Adaption von Kompensationsdaten zur Verringerung von Stellungsfehlern bei Werkzeugmaschinen und Robotern
US20090140684A1 (en) * 2007-11-30 2009-06-04 Fanuc Ltd Numerical controller for controlling a five-axis machining apparatus
US20090157218A1 (en) * 2007-12-13 2009-06-18 Fanuc Ltd Numerical controller for controlling five-axis machining apparatus

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4837110B2 (ja) * 2010-02-18 2011-12-14 ファナック株式会社 工具軌跡表示機能を有する数値制御装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10046092A1 (de) * 2000-09-18 2002-04-11 Siemens Ag Verfahren zur Kompensation von statischen Positionsfehlern und Orientierungsfehlern
DE10155430A1 (de) * 2001-11-12 2003-05-28 Siemens Ag Adaption von Kompensationsdaten zur Verringerung von Stellungsfehlern bei Werkzeugmaschinen und Robotern
US20090140684A1 (en) * 2007-11-30 2009-06-04 Fanuc Ltd Numerical controller for controlling a five-axis machining apparatus
JP2009151756A (ja) * 2007-11-30 2009-07-09 Fanuc Ltd 5軸加工機を制御する数値制御装置
US20090157218A1 (en) * 2007-12-13 2009-06-18 Fanuc Ltd Numerical controller for controlling five-axis machining apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018005283B4 (de) 2017-07-10 2021-08-26 Fanuc Corporation Numerische Steuervorrichtung

Also Published As

Publication number Publication date
JP2011209897A (ja) 2011-10-20
US8283884B2 (en) 2012-10-09
CN102207730A (zh) 2011-10-05
CN102207730B (zh) 2014-02-19
DE102011012385A1 (de) 2011-09-29
US20110234142A1 (en) 2011-09-29
JP4837115B2 (ja) 2011-12-14

Similar Documents

Publication Publication Date Title
DE102011012385B4 (de) Numerisches Steuergerät, das eine 5-Achsen-Werkzeugmaschine steuert
DE102011102810B4 (de) Numerische Steuerung für eine mehrachsige Maschine
DE102011108282B4 (de) Numerische Steuerung für eine Mehrachsenmaschine zum Bearbeiten einer geneigten Bearbeitungsebene
DE102012017331B4 (de) Numerische Steuervorrichtung mit einer Werkstücksetzfehlerkompensierungseinheit für eine Mehrachsenwerkzeugmaschine
DE102011015296B4 (de) Numerische Steuerung für eine mehrachsige Werkzeugmaschine
DE112017000203B4 (de) Numerische Steuerung und numerisches Steuerungsverfahren
DE102011110111B4 (de) Numerische Steuerung einer mehrachsigen Werkzeugmaschine für das Steuern der Lage der Tool Center Point Position
DE102012205423A1 (de) Verfahren und Programm zum Berechnen eines Korrekturwerts für eine Werkzeugmaschine
DE102009003003B4 (de) Numerische Steuerung mit der Funktion einer Koordinatentransformation der Werkzeugphase
DE102014113705B4 (de) Vorrichtung zur Gewinnung der Fehlerkorrekturhöhe
DE112012000332B4 (de) Numerische Steuervorrichtung
DE102012003196A1 (de) Numerische Steuervorrichtung mit einer Geschwindigkeitssteuerfunktion für eine maschinelle Mehrachsenverarbeitungsvorrichtung
DE102013010404A1 (de) Numerische Steuerung mit einer Werkzeugausrichtungssteuerfunktion für Mehrachsen-Bearbeitungsmaschinen
DE102014018518B4 (de) Numerische Steuerung mit Korrekturfunktion für arbeitsbedingte Verschiebungen
DE102012202609A1 (de) Electronic system and method for compensating the dimensional accuracy of a 4-axis cnc machining system using global and local offsets
DE112012006403T5 (de) Numerik-Steuervorrichtung
DE112009004603T5 (de) Numerische Steuervorrichtung und Verfahren zum Steuern dernumerischen Steuervorrichtung
DE102017219841A1 (de) Numerische Steuervorrichtung
DE102012209017A1 (de) Verfahren für das Berechnen eines Fehlerkompensationswertes einer Maschine
DE102016008043B4 (de) Zum Kompensieren von Fehlern unter Berücksichtigung einer Achsbewegungsrichtung fähiger numerischer Controller
DE102020124734A1 (de) Simulationsgerät
DE102015009210A1 (de) Numerische Steuerung mit Unterstützung eines linkshändigen Koordinatensystems
DE102015008246B4 (de) Numerische Steuerung mit Werkzeugspitzenpunktsteuerungsfunktion
DE102017222474A1 (de) Numeriksteuerung und datenstruktur
DE102013110689B4 (de) Kompensationsvorrichtung zur Höhe des Translations- und Rotationsfehlers

Legal Events

Date Code Title Description
R012 Request for examination validly filed

Effective date: 20111013

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final