DE112020000656T5 - Machining program converting apparatus, numerical control, machining program converting method and machine learning apparatus - Google Patents

Machining program converting apparatus, numerical control, machining program converting method and machine learning apparatus Download PDF

Info

Publication number
DE112020000656T5
DE112020000656T5 DE112020000656.5T DE112020000656T DE112020000656T5 DE 112020000656 T5 DE112020000656 T5 DE 112020000656T5 DE 112020000656 T DE112020000656 T DE 112020000656T DE 112020000656 T5 DE112020000656 T5 DE 112020000656T5
Authority
DE
Germany
Prior art keywords
tool
machining
path
point
distance
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.)
Pending
Application number
DE112020000656.5T
Other languages
German (de)
Inventor
Hiroki Kaneko
Kenji Iriguchi
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 DE112020000656T5 publication Critical patent/DE112020000656T5/en
Pending legal-status Critical Current

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/41Numerical 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 interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion

Abstract

Eine Bearbeitungsprogrammumwandlungsvorrichtung (100) umfasst: eine Kurvenpfaderzeugungseinheit (104), die einen Kurvenpfad (TP) zwischen einer Mehrzahl von Befehlspunkten (P) auf einem Werkzeugpfad erzeugt; eine Eingabeeinheit für zulässige Abmessungstoleranzen (107), wo Werte eingegeben werden, die einen zulässigen Bereich für einen Abstand (L) zwischen einem Evaluierungspunkt (Q) auf dem Kurvenpfad (TP) und einem Referenzpunkt (C) definieren; eine Kurvenpfadevaluierungseinheit (108), die bestimmt, ob der Abstand (L) innerhalb des zulässigen Bereichs ist oder nicht; eine Werkzeugpfadänderungseinheit (109), die, wenn der Abstand (L) außerhalb des zulässigen Bereichs liegt, nur den Evaluierungspunkt, der von dem zulässigen Bereich abweicht, verschiebt, bis der Abstand (L) innerhalb des zulässigen Bereichs liegt, und den Evaluierungspunkt, der verschoben ist, als einen neuen Befehlspunkt (R) beim Ändern des Werkzeugpfads setzt; und eine Ausgabeeinheit für das umgewandelte Bearbeitungsprogramm (110), welche den geänderten Werkzeugpfad in ein Programm umwandelt, das an eine externe Vorrichtung auszugeben ist.A machining program conversion apparatus (100) comprises: a curved path generation unit (104) that generates a curved path (TP) between a plurality of command points (P) on a tool path; an input unit for allowable dimensional tolerances (107), where values are inputted which define an allowable range for a distance (L) between an evaluation point (Q) on the curved path (TP) and a reference point (C); a curved path evaluation unit (108) that determines whether or not the distance (L) is within the allowable range; a tool path changing unit (109) that, when the distance (L) is out of the allowable range, shifts only the evaluation point deviating from the allowable range until the distance (L) is within the allowable range, and the evaluation point that is moved than sets a new command point (R) when changing the toolpath; and an output unit for the converted machining program (110) which converts the changed tool path into a program to be output to an external device.

Description

BereichArea

Die vorliegende Offenbarung betrifft eine Bearbeitungsprogrammumwandlungsvorrichtung, welche ein Bearbeitungsprogramm zur numerischen Steuerung umwandelt, und sie betrifft auch eine numerische Steuerung, ein Bearbeitungsprogrammumwandlungsverfahren und eine Vorrichtung für maschinelles Lernen.The present disclosure relates to a machining program converting device that converts a machining program for numerical control, and it also relates to a numerical controller, a machining program converting method, and a machine learning device.

Hintergrundbackground

Zur Bearbeitung eines Werkstücks mit einer numerischen Steuerung wird ein Bearbeitungsprogramm zur numerischen Steuerung (nachfolgend einfach als „Bearbeitungsprogramm“ bezeichnet) verwendet. Das Bearbeitungsprogramm umfasst eine Beschreibung von Bewegungsbefehlen, um ein Werkstück oder ein Werkzeug, das an einem Bearbeitungswerkzeug angebracht ist, das durch die numerische Steuerung gesteuert wird (nachfolgend einfach als „numerisch gesteuertes Bearbeitungswerkzeug“ bezeichnet) entlang einem voreingestellten Pfad zu bewegen. Das Bearbeitungsprogramm wird beispielsweise durch ein kommerziell erhältliches System zur computergestützten Gestaltung (CAD) bzw. zur computergestützten Herstellung (CAM) erzeugt, und es wird in einem vorbestimmten Zeichenkettenformat, wie etwa G-Code oder Makro-Statements beschrieben.In order to machine a workpiece with a numerical control, a numerical control machining program (hereinafter referred to simply as “machining program”) is used. The machining program includes a description of movement commands for moving a workpiece or a tool attached to a machining tool controlled by the numerical controller (hereinafter referred to simply as “numerically controlled machining tool”) along a preset path. The machining program is generated, for example, by a commercially available system for computer-aided design (CAD) or for computer-aided production (CAM), and it is described in a predetermined character string format, such as G code or macro statements.

Das Bearbeiten eines Werkstücks in eine Gestalt, die eine Freiformfläche aufweist, umfasst herkömmlicherweise das Erzeugen eines idealen Pfads, entlang dem ein Werkzeug bewegt wird, virtuell mit dem CAD/CAM-System, während es in Kontakt mit einer zu bearbeitenden gekrümmten Fläche (nachfolgend einfach als „Bearbeitungskurvenfläche“ bezeichnet), steht, in Form einer Aufeinanderfolge von Befehlspunkten unter Verwendung des Bearbeitungsprogramms. Das Bearbeiten umfasst ferner das Erzeugen eines angenäherten Pfads mit kleinen Liniensegmenten, jeweils eines zwischen jedem Befehlspunkt, und das darauffolgende Bewegen des Werkzeugs entlang dem Werkzeugpfad unter Verwendung des numerisch gesteuerten Bearbeitungswerkzeugs.Machining a workpiece into a shape that has a freeform surface conventionally involves creating, virtually with the CAD / CAM system, an ideal path along which a tool is moved while it is in contact with a curved surface to be machined (hereinafter simply referred to as "machining curve surface"), is in the form of a sequence of command points using the machining program. The editing further includes creating an approximate path with small line segments, one between each command point, and then moving the tool along the tool path using the numerically controlled editing tool.

Der Werkzeugpfad, der von dem CAD/CAM-System ausgegeben wird, wird in den Bearbeitungsprogramm als die G-codierten Bewegungsbefehle beschrieben, die durch die numerische Steuerung interpretiert werden können. Das Bearbeitungsprogramm wird in die numerische Steuerung des numerisch gesteuerten Bearbeitungswerkzeugs eingegeben. Die numerische Steuerung liest und interpretiert das Bearbeitungsprogramm und erzeugt aus den Bewegungsbefehlen Interpolationsdaten nach Durchführung von Bewegungspfadinterpolation während einer jeden Interpolationsdauer. Unter Verwendung der erzeugten Interpolationsdaten steuert die numerische Steuerung Achsen des numerisch gesteuerten Bearbeitungswerkzeugs, um das Werkzeug zu gewünschten Positionen zu bewegen und das Werkstück somit zu bearbeiten.The tool path that is output by the CAD / CAM system is described in the machining program as the G-coded movement commands that can be interpreted by the numerical control. The machining program is entered into the numerical control of the numerically controlled machining tool. The numerical control reads and interprets the machining program and generates interpolation data from the movement commands after carrying out movement path interpolation during each interpolation period. Using the generated interpolation data, the numerical controller controls axes of the numerically controlled machining tool to move the tool to desired positions and thereby machine the workpiece.

Wenn der durch die vorangehend beschriebene Prozedur erzeugte Werkzeugpfad bei der Bearbeitung verwendet wird, wird die Bearbeitung entlang linearer Interpolationswege durchgeführt, die durch die kleinen Liniensegmente repräsentiert sind, was zu einer Abnahme der Bearbeitungsqualität führt. Wenn ein solcher Fall auftritt, wird aus dem Werkzeugpfad ein gefitteter bzw. angepasster Kurvenpfad erzeugt, der nachfolgend Interpolationen zur Bearbeitung durchläuft. Auf diese Weise kann ein glattes Bearbeitungsergebnis erwartet werden.When the tool path generated by the procedure described above is used in machining, machining is performed along linear interpolation paths represented by the small line segments, resulting in a decrease in machining quality. If such a case occurs, a fitted or adapted curve path is generated from the tool path, which subsequently runs through interpolations for processing. In this way, a smooth machining result can be expected.

Beispielsweise umfasst das in Patentliteratur 1 offenbarte Werkzeugpfaderzeugungsverfahren eine Vielzahl von Zielpunkten mit gleichen Abständen auf einem Werkzeugpfad, Berechnen einer gefitteten Kurve basierend auf der Vielzahl von Zielpunkten und Erzeugen eines Werkzeugpfads entlang der gefitteten Kurve.For example, the tool path generation method disclosed in Patent Literature 1 includes a plurality of equally spaced target points on a tool path, calculating a fitted curve based on the plurality of target points, and generating a tool path along the fitted curve.

ZitierungslisteList of citations

PatentliteraturPatent literature

Patentliteratur 1: offengelegte japanische Patentanmeldung Nr. 2011-96077 Patent Literature 1: laid-open Japanese Patent Application No. 2011-96077

Überblickoverview

Technisches ProblemTechnical problem

Bei dem Werkzeugpfaderzeugungsverfahren und einer Werkzeugpfaderzeugungsvorrichtung, die in Patentliteratur 1 beschrieben sind, stellt, da der gefittete Kurvenpfad aus dem Werkzeugpfad erzeugt wird, der durch kleine Liniensegmente gebildet ist, dies nicht sicher, dass der erzeugte Kurvenpfad an eine gewünschte Bearbeitungskurvenfläche angefittet ist, was, problematisch zu einem Bearbeitungsergebnis führt, das hinsichtlich der Gestalt von der gewünschten Bearbeitungskurvenfläche sehr verschieden ist. Da bei unerwünschter Bearbeitungsgenauigkeit zusätzliche Bearbeitung notwendig ist, findet ein Prozess statt, in dem zu dem CAD/CAM-System zurückgekehrt wird, um erneut einen Werkzeugpfad zu erzeugen und ein Bearbeitungsprogramm erneut auszugeben, was zu einer Abnahme der Arbeitseffizienz eines Arbeiters führt.In the tool path generating method and a tool path generating device described in Patent Literature 1, since the fitted curve path is generated from the tool path formed by small line segments, it does not ensure that the generated curve path is fitted to a desired machining curve surface, which, problematically leads to a machining result which is very different in terms of shape from the desired machining curve surface. Since additional machining is necessary when machining accuracy is undesirable, a process takes place in which the CAD / CAM system is returned to generate a tool path again and a machining program is reissued, which leads to a decrease in the work efficiency of a worker.

Die vorliegende Offenbarung wurde getätigt, um die obigen Probleme zu lösen, und es ist ein Ziel der vorliegenden Offenbarung, eine Bearbeitungsprogrammumwandlungsvorrichtung und eine numerische Steuerung bereitzustellen, welche eine verbesserte Bearbeitungsgenauigkeit für ein Ergebnis der Bearbeitung eines Werkstücks ermöglichen.The present disclosure has been made in order to solve the above problems, and it is an object of the present disclosure to provide a machining program conversion device and a to provide numerical controls which enable improved machining accuracy for a result of machining a workpiece.

Lösung des Problemsthe solution of the problem

Um das obige Problem zu lösen und das Ziel zu erreichen, umfasst eine Bearbeitungsprogrammumwandlungsvorrichtung gemäß der vorliegenden Offenbarung: eine Kurvenpfaderzeugungseinheit, um einen Kurvenpfad zwischen einer Mehrzahl von Befehlspunkten basierend auf einem Werkzeugpfad zu erzeugen, der durch ein Bearbeitungsprogramm erzeugt ist, in dem Bewegungsbefehle für ein Werkzeug beschrieben sind, wobei die Mehrzahl von Befehlspunkten auf dem Werkzeugpfad in Übereinstimmung mit den Bewegungsbefehlen vorgesehen ist; eine Eingabeeinheit für zulässige Abmessungstoleranzen, wo Werte eingegeben werden, die einen zulässigen Bereich für einen Abstand L zwischen einem Evaluierungspunkt auf dem Kurvenpfad und einem Referenzpunkt definieren, wobei der Evaluierungspunkt zur Bestimmung bereitgestellt wird, ob sich ein Werkzeug entlang einer Bearbeitungskurvenfläche bewegt oder nicht, die einer Endfläche des Werkstücks entspricht, wenn dem Kurvenpfad gefolgt wird, wobei der Referenzpunkt ein Punkt des Kontakts zwischen dem Werkzeug und der Bearbeitungskurvenfläche ist; eine Kurvenpfadevaluierungseinheit, um zu bestimmen, ob der Abstand L zwischen den Werten liegt oder nicht, die den zulässigen Bereich definieren und in die Eingabeeinheit für zulässige Abmessungstoleranzen eingegeben werden; und eine Werkzeugpfadänderungseinheit, um, wenn der Abstand L außerhalb des zulässigen Bereichs liegt, den Evaluationspunkt, der von dem zulässigen Bereich abweicht, zu verschieben, bis der Abstand L innerhalb des zulässigen Bereichs liegt, und um einen Evaluationspunkt, der verlagert ist, als einen neuen Befehlspunkt beim Ändern des Werkzeugpfads zu setzen.In order to solve the above problem and achieve the object, a machining program conversion apparatus according to the present disclosure includes: a curved path generation unit for generating a curved path between a plurality of command points based on a tool path generated by a machining program in which movement commands for a Tool are described, the plurality of command points being provided on the tool path in accordance with the move commands; an input unit for allowable dimensional tolerances, where values are entered which define an allowable range for a distance L between an evaluation point on the curve path and a reference point, the evaluation point being provided for determining whether or not a tool is moving along a machining curve surface, the corresponds to an end surface of the workpiece when following the curve path, the reference point being a point of contact between the tool and the machining curve surface; a curved path evaluation unit for determining whether or not the distance L is between the values defining the allowable range and inputted to the allowable dimensional tolerance input unit; and a tool path changing unit for, when the distance L is out of the allowable range, shifting the evaluation point deviating from the allowable range until the distance L is within the allowable range and an evaluation point that is displaced as one to set a new command point when changing the tool path.

Ferner umfasst eine numerische Steuerung gemäß der vorliegenden Ausführungsform: eine Kurvenpfaderzeugungseinheit, um einen Kurvenpfad zwischen einer Mehrzahl von Befehlspunkten basierend auf einem Werkzeugpfad zu erzeugen, der durch ein Bearbeitungsprogramm erzeugt ist, in dem Bewegungsbefehle für ein Werkzeug beschrieben sind, wobei die Mehrzahl von Befehlspunkten auf dem Werkzeugpfad in Übereinstimmung mit den Bewegungsbefehlen vorgesehen ist; eine Eingabeeinheit für zulässige Abmessungstoleranzen, wo Werte eingegeben werden, die einen zulässigen Bereich für einen Abstand L zwischen einem Evaluierungspunkt auf dem Kurvenpfad und einem Referenzpunkt definieren, wobei der Evaluierungspunkt zur Bestimmung bereitgestellt wird, ob sich ein Werkzeug entlang einer Bearbeitungskurvenfläche bewegt, die einer Endfläche des Werkstücks entspricht, wenn dem Kurvenpfad gefolgt wird, wobei der Referenzpunkt ein Punkt des Kontakts zwischen dem Werkzeug und der Bearbeitungskurvenfläche ist; eine Kurvenpfadevaluierungseinheit, um zu bestimmen, ob der Abstand L zwischen den Werten liegt oder nicht, die den zulässigen Bereich definieren und in die Eingabeeinheit für zulässige Abmessungstoleranzen eingegeben werden; und eine Werkzeugpfadänderungseinheit, um, wenn der Abstand L außerhalb des zulässigen Bereichs liegt, den Evaluationspunkt, der von dem zulässigen Bereich abweicht, zu verschieben, bis der Abstand L innerhalb des zulässigen Bereichs liegt, und um einen Evaluationspunkt, der verlagert ist, als einen neuen Befehlspunkt beim Ändern des Werkzeugpfads zu setzen.Further, a numerical controller according to the present embodiment comprises: a curved path generating unit for generating a curved path between a plurality of command points based on a tool path generated by a machining program in which movement commands for a tool are described, the plurality of command points being the tool path is provided in accordance with the move commands; an input unit for allowable dimensional tolerances, where values are entered which define an allowable range for a distance L between an evaluation point on the curve path and a reference point, the evaluation point being provided for determining whether a tool is moving along a machining curve surface which is an end surface of the workpiece when following the cam path, the reference point being a point of contact between the tool and the machining cam surface; a curved path evaluation unit for determining whether or not the distance L is between the values defining the allowable range and inputted to the allowable dimensional tolerance input unit; and a tool path changing unit for, when the distance L is out of the allowable range, shifting the evaluation point deviating from the allowable range until the distance L is within the allowable range and an evaluation point that is displaced as one to set a new command point when changing the tool path.

Vorteilhafte Wirkungen der ErfindungAdvantageous Effects of the Invention

Die Bearbeitungsprogrammumwandlungsvorrichtung gemäß der vorliegenden Offenbarung ermöglicht eine verbesserte Bearbeitungsgenauigkeit bei einem Ergebnis der Bearbeitung des Werkstücks durch Ändern des Werkzeugpfads so, dass der Abstand zwischen dem Evaluierungspunkt des Kurvenpfads und dem Referenzpunkt an der Bearbeitungskurvenfläche innerhalb des zulässigen Bereichs liegt. The machining program converting device according to the present disclosure enables improved machining accuracy in a result of machining the workpiece by changing the tool path so that the distance between the evaluation point of the curve path and the reference point on the machining curve surface is within the allowable range.

Die numerische Steuerung gemäß der vorliegenden Offenbarung ist in der Lage, numerische Steuerung in Übereinstimmung mit dem geänderten Werkzeugpfad durchzuführen, was eine verbesserte Arbeitseffizienz ermöglicht.The numerical control according to the present disclosure is able to perform numerical control in accordance with the changed tool path, which enables improved work efficiency.

