DE112019006917T5 - Numerische Steuerung und Maschinenlernvorrichtung - Google Patents

Numerische Steuerung und Maschinenlernvorrichtung Download PDF

Info

Publication number
DE112019006917T5
DE112019006917T5 DE112019006917.9T DE112019006917T DE112019006917T5 DE 112019006917 T5 DE112019006917 T5 DE 112019006917T5 DE 112019006917 T DE112019006917 T DE 112019006917T DE 112019006917 T5 DE112019006917 T5 DE 112019006917T5
Authority
DE
Germany
Prior art keywords
shaft
jerk
unit
correction factor
position command
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.)
Granted
Application number
DE112019006917.9T
Other languages
English (en)
Other versions
DE112019006917B4 (de
Inventor
Toshiaki KIMATA
Toshihiro Azuma
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE112019006917T5 publication Critical patent/DE112019006917T5/de
Application granted granted Critical
Publication of DE112019006917B4 publication Critical patent/DE112019006917B4/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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • B23Q15/007Automatic control or regulation of feed movement, cutting velocity or position of tool or work while the tool acts upon the workpiece
    • B23Q15/12Adaptive control, i.e. adjusting itself to have a performance which is optimum according to a preassigned criterion

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

NC-Vorrichtung (10), bei der es sich um eine numerische Steuerung für eine Werkzeugmaschine (1) handelt, bei der ein Werkstück (3) und ein Werkzeug (5) relativ zueinander bewegt werden, indem mehrere Wellen einschließlich einer ersten Welle und einer zweiten Welle angetrieben werden, wobei die numerische Steuerung jede der Wellen ansteuert. Die numerische Steuerung umfasst eine Erstpositionsbefehl-Erzeugungseinheit (11) zum Erzeugen eines ersten Positionsbefehls zum Steuern der ersten Welle, eine Zweitpositionsbefehl-Erzeugungseinheit (12) zum Erzeugen eines zweiten Positionsbefehls zum Steuern der zweiten Welle und eine Korrekturbetragberechnungseinheit (14) zum Berechnen eines Korrekturbetrags für den ersten Positionsbefehl auf Basis eines Rucks, um eine Vibration der ersten Welle auszugleichen, die durch eine achsenübergreifende Störung verursacht wird, die aufgrund des Antriebs der zweiten Welle auftritt, wobei es sich bei dem Ruck um eine Änderungsrate der Beschleunigung beim Antrieb der zweiten Welle handelt.

Description

  • Gebiet
  • Die vorliegende Erfindung bezieht sich auf eine numerische Steuerung, die einen Befehl zur Steuerung einer Werkzeugmaschine erzeugt, und betrifft ferner eine Maschinenlernvorrichtung.
  • Hintergrund
  • Eine Werkzeugmaschine bearbeitet ein Werkstück, während das Werkstück und ein Werkzeug relativ zueinander bewegt werden, indem mehrere Wellen angetrieben werden, bei denen es sich um Vorschubwellen handelt. Eine numerische Steuerung erzeugt einen Positionsbefehl zur Steuerung jeder der Wellen in Übereinstimmung mit einem Bearbeitungsprogramm.
  • Bei einer Werkzeugmaschine kann es zu einer achsenübergreifenden Störung kommen. Bei einer achsenübergreifenden Störung handelt es sich um ein Phänomen, bei dem Vibrationen, die durch den Antrieb einer der Wellen verursacht werden, von der anderen Welle aufgenommen werden, wodurch es zu einer Vibration der anderen Welle kommt. Wenn sich in der Werkzeugmaschine die Position einer Welle aufgrund einer achsenübergreifenden Störung ändert, kann sich der Kontaktzustand zwischen dem Werkzeug und dem Werkstück ändern, was zu einer Verschlechterung der Bearbeitungsgenauigkeit führen kann, oder das Werkzeug kann mit dem Werkstück zu stark in Kontakt kommen, was die Qualität der bearbeiteten Oberfläche verschlechtern kann.
  • Das Patentdokument 1 offenbart eine Motorsteuerung, die eine horizontale Welle, die zum Bewegen eines beweglichen Teils einer Werkzeugmaschine in horizontaler Richtung eingestellt ist, und eine vertikale Welle steuert, die zum Bewegen eines beweglichen Teils einer Werkzeugmaschine in vertikaler Richtung eingestellt ist, wobei die Motorsteuerung so ausgebildet ist, dass sie eine zwischen der horizontalen Welle und der vertikalen Welle auftretende achsenübergreifende Störung korrigiert. Die Motorsteuerung gemäß Patentdokument 1 berechnet einen Korrekturbetrag zum Ausgleich einer aufgrund einer achsenübergreifenden Störung auftretenden Positionsänderung der vertikalen Welle auf Basis von Informationen über eine Beschleunigung der horizontalen Welle.
  • Liste der Zitate
  • Patentliteratur
  • Patentdokument 1: japanische Offenlegungsschrift Nr. 2016-51398
  • Kurzbeschreibung
  • Technische Problemstellung
  • Die Motorsteuerung gemäß dem oben beschriebenen Patentdokument 1 berechnet einen Korrekturbetrag für einen Positionsbefehl, um eine Positionsänderung einer Welle aufgrund einer achsenübergreifenden Störung auszugleichen, indem die Beschleunigung mit einem Korrekturfaktor multipliziert wird. Bei der in dem oben beschriebenen Patentdokument 1 beschriebenen Technik kann es vorkommen, dass zum Zeitpunkt der Beschleunigung oder Verzögerung einer Welle eine Positionsänderung der anderen Welle nicht durch die Korrektur ausgeglichen wird. Daraus ergibt sich das Problem, dass eine Verbesserung der Bearbeitungsqualität der Werkzeugmaschine schwierig ist.
  • Die vorliegende Erfindung entstand in Anbetracht der obigen Gegebenheiten, wobei ihre Aufgabe darin besteht, eine numerische Steuerung anzugeben, mit der die Bearbeitungsqualität einer Werkzeugmaschine verbessert werden kann.
  • Lösung der Problemstellung
  • Um die oben genannte Problemstellung zu lösen und die Aufgabe zu erfüllen, gibt die vorliegende Erfindung eine numerische Steuerung für eine Werkzeugmaschine an, bei der ein Werkstück und ein Werkzeug relativ zueinander bewegt werden, indem mehrere Wellen einschließlich einer ersten Welle und einer zweiten Welle angetrieben werden, wobei die numerische Steuerung jede der Wellen steuert und wobei die numerische Steuerung aufweist: eine Erstpositionsbefehl-Erzeugungseinheit zum Erzeugen eines ersten Positionsbefehls zum Steuern der ersten Welle; eine Zweitpositionsbefehl-Erzeugungseinheit zum Erzeugen eines zweiten Positionsbefehls zum Steuern der zweiten Welle; und eine Korrekturbetragsberechnungseinheit zum Berechnen eines Korrekturbetrags für den ersten Positionsbefehl auf Basis eines Rucks, um eine Vibration der ersten Welle auszugleichen, die durch eine achsenübergreifende Störung verursacht wird, die aufgrund des Antriebs der zweiten Welle auftritt, wobei es sich bei dem Ruck um eine Änderungsrate der Beschleunigung beim Antrieb der zweiten Welle handelt.
  • Vorteilhafte Wirkungen der Erfindung
  • Die numerische Steuerung gemäß der vorliegenden Erfindung hat den vorteilhaften Effekt, dass die Bearbeitungsqualität einer Werkzeugmaschine verbessert werden kann.
  • Figurenliste
    • 1 zeigt eine schematische Darstellung zur Veranschaulichung eines Beispiels für eine Werkzeugmaschine, die mit Hilfe einer numerischen Steuerung gemäß einer ersten Ausführungsform der vorliegenden Erfindung gesteuert werden soll.
    • 2 zeigt ein Blockschaltbild zur Veranschaulichung einer Werkzeugmaschine und einer numerische Steuerung gemäß der ersten Ausführungsform.
    • 3 zeigt eine Darstellung zur Erläuterung einer relativen Verschiebung bei der in 1 dargestellten Werkzeugmaschine.
    • 4 zeigt eine Darstellung zur Veranschaulichung eines Beispiels, bei dem zu der in 2 dargestellten Konfiguration ein Element zur Berechnung eines Korrekturfaktors hinzugefügt wurde.
    • 5 zeigt ein Blockschaltbild zur Veranschaulichung einer Werkzeugmaschine und einer numerischen Steuerung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung.
    • 6 zeigt ein Blockschaltbild zur Veranschaulichung einer Werkzeugmaschine und einer numerischen Steuerung gemäß einer dritten Ausführungsform der vorliegenden Erfindung.
    • 7 zeigt ein Blockschaltbild zur Veranschaulichung einer Werkzeugmaschine und einer numerischen Steuerung gemäß einer vierten Ausführungsform der vorliegenden Erfindung.
    • 8 zeigt ein Blockschaltbild zur Veranschaulichung der funktionellen Konfiguration einer Vorrichtung zum maschinellen Lernen (Maschinenlernvorrichtung), die in der in 7 dargestellten numerischen Steuerung enthalten ist.
    • 9 zeigt ein Flussdiagramm zur Veranschaulichung eines Betriebsablaufs einer Maschinenlernvorrichtung, bei der verstärkendes Lernen eingesetzt wird, gemäß der vierten Ausführungsform.
    • 10 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für eine Hardwarekonfiguration, die verwendet wird, wenn Funktionen einer numerischen Steuerung gemäß der ersten bis vierten Ausführungsform unter Verwendung eines Computersystems implementiert werden.
  • Beschreibung von Ausführungsformen
  • Im Folgenden werden unter Bezugnahme auf die Figuren eine numerische Steuerung und eine Maschinenlernvorrichtung gemäß Ausführungsformen der vorliegenden Erfindung ausführlich beschrieben. Die vorliegende Erfindung ist nicht zwingend auf diese Ausführungsformen beschränkt. In der folgenden Beschreibung wird die numerische Steuerung von Fall zu Fall auch als NC (Numerical Control)-Vorrichtung bezeichnet.
  • Erste Ausführungsform
  • 1 zeigt eine schematische Darstellung zur Veranschaulichung eines Beispiels für eine Werkzeugmaschine, die mittels einer numerischen Steuerung gemäß einer ersten Ausführungsform der vorliegenden Erfindung gesteuert werden soll. Eine in 1 dargestellte Werkzeugmaschine 1 bearbeitet ein Werkstück 3 und bewegt dabei das Werkstück 3 und ein Werkzeug 5 relativ zueinander, indem sie mehrere Wellen antreibt, bei denen es sich um Vorschubwellen handelt.
  • Die Werkzeugmaschine 1 umfasst einen Unterbau 2, der die Basis der Werkzeugmaschine 1 bildet, einen Tisch 4, auf dem das Werkstück 3 platziert wird, einen Kopf 6, der das Werkzeug 5 hält, und einen Ständer 7, der sich auf dem Unterbau 2 befindet und den Kopf 6 trägt. Der Tisch 4 ist auf dem Unterbau 2 in horizontaler Richtung beweglich, der Kopf 6 kann entlang des Ständers 7 in vertikaler Richtung bewegt werden. Bei der Werkzeugmaschine 1 handelt es sich um ein sogenanntes stehendes Bearbeitungszentrum, bei dem der Kopf 6 an einem apikalen Teil des auf dem Unterbau 2 stehenden Ständers 7 angeordnet ist.
  • Die Werkzeugmaschine 1 umfasst: eine X-Achsenwelle, eine Y-Achsenwelle und eine Z-Achsenwelle, bei denen es sich um drei senkrecht zueinander angeordnete Vorschubwellen handelt; einen Motor, der die X-Achsenwelle antreibt; einen Motor, der die Y-Achsenwelle antreibt; und einen Motor, der die Z-Achsenwelle antreibt. Die Werkzeugmaschine 1 bewegt den Tisch 4 in horizontaler Richtung durch Ansteuern der X-Achsenwelle oder der Y-Achsenwelle. Die Werkzeugmaschine 1 bewegt den Kopf 6 durch Ansteuern der Z-Achsenwelle.
  • Die X-Achsenwelle, die Y-Achsenwelle und die Z-Achsenwelle sind jeweils Kugelgewindespindeln, die sich durch eine vom Motor erzeugte Antriebskraft drehen. Die X-Achsenwelle und die Y-Achsenwelle sind im Unterbau 2 angeordnet. Die Z-Achsenwelle ist in dem Ständer 7 angebracht. Der Unterbau 2 ist ausgestattet mit: einem Mechanismus zur Umwandlung einer Drehbewegung an der X-Achse in eine lineare Bewegung in X-Achsenrichtung; und einem Mechanismus zur Umwandlung einer Drehbewegung an der Y-Achse in eine lineare Bewegung in Y-Achsenrichtung. Der Ständer 7 ist mit einem Mechanismus zur Umwandlung einer Drehbewegung an der Z-Achsenwelle in eine lineare Bewegung in Z-Achsenrichtung ausgestattet. In 1 sind die X-Achsenwelle, die Y-Achsenwelle und die Z-Achsenwelle, die Motoren zum Antrieb der jeweiligen Wellen und die Mechanismen zur Umwandlung von Drehbewegungen der jeweiligen Wellen in lineare Bewegungen nicht dargestellt.
  • In der folgenden Beschreibung bezieht sich die X-Achsenrichtung auf eine Richtung, in der der Tisch 4 durch den Antrieb der X-Achsenwelle bewegt wird. Die Y-Achsenrichtung bezieht sich auf eine Richtung, in der der Tisch 4 durch den Antrieb der Y-Achsenwelle bewegt wird. Die Z-Achsenrichtung bezieht sich auf eine Richtung, in der der Kopf 6 durch den Antrieb der Z-Achsenwelle bewegt wird. In 1 sind die X-Achsenrichtung, die Y-Achsenrichtung und die Z-Achsenrichtung durch Pfeile dargestellt. Die X-Achsenrichtung und die Y-Achsenrichtung gehören zur horizontalen Richtung. Die Z-Achsenrichtung gehört zur vertikalen Richtung.
  • Die Werkzeugmaschine 1 bewegt den Tisch 4 in X-Achsenrichtung und Y-Achsenrichtung und den Kopf 6 in Z-Achsenrichtung, um dadurch das Werkzeug 5 und das Werkstück 3 im dreidimensionalen Raum relativ zueinander zu bewegen. Daher sind in der Werkzeugmaschine 1 das Werkzeug 5 und das Werkstück 3 in X-Achsenrichtung, Y-Achsenrichtung und Z-Achsenrichtung relativ zueinander verfahrbar. Die Werkzeugmaschine 1 kann zudem einen Motor aufweisen, um den Tisch 4 in der horizontalen Ebene zu drehen.
  • 2 zeigt ein Blockschaltbild, das eine Werkzeugmaschine und eine numerische Steuerung gemäß der ersten Ausführungsform veranschaulicht. 2 zeigt die funktionelle Konfiguration einer NC-Vorrichtung 10. Die NC-Vorrichtung 10 erzeugt einen Positionsbefehl zur Steuerung der X-Achsenwelle 16X, der Y-Achsenwelle 16Y und der Z-Achsenwelle 16Z.
  • Bei der NC-Vorrichtung 10 werden eine erste Welle und eine zweite Welle auf Basis der Charakteristika des Auftretens einer achsenübergreifenden Störung in der Werkzeugmaschine 1 definiert, wobei bezüglich der X-Achsenwelle 16X, der Y-Achsenwelle 16Y und der Z-Achsenwelle 16Z die erste Welle eine Welle ist, die Vibrationen aufnimmt, und bezüglich der X-Achsenwelle 16X, der Y-Achsenwelle 16Y und der Z-Achsenwelle 16Z die zweite Welle eine andere Welle ist, die Vibrationen auf die erste Welle überträgt.
  • Bei der Werkzeugmaschine 1 ist der Tisch 4 auf dem Unterbau 2 angeordnet, und der Kopf 6 wird von dem auf dem Unterbau 2 befindlichen Ständer 7 getragen. Bei diesem Aufbau der Werkzeugmaschine 1 können Vibrationen, die durch den Antrieb der X-Achsenwelle 16X oder den Antrieb der Y-Achsenwelle 16Y verursacht werden, vom Tisch 4 über den Unterbau 2 und den Ständer 7 auf den Kopf 6 übertragen werden. Wie gerade beschrieben wurde, weist die Werkzeugmaschine 1 Charakteristika auf, bei denen es zu einer achsenübergreifenden Störung kommen kann, da die Z-Achsenwelle 16Z vibriert, wenn die Z-Achsenwelle 16Z durch den Antrieb der X-Achsenwelle 16X oder der Y-Achsenwelle 16Y in Vibration versetzt wird. Basierend auf der Annahme solcher Charakteristika wird bei der NC-Vorrichtung 10 die Z-Achsenwelle 16Z als die oben beschriebene erste Welle definiert und die X-Achsenwelle 16X und die Y-Achsenwelle 16Y werden als die oben beschriebenen zweiten Wellen definiert.
  • Eine Antriebseinheit 8 für die erste Welle umfasst einen Servoverstärker zur Steuerung eines Motors, der zum Antrieb der Z-Achsenwelle 16Z verwendet wird, bei der es sich um die erste Welle handelt. Eine Antriebseinheit 9 für die zweite Welle umfasst einen Servoverstärker zur Steuerung eines Motors, der zum Antrieb der X-Achsenwelle 16X, bei der es sich um die zweite Welle handelt, verwendet wird, und einen Servoverstärker zur Steuerung eines Motors, der zum Antrieb der Y-Achsenwelle 16Y, bei der es sich um die zweite Welle handelt, verwendet wird.
  • Die NC-Vorrichtung 10 umfasst eine Erstpositionsbefehl-Erzeugungseinheit 11, um einen ersten Positionsbefehl in Übereinstimmung mit einem Bearbeitungsprogramm zu erzeugen, und eine Zweitpositionsbefehl-Erzeugungseinheit 12, um einen zweiten Positionsbefehl in Übereinstimmung mit dem Bearbeitungsprogramm zu erzeugen. Der erste Positionsbefehl ist ein Befehl zum Steuern der ersten Welle, der zum Spezifizieren der Position des Kopfes 6 in Z-Achsenrichtung dient. Der zweite Positionsbefehl umfasst zum Steuern der zweiten Welle einen Befehl, der zum Spezifizieren der Position des Tisches 4 in X-Achsenrichtung dient, und einen Befehl, der zum Spezifizieren der Position des Tisches 4 in Y-Achsenrichtung dient.
  • Die NC-Vorrichtung 10 umfasst eine Ruckberechnungseinheit 13 zur Berechnung eines Rucks, bei dem es sich um eine Änderungsrate der Beschleunigung handelt, eine Korrekturbetragberechnungseinheit 14 zur Berechnung eines Korrekturbetrags für den ersten Positionsbefehl und einen Addierer 15 zum Addieren des Korrekturbetrags zu einem Wert eines Positionsbefehls, bei dem es sich um den ersten Positionsbefehl handelt. Die Erstpositionsbefehl-Erzeugungseinheit 11 gibt den erzeugten ersten Positionsbefehl an den Addierer 15 aus. Die Zweitpositionsbefehl-Erzeugungseinheit 12 gibt den erzeugten zweiten Positionsbefehl an die Antriebseinheit 9 für die zweite Welle aus. Die Korrekturbetragberechnungseinheit 14 berechnet einen Korrekturbetrag für den ersten Positionsbefehl auf Basis des Rucks, um die Vibrationen der ersten Welle auszugleichen, die durch eine achsenübergreifende Störung verursacht werden, die in Verbindung mit dem Antrieb der zweiten Welle auftritt.
  • Die Ruckberechnungseinheit 13 berechnet einen Wert des Rucks auf Basis des zweiten Positionsbefehls, der von der Zweitpositionsbefehl-Erzeugungseinheit 12 erzeugt wird, oder auf Basis von Positions-Feedback-Informationen, die von der Antriebseinheit 9 für die zweite Welle bereitgestellt werden. Die Positions-Feedback-Informationen beziehen sich auf Positionsinformationen des Tisches 4, der durch den Antrieb der zweiten Welle bewegt wurde. 2 zeigt einen Pfeil, der die Ausgabe des zweiten Positionsbefehls von der Zweitpositionsbefehl-Erzeugungseinheit 12 an die Ruckberechnungseinheit 13 darstellt, und einen weiteren Pfeil, der die Ausgabe der Positions-Feedback-Informationen von der Antriebseinheit 9 für die zweite Welle an die Ruckberechnungseinheit 13 darstellt.
  • Die Ruckberechnungseinheit 13 erhält Positionsinformation des Tisches 4 in X-Achsenrichtung aus dem zweiten Positionsbefehl für die X-Achsenrichtung oder aus den Positions-Feedback-Informationen für die X-Achsenrichtung. Die Ruckberechnungseinheit 13 erhält Positionsinformationen des Tisches 4 in Y-Achsenrichtung aus dem zweiten Positionsbefehl für die Y-Achsenrichtung oder aus den Positions-Feedback-Informationen für die Y-Achsen-Richtung. Die Ruckberechnungseinheit 13 berechnet einen Ruck durch die dritte Ableitung der Position nach der Zeit, wobei die Position des Tisches 4 als Positionsvektor zu einem beliebigen Zeitpunkt dargestellt wird. Die Ruckberechnungseinheit 13 berechnet einen Ruck beim Antrieb der X-Achsenwelle 16X auf Basis der Positionsinformationen des Tisches 4 in X-Achsenrichtung. Die Ruckberechnungseinheit 13 berechnet einen Ruck beim Antrieb der Y-Achsenwelle 16Y auf Basis der Positionsinformationen des Tisches 4 in Y-Achsenrichtung. Die Ruckberechnungseinheit 13 gibt ein Rucksignal, bei dem es sich um ein Signal handelt, das ein Ergebnis der Ruckberechnung angibt, an die Korrekturbetragberechnungseinheit 14 aus.
  • Die Korrekturbetragberechnungseinheit 14 berechnet einen Korrekturbetrag für den ersten Positionsbefehl durch Multiplikation eines Wertes, bei dem es sich um ein Ergebnis der Ruckberechnung handelt, mit einem Korrekturfaktor. Bei dieser Berechnung wird angenommen, dass der Korrekturfaktor eine Konstante ist, die vorab festgelegt wird. Eine Beziehung zwischen dem Ruck und dem Korrekturbetrag, mit dem eine relative Verschiebung korrigiert werden kann, wird durch einen Test oder durch Simulation ermittelt, so dass der Korrekturfaktor auf Basis der ermittelten Beziehung festgelegt werden kann. Es wird darauf hingewiesen, dass der Korrekturfaktor in der NC-Vorrichtung 10 berechnet werden kann. Die relative Verschiebung und das Verfahren zur Berechnung des Korrekturfaktors in der NC-Vorrichtung 10 werden später beschrieben.
  • Die Korrekturbetragberechnungseinheit 14 gibt das Ergebnis einer Berechnung des Korrekturbetrags an den Addierer 15 aus. Der Addierer 15 addiert das Ergebnis der Berechnung des Korrekturbetrags zu dem Positionsbefehlswert, bei dem es sich um den ersten Positionsbefehl handelt. Der Addierer 15 gibt den bereits durch die Addition des Korrekturbetrages korrigierten Positionsbefehlswert an die Antriebseinheit 8 für die erste Welle aus.
  • Als Nächstes wird eine relative Verschiebung beschrieben, die durch die zwischen der ersten Welle und der zweiten Welle auftretende achsenübergreifende Störung verursacht wird. Die relative Verschiebung ist definiert als Betrag der Änderung der Position des Werkzeugs 5 in Bezug auf die Position des Werkstücks 3. Die relative Veränderung kann auch als Betrag der Positionsänderung des Werkstücks 3 in Bezug auf die Position des Werkzeugs 5 oder als Differenz des Betrags der Positionsänderung zwischen dem Werkstück 3 und dem Werkzeug 5 betrachtet werden.
  • 3 zeigt eine Darstellung zur Erläuterung einer relativen Verschiebung bei der in 1 dargestellten Werkzeugmaschine. In der folgenden Beschreibung bezieht sich die horizontale Welle auf die X-Achsenwelle 16X oder die Y-Achsenwelle 16Y und die vertikale Welle auf die Z-Achsenwelle 16Z. Die in 3 dargestellte Kurve L1 ist in einer Grafik dargestellt, die die Beziehung zwischen der Zeit und der Geschwindigkeit des Tisches 4 in horizontaler Richtung zeigt. Die in 3 dargestellte Kurve L2 ist in einer Grafik dargestellt, die die Beziehung zwischen der Zeit und der Beschleunigung des Tisches 4 in horizontaler Richtung zeigt. Die in 3 dargestellte Kurve L3 ist in einer Grafik dargestellt, die eine Beziehung zwischen der Zeit und dem Ruck des Tisches 4 in horizontaler Richtung zeigt. Die in 3 dargestellte Kurve L4 ist in einer Grafik dargestellt, die eine Beziehung zwischen der Zeit und der relativen Verschiebung zeigt.
  • Die Kurve L1 zeigt eine Änderung der Geschwindigkeit, wenn der Tisch 4 von Null auf eine bestimmte Geschwindigkeit beschleunigt wird und der Tisch 4 dann von der bestimmten Geschwindigkeit auf Null abgebremst wird. Die Kurve L2 zeigt eine Änderung der Beschleunigung des Tisches 4, wenn die Geschwindigkeit des Tisches 4, wie durch die Kurve L1 dargestellt, geändert wird. Die Kurve L3 zeigt eine Änderung des Rucks, wenn die Beschleunigung des Tisches 4, wie durch die Kurve L2 dargestellt, geändert wird. Die Kurve L4 zeigt eine Änderung der relativen Verschiebung, wenn die Geschwindigkeit des Tisches 4, wie durch die Kurve L1 dargestellt, geändert wird.
  • Wie durch die Kurve L4 dargestellt ist, ändert sich die relative Verschiebung signifikant zu Beginn der Beschleunigung des Tisches 4, am Ende von dessen Beschleunigung, zu Beginn von dessen Verzögerung und am Ende von dessen Verzögerung. Wie durch die Kurven L3 und L4 dargestellt ist, nimmt die relative Verschiebung in Verbindung mit einer Zunahme des Rucks ab und die relative Verschiebung nimmt in Verbindung mit einer Abnahme des Rucks zu. Zwischen einer Änderung des Rucks und einer Änderung der relativen Verschiebung besteht die gerade beschriebene Korrelation.
  • Wenn der Tisch 4 durch den Antrieb der X-Achsenwelle 16X abrupt in X-Achsenrichtung beschleunigt wird, pflanzt sich während der Beschleunigung des Tisches 4 eine beschleunigungsbedingte Trägheitskraft vom Tisch 4 über den Unterbau 2 und den Ständer 7 auf den Kopf 6 fort. Am Ende der Beschleunigung der X-Achsenwelle 16X nimmt die Trägheitskraft schlagartig ab, so dass im Kopf 6 kurzzeitig nur eine Reaktionskraft gegen die Trägheitskraft verbleibt. Die verbleibende Reaktionskraft bewirkt, dass die Z-Achsenwelle 16Z zusammen mit dem Kopf 6 in einer Richtung vibriert, die durch den Doppelpfeil in 1 dargestellt ist. Auf diese Weise erhält die Z-Achsenwelle 16Z aufgrund einer abrupten Änderung des Kräftegleichgewichts einen Stoß, und folglich kommt es zu einer Änderung der relativen Verschiebung. Wenn der Tisch 4 durch den Antrieb der Y-Achsenwelle 16Y abrupt in Y-Achsenrichtung beschleunigt wird, kommt es ähnlich wie bei der X-Achsenwelle 16X zu einer Änderung der relativen Verschiebung. Wenn die horizontale Welle abrupt abgebremst wird, erhält die vertikale Welle aufgrund einer abrupten Änderung des Kräftegleichgewichts einen Stoß, und folglich ändert sich die relative Verschiebung.
  • Bei der ersten Ausführungsform berechnet die NC-Vorrichtung 10 einen Korrekturbetrag auf Basis eines Rucks, der mit einer relativen Verschiebung korreliert ist, und addiert den berechneten Korrekturbetrag zu einem Positionsbefehlswert für die Z-Achsenwelle 16Z, wodurch die NC-Vorrichtung 10 eine Änderung der relativen Verschiebung aufgrund einer achsenübergreifenden Störung ausgleichen kann. Indem die NC-Vorrichtung 10 eine Änderung der relativen Verschiebung aufgrund einer achsenübergreifenden Störung ausgleicht, kann sie verhindern, dass sich die Position des Werkstücks 3 und die Position des Werkzeugs 5 abgesehen von einer beabsichtigten Änderung ihrer relativen Positionen gemäß einem Bearbeitungsprogramm ändern. Dadurch kann die NC-Vorrichtung 10 die Bearbeitungsqualität der Werkzeugmaschine 1 verbessern.
  • Als Nächstes wird das Verfahren zur Berechnung eines Korrekturfaktors in der NC-Vorrichtung 10 beschrieben. Es wird darauf hingewiesen, dass die NC-Vorrichtung 10 ein Element enthalten kann, das für die Berechnung eines Korrekturfaktors ausgebildet ist. 4 zeigt eine Darstellung zur Veranschaulichung eines Beispiels, bei dem zu der in 2 dargestellten Konfiguration ein Element zur Berechnung eines Korrekturfaktors hinzugefügt wurde.
  • Eine Sensoreinheit 17 misst die oben beschriebene relative Verschiebung. Die Sensoreinheit 17 umfasst einen Wegsensor oder einen Beschleunigungssensor. Die Sensoreinheit 17 misst eine relative Verschiebung, indem sie den Betrag der Positionsänderung des Werkstücks 3 und den Betrag der Positionsänderung des Werkzeugs 5 erfasst. Es wird darauf hingewiesen, dass die Sensoreinheit 17 eine relative Verschiebung messen kann, indem sie den Betrag der Positionsänderung des Kopfes 6 und den Betrag der Positionsänderung des Tisches 4 erfasst. Das Verfahren zur Messung einer relativen Verschiebung ist nicht auf das bei der ersten Ausführungsform beschriebene Verfahren beschränkt.
  • Die NC-Vorrichtung 10 ist mit einer Korrekturfaktorkalkulationseinheit 20 ausgestattet, bei der es sich um ein Element handelt, das zur Berechnung eines Korrekturfaktors ausgebildet ist. Die Korrekturfaktorkalkulationseinheit 20 umfasst eine Korrekturfaktorberechnungseinheit 21 und eine Maximalwertextraktionseinheit 22. Die Sensoreinheit 17 gibt ein Relativverschiebungssignal, bei dem es sich um ein Signal handelt, das das Ergebnis der Messung einer relativen Verschiebung angibt, an die Maximalwertextraktionseinheit 22 aus. Die Ruckberechnungseinheit 13 gibt ein Rucksignal an die Maximalwertextraktionseinheit 22 aus.
  • Auf Basis des Kurvenverlaufs des Rucksignals extrahiert die Maximalwertextraktionseinheit 22 einen Wert des Rucks am Maximum der Kurvenform. Hierbei wird der Wert des Rucks am Maximum der Kurvenform als Rucksignalmaximalwert bezeichnet. Die oben beschriebene Kurve L3 ist ein Beispiel für eine Kurvenform, die eine Änderung des Rucks mit der Zeit zeigt. Die Maximalwertextraktionseinheit 22 ermittelt jeweils einen Rucksignalmaximalwert während eines Zeitraums um den Beginn der Beschleunigung, eines Zeitraums um das Ende der Beschleunigung, eines Zeitraums um den Beginn der Verzögerung und eines Zeitraums um das Ende der Verzögerung. Die Maximalwertextraktionseinheit 22 bestimmt den Zeitraum um den Beginn der Beschleunigung, den Zeitraum um das Ende der Beschleunigung, den Zeitraum um den Beginn der Verzögerung und den Zeitraum um das Ende der Verzögerung jeweils auf Basis eines Beschleunigungssignals, das durch das Integrieren des Rucksignals über die Zeit erhalten wird, oder auf Basis eines Geschwindigkeitssignals, das durch zweimaliges Integrieren des Rucksignals über die Zeit erhalten wird.
  • Auf Basis der Kurvenform des Relativverschiebungssignals extrahiert die Maximalwertextraktionseinheit 22 einen Wert der relativen Verschiebung am Maximum der Kurvenform. Hierbei wird der Wert der relativen Verschiebung am Maximum der Kurvenform als Relativverschiebungsmaximalwert bezeichnet. Die oben beschriebene Kurve L4 ist ein Beispiel für eine Kurvenform, die eine Änderung der relativen Verschiebung über der Zeit angibt. Die Maximalwertextraktionseinheit 22 ermittelt den Relativverschiebungsmaximalwert jeweils während des Zeitraums um den Beginn der Beschleunigung, des Zeitraums um das Ende der Beschleunigung, des Zeitraums um den Beginn der Verzögerung und des Zeitraums um das Ende der Verzögerung.
  • Es wird darauf hingewiesen, dass der Rucksignalmaximalwert und der Relativverschiebungsmaximalwert durch ein anderes Verfahren als das bei der ersten Ausführungsform beschriebene Verfahren extrahiert werden können. Es wird darauf hingewiesen, dass die Maximalwertextraktionseinheit 22 den Rucksignalmaximalwert und den Relativverschiebungsmaximalwert unter Verwendung eines allgemein üblichen Maximalwertextraktionsverfahrens, eines Extremwertsuchverfahrens oder anderer Verfahren extrahieren kann. Es wird darauf hingewiesen, dass die Maximalwertextraktionseinheit 22 ein Rauschfilterungsverfahren an einem Rucksignal und einem Relativverschiebungssignal durchführen kann. Es wird darauf hingewiesen, dass die Maximalwertextraktionseinheit 22 den Maximalwert und die Werte um den Maximalwert herum mitteln kann, um Rauschen zu entfernen.
  • Die Maximalwertextraktionseinheit 22 gibt den extrahierten Rucksignalmaximalwert und Relativverschiebungsmaximalwert an die Korrekturfaktorberechnungseinheit 21 aus. Die Korrekturfaktorberechnungseinheit 21 speichert den Rucksignalmaximalwert und den Relativverschiebungsmaximalwert. Die Korrekturfaktorberechnungseinheit 21 teilt einen Relativverschiebungsmaximalwert durch einen Rucksignalmaximalwert, der zu diesem Relativverschiebungsmaximalwert gehört, um dadurch ein Maximalwertverhältnis zu berechnen, bei dem es sich um das Verhältnis zwischen dem Rucksignalmaximalwert und dem Relativverschiebungsmaximalwert handelt. Die Korrekturfaktorberechnungseinheit 21 mittelt die Maximalwertverhältnisse an den jeweiligen Maximalwerten der relativen Verschiebung, um dadurch einen Mittelwert der Maximalwertverhältnisse zu erhalten. Der Mittelwert der Maximalwertverhältnisse, der von der Korrekturfaktorberechnungseinheit 21 in der oben beschriebenen Weise berechnet wird, wird als Korrekturfaktor festgelegt. Die Korrekturfaktorberechnungseinheit 21 gibt den berechneten Korrekturfaktor an die Korrekturbetragberechnungseinheit 14 aus.
  • Die Korrekturfaktorberechnungseinheit 21 kann die Rucksignalmaximalwerte in geeignete Bereiche unterteilen, um für jeden der Bereiche eine Anpassung des Maximalwertverhältnisses für jeden der Relativverschiebungsmaximalwerte durchzuführen, um einen Korrekturfaktor zu erhalten. Die Rucksignalmaximalwerte werden in Bereiche unterteilt, die optional festgelegt werden. Es wird auch darauf hingewiesen, dass die Bereiche, in die die Rucksignalmaximalwerte unterteilt werden, in Übereinstimmung mit dem Verlauf der Änderung des Relativverschiebungsmaximalwerts in Bezug auf die Änderung des Rucksignalmaximalwerts festgelegt werden können. Beispielsweise werden die Relativverschiebungsmaximalwerte in Bezug auf die Rucksignalmaximalwerte aufgetragen, und dann werden die Bereiche, in die die Rucksignalmaximalwerte unterteilt werden, in Bezug auf den Punkt festgelegt, an dem sich der Verlauf der Größe des Relativverschiebungsmaximalwerts drastisch ändert, wenn der Rucksignalmaximalwert zunimmt oder abnimmt. Die Korrekturfaktorberechnungseinheit 21 kann einen geeigneteren Korrekturfaktor berechnen, indem sie eine Anpassung der Rucksignalmaximalwerte für jeden Bereich durchführt. Für die Anpassung kann die Methode der kleinsten Quadrate oder die Kurvenanpassung verwendet werden.
  • Anders als bei der Berechnung des Korrekturfaktors durch die in der NC-Vorrichtung 10 enthaltene Korrekturfaktorkalkulationseinheit 20 kann der Korrekturfaktor auch durch eine Berechnungsvorrichtung außerhalb der NC-Vorrichtung 10 berechnet werden. In diesem Fall wird ein Korrekturfaktor, der aus der Berechnungsvorrichtung in die NC-Vorrichtung 10 eingelesen wurde, in der Korrekturbetragberechnungseinheit 14 festgelegt. Bei der Berechnungsvorrichtung handelt es sich um einen Personal Computer oder ein andere Vorrichtungen. Die Berechnungseinrichtung umfasst eine Funktionseinheit, die der Korrekturbetragberechnungseinheit 14 ähnlich ist.
  • Ein Ruck, der zur Berechnung eines Korrekturbetrags in der Korrekturbetragberechnungseinheit 14 verwendet wird, ist nicht auf den von der Ruckberechnungseinheit 13 berechneten Ruck beschränkt. Für die Berechnung des Korrekturbetrags kann auch ein durch eine tatsächliche Messung erhaltener Ruck verwendet werden. In diesem Fall wird ein Ruckmesssensor zur Messung eines Rucks an der Werkzeugmaschine 1 angebracht. Der Ruckmesssensor gibt ein Rucksignal, bei dem es sich um das Ergebnis der Messung des Rucks handelt, an die NC-Vorrichtung 10 aus. Für die Berechnung des Korrekturbetrags kann ein Ruck verwendet werden, der durch die erste Ableitung der Beschleunigung nach der Zeit ermittelt wird. In diesem Fall wird ein Beschleunigungssensor an der Werkzeugmaschine 1 angebracht. Der Beschleunigungssensor gibt ein Beschleunigungssignal, bei dem es sich um das Ergebnis der Messung der Beschleunigung handelt, an die NC-Einrichtung 10 aus.
  • Die von der NC-Vorrichtung 10 zu steuernde Werkzeugmaschine 1 ist nicht auf ein stehendes Bearbeitungszentrum beschränkt, sondern es kann sich auch um ein Bearbeitungszentrum mit Doppelständerstruktur handeln.
  • Wenn eine der Wellen abrupt beschleunigt wird, breitet sich während der Beschleunigung der einen Welle eine durch die Beschleunigung erzeugte Trägheitskraft über die mechanische Struktur auf die andere der Wellen aus. Wenn die Trägheitskraft nach Beendigung der Beschleunigung der einen Welle abrupt abnimmt wird, bleibt eine Reaktionskraft gegen die Trägheitskraft nur kurzzeitig bestehen. Die andere Welle erfährt durch die abrupte Änderung des Kräftegleichgewichts einen Stoß, der zu einer Positionsänderung der anderen Welle führt. Ähnlich wie bei der abrupten Beschleunigung erfährt die andere Welle bei der abrupten Abbremsung einer der Wellen einen Stoß, der durch eine abrupte Änderung des Kräftegleichgewichts verursacht wird und eine Positionsänderung der anderen Welle zur Folge hat. Ein Ruck, der die Änderungsrate der Beschleunigung darstellt, kann eine Ursache für einen solchen Stoß sein, der wie oben beschrieben zum Zeitpunkt der Beschleunigung oder Verzögerung der Welle erzeugt wird.
  • Gemäß der ersten Ausführungsform berechnet die NC-Vorrichtung 10 einen Korrekturbetrag für den ersten Positionsbefehl auf Basis des Rucks. Auf Basis des Rucks, der die Ursache für den zum Zeitpunkt der Beschleunigung oder Verzögerung einer Welle erzeugten Stoß sein kann, berechnet die NC-Vorrichtung 10 einen Korrekturbetrag, um die aufgrund einer achsenübergreifenden Störung auftretende Änderung der Position der ersten Welle zu kompensieren, wodurch es möglich ist, die Position der ersten Welle mit hoher Genauigkeit zu korrigieren. Dadurch weist die NC-Vorrichtung 10 den vorteilhaften Effekt auf, dass die Bearbeitungsqualität der Werkzeugmaschine 1 verbessert werden kann.
  • Zweite Ausführungsform
  • 5 zeigt ein Blockschaltbild zur Veranschaulichung einer Werkzeugmaschine und einer numerischen Steuerung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung. Die NC-Vorrichtung 30 gemäß der zweiten Ausführungsform berechnet einen Korrekturbetrag auf Basis eines Referenzkurvenformsignals, das durch Simulation des Rucksignals erhalten wird, anstelle eines Rucksignals. Bei der zweiten Ausführungsform sind Bestandteile, die mit denen der ersten Ausführungsform identisch sind, mit den gleichen Bezugszeichen versehen, wobei hauptsächlich Konfigurationen beschrieben werden, die sich von denen der ersten Ausführungsform unterscheiden. Die NC-Vorrichtung 30 ist anstelle der Ruckberechnungseinheit 13 gemäß der ersten Ausführungsform mit einer Geschwindigkeitsberechnungseinheit 31, einer Triggerberechnungseinheit 32 und einer Referenzkurvenformausgabeeinheit 33 ausgestattet.
  • Die Geschwindigkeitsberechnungseinheit 31 berechnet eine Geschwindigkeit auf Basis des zweiten Positionsbefehls, der von der Zweitpositionsbefehl-Erzeugungseinheit 12 erzeugt wird, oder auf Basis von Positions-Feedback-Informationen, die von der Antriebseinheit 9 für die zweite Welle bereitgestellt werden. Die Geschwindigkeitsberechnungseinheit 31 erhält Positionsinformationen über den Tisch 4 in X-Achsenrichtung aus dem zweiten Positionsbefehl für die X-Achsenrichtung oder aus den Positions-Feedback-Informationen für die X-Achsenrichtung. Die Geschwindigkeitsberechnungseinheit 31 erhält Positionsinformationen über den Tisch 4 in Y-Achsenrichtung aus dem zweiten Positionsbefehl für die Y-Achsenrichtung oder aus den Positions-Feedback-Informationen für die Y-Achsen-Richtung.
  • Die Geschwindigkeitsberechnungseinheit 31 berechnet eine Geschwindigkeit durch die erste Ableitung der Position nach der Zeit, da die Position des Tisches 4 einen Positionsvektor zu einer beliebigen Zeit darstellt. Die Geschwindigkeitsberechnungseinheit 31 berechnet eine Geschwindigkeit beim Antrieb der X-Achsenwelle 16X auf Basis der Positionsinformationen über den Tisch 4 in X-Achsenrichtung. Die Geschwindigkeitsberechnungseinheit 31 berechnet eine Geschwindigkeit beim Antrieb der Y-Achsenwelle 16Y auf Basis der Positionsinformationen über den Tisch 4 in Y-Achsenrichtung. Die Geschwindigkeitsberechnungseinheit 31 gibt ein Geschwindigkeitssignal, bei dem es sich um ein Signal handelt, das ein Ergebnis der Berechnung der Geschwindigkeit darstellt, an die Triggerberechnungseinheit 32 und die Referenzkurvenformausgabeeinheit 33 aus.
  • Auf Basis des Geschwindigkeitssignals, das in die Triggerberechnungseinheit 32 eingegeben wird, erzeugt die Triggerberechnungseinheit 32 ein Korrekturtriggersignal, das zum Zeitpunkt des Beginns der Beschleunigung und zum Zeitpunkt des Beginns der Verzögerung in einen Ein-Zustand versetzt wird. Die Triggerberechnungseinheit 32 gibt das erzeugte Korrekturtriggersignal an die Referenzkurvenformausgabeeinheit 33 aus. Die Triggerberechnungseinheit 32 gibt ein Korrekturtriggersignal aus, das in den Ein-Zustand versetzt wurde, wodurch die Referenzkurvenformausgabeeinheit 33 angewiesen wird, ein Referenzkurvenformsignal auszugeben.
  • Wenn das Korrekturtriggersignal, das in einen Ein-Zustand versetzt wurde, in die Referenzkurvenformausgabeeinheit 33 eingegeben wird, gibt die Referenzkurvenformausgabeeinheit 33 ein Referenzkurvenformsignal aus. Die Referenzkurvenform ist als Kurvenform des Referenzkurvenformsignals definiert. Nachdem die Referenzkurvenformausgabeeinheit 33 das Referenzkurvenformsignal ausgegeben hat, weist die Referenzkurvenformausgabeeinheit 33 die Triggerberechnungseinheit 32 an, das Korrekturtriggersignal in den Aus-Zustand zu versetzen. In Übereinstimmung mit der Anweisung der Referenzkurvenformausgabeeinheit 33 versetzt die Triggerberechnungseinheit 32 das Korrekturtriggersignal in den Aus-Zustand. Es wird darauf hingewiesen, dass die Triggerberechnungseinheit 32 das Korrekturtriggersignal unmittelbar nach Ausgabe eines Einzelimpuls-Korrekturtriggersignals im Ein-Zustand von der Triggerberechnungseinheit 32 an die Referenzkurvenformausgabeeinheit 33 in den Aus-Zustand versetzen kann.
  • In der Referenzkurvenformausgabeeinheit 33 werden vorab verschiedene Arten von Parametern für das Referenzkurvenformsignal eingestellt. Die verschiedenen Arten von Parametern umfassen Parameter für die Form, das Vorzeichen, die Ausgabezeit und das Ausgabe-Timing der Referenzkurvenform. Das Vorzeichen bezieht sich auf ein positives oder negatives Vorzeichen des Referenzkurvenformsignals. Die Ausgabezeit bezieht sich auf eine Zeitspanne, in der das Referenzsignal ausgegeben wird. Das Ausgabe-Timing bezieht sich auf die Zeit vom Versetzen eines Korrekturtriggersignals in den Ein-Zustand bis zum Beginn der Ausgabe des Referenzsignals, d. h. eine Verzögerungszeit des Referenzkurvenformsignals seit dem Versetzen des Korrekturtriggersignals in den Ein-Zustand. Die Form der Referenzkurvenform wird im Voraus festgelegt und kann eine Dreieckskurvenform, eine Rechteckskurvenform, eine Trapezkurvenform, eine Bogenkurvenform, eine Sinuskurvenform für einen halben Zyklus und andere Kurvenformen umfassen. Die Ausgabezeit und das Ausgabe-Timing werden auf Basis eines Ergebnisses eingestellt, das jeweils durch vorheriges Messen der Änderung des Rucks zum Zeitpunkt des Beginns der Beschleunigung, zum Zeitpunkt des Endes der Beschleunigung, zum Zeitpunkt des Beginns der Verzögerung und zum Zeitpunkt des Endes der Verzögerung erhalten wird.
  • Das Vorzeichen des Referenzkurvenformsignals wird vorab auf Basis der Bewegungsrichtung des Tisches 4 festgelegt, in der die zweite Welle angetrieben wird, und ob der Tisch 4 beschleunigt oder abgebremst wird. Auf Basis des Geschwindigkeitssignals bestimmt die Referenzkurvenformausgabeeinheit 33 die Bewegungsrichtung und ob dieser beschleunigt oder abgebremst wird, um das Vorzeichen zu ermitteln. Auf Basis der Bewegungsrichtung beim Antrieb der zweiten Welle bestimmt die Referenzkurvenformausgabeeinheit 33 das Vorzeichen in einer Weise, dass beispielsweise das Vorzeichen zum Zeitpunkt des Beginns der Beschleunigung positiv, zum Zeitpunkt des Endes der Beschleunigung negativ, zum Zeitpunkt des Beginns der Verzögerung negativ und zum Zeitpunkt des Endes der Verzögerung positiv ist. Wenn sich der Tisch 4 beispielsweise in positiver Richtung entlang der X-Achse bewegt, ist das Vorzeichen zum Zeitpunkt des Beginns der Beschleunigung und zum Zeitpunkt des Endes der Verzögerung positiv, zum Zeitpunkt des Endes der Beschleunigung und zum Zeitpunkt des Beginns der Verzögerung jedoch negativ, und wenn sich der Tisch 4 in die entgegengesetzte Richtung bewegt, die der positiven Richtung entlang der X-Achse entgegengesetzt ist, wird das oben beschriebene Vorzeichen in allen Fällen invertiert. Auf diese Weise erzeugt die Referenzkurvenformausgabeeinheit 33 ein Referenzkurvenformsignal entsprechend der Richtung der Kraft, die zum Zeitpunkt der Beschleunigung oder Verzögerung auf die mechanische Struktur ausgeübt wird.
  • Die Referenzkurvenformausgabeeinheit 33 erzeugt ein Referenzkurvenformsignal für die Beschleunigung und die Verzögerung jeweils so, dass das Signal für eine vorab festgelegte Ausgabezeit ausgegeben wird. Die Referenzkurvenformausgabeeinheit 33 erzeugt ein Referenzkurvenformsignal für die Beschleunigung und die Verzögerung jeweils so, dass die Ausgabe des Signals zu einem vorab eingestellten Ausgabe-Timing gestartet wird. Die Referenzkurvenformausgabeeinheit 33 gibt auf diese Weise ein Referenzkurvenformsignal, bei dem es sich um ein Signal handelt, das durch Simulation des Rucksignals der ersten Ausführungsform erhalten wurde, an die Korrekturbetragberechnungseinheit 14 aus. Die Korrekturbetragberechnungseinheit 14 berechnet einen Korrekturbetrag auf Basis des Referenzkurvenformsignals, das zum Zeitpunkt der Beschleunigung beim Antrieb der zweiten Welle und zum Zeitpunkt der Verzögerung beim Antrieb der zweiten Welle auszugeben ist.
  • Die Korrekturbetragberechnungseinheit 14 berechnet einen Korrekturbetrag für den ersten Positionsbefehl durch Multiplikation eines Wertes des Referenzkurvenformsignals mit einem Korrekturfaktor. Ähnlich wie bei der ersten Ausführungsform wird angenommen, dass der Korrekturfaktor eine Konstante ist, die im Voraus festgelegt wird.
  • Die Triggerberechnungseinheit 32 ist nicht notwendigerweise auf einen Typ beschränkt, der so ausgebildet ist, dass er ein Korrekturtriggersignal erzeugt, das zum Zeitpunkt des Beginns der Beschleunigung und zum Zeitpunkt des Beginns der Verzögerung in einen Ein-Zustand gebracht wird. Es ist ausreichend, wenn die Triggerberechnungseinheit 32 so ausgebildet ist, dass sie ein Korrekturtriggersignal erzeugt, das zum Zeitpunkt des Beginns der Beschleunigung und/oder zum Zeitpunkt des Beginns der Verzögerung in den Ein-Zustand gebracht wird. Es ist ausreichend, wenn die Korrekturbetragberechnungseinheit 14 einen Korrekturbetrag auf Basis des Referenzkurvenformsignals berechnet, das zum Zeitpunkt der Beschleunigung beim Antrieb der zweiten Welle und/oder zum Zeitpunkt der Verzögerung beim Antrieb der zweiten Welle ausgegeben wird.
  • Gemäß der zweiten Ausführungsform berechnet die NC-Vorrichtung 30 einen Korrekturbetrag auf Basis eines Referenzkurvenformsignals. Die NC-Vorrichtung 30 kann eine Rauschkomponente, eine Schwingungskomponente oder andere Komponenten eliminieren, die möglicherweise auftreten können, wenn das Rucksignal berechnet wird, und dann anschließend den Korrekturbetrag berechnen. Die NC-Vorrichtung 30 ermöglicht die Berechnung eines Korrekturbetrags, aus dem unerwünschte Komponenten für die Korrektur eliminiert wurden, so dass es möglich ist, die Position der ersten Welle mit hoher Genauigkeit zu korrigieren, ohne eine weitere Korrektur zur Entfernung solcher unerwünschten Komponenten vornehmen zu müssen. Aufgrund dieser Korrektur weist die NC-Vorrichtung 30 den vorteilhaften Effekt auf, dass die Bearbeitungsqualität der Werkzeugmaschine 1 verbessert werden kann.
  • Dritte Ausführungsform
  • 6 zeigt ein Blockschaltbild zur Veranschaulichung einer Werkzeugmaschine und einer numerischen Steuerung gemäß einer dritten Ausführungsform der vorliegenden Erfindung. Eine NC-Vorrichtung 40 gemäß der dritten Ausführungsform umfasst eine Korrekturfaktoränderungsbestimmungseinheit 41. Bei der dritten Ausführungsform sind Bestandteile, die mit denen der ersten und zweiten Ausführungsform identisch sind, mit den gleichen Bezugszeichen versehen, wobei hauptsächlich Konfigurationen beschrieben werden, die sich von denen der ersten und zweiten Ausführungsform unterscheiden. Die Korrekturfaktoränderungsbestimmungseinheit 41 ändert den Korrekturfaktor, wenn eine relative Verschiebung während des Betriebs der Werkzeugmaschine 1 einen vorab festgelegten Schwellenwert überschreitet.
  • Die Sensoreinheit 17 gibt ein Relativverschiebungssignal, das das Ergebnis einer Messung der relativen Verschiebung angibt, an die Korrekturfaktorkalkulationseinheit 20 und die Korrekturfaktoränderungsbestimmungseinheit 41 aus. Die Korrekturfaktorkalkulationseinheit 20 gibt den berechneten Korrekturfaktor an die Korrekturfaktoränderungsbestimmungseinheit 41 aus.
  • Der Korrekturfaktoränderungsbestimmungseinheit 41 berechnet einen Absolutwert der relativen Verschiebung auf Basis des eingegebenen Relativverschiebungssignals. Der Korrekturfaktoränderungsbestimmungseinheit 41 bestimmt, ob der berechnete Absolutwert den vorab festgelegten Schwellenwert überschreitet oder nicht. Eine Beziehung zwischen dem Ruck und dem Korrekturbetrag, um den eine relative Verschiebung korrigiert werden kann, wird durch einen Test oder durch Simulation ermittelt, so dass der Schwellenwert auf Basis der ermittelten Beziehung festgelegt werden kann.
  • Die Korrekturbetragberechnungseinheit 14 speichert einen Wert des Korrekturfaktors, der von der Korrekturfaktoränderungsbestimmungseinheit 41 erhalten wurde, und berechnet einen Korrekturbetrag auf Basis des gespeicherten Wertes des Korrekturfaktors. Wenn der von der Korrekturfaktoränderungsbestimmungseinheit 41 berechnete Absolutwert den Schwellenwert nicht überschreitet, gibt die Korrekturfaktoränderungsbestimmungseinheit 41 den Korrekturfaktor nicht an die Korrekturbetragberechnungseinheit 14 aus. Die Korrekturbetragberechnungseinheit 14 setzt die Berechnung eines Korrekturbetrags auf Basis des gespeicherten Korrekturfaktors fort.
  • Überschreitet dagegen der von der Korrekturfaktoränderungsbestimmungseinheit 41 berechnete Absolutwert den Schwellenwert, gibt die Korrekturfaktoränderungsbestimmungseinheit 41 den von der Korrekturfaktorkalkulationseinheit 20 erhaltenen Korrekturfaktor an die Korrekturbetragberechnungseinheit 14 aus. Die Korrekturbetragberechnungseinheit 14 ersetzt den Wert des Korrekturfaktors durch einen von der Korrekturfaktoränderungsbestimmungseinheit 41 erhaltenen Wert. Aufgrund dieses Vorgangs ändert die Korrekturfaktoränderungsbestimmungseinheit 41 den Korrekturfaktor. Die NC-Vorrichtung 40 kann den Korrekturfaktor während des Betriebs der Werkzeugmaschine 1 adaptiv ändern. Wenn sich die Charakteristika der Werkzeugmaschine 1 aufgrund einer zeitlichen Veränderung der Werkzeugmaschine 1 ändern, kann die NC-Vorrichtung 40 den ersten Positionsbefehl unter Verwendung des an die Charakteristika der Werkzeugmaschine 1 angepassten Korrekturbetrags korrigieren.
  • Es wird darauf hingewiesen, dass die Korrekturfaktorkalkulationseinheit 20 eine Korrekturfaktor berechnen kann, indem sie einen Wert, der auf Basis des Rucksignalmaximalwerts und des Relativverschiebungsmaximalwerts erhalten wird, zu einem vorab festgelegten Referenzwert addiert. Der Referenzwert ist als Wert definiert, der als Referenz für den Korrekturfaktor verwendet wird. Auch in diesem Fall kann die Korrekturfaktorkalkulationseinheit 20 einen Korrekturfaktor in Übereinstimmung mit dem Rucksignalmaximalwert und dem Relativverschiebungsmaximalwert berechnen.
  • Es wird darauf hingewiesen, dass die Korrekturfaktorkalkulationseinheit 20 einen Korrekturfaktor berechnen kann, indem sie eine vorab festgelegte Konstante zu einem vorab festgelegten Referenzwert addiert oder von diesem subtrahiert. Die Korrekturfaktorkalkulationseinheit 20 bestimmt, dass die Konstante entweder addiert oder subtrahiert wird, basierend darauf, ob ein auf Basis des Rucksignalmaximalwerts und des Relativverschiebungsmaximalwerts erhaltener Wert ein positiver oder ein negativer Wert ist. Auch in diesem Fall kann die Korrekturfaktorkalkulationseinheit 20 einen Korrekturfaktor in Übereinstimmung mit dem Rucksignalmaximalwert und dem Relativverschiebungsmaximalwert berechnen.
  • Es wird darauf hingewiesen, dass die Korrekturfaktorkalkulationseinheit 20 einen Korrekturfaktor durch Erhöhen oder Verringern des vorab festgelegten Referenzwertes mit einer vorab festgelegten Rate berechnen kann. Die Korrekturfaktorkalkulationseinheit 20 bestimmt, den Referenzwert mit der oben genannten Rate entweder zu erhöhen oder den Referenzwert mit der oben genannten Rate zu verringern, je nachdem, ob ein Wert, der auf Basis des Rucksignalmaximalwerts und des Relativverschiebungsmaximalwerts erhalten wird, ein positiver oder ein negativer Wert ist. Auch in diesem Fall kann die Korrekturfaktorkalkulationseinheit 20 einen Korrekturfaktor entsprechend dem Rucksignalmaximalwert und dem Relativverschiebungsmaximalwert berechnen. Der Korrekturfaktor wird von der Korrekturfaktorkalkulationseinheit 20 berechnet, der Korrekturfaktor kann jedoch auch von der Korrekturbetragberechnungseinheit 14 berechnet werden.
  • Gemäß der dritten Ausführungsform kann die NC-Vorrichtung 40 einen Korrekturfaktor adaptiv ändern, wenn eine relative Verschiebung während des Betriebs der Werkzeugmaschine 1 den Schwellenwert überschreitet. Dementsprechend weist die NC-Vorrichtung 40 den vorteilhaften Effekt auf, dass die Bearbeitungsqualität der Werkzeugmaschine 1 verbessert werden kann.
  • Vierte Ausführungsform
  • 7 zeigt ein Blockschaltbild zur Veranschaulichung einer Werkzeugmaschine und einer numerischen Steuerung gemäß einer vierten Ausführungsform der vorliegenden Erfindung. Die NC-Vorrichtung 50 gemäß der vierten Ausführungsform ist mit einer Korrekturfaktorkalkulationseinheit 51 ausgestattet, die eine Maschinenlernvorrichtung 52 und eine Entscheidungseinheit 53 umfasst. Bei der vierten Ausführungsform sind Elemente, die mit denen der ersten bis dritten Ausführungsform identisch sind, mit gleichen Bezugszeichen versehen, wobei hauptsächlich Konfigurationen beschrieben werden, die sich von denen der ersten bis dritten Ausführungsform unterscheiden. Die Maschinenlernvorrichtung 52 erlernt einen Korrekturfaktor. Die Entscheidungseinheit 53 entscheidet über einen Korrekturfaktor auf Basis eines Ergebnisses des von der Maschinenlernvorrichtung 52 durchgeführten Lernens.
  • 8 zeigt ein Blockschaltbild zur Veranschaulichung der funktionellen Konfiguration einer Maschinenlernvorrichtung, die in der in 7 dargestellten numerischen Steuerung enthalten ist. Die Maschinenlernvorrichtung 52 umfasst eine Zustandsbeobachtungseinheit 54 und eine Lerneinheit 55. Die Ruckberechnungseinheit 13 gibt ein Rucksignal an die Maschinenlernvorrichtung 52 aus. Die Sensoreinheit 17 gibt ein Relativverschiebungssignal an die Maschinenlernvorrichtung 52 aus.
  • Die Zustandsbeobachtungseinheit 54 beobachtet als Zustandsvariablen einen Ruck, der durch Eingabe eines Rucksignals bezogen wird, und eine relative Verschiebung, die durch Eingabe eines Relativverschiebungssignals bezogen wird. Die Zustandsbeobachtungseinheit 54 beobachtet demnach einen Ruck, bei dem es sich um die Rate der Änderung der Beschleunigung beim Antrieb der zweiten Welle handelt, und eine relative Verschiebung zwischen dem Werkstück 3 und dem Werkzeug 5 als Zustandsvariable. Die Lerneinheit 55 lernt eine Korrekturbedingung in Übereinstimmung mit einem Trainingsdatensatz, der auf Basis der Zustandsvariablen erstellt wurde. Die Korrekturbedingung ist ein mit dem Ruck zu multiplizierender Korrekturfaktor. Die Korrekturbetragberechnungseinheit 14 berechnet einen Korrekturbetrag für den ersten Positionsbefehl durch Multiplikation des Rucks mit dem durch das Lernen der Lerneinheit 55 erhaltenen Korrekturfaktor.
  • Die Lerneinheit 55 kann jede Art von Lernalgorithmus verwenden. Als Beispiel für einen Lernalgorithmus wird im Folgenden ein Fall beschrieben, in dem verstärkendes Lernen angewendet wird. Beim verstärkenden Lernen beobachtet ein Aktionssubjekt, d. h. ein Agent in einer bestimmten Umgebung, den aktuellen Zustand und entscheidet, welche Handlung ausgeführt werden soll. Der Agent wählt die Aktion aus und erhält dann von der Umgebung eine Belohnung, um so eine Strategie zu erlernen, die die Belohnung maximiert, die der Agent durch eine Reihe von Aktionen erhalten kann. Q-Learning und TD-Learning sind als typische Methoden für verstärkendes Lernen bekannt. Beim Q-Learning wird beispielsweise eine Aktionswerttabelle, die einem allgemeinen Aktualisierungsausdruck einer Aktionswertfunktion Q(s, a) entspricht, durch den folgenden Ausdruck (1) dargestellt. Die Aktionswertfunktion Q(s, a) repräsentiert einen Aktionswert Q, bei dem es sich um einen Wert einer Aktion handelt, durch den eine Aktion „a“ in einer Umgebung „s“ ausgewählt wird.
  • [Formel 1] Q ( s t ,a t ) Q ( s t ,a t ) + α ( r t+1 + γ max a  Q ( s t + 1 , a t ) Q ( s t , a t ) )
    Figure DE112019006917T5_0001
  • In dem obigen Ausdruck (1) steht „st+1“ für eine Umgebung zu einem Zeitpunkt „t“. „at“ bedeutet eine Aktion zum Zeitpunkt „t“. Die Umgebung wird durch eine Aktion „at“ in „st+1“ geändert. „rt+1“ steht für eine Belohnung, die durch diese Veränderung der Umgebung erzielt wird. „y“ bedeutet eine Diskontierungsrate. „a“ steht für einen Lernkoeffizienten. Wenn Q-Learning durchgeführt wird, bezieht sich der Korrekturfaktor auf die Aktion „at“.
  • Der durch den obigen Ausdruck (1) dargestellte Aktualisierungsausdruck erhöht den Aktionswert Q, wenn der Aktionswert der besten Aktion „a“ zum Zeitpunkt „t+ 1“ größer ist als der Aktionswert Q für die zum Zeitpunkt „t“ durchgeführte Aktion „a“, während er umgekehrt den Aktionswert Q verringert, wenn der Aktionswert der besten Aktion „a“ zum Zeitpunkt „t+1“ kleiner als dieser ist. Anders ausgedrückt wird die Aktionswertfunktion Q(s, a) so aktualisiert, dass sich der Aktionswert Q für die Aktion „a“ zum Zeitpunkt „t“ dem besten Aktionswert zum Zeitpunkt „t+1“ annähert. Durch diese Aktualisierung überträgt sich der beste Aktionswert in einer bestimmten Umgebung sequentiell zurück auf frühere Aktionswerte in vorherigen Umgebungen.
  • Die Lerneinheit 55 umfasst eine Belohnungsberechnungseinheit 56 und eine Funktionsaktualisierungseinheit 57. Die Belohnungsberechnungseinheit 56 berechnet eine Belohnung auf Basis einer Zustandsvariablen. Die Belohnungsberechnungseinheit 56 berechnet eine Belohnung „r“ auf Basis eines Relativverschiebungsfehlers. Der Relativverschiebungsfehler ist ein Absolutwert der relativen Verschiebung zum Zeitpunkt der Beschleunigung oder Verzögerung. Wenn beispielsweise der Relativverschiebungsfehler als Ergebnis der Änderung des Korrekturfaktors verringert wird, erhöht die Belohnungsberechnungseinheit 56 die Belohnung „r“. Die Belohnungsberechnungseinheit 56 erhöht die Belohnung „r“, indem sie „1“ als Wert der Belohnung verwendet. Der Wert der Belohnung ist nicht auf „1‟ beschränkt.
  • Wenn der Relativverschiebungsfehler als Folge der Änderung des Korrekturfaktors zunimmt, verringert die Belohnungsberechnungseinheit 56 die Belohnung „r“. Die Belohnungsberechnungseinheit 56 verringert die Belohnung „r“, indem sie „-1“ als Wert der Belohnung verwendet. Der Wert der Belohnung ist nicht auf „-1“ beschränkt.
  • Die Funktionsaktualisierungseinheit 57 aktualisiert eine Funktion zum Bestimmen eines Korrekturfaktors in Übereinstimmung mit der von der Belohnungsberechnungseinheit 56 berechneten Belohnung. Die Funktion kann z. B. durch Aktualisierung der Aktionswerttabelle in Übereinstimmung mit dem Trainingsdatensatz aktualisiert werden. Die Aktionswerttabelle entspricht einem Datensatz, der in Tabellenformat gespeichert ist, wobei eine beliebige Aktion mit ihrem Aktionswert verknüpft ist. Beim Q-Learning wird beispielsweise die durch den obigen Ausdruck (1) dargestellte Aktionswertfunktion Q(st, at) als Funktion zur Berechnung eines Korrekturfaktors verwendet.
  • 9 zeigt ein Flussdiagramm zur Veranschaulichung eines Betriebsablaufs einer Maschinenlernvorrichtung, bei der verstärkendes Lernen eingesetzt wird, gemäß der vierten Ausführungsform. Die Methode des verstärkenden Lernens zum Aktualisieren der Aktionswertfunktion Q(s, a) wird unter Bezugnahme auf das Flussdiagramm von 9 beschrieben.
  • Zunächst spezifiziert die Zustandsbeobachtungseinheit 54 in Schritt S1 den Zeitpunkt des Beginns der Beschleunigung oder den Zeitpunkt des Beginns der Verzögerung aus einem Rucksignal, das von der Ruckberechnungseinheit 13 bezogen wurde. In Schritt S2 bezieht die Zustandsbeobachtungseinheit 54 eine Zustandsvariable zu einer beliebigen Zeit ab dem Zeitpunkt des Endes der Beschleunigung oder dem Zeitpunkt des Endes der Verzögerung. Die Zustandsbeobachtungseinheit 54 beginnt den Bezug einer Zustandsvariablen zum Zeitpunkt des Beginns der Beschleunigung und bezieht die Zustandsvariable vom Zeitpunkt des Endes der Beschleunigung bis zu einem beliebigen Zeitpunkt. Alternativ dazu beginnt die Zustandsbeobachtungseinheit 54 mit dem Bezug einer Zustandsvariablen zum Zeitpunkt des Beginns der Verzögerung und bezieht die Zustandsvariable vom Zeitpunkt des Endes der Verzögerung bis zu einem beliebigen Zeitpunkt. Die Zustandsvariable umfasst ein Rucksignal, das von der Ruckberechnungseinheit 13 bezogen wird, und ein Relativverschiebungssignal, das von der Sensoreinheit 17 bezogen wird.
  • In Schritt S3 berechnet die Belohnungsberechnungseinheit 56 einen Relativverschiebungsfehler. In Schritt S4 berechnet die Belohnungsberechnungseinheit 56 die Belohnung „r“ auf Basis des Relativverschiebungsfehlers. In Schritt S5 aktualisiert die Funktionsaktualisierungseinheit 57 die Aktionswertfunktion Q(s, a) auf Basis der in Schritt S4 berechneten Belohnung „r“. Die Funktionsaktualisierungseinheit 57 aktualisiert die Aktionswertfunktion Q(s, a) in Übereinstimmung mit dem obigen Ausdruck (1).
  • In Schritt S6 bestimmt die Funktionsaktualisierungseinheit 57, ob die Aktionswertfunktion Q(s, a) konvergiert ist oder nicht. Die Funktionsaktualisierungseinheit 57 bestimmt, dass die Aktionswertfunktion Q(s, a) konvergiert ist, falls die Aktionswertfunktion Q(s, a) in Schritt S5 nicht mehr aktualisiert wird.
  • Wenn festgestellt wird, dass die Aktionswertfunktion Q(s, a) noch nicht konvergiert ist (NEIN in Schritt S6), kehrt die Maschinenlernvorrichtung 52 zu Schritt S1 zurück. Wenn festgestellt wird, dass die Aktionswertfunktion Q(s, a) konvergiert ist (JA in Schritt S6), beendet die Lerneinheit 55 den Lernvorgang. Die Maschinenlernvorrichtung 52 beendet anschließend den Ablauf gemäß dem in 9 dargestellten Verfahren. Es ist auch möglich, dass die Maschinenlernvorrichtung 52 ohne Vornahme der Bestimmung von Schritt S6 den Betriebsablauf von Schritt S5 zu Schritt S1 zurückführt, um das Lernen fortzusetzen.
  • Die Entscheidungseinheit 53 wählt einen Korrekturfaktor aus, der die zu erhaltende Belohnung auf Basis eines Ergebnisses des Lernens der Lerneinheit 55, d. h. auf Basis der aktualisierten Aktionswertfunktion Q(s, a), maximieren kann. Die Korrekturbetragberechnungseinheit 14 bezieht den Korrekturfaktor von der Entscheidungseinheit 53, um einen Korrekturbetrag auf Basis des bezogenen Korrekturfaktors zu berechnen. Dadurch kann die NC-Vorrichtung 50 eine unerwünschte relative Verschiebung korrigieren, die durch einen Stoß verursacht wird, der durch eine Beschleunigung oder Verzögerung der zweiten Welle hervorgerufen wird.
  • Bei der vierten Ausführungsform wurde ein Fall beschrieben, bei dem die Lerneinheit 55 maschinelles Lernen unter Verwendung des verstärkenden Lernens durchführt. Die Lerneinheit 55 kann das maschinelle Lernen auch in Übereinstimmung mit anderen allgemein bekannten Methoden durchführen, zum Beispiel einem neuronalen Netzwerk, genetischer Programmierung, funktionaler Logikprogrammierung und einer Support-Vector-Machine.
  • Gemäß der vierten Ausführungsform umfasst die NC-Vorrichtung 50 die Maschinenlernvorrichtung 52, um einen Korrekturfaktor zu erlernen, und kann somit einen Korrekturbetrag unter Verwendung eines Korrekturfaktors berechnen, der durch maschinelles Lernen auf Basis eines Messergebnisses des Rucks und eines Messergebnisses der relativen Verschiebung bestimmt wird. Die NC-Vorrichtung 50 korrigiert den ersten Positionsbefehl auf Basis des Korrekturbetrags wie gerade beschrieben, wodurch die Position der ersten Welle mit höherer Genauigkeit korrigiert werden kann. Durch diese Korrektur weist die NC-Vorrichtung 50 den vorteilhaften Effekt auf, dass die Bearbeitungsqualität der Werkzeugmaschine 1 verbessert werden kann.
  • Als Nächstes wird die Hardwarekonfiguration der NC-Vorrichtungen 10, 30, 40 und 50 gemäß der ersten bis vierten Ausführungsform beschrieben. Die funktionalen Einheiten, die in den NC-Vorrichtungen 10, 30, 40 und 50 enthalten sind, werden unter Verwendung eines Computersystems, wie z. B. eines Personal Computers oder eines Allzweckcomputers, implementiert. 10 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für eine Hardwarekonfiguration einer numerischen Steuerung gemäß der ersten bis vierten Ausführungsform, wenn die Funktionen der numerischen Steuerungen mit Hilfe eines Computersystems implementiert werden.
  • Jede der NC-Vorrichtungen 10, 30, 40 und 50 umfasst eine CPU (Central Processing Unit) 61, um verschiedene Arten der Verarbeitung auszuführen, einen Speicher 62, bei dem es sich um einen eingebauten Speicher handelt, eine Speichervorrichtung 63, um darin verschiedene Arten von Informationen zu speichern, eine Anzeigevorrichtung 64, um verschiedene Arten von Informationen anzuzeigen, und eine Eingabevorrichtung 65, in die verschiedene Arten von Informationen eingegeben werden. Die von den NC-Vorrichtungen 10, 30, 40 und 50 auszuführenden Funktionen werden durch Software, Firmware oder eine Kombination aus Software und Firmware implementiert. Software oder Firmware werden als Programm beschrieben und in der Speichervorrichtung 63 gespeichert.
  • Die CPU 61 liest die in der Speichervorrichtung 63 gespeicherte Software oder Firmware in den Speicher 62 und führt sie aus, wodurch die Funktionen der NC-Vorrichtungen 10, 30, 40 und 50 implementiert werden. Die CPU 61 führt das in der Speichervorrichtung 63 gespeicherte Programm aus, so dass der Betrieb der NC-Vorrichtungen 10, 30, 40 und 50 ausgeführt wird. Das in der Speichervorrichtung 63 gespeicherte Programm veranlasst einen Computer, die Prozesse auszuführen, die durch die Funktionen der NC-Vorrichtungen 10, 30, 40 und 50 implementiert werden sollen.
  • Der Speicher 62 ist ein nichtflüchtiger oder flüchtiger Halbleiterspeicher, beispielsweise ein RAM (Random Access Memory), ein ROM (Read Only Memory), ein Flash-Speicher, ein EPROM (Erasable Programmable Read Only Memory) oder ein EEPROM (eingetragene Marke) (Electrically Erasable Programmable Read Only Memory). Die Speichervorrichtung 63 ist eine HDD (Hard Disk Drive) oder ein SSD (Solid State Drive). Die Anzeigevorrichtung 64 ist ein Monitor oder ein Anzeigemodul. Die Eingabevorrichtung 65 entspricht einer Eingabevorrichtung wie einer Tastatur, einer Maus oder einem Touchpanel.
  • Die in den obigen Ausführungsformen beschriebenen Konfigurationen sind nur Beispiele für den Inhalt der vorliegenden Erfindung. Die Konfigurationen können mit anderen allgemein bekannten Techniken kombiniert werden, und ein Teil jeder der Konfigurationen kann weggelassen oder modifiziert werden, ohne vom Umfang der vorliegenden Erfindung abzuweichen.
  • Bezugszeichenliste
  • 1
    Werkzeugmaschine;
    2
    Unterbau;
    3
    Werkstück;
    4
    Tisch;
    5
    Werkzeug;
    6
    Kopf;
    7
    Ständer;
    8
    Antriebseinheit für die erste Welle;
    9
    Antriebseinheit für die zweite Welle;
    10, 30, 40, 50
    NC-Vorrichtung;
    11
    Erstpositionsbefehl-Erzeugungseinheit;
    12
    Zweitpositionsbefehl-Erzeugungseinheit;
    13
    Ruckberechnungseinheit;
    14
    Korrekturbetragberechnungseinheit;
    15
    Addierer;
    16X
    X-Achsenwelle;
    16Y
    Y-Achsenwelle;
    16Z
    Z-Achsenwelle;
    17
    Sensoreinheit;
    20, 51
    Korrekturfaktorkalkulationseinheit;
    21
    Korrekturfaktorberechnungseinheit;
    22
    Maximalwertextraktionseinheit;
    31
    Geschwindigkeitsberechnungseinheit;
    32
    Triggerberechnungseinheit;
    33
    Referenzkurvenformausgabeeinheit;
    41
    Korrekturfaktoränderungsbestimmungseinheit;
    52
    Maschinenlernvorrichtung;
    53
    Entscheidungseinheit;
    54
    Zustandsbeobachtungseinheit;
    55
    Lerneinheit;
    56
    Belohnungsberechnungseinheit;
    57
    Funktionsaktualisierungseinheit;
    61
    CPU;
    62
    Speicher;
    63
    Speichervorrichtung;
    64
    Anzeigevorrichtung;
    65
    Eingabevorrichtung.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 2016051398 [0005]

Claims (9)

  1. Numerische Steuerung für eine Werkzeugmaschine, die ein Werkstück und ein Werkzeug relativ zueinander bewegt, indem sie mehrere Wellen einschließlich einer ersten Welle und einer zweiten Welle antreibt, wobei die numerische Steuerung jede der Wellen ansteuert und wobei die numerische Steuerung aufweist: eine Erstpositionsbefehl-Erzeugungseinheit zum Erzeugen eines ersten Positionsbefehls zum Steuern der ersten Welle; eine Zweitpositionsbefehl-Erzeugungseinheit zum Erzeugen eines zweiten Positionsbefehls zum Steuern der zweiten Welle; und eine Korrekturbetragberechnungseinheit zum Berechnen eines Korrekturbetrags für den ersten Positionsbefehl auf Basis eines Rucks, um eine Vibration der ersten Welle auszugleichen, die durch eine achsenübergreifende Störung verursacht wird, die aufgrund des Antriebs der zweiten Welle auftritt, wobei es sich bei dem Ruck um eine Änderungsrate der Beschleunigung beim Antrieb der zweiten Welle handelt.
  2. Numerische Steuerung nach Anspruch 1, die eine Ruckberechnungseinheit zur Berechnung des Rucks auf Basis des zweiten Positionsbefehls oder eines Feedbacks über die zweite Welle aufweist.
  3. Numerische Steuerung nach Anspruch 1 oder 2, wobei die Korrekturbetragberechnungseinheit den Korrekturbetrag durch Multiplikation des Rucks mit einem Korrekturfaktor berechnet.
  4. Numerische Steuerung nach Anspruch 3, die eine Korrekturfaktorkalkulationseinheit aufweist, um den Korrekturfaktor zu berechnen, wobei die Korrekturfaktorkalkulationseinheit auf Basis der Kurvenform eines Relativverschiebungssignals, das eine durch die achsenübergreifende Störung verursachte relative Verschiebung zwischen dem Werkstück und dem Werkzeug angibt, einen Relativverschiebungssignalmaximalwert extrahiert, bei dem es sich um einen Maximalwert der Kurvenform des Relativverschiebungssignals handelt, und die Korrekturfaktorkalkulationseinheit auf Basis der Kurvenform eines Rucksignals, das den Ruck angibt, einen Rucksignalmaximalwert extrahiert, bei dem es sich um einen Maximalwert der Kurvenform des Rucksignals handelt, um den Korrekturfaktor zu berechnen, bei dem es sich um das Verhältnis des Rucksignalmaximalwerts und des Relativverschiebungssignalmaximalwerts handelt.
  5. Numerische Steuerung nach Anspruch 4, die eine Korrekturfaktoränderungsbestimmungseinheit aufweist, um den Korrekturfaktor zu ändern, wenn die relative Verschiebung einen vorab festgelegten Schwellenwert überschreitet.
  6. Numerische Steuerung nach Anspruch 3, die eine Korrekturfaktorkalkulationseinheit aufweist, um den Korrekturfaktor zu berechnen, wobei die Korrekturfaktorkalkulationseinheit umfasst: eine Maschinenlernvorrichtung zum Erlernen des Korrekturfaktors; und eine Entscheidungseinheit, um auf Basis eines Ergebnisses des Lernens der Maschinenlernvorrichtung eine Entscheidung über den Korrekturfaktor zu treffen, und die Maschinenlernvorrichtung umfasst: eine Zustandsbeobachtungseinheit, um eine relative Verschiebung zwischen dem Werkstück und dem Werkzeug, die durch die achsenübergreifende Störung und den Ruck verursacht wird, als Zustandsvariablen zu beobachten; und eine Lerneinheit zum Erlernen des Korrekturfaktors in Übereinstimmung mit einem auf Basis der Zustandsvariablen erstellten Trainingsdatensatz.
  7. Numerische Steuerung nach Anspruch 1, die eine Referenzkurvenformsignalerzeugungseinheit aufweist, um ein Referenzkurvenformsignal zu erzeugen, das durch Simulation eines Rucksignals erhalten wird, das den Ruck angibt, wobei die Korrekturbetragberechnungseinheit den Korrekturbetrag auf Basis des Referenzkurvenformsignals berechnet, das zum Zeitpunkt des Beginns der Beschleunigung und/oder zum Zeitpunkt des Beginns der Verzögerung beim Antrieb der zweiten Welle ausgegeben wird.
  8. Maschinenlernvorrichtung für eine Werkzeugmaschine, die ein Werkstück und ein Werkzeug relativ zueinander bewegt, indem sie mehrere Wellen einschließlich einer ersten Welle und einer zweiten Welle antreibt, wobei die erste Welle durch einen ersten Positionsbefehl gesteuert wird und die zweite Welle durch einen zweiten Positionsbefehl gesteuert wird und wobei die Maschinenlernvorrichtung eine Korrekturbedingung des ersten Positionsbefehls erlernt, um eine Vibration der ersten Welle auszugleichen, die durch eine achsenübergreifende Störung verursacht wird, die aufgrund des Antriebs der zweiten Welle auftritt, wobei die Maschinenlernvorrichtung aufweist: eine Zustandsbeobachtungseinheit zum Beobachten eines Rucks und einer relativen Verschiebung zwischen dem Werkstück und dem Werkzeug als Zustandsvariablen, wobei der Ruck eine Änderungsrate der Beschleunigung beim Antrieb der zweiten Welle ist; und eine Lerneinheit zum Erlernen der Korrekturbedingung in Übereinstimmung mit einem auf Basis der Zustandsvariablen erstellten Trainingsdatensatz.
  9. Maschinenlernvorrichtung nach Anspruch 8, wobei es sich bei der Korrekturbedingung um einen Korrekturfaktor handelt, der mit dem Ruck zu multiplizieren ist, und ein Korrekturbetrag für den ersten Positionsbefehl berechnet wird, indem der Ruck mit dem durch Lernen der Lerneinheit erhaltenen Korrekturfaktor multipliziert wird.
DE112019006917.9T 2019-03-28 2019-03-28 Numerische Steuerung und Maschinenlernvorrichtung Active DE112019006917B4 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/013681 WO2020194685A1 (ja) 2019-03-28 2019-03-28 数値制御装置および機械学習装置

Publications (2)

Publication Number Publication Date
DE112019006917T5 true DE112019006917T5 (de) 2021-11-11
DE112019006917B4 DE112019006917B4 (de) 2023-07-06

Family

ID=69568230

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112019006917.9T Active DE112019006917B4 (de) 2019-03-28 2019-03-28 Numerische Steuerung und Maschinenlernvorrichtung

Country Status (4)

Country Link
JP (1) JP6647477B1 (de)
CN (1) CN113614661B (de)
DE (1) DE112019006917B4 (de)
WO (1) WO2020194685A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016051398A (ja) 2014-09-01 2016-04-11 ファナック株式会社 軸間干渉を補正するモータ制御装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4516053B2 (ja) * 2006-07-03 2010-08-04 三菱電機株式会社 制御装置
JP6366563B2 (ja) * 2014-12-19 2018-08-01 オークマ株式会社 工作機械における送り軸の位置制御装置
JP6140225B2 (ja) * 2015-07-31 2017-05-31 ファナック株式会社 磁束制御器を有するモータ制御装置、ならびに機械学習装置およびその方法
JP6193961B2 (ja) * 2015-11-30 2017-09-06 ファナック株式会社 機械の送り軸の送りの滑らかさを最適化する機械学習装置および方法ならびに該機械学習装置を備えたモータ制御装置
JP6542833B2 (ja) * 2017-04-28 2019-07-10 ファナック株式会社 制御装置及び機械学習装置
JP6542839B2 (ja) * 2017-06-07 2019-07-10 ファナック株式会社 制御装置及び機械学習装置
US10663945B2 (en) * 2018-07-05 2020-05-26 Mitsubishi Electric Corporation Numerical control device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016051398A (ja) 2014-09-01 2016-04-11 ファナック株式会社 軸間干渉を補正するモータ制御装置

Also Published As

Publication number Publication date
CN113614661A (zh) 2021-11-05
CN113614661B (zh) 2022-12-06
DE112019006917B4 (de) 2023-07-06
JPWO2020194685A1 (ja) 2021-04-08
JP6647477B1 (ja) 2020-02-14
WO2020194685A1 (ja) 2020-10-01

Similar Documents

Publication Publication Date Title
DE102018203702B4 (de) Vorrichtung für maschinelles Lernen, Servo-Regelungsvorrichtung, Servo-Regelungssystem und Verfahren für maschinelles Lernen
DE102018001676B4 (de) Roboter zur Lernsteuerung im Hinblick auf einen Betrieb einer Fertigungsstraße und Verfahren zum Steuern desselben
DE102016008994B4 (de) Werkzeugmaschine, simulationsvorrichtung und maschineneinlerngerät
DE102018205015B4 (de) Einstellvorrichtung und Einstellverfahren
DE102016220097B4 (de) Bestimmung einer Position eines beweglichen Teils eines Koordinatenmessgerätes
DE102018211148A1 (de) Maschinenlernvorrichtung, servomotor- regeleinrichtung, servomotor-regelsystem und maschinenlernverfahren
DE102018209094B4 (de) Motorsteuereinheit
EP1803969B1 (de) Schwingungsisolationssystem
DE102018200794A1 (de) Aktionsinformationslernvorrichtung, aktionsinformationsoptimierungssystem und aktionsinformationslernprogramm
DE102014118741B4 (de) Motorsteuervorrichtung
DE112011101443T5 (de) Servoregler
DE112018000122T5 (de) Maschinelles-Lernen-Vorrichtung, Korrekturparameter-Anpassungssystem und Maschinelles-Lernen-Verfahren
DE102018209951A1 (de) Maschinenlerngerät, servosteuergerät, servosteuersystem und maschinenlernverfahren
DE112018000172B4 (de) Numerische Steuervorrichtung
DE102017000063A1 (de) Robotereinrichtung mit Lernfunktion
DE102018209093B4 (de) Motorsteuereinheit
DE102019007563A1 (de) Numerische Steuervorrichtung
DE112012004848B9 (de) Motorregelungsvorrichtung
DE102018129528A1 (de) Schwingungsunterdrückungsvorrichtung
DE102019209104A1 (de) Ausgabevorrichtung, Steuervorrichtung und Ausgabeverfahren für einen Bewertungsfunktionswert
DE102018214272A1 (de) Robotersystem
DE102020200635A1 (de) Maschinenlernsystem, Steuervorrichtung und Maschinenlernverfahren für das Optimieren von Filterkoeffizienten
DE102019212814A1 (de) Vorrichtung für maschinelles Lernen, Steuersystem und Verfahren für maschinelles Lernen
DE102009038155A1 (de) Servomotorsteuergerät
DE102020122373A1 (de) Vorrichtung für maschinelles Lernen, Servosteuervorrichtung, Servosteuersystem und Verfahren für maschinelles Lernen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final