DE102014015278A1 - Bearbeitungskurven-Erzeugungsvorrichtung und dazu gehöriges Bearbeitungskurven-Erzeugungsverfahren - Google Patents

Bearbeitungskurven-Erzeugungsvorrichtung und dazu gehöriges Bearbeitungskurven-Erzeugungsverfahren Download PDF

Info

Publication number
DE102014015278A1
DE102014015278A1 DE201410015278 DE102014015278A DE102014015278A1 DE 102014015278 A1 DE102014015278 A1 DE 102014015278A1 DE 201410015278 DE201410015278 DE 201410015278 DE 102014015278 A DE102014015278 A DE 102014015278A DE 102014015278 A1 DE102014015278 A1 DE 102014015278A1
Authority
DE
Germany
Prior art keywords
curve
segmented
information
partial
machining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE201410015278
Other languages
English (en)
Other versions
DE102014015278B4 (de
Inventor
c/o FANUC Corporation Mizuno Tohru
c/o FANUC Corporation Chiba Takuji
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102014015278A1 publication Critical patent/DE102014015278A1/de
Application granted granted Critical
Publication of DE102014015278B4 publication Critical patent/DE102014015278B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/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
    • G05B19/4103Digital interpolation
    • 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/182Numerical 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 the machine tool function, e.g. thread cutting, cam making, tool direction control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50164Select a structure to make programming of free curved surface easier

Abstract

Eine Bearbeitungskurven-Erzeugungsvorrichtung erzeugt eine Kurve eines Werkzeugs, das zum maschinellen Bearbeiten eines Werkstücks verwendet wird, indem ein Vorgang des Aufnehmens eines Teils einer Punktsequenz, die den Werkzeugweg ausdrückt, als eine Teilpunktsequenz wiederholt und eine Teilkurve erzeugt wird. Die Bearbeitungskurven-Erzeugungsvorrichtung beinhaltet eine Kurvenerzeugungseinheit unter Nutzung gespeicherter Informationen zum Erzeugen einer Teilkurve, wobei Informationen segmentierter Kurven genutzt werden. Wenn eine Kurveninformations-Nutzungsbestimmungseinheit bestimmt, die gespeicherten Informationen zu nutzen, erzeugt die Kurvenerzeugungseinheit unter Nutzung gespeicherter Informationen eine Teilkurve.

Description

  • ALLGEMEINER STAND DER TECHNIK
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine Bearbeitungskurven-Erzeugungsvorrichtung und ein Bearbeitungskurven-Erzeugungsverfahren, mit dem ein Werkzeugweg, der das Bereitstellen einer glatten maschinell bearbeiteten Oberfläche während einer maschinellen Bearbeitung mit einer numerisch gesteuerten Werkzeugmaschine ermöglicht, unter Verwendung einer numerischen Steuervorrichtung, die die Werkzeugmaschine steuert, oder einer Informationsverarbeitungsvorrichtung bestimmt wird, wie einem Personalcomputer.
  • Beschreibung des Standes der Technik
  • Ein Verfahren zum Bestimmen einer Kurve, die eine gegebene Punktsequenz interpoliert, oder einer Kurve, die durch jeden der Punkte verläuft, ist weithin bekannt (Les Piegl, Wayne Tiller, The NURBS Book, Springer-Verlag, und I. J. Schoenberg, Spline functions and the problem of graduation, Proceedings of the National Academy of Science of the U.S.A., 52 (1964)). Zur maschinellen Bearbeitung mit einem numerisch gesteuerten Werkzeug wird das Verfahren dazu genutzt, einen Werkzeugweg, der als eine Punktsequenz angegeben ist, in eine Kurve umzuwandeln, um eine glatte, maschinell bearbeitete Oberfläche bereitzustellen und eine Zeit zur maschinellen Bearbeitung zu verkürzen ( japanische Offenlegungsschrift Nr. 2013-171376 , japanische Offenlegungsschrift Nr. 2007-293478 , japanische Offenlegungsschrift Nr. 2006-309645 , japanische Offenlegungsschrift Nr. 2005-182437 und japanische Offenlegungsschrift Nr. 2004-078516 ).
  • Im Allgemeinen variiert die Länge eines Programms zur maschinellen Bearbeitung je nach einem Werkstück, und eine zeitaufwändige maschinelle Bearbeitung bringt eine sehr große Anzahl von Punkten mit sich, die einen Werkzeugweg bereitstellen. Folglich ist das Abschließen einer Kurvenbildung während eines Vorgangs schwierig und ein Verfahren wird angewendet, in dem die Punktsequenz in Abschnitte unterteilt wird, was das Schritt-für-Schritt-Erzeugen der Kurve ermöglicht. Darüber hinaus wird dieses Verfahren zwangsläufig angewendet, wenn eine Kurvenerzeugung und eine maschinelle Bearbeitung parallel durchgeführt werden.
  • Die Unterteilung der Punktsequenz wird normalerweise unter Verwendung eines Verfahrens des Aufnehmens einer vorher bestimmten Anzahl von Punkten durchgeführt, die mit dem vorderen Punkt startet. Wenn die Punktsequenz einen gebogenen Abschnitt beinhaltet, wird der gebogene Abschnitt als ein Unterteilungspunkt der Punktsequenz eingestellt, selbst wenn die Anzahl von Punkten bis zu dem gebogenen Abschnitt kleiner als die vorher bestimmte Anzahl ist. Kurven, die aus Gruppen von Punkten erzeugt werden, die aus der Unterteilung resultieren, werden in der Form von parametrischen Kurven ausgedrückt. Es wird eine Ausdrucksform angewendet, wie eine B-Spline-Kuve oder NURBS-Kurve, die für die Anwendung geeignet ist.
  • Die herkömmliche Bearbeitungskurvenerzeugung konzentriert sich auf ein Verfahren zum Erzeugen von Kurven aus einer Punktsequenz, die aus einer Unterteilung resultiert, das die Form des gesamten Werkzeugwegs, der aus dem Zusammenfügen erzeugter Kurven resultiert, nicht besonders berücksichtigt. Infolgedessen misslingt es auf nachteilige Weise, zufrieden stellende Kurven zu erzeugen, wenn von benachbarten Kurven gewünscht wird, dass sie eine ähnliche Form haben, wie in dem Fall eines Vorwärtswegs und einer Rückwärtswegs bei einem sich hin- und herbewegenden Weg der maschinellen Bearbeitung.
  • Im Allgemeinen können in einem Programm zur maschinellen Bearbeitung, das von einer CAM ausgegeben wird, die Positionen von Punkten, die einen Maschinenweg ausdrücken, in Verbindung mit einem Berechnungsverfahren oder dergleichen geringfügig von einem Sollweg abweichen. Darüber hinaus variiert das Intervall zwischen den Punkten gewöhnlich. In dem sich hin- und herbewegenden Weg entsprechen Punkte, die den Vorwärtsweg bereitstellen, nicht immer Punkten, die den Rückwärtsweg bereitstellen. In dem Punktsequenzunterteilungsverfahren des Aufnehmens einer vorher bestimmten Anzahl von Punkten variiert die räumliche Verteilung der Unterteilungen der Punktsequenz zwischen dem Vorwärtsweg und dem Rückwärtsweg. Die unterschiedlichen räumlichen Verteilungen der Punktsequenz wiederum variieren die Form der erzeugten Kurve, was zu stufenartigen Unterschieden zwischen der Kurve des Vorwärtswegs und der Kurve des Rückwärtswegs führt. Ein ähnliches Problem tritt in dem Fall eines spiralförmigen Werkzeugwegs auf, der um den Umfang eines Werkstücks herum angeordnet ist. Die Ursache des Problems liegt darin, dass das Verfahren des Aufnehmens einer vorher bestimmten Anzahl von Punkten dabei fehlschlägt, die räumliche Verteilung von Punktsequenzen zu steuern.
  • Dies deutet auf Bedarf an einem Unterteilungsverfahren hin, das das Ausrichten der räumlichen Verteilungen aufeinander ermöglicht.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Folglich besteht ein Gegenstand der vorliegenden Erfindung darin, eine Bearbeitungskurven-Erzeugungsvorrichtung bereitzustellen, um das oben beschriebene Problem des Stands der Technik zu lösen, die Informationen zu einer Kurve, die auf der Basis einer Punktsequenz, die einen Werkzeugweg ausdrückt, erzeugt wurde, speichert und die die Informationen in einem Bereich nutzt, in dem das Bereitstellen einer Kurve, die einer anderen Kurve ähnlich ist, gewünscht wird, um die gewünschte Kurve zu erzeugen.
  • Eine Bearbeitungskurven-Erzeugungsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung erzeugt eine Bearbeitungskurve eines Werkzeugs, das zum maschinellen Bearbeiten eines Werkstücks verwendet wird, indem ein Vorgang zum Aufnehmen eines Teils einer Punktsequenz, die den Werkzeugweg ausdrückt, als eine Teilpunktsequenz wiederholt und eine Teilkurve erzeugt wird. Die Bearbeitungskurven-Erzeugungsvorrichtung weist eine Kurveninformations-Speichereinheit zum Speichern – für jede von segmentierten Kurven, bei denen es sich um einzelne Kurven-teile handelt, die den Werkzeugweg bereitstellen – von Informationen segmentierter Kurven, die eine Anzahl von Teilkurven, die in der segmentierten Kurve enthalten sind, eine Tangentialrichtung an einem Endpunkt der segmentierten Kurve und Teilkurveninformationen, die mindestens eine einer Teilkurvenlänge jeder der Teilkurven oder einer Anzahl von Punkten der Teilpunktsequenz und Informationen beinhalten, die die Teilkurve mathematisch definieren, umfassen, eine Kurveninformations-Nutzungsbestimmungseinheit zum Bestimmen, ob die gespeicherten Informationen segmentierter Kurven verwendet werden sollen oder nicht, wenn die Teilkurve erzeugt wird, und eine Kurvenerzeugungseinheit unter Nutzung gespeicherter Informationen zum Erzeugen einer Teilkurve, wobei die Informationen segmentierter Kurven genutzt werden. Wenn die Kurveninformations-Nutzungsbestimmungseinheit bestimmt, die gespeicherten Informationen zu nutzen, erzeugt die Kurvenerzeugungseinheit unter Nutzung gespeicherter Informationen eine Teilkurve. Wenn ein Bearbeitungsweg, der von einer Punktsequenz bereitgestellt wird, kurvenförmig ist, kann folglich in einem Bereich, in dem eine Kurve, die ähnlich wie eine andere Kurve geformt ist, erzeugt werden soll, eine Kurve erhalten werden, die die Bedingung erfüllt.
  • Die Kurveninformations-Nutzungsbestimmungseinheit kann eine Einheit zum Bestimmen sein, ob ein aktueller Weg ein Rückwärtsweg eines sich hin- und herbewegenden Bearbeitungswegs ist oder nicht. Die Ausführungsform stellt folglich Kurven mit kleineren stufenartigen Unterschieden zwischen dem Vorwärtsweg und dem Rückwärtsweg des sich hin- und herbewegenden Bearbeitungswegs als das herkömmliche Kurvenbildungsverfahren bereit.
  • Das Aufnehmen der Teilpunktsequenz kann durchgeführt werden, indem entweder ein Verfahren, das auf der Anzahl von Punkten basiert, oder ein Verfahren, das auf einer Länge der Teilpunktsequenz basiert, ausgewählt wird. Folglich kann bei der Kurvenbildung in der Punktsequenz die Zeit, die für die Kurvenerzeugung benötigt wird, verkürzt werden und ähnliche Kurven können erzeugt werden, indem eine Unterteilung auf der Basis der Länge der Punktsequenz nur auf gewünschte Bereiche angewendet wird.
  • Die Auswahl des Verfahrens zum Aufnehmen der Teilpunktsequenz kann auf der Basis dessen durchgeführt werden, ob der Werkzeugweg ein Rückwärtsweg eines sich hin- und herbewegenden Wegs ist oder nicht. Folglich können stufenartige Unterschiede zwischen dem Vorwärtsweg und dem Rückwärtsweg des sich hin- und herbewegenden Bearbeitungswegs unterdrückt werden, wobei Kurven effizient erzeugt werden.
  • Ein Bearbeitungskurven-Erzeugungsverfahren gemäß einer Ausführungsform der vorliegenden Erfindung beinhaltet das Erzeugen einer Bearbeitungskurve eines Werkzeugs, das zum maschinellen Bearbeiten eines Werkstücks verwendet wird, indem ein Vorgang zum Aufnehmen eines Teils einer Punktsequenz, die den Werkzeugweg ausdrückt, als eine Teilpunktsequenz wiederholt und eine Teilkurve erzeugt wird. Das Bearbeitungskurven-Erzeugungsverfahren beinhaltet des Speichern – für jede von segmentierten Kurven, bei denen es sich um einzelne Kurventeile handelt, die den Werkzeugweg bereitstellen – von Informationen segmentierter Kurven, die eine Anzahl von Teilkurven, die in der segmentierten Kurve enthalten sind, eine Tangentialrichtung an einem Endpunkt der segmentierten Kurve und Teilkurveninformationen, die mindestens eine einer Teilkurvenlänge jeder der Teilkurven oder einer Anzahl von Punkten der Teilpunktsequenz und Informationen beinhalten, die die Teilkurve mathematisch definieren, umfassen, und das Bestimmen, ob die gespeicherten Informationen segmentierter Kurven verwendet werden sollen oder nicht, wenn die Teilkurve erzeugt wird, und bei Bestimmen, dass die gespeicherten Informationen segmentierter Kurven verwendet werden soll, das Erzeugen einer Teilkurve, die die Informationen segmentierter Kurven nutzt.
  • Ob die gespeicherten Informationen segmentierter Kurven verwendet werden oder nicht, wenn die Teilkurve erzeugt wird, kann in Abhängigkeit davon bestimmt werden, ob der Werkzeugweg ein Rückwärtsweg eines sich hin- und herbewegenden Bearbeitungswegs ist oder nicht.
  • Das Aufnehmen der Teilpunktsequenz kann durchgeführt werden, indem entweder ein Verfahren, das auf der Anzahl von Punkten basiert, oder ein Verfahren, das auf einer Länge der Teilpunktsequenz basiert, ausgewählt wird. Darüber hinaus kann die Auswahl des Verfahrens zum Aufnehmen der Teilpunktsequenz auf der Basis dessen durchgeführt werden, ob der Werkzeugweg ein Rückwärtsweg eines sich hin- und herbewegenden Wegs ist.
  • Die Ausführungsformen der vorliegenden Erfindung sind wie oben beschrieben konfiguriert und können folglich eine Bearbeitungskurven-Erzeugungsvorrichtung bereitstellen, die Informationen zu einer Kurve, die auf der Basis einer Punktsequenz, die einen Werkzeugweg ausdrückt, erzeugt wurde, speichert und die die Informationen in einem Bereich nutzt, in dem das Bereitstellen einer Kurve, die einer anderen Kurve ähnlich ist, gewünscht wird, um die gewünschte Kurve zu erzeugen.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die oben beschriebenen und andere Gegenstände und Merkmale der vorliegenden Erfindung werden aus der folgenden Beschreibung von Ausführungsformen unter Bezugnahme auf die angefügten Zeichnungen offensichtlich werden, in denen:
  • 1 ein Blockdiagramm ist, das eine Konfiguration einer Bearbeitungskurven-Erzeugungsvorrichtung darstellt;
  • 2 ein Diagramm ist, das Punktsequenzdaten darstellt;
  • 3 ein Diagramm ist, das ein Verfahren zum Bestimmen von Faltpunkten auf einem Werkzeugweg darstellt;
  • 4 ein Diagramm ist, das eine Beziehung zwischen Daten segmentierter Kurven und Teilkurvendaten darstellt;
  • 5 ein Ablaufdiagramm ist, das einen Vorgang zur Kurvenerzeugung darstellt;
  • 6 ein Ablaufdiagramm ist, das einen Vorgang zum Bestimmen darstellt, ob ein Werkzeugweg ein Rückwärtsweg ist oder nicht;
  • 7 ein Ablaufdiagramm ist, das einen Vorgang zum Erzeugen normaler segmentierter Kurven darstellt; und
  • 8 ein Ablaufdiagramm ist, das einen Vorgang zum Erzeugen segmentierter Kurven des Rückwärtswegs darstellt.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Mehrere Ausführungsformen der vorliegenden Erfindung stellen ein Kurvenbildungsverfahren des Erzeugens einer parametrischen Kurve bereit, indem Teilpunktsequenzen Schritt für Schritt von einem Werkzeugweg, der von einer Werkzeugsequenz bereitgestellt wird, genommen werden, wobei das Verfahren das Speichern von Informationen, die eine erzeugte Kurve charakterisieren, und wenn das Bereitstellen einer Kurve, die der erzeugten Kurve ähnlich ist, gewünscht wird, das Erzeugen einer Kurve unter Verwendung der gespeicherten Informationen beinhaltet.
  • Mehrere Ausdrücke werden definiert. Teilpunktsequenzen werden als Punktsequenzen definiert, die aus einer Unterteilung einer Punktsequenz zur Kurvenerzeugung resultieren, und eine Teilkurve wird als eine Kurve definiert, die aus einer Teilpunktsequenz erzeugt wurde. Ein Abschlusspunkt einer Kurve wird als ein Punkt definiert, an dem der Werkzeugweg gefaltet wird, so dass die Kurve an dem Abschlusspunkt der Kurve vorübergehend endet und eine andere Kurve beginnt. Eine segmentierte Kurve wird als sich von einem Abschlusspunkt zu dem nächsten Abschlusspunkt erstreckend definiert. Ein kurvenförmiger Werkzeugweg ist ein Satz segmentierter Kurven. Die segmentierte Kurve beinhaltet eine oder mehrere Teilkurven. Ein Vorwärtsweg und ein Rückwärtsweg eines sich hin- und herbewegenden Wegs sind jeweils eine segmentierte Kurve.
  • In einem Verfahren gemäß mehreren Ausführungsformen der vorliegenden Erfindung werden Informationen zu einer Kurve, die unter Verwendung segmentierter Kurven als Einheiten erzeugt wurde, als Informationen segmentierter Kurven gespeichert. Die Informationen segmentierter Kurven beinhalten die Anzahl von Teilkurven, die in einer segmentierten Kurve enthalten sind, und Teilkurveninformationen zu jeder Teilkurve. Die Teilkurveninformationen beinhalten die Position eines Abschlusspunkts, die Länge der Teilkurve und die Anzahl von Punkten in einer Teilpunktsequenz, von der die Teilkurve stammt. Eine Unterteilung in Teilpunktsequenzen basiert auf einer Unterteilung durch die Anzahl von Punkten, die leicht abzuwickeln ist. Eine Einheit wird bereitgestellt, die dazu konfiguriert ist, einen Bereich zu bestimmen, in dem die räumliche Verteilung von Teilpunktsequenzen auf einem Weg mit der räumlichen Verteilung von Teilpunktsequenzen auf einem anderen Weg ausgerichtet werden soll. Wenn das Verfahren den Bereich bestimmt, in dem die Verteilung von Teilpunktsequenzen auf einem Weg mit der Verteilung von Teilpunktsequenzen auf einem anderen Weg ausgerichtet werden soll, werden die Teilpunktsequenzen auf der Basis der gespeicherten Informationen anstelle der Unterteilung durch die Anzahl von Punkten abgerufen. Bei einem sich hin- und herbewegenden Bearbeitungsweg ist ein Rückwärtsweg ein Bereich, in dem die Verteilung von Teilpunktsequenzen mit der Verteilung von Teilpunktsequenzen auf einem Vorwärtsweg ausgerichtet werden soll. Wenn der Werkzeugweg als ein Rückwärtsweg bestimmt wird, werden Informationen segmentierter Informationen zu dem Vorwärtsweg dazu verwendet, den Rückwärtsweg mit dem Vorwärtsweg im Hinblick auf die Anzahl von Teilkurven, die in dem Rückwärtsweg enthalten sind, die Länge jeder Teilpunktsequenz und dergleichen auszurichten. So werden die räumlichen Verteilungen von Teilpunktsequenzen, die den Vorwärtsweg und den Rückwärtsweg bereitstellen, aufeinander auf der Basis der gespeicherten Informationen ausgerichtet. Dies führt zu Kurven ohne stufenartige Unterschiede zwischen dem Vorwärtsweg und dem Rückwärtsweg.
  • Der Punkt des Verfahrens zum Erzeugen einer Bearbeitungskurve oder der Werkzeugwegkurve ist, dass ein Bereich, in dem die Form einer Kurve der Form einer anderen Kurve angeglichen werden soll, wie im Fall des Rückwärtswegs in Bezug auf den Vorwärtsweg, und dass für den bestimmten Bereich ein dedizierter Erzeugungsvorgang, der sich von einem normalen Kurvenerzeugungsvorgang unterscheidet, dazu verwendet wird, eine Kurve zu erzeugen, die gespeicherte Kurveninformationen nutzt.
  • Nun wird ein spezifischer Vorgang für eine Technik gemäß mehreren Ausführungsformen der vorliegenden Erfindung beschrieben, wobei ein Fall, in dem der Werkzeugweg einen sich hin- und herbewegenden Bearbeitungsweg beinhaltet, als ein Beispiel genommen wird. 1 ist ein Blockdiagramm. Eine Bearbeitungskurven-Erzeugungsvorrichtung 1 beinhaltet einen NC-Befehlsdekodierungsteil 10, einen Punktsequenzbezugsteil 20, einen Rückwärtswegbestimmungsteil 30, einen Teil des Erzeugens segmentierter Kurven 40, einen Teil des Speicherns von Informationen segmentierter Kurven 50, einen Rückwärtswegerzeugungsteil 60 und einen Kurvenausgabe-teil 70. Die Bearbeitungskurven-Erzeugungsvorrichtung 1 kann unter Verwendung einer numerischen Steuervorrichtung, die eine Werkzeugmaschine steuert, oder einer Informationsverarbeitungsvorrichtung, wie einem Personalcomputer, konfiguriert werden.
  • Der NC-Befehlsdekodierungsteil 10 ist mit einem NC-Befehlsdekodierungsteil identisch, der in einer numerischen Steuervorrichtung montiert ist, die eine Werkzeugmaschine steuert. Der NC-Befehlsdekodierungsteil 10 dekodiert einen NC-Befehl 2 (Programm zur maschinellen Bearbeitung), um Punktsequenzdaten zu einer Punktsequenz abzurufen, die den Werkzeugweg bereitstellt. Die Punktsequenzdaten sind Daten, die die Positionen von Punkten auf dem Werkzeugweg anzeigen, und bei einer fünfachsigen maschinellen Bearbeitung Daten beinhalten, die die Richtung eines Werkzeugs zusätzlich zu den Positionen anzeigen. 2 zeigt die Struktur von Punktsequenzdaten für eine dreiachsige maschinelle Bearbeitung. Daten zu jedem Punkt der Punktsequenzdaten beinhalten die Koordinaten X, Y und Z eines vorderen Endes des Werkzeugs. Die Anzahl von Daten entspricht der Anzahl der Punkte.
  • Der Punktsequenzbezugsteil 20 fordert benötigte Punktsequenzdaten von dem NC-Befehlsdekodierungsteil 10 an und bezieht diese von dem letzteren. Grundsätzlich werden Daten zu einer vorher bestimmten Anzahl N von Punkten bezogen und für einen Rückwärtsweg werden Punktsequenzdaten innerhalb eines Bereichs, der von dem Rückwärtswegkurvenerzeugungsteil 60 angefordert wird, bezogen. Wenn ein beliebiger Punkt in der angeforderten Punktsequenz als ein Faltpunkt auf einem Werkzeugweg bestimmt wird, wird der Bereich von Punktsequenzdaten bis zu dem Faltpunkt bezogen.
  • In einem Programm zur maschinellen Bearbeitung, das von einer CAM ausgegeben wird, können Punkte, die auf lokal gestörte Weise positioniert sind, aufgrund eines Berechnungsproblems ausgegeben werden. Um das Unterscheiden derartiger anomaler Punkte von echten Faltpunkten zu ermöglichen, werden q (Balken) und p (Balken), die aus dem Mitteln von Richtungen von Segmenten resultieren, die Punktsequenzen miteinander verbinden, bestimmt, so dass der Punkt als ein Faltpunkt bestimmt wird, wenn eine Differenz zwischen den gemittelten Richtungen größer gleich einem Grenzwert ist. Die q (Balken) und p (Balken) sind in 3 beschrieben, wobei q (Balken) und p (Balken) die folgenden sind.
    q →, p →
  • Der Rückwärtswegbestimmungsteil 30 empfängt Punktsequenzdaten von dem Punktsequenzbezugsteil 20, um zu bestimmen, ob die Punktsequenz ein Rückwärtsweg ist oder nicht. Die Bestimmung verwendet Informationen, die in dem Teil des Speicherns von Informationen segmentierter Kurven 50 gespeichert sind, und wird im Folgenden ausführlich beschrieben.
  • Wenn von der Punktsequenz bestimmt wird, dass sie kein Rückwärtsweg ist, wiederholt der Teil des Erzeugens segmentierter Kurven 40 einen Vorgang des Beziehens einer Teilpunktsequenz von dem Punktsequenzbezugsteil 20, um eine Teilkurve zu erzeugen, wodurch eine segmentierte Kurve mit dem Faltpunkt auf dem Werkzeugweg, der dem Endpunkt der segmentierten Kurve entspricht, erzeugt wird. Die Teilkurve ist eine parametrische Kurve, die durch den Startpunkt und den Endpunkt einer Teilpunktsequenz und durch andere Punkte verläuft. Eine B-Spline-Kurve wird als die parametrische Kurve verwendet; es kann jedoch eine beliebige andere Form einer Kurve, wie eine NURBS-Kurve oder eine Polynomkurve, verwendet werden. Die Teilkurve wird durch Folgendes ausgedrückt:
    Figure DE102014015278A1_0002
    wobei u einen Parameter für eine Kurve bezeichnet und in den Wertebereich von 0 ≤ u ≤ 1 fällt,
    C →(u) eine Position bezeichnet, die von einem Punkt auf der Kurve belegt wird, wenn der Parameterwert u ist,
    N1,3(u) eine B-Spline-Basisfunktion dritter Ordnung bezeichnet und
    P →i einen Kontrollpunkt für eine B-Spline-Kurve bezeichnet.
  • Eine Kurve, die durch eine Punkteinheit verläuft, dass der Abstand zwischen einer Kurve, die von der Formel (1) ausgedrückt wird, und jedem der Punkte einer Teilpunktsequenz kleiner gleich einer voreingestellten Toleranz ist, d. h. eine Einheit:
    Figure DE102014015278A1_0003
    wobei ε eine Toleranz bezeichnet,
    Q →k einen Punkt der Teilpunktsequenz bezeichnet,
    u k den Wert eines Parameters für einen Punkt auf der Kurve bezeichnet, der Q →k am nächsten ist, und
    C →(u k) einen Punkt bezeichnet, der erhalten wird, wenn der Wert des Parameters u k ist.
  • Die Domäne des Parameters u wird durch einen Satz von Zahlen unterteilt, die Knoten U = (u0, ..., un+4) genannt werden. Folglich drückt die Formel (1) eine Kurve unter Verwendung der Knoten und der Kontrollpunkte als Variablen aus. Das Bestimmen von Werten für die Variablen bestimmt eine Kurve. Mehrere Verfahren zum Bestimmen einer derartigen Kurve, wie durch die Formel (1) ausgedrückt, wurden vorgeschlagen und sind wohl bekannt, wie in Les Piegl, Wayne Tiller, The NURBS Book, Springer-Verlag, und I. J. Schoenberg, Spline functions and the problem of graduation, Proceedings of the National Academy of Science of the U.S.A., 52 (1964)), beschrieben. Die Beschreibung der Verfahren wird weggelassen.
  • Der Teil des Speicherns von Informationen segmentierter Kurven 50 speichert Informationen zu einer Kurve, die unter Verwendung segmentierter Kurven als Einheiten erzeugt wurde. 4 zeigt die Struktur von Daten segmentierter Kurven. Die Anzahl von Teilkurven zeigt die Anzahl von Teilkurven an, die in einer segmentierten Kurve enthalten sind, und nimmt einen Wert von 1 oder höher an. Ein Differenzial an einem Endpunkt ist das Differenzial einer parametrischen Kurve an dem Endpunkt. Teilkurvendaten sind eine Speicherung von Informationen zu jeder der Teilkurven, die in der segmentierten Kurve enthalten sind, und haben eine in 4 gezeigte Struktur. Die Positionen von Abschlusspunkten stellen den Startpunkt und den Endpunkt von Teilkurven dar. Die Anzahl von Punkten stellt die Anzahl von Punkten dar, die in einer Teilpunktsequenz enthalten sind, von der die Teilkurven stammen. Der Knoten ist der Wert jedes von Knoten der Teilkurve, die durch eine B-Spline-Kurve ausgedrückt wird, und ist ein Satz numerischer Werte zwischen 0 und 1. Die Länge stellt die Länge einer Faltlinie dar, die aus dem Verbinden der Punkte der Teilpunktsequenz unter Verwendung von Segmenten resultiert. Informationen zu segmentierten Kurven werden gespeichert, um als Informationen zu einem Vorwärtsweg genutzt zu werden, wenn ein Rückwärtsweg später auftritt. Im Allgemeinen ist der Rückwärtsweg mittels eines kurzen Wegs mit dem Vorwärtsweg verbunden, und folglich liegen nicht viele segmentierte Kurven zwischen dem Vorwärtsweg und dem Rückwärtsweg vor. Folglich wird eine Obergrenze für die Anzahl gespeicherter Daten segmentierter Kurven eingestellt, so dass, wenn die Anzahl gespeicherter Daten den Obergrenzenwert erreicht, die Daten nacheinander verworfen werden, wobei mit den ältesten Daten begonnen wird.
  • Ob der Werkzeugweg ein Rückwärtsweg ist oder nicht, wird bestimmt, indem die Punktsequenz, aus der eine segmentierte Kurve erzeugt werden soll, und gespeicherte Daten zu einer segmentierten Kurve verglichen werden. Wenn die im Folgenden beschriebenen Bedingungen (1) bis (3) alle erfüllt werden, wird die zu erzeugende segmentierte Kurve als der Rückwärtsweg bestimmt, für den der Vorwärtsweg eine der gespeicherten segmentierten Kurven ist.
  • Bedingung (1): Eine beliebige der gespeicherten segmentierten Kurven hat an dem Endpunkt davon eine Tangentialrichtung, die zu der Tangentialrichtung des Startpunkts der Punktsequenz entgegengesetzt ist.
  • Das bedeutet, dass der Vorwärtsweg und der Rückwärtsweg in ungefähr entgegengesetzten Richtungen sein müssen.
  • Bedingung (2): Der Endpunkt der segmentierten Kurve ist nahe dem Startpunkt der Punktsequenz.
  • Das bedeutet, dass der Vorwärtsweg und der Rückwärtsweg räumlich nah beieinander sein müssen.
  • Bedingung (3): Die Länge der segmentierten Kurve ist ungefähr identisch mit der Faltlinienlänge der Punktsequenz.
  • Das bedeutet, dass der Vorwärtsweg und der Rückwärtsweg eine ungefähr gleiche Länge haben und dass, wenn die Länge zu einen bestimmten Grad zwischen dem Vorwärtsweg und dem Rückwärtsweg variiert, bessere Ergebnisse erzielt werden können, indem dasselbe Kurvenerzeugungsverfahren wie das für den Vorwärtsweg verwendet wird.
  • Der Rückwärtswegerzeugungsteil 60 erzeugt eine Kurve auf der Basis der Punktsequenz, von der bestimmt wurde, dass sie ein Rückwärtsweg ist. Der Rückwärtsweg beinhaltet die gleiche Anzahl von Teilkurven wie die von Teilkurven in dem Vorwärtsweg. Für den Rückwärtsweg werden Teilpunktsequenzen auf der Basis der Punktsequenzlänge entnommen. Die Teilkurven des Vorwärtswegs werden mit C1, ..., Cm (Cm ist die hintere Teilkurve) in Reihenfolge bezeichnet. Die Teilkurven des Rückwärtswegs werden mit C'1, ..., C'm (C'm ist die hintere Teilkurve) in Reihenfolge bezeichnet. C'm-i+1 liegt an einer Position, die Ci gegenüberliegt (i = 1, ..., m). Das Ausmaß des Rückwärtswegs in Bezug auf den Vorwärtsweg kann durch die Formel (3) unter Verwendung der Länge L einer segmentierten Kurve, die ein Kandidat für den Vorwärtsweg ist, und der Punktsequenzlänge L' ausgedrückt werden. r = L' / L (3)
  • Die Teilpunktsequenz, von der C'm-i+1 stammt, wird genommen, so dass die Punktsequenzlänge lm-i+1' der Teilpunktsequenz durch die Formel (4) unter Verwendung der Länge li von Ci und r ausgedrückt wird. lm-i+1' = li × r (4)
  • Im Allgemeinen liegt keiner der Punkte, der in der Punktsequenz enthalten ist, an einer Position vor, die lm-i+1' entspricht, und folglich wird ein neuer Punkt an dieser Position als ein Endpunkt der Teilpunktsequenz hinzugefügt. Sobald die Teilpunktsequenz folglich bestimmt wurde, kann derselbe Vorgang zum Erzeugen einer Teilkurve wie der für normale segmentierte Kurven verwendet werden.
  • Ein Vorgang zum Erzeugen einer Kurve wird gemäß einem Ablaufdiagramm in 5 beschrieben.
  • [Schritt SA100] Eine vorher bestimmte Anzahl von Punkten wird einer spezifizierten Punktsequenz entnommen.
  • [Schritt SA101] Es wird bestimmt, ob die genommene Punktsequenz ein Teil eines Rückwärtswegs ist oder nicht. Ein Verfahren zur Bestimmung wird im Folgenden beschrieben.
  • [Schritt SA102] Wenn von der Punktsequenz bestimmt wird, dass sie kein Rückwärtsweg ist, wird eine segmentierte Kurve unter Anwendung eines normalen Verfahrens erzeugt. Das Verfahren wird im Folgenden beschrieben.
  • [Schritt SA103] Wenn von der Punktsequenz bestimmt wird, dass sie ein Rückwärtsweg ist, wird eine segmentierte Kurve unter Anwendung eines Verfahrens für den Rückwärtsweg erzeugt. Das Verfahren wird im Folgenden beschrieben.
  • [Schritt SA104] Informationen zu der erzeugten segmentierten Kurve werden in den Daten segmentierter Kurven gespeichert.
  • [Schritt SA105] Es wird bestimmt, ob ein beliebiger Punkt der spezifizierten Punktsequenz verbleibt, der nicht zum Erzeugen einer Kurve verwendet wurde, oder nicht. Wenn ein beliebiger Punkt der spezifizierten Punktsequenz verbleibt, kehrt der Vorgang zu Schritt SA100 zurück, um mit dem Erzeugen einer Kurve fortzufahren. Wenn alle Punkte zur Kurvenbildung verwendet wurden, fährt der Vorgang mit Schritt SA106 fort.
  • [Schritt SA106] Daten zu der erzeugten Kurve werden ausgegeben, um die Kurvenerzeugung zu beenden. In diesem Fall werden die Kurvendaten ausgegeben, nachdem alle Punkte zur Kurvenbildung verwendet wurden. Ausgaben mit mehr Details können jedoch bereitgestellt werden; beispielsweise können die Daten jedes Mal ausgegeben werden, wenn eine segmentierte Kurve erzeugt wird.
  • Nun wird ein Vorgang für den Schritt SA101 des Bestimmens, ob der Werkzeugweg ein Rückwärtsweg ist oder nicht, gemäß einem Ablaufdiagramm in 6 beschrieben.
  • [Schritt SB100] Gemäß Bedingung (1) wird die Tangentialrichtung des Startpunkts der Teilpunktsequenz bestimmt, und wenn eine beliebige der gespeicherten segmentierten Kurven an dem Endpunkt davon eine Tangentialrichtung hat, die zu der Tangentialrichtung des Startpunkts der Teilpunktsequenz entgegengesetzt ist, wird diese segmentierte Kurve als ein Kandidat bestimmt und der Vorgang fährt mit Schritt SB101 fort. Wenn keine der gespeicherten segmentierten Kurven an dem Endpunkt davon eine Tangentialrichtung hat, die zu der Tangentialrichtung des Startpunkts der Punktsequenz entgegengesetzt ist, fährt der Vorgang mit Schritt S8104 fort. Ein beliebiges verschiedener Verfahren zum Bestimmen der Tangentialrichtung kann verwendet werden. Mehrere Punkte nahe dem Punkt von Interesse können beispielsweise genommen werden, und die Richtungen von Segmenten, die die Punkte miteinander verbinden, können gemittelt werden. Es wird bestimmt, ob die Tangenten zueinander entgegengesetzt sind oder nicht, indem der Winkel θ zwischen den zwei Tangenten mit einem Grenzwert verglichen wird. Die Tangenten werden als zueinander entgegengesetzt bestimmt, wenn der Grenzwert ≤ θ ≤ 180°.
  • [Schritt SB101] Gemäß Bedingung (2) wird der Abstand zwischen dem Startpunkt der Punktsequenz und dem Endpunkt der segmentierten Kurve, von der in Schritt SB100 bestimmt wurde, dass sie ein Kandidat für den Vorwärtsweg ist, bestimmt, und wenn der Abstand kürzer gleich dem Grenzwert ist, wird der Endpunkt der segmentierten Kurve als nahe dem Startpunkt der Punktsequenz bestimmt.
  • [Schritt SB102] Gemäß Bedingung (3) wird die Länge der Punktsequenz, aus der eine segmentierte Kurve erzeugt werden soll, mit der Länge der segmentierten Kurve, die ein Kandidat für den Vorwärtsweg ist, verglichen. Von der Länge der Punktsequenz wird angenommen, dass sie die Länge einer Faltlinie ist, die die Punkte der Punktsequenz miteinander verbindet. Von dem Endpunkt der Punktsequenz wird angenommen, dass er der nächste Faltpunkt auf dem Werkzeugweg ist. Das oben beschriebene Verfahren zum Bestimmen eines Faltpunkts wird verwendet. Die Länge der segmentierten Kurve, die ein Kandidat für den Vorwärtsweg ist, wird mit L bezeichnet, die Punktsequenzlänge wird mit L' bezeichnet und der Grenzwert wird mit k bezeichnet. Wenn die Formel (5) etabliert wurde, wird dann von der Punktsequenz und der segmentierten Kurve bestimmt, dass sie eine ungefähr gleiche Länge haben. 1 – k ≤ L / L' ≤ 1 + k (5)
  • [Schritt SB103] Ein Flag wird gesetzt, das anzeigt, dass der Werkzeugweg ein Rückwärtsweg ist.
  • [Schritt SB104] Ein Flag wird gelöscht, das anzeigt, dass der Werkzeugweg ein Rückwärtsweg ist.
  • Nun wird ein Vorgang für den Schritt SA102 in 5 des Erzeugens einer normalen segmentierten Kurve gemäß einem Ablaufdiagramm in 7 beschrieben.
  • [Schritt SC100] Eine Anfangskurve ist eine Bézierkurve, die durch den Startpunkt und den Endpunkt der Punktsequenz verläuft und für die Differenziale an den Startpunkten und den Endpunkten spezifizierte Werte haben. Der Wert des Differenzials an dem Startpunkt wird unter Verwendung eines Verfahrens, das in Les Piegl, Wayne Tiller, The NURBS Book, Springer-Verlag, beschrieben wird, und unter Verwendung des Startpunkts und der Punkte nahe dem Startpunkt bestimmt. Dies gilt auch für den Endpunkt. Ein anderes Verfahren kann ein Differenzial an dem Startpunkt einer Bézierkurve verwenden, die durch den Endpunkt und drei Punkte nahe dem Startpunkt verläuft. Für den Endpunkt ein Differenzial an dem Endpunkt einer Bézierkurve, die durch den Startpunkt und drei Punkte nahe dem Endpunkt verläuft.
  • [Schritt SC101] Der Abstand zwischen der Kurve und jedem der Punkte der Teilkurve, die durch die Formel (2) angegeben wird, wird bestimmt und der Höchstwert des Abstands wird erhalten.
  • [Schritt SC102] Wenn der Höchstwert kleiner gleich der Toleranz ist, wird die aktuelle Kurve als eine Teilkurve bestimmt und der Vorgang wird beendet. Wenn der Höchstwert größer als die Toleranz ist, fährt der Vorgang mit Schritt SC103 fort.
  • [Schritt SC103] Ein interner Knoten und ein Kontrollpunkt werden der Kurve hinzugefügt, um die Kurve zu modifizieren, und der Vorgang kehrt zu Schritt SC101 zurück. Der Wert des hinzugefügten Knotens wird unter Verwendung eines beliebigen der Verfahren bestimmt, die in Les Piegl, Wayne Tiller, The NURBS Book, Springer-Verlag, beschrieben werden. Die modifizierte Kurve ist eine B-Spline-Kurve, die in der Form der Formel (1) ausgedrückt wird.
  • [Schritt SC104] Informationen zu der erzeugten Teilkurve werden in den Teilkurvendaten gespeichert.
  • [Schritt SC105] Wenn der Endpunkt der letzten erzeugten Teilkurve ein Faltpunkt auf dem Werkzeugweg ist, wird bestimmt, dass der Endpunkt der segmentierten Kurve erreicht wurde, und der Vorgang wird beendet. Wenn der Endpunkt der letzten erzeugten Teilkurve kein Faltpunkt auf dem Werkzeugweg ist, fährt der Vorgang mit Schritt SC106 fort.
  • [Schritt SC106] Eine Sequenz einer vorher bestimmten Anzahl von Punkten wird neu als eine Teilpunktsequenz entnommen und der Vorgang kehrt zum Schritt SC100 des Erzeugens einer Anfangskurve zurück.
  • Schließlich wird ein Vorgang für Schritt SA103 in 5, in dem die segmentierte Kurve des Rückwärtswegs erzeugt wird, gemäß einem Ablaufdiagramm in 8 beschrieben.
  • [Schritt SD100] Der Wert von r in der Formel (3) wird bestimmt. Wenn von dem Werkzeugweg bestimmt wird, dass er ein Rückwärtsweg ist, wurde die Sequenz bis zu dem Endpunkt des Rückwärtswegs gelesen. Folglich kann der Wert von L' bestimmt werden.
  • [Schritt SD101] Eine Teilpunktsequenz wird entnommen, so dass die resultierende Punktsequenzlänge der Länge entspricht, die von der Formel (4) angegeben wird.
  • [Schritt SD102] Knoten werden aus den Teilkurvendaten zu der entsprechenden Teilkurve des Vorwärtswegs bezogen und umgekehrt. Die umgekehrten Knoten werden dazu verwendet, eine B-Spline-Kurve zu erzeugen. Die Umkehrung eines Knotens bedeutet, dass, wenn der ursprüngliche Knoten mit ui bezeichnet wird, ein neuer Knoten, der mit 1 – ui bezeichnet wird, erzeugt wird. Für die Erzeugung normaler segmentierter Kurven ist die Anfangskurve eine Bézierkurve, wohingegen die Kurve des Rückwärtswegs eine B-Spline-Kurve ist, die unter Verwendung von Informationen zu dem Vorwärtsweg erhalten wird.
  • [Schritt SD103] bis [Schritt SD105] Die Verarbeitung in diesen Schritten des Erzeugens einer Teilkurve selbst ist identisch mit der Verarbeitung für die Erzeugung normaler segmentierter Kurven.
  • [Schritt SD106] Die Verarbeitung zum Speichern von Teilkurveninformationen ist ebenfalls mit der Verarbeitung bei der Erzeugung normaler segmentierter Kurven identisch.
  • [Schritt SD107] Die Verarbeitung zum Bestimmen des Endes der Erzeugung segmentierter Kurven ist ebenfalls mit der Verarbeitung bei der Erzeugung normaler segmentierter Kurven identisch.
  • Der Kurvenausgabeteil 70 gibt Daten zu der resultierenden Kurve in einem vorher bestimmten Format aus. Wenn eine Kurvenerzeugungsvorrichtung von der numerischen Steuervorrichtung getrennt ist, wandelt der Kurvenausgabeteil 70 die Kurve in ein Format um, das von der numerischen Steuervorrichtung dekodiert werden kann, beispielsweise ein NURBS-Befehlsformat. Wenn die Kurvenerzeugungsvorrichtung in die numerische Steuervorrichtung eingebaut ist, so dass die Werkzeugmaschine eine maschinelle Bearbeitung durchführen kann, während die Daten in die Kurve umgewandelt werden, wandelt der Kurvenausgabeteil 70 die Daten in ein internes Format um, das von der numerischen Steuervorrichtung leicht verarbeitet werden kann, d. h. ein Format, das von dem NC-Befehlsdekodierungsteil ausgegeben wird, wenn ein Programm zur maschinellen Bearbeitung einen Kurveninterpolationsbefehl beinhaltet.
  • In den Ausführungsformen wird die B-Spline-Kurve als eine parametrische Kurve verwendet. Um die parametrische Kurve in eine andere Kurvenform, wie eine NURBS-Kurve, auszuweiten, kann dasselbe Konzept auf die Kurve bei geänderter Ausdrucksform der Formel 1 angewendet werden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 2013-171376 [0002]
    • JP 2007-293478 [0002]
    • JP 2006-309645 [0002]
    • JP 2005-182437 [0002]
    • JP 2004-078516 [0002]
  • Zitierte Nicht-Patentliteratur
    • Les Piegl, Wayne Tiller, The NURBS Book, Springer-Verlag, und I. J. Schoenberg, Spline functions and the problem of graduation, Proceedings of the National Academy of Science of the U.S.A., 52 (1964) [0002]
    • Les Piegl, Wayne Tiller, The NURBS Book, Springer-Verlag, und I. J. Schoenberg, Spline functions and the problem of graduation, Proceedings of the National Academy of Science of the U.S.A., 52 (1964) [0037]
    • Les Piegl, Wayne Tiller, The NURBS Book, Springer-Verlag [0064]
    • Les Piegl, Wayne Tiller, The NURBS Book, Springer-Verlag [0067]

Claims (8)

  1. Bearbeitungskurven-Erzeugungsvorrichtung zum Erzeugen einer Bearbeitungskurve eines Werkzeugs, das zum maschinellen Bearbeiten eines Werkstücks verwendet wird, indem das Aufnehmen eines Teils einer Punktsequenz, die den Werkzeugweg ausdrückt, als eine Teilpunktsequenz wiederholt und eine Teilkurve erzeugt wird, wobei die Bearbeitungskurven-Erzeugungsvorrichtung Folgendes umfasst: eine Kurveninformations-Speichereinheit, die dazu konfiguriert ist, für jede von segmentierten Kurven, bei denen es sich um einzelne, den Werkzeugweg bereitstellende Kurventeile handelt, Informationen segmentierter Kurven zu speichern, umfassend eine Anzahl von Teilkurven, die in der segmentierten Kurve enthalten sind, eine Tangentialrichtung an einem Endpunkt der segmentierten Kurve und Teilkurveninformationen, umfassend mindestens eines einer Teilkurvenlänge jeder der Teilkurven oder einer Anzahl von Punkten der Teilpunktsequenz und Informationen, die die Teilkurve mathematisch definieren; eine Kurveninformations-Nutzungsbestimmungseinheit, die konfiguriert ist, um zu bestimmen, ob die gespeicherten Informationen segmentierter Kurven verwendet werden sollen oder nicht, wenn die Teilkurve erzeugt wird; und eine Einheit zur Kurvenerzeugung unter Nutzung gespeicherter Informationen, die dazu konfiguriert ist, eine Teilkurve zu erzeugen, wobei die Informationen segmentierter Kurven genutzt werden, und eine Teilkurve zu erzeugen, wenn die Kurveninformations-Nutzungsbestimmungseinheit bestimmt, die gespeicherten Informationen zu nutzen.
  2. Bearbeitungskurven-Erzeugungsvorrichtung nach Anspruch 1, wobei die Kurveninformations-Nutzungsbestimmungseinheit konfiguriert ist, um zu bestimmen, ob ein aktueller Weg ein Rückwärtsweg eines sich hin- und herbewegenden Bearbeitungswegs ist oder nicht.
  3. Bearbeitungskurven-Erzeugungsvorrichtung nach Anspruch 1, wobei die Bearbeitungskurven-Erzeugungsvorrichtung weiterhin dazu konfiguriert ist, die Teilpunktsequenz zu aufnehmen, indem entweder das Aufnehmen auf der Basis der Anzahl von Punkten oder das Aufnehmen auf der Basis einer Länge der Teilpunktsequenz ausgewählt wird.
  4. Bearbeitungskurven-Erzeugungsvorrichtung nach Anspruch 3, wobei die Auswahl des Verfahrens zum Aufnehmen der Teilpunktsequenz auf der Basis dessen durchgeführt wird, ob der Werkzeugweg ein Rückwärtsweg eines sich hin- und herbewegenden Wegs ist oder nicht.
  5. Bearbeitungskurven-Erzeugungsverfahren zum Erzeugen einer Bearbeitungskurve eines Werkzeugs, das zum maschinellen Bearbeiten eines Werkstücks verwendet wird, indem ein Vorgang des Aufnehmens eines Teils einer Punktsequenz, die den Werkzeugweg ausdrückt, als eine Teilpunktsequenz wiederholt und eine Teilkurve erzeugt wird, wobei das Bearbeitungskurven-Erzeugungsverfahren Folgendes umfasst: Speichern, für jede von segmentierten Kurven, bei denen es sich um einzelne, den Werkzeugweg bereitstellende Kurventeile handelt, von Informationen segmentierter Kurven, umfassend eine Anzahl von Teilkurven, die in der segmentierten Kurve enthalten sind, eine Tangentialrichtung an einem Endpunkt der segmentierten Kurve und Teilkurveninformationen, enthaltend mindestens eines einer Teilkurvenlänge jeder der Teilkurven oder einer Anzahl von Punkten der Teilpunktsequenz und Informationen, die die Teilkurve mathematisch definieren; und Bestimmen, ob die gespeicherten Informationen segmentierter Kurven verwendet werden sollen oder nicht, wenn die Teilkurve erzeugt wird, und wenn bestimmt wird, dass die gespeicherten Informationen segmentierter Kurven verwendet werden sollen, Erzeugen einer Teilkurve, wobei die Informationen segmentierter Kurven verwendet werden.
  6. Bearbeitungskurven-Erzeugungsverfahren nach Anspruch 5, wobei, ob die gespeicherten Informationen segmentierter Kurven verwendet werden oder nicht, wenn die Teilkurve erzeugt wird, in Abhängigkeit davon bestimmt wird, ob der Werkzeugweg ein Rückwärtsweg eines sich hin- und herbewegenden Bearbeitungswegs ist oder nicht.
  7. Bearbeitungskurven-Erzeugungsverfahren nach Anspruch 5, wobei das Aufnehmen der Teilpunktsequenz durchgeführt wird, indem entweder ein Verfahren, das auf der Anzahl von Punkten basiert, oder ein Verfahren, das auf einer Länge der Teilpunktsequenz basiert, ausgewählt wird.
  8. Bearbeitungskurven-Erzeugungsverfahren nach Anspruch 7, wobei die Auswahl des Verfahrens zum Aufnehmen der Teilpunktsequenz auf der Basis dessen durchgeführt wird, ob der Werkzeugweg ein Rückwärtsweg eines sich hin- und herbewegenden Wegs ist oder nicht.
DE102014015278.2A 2013-10-23 2014-10-16 Bearbeitungskurven-Erzeugungsvorrichtung und dazu gehöriges Bearbeitungskurven-Erzeugungsverfahren Active DE102014015278B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013220539A JP5845228B2 (ja) 2013-10-23 2013-10-23 工具経路曲線化装置
JP2013-220539 2013-10-23

Publications (2)

Publication Number Publication Date
DE102014015278A1 true DE102014015278A1 (de) 2015-04-23
DE102014015278B4 DE102014015278B4 (de) 2021-09-30

Family

ID=52775261

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014015278.2A Active DE102014015278B4 (de) 2013-10-23 2014-10-16 Bearbeitungskurven-Erzeugungsvorrichtung und dazu gehöriges Bearbeitungskurven-Erzeugungsverfahren

Country Status (4)

Country Link
US (1) US9696708B2 (de)
JP (1) JP5845228B2 (de)
CN (1) CN104570951B (de)
DE (1) DE102014015278B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014018973B4 (de) 2013-12-24 2019-05-02 Fanuc Corporation Numerische Steuerung zum Glätten des Werkzeugwegs im Betrieb basierend auf Daten in Tabellenform

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104820744A (zh) * 2015-04-30 2015-08-05 柳州宏开汽车科技有限公司 一种曲面数控加工中面向nurbs刀具路径的生成方法
WO2019105562A1 (en) * 2017-11-30 2019-06-06 Siemens Industry Software Limited A method of operating a cad system model for modelling an article to be manufactured

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004078516A (ja) 2002-08-16 2004-03-11 Fanuc Ltd 曲線補間方法
JP2005182437A (ja) 2003-12-19 2005-07-07 Fanuc Ltd 数値制御装置及び数値制御方法
JP2006309645A (ja) 2005-05-02 2006-11-09 Fanuc Ltd 曲線補間方法
JP2007293478A (ja) 2006-04-24 2007-11-08 Fanuc Ltd 曲線補間方法
JP2013171376A (ja) 2012-02-20 2013-09-02 Fanuc Ltd 加工曲線作成機能を有する数値制御装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2531148B2 (ja) * 1986-09-04 1996-09-04 ソニー株式会社 自由曲面の加工情報生成方法
JPH06214633A (ja) * 1991-05-31 1994-08-05 Riyouki Eng Kk 平面及び曲面の研削装置
JP2800861B2 (ja) 1991-11-19 1998-09-21 株式会社 エフ・エーラボ 三次元加工方法
JP3284865B2 (ja) * 1996-01-29 2002-05-20 トヨタ自動車株式会社 フィレット面形成方法
US6311098B1 (en) * 1996-03-26 2001-10-30 Toyota Jidosha Kabushiki Kaisha Method and apparatus for preparing data on tool moving path, and machining method and system
DE19846426A1 (de) * 1998-10-08 2000-04-13 Open Mind Software Technologie Verfahren zum Steuern der Arbeitsbewegung eines Werkzeugs zur materialabtragenden Bearbeitung eines Materialblocks
JP3201751B2 (ja) * 1999-06-11 2001-08-27 株式会社エフ・エーラボ 三次元加工方法及び三次元加工用制御プログラムを記録した媒体
JP3610485B2 (ja) * 1999-09-20 2005-01-12 株式会社日立製作所 数値制御曲面加工装置
JP3536300B2 (ja) * 1999-11-15 2004-06-07 株式会社安川電機 数値制御装置の曲線補間方法
US6782306B2 (en) 1999-12-16 2004-08-24 Siemens Energy & Automation Motion control system and method utilizing spline interpolation
EP1235126B1 (de) 2001-02-26 2006-09-27 Hitachi, Ltd. Numerisches Steuerungssystem für gekrümmte Fläche
DE10224755A1 (de) * 2002-06-04 2003-12-24 Siemens Ag Steuerungsverfahren für eine industrielle Bearbeitungsmaschine
JP2004185397A (ja) * 2002-12-04 2004-07-02 Fanuc Ltd 数値制御装置
WO2006102517A2 (en) * 2005-03-23 2006-09-28 Hurco Companies, Inc. Method of tolerance-based trajectory planning and control
JP4736607B2 (ja) 2005-08-05 2011-07-27 株式会社デンソーウェーブ ロボット制御装置
US7684891B2 (en) * 2006-08-04 2010-03-23 Hurco Companies, Inc. System and method for tool use management
JP4980458B2 (ja) * 2010-10-27 2012-07-18 ファナック株式会社 数値制御工作機械の加工時間予測装置
CN102393678B (zh) * 2011-08-25 2014-05-07 沈阳高精数控技术有限公司 适用于五轴数控装置的轨迹平滑处理方法
JP5192574B2 (ja) * 2011-08-25 2013-05-08 ファナック株式会社 工具先端点の加速度または加加速度の表示部を備えた工具軌跡表示装置
JP5255108B2 (ja) * 2011-11-04 2013-08-07 ファナック株式会社 指令経路速度条件による速度制御を行う数値制御装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004078516A (ja) 2002-08-16 2004-03-11 Fanuc Ltd 曲線補間方法
JP2005182437A (ja) 2003-12-19 2005-07-07 Fanuc Ltd 数値制御装置及び数値制御方法
JP2006309645A (ja) 2005-05-02 2006-11-09 Fanuc Ltd 曲線補間方法
JP2007293478A (ja) 2006-04-24 2007-11-08 Fanuc Ltd 曲線補間方法
JP2013171376A (ja) 2012-02-20 2013-09-02 Fanuc Ltd 加工曲線作成機能を有する数値制御装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Les Piegl, Wayne Tiller, The NURBS Book, Springer-Verlag
Les Piegl, Wayne Tiller, The NURBS Book, Springer-Verlag, und I. J. Schoenberg, Spline functions and the problem of graduation, Proceedings of the National Academy of Science of the U.S.A., 52 (1964)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014018973B4 (de) 2013-12-24 2019-05-02 Fanuc Corporation Numerische Steuerung zum Glätten des Werkzeugwegs im Betrieb basierend auf Daten in Tabellenform

Also Published As

Publication number Publication date
DE102014015278B4 (de) 2021-09-30
JP2015082251A (ja) 2015-04-27
CN104570951A (zh) 2015-04-29
JP5845228B2 (ja) 2016-01-20
CN104570951B (zh) 2018-10-02
US9696708B2 (en) 2017-07-04
US20150112474A1 (en) 2015-04-23

Similar Documents

Publication Publication Date Title
DE102013002516B4 (de) Numerische Steuerung mit Bearbeitungskurvenerzeugungsfunktion
DE102017124477B4 (de) Werkzeugpfaderzeugungsvorrichtung, werkzeugpfaderzeugungsverfahren und werkzeugpfaderzeugungsprogramm
DE112016005969T5 (de) Werkzeugwegkorrekturvorrichtung und Werkzeugwegkorrekturverfahren
DE112012005770T5 (de) Zeichnungsdaten-Erzeugungsvorrichtung und Bildzeichnungsvorrichtung
DE3420576A1 (de) Anordnung zum reprojizieren von bildern unter verwendung der transformationstechniken
DE102018007773A1 (de) Numerisches Steuergerät
DE102015120118A1 (de) Werkzeugwegkurvenerzeugungsverfahren und Werkzeugwegkurvenerzeugungsvorrichtung
DE102014015278A1 (de) Bearbeitungskurven-Erzeugungsvorrichtung und dazu gehöriges Bearbeitungskurven-Erzeugungsverfahren
DE112020000656T5 (de) Bearbeitungsprogrammumwandlungsvorrichtung, numerische Steuerung, Bearbeitungsprogrammumwandlungsverfahren und Vorrichtung für maschinelles Lernen
DE102007028895A1 (de) Verfahren zur Segmentierung von Strukturen in Bilddatensätzen und Bildverarbeitungseinheit zur Durchführung des Verfahrens
EP1334468A2 (de) Verfahren und system zur rekonstruktion einer fläche
EP2602591B1 (de) Verfahren zur vereinfachten Speicherung von Daten repräsentierend Formen
DE102015001526B4 (de) Numerische Steuerung mit Befehlspfad-Komprimierungsfunktion
DE112010005294T5 (de) Bildanzeigevorrichtung
WO2004111939A2 (de) Verfahren zur ermittlung eines verschiebungsvektors in der bildverarbeitung
DE3634024A1 (de) Verfahren zur umwandlung von konturmustern
DE102019207432A1 (de) Numeriksteuerung, Numeriksteuerverfahren und Numeriksteuerprogramm
AT13448U1 (de) Programmlogik zur Spezifikation der Anforderungen an ein Entwicklungsergebnis
DE102018117244B3 (de) Verfahren zum Ermitteln einer Grobbahn aus einer vorgegebenen Kontur
EP3465608B1 (de) Verfahren und vorrichtung zum bestimmen eines übergangs zwischen zwei anzeigebildern, und fahrzeug
DE112020006661T5 (de) Merkmalsmenge-extrahierungseinrichtung, zeitsequentielle inferenzvorrichtung,zeitsequentielles lernsystem, zeitsequentielles merkmalsemengeextrahierungsverfahren,zeitsequentielles inferenzverfahren und zeitsequentielles lernverfahren
DE102019127276A1 (de) Wellenformlückenfüllung
EP3685349A1 (de) Verfahren zur erkennung einer geometrie eines teilbereichs eines objekts
DE102018122842A1 (de) Computerimplementiertes Verfahren zur Komprimierung von Messdaten aus einer Messung eines Messvolumens
DE102008022532A1 (de) Abstandbestimmungsverfahren

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: WUESTHOFF & WUESTHOFF, PATENTANWAELTE PARTG MB, DE

R083 Amendment of/additions to inventor(s)
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final