FigurenlisteFigure list

  • 1 zeigt eine Konfiguration einer Bearbeitungsprogrammumwandlungsvorrichtung gemäß einer ersten und einer zweiten Ausführungsform. 1 Fig. 13 shows a configuration of a machining program converting device according to a first and a second embodiment.
  • 2 ist ein Flussdiagramm, welches den Betrieb der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform zeigt. 2 Fig. 13 is a flow chart showing the operation of the machining program converting device according to the first embodiment.
  • 3 zeigt ein Beispiel eines Werkzeugpfads, den die Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform von einem Bearbeitungsprogramm gelesen hat. 3 FIG. 13 shows an example of a tool path that the machining program converting device according to the first embodiment has read from a machining program.
  • 4 zeigt ein Beispiel eines Kurvenpfads, der in Übereinstimmung mit dem Kurvenpfad, der von dem Bearbeitungsprogramm gelesen wurde, durch die Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform erzeugt wurde. 4th Fig. 13 shows an example of a curved path generated in accordance with the curved path read from the machining program by the machining program converting device according to the first embodiment.
  • 5 zeigt ein Beispiel eines Werkzeugs, das sich entlang einem Werkzeugpfad in der ersten Ausführungsform, der zweiten Ausführungsform und einer dritten Ausführungsform bewegt. 5 Fig. 13 shows an example of a tool moving along a tool path in the first embodiment, the second embodiment, and a third embodiment.
  • 6 zeigt ein Beispiel einer Endgestalt, die durch die Bearbeitung unter Verwendung des Werkzeugpfads der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform zu erhalten ist. 6th FIG. 13 shows an example of a final shape to be obtained by machining using the tool path of the machining program converting device according to the first embodiment.
  • 7 ist eine Querschnittsansicht, welche einen Zustand zeigt, in dem die Kurvenpfade so angeordnet sind, dass sie der Endgestalt in der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform entsprechen. 7th Fig. 13 is a cross-sectional view showing a state in which the curved paths are arranged to correspond to the final shape in the machining program converting device according to the first embodiment.
  • 8 zeigt das Werkzeug entfernt von einer Bearbeitungskurvenfläche in der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform, wobei das Werkzeug in diesem Beispiel ein Kugelfräser ist. 8th Fig. 13 shows the tool removed from a machining curve surface in the machining program converting device according to the first embodiment, the tool in this example being a spherical mill.
  • 9 zeigt das Werkzeug in Kontakt mit der Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform, wobei das Werkzeug in diesem Beispiel der Kugelfräser ist. 9 Fig. 13 shows the tool in contact with the machining cam surface in the machining program converting device according to the first embodiment, the tool being the spherical mill in this example.
  • 10 zeigt das Werkzeug, wie es sich mit der Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform überschneidet, wobei das Werkzeug in diesem Beispiel der Kugelfräser ist. 10 Fig. 13 shows the tool as it intersects with the machining cam surface in the machining program converting device according to the first embodiment, the tool being the spherical mill in this example.
  • 11 zeigt ein Werkzeug, das von einer Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform entfernt ist, wobei das Werkzeug in diesem Beispiel ein Scheibenfräser ist. 11th Fig. 13 shows a tool removed from a machining cam surface in the machining program converting device according to the first embodiment, the tool being a disk milling cutter in this example.
  • 12 zeigt das Werkzeug in Kontakt mit der Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform, wobei das Werkzeug in diesem Beispiel der Scheibenfräser ist. 12th Fig. 13 shows the tool in contact with the machining cam surface in the machining program converting device according to the first embodiment, the tool being the disk milling cutter in this example.
  • 13 zeigt das Werkzeug, das sich mit der Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform überschneidet, wobei das Werkzeug in diesem Beispiel der Scheibenfräser ist. 13th Fig. 13 shows the tool that intersects with the machining cam surface in the machining program converting device according to the first embodiment, the tool being the side milling cutter in this example.
  • 14 zeigt ein Werkzeug entfernt von einer Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform, wobei das Werkzeug in diesem Beispiel ein Eckradiusfräser ist. 14th Fig. 13 shows a tool removed from a machining curve surface in the machining program converting device according to the first embodiment, the tool being a corner radius mill in this example.
  • 15 zeigt das Werkzeug in Kontakt mit der Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform, wobei das Werkzeug in diesem Beispiel der Eckradiusfräser ist. 15th Fig. 13 shows the tool in contact with the machining cam surface in the machining program converting device according to the first embodiment, the tool being the corner radius cutter in this example.
  • 16 zeigt das Werkzeug, wie es sich mit der Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform überschneidet, wobei das Werkzeug in diesem Beispiel der Eckradiusfräser ist. 16 Fig. 13 shows the tool as it intersects with the machining curve surface in the machining program converting device according to the first embodiment, the tool being the corner radius cutter in this example.
  • 17 zeigt ein Beispiel des Verschiebens eines Evaluationspunkt, damit das Werkzeug mit der Bearbeitungskurvenfläche in Kontakt bleiben kann, zur Hinzufügung eines neuen Befehlspunkts bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform. 17th Fig. 13 shows an example of shifting an evaluation point to allow the tool to stay in contact with the machining curve surface for adding a new command point in the machining program converting device according to the first embodiment.
  • 18 zeigt einen geänderten Werkzeugpfad, der durch das Hinzufügen des neuen Befehlspunkts bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform erhalten wird. 18th Fig. 13 shows a changed tool path obtained by adding the new command point in the machining program converting device according to the first embodiment.
  • 19 ist ein Flussdiagramm, welches den Betrieb der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der zweiten Ausführungsform zeigt. 19th Fig. 13 is a flow chart showing the operation of the machining program converting device according to the second embodiment.
  • 20 zeigt ein Beispiel eines Werkzeugpfads der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der zweiten Ausführungsform, wie er von dem Bearbeitungsprogramm gelesen wurde. 20th Fig. 13 shows an example of a tool path of the machining program converting device according to the second embodiment as read by the machining program.
  • 21 zeigt ein Beispiel eines Kurvenpfads zwischen zweien von drei benachbarten Befehlspunkten nach dem Löschen eines mittleren Befehlspunkts bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der zweiten Ausführungsform. 21 Fig. 13 shows an example of a curved path between two of three adjacent command points after deleting a central command point in the machining program converting device according to the second embodiment.
  • 22 zeigt ein Beispiel einer Endgestalt, die durch Bearbeitung unter Verwendung des Werkzeugpfads der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der zweiten Ausführungsform zu erhalten ist. 22nd Fig. 13 shows an example of a final shape to be obtained by machining using the tool path of the machining program converting device according to the second embodiment.
  • 23 ist eine Schnittansicht, die einen Zustand zeigt, in dem der Kurvenpfad so angeordnet ist, dass er der Endgestalt bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der zweiten Ausführungsform entspricht. 23 Fig. 13 is a sectional view showing a state in which the curved path is arranged to correspond to the final shape in the machining program converting device according to the second embodiment.
  • 24 zeigt das Werkzeug entfernt von einer Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der zweiten Ausführungsform, wobei das Werkzeug in diesem Beispiel der Kugelfräser ist. 24 Fig. 13 shows the tool removed from a machining curve surface in the machining program converting device according to the second embodiment, the tool being the spherical mill in this example.
  • 25 zeigt das Werkzeug in Kontakt mit der Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der zweiten Ausführungsform, wobei das Werkzeug in diesem Beispiel der Kugelfräser ist. 25th Fig. 13 shows the tool in contact with the machining cam surface in the machining program converting device according to the second embodiment, the tool being the spherical mill in this example.
  • 26 zeigt das Werkzeug, wie es sich mit der Bearbeitungskurvenfläche bei der Bearbeitungsprogrammumwandlungsvorrichtung der zweiten Ausführungsform überschneidet, wobei das Werkzeug in diesem Beispiel der Kugelfräser ist. 26th shows the tool what happens to the machining curve surface for the The machining program converting device of the second embodiment overlaps, the tool being the spherical mill in this example.
  • 27 zeigt ein Beispiel eines abgewandelten Werkzeugpfads, wie er durch das Löschen des Befehlspunkts von dem Werkzeugpfad bei der Bearbeitungsprogrammumwandlungsvorrichtung gemäß der zweiten Ausführungsform erhalten wurde. 27 Fig. 13 shows an example of a modified tool path obtained by deleting the command point from the tool path in the machining program converting device according to the second embodiment.
  • 28 zeigt eine Konfiguration einer numerischen Steuerung gemäß der dritten Ausführungsform. 28 Fig. 13 shows a configuration of a numerical controller according to the third embodiment.
  • 29 ist ein Flussdiagramm, welches einen Betrieb der numerischen Steuerung gemäß der dritten Ausführungsform zeigt. 29 Fig. 13 is a flow chart showing an operation of the numerical controller according to the third embodiment.
  • 30 zeigt eine Konfiguration eines Beispiels einer Vorrichtung zum maschinellen Lernen gemäß einer vierten Ausführungsform. 30th FIG. 13 shows a configuration of an example of a machine learning apparatus according to a fourth embodiment.

Beschreibung von AusführungsformenDescription of embodiments

Nun werden unter Bezugnahme auf die Zeichnungen Bearbeitungsprogrammumwandlungsvorrichtungen, eine numerische Steuerung, Bearbeitungsprogrammumwandlungsverfahren und eine Vorrichtung zum maschinellen Lernen gemäß Ausführungsformen der vorliegenden Offenbarung beschrieben. Es ist zu beachten, dass diese Ausführungsformen nicht beschränkend sind.Machining program conversion devices, a numerical controller, machining program conversion methods, and machine learning apparatus according to embodiments of the present disclosure will now be described with reference to the drawings. It should be noted that these embodiments are not restrictive.

Erste Ausführungsform.First embodiment.

1 zeigt ein Konfigurationsbeispiel einer Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform. Die Bearbeitungsprogrammumwandlungsvorrichtung 100 umfasst: eine Bearbeitungsprogrammeingabeeinheit 101, welche ein von außerhalb eingegebenes Bearbeitungsprogramm erhält; einen Bearbeitungsprogrammanalysierer 102, der das eingegebene Bearbeitungsprogramm analysiert und einen Werkzeugpfad bestimmt; eine Werkzeugpfadspeichereinheit 103, die den durch den Bearbeitungsprogrammanalysierer 102 bestimmten Werkzeugpfad speichert; eine Kurvenpfaderzeugungseinheit 104, die in Übereinstimmung mit dem in der Werkzeugpfadspeichereinheit 103 gespeicherten Werkzeugpfad einen Kurvenpfad erzeugt; eine Werkzeugdateneingabeeinheit 105, wo Werkzeugdaten eingegeben werden; eine Gestaltdateneingabeeinheit 106, wo Daten zu einer Gestalt eingegeben werden, die nach der Bearbeitung eines Werkstücks erhalten werden soll; eine Eingabeeinheit für zulässige Abmessungstoleranzen 107, wo eine zulässiger Bereich für einen Abstand zwischen einem Punkt auf dem Kurvenpfad und einer Bearbeitungskurvenfläche eingegeben wird, wobei der Punkt zur Bestimmung vorgesehen ist, ob sich ein Werkzeug entlang der Bearbeitungskurvenfläche an dem Werkstück bewegt oder nicht; eine Kurvenpfadevaluierungseinheit 108, welche bestimmt, ob der Abstand zwischen dem Punkt auf dem Kurvenpfad und der Bearbeitungskurvenfläche in dem zulässigen Bereich liegt oder nicht; eine Werkzeugpfadänderungseinheit 109, die den Werkzeugpfad ändert; und eine Ausgabeeinheit für das umgewandelte Bearbeitungsprogramm 110. Die Ausgabeeinheit für das umgewandelte Bearbeitungsprogramm 110 wandelt den geänderten Werkzeugpfad in ein Bearbeitungsprogramm zur Ausgabe an eine numerische Steuerung 111 um, welche eine externe Vorrichtung ist. Während die externe Vorrichtung in der vorliegenden Ausführungsform als die numerische Steuerung beschrieben wird, ist die externe Vorrichtung nicht auf die numerische Steuerung beschränkt und kann beispielsweise eine Programmprüfvorrichtung oder eine Werkzeugpfadanzeigevorrichtung sein. 1 Fig. 13 shows a configuration example of a machining program converting device according to the first embodiment. The machining program conversion device 100 comprises: a machining program input unit 101 which a machining program entered from outside receives; a machining program analyzer 102 which analyzes the input machining program and determines a tool path; a tool path storage unit 103 which the machining program analyzer 102 saves specific toolpath; a curved path generation unit 104 which is in accordance with that in the tool path storage unit 103 saved toolpath creates a curve path; a tool data input unit 105 where tool data is entered; a shape data input unit 106 where data is entered on a shape to be obtained after machining a workpiece; an input unit for permissible dimensional tolerances 107 where an allowable range for a distance between a point on the curve path and a machining curve surface is entered, the point being provided for determining whether or not a tool moves along the machining curve surface on the workpiece; a curve path evaluation unit 108 which determines whether or not the distance between the point on the curve path and the machining curve surface is in the allowable range; a tool path changing unit 109 that changes the toolpath; and an output unit for the converted machining program 110 . The output unit for the converted machining program 110 converts the changed tool path into a machining program for output to a numerical control 111 around which is an external device. While the external device is described as the numerical controller in the present embodiment, the external device is not limited to the numerical controller and may be, for example, a program checking device or a tool path display device.

2 ist ein Flussdiagramm, welches ein Beispiel des Betriebs der Bearbeitungsprogrammumwandlungsvorrichtung 100 gemäß der ersten Ausführungsform zeigt. Unter Bezugnahme auf 2 wird eine Bearbeitungsprozedur beschrieben, die die Bearbeitungsprogrammumwandlungsvorrichtung 100 zum Erzeugen und Ändern eines Werkzeugpfads aufweist. 2 Fig. 13 is a flowchart showing an example of the operation of the machining program converting device 100 according to the first embodiment shows. With reference to 2 there will be described a machining procedure that the machining program converting device 100 for creating and modifying a toolpath.

Der Werkzeugpfaderzeugungsbetrieb der Bearbeitungsprogrammumwandlungsvorrichtung 100 startet mit der Eingabe eines Bearbeitungsprogramms in die Bearbeitungsprogrammumwandlungsvorrichtung 100 (Schritt S101). Hierzu liest die Bearbeitungsprogrammeingabeeinheit 101 der Bearbeitungsprogrammumwandlungsvorrichtung 100 das Bearbeitungsprogramm, das ein Bearbeitungswerkzeug steuert, von außerhalb ein. Das Bearbeitungsprogramm ist eine Beschreibung von Bewegungsbefehlen zum Bewegen eines zu bearbeitenden Werkstücks oder eines Werkzeugs entlang einem voreingestellten Pfad.The tool path creating operation of the machining program converting device 100 starts with the input of a machining program into the machining program converting device 100 (Step S101). For this purpose, the machining program input unit reads 101 the machining program conversion device 100 the machining program that controls a machining tool from outside. The machining program is a description of movement commands for moving a workpiece or a tool to be machined along a preset path.

Das Bearbeitungsprogramm wird in Schritt S101 eingegeben, wenn beispielsweise eine Datei im G-Code-Format eingelesen wird, die von einem CAD/CAM-System ausgegeben wurde. Alternativ wird das Bearbeitungsprogramm durch einen Arbeiter erzeugt, der die notwendige Information unter Verwendung einer Eingabevorrichtung, wie etwa einer Tastatur, eingibt.The machining program is entered in step S101 when, for example, a file is read in in G code format that was output by a CAD / CAM system. Alternatively, the machining program is created by a worker who inputs necessary information using an input device such as a keyboard.

Dann analysiert der Bearbeitungsprogrammanalysierer 102 der Bearbeitungsprogrammumwandlungsvorrichtung 100 das in Schritt S101 erhaltene Bearbeitungsprogramm und bestimmt einen Werkzeugpfad, der in dem Bearbeitungsprogramm beschrieben ist (Schritt S102). Insbesondere wird von dem Bearbeitungsprogramm, das in beispielsweise G-Code beschrieben ist, Werkzeugpfadinformation gelesen. Der gelesene Werkzeugpfad wird in der Werkzeugpfadspeichereinheit 103 gespeichert (Schritt S103). 3 zeigt ein Beispiel des von dem Bearbeitungsprogramm umgewandelten Werkzeugpfads. Der Werkzeugpfad in 3 umfasst Befehlspunkte P1 bis P6 und gerade Linien, wobei jeweils eine gerade Linie zwischen den Befehlspunkten liegt. Die Befehlspunkte bezeichnen hier Punkte, die in dem Bearbeitungsprogramm befohlen sind. Der Abstand zwischen den Befehlspunkten ist in dem Bearbeitungsprogramm vorbestimmt.Then the machining program analyzer analyzes 102 the machining program conversion device 100 the machining program obtained in step S101 and determines a tool path described in the machining program (step S102). In particular, the machining program, which is described in, for example, G code, Toolpath information read. The read tool path is stored in the tool path storage unit 103 stored (step S103). 3 Fig. 10 shows an example of the tool path converted by the machining program. The toolpath in 3 includes command points P1 to P6 and straight lines with a straight line between each command point. The command points here designate points that are commanded in the machining program. The distance between the command points is predetermined in the machining program.

Dann erzeugt die Kurvenpfaderzeugungseinheit 104 Kurvenpfade, wobei ein jeder zwischen den benachbarten Befehlspunkten liegt, in Übereinstimmung mit dem in der Werkzeugpfadspeichereinheit 103 gespeicherten Werkzeugpfad (Schritt S104). 4 zeigt ein Beispiel der Kurvenpfade, die in Übereinstimmung mit dem Werkzeugpfad erzeugt wurden, der die Punkte P1 bis P6 umfasst. Die in 4 gezeigten Kurvenpfade TP1 bis TP6 werden so erzeugt, dass sich das Werkzeug entlang diesen durch die Befehlspunkte bewegt.Then the curved path generating unit generates 104 Curve paths each lying between the adjacent command points in accordance with that in the tool path storage unit 103 stored tool path (step S104). 4th Fig. 10 shows an example of the curve paths created in accordance with the tool path containing the points P1 to P6 includes. In the 4th curve paths shown TP1 until TP6 are created so that the tool moves along these through the command points.

Die Kurvenpfade, die die Bearbeitungsprogrammumwandlungsvorrichtung 100 erzeugt, müssen als gekrümmte Linien nicht die gleichen sein, mit denen die numerische Steuerungsvorrichtung 111 arbeitet, d.h. gekrümmten Linien, die es der numerischen Steuerung 111 erlauben, aus dem zu bearbeitenden Werkstück eine Gestalt herauszuarbeiten. Deshalb ist das Kurvenpfaderzeugungsverfahren vorzugsweise das gleiche wie ein Kurvenpfaderzeugungsverfahren der numerischen Steuerung 111, in die das in die Bearbeitungsprogrammumwandlungsvorrichtung 100 eingegebene Bearbeitungsprogramm schließlich eingegeben wird. Beispielsweise ist ein Verfahren zum Interpolieren einer Spline-Kurve, die durch die Befehlspunkte verläuft, ein weiteres Beispiel des Kurvenpfaderzeugungsverfahrens.The curved paths that the machining program converter 100 generated need not be the same as curved lines with those of the numerical control device 111 works, ie curved lines that make it numerical control 111 allow to work out a shape from the workpiece to be machined. Therefore, the turning path generating method is preferably the same as a turning path generating method of the numerical control 111 into which the machining program converting device 100 entered machining program is finally entered. For example, a method of interpolating a spline curve passing through the command points is another example of the curve path generating method.

Werkzeugdaten werden in die Werkzeugdateneingabeeinheit 105 von außerhalb eingegeben (Schritt S105). Die Werkzeugdaten sind Informationen, die eine Gestalt des Werkzeugs definieren, welches das Werkstück bearbeitet, und sie umfassen Informationen, die einen Werkzeugtyp repräsentieren und Informationen, die eine Werkzeuggestalt repräsentieren, wie etwa einen Werkzeugdurchmesser, einen Werkzeugeckenradius und eine Werkzeuglänge. Wenn beispielsweise das Werkzeug eine sich verjüngende Gestalt aufweist, kann der Werkzeugdateneingabeeinheit 105 Information zugeführt werden, wie etwa ein Neigungswinkel einer Erzeugungslinie an einem Werkzeugaußenrand in Bezug auf eine zentrale Achse des Werkzeugs. Der Werkzeugdateneingabeeinheit 105 können Informationen zu einem Werkzeug zugeführt werden, das eine asymmetrische Gestalt aufweist, wie etwa einem Drehwerkzeug. Die Eingabe von außerhalb wird durch einen Arbeiter bewerkstelligt, der beispielsweise unter Verwendung der Tastatur die Daten eingibt, oder durch ein Verfahren, wie etwa die Umwandlung aus CAD-Daten. Basierend auf diesen Werkzeugdaten ist die Bearbeitungsprogrammumwandlungsvorrichtung 100 in der Lage, ein Werkzeugmodell zu erzeugen. 5 zeigt ein Beispiel des Werkzeugs, das sich entlang des Werkzeugpfads bewegt. Das Werkzeug T10 weist die Gestalt eines Kugelfräsers auf und ist basierend auf den Werkzeugdaten erzeugt.Tool data are entered in the tool data input unit 105 input from outside (step S105). The tool data is information defining a shape of the tool machining the workpiece, and it includes information representing a tool type and information representing a tool shape such as a tool diameter, a tool corner radius and a tool length. For example, if the tool has a tapered shape, the tool data input unit 105 Information can be supplied, such as an angle of inclination of a generating line at a tool outer edge with respect to a central axis of the tool. The tool data input unit 105 For example, information can be supplied to a tool that has an asymmetrical shape, such as a rotary tool. The input from the outside is done by a worker who inputs the data using the keyboard, for example, or by a method such as conversion from CAD data. The machining program converting device is based on this tool data 100 able to generate a tool model. 5 shows an example of the tool moving along the tool path. The tool T10 has the shape of a spherical mill and is generated based on the tool data.

Die Gestaltdaten werden der Gestaltdateneingabeeinheit 106 von außerhalb eingegeben (Schritt S105). Die Gestaltdaten sind Informationen, die eine Gestalt definieren, die nach Bearbeitung des Werkstücks erhalten werden sollte. Diese Informationen ermöglichen die Erzeugung einer Endgestalt, für die das Werkstück bestimmt ist. Die Endgestalt umfasst eine Bearbeitungskurvenfläche S1, welche eine zu bearbeitende Kurvenfläche ist. Die Endgestalt ist eine Gestalt eines ideal bearbeiteten Produkts, das sich aus der Bearbeitung, die das Bearbeitungswerkzeug an dem Werkstück in Übereinstimmung mit dem Bearbeitungsprogramm durchführt, ergeben sollte. Das Bearbeitungswerkzeug bearbeitet das Werkstück so, dass weniger Abweichungen zwischen der Endgestalt und dem bearbeiteten Produkt verbleiben. Die Eingabe von außerhalb wird durch den Arbeiter bewerkstelligt, der beispielsweise unter Verwendung der Tastatur die Daten eingibt, oder durch ein Verfahren, wie etwa eine Konvertierung aus CAD-Daten.The shape data become the shape data input unit 106 input from outside (step S105). The shape data is information that defines a shape that should be obtained after machining the workpiece. This information enables the creation of a final shape for which the workpiece is intended. The final shape includes a machining curve surface S1 which is a curved surface to be machined. The final shape is a shape of an ideal machined product that should result from the machining that the machining tool performs on the workpiece in accordance with the machining program. The processing tool processes the workpiece in such a way that fewer deviations remain between the final shape and the processed product. The external input is done by the worker entering the data using the keyboard, for example, or by a method such as conversion from CAD data.

6 ist ein Beispiel der durch die Bearbeitung unter Verwendung des Werkzeugpfads zu erhaltenden Endgestalt. Die in 6 gezeigte Endgestalt M1 ist basierend auf den Gestaltdaten erzeugt, die der Gestaltdateneingabeeinheit 106 zugeführt wurden, und umfasst die Bearbeitungskurvenfläche S1. 6th Figure 13 is an example of the final shape to be obtained by machining using the tool path. In the 6th The final shape M1 shown is generated based on the shape data received from the shape data input unit 106 and includes the machining cam surface S1 .

7 ist eine Querschnittsansicht, welche einen Zustand zeigt, in dem die Kurvenpfade so angeordnet sind, dass sie der Endgestalt M1 entsprechen, wobei Evaluationspunkte Q1 bis Q5 auf dem Kurvenpfad TP3 beispielhaft gesetzt sind. Die Evaluationspunkte bezeichnen hier Punkte, die auf dem Kurvenpfad vorgesehen sind, um zu bestimmen, ob sich das Werkstück entlang der Bearbeitungskurvenfläche an dem Werkstück bewegt oder nicht, wenn es dem Kurvenpfad folgt. Die Evaluationspunkte werden beispielsweise als ausgewählte Punkte auf dem Kurvenpfad bestimmt, sodass Kurvenparameter gleichmäßig beabstandet sind, oder durch Iteration, die durchgeführt wird, bis eine maximale Abweichung zwischen einem Liniensegment, das benachbarte Evaluationspunkte verbindet, und dem Kurvenpfad gleich oder kleiner einem vorbestimmten Wert wird. 7th Fig. 13 is a cross-sectional view showing a state in which the curve paths are arranged to correspond to the final shape M1, with evaluation points Q1 until Q5 on the curve path TP3 are set by way of example. Here, the evaluation points denote points that are provided on the curved path in order to determine whether or not the workpiece moves along the machining curve surface on the workpiece when it follows the curved path. The evaluation points are determined, for example, as selected points on the curve path so that curve parameters are evenly spaced, or by iteration that is performed until a maximum deviation between a line segment connecting adjacent evaluation points and the curve path becomes equal to or less than a predetermined value.

Die 8 bis 10 zeigen jeweils ein Verhältnis zwischen dem Werkzeug und der Bearbeitungskurvenfläche S1, wenn das Werkzeug ein Kugelfräser (nachfolgend als „Werkzeug T10“ bezeichnet) ist. 8 zeigt das Werkzeug T10 entfernt von der Bearbeitungskurvenfläche S1. In 8 ist ein Punkt auf der Bearbeitungskurvenfläche S1, wo ein Abstand zwischen dem Werkzeug T10 und der Bearbeitungskurvenfläche S1 am geringsten ist, als ein Referenzpunkt C1 bezeichnet. Der Referenzpunkt C1 auf der Bearbeitungskurvenfläche S1 liegt auch dort, wo ein Abstand zwischen dem Evaluierungspunkt Q, der in Schritt S106 (nachfolgend beschrieben) an dem Werkzeug liegt, und der Bearbeitungskurvenfläche S1 am kürzesten ist. Der Abstand zwischen dem Evaluierungspunkt Q und dem Referenzpunkt C1 wird hier als „Abstand L1“ definiert.the 8th until 10 each show a relationship between the tool and the Machining curve surface S1 if the tool is a spherical mill (hereinafter referred to as “tool T10”). 8th shows the tool T10 away from the machining curve surface S1 . In 8th is a point on the machining curve surface S1 where there is a gap between the tool T10 and the machining curve surface S1 is the smallest, referred to as a reference point C1. The reference point C1 on the machining curve surface S1 also lies where there is a distance between the evaluation point Q that lies on the tool in step S106 (described below) and the machining curve surface S1 is the shortest. The distance between the evaluation point Q and the reference point C1 is referred to here as "distance L1 " Are defined.

9 zeigt das Werkzeug T10 in Kontakt mit der Bearbeitungskurvenfläche S1. In 9 ist ein Kontaktpunkt zwischen dem Werkzeug T10 und der Bearbeitungskurvenfläche S1 als ein Referenzpunkt C2 definiert. Der Referenzpunkt C2 ist auch ein Schneidpunkt beim Bearbeiten über die Bearbeitungskurvenfläche S1 mit dem Werkzeug T10. Ein Abstand L2 zwischen dem Evaluierungspunkt Q und dem Referenzpunkt C2 ist der ideale Wert bei der Werkstückbearbeitung durch das Bearbeitungswerkzeug. 9 shows the tool T10 in contact with the machining curve surface S1 . In 9 is a contact point between the tool T10 and the machining curve surface S1 as a reference point C2 Are defined. The reference point C2 is also a cutting point when machining via the machining curve surface S1 with the tool T10 . A distance L2 between the evaluation point Q and the reference point C2 is the ideal value when the workpiece is machined by the machining tool.

10 zeigt das Werkzeug T10, wie es sich mit der Bearbeitungskurvenfläche S1 überschneidet. In 10 ist ein Punkt auf der Bearbeitungskurvenfläche S1, wo ein Abstand zwischen dem Evaluierungspunkt Q an dem Werkzeug T10 und der Bearbeitungskurvenfläche S1 am kürzesten ist, als ein Referenzpunkt C3 definiert. Bei Überschneidung des Werkzeugs mit der Bearbeitungskurvenfläche wie in diesem Fall ist das Werkzeug versetzt, bis das Werkzeug in Kontakt mit der Bearbeitungskurvenfläche kommt, was dazu führt, dass ein Kontaktpunkt zwischen dem verlagerten Werkzeug und der Bearbeitungskurvenfläche als der Referenzpunkt C3 bestimmt wird. In 10 kann der Referenzpunkt C3 auch als der Punkt des Kontakts zwischen dem verlagerten Werkzeug T10, das durch eine gestrichelte Linie dargestellt ist, und der Bearbeitungskurvenfläche S1 bezeichnet werden. Der Abstand zwischen dem Evaluierungspunkt Q und dem Referenzpunkt C3 ist hier als „Abstand L3“ definiert. 10 shows the tool T10 how about the machining curve surface S1 overlaps. In 10 is a point on the machining curve surface S1 where a distance between the evaluation point Q on the tool T10 and the machining curve surface S1 is shortest as a reference point C3 Are defined. If the tool intersects with the machining curve surface, as in this case, the tool is offset until the tool comes into contact with the machining curve surface, which results in a contact point between the displaced tool and the machining curve surface as the reference point C3 is determined. In 10 can be the reference point C3 also as the point of contact between the relocated tool T10 represented by a dashed line and the machining curve surface S1 are designated. The distance between the evaluation point Q and the reference point C3 is defined here as "distance L3".

Nun wird ein zulässiger Bereich für den Abstand L beschrieben, wenn angenommen wird, dass der Abstand L2 2,00 mm beträgt. Wenn eine Abmessungstoleranz für die Bearbeitungskurvenfläche an dem Werkstück ± 0,05 mm im Vergleich zu einer Standardtoleranz ist, ergibt sich für den Abstand L1 2,0 mm < Abstand L1 ≤ 2,05 mm und für den Abstand L3 1,95 mm ≤ Abstand L3 < 2,0 mm. Deshalb ist der zulässige Bereich für den Abstand L 1,95 mm ≤ Abstand L ≤ 2,05 mm.An allowable range for the distance L will now be described when it is assumed that the distance L2 2.00 mm. If a dimensional tolerance for the machining curve surface on the workpiece is ± 0.05 mm compared to a standard tolerance, the result for the distance L1 is 2.0 mm <distance L1 2.05 mm and for the distance L3 1.95 mm ≤ distance L3 <2.0 mm. Therefore the permissible range for the distance L is 1.95 mm ≤ distance L ≤ 2.05 mm.

Während der Evaluierungspunkt Q an dem Werkzeug T10 auf einer zentralen Achse des Werkzeugs T10 nahe einem Vorderende des Werkzeugs T10 in den 8 bis 10 angeordnet ist, kann der Evaluierungspunkt Q beispielsweise an dem Vorderende des Werkzeugs an einem Teil oder Punkt auf dem Werkzeug T10 angeordnet sein, wo das Werkzeug bearbeitet wird, oder er kann an einem Punkt an dem Werkzeug T10 angeordnet sein, wo der Abstand zwischen dem Werkzeug T10 und der Bearbeitungskurvenfläche S1 am kürzesten ist. Es ist jedoch anzumerken, dass, nachdem eine bestimmte Position an dem Werkzeug als der Evaluierungspunkt Q bestimmt ist, der bestimmte Evaluierungspunkt Q der ist, wo der Abstand L ausgewertet wird.During the evaluation point Q on the tool T10 on a central axis of the tool T10 near a front end of the tool T10 in the 8th until 10 is arranged, the evaluation point may Q for example at the front end of the tool at a part or point on the tool T10 be located where the tool is being machined, or it can be at a point on the tool T10 be placed where the distance between the tool T10 and the machining curve surface S1 is the shortest. It should be noted, however, that after a certain position on the tool as the evaluation point Q is determined, the particular evaluation point Q which is where the distance L is evaluated.

Der zulässige Bereich für den Abstand L wird in die Eingabeeinheit für die zulässige Abmessungstoleranzen 107 eingegeben (Schritt S105). Werte, die den zulässigen Bereich definieren, werden in Abhängigkeit von der Bearbeitungsgenauigkeit bestimmt, die für das Werkstück vorgesehen ist. Wenn die Gestaltdaten, die in die Gestaltdateneingabeeinheit 106 eingegeben werden, Informationen zu einer Bearbeitungstoleranz in Bezug auf die Bearbeitungskurvenfläche an dem Werkstück enthalten, können die Werte, die den zulässigen Bereich angeben, in Übereinstimmung mit der Bearbeitungstoleranz bestimmt werden. In diesem Fall wird die automatische Bereichseinstellung in Abhängigkeit von der Bearbeitungsfläche ermöglicht, was zu einer verbesserten Arbeitseffizienz führt. Der zulässige Bereich für den Abstand L kann auch als eine zulässige Abmessungstoleranz bezeichnet werden.The permissible range for the distance L is entered in the input unit for the permissible dimensional tolerances 107 is input (step S105). Values that define the allowable range are determined depending on the machining accuracy that is intended for the workpiece. When the shape data entered in the shape data input unit 106 are inputted contain information on a machining tolerance with respect to the machining cam surface on the workpiece, the values indicating the allowable range can be determined in accordance with the machining tolerance. In this case, the automatic ranging depending on the working area is enabled, resulting in improved working efficiency. The allowable range for the distance L can also be referred to as an allowable dimensional tolerance.

Diese Werte, die der Eingabeeinheit für zulässige Abmessungstoleranzen 107 eingegeben werden, können einen zulässigen Bereich für den kürzesten Abstand zwischen dem Werkzeug und der Endfläche definieren. Wenn beispielsweise die Abmessungstoleranz für eine Bearbeitungskurvenfläche an einem Werkstück ± 0,05 mm im Vergleich zu einer Standardtoleranz ist, sollte der kürzeste Abstand zwischen dem Werkzeug und der Bearbeitungskurvenfläche einer Endgestalt innerhalb einer Differenz von 0,05 mm liegen, sodass die Werte 0,05 mm ergeben, wenn der zulässige Bereich definiert wird.These values, those of the input unit for permissible dimensional tolerances 107 can define an allowable range for the shortest distance between the tool and the end face. For example, if the dimensional tolerance for a machining curve surface on a workpiece is ± 0.05 mm compared to a standard tolerance, the shortest distance between the tool and the machining curve surface of a final shape should be within 0.05 mm, so that the values are 0.05 mm if the permissible range is defined.

Während der zulässige Bereich für den Abstand L in der vorliegenden Ausführungsform in die Eingabeeinheit für zulässige Abmessungstoleranzen 107 eingegeben wird, können Werte, die den zulässigen Bereich für den Abstand L definieren, in einer Speichereinheit für zulässige Abmessungstoleranzen (nicht dargestellt) der Bearbeitungsprogrammumwandlungsvorrichtung 100 vorab gespeichert sein.While the allowable range for the distance L in the present embodiment is entered into the allowable dimensional tolerance input unit 107 is input, values defining the allowable range for the distance L can be stored in an allowable dimensional tolerance storage unit (not shown) of the machining program converting device 100 be saved in advance.

Die 11 bis 13 zeigen jeweils eine Beziehung zwischen einem Werkzeug und einer Bearbeitungskurvenfläche S2, wenn das Werkzeug ein Scheibenfräser (nachfolgend als „Werkzeug T11“ bezeichnet) ist. 11 zeigt das Werkzeug T11 entfernt von der Bearbeitungskurvenfläche S2. In 11 ist ein Punkt auf der Bearbeitungskurvenfläche S2, wo ein Abstand zwischen dem Werkzeug T11 und der Bearbeitungskurvenfläche S2 am kürzesten ist, als ein Referenzpunkt C2 definiert. Ein Abstand zwischen dem Evaluierungspunkt Q und dem Referenzpunkt C11 ist als ein „Abstand L11“ definiert.the 11th until 13th each show a relationship between a tool and a Machining curve surface S2 if the tool is a side milling cutter (hereinafter referred to as “tool T11 "Labeled). 11th shows the tool T11 away from the machining curve surface S2 . In 11th is a point on the machining curve surface S2 where there is a gap between the tool T11 and the machining curve surface S2 is shortest as a reference point C2 Are defined. A distance between the evaluation point Q and the reference point C11 is called a "distance L11 " Are defined.

12 zeigt das Werkzeug T11 in Kontakt mit der Bearbeitungskurvenfläche S2. In 12 ist ein Punkt des Kontakts zwischen dem Werkzeug T11 und der Bearbeitungskurvenfläche S2 als ein Referenzpunkt C12 definiert. Ein Abstand L12 zwischen dem Evaluierungspunkt Q und dem Referenzpunkt C12 ist der ideale Wert bei der Werkstückbearbeitung durch das Bearbeitungswerkzeug. 12th shows the tool T11 in contact with the machining curve surface S2 . In 12th is a point of contact between the tool T11 and the machining curve surface S2 as a reference point C12 Are defined. A distance L12 between the evaluation point Q and the reference point C12 is the ideal value when the workpiece is machined by the machining tool.

13 zeigt das Werkzeug T11, wie es mit der Bearbeitungskurvenfläche S2 überlappt. In 13 ist ein Punkt auf der Bearbeitungskurvenfläche S2, wo ein Abstand zwischen dem Evaluierungspunkt Q an dem Werkzeug T11 und der Bearbeitungskurvenfläche S2 am kürzesten ist, als ein Referenzpunkt C13 definiert. Bei dem mit der Bearbeitungskurvenfläche sich überschneidenden Werkzeug kann, wie in diesem Fall ersichtlich ist, das Werkzeug nach innen verlagert werden, bis das Werkzeug in Kontakt mit der Bearbeitungskurvenfläche gelangt. In 13 kann der Referenzpunkt C13 auch als ein Kontaktpunkt zwischen dem verlagerten Werkzeug T11, welches durch eine gestrichelte Linie angegeben ist, und der Bearbeitungskurvenfläche S2 bezeichnet werden. Der Abstand zwischen dem Evaluierungspunkt Q und dem Referenzpunkt C13 ist als „Abstand L13“ definiert. 13th shows the tool T11 as is the case with the machining curve surface S2 overlaps. In 13th is a point on the machining curve surface S2 where a distance between the evaluation point Q on the tool T11 and the machining curve surface S2 is shortest as a reference point C13 Are defined. In the case of the tool that intersects with the machining curve surface, as can be seen in this case, the tool can be displaced inward until the tool comes into contact with the machining curve surface. In 13th can be the reference point C13 also as a contact point between the relocated tool T11 indicated by a dashed line and the machining curve surface S2 are designated. The distance between the evaluation point Q and the reference point C13 is defined as "Distance L13".

Während der Evaluierungspunkt Q an dem Werkzeug T11 in einer Mitte einer Vorderkante des Werkzeugs T11 in den 11 bis 13 angeordnet ist, kann der Evaluierungspunkt Q beispielsweise an einem Teil oder einem Punkt an dem Werkzeug T11 angeordnet sein, wo die Werkstückbearbeitung stattfindet, oder an einem Punkt an dem Werkzeug T11, wo der Abstand zwischen dem Werkzeug T11 und der Bearbeitungskurvenfläche S2 am kürzesten ist. Es ist jedoch anzumerken, dass dann, wenn eine bestimmte Position an dem Werkzeug als der Evaluierungspunkt Q festgelegt ist, der Evaluierungspunkt Q der Punkt ist, wo der Abstand L ausgewertet wird.During the evaluation point Q on the tool T11 in a center of a leading edge of the tool T11 in the 11th until 13th is arranged, the evaluation point may Q for example at a part or a point on the tool T11 be arranged where the workpiece machining takes place, or at a point on the tool T11 where the distance between the tool T11 and the machining curve surface S2 is the shortest. It should be noted, however, that when a certain position on the tool as the evaluation point Q is set, the evaluation point Q the point is where the distance L is evaluated.

Die 14 bis 16 zeigen eine Beziehung zwischen einem Werkzeug und einer Bearbeitungskurvenfläche S3, wenn das Werkzeug ein Eckradiusfräser (nachfolgend als „Werkzeug T12“ bezeichnet) ist. 14 zeigt das Werkzeug T12 entfernt von der Bearbeitungskurvenfläche S3. In 14 ist ein Punkt auf der Bearbeitungskurvenfläche S3, wo ein Abstand zwischen dem Werkzeug T12 und der Bearbeitungskurvenfläche S3 am kürzesten ist, als ein Referenzpunkt C21 definiert. Ein Abstand zwischen dem Evaluierungspunkt Q und dem Referenzpunkt C21 ist als „Abstand L21“ definiert.the 14th until 16 show a relationship between a tool and a machining curve surface S3 if the tool is a corner radius cutter (hereinafter referred to as “tool T12”). 14th shows the tool T12 away from the machining curve surface S3 . In 14th is a point on the machining curve surface S3 where there is a gap between the tool T12 and the machining curve surface S3 is shortest as a reference point C21 Are defined. A distance between the evaluation point Q and the reference point C21 is called "distance L21 " Are defined.

15 zeigt das Werkzeug T12 in Kontakt mit der Bearbeitungskurvenfläche S3. In 15 ist ein Kontaktpunkt zwischen dem Werkzeug T12 und der Bearbeitungskurvenfläche S3 als ein Referenzpunkt C22 definiert. Ein Abstand L22 zwischen dem Evaluierungspunkt Q und dem Referenzpunkt C22 ist der idealste Wert bei der Werkstückbearbeitung durch das Bearbeitungswerkzeug. 15th shows the tool T12 in contact with the machining curve surface S3 . In 15th is a contact point between the tool T12 and the machining curve surface S3 as a reference point C22 Are defined. A distance L22 between the evaluation point Q and the reference point C22 is the most ideal value when the workpiece is machined by the machining tool.

16 zeigt das Werkzeug T12, wie es sich mit der Bearbeitungskurvenfläche S3 überschneidet. In 16 ist ein Punkt auf der Bearbeitungskurvenfläche S3, wo ein Abstand zwischen dem Evaluierungspunkt Q an dem Werkzeug T12 und der Bearbeitungskurvenfläche S3 am kürzesten ist, als ein Referenzpunkt C23 definiert. Wenn sich das Werkstück mit der Bearbeitungskurvenfläche überschneidet, wie dies hier der Fall ist, kann das Werkzeug nach innen verlagert werden, bis das Werkzeug in Kontakt mit der Bearbeitungskurvenfläche gelangt. In 16 kann der Referenzpunkt C23 auch als ein Kontaktpunkt zwischen dem verlagerten Werkzeug T12, das durch eine gestrichelte Linie angegeben ist, und der Bearbeitungskurvenfläche S3 bezeichnet werden. Der Abstand zwischen dem Evaluierungspunkt Q und dem Referenzpunkt C23 ist als „Abstand L23“ definiert. 16 shows the tool T12 how about the machining curve surface S3 overlaps. In 16 is a point on the machining curve surface S3 where a distance between the evaluation point Q on the tool T12 and the machining curve surface S3 is shortest as a reference point C23 Are defined. If the workpiece intersects with the machining curve surface, as is the case here, the tool can be displaced inwards until the tool comes into contact with the machining curve surface. In 16 can be the reference point C23 also as a contact point between the relocated tool T12 indicated by a dashed line and the machining curve surface S3 are designated. The distance between the evaluation point Q and the reference point C23 is called "distance L23 " Are defined.

Während der Evaluierungspunkt Q an dem Werkzeug T12 auf der zentralen Achse des Werkzeugs T12 nahe dem Vorderende des Werkzeugs T12 in den 14 bis 16 angeordnet ist, kann der Evaluierungspunkt Q beispielsweise an einem Teil oder Punkt auf dem Werkzeug T12 angeordnet sein, wo die Werkstückbearbeitung stattfindet, oder an einem Punkt an dem Werkzeug T10, wo der Abstand zwischen dem Werkzeug T12 und der Bearbeitungskurvenfläche S3 am kürzesten ist. Es sei jedoch angemerkt, dass, nachdem eine bestimmte Position an dem Werkzeug als der Evaluierungspunkt Q festgelegt ist, der festgelegte Evaluierungspunkt Q der Punkt ist, wo der Abstand L ausgewertet wird.During the evaluation point Q on the tool T12 on the central axis of the tool T12 near the front end of the tool T12 in the 14th until 16 is arranged, the evaluation point may Q for example at a part or point on the tool T12 be arranged where the workpiece machining takes place, or at a point on the tool T10 where the distance between the tool T12 and the machining curve surface S3 is the shortest. It should be noted, however, that after a certain position on the tool as the evaluation point Q is set, the set evaluation point Q the point is where the distance L is evaluated.

Dann evaluiert die Kurvenpfadevaluierungseinheit 108 jeden der Kurvenpfade TP, die durch die Kurvenpfaderzeugungseinheit 104 in Übereinstimmung mit den Werkzeugdaten, Gestaltdaten und den Werten, die den zulässigen Bereich definieren und die in die Eingabeeinheit für zulässige Abmessungstoleranzen eingegeben wurden (Schritt S106). Eine Vielzahl von Evaluationspunkten auf den Kurvenpfaden TP1 bis TP6 wird zuerst bestimmt. Dann wird, wie in den 8 bis 16 gezeigt, das basierend auf den in Schritt 5 eingegebenen Werkzeugdaten erzeugte Werkzeug so angeordnet, dass es jeden der bestimmten Evaluationspunkte Q entspricht. Idealerweise sollte das Werkzeug, wenn es an dem Evaluierungspunkt Q angeordnet ist, in Kontakt mit der Bearbeitungskurvenfläche der Endgestalt stehen.Then the curve path evaluation unit evaluates 108 each of the curve paths TP made by the curved path generation unit 104 in accordance with the tool data, shape data and the values defining the allowable area and inputted to the allowable dimensional tolerance input unit (step S106). A multitude of evaluation points on the curve paths TP1 until TP6 is determined first. Then, as in the 8th until 16 based on the entered in step 5 Tool data generated tool arranged in such a way that it contains each of the specified evaluation points Q is equivalent to. Ideally, the tool should be when it is at the evaluation point Q is arranged to be in contact with the machining curve surface of the final shape.

Die Kurvenpfadevaluierungseinheit 108 evaluiert für den Kurvenpfad TP, ob ein Wert jedes Abstands L in dem zulässigen Bereich liegt. Wenn einer der für den Kurvenpfad TP bestimmten Abstände L den zulässigen Bereich für den Abstand L übersteigt, muss der gegebene Kurvenpfad TP geändert werden, und es folgt Schritt S107 (nachfolgend beschrieben). Wenn die für jeden Kurvenpfad TP bestimmten Abstände L innerhalb des zulässigen Bereichs für den Abstand L liegen, folgt Schritt S108 (nachfolgend beschrieben).The curve path evaluation unit 108 evaluated for the curve path TP whether a value of each distance L is in the allowable range. If one of the for the curve path TP certain distances L exceeds the permissible range for the distance L, the given curve path must TP are changed, and step S107 (described below) follows. If the for every curve path TP predetermined distances L are within the allowable range for the distance L, step S108 (described below) follows.

Wenn einer der Abstandswerte L den zulässigen Bereich für den Abstand L in der Kurvenpfadevaluierungseinheit 108 übersteigt, d. h. bei „NEIN“ bei Schritt S106, wird der Werkzeugpfad geändert (Schritt S107). Unter Bezugnahme auf 17 wird hier eine Werkzeugpfadänderungsoperation beschrieben, die einen Fall zum Beispiel nimmt, in dem das Werkzeug T10 der Kugelfräser ist, der in einem Zustand ist, wie er in 10 gezeigt ist, wo das Werkzeug sich mit der Bearbeitungskurvenfläche S1 überschneidet.When one of the distance values L is the allowable range for the distance L in the curved path evaluation unit 108 exceeds, that is, if “NO” in step S106, the tool path is changed (step S107). With reference to 17th Here will be described a tool path changing operation taking, for example, a case where the tool T10 the ball end mill is in a state as shown in 10 it is shown where the tool meets the machining curve surface S1 overlaps.

17 zeigt ein Beispiel des Verlagerns des Evaluationspunkts, um es dem Werkzeug T10 zu ermöglichen, in Kontakt mit der Bearbeitungskurvenfläche S1 zu gelangen, um einen neuen Befehlspunkt hinzuzufügen. Die Werkzeugpfadänderungseinheit 109 extrahiert zuerst aus den Evaluationspunkten Q auf dem Kurvenpfad TP, der zu ändern ist und der in Schritt S106 erhalten wurde, den Evaluierungspunkt Q der am meisten von dem zulässigen Bereich für den Abstand L abweicht. In 17 ist der Kurvenpfad TP3 zu ändern, und von dem Evaluierungspunkt Q3 auf dem Kurvenpfad TP3 wird angenommen, dass er am meisten von dem zulässigen Bereich für den Abstand L3 abweicht. 17th shows an example of relocating the evaluation point around it to the tool T10 to allow in contact with the machining cam surface S1 to add a new command point. The toolpath change unit 109 first extracts from the evaluation points Q on the curve path TP to be changed and obtained in step S106 becomes the evaluation point Q which deviates most from the permissible range for the distance L. In 17th is the curve path TP3 to change, and from the evaluation point Q3 on the curve path TP3 it is believed to be most of the allowable range for the distance L3 deviates.

Dann wird der Evaluierungspunkt Q3 verlagert, sodass das Werkzeug T10 in Kontakt mit der Bearbeitungskurvenfläche S1 gelangt. Der verlagerte Evaluierungspunkt wird hier als der neue Befehlspunkt R1 gesetzt. Der Evaluierungspunkt Q3 kann hier entlang einer Werkzeugachse, entlang einer Normalen der Bearbeitungskurvenfläche an dem Referenzpunkt auf der Bearbeitungskurvenfläche bei an dem Evaluierungspunkt Q3 angeordneten Werkzeug oder in jede andere Richtung verlagert werden.Then the evaluation point Q3 relocated so that the tool T10 in contact with the machining curve surface S1 got. The relocated evaluation point is used here as the new command point R1 set. The evaluation point Q3 can here along a tool axis, along a normal to the machining curve surface at the reference point on the machining curve surface at the evaluation point Q3 arranged tool or in any other direction.

Das Verlagern des Evaluierungspunkt Q3 ist so, dass das Werkzeug T10 in Kontakt mit der Bearbeitungskurvenfläche S1 ist, kann durch Wiederholen eines Verfahrens zum Verlagern um nur eine sehr kleine Strecke in eine gegebene Richtung und anschließendes Berechnen des Abstands L3 an dem verlagerten Evaluierungspunkt Q erfolgen, bis der Abstand L3 in den zulässigen Bereich für den Abstand L3 fällt.Moving the evaluation point Q3 is such that the tool T10 in contact with the machining curve surface S1 is can by repeating a procedure of moving only a very small distance in a given direction and then calculating the distance L3 at the relocated evaluation point Q take place until the distance L3 within the allowable range for the distance L3 falls.

Die Werkzeugpfadänderungseinheit 109 fügt dem in der Werkzeugpfadspeichereinheit 103 in Schritt S103 gespeicherten Werkzeugpfad den verlagerten Evaluierungspunkt Q3 hinzu, der als der neue Befehlspunkt R1 gesetzt wurde, wo der Abstand L3 innerhalb des zulässigen Bereichs für den Abstand L3 fällt. Der Werkzeugpfad wird somit geändert. Dies führt zu einer verbesserten Genauigkeit im Ergebnis der Bearbeitung des Werkstücks.The toolpath change unit 109 adds to that in the toolpath storage unit 103 the relocated evaluation point stored in step S103 Q3 added that as the new command point R1 was put where the distance L3 within the allowable range for the distance L3 falls. The tool path is thus changed. This leads to an improved accuracy in the result of machining the workpiece.

Der geänderte Werkzeugpfad wird in der Werkzeugpfadspeichereinheit 103 gespeichert. 18 zeigt den geänderten Werkzeugpfad, der durch Hinzufügen des neuen Befehlspunkts R1 zu den Befehlspunkten P1 bis P6 in Schritt S107 erhalten wurde. Nach Ausführen des Schritts S107 wird zu Schritt S104 zurückgegangen und der Prozess wiederholt. In diesem Fall kann der bei Schritt S105 gezeigte Prozess weggelassen werden.The changed tool path is stored in the tool path storage unit 103 saved. 18th shows the changed toolpath created by adding the new command point R1 to the command points P1 to P6 has been obtained in step S107. After step S107 has been carried out, the system returns to step S104 and the process is repeated. In this case, the process shown in step S105 can be omitted.

Wenn die Werkzeugpfadänderung abgeschlossen ist, wobei der Abstand L3 an jedem Evaluierungspunkt Q innerhalb des zulässigen Bereichs für den Abstand L3 in dem in Schritt S106 gezeigten Prozess liegt, wird der geänderte Werkzeugpfad in der Werkzeugpfadspeichereinheit 103 gespeichert. Dann erzeugt die Ausgabeeinheit für das umgewandelte Bearbeitungsprogramm 110 ein geändertes Bearbeitungsprogramm aus dem in der Werkzeugpfadspeichereinheit 103 gespeicherten Pfad in Übereinstimmung mit dem vorbestimmten Umwandlungsverfahren, und nach dieser Umwandlung gibt sie das geänderte Bearbeitungsprogramm aus der Bearbeitungsprogrammumwandlungsvorrichtung 100 aus (Schritt S108).When the toolpath change is complete, taking the distance L3 at each evaluation point Q within the allowable range for the distance L3 is in the process shown in step S106, the changed tool path is stored in the tool path storage unit 103 saved. Then the output unit generates for the converted machining program 110 a modified machining program from the one in the tool path storage unit 103 stored path in accordance with the predetermined conversion method, and after this conversion, outputs the changed machining program from the machining program converting device 100 off (step S108).

Der Prozess endet, wenn die Ausführung des Schritts S108 endet. Das umgewandelte Bearbeitungsprogramm, das ausgegeben wurde, wird in die numerische Steuerung 111 eingegeben, und das Werkstück wird bearbeitet. Während die Schritte S106 bis S108 für den Fall beschrieben wurden, in dem sich das Werkzeug T10 als der Kugelfräser mit der Bearbeitungskurvenfläche S1 überschneidet, gilt das gleiche auch für die anderen Fälle.The process ends when the execution of step S108 ends. The converted machining program that has been output is entered into the numerical control 111 is entered and the workpiece is machined. While steps S106 to S108 have been described for the case in which the tool T10 than the spherical milling cutter with the machining curve surface S1 overlaps, the same applies to the other cases.

Die obige Bearbeitungsprogrammumwandlungsvorrichtung gemäß der ersten Ausführungsform ändert den Werkzeugpfad so, dass der Abstand L zwischen dem Evaluierungspunkt und dem Referenzpunkt in den zulässigen Bereich für den Abstand L fällt, und sie ermöglicht somit die verbesserte Bearbeitungsgenauigkeit im Ergebnis der Bearbeitung des Werkstücks.The above machining program converting device according to the first embodiment changes the tool path so that the distance L between the evaluation point and the reference point falls within the allowable range for the distance L, and thus enables the improved machining accuracy as a result of machining the workpiece.

Da der neue Befehlspunkt als ein Ergebnis der Verlagerung lediglich des Evaluierungspunkt hinzugefügt wird, wo der Abstand L den zulässigen Bereich für den Abstand L übersteigt, können die hinzuzufügenden Befehlspunkte auf eine benötigte Menge reduziert werden. Deshalb ist eine langsame Prozessierung aufgrund von unnötig vielen Daten in dem Programm vermeidbar.Since the new command point is added as a result of the displacement of only the evaluation point where the distance L exceeds the allowable range for the distance L, the command points to be added can be reduced to a required amount. Therefore, slow processing due to an unnecessarily large amount of data in the program can be avoided.

Zweite Ausführungsform.Second embodiment.

Eine Konfiguration der Bearbeitungsprogrammumwandlungsvorrichtung 100 gemäß der zweiten Ausführungsform ist der Konfiguration der Bearbeitungsprogrammumwandlungsvorrichtung 100 gemäß der ersten Ausführungsform gleich und wird deshalb nicht beschrieben. Die Bearbeitungsprogrammumwandlungsvorrichtung 100 gemäß der zweiten Ausführungsform arbeitet gemäß einem in 19 gezeigten Flussdiagramm.A configuration of the machining program conversion device 100 according to the second embodiment is the configuration of the machining program converting device 100 according to the first embodiment are the same and therefore will not be described. The machining program conversion device 100 according to the second embodiment operates according to an in 19th flowchart shown.

Die Schritte S201 bis S203 sind den Schritten S101 bis S103 der ersten Ausführungsform im Hinblick auf die Abarbeitung gleich. Im Vergleich zur ersten Ausführungsform weist die zweite Ausführungsform ein anderes Kurvenpfaderzeugungsverfahren auf.Steps S201 to S203 are the same as steps S101 to S103 of the first embodiment in terms of processing. Compared to the first embodiment, the second embodiment has a different curve path generation method.

20 zeigt ein Beispiel eines Werkzeugpfads, den die Bearbeitungsprogrammumwandlungsvorrichtung von einem Bearbeitungsprogramm gelesen hat. Der in 20 gezeigte Werkzeugpfad umfasst Befehlspunkte P11 bis P17 und gerade Linien, die jeweils zwischen Befehlspunkten liegen. Unter den in Schritt S204 der vorliegenden (zweiten) Ausführungsform erzeugten Befehlspunkten gibt es einen ersten, einen zweiten und einem dritten Befehlspunkt und einen Kurvenpfad zwischen dem ersten Befehlspunkt und dem dritten Befehlspunkt, welche als Endpunkte dienen. 21 zeigt einen Kurvenpfad TP11, der als ein Beispiel zwischen P13 und P15 erzeugt wurde, wobei die Befehlspunkte P13, P14 und P15 der erste Befehlspunkt, der zweite Befehlspunkt bzw. der dritte Befehlspunkt sind. Dann werden die Werkzeugdaten von außerhalb in die Werkzeugdateneingabeeinheit 105 eingegeben, und die Gestaltdaten werden von außerhalb in die Gestaltdateneingabeeinheit 106 eingegeben (Schritt S205). 20th Fig. 13 shows an example of a tool path that the machining program converting device has read from a machining program. The in 20th toolpath shown includes command points P11 to P17 and straight lines each lying between command points. Among the command points generated in step S204 of the present (second) embodiment, there are first, second, and third command points and a curved path between the first command point and the third command point, which serve as end points. 21 shows a curve path TP11 which was generated as an example between P13 and P15, where the command points P13, P14 and P15 are the first command point, the second command point and the third command point, respectively. The tool data are then entered from outside into the tool data input unit 105 is input, and the shape data is entered into the shape data input unit from outside 106 is input (step S205).

Die Kurvenpfadevaluierungseinheit 108 evaluiert den Abstand L an jedem von einer Mehrzahl von Evaluationspunkten, die auf dem Kurvenpfad TP11 in Übereinstimmung mit den Werkzeugdaten, den Gestaltdaten und den Werten, die einen zulässigen Bereich angeben und in die Eingabeeinheit für zulässige Abmessungstoleranzen eingegeben wurden (Schritt S206). Die Evaluierung wird, in anderen Worten, dahingehend durchgeführt, ob der Abstand L innerhalb des zulässigen Bereichs für den Abstand L liegt oder diesen übersteigt. Wenn jeder Abstand L1 innerhalb des zulässigen Bereichs für den Abstand L liegt, wird der Befehlspunkt P14 hier aus dem in der Werkzeugpfadspeichereinheit 103 gespeicherten Werkzeugpfad gelöscht (Schritt S207). Da der Kurvenpfad in diesem Fall zu ändern ist, wird der Kurvenpfad TP11 ein Kurvenpfadbereich, der schließlich umgewandelt und ausgegeben wird (Schritt S208).The curve path evaluation unit 108 evaluates the distance L at each of a plurality of evaluation points on the curve path TP11 in accordance with the tool data, the shape data and the values indicating an allowable range and inputted to the allowable dimensional tolerance input unit (step S206). In other words, the evaluation is made as to whether the distance L is within or exceeds the allowable range for the distance L. When each distance L1 is within the allowable range for the distance L, it becomes the command point P14 here from the one in the toolpath storage unit 103 stored tool path is deleted (step S207). Since the curve path is to be changed in this case, the curve path becomes TP11 a curved path area which is finally converted and output (step S208).

22 ist ein Beispiel einer Endgestalt, die durch Bearbeiten unter Verwendung des Werkzeugpfads erhalten werden soll. Die in 22 gezeigte Endgestalt M2 ist basierend auf den Gestaltdaten erzeugt, die durch die Gestaltdateneingabeeinheit 106 eingegeben wurden, und umfasst eine Bearbeitungskurvenfläche S4. 22nd Figure 13 is an example of a final shape to be obtained by editing using the tool path. In the 22nd The final shape M2 shown is generated based on the shape data inputted by the shape data input unit 106 have been entered, and includes a machining curve surface S4.

Eine konkrete Beschreibung von Schritt S206 erfolgt unter Bezugnahme auf die 23 bis 25. 23 ist eine Schnittansicht, die einen Zustand zeigt, in dem der Kurvenpfad so angeordnet ist, dass er der Endgestalt M2 entspricht, wobei Evaluationspunkte Q11 bis Q14 beispielhaft an dem Kurvenpfad TP11 gesetzt sind. 24 zeigt ein Werkzeug, das mit der Bearbeitungskurvenfläche S4 in Kontakt ist, wenn das Werkzeug der Kugelfräser T10 ist. In 24 ist ein Kontaktpunkt zwischen dem Werkzeug T10 und der Bearbeitungskurvenfläche S4 als ein Referenzpunkt C31 definiert. In 24 ist das Werkzeug an dem Evaluierungspunkt Q12 auf dem Kurvenpfad TP11 angeordnet, wobei zwischen dem Evaluierungspunkt Q12 und dem Referenzpunkt C31 ein Abstand L32 besteht.A concrete description of step S206 will be given with reference to FIG 23 until 25th . 23 Fig. 13 is a sectional view showing a state in which the curved path is arranged to correspond to the final shape M2, with evaluation points Q11 to Q14 on the curved path as an example TP11 are set. 24 Fig. 13 shows a tool that is in contact with the machining cam surface S4 when the tool is the spherical mill T10 is. In 24 is a contact point between the tool T10 and the machining curve surface S4 is defined as a reference point C31. In 24 is the tool at the evaluation point Q12 on the curve path TP11 arranged, being between the evaluation point Q12 and the reference point C31 is a distance L32.

Die 24 bis 26 zeigen jeweils eine Beziehung zwischen dem Werkzeug T10, welches der Kugelfräser ist (nachfolgend als „Werkzeug T10“ bezeichnet), und der Bearbeitungskurvenfläche S4. Das Werkzeug TP10 ist an dem Evaluierungspunkt Q12 auf dem Kurvenpfad TP11 angeordnet. 24 zeigt das Werkzeug T10 entfernt von der Bearbeitungskurvenfläche S4. In 24 ist ein Punkt auf der Bearbeitungskurvenfläche S4, wo ein Abstand zwischen dem Werkzeug T10 und der Bearbeitungskurvenfläche S4 am kürzesten ist, als ein Referenzpunkt C31 definiert. Ein Abstand zwischen dem Evaluierungspunkt Q12 und dem Referenzpunkt C31 ist hier als „Abstand L31“ definiert.the 24 until 26th each show a relationship between the tool T10 , which is the spherical milling cutter (hereinafter referred to as “tool T10”), and the machining curve surface S4. The tool TP10 is at the evaluation point Q12 on the curve path TP11 arranged. 24 shows the tool T10 away from the machining curve surface S4. In 24 is a point on the machining curve surface S4 where there is a distance between the tool T10 and the machining curve surface S4 is shortest is defined as a reference point C31. A distance between the evaluation point Q12 and the reference point C31 is defined here as “distance L31”.

25 zeigt das Werkzeug T10 in Kontakt mit der Bearbeitungskurvenfläche S4. In 25 ist der Referenzpunkt C32 der Kontaktpunkt zwischen dem Werkzeug T10 und der Bearbeitungskurvenfläche S4. Der Abstand L32 zwischen dem Evaluierungspunkt Q12 und dem Referenzpunkt C32 ist der beste Wert bei der Werkstückbearbeitung durch das Bearbeitungswerkzeug. 25th shows the tool T10 in contact with the machining curve surface S4. In 25th the reference point C32 is the contact point between the tool T10 and the machining curve surface S4. The distance L32 between the evaluation point Q12 and the reference point C32 is the best value when the workpiece is machined by the machining tool.

26 zeigt das Werkzeug T10, wie es mit der Bearbeitungskurvenfläche S4 überlappt. In 26 ist ein Punkt auf der Bearbeitungskurvenfläche S4, wo ein Abstand zwischen dem Evaluierungspunkt Q12 an dem Werkzeug T10 und der Bearbeitungskurvenfläche S4 am kürzesten ist, als ein Referenzpunkt C31 definiert. Wenn sich das Werkzeug mit der Bearbeitungskurvenfläche schneidet, wie dies in diesem Fall ersichtlich ist, kann das Werkzeug verlagert werden, bis das Werkzeug in Kontakt mit der Bearbeitungskurvenfläche gelangt. In 26 kann der Bezugspunkt C31 auch als ein Kontaktpunkt zwischen dem verlagerten Werkzeug T10, welches durch eine gestrichelte Linie dargestellt ist, und der Bearbeitungskurvenfläche S4 bezeichnet werden. Der Abstand zwischen dem Evaluierungspunkt Q12 und dem Referenzpunkt C33 ist hier als ein „Abstand L33“ definiert. 26th shows the tool T10 as it overlaps with the machining curve surface S4. In 26th is a point on the Machining curve surface S4 where a distance between the evaluation point Q12 on the tool T10 and the machining curve surface S4 is shortest is defined as a reference point C31. When the tool intersects with the machining curve surface, as can be seen in this case, the tool can be displaced until the tool comes into contact with the machining curve surface. In 26th The reference point C31 can also be used as a contact point between the displaced tool T10 represented by a broken line and the machining curve surface S4. The distance between the evaluation point Q12 and the reference point C33 is defined here as a “distance L33”.

Wenn jeder Abstand L (jeder der Abstände L31 bis L33) innerhalb des zulässigen Bereichs für den Abstand L in der Kurvenpfadevaluierungseinheit 108 liegt, wird der Befehlspunkt P14, welcher der zweite Befehlspunkt ist, von dem in der Werkzeugpfadspeichereinheit 103 gespeicherten Werkzeugpfad gelöscht (Schritt S207). Da der Kurvenpfad in diesem Fall zu ändern ist, wird der Kurvenpfad TP11 der Werkzeugpfadbereich, der schließlich umgewandelt und ausgegeben wird (Schritt S208). 27 ist ein Beispiel einer Endgestalt des in der vorliegenden (zweiten) Ausführungsform geänderten Werkzeugpfads.When each distance L (each of the distances L31 to L33) is within the allowable range for the distance L in the curved path evaluation unit 108 becomes the command point P14 which is the second command point from that in the tool path storage unit 103 stored tool path is deleted (step S207). Since the curve path is to be changed in this case, the curve path becomes TP11 the tool path area that will eventually be converted and output (step S208). 27 Fig. 13 is an example of a final shape of the tool path changed in the present (second) embodiment.

Wenn es auch nur einen Evaluierungspunkt aus der Mehrzahl von Evaluationspunkten Q gibt, die auf dem Kurvenpfad TP11 gesetzt sind, wo der Abstand L den zulässigen Bereich für den Abstand L in der Kurvenpfadevaluierungseinheit 108 übersteigt, wird der Befehlspunkt P14 nicht gelöscht, und es wird ein Kurvenpfad zwischen den Befehlspunkten P13 und P14 und ein Kurvenpfad zwischen P14 und P15 erzeugt (Schritt S209).Even if there is only one evaluation point out of the plurality of evaluation points Q there that on the curve path TP11 are set where the distance L is the allowable range for the distance L in the curved path evaluation unit 108 exceeds the command point P14 not deleted, and a curve path is created between the command points P13 and P14 and a curved path between P14 and P15 is generated (step S209).

Dann evaluiert die Kurvenpfadevaluierungseinheit 108, wie in dem Ablauf zwischen Schritt S106 bis S108 der ersten Ausführungsform, jeden der durch die Kurvenpfaderzeugungseinheit 104 erzeugten Kurvenpfade, in dem bestimmt wird, ob ein Wert jedes Abstands L innerhalb des zulässigen Bereichs liegt, und zwar in Übereinstimmung mit den Werkzeugdaten, den Gestaltdaten und den Werten, die den zulässigen Bereich definieren und über die Eingabeeinheit für zulässige Abmessungstoleranzen eingegeben wurden (Schritt S210). Wenn einer der Abstandswerte L den zulässigen Bereich für den Abstand L in der Kurvenpfadevaluierungseinheit 108 übersteigt, d. h. bei „NEIN“ in Schritt S210, wird der Werkzeugpfad geändert (Schritt S211). Die Pfadänderungsoperation ist hier die gleiche wie in der ersten Ausführungsform.Then the curve path evaluation unit evaluates 108 as in the process between steps S106 to S108 of the first embodiment, each of the by the curved path generation unit 104 generated curve paths in which it is determined whether a value of each distance L is within the allowable range in accordance with the tool data, the shape data and the values defining the allowable range and entered via the input unit for allowable dimensional tolerances (step S210). When one of the distance values L is the allowable range for the distance L in the curved path evaluation unit 108 exceeds, that is, if “NO” in step S210, the tool path is changed (step S211). The path change operation here is the same as in the first embodiment.

Wenn die Werkzeugpfadänderung abgeschlossen ist, sodass der Abstand L an jedem der Evaluationspunkte Q innerhalb des zulässigen Bereichs für den Abstand L in dem in Schritt S210 gezeigten Prozess liegt, wird der geänderte Werkzeugpfad in der Werkzeugpfadspeichereinheit 103 gespeichert. Dann erzeugt die Ausgabeeinheit für das umgewandelte Bearbeitungsprogramm 110 ein geändertes Bearbeitungsprogramm aus dem in der Werkzeugpfadspeichereinheit 103 gespeicherten Werkzeugpfad, in Übereinstimmung mit einem vorbestimmten Umwandlungsverfahren, und nach dieser Umwandlung gibt sie das geänderte Bearbeitungsprogramm von der Bearbeitungsprogrammumwandlungsvorrichtung 100 aus (Schritt S208).When the toolpath change is complete, so the distance L at each of the evaluation points Q is within the allowable range for the distance L in the process shown in step S210, the changed tool path is stored in the tool path storage unit 103 saved. Then the output unit generates for the converted machining program 110 a modified machining program from the one in the tool path storage unit 103 stored tool path in accordance with a predetermined conversion method, and after this conversion, gives the changed machining program from the machining program converting device 100 off (step S208).

Die obige Bearbeitungsprogrammumwandlungsvorrichtung gemäß der zweiten Ausführungsform löscht den bestehenden mittleren Befehlspunkt, der einer der drei einander benachbarten Befehlspunkte ist, aus dem Werkzeugpfad, wenn der Abstand L zwischen jedem Referenzpunkt und dem entsprechenden Evaluationspunkt, der auf dem Kurvenpfad zwischen den zwei Endpunkten vorgesehen ist, innerhalb des zulässigen Bereichs für den Abstand L liegt. Deshalb kann das Bearbeitungsprogramm eine reduzierte Datenmenge aufweisen, und verbesserte Arbeitseffizienz wird bereitgestellt. Ferner kann ein Ergebnis der Bearbeitung eines Werkstücks die gewünschte Bearbeitungsgenauigkeit erreichen.The above machining program converting device according to the second embodiment deletes the existing central command point, which is one of the three adjacent command points, from the tool path when the distance L between each reference point and the corresponding evaluation point provided on the curve path between the two end points is within of the allowable range for the distance L. Therefore, the machining program can have a reduced amount of data, and improved work efficiency is provided. Furthermore, a result of machining a workpiece can achieve desired machining accuracy.

Dritte Ausführungsform.Third embodiment.

Unter Bezugnahme auf die Zeichnungen wird nun eine numerische Steuerung gemäß der dritten Ausführungsform beschrieben. Es ist zu beachten, dass diese Ausführungsform nicht einschränkend ist.A numerical controller according to the third embodiment will now be described with reference to the drawings. It should be noted that this embodiment is not restrictive.

Die numerische Steuervorrichtung 200 umfasst: eine Bearbeitungsprogrammeingabeeinheit 201, welche ein Bearbeitungsprogramm von außerhalb erhält, einen Bearbeitungsprogrammanalysierer 202, der das eingegebene Bearbeitungsprogramm analysiert und einen Werkzeugpfad bestimmt; eine Werkzeugpfadspeichereinheit 203, die den durch den Bearbeitungsprogrammanalysierer 202 bestimmten Werkzeugpfad speichert; eine Kurvenpfaderzeugungseinheit 204, die einen Kurvenpfad in Übereinstimmung mit dem in der Werkzeugpfadspeichereinheit 203 gespeicherten Werkzeugpfad erzeugt; eine Werkzeugdateneingabeeinheit 205, wo Werkzeugdaten eingegeben werden; eine Gestaltdateneingabeeinheit 206, wo Daten zu einer Gestalt eingegeben werden, die nach dem Bearbeiten eines Werkstücks erhalten werden soll; eine Eingabeeinheit für zulässige Abmessungstoleranzen 207, wo ein zulässiger Bereich für einen Abstand zwischen einem Punkt auf dem Kurvenpfad und einer Bearbeitungskurvenfläche eingegeben wird, wobei der Punkt zur Bestimmung vorgesehen ist, ob sich ein Werkstück entlang der Bearbeitungskurvenfläche an dem Werkstück bewegt; eine Kurvenpfadevaluierungseinheit 208, die bestimmt, ob der Abstand zwischen dem Punkt auf dem Kurvenpfad und der Bearbeitungskurvenfläche innerhalb des zulässigen Bereichs liegt oder nicht; eine Werkzeugpfadänderungseinheit 209, die den Werkzeugpfad ändert; und einen Kurvenpfadinterpolierer 210. Wenn ein Bearbeitungsprogramm von außerhalb eingegeben wird, analysiert die numerische Steuerung 200 gemäß der vorliegenden Ausführungsform das Bearbeitungsprogramm und erzeugt einen Werkzeugpfad und gibt den Werkzeugpfad an eine Motortreibereinheit 211 aus.The numerical control device 200 comprises: a machining program input unit 201 that receives a machining program from outside, a machining program analyzer 202 which analyzes the input machining program and determines a tool path; a tool path storage unit 203 which the machining program analyzer 202 saves specific toolpath; a curved path generation unit 204 showing a curve path in correspondence with that in the tool path storage unit 203 saved toolpath generated; a tool data input unit 205 where tool data is entered; a shape data input unit 206 where data is entered on a shape to be obtained after machining a workpiece; an input unit for permissible dimensional tolerances 207 where an allowable range is entered for a distance between a point on the curve path and a machining curve surface, the point being for determining whether a workpiece is moving along the machining curve surface on the workpiece; one Curve path evaluation unit 208 that determines whether or not the distance between the point on the curve path and the machining curve surface is within the allowable range; a tool path changing unit 209 that changes the toolpath; and a curve path interpolator 210 . When a machining program is entered from outside, the numerical control analyzes 200 According to the present embodiment, the machining program and generates a tool path and outputs the tool path to a motor drive unit 211.

Es wird eine Prozedur beschrieben, die die in 28 gezeigte numerische Steuervorrichtung 200 gemäß der dritten Ausführungsform zur Erzeugung eines Werkzeugpfads aufweist. 29 ist ein Flussdiagramm, welches ein Beispiel des Betriebs der numerischen Steuerung 200 gemäß der dritten Ausführungsform zeigt. Das Flussdiagramm der 29 ist eine Bearbeitungsprozedur, die die numerische Steuerung 200 zur Erzeugung des Werkzeugpfads hat. Die Prozedur zwischen Schritt S301 und Schritt S307 in 29 ist gleich der Bearbeitungsprozedur zwischen Schritt S101 und Schritt S107 der ersten Ausführungsform.A procedure is described that complies with the 28 numerical control device shown 200 according to the third embodiment for generating a tool path. 29 Fig. 13 is a flowchart showing an example of the operation of the numerical controller 200 according to the third embodiment. The flowchart of the 29 is a machining procedure that the numerical control 200 to generate the toolpath. The procedure between step S301 and step S307 in FIG 29 is the same as the processing procedure between step S101 and step S107 of the first embodiment.

Wenn die Abstände L an den jeweiligen Evaluationspunkten Q in Schritt S306 innerhalb des zulässigen Bereichs für den Abstand L liegen, gibt die Kurvenpfaderzeugungseinheit 204 diese erzeugten Kurvenpfade an den Kurvenpfadinterpolierer 210 weiter.When the distances L at the respective evaluation points Q are within the allowable range for the distance L in step S306, the curved path generation unit outputs 204 these generated curve paths to the curve path interpolator 210 further.

Dann führt der Kurvenpfadinterpolierer 210 der numerischen Steuerung 200 Kurvenpfadinterpolationen durch (Schritt S308). Insbesondere bestimmt der Kurvenpfadinterpolierer 210 eine Werkzeugbewegungsstrecke pro Interpolationsperiode, welche eine Zeiteinheit ist, und interpoliert Interpolationspunkte auf den von der Kurvenpfaderzeugungseinheit 204 erhaltenen Kurvenpfaden. Die Kurvenpfade, die die Interpolationen in Schritt S308 durchlaufen haben, bilden den endgültigen Kurvenpfad. Beim Beenden der Erzeugung der Interpolationspunkte gibt der Kurvenpfadinterpolierer 210 die Interpolationspunkte an die externe Motortreibereinheit 211 weiter.Then the curve path interpolator performs 210 the numerical control 200 Curve path interpolations (step S308). In particular, the curve path interpolator determines 210 a tool moving distance per interpolation period, which is a unit of time, and interpolates interpolation points on those from the curved path generation unit 204 obtained curve paths. The curve paths that the interpolations have traversed in step S308 form the final curve path. When the generation of the interpolation points is finished, the curve path interpolator gives 210 the interpolation points to the external motor drive unit 211.

Mit der obigen Bearbeitungsprozedur erzeugt die numerische Steuerung 200 gemäß der dritten Ausführungsform den Werkzeugpfad.With the above machining procedure, the numerical control generates 200 according to the third embodiment the tool path.

Die numerische Steuerung gemäß der dritten Ausführungsform ist zur numerischen Steuerung in Übereinstimmung mit dem geänderten Werkzeugpfad in der Lage, sodass ein Bearbeitungsprogramm nicht einmal umgewandelt und danach ausgegeben werden muss. Ferner kann das bearbeitete Werkstück die gewünschte Bearbeitungsgenauigkeit erreichen, sodass keine Nachbearbeitung stattfindet und verbesserte Arbeitseffizienz bereitgestellt wird.The numerical control according to the third embodiment is capable of numerical control in accordance with the changed tool path, so that a machining program does not even need to be converted and then output. Furthermore, the machined workpiece can achieve the desired machining accuracy, so that no post-machining takes place and improved work efficiency is provided.

Vierte Ausführungsform.Fourth embodiment.

Unter Bezugnahme auf die Zeichnung wird nun eine Vorrichtung für maschinelles Lernen gemäß der vierten Ausführungsform im Detail beschrieben. Es ist zu beachten, dass diese Ausführungsform nicht beschränkend ist.A machine learning apparatus according to the fourth embodiment will now be described in detail with reference to the drawings. It should be noted that this embodiment is not restrictive.

30 zeigt ein Konfigurationsbeispiel der Vorrichtung für maschinelles Lernen gemäß der vierten Ausführungsform. Ein in 30 gezeigtes Bearbeitungswerkzeug 401 bearbeitet ein Werkstück unter der Steuerung der numerischen Steuerung 111 der ersten Ausführungsform. Die numerische Steuerung 111 und das Bearbeitungswerkzeug 401 bilden ein numerisch gesteuertes Bearbeitungswerkzeug. Wie in der ersten Ausführungsform wird ein umgewandeltes Bearbeitungsprogramm, das von der Bearbeitungsprogrammumwandlungsvorrichtung 100 ausgegeben wird, in die numerische Steuerung 111 eingegeben. 30th FIG. 13 shows a configuration example of the machine learning apparatus according to the fourth embodiment. An in 30th shown machining tool 401 machines a workpiece under the control of the numerical control 111 the first embodiment. The numerical control 111 and the editing tool 401 form a numerically controlled machining tool. As in the first embodiment, a converted machining program generated by the machining program converting device 100 is output to the numerical control 111 entered.

Die Vorrichtung für maschinelles Lernen 410 gemäß der vorliegenden Ausführungsform verwendet Informationen, die eine Bearbeitungsgenauigkeit an einem Ergebnis der Bearbeitung durch das Bearbeitungswerkzeug 401 angeben, und Informationen, die von der Bearbeitungsprogrammumwandlungsvorrichtung 100 erhalten werden, zum Lernen einer zulässigen Abmessungstoleranz, die es ermöglicht, dass ein Ergebnis der Bearbeitung durch das Bearbeitungswerkzeug 401 die gewünschte Bearbeitungsgenauigkeit erreicht. Die zulässige Abmessungstoleranz ist ein zulässiger Bereich für den Abstand L. Wie bei der ersten Ausführungsform beschrieben, ist der Abstand L ein Abstand zwischen einem Evaluierungspunkt auf einem Kurvenpfad und einem Referenzpunkt. Der Referenzpunkt ist ein Kontaktpunkt zwischen einem Werkzeug und einer Bearbeitungskurvenfläche, die einer Endgestalt des Werkstücks entspricht. Der Evaluierungspunkt ist zur Bestimmung vorgesehen, ob sich das Werkzeug entlang der Bearbeitungskurvenfläche bewegt, wenn es dem Kurvenpfad folgt, der zwischen einer Mehrzahl von Befehlspunkten auf einem Werkzeugpfad folgt. Das Ergebnis der Bearbeitung durch das Bearbeitungswerkzeug 401 ist ein Ergebnis der Bearbeitung basierend auf dem Bearbeitungsprogramm, dessen Werkzeugpfad so geändert wurde, dass der Abstand L innerhalb der zulässigen Abmessungstoleranz liegt.The machine learning device 410 According to the present embodiment, uses information indicative of machining accuracy on a result of machining by the machining tool 401 and information obtained from the machining program conversion device 100 are obtained for learning an allowable dimensional tolerance that enables a result of the machining by the machining tool 401 achieved the desired machining accuracy. The allowable dimensional tolerance is an allowable range for the distance L. As described in the first embodiment, the distance L is a distance between an evaluation point on a curved path and a reference point. The reference point is a contact point between a tool and a machining curve surface that corresponds to a final shape of the workpiece. The evaluation point is for determining whether the tool is moving along the machining curve surface when following the curve path that follows between a plurality of command points on a tool path. The result of editing by the editing tool 401 is a result of machining based on the machining program whose tool path has been changed so that the distance L is within the allowable dimensional tolerance.

Die Bearbeitungsprogrammumwandlungsvorrichtung 100 der vorliegenden Ausführungsform gibt die Bearbeitungskurvenfläche, die der Endgestalt für das Werkstück entspricht, den Werkzeugpfad, der durch das Bearbeitungsprogramm bestimmt ist, in dem Bewegungsbefehle für das Werkzeug beschrieben sind, und Werkzeugdaten an die Vorrichtung für maschinelles Lernen 410 aus. Die Bearbeitungsprogrammumwandlungsvorrichtung 100 erhält von der Vorrichtung für maschinelles Lernen 410 auch eine zulässige Abmessungstoleranz, die durch Inferenz unter Verwendung eines gelernten Modells bestimmt wird, das durch maschinelles Lernen erzeugt wird (nachfolgend beschrieben), und die Kurvenpfadevaluierungseinheit 108 führt unter Verwendung der erhaltenen zulässigen Abmessungstoleranz als Eingabe Bestimmungen durch. Die Bearbeitungsprogrammumwandlungsvorrichtung 100 ist somit in das Eingeben und Ausgeben im Zusammenhang mit der Vorrichtung für maschinelles Lernen 410 der vorliegenden Ausführungsform eingebunden, ansonsten arbeitet diese Bearbeitungsprogrammumwandlungsvorrichtung 100 wie die Bearbeitungsprogrammumwandlungsvorrichtung 100 gemäß der ersten Ausführungsform. Konstituierende Elemente mit den gleichen Funktionen wie bei der ersten Ausführungsform haben die gleichen Bezugszeichen wie in der ersten Ausführungsform und werden nicht beschrieben, um Redundanzen zu vermeiden. Die nachfolgende Beschreibung ist hauptsächlich auf die Unterschiede zur ersten Ausführungsform gerichtet.The machining program conversion device 100 In the present embodiment, the machining curve surface that corresponds to the final shape for the workpiece gives the tool path created by the machining program is determined, in which movement commands for the tool are described, and tool data to the device for machine learning 410 out. The machining program conversion device 100 received from the machine learning device 410 also an allowable dimensional tolerance determined by inference using a learned model generated by machine learning (described below), and the curved path evaluation unit 108 makes determinations using the obtained allowable dimensional tolerance as input. The machining program conversion device 100 is thus in the input and output in connection with the machine learning device 410 of the present embodiment, otherwise this machining program converting device operates 100 like the machining program converting device 100 according to the first embodiment. Constituent elements having the same functions as in the first embodiment have the same reference numerals as in the first embodiment and are not described in order to avoid redundancy. The following description is mainly focused on the differences from the first embodiment.

Die Vorrichtung zum maschinellen Lernen 410 lernt die zulässige Abmessungstoleranz, die es ermöglicht, die gewünschte Bearbeitungsgenauigkeit zu erreichen. Das Lernen der zulässigen Abmessungstoleranz, die es ermöglicht, dass die gewünschte Genauigkeit erreicht wird, bedeutet hier das Erzeugen des gelernten Modells zum Inferieren der zulässigen Abmessungstoleranz, die es ermöglicht, die gewünschte Bearbeitungsgenauigkeit zu erreichen. Die Vorrichtung zum maschinellen Lernen 410 kann jeglichen Lernalgorithmus verwenden. Es folgt eine Beschreibung eines Beispiels, bei dem Reinforcement Learning verwendet wird. Das Reinforcement Learning erfolgt so, dass ein Agent (Gegenstand von Aktionen) in einer bestimmten Umgebung einen momentanen Zustand beobachtet und eine zu tätigende Aktion bestimmt. Beim Reinforcement Learning wählt der Agent die Aktion und erhält eine Belohnung von der Umgebung. Durch eine Reihe von Aktionen lernt der Agent eine Strategie, die die Belohnung maximiert. Beispielsweise beim Q-Lernen wird eine allgemeine Update-Gleichung (Aktionswerttabelle) für eine Aktionswertfunktion Q(s,a) durch die unten stehende Formel (1) ausgedrückt.The machine learning device 410 learns the permissible dimensional tolerance that enables the desired machining accuracy to be achieved. Here, learning the allowable dimensional tolerance that enables the desired accuracy to be achieved means generating the learned model for inferring the allowable dimensional tolerance that enables the desired machining accuracy to be achieved. The machine learning device 410 can use any learning algorithm. An example using reinforcement learning is described below. Reinforcement learning takes place in such a way that an agent (subject of actions) observes a current state in a certain environment and determines an action to be taken. In reinforcement learning, the agent chooses the action and receives a reward from the environment. Through a series of actions, the agent learns a strategy that will maximize the reward. For example, in Q-learning, a general update equation (action value table) is used for an action value function Q (s, a) expressed by the formula (1) below.

Q ( s t , a t ) Q ( s t , a t ) + α ( r t + 1 + γ m a x Q ( s t + 1, a ) Q ( s t , a t ) )

Figure DE112020000656T5_0001
Q ( s t , a t ) Q ( s t , a t ) + α ( r t + 1 + γ m a x Q ( s t + 1, a ) - Q ( s t , a t ) )
Figure DE112020000656T5_0001

In der Formel (1) repräsentiert t eine Umgebung zu einer Zeit t, und at repräsentiert eine Aktion zu der Zeit t. Die Aktion at verursacht das Verschieben einer Umgebung st+1. rt+1 repräsentiert eine Belohnung, die als Ergebnis des Verschiebens dieser Umgebung erhalten wird, γ repräsentiert einen Nachlassfaktor (discount factor), und α repräsentiert eine Lernrate. Für γ gilt 0<γ≤1. Für α gilt 0<α≤1. Wenn Q-Lernen in der vorliegenden Ausführungsform verwendet wird, bezieht sich die Aktion at auf die zulässige Abmessungstoleranz, die eingegeben wird.In the formula (1), t represents an environment at time t, and a t represents an action at time t. The action a t causes an environment s t + 1 to be moved . r t + 1 represents a reward obtained as a result of shifting this environment, γ represents a discount factor, and α represents a learning rate. For γ, 0 <γ≤1 applies. For α, 0 <α≤1 applies. When Q learning is used in the present embodiment, the action a t is related to the allowable dimensional tolerance that is entered.

Die durch die Formel (1) ausgedrückte Update-Gleichung erhöht den Aktionswert Q, wenn ein Aktionswert der besten Aktion a zu einer Zeit t+1 größer ist als ein Aktionswert Q der Aktion a, die zur Zeit t getätigt wird, und erniedrigt den Aktionswert Q, wenn das Gegenteil zutrifft. Die Aktionswertfunktion Q(s,a) wird, in anderen Worten, so aktualisiert, dass der Aktionswert Q der Aktion a zu der Zeit t die Aktion mit dem besten Wert zu der Zeit t+1 approximiert. Dies ermöglicht es, dass der Wert der besten Aktion in einer bestimmten Umgebung der Reihe nach zu Aktionswerten in vorangegangenen Umgebungen propagiert wird.The update equation expressed by the formula (1) increases the action value Q when an action value of the best action a is larger than an action value at a time t + 1 Q of the action a, which is taken at time t, and lowers the action value Q if the opposite is true. The action value function Q In other words, (s, a) is updated so that the action value Q of action a at time t approximates the action with the best value at time t + 1. This enables the value of the best action in a given environment to be propagated in turn to action values in previous environments.

Wie in 30 gezeigt, umfasst die Vorrichtung zum maschinellen Lernen 410 gemäß der vorliegenden Ausführungsform eine Zustandsbeobachtungseinheit 411, eine Lerneinheit 412 und eine Inferenzeinheit 413. Die Zustandsbeobachtungseinheit 411 ist eine Datengewinnungseinheit, die einen Datensatz erhält, der eine Zustandsvariable umfasst, die einen Zustand des Bearbeitens durch das numerisch gesteuerte Bearbeitungswerkzeug angibt. In einer Lernphase gibt die Zustandsbeobachtungseinheit 411 den Datensatz an die Lerneinheit 412 aus. In einer Inferenzphase gibt die Zustandsbeobachtungseinheit 411 den Datensatz an die Inferenzeinheit 413 weiter. Die Lerneinheit 412 erzeugt das gelernte Modell durch Lernen, unter Verwendung des Datensatzes, der zulässigen Abmessungstoleranz, die es ermöglicht, die gewünschte Bearbeitungsgenauigkeit zu erreichen, und sie gibt das gelernte Modell an die Inferenzeinheit 413 weiter. Die Inferenzeinheit 413 gibt die Zustandsvariable und andere Zustandsvariablen in das gelernte Modell ein und inferiert somit die zulässige Abmessungstoleranz, die es ermöglicht, die Bearbeitungsgenauigkeit zu erreichen. Die inferierte zulässige Abmessungstoleranz wird in die Bearbeitungsprogrammumwandlungsvorrichtung 100 eingegeben.As in 30th shown comprises the machine learning apparatus 410 according to the present embodiment, a state observation unit 411 , a learning unit 412 and an inference unit 413 . The condition observation unit 411 is a data acquisition unit that receives a data record including a state variable indicating a state of machining by the numerically controlled machining tool. The condition monitoring unit gives in a learning phase 411 the data record to the learning unit 412 out. The state observation unit gives in an inference phase 411 the data set to the inference unit 413 further. The learning unit 412 generates the learned model by learning, using the data set, the allowable dimensional tolerance that enables the desired machining accuracy to be achieved, and it outputs the learned model to the inference unit 413 further. The inference unit 413 inputs the state variable and other state variables into the learned model, thus inferring the permissible dimensional tolerance that enables the machining accuracy to be achieved. The inferred dimensional allowable tolerance is set in the machining program converting device 100 entered.

Insbesondere wird Information, die die Endgestalt für das Werkstück angibt und dabei als die Zustandsvariable dient, durch die Zustandsbeobachtungseinheit 411 von der Gestaltdateneingabeeinheit 106 der Bearbeitungsprogrammumwandlungsvorrichtung 100 erhalten. Wie in der ersten Ausführungsform beschrieben, ist es die Gestaltdateneingabeeinheit 106, wo die Information, welche die Erzeugung der Endgestalt, die das Werkstück erreichen soll, eingegeben wird, und die Endgestalt umfasst die Bearbeitungskurvenfläche, welche eine zu bearbeitende gekrümmte Fläche ist. Dies bedeutet, dass Information, die die Bearbeitungskurvenfläche angibt, in der Information enthalten ist, die die Endgestalt angibt.In particular, information indicating the final shape for the workpiece and thereby serving as the state variable is provided by the state observation unit 411 from the shape data input unit 106 the machining program conversion device 100 receive. As described in the first embodiment, it is the shape data input unit 106 where the information that the creation of the final shape that the workpiece is to achieve is entered, and the final shape includes the Machining curve surface, which is a curved surface to be machined. This means that information indicating the machining curve surface is included in the information indicating the final shape.

Indem er als Zustandsvariable dient, wird der Werkzeugpfad durch die Zustandsbeobachtungseinheit 411 von der Werkzeugpfadspeichereinheit 103 der Bearbeitungsprogrammumwandlungsvorrichtung 100 erhalten. Wie in der ersten Ausführungsform beschrieben, wird der Werkzeugpfad durch das Bearbeitungsprogramm bestimmt, wo die Bewegungsbefehle für das Werkzeug beschrieben sind. Die Zustandsbeobachtungseinheit 411 erhält auch die Werkzeugdaten von der Werkzeugdateneingabeeinheit 105 der Bearbeitungsprogrammumwandlungsvorrichtung 100.By serving as a state variable, the tool path becomes through the state observer 411 from the tool path storage unit 103 the machining program conversion device 100 receive. As described in the first embodiment, the tool path is determined by the machining program where the movement commands for the tool are described. The condition observation unit 411 also receives the tool data from the tool data input unit 105 the machining program conversion device 100 .

Die Zustandsbeobachtungseinheit 411 erhält die Bearbeitungsgenauigkeit in dem Werkstück, das durch das Bearbeitungswerkzeug 401 unter der Steuerung der numerischen Steuerung 111 erarbeitet wird als die Zustandsvariable, die auf dem umgewandelten Bearbeitungsprogramm basiert, was bedeutet, dass die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung auf dem umgewandelten Bearbeitungsprogramm basiert. Beispielsweise ist ein Wert für die Bearbeitungsgenauigkeit verwendbar, der durch eine Vorrichtung, wie etwa eine Koordinatenmessmaschine, eine Oberflächenrauhigkeitsmessmaschine oder eine Bildgrößenmessmaschine gemessen wurde. Eine solche Messvorrichtung ist für das Bearbeitungswerkzeug 410 in 30 vorgesehen, kann jedoch auch separat von dem Bearbeitungswerkzeug 401 vorgesehen sein.The condition observation unit 411 maintains the machining accuracy in the workpiece produced by the machining tool 401 under the control of the numerical control 111 is elaborated as the state variable based on the converted machining program, which means that the machining accuracy in the result of machining is based on the converted machining program. For example, a value for the machining accuracy measured by an apparatus such as a coordinate measuring machine, a surface roughness measuring machine, or an image size measuring machine can be used. Such a measuring device is for the machining tool 410 in 30th provided, but can also be separate from the machining tool 401 be provided.

In der Lernphase erhält die Zustandsbeobachtungseinheit 411 von der Eingabeeinheit für die zulässige Abmessungstoleranzen 107 der Bearbeitungsprogrammumwandlungsvorrichtung 100 die zulässige Abmessungstoleranz, die sich auf die Aktion beim Reinforcement Learning bezieht, und gibt diese zulässige Abmessungstoleranz an die Lerneinheit 412 weiter.In the learning phase, the condition monitoring unit receives 411 from the input unit for the permissible dimensional tolerances 107 the machining program conversion device 100 the allowable dimensional tolerance, which relates to the action in reinforcement learning, and gives this allowable dimensional tolerance to the learning unit 412 further.

Die Lerneinheit 412 erhält von der Zustandsbeobachtungseinheit 411 die Zustandsvariable, die durch die Zustandsbeobachtungseinheit 411 beobachtet wurde, nämlich die Bearbeitungskurvenfläche, die der Endgestalt des Werkstücks entspricht, den Werkzeugpfad, der von dem Bearbeitungsprogramm bestimmt wurde, die Werkzeugdaten und die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm. In Übereinstimmung mit dem basierend auf den Zustandsvariablen erzeugten Datensatz lernt die Lerneinheit 412 die beste zulässige Abmessungstoleranz, die es ermöglicht, die Bearbeitungsgenauigkeit zu erreichen. In der vorliegenden (vierten) Ausführungsform wird die beste zulässige Abmessungstoleranz, die es ermöglicht, die Bearbeitungsgenauigkeit zu erreichen, als ein Beispiel gelernt; diese zulässige Abmessungstoleranz ist jedoch nicht einschränkend. Eine zulässige Abmessungstoleranz, die zu lernen ist, kann das sein, was ein Benutzer wünscht.The learning unit 412 received from the condition monitoring unit 411 the state variable generated by the state observation unit 411 namely, the machining curve surface corresponding to the final shape of the workpiece, the tool path determined by the machining program, the tool data and the machining accuracy in the result of machining based on the converted machining program. The learning unit learns in accordance with the data set generated based on the state variables 412 the best allowable dimensional tolerance that allows the machining accuracy to be achieved. In the present (fourth) embodiment, the best allowable dimensional tolerance that enables the machining accuracy to be achieved is learned as an example; however, this permissible dimensional tolerance is not restrictive. An allowable dimensional tolerance to be learned can be what a user desires.

Wie in 30 gezeigt, umfasst die Lerneinheit 412 eine Belohnungsberechnungseinheit 421 und eine Funktionsaktualisierungseinheit 422. Die Belohnungsberechnungseinheit 421 berechnet die Belohnung basierend auf der Zustandsvariablen. Die Belohnung r wird durch die Belohnungsberechnungseinheit 421 basierend auf der Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm berechnet. Die Belohnungsberechnungseinheit 421 erhöht die Belohnung r, wenn beispielsweise die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm besser ist als die gewünschte Bearbeitungsgenauigkeit. Beispielsweise gibt die Belohnungsberechnungseinheit 421 „1“ als Belohnung, wenn die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm besser ist als die gewünschte Bearbeitungsgenauigkeit. Wenn andererseits die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm schlechter ist als die gewünschte Bearbeitungsgenauigkeit, wird die Belohnung r erniedrigt. Beispielsweise gibt die Belohnungsberechnungseinheit 421 „-1“ als Belohnung, wenn die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm schlechter ist als die gewünschte Bearbeitungsgenauigkeit. Die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm wird in Übereinstimmung mit einem bekannten Verfahren extrahiert. Beispielsweise kann die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf einem Designwert des Werkstücks und dem Wert berechnet werden, der durch Messen des bearbeiteten Werkstücks unter Verwendung der Vorrichtung, wie etwa der Koordinatenmessmaschine, der Oberflächenrauhigkeitsmessvorrichtung oder der Bildgrößenmessvorrichtung, bestimmt wurde.As in 30th shown includes the learning unit 412 a reward calculation unit 421 and a function update unit 422 . The reward calculation unit 421 calculates the reward based on the state variable. The reward r is determined by the reward calculating unit 421 calculated based on the machining accuracy in the result of machining based on the converted machining program. The reward calculation unit 421 increases the reward r when, for example, the machining accuracy in the result of machining based on the converted machining program is better than the desired machining accuracy. For example, there is the reward calculation unit 421 “1” as a reward when the machining accuracy in the result of machining based on the converted machining program is better than the desired machining accuracy. On the other hand, when the machining accuracy in the result of machining based on the converted machining program is inferior to the desired machining accuracy, the reward r is lowered. For example, there is the reward calculation unit 421 “-1” as a reward when the machining accuracy in the result of machining based on the converted machining program is worse than the desired machining accuracy. The machining accuracy in the result of machining based on the converted machining program is extracted in accordance with a known method. For example, the machining accuracy in the result of machining can be calculated based on a design value of the workpiece and the value determined by measuring the machined workpiece using the device such as the coordinate measuring machine, the surface roughness measuring device, or the image size measuring device.

In Übereinstimmung mit der durch die Belohnungsberechnungseinheit 421 berechneten Belohnung aktualisiert die Funktionsaktualisierungseinheit 422 die Funktion zum Bestimmen der zulässigen Abmessungstoleranz, die es ermöglicht, dass das Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm die Bearbeitungsgenauigkeit erreicht. Beim Q-Lernen wird beispielsweise die Aktionswertfunktion Q(st,at), die durch die Formel (1) ausgedrückt wird, als die Funktion zum Berechnen der zulässigen Abmessungstoleranz verwendet, die es ermöglicht, dass die Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm die Bearbeitungsgenauigkeit erreicht. In der Lernphase werden die Belohnungsberechnung durch die Belohnungsberechnungseinheit 421 und die Funktionsaktualisierung durch die Funktionsaktualisierungseinheit 422 wiederholt durchgeführt, um das gelernte Modell, nämlich die Funktion, die einen Wert von Q für st und at angibt, zu erzeugen.In accordance with that provided by the reward calculation unit 421 The function update unit updates the calculated reward 422 the function of determining the allowable dimensional tolerance that enables the result of the machining based on the converted machining program to reach the machining accuracy. In Q-learning, for example, the action value function Q (s t , a t ) expressed by the formula (1) as the function for Calculating the allowable dimensional tolerance that enables the machining to achieve the machining accuracy based on the converted machining program is used. In the learning phase, the reward calculation is carried out by the reward calculation unit 421 and the function update by the function update unit 422 performed repeatedly to the learned model, namely the function having a value of Q for s t and a t indicates to generate.

Die Inferenzeinheit 413 verwendet das gelernte Modell, das durch die Funktionsaktualisierungseinheit 422 erzeugt wurde, und die Zustandsvariablen, die durch die Zustandsbeobachtungseinheit 411 beobachtet wurden, um die Aktion at zu bestimmen, für die die Aktionswertfunktion Q(st,at) zunimmt, nämlich die zulässige Abmessungstoleranz. Die Lerneinheit 412 kann zur gleichen Zeit lernen, zu der die Inferenzeinheit 413 inferiert. Das Lernmodell kann auch beim Bearbeiten eines Werkstücks ähnlicher Gestalt verwendet werden. Dies ermöglicht die Bestimmung einer zulässigen Abmessungstoleranz, die es einem Ergebnis der Bearbeitung der ähnlichen Gestalt ermöglicht, die Bearbeitungsgenauigkeit in einer kürzeren Lerndauer zu erreichen.The inference unit 413 uses the learned model developed by the functional update unit 422 was generated, and the state variables that were generated by the state observation unit 411 were observed to determine the action a t for which the action value function Q (s t , a t ) increases, namely the allowable dimensional tolerance. The learning unit 412 can learn at the same time to which the inference unit 413 inferred. The learning model can also be used when machining a workpiece of a similar shape. This enables an allowable dimensional tolerance to be determined, which enables a result of the machining of the similar shape to achieve the machining accuracy in a shorter learning period.

Die vorliegende Ausführungsform wurde unter Verwendung von Reinforcement Learning für den Lernalgorithmus beschrieben, der durch die Lerneinheit 412 verwendet wird; dieses Lernen ist jedoch nicht beschränkend. Als eine Alternative für das Reinforcement Learning kann überwachtes Lernen (Supervised Learning), nicht überwachtes Lernen (Unsupervised Learning) oder halbüberwachtes Lernen (Semi-Supervised Learning) für den Lernalgorithmus verwendet werden. Wenn beispielsweise das überwachte Lernen verwendet wird, werden ein Datensatz, der Eingabedaten enthält, und Daten korrekter Antworten als Lehrerdaten zum Erzeugen eines Lernmodells verwendet. Die Eingabedaten umfassen die oben genannten Informationen, die die Endgestalt für das Werkstück, den Werkzeugpfad, die Werkzeugdaten und die Informationen angeben, die angeben, ob das Bearbeitungsergebnis die gewünschte Bearbeitungsgenauigkeit erreicht hat oder nicht. Die korrekten Antwortdaten sind die zulässige Abmessungstoleranz, die eingegeben wird. Indem dann die Information, die die Endgestalt des Werkstücks angibt, der Werkzeugpfad, die Werkzeugdaten und das Ergebnis, welches bestimmt, dass das Bearbeitungsergebnis die gewünschte Bearbeitungsgenauigkeit erfüllt, in das Lernmodell eingegeben werden, kann die zulässige Abmessungstoleranz bestimmt werden, die es ermöglicht, dass die gewünschte Bearbeitungsgenauigkeit erreicht wird.The present embodiment has been described using reinforcement learning for the learning algorithm implemented by the learning unit 412 is used; however, this learning is not limiting. As an alternative to reinforcement learning, supervised learning, unsupervised learning or semi-supervised learning can be used for the learning algorithm. For example, when the supervised learning is used, a data set including input data and correct answer data are used as teacher data for creating a learning model. The input data include the above-mentioned information indicating the final shape for the workpiece, the tool path, the tool data and the information indicating whether or not the machining result has achieved the desired machining accuracy. The correct answer data is the allowable dimensional tolerance that is entered. Then, by entering the information indicating the final shape of the workpiece, the tool path, the tool data and the result, which determines that the machining result meets the desired machining accuracy, in the learning model, the permissible dimensional tolerance can be determined, which enables that the desired machining accuracy is achieved.

Der oben beschriebene Lernalgorithmus kann auch tiefes Lernen (Deep Learning) verwenden, welches das Extrahieren einer Merkmalsgröße selbst lernt, oder Maschinenlernen kann in Übereinstimmung mit einem anderen bekannten Verfahren durchgeführt werden, wie etwa einem neuronalen Netzwerk, genetischer Programmierung, funktioneller Logikprogrammierung oder einer Support-Vektor-Maschine.The learning algorithm described above can also use deep learning, which learns to extract a feature quantity itself, or machine learning can be carried out in accordance with another known method such as a neural network, genetic programming, functional logic programming, or support Vector machine.

Die Vorrichtung zum maschinellen Lernen 410 kann von der Bearbeitungsprogrammumwandlungsvorrichtung 100 separat vorgesehen sein, wie dies in 30 gezeigt ist, oder sie kann in der Bearbeitungsprogrammumwandlungsvorrichtung 100 enthalten sein. Eine weitere Alternative besteht darin, dass die Vorrichtung für maschinelles Lernen 410 in der numerischen Steuerung 111 enthalten ist. Die Vorrichtung für maschinelles Lernen 410 kann durch einen oder mehrere Computer implementiert sein, oder sie kann auf einem Cloud-Server liegen.The machine learning device 410 can from the machining program conversion device 100 be provided separately, as shown in 30th or it may be in the machining program converting device 100 be included. Another alternative is that the machine learning device 410 in numerical control 111 is included. The machine learning device 410 can be implemented by one or more computers, or it can reside on a cloud server.

Die Vorrichtung für maschinelles Lernen 410 kann die zulässige Abmessungstoleranz lernen, die es ermöglicht, dass die gewünschte Bearbeitungsgenauigkeit basierend auf Datensätzen erreicht wird, die Zustandsvariablen und Aktionen umfassen, die von einer Mehrzahl von Bearbeitungsprogrammumwandlungsvorrichtungen 100 erhalten werden. Die Vorrichtung für maschinelles Lernen 410 kann die zulässige Abmessungstoleranz lernen, die es ermöglicht, dass die gewünschte Bearbeitungsgenauigkeit erreicht wird, indem Datensätze von einer Vielzahl von Bearbeitungsprogrammumwandlungsvorrichtungen 100 erhalten werden, die an einem gleichen Ort verwendet werden, oder durch Sammeln von Datensätzen von einer Mehrzahl von Bearbeitungsprogrammumwandlungsvorrichtungen 100 und einer Mehrzahl von Bearbeitungsvorrichtungen 401, die an verschiedenen Orten unabhängig voneinander arbeiten. Die Bearbeitungsprogrammumwandlungsvorrichtung 100, von der der Datensatz zu sammeln ist, kann mitten in einem Prozess hinzugefügt oder, umgekehrt, entfernt werden. Das gelernte Modell, das die Vorrichtung für maschinelles Lernen 410 durch Lernen für die Bearbeitungsprogrammumwandlungsvorrichtung 100 erzeugt hat, die zulässige Abmessungstoleranz, die es ermöglicht, die gewünschte Bearbeitungsgenauigkeit zu erreichen, kann in einer anderen Vorrichtung für maschinelles Lernen 410 erzeugt werden, die einer anderen Bearbeitungsprogrammumwandlungsvorrichtung 100 entspricht, um es der anderen Vorrichtung für maschinelles Lernen 410 zu ermöglichen, das gelernte Modell durch erneutes Lernen (Relearning) unter Verwendung des neu erhaltenen Datensatzes zu aktualisieren.The machine learning device 410 may learn the allowable dimensional tolerance that enables the desired machining accuracy to be achieved based on data sets including state variables and actions generated by a plurality of machining program conversion devices 100 can be obtained. The machine learning device 410 can learn the allowable dimensional tolerance that enables the desired machining accuracy to be achieved by using data sets from a variety of machining program conversion devices 100 which are used in a same place or by collecting records from a plurality of machining program converting devices 100 and a plurality of processing devices 401 who work independently in different locations. The machining program conversion device 100 from which the data set is to be collected can be added or, vice versa, removed in the middle of a process. The learned model that the machine learning device 410 by learning for the machining program converting device 100 has generated the allowable dimensional tolerance that enables the desired machining accuracy to be achieved in another machine learning device 410 that of another machining program converting device 100 corresponds to it of the other machine learning device 410 to enable the learned model to be updated by re-learning (relearning) using the newly obtained data set.

In dem vorangehend beschriebenen Beispiel erhält die Vorrichtung für maschinelles Lernen 410 den Datensatz von der Bearbeitungsprogrammumwandlungsvorrichtung 100 gemäß der ersten Ausführungsform; jedoch kann der Datensatz von der Bearbeitungsprogrammumwandlungsvorrichtung 100 gemäß der zweiten Ausführungsform oder der numerischen Steuerung 200 gemäß der dritten Ausführungsform erhalten werden. Die Vorrichtung für maschinelles Lernen 410 kann in der numerischen Steuerung 200 gemäß der dritten Ausführungsform enthalten sein.In the example described above, the machine learning device receives 410 the data record from the machining program converting device 100 according to the first embodiment; however, the record from the Machining program conversion device 100 according to the second embodiment or the numerical control 200 can be obtained according to the third embodiment. The machine learning device 410 can in numerical control 200 be included according to the third embodiment.

In der vorangehend beschriebenen vierten Ausführungsform wird die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm als die Zustandsvariable durch die Zustandsbeobachtungseinheit 411 der Vorrichtung für maschinelles Lernen 410 erhalten. Die Bearbeitungsgenauigkeit muss jedoch nicht die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm sein. Beispielsweise kann die Bearbeitungsgenauigkeit in einem Ergebnis der Bearbeitung basierend auf einem Bearbeitungsprogramm vor der Umwandlung verwendet werden. Angenommen, dass die Bearbeitungsgenauigkeit ein Ergebnis der Bearbeitung eines Werkstücks mit dem Bearbeitungswerkzeug 401 ist, kann ein Datensatz erzeugt werden unter Verwendung dieser Bearbeitungsgenauigkeit, in Kombination mit der Bearbeitungskurvenfläche, dem Werkzeugpfad und den Werkzeugdaten, die vorangehend beschrieben wurden. Dies ermöglicht die Erzeugung eines Lernmodells, das für die Inferenz einer zulässigen Abmessungstoleranz verwendet werden kann, die es ermöglicht, die gewünschte Bearbeitungsgenauigkeit zu erreichen.In the fourth embodiment described above, the machining accuracy is determined in the result of machining based on the converted machining program as the state variable by the state observation unit 411 the machine learning device 410 receive. However, the machining accuracy does not have to be the machining accuracy in the result of machining based on the converted machining program. For example, the machining accuracy can be used in a result of machining based on a machining program before conversion. Assume that the machining accuracy is a result of machining a workpiece with the machining tool 401 is, a data set can be generated using this machining accuracy, in combination with the machining curve surface, tool path and tool data described above. This enables the generation of a learning model that can be used for the inference of an allowable dimensional tolerance that enables the desired machining accuracy to be achieved.

Die vorangehend beschriebene vorliegende Ausführungsform ermöglicht eine automatische Bestimmung der zulässigen Abmessungstoleranz, die es ermöglicht, dass das Ergebnis der Bearbeitung basierend auf dem umgewandelten Bearbeitungsprogramm die gewünschte Bearbeitungsgenauigkeit erreicht. Da die zulässige Abmessungstoleranz in verkürzter Zeit bestimmt wird, und zwar im Vergleich zu dem Fall, in dem beispielsweise ein Arbeiter eine geeignete zulässige Abmessungstoleranz berechnet, wird verbesserte Arbeitseffizienz bereitgestellt.The present embodiment described above enables the allowable dimensional tolerance to be automatically determined, which enables the result of the machining to achieve the desired machining accuracy based on the converted machining program. Since the allowable dimensional tolerance is determined in a shortened time as compared with the case where, for example, a worker calculates an appropriate allowable dimensional tolerance, improved work efficiency is provided.

BezugszeichenlisteList of reference symbols

100100
Bearbeitungsprogrammumwandlungsvorrichtung; Machining program conversion device;
101, 201101, 201
Bearbeitungsprogrammeingabeeinheit;Machining program input unit;
102, 202102, 202
Bearbeitungsprogrammanalysierer;Machining program analyzer;
103, 203103, 203
Werkzeugpfadspeichereinheit;Tool path storage unit;
104, 204104, 204
Kurvenpfaderzeugungseinheit;Curve path generation unit;
105, 205105, 205
Werkzeugdateneingabeeinheit;Tool data input unit;
106, 206106, 206
Gestaltdateneingabeeinheit;Shape data input unit;
107, 207107, 207
Eingabeeinheit für zulässige Abmessungstoleranzen;Input unit for permissible dimensional tolerances;
108, 208108, 208
Kurvenpfadevaluierungseinheit;Curve path evaluation unit;
109, 209109, 209
Werkzeugpfadänderungseinheit;Tool path changing unit;
110110
Ausgabeeinheit für umgewandeltes Bearbeitungsprogramm;Output unit for converted machining program;
111, 200111, 200
numerische Steuerung;numerical control;
210210
Kurvenpfadinterpolierer;Curve path interpolator;
401401
Bearbeitungswerkzeug;Machining tool;
410410
Vorrichtung für maschinelles Lernen;Machine learning device;
411411
Zustandsbeobachtungseinheit;Condition monitoring unit;
412412
Lerneinheit;Learning unit;
413413
Inferenzeinheit;Inference unit;
421421
Belohnungsberechnungseinheit;Reward calculation unit;
422422
Funktionsaktualisierungseinheit;Function update unit;
P1 bis P6, P11 bis P17, R1P1 to P6, P11 to P17, R1
Befehlspunkt;Command point;
Q1 bis QQ1 to Q
Evaluierungspunkt;Evaluation point;
C1 bis C3, C11 bis C13, C21 bis C23C1 to C3, C11 to C13, C21 to C23
Referenzpunkt;Reference point;
L1 bis L3, L11 bis L13, L21 bis L23L1 to L3, L11 to L13, L21 to L23
Abstand;Distance;
S1 bis S3S1 to S3
Bearbeitungskurvenfläche;Machining curve surface;
T10 bis T12T10 to T12
Werkzeug;Tool;
TP1 bis TPTP1 to TP
Kurvenpfad.Curve path.

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN THE DESCRIPTION

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.This list of the documents listed by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturPatent literature cited

  • JP 2011096077 [0007]JP 2011096077 [0007]

Claims (15)

Bearbeitungsprogrammumwandlungsvorrichtung, umfassend: eine Kurvenpfaderzeugungseinheit, um einen Kurvenpfad zwischen einer Mehrzahl von Befehlspunkten basierend auf einem aus einem Bearbeitungsprogramm bestimmten Werkzeugpfad zu erzeugen, wobei in dem Bearbeitungsprogramm Bewegungsbefehle für ein Werkzeug beschrieben sind, wobei die Mehrzahl von Befehlspunkten auf dem Werkzeugpfad in Übereinstimmung mit den Bewegungsbefehlen vorgesehen ist; eine Eingabeeinheit für zulässige Abmessungstoleranzen, wo Werte eingegeben werden, die einen zulässigen Bereich für einen Abstand L zwischen einem Evaluierungspunkt auf dem Kurvenpfad und einem Referenzpunkt definieren, wobei der Evaluierungspunkt zur Bestimmung vorgesehen ist, ob sich ein Werkzeug entlang einer Bearbeitungskurvenfläche, die einer Endgestalt für ein Werkstück entspricht, bewegt oder nicht, wenn es dem Kurvenpfad folgt, wobei der Referenzpunkt ein Kontaktpunkt zwischen dem Werkzeug und der Bearbeitungskurvenfläche ist; eine Kurvenpfadevaluierungseinheit, um zu bestimmen, ob der Abstand L zwischen den Werten liegt oder nicht, die den zulässigen Bereich definieren und in die Eingabeeinheit für zulässige Abmessungstoleranzen eingegeben werden; und eine Werkzeugpfadänderungseinheit, um, wenn der Abstand L außerhalb des zulässigen Bereichs ist, den Evaluierungspunkt, der von dem zulässigen Bereich abweicht, zu verschieben, bis der Abstand L innerhalb des zulässigen Bereichs liegt, und einen Evaluierungspunkt, der verschoben ist, als einen neuen Befehlspunkt beim Ändern des Werkzeugpfads zu setzen. A machining program conversion apparatus comprising: a curved path generating unit for generating a curved path between a plurality of command points based on a tool path determined from a machining program, movement commands for a tool being described in the machining program, the plurality of command points being provided on the tool path in accordance with the movement commands; an input unit for allowable dimensional tolerances, where values are entered which define an allowable range for a distance L between an evaluation point on the curve path and a reference point, the evaluation point being provided for determining whether a tool is along a machining curve surface which is a final shape for a workpiece corresponds, moves or not, as it follows the cam path, the reference point being a contact point between the tool and the machining cam surface; a curved path evaluation unit for determining whether or not the distance L is between the values defining the allowable range and inputted to the allowable dimensional tolerance input unit; and a tool path changing unit for, when the distance L is out of the allowable range, shifting the evaluation point deviating from the allowable range until the distance L is within the allowable range, and an evaluation point that is moved as a new command point when changing the tool path. Bearbeitungsprogrammumwandlungsvorrichtung gemäß Anspruch 1, wobei die Kurvenpfaderzeugungseinheit aus einem ersten, einem zweiten und einem dritten Befehlspunkt, die aufeinanderfolgend bereitgestellt sind, einen Kurvenpfad erzeugt, der den ersten Befehlspunkt und den dritten Befehlspunkt verbindet, und wobei die Werkzeugpfadänderungseinheit den zweiten Befehlspunkt löscht, wenn sich ein Werkzeug mit innerhalb des zulässigen Bereichs liegendem Abstand L entlang des Kurvenpfads bewegt, der den ersten Befehlspunkt und den dritten Befehlspunkt verbindet.The machining program conversion apparatus according to Claim 1 , wherein the curve path generating unit generates a curve path from a first, a second and a third command point which are provided successively, which connects the first command point and the third command point, and wherein the tool path changing unit deletes the second command point when a tool is within the permissible range lying distance L moves along the curved path that connects the first command point and the third command point. Bearbeitungsprogrammumwandlungsvorrichtung gemäß Anspruch 1 oder 2, ferner umfassend: eine Werkzeugdateneingabeeinheit, wo das Werkzeug definierende Daten eingegeben werden; und eine Gestaltdateneingabeeinheit, wo die Bearbeitungskurvenfläche an dem Werkstück definierende Gestaltdaten eingegeben werden.The machining program conversion apparatus according to Claim 1 or 2 , further comprising: a tool data input unit where data defining the tool is input; and a shape data input unit where shape data defining the machining curve surface on the workpiece is inputted. Bearbeitungsprogrammumwandlungsvorrichtung gemäß Anspruch 3, wobei die Gestaltdaten eine Bearbeitungstoleranz in Bezug auf die Bearbeitungskurvenfläche umfassen und der zulässige Bereich in Übereinstimmung mit der Bearbeitungstoleranz in Bezug auf die Bearbeitungskurvenfläche bestimmt wird.The machining program conversion apparatus according to Claim 3 wherein the shape data includes a machining tolerance with respect to the machining curve surface, and the allowable range is determined in accordance with the machining tolerance with respect to the machining curve surface. Numerische Steuerung, umfassend: eine Kurvenpfaderzeugungseinheit, um einen Kurvenpfad zwischen einer Mehrzahl von Befehlspunkten basierend auf einem aus einem Bearbeitungsprogramm bestimmten Werkzeugpfad zu erzeugen, wobei in dem Bearbeitungsprogramm Bewegungsbefehle für ein Werkzeug beschrieben sind, wobei die Mehrzahl von Befehlspunkten auf dem Werkzeugpfad in Übereinstimmung mit den Bewegungsbefehlen vorgesehen ist; eine Eingabeeinheit für zulässige Abmessungstoleranzen, wo Werte eingegeben werden, die einen zulässigen Bereich für einen Abstand L zwischen einem Evaluierungspunkt auf dem Kurvenpfad und einem Referenzpunkt definieren, wobei der Evaluierungspunkt zur Bestimmung vorgesehen ist, ob sich ein Werkzeug entlang einer Bearbeitungskurvenfläche, die einer Endgestalt für ein Werkstück entspricht, bewegt, wenn es dem Kurvenpfad folgt, wobei der Referenzpunkt ein Kontaktpunkt zwischen dem Werkzeug und der Bearbeitungskurvenfläche ist; eine Kurvenpfadevaluierungseinheit, um zu bestimmen, ob der Abstand L zwischen den Werten liegt oder nicht, die den zulässigen Bereich definieren und in die Eingabeeinheit für zulässige Abmessungstoleranzen eingegeben werden; und eine Werkzeugpfadänderungseinheit, um, wenn der Abstand L außerhalb des zulässigen Bereichs ist, den Evaluierungspunkt, der von dem zulässigen Bereich abweicht, zu verschieben, bis der Abstand L innerhalb des zulässigen Bereichs liegt, und einen Evaluierungspunkt, der verschoben ist, als einen neuen Befehlspunkt beim Ändern des Werkzeugpfads zu setzen.Numerical control, including: a curved path generating unit for generating a curved path between a plurality of command points based on a tool path determined from a machining program, movement commands for a tool being described in the machining program, the plurality of command points being provided on the tool path in accordance with the movement commands; an input unit for allowable dimensional tolerances, where values are entered which define an allowable range for a distance L between an evaluation point on the curve path and a reference point, the evaluation point being provided for determining whether a tool is along a machining curve surface which is a final shape for a workpiece corresponds to moved when following the cam path, the reference point being a contact point between the tool and the machining cam surface; a curved path evaluation unit for determining whether or not the distance L is between the values defining the allowable range and inputted to the allowable dimensional tolerance input unit; and a tool path changing unit for, when the distance L is out of the allowable range, shifting the evaluation point deviating from the allowable range until the distance L is within the allowable range, and an evaluation point that is moved as a new command point when changing the tool path. Numerische Steuerung gemäß Anspruch 5, ferner umfassend einen Kurvenpfadinterpolierer, um eine Werkzeugbewegungsstrecke pro Interpolationsdauer zu bestimmen und um einen Interpolationspunkt auf dem durch die Kurvenpfaderzeugungseinheit erzeugten Kurvenpfad zu interpolieren, wobei die Interpolationsdauer eine bestimmte Zeitdauer ist.Numerical control according to Claim 5 , further comprising a curved path interpolator to determine a tool movement distance per interpolation period and to interpolate an interpolation point on the curved path generated by the curved path generation unit, the interpolation period being a specific period of time. Numerische Steuerung gemäß Anspruch 5 oder 6, wobei der Evaluierungspunkt, der von dem zulässigen Bereich für den Abstand L abweicht, durch die Werkzeugpfadänderungseinheit verschoben wird, bis der Abstand L innerhalb des zulässigen Bereichs liegt, und als ein neuer Befehlspunkt hinzugefügt wird, nachdem er verschoben wurde.Numerical control according to Claim 5 or 6th wherein the evaluation point deviating from the allowable range for the distance L is shifted by the tool path changing unit until the distance L is within the allowable range and added as a new command point after it is moved. Numerische Steuerung gemäß Anspruch 5, wobei die Kurvenpfaderzeugungseinheit aus einem ersten, einem zweiten und einem dritten Befehlspunkt, die aufeinanderfolgend bereitgestellt sind, einen Kurvenpfad erzeugt, der den ersten Befehlspunkt und den dritten Befehlspunkt verbindet, und wobei die Werkzeugpfadänderungseinheit den zweiten Befehlspunkt löscht, wenn sich ein Werkzeug mit innerhalb des zulässigen Bereichs liegendem Abstand L entlang des Kurvenpfads bewegt, der den ersten Befehlspunkt und den dritten Befehlspunkt verbindet.Numerical control according to Claim 5 , wherein the curved path generating unit generates a curved path from a first, a second, and a third command point provided successively, connecting the first command point and the third command point, and wherein the tool path changing unit deletes the second command point when a tool is within the allowable Moved area lying distance L along the curved path that connects the first command point and the third command point. Numerische Steuerung gemäß einem der Ansprüche 5 bis 8, ferner umfassend: eine Werkzeugdateneingabeeinheit, wo das Werkzeug definierende Daten eingegeben werden; und eine Gestaltdateneingabeeinheit, wo die Bearbeitungskurvenfläche an dem Werkstück definierende Gestaltdaten eingegeben werden.Numerical control according to one of the Claims 5 until 8th , further comprising: a tool data input unit where data defining the tool is input; and a shape data input unit where shape data defining the machining curve surface on the workpiece is inputted. Numerische Steuerung gemäß Anspruch 9, wobei die Gestaltdaten eine Bearbeitungstoleranz in Bezug auf die Bearbeitungskurvenfläche umfassen und der zulässige Bereich in Übereinstimmung mit der Bearbeitungstoleranz in Bezug auf die Bearbeitungskurvenfläche bestimmt wird.Numerical control according to Claim 9 wherein the shape data includes a machining tolerance with respect to the machining curve surface, and the allowable range is determined in accordance with the machining tolerance with respect to the machining curve surface. Bearbeitungsprogrammumwandlungsverfahren zum Ausführen durch eine Bearbeitungsprogrammumwandlungsvorrichtung oder eine numerische Steuerung, wobei das Bearbeitungsprogrammumwandlungsverfahren umfasst: einen Schritt des Erzeugens eines Kurvenpfads zwischen einer Mehrzahl von Befehlspunkten basierend auf einem aus einem Bearbeitungsprogramm bestimmten Werkzeugpfad, wobei in dem Bearbeitungsprogramm Bewegungsbefehle für ein Werkzeug beschrieben sind, wobei die Mehrzahl von Befehlspunkten auf dem Werkzeugpfad in Übereinstimmung mit den Bewegungsbefehlen vorgesehen ist; einen Schritt der Eingabe von Werten, die einen zulässigen Bereich für einen Abstand L zwischen einem Evaluierungspunkt auf dem Kurvenpfad und einem Referenzpunkt definieren, wobei der Evaluierungspunkt zur Bestimmung vorgesehen ist, ob sich ein Werkzeug entlang einer Bearbeitungskurvenfläche, die einer Endgestalt für ein Werkstück entspricht, bewegt, wenn es dem Kurvenpfad folgt, wobei der Referenzpunkt ein Kontaktpunkt zwischen dem Werkzeug und der Bearbeitungskurvenfläche ist; einen Schritt des Bestimmens, ob der Abstand L zwischen den Werten liegt oder nicht, die den zulässigen Bereich definieren und eingegeben werden; einen Schritt des Verschiebens nur des Evaluierungspunkts, der von dem zulässigen Bereich abweicht, bis der Abstand L innerhalb des zulässigen Bereichs liegt, wenn der Abstand L außerhalb des zulässigen Bereichs ist, und des Setzens eines Evaluierungspunkts, der verschoben ist, als einen neuen Befehlspunkt beim Ändern des Werkzeugpfads zu setzen; und einen Schritt des Umwandelns des Werkzeugpfads, der in dem Schritt des Änderns des Werkzeugpfads geändert wurde, in ein Programm das an eine externe Einheit auszugeben ist.A machining program converting method to be executed by a machining program converting device or a numerical controller, the machining program converting method comprising: a step of generating a curved path between a plurality of command points based on a tool path determined from a machining program, movement commands for a tool being described in the machining program, the plurality of command points being provided on the tool path in accordance with the movement commands; a step of inputting values defining a permissible range for a distance L between an evaluation point on the curve path and a reference point, the evaluation point being provided for determining whether a tool is along a machining curve surface which corresponds to a final shape for a workpiece, moves as it follows the curve path, the reference point being a point of contact between the tool and the machining curve surface; a step of determining whether or not the distance L is between the values defining the allowable range and inputted; a step of shifting only the evaluation point that deviates from the allowable range until the distance L is within the allowable range when the distance L is out of the allowable range, and setting an evaluation point that is moved as a new command point at Change the tool path to set; and a step of converting the tool path changed in the step of changing the tool path into a program to be output to an external unit. Bearbeitungsprogrammumwandlungsvorrichtung gemäß einem der Ansprüche 1 bis 4, ferner umfassend: eine Datengewinnungseinheit, um einen Datensatz zu erhalten, der die Bearbeitungskurvenfläche, den Werkzeugpfad, das Werkzeug definierende Werkzeugdaten und eine Bearbeitungsgenauigkeit in einem Ergebnis der Bearbeitung basierend auf einem Bearbeitungsprogramm mit dem durch die Werkzeugpfadänderungseinheit geänderten Werkzeugpfad zu erhalten; und eine Lerneinheit, um unter Verwendung des Datensatzes ein Lernmodell zu erzeugen, das für die Inferenz eines zulässigen Bereichs für den Abstand L zu verwenden ist, der es ermöglicht, dass das Ergebnis der Bearbeitung eine gewünschte Bearbeitungsgenauigkeit erreicht.A machining program converting device according to any one of Claims 1 until 4th further comprising: a data acquisition unit for obtaining a data set containing the machining curve surface, the tool path, tool data defining the tool, and machining accuracy in a result of machining based on a machining program with the tool path changed by the tool path changing unit; and a learning unit for generating, using the data set, a learning model to be used for inference of an allowable range for the distance L that enables the result of machining to achieve a desired machining accuracy. Numerische Steuerung gemäß einem der Ansprüche 5 bis 10, ferner umfassend: eine Datengewinnungseinheit, um einen Datensatz zu erhalten, der die Bearbeitungskurvenfläche, den Werkzeugpfad, das Werkzeug definierende Werkzeugdaten und eine Bearbeitungsgenauigkeit in einem Ergebnis der Bearbeitung basierend auf einem Bearbeitungsprogramm mit dem durch die Werkzeugpfadänderungseinheit geänderten Werkzeugpfad zu erhalten; und eine Lerneinheit, um unter Verwendung des Datensatzes ein Lernmodell zu erzeugen, das für die Inferenz eines zulässigen Bereichs für den Abstand L zu verwenden ist, der es ermöglicht, dass das Ergebnis der Bearbeitung eine gewünschte Bearbeitungsgenauigkeit erreicht.Numerical control according to one of the Claims 5 until 10 further comprising: a data acquisition unit for obtaining a data set containing the machining curve surface, the tool path, tool data defining the tool, and machining accuracy in a result of machining based on a machining program with the tool path changed by the tool path changing unit; and a learning unit for generating, using the data set, a learning model to be used for inference of an allowable range for the distance L that enables the result of machining to achieve a desired machining accuracy. Vorrichtung für maschinelles Lernen, umfassend: eine Datengewinnungseinheit, um einen Datensatz zu erhalten, der eine Bearbeitungskurvenfläche, die einer Endgestalt eines Werkstücks entspricht, einen Werkzeugpfad, der aus einem Bearbeitungsprogramm bestimmt ist, in dem Bewegungsbefehle für ein Werkzeug beschrieben sind, das Werkzeug definierende Werkzeugdaten und eine Bearbeitungsgenauigkeit in einem Ergebnis der Bearbeitung des Werkstücks umfasst; eine Lerneinheit, um unter Verwendung des Datensatzes ein gelerntes Modell zu erzeugen, das für die Inferenz eines zulässigen Bereichs für einen Abstand zu verwenden ist, der es ermöglicht, dass das Ergebnis der Bearbeitung eine gewünschte Bearbeitungsgenauigkeit erreicht.A machine learning apparatus comprising: a data acquisition unit to obtain a data set which corresponds to a machining curve surface which corresponds to a final shape of a workpiece, a tool path which is determined from a machining program in which movement commands for a tool are described, tool data defining the tool and a machining accuracy in a result of the Machining the workpiece comprises; a learning unit for generating, using the data set, a learned model to be used for inference of an allowable range for a distance that enables the result of the machining to achieve a desired machining accuracy. Vorrichtung für maschinelles Lernen gemäß Anspruch 14, wobei die Bearbeitungsgenauigkeit in dem Ergebnis der Bearbeitung basierend auf einem Bearbeitungsprogramm besteht, das den so geänderten Werkzeugpfad aufweist, dass ein Abstand L zwischen einem Evaluierungspunkt und einem Referenzpunkt innerhalb der zulässigen Abmessungstoleranz liegt, wenn der Abstand L außerhalb der zulässigen Abmessungstoleranz liegt, und zwar nach der Bestimmung, ob der Abstand L innerhalb der zulässigen Abmessungstoleranz liegt oder nicht, wobei die Bestimmung getätigt wird, um zu sehen, ob sich das Werkzeug entlang der Bearbeitungskurvenfläche bewegt, wenn es einem Kurvenpfad folgt, der zwischen einer Mehrzahl von Befehlspunkten auf dem Werkzeugpfad erzeugt wird, wobei der Evaluierungspunkt auf dem Kurvenpfad vorgesehen ist, wobei der Referenzpunkt ein Kontaktpunkt zwischen dem Werkzeug und der Bearbeitungskurvenfläche ist, wobei die zulässige Abmessungstoleranz einen zulässigen Bereich für den Abstand L angibt.Machine learning apparatus according to Claim 14 , wherein the machining accuracy is the result of machining based on a machining program having the tool path changed so that a distance L between an evaluation point and a reference point is within the allowable dimensional tolerance when the distance L is out of the allowable dimensional tolerance, namely after determining whether or not the distance L is within the allowable dimensional tolerance, the determination being made to see whether the tool is moving along the machining curve surface when following a curve path that is between a plurality of command points on the tool path is generated, the evaluation point being provided on the curve path, the reference point being a contact point between the tool and the machining curve surface, the permissible dimensional tolerance specifying a permissible range for the distance L.
DE112020000656.5T 2019-03-05 2020-03-03 Machining program converting apparatus, numerical control, machining program converting method and machine learning apparatus Pending DE112020000656T5 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPPCT/JP2019/008587 2019-03-05
PCT/JP2019/008587 WO2020178978A1 (en) 2019-03-05 2019-03-05 Machining program conversion device, numerical control device, and machining program conversion method
PCT/JP2020/008990 WO2020179798A1 (en) 2019-03-05 2020-03-03 Machining program conversion device, numerical control device, machining program conversion method, and machine-learning device

Publications (1)

Publication Number Publication Date
DE112020000656T5 true DE112020000656T5 (en) 2021-12-09

Family

ID=72337450

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020000656.5T Pending DE112020000656T5 (en) 2019-03-05 2020-03-03 Machining program converting apparatus, numerical control, machining program converting method and machine learning apparatus

Country Status (4)

Country Link
JP (1) JP6808106B1 (en)
CN (1) CN113490894A (en)
DE (1) DE112020000656T5 (en)
WO (2) WO2020178978A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116635800A (en) * 2020-12-25 2023-08-22 发那科株式会社 Numerical controller
DE112021007661T5 (en) * 2021-07-27 2024-02-29 Fanuc Corporation Numerical control device
JP7274649B1 (en) 2022-06-15 2023-05-16 Dmg森精機株式会社 Information processing device and information processing program

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011096077A (en) 2009-10-30 2011-05-12 Makino Milling Mach Co Ltd Method and device for generating tool path

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3019398B2 (en) * 1990-01-21 2000-03-13 ソニー株式会社 Free-form surface machining data creation method
JP3366213B2 (en) * 1997-02-26 2003-01-14 三菱電機株式会社 Curve minute line differentiation method and numerical controller having spline interpolation function
JP3662799B2 (en) * 2000-03-09 2005-06-22 三菱電機株式会社 Numerical control apparatus and numerical control method
US8478438B2 (en) * 2008-09-16 2013-07-02 Shin Nippon Koki Co., Ltd. Numerical control device
CN103246237B (en) * 2013-05-23 2015-06-03 南京工业大学 Local ending point-based numerical control system speed controlling method
JP6157781B1 (en) * 2015-12-24 2017-07-05 三菱電機株式会社 Tool path correcting device and tool path correcting method
JP6470251B2 (en) * 2016-12-26 2019-02-13 ファナック株式会社 Numerical control device and machine learning device
WO2018122988A1 (en) * 2016-12-27 2018-07-05 三菱電機株式会社 Numerical control device, program conversion device, numerical control method, and program conversion method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011096077A (en) 2009-10-30 2011-05-12 Makino Milling Mach Co Ltd Method and device for generating tool path

Also Published As

Publication number Publication date
WO2020178978A1 (en) 2020-09-10
CN113490894A (en) 2021-10-08
JPWO2020179798A1 (en) 2021-03-11
WO2020179798A1 (en) 2020-09-10
JP6808106B1 (en) 2021-01-06

Similar Documents

Publication Publication Date Title
DE112016005969T5 (en) Toolpath correction device and toolpath correction method
DE112020000656T5 (en) Machining program converting apparatus, numerical control, machining program converting method and machine learning apparatus
DE102017005933B4 (en) Machining program editing apparatus, method and storage medium
DE2422102A1 (en) NUMERIC CONTROL TO GENERATE A PARABOLIC FLOOR
DE112016007478B4 (en) Numerical control device, program conversion device, numerical control method, and program conversion method
DE10341764A1 (en) Integrated model prediction control and optimization within a process control system
DE112006003623T5 (en) Method for transforming G code into a Step NC part program
DE102020204854A1 (en) Machine learning apparatus, numerical control system and machine learning method
DE102012010408A1 (en) A numerical control device having a function of correcting the travel of a machine program
DE102018218202A1 (en) POST PROCESSOR DEVICE, MACHINE PROGRAM GENERATION PROCESS, CNC PROCESSING SYSTEM AND PROGRAM FOR MACHINE PROGRAM GENERATION
DE112010002840T5 (en) Automatic programming device and automatic programming
DE102018218201A1 (en) NUMERICAL CONTROL DEVICE, CNC TOOL MACHINE, NUMERICAL CONTROL PROCEDURE AND NUMERICAL CONTROL PROGRAM
DE112017000203T5 (en) Numerical control and numerical control method
DE112018008126T5 (en) Machine learning device, machining program generation device and machine learning method
DE102020124734A1 (en) SIMULATION DEVICE
DE112012006583T5 (en) Numerical control device
DE102019003928A1 (en) POSITION INFORMATION DISPLAY SYSTEM
DE112019007434T5 (en) Numerical control, machine learning apparatus and numerical control method
DE102013102656A1 (en) CUTTING CALCULATION DEVICE FOR A MULTI-AXIS TOOL MACHINE
DE112017006457T5 (en) Machining program changing device and machining program changing method
DE112019007889T5 (en) MACHINING PROGRAM CONVERSION DEVICE, NUMERICAL CONTROL DEVICE AND MACHINING PROGRAM CONVERSION METHOD
DE112018007741B4 (en) MACHINE LEARNING DEVICE AND DEVICE FOR GENERATING PROGRAMS FOR NUMERICALLY CONTROLLED MACHINING
DE102015008246A1 (en) Numerical control with tool tip control function
EP4121825A1 (en) Computer-implemented method for creating control data sets, cad-cam system and production system
DE102014015278B4 (en) Machining curve generation device and associated machining curve generation method

Legal Events

Date Code Title Description
R012 Request for examination validly filed