DE102016012042B4 - Numerische Steuerung mit Positionierung zur Vermeidung einer Kollision mit einem Werkstück - Google Patents

Numerische Steuerung mit Positionierung zur Vermeidung einer Kollision mit einem Werkstück Download PDF

Info

Publication number
DE102016012042B4
DE102016012042B4 DE102016012042.8A DE102016012042A DE102016012042B4 DE 102016012042 B4 DE102016012042 B4 DE 102016012042B4 DE 102016012042 A DE102016012042 A DE 102016012042A DE 102016012042 B4 DE102016012042 B4 DE 102016012042B4
Authority
DE
Germany
Prior art keywords
movement
axis
tool
path
workpiece
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102016012042.8A
Other languages
English (en)
Other versions
DE102016012042A1 (de
Inventor
Motohiko Ito
Hiroshi Minami
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 DE102016012042A1 publication Critical patent/DE102016012042A1/de
Application granted granted Critical
Publication of DE102016012042B4 publication Critical patent/DE102016012042B4/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/402Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for positioning, e.g. centring a tool relative to a hole in the workpiece, additional detection means to correct position
    • 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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • 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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/27Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an absolute digital measuring device
    • G05B19/29Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an absolute digital measuring device for point-to-point control
    • 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/406Numerical 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 monitoring or safety
    • G05B19/4061Avoiding collision or forbidden zones
    • 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/35Nc in input of data, input till input file format
    • G05B2219/35349Display part, programmed locus and tool path, traject, dynamic locus
    • 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/50049Control machine as function of position, angle of workpiece

Landscapes

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

Abstract

Numerische Steuerung (1) zum Antreiben einer Mehrzahl von Achsen für eine Relativbewegung eines Werkzeuges (2, 4) in Bezug auf ein Werkstück (3, 5) in Richtungen entlang jeder der Mehrzahl von Achsen zum Steuern einer Maschine, welche entsprechend Programmbefehlen an einem Werkstück (3, 5) eine Bearbeitung ausführt, wobei die numerische Steuerung (1) aufweist:Eine Befehlsanalyseeinheit (10), welche einen Programmbefehl analysiert zur Erzeugung von Bewegungsbefehlsdaten; undeine Wegkorrektureinheit (11), welche dann, wenn ein Programmbefehl ein Positionierungsbefehl ist, einen Korrekturweg erzeugt, welcher in eine Richtung weg vom Werkstück (3, 5) abgekrümmt ist in Bezug auf einen gradlinigen Weg von der momentanen Position des Werkzeuges (2, 4) zu einer durch die Bewegungsbefehlsdaten instruierten befohlenen Position, wobei die Wegkorrektureinheit (11) eingerichtet ist, eine Bewegungszeit des Werkzeuges (2, 4), das sich in einer Richtung entlang jeder der mehreren Achsen auf Basis der Bewegungsbefehlsdaten in Richtungen entlang jeder der Mehrzahl von Achsen bewegt, zu berechnen, und wenn die Bewegung des Werkzeuges (2, 4) in einer Richtung entlang einer Achse anders als die Richtung entlang der Achse mit der längsten Bewegungszeit das Werkzeug (2, 4) veranlasst, sich in eine sich dem Werkstück (3, 5) nähernde Richtung zu bewegen den Korrekturweg zu erzeugen durch Verzögerung einer Bewegungsstartzeit des Werkzeuges (2, 4) in einer Richtung entlang einer Achse anders als einer Richtung entlang einer Achse mit der längsten Bewegungszeit so dass die Bewegungszeit des Werkzeuges (2, 4) in einer Richtung entlang einer Achse anders als die Richtung entlang einer Achse mit der längsten Bewegungszeit zu der gleichen Zeit endet wie die längste Bewegungszeit, unddie numerische Steuerung (1) den Antrieb der Mehrzahl der Achsen entsprechend dem korrigierten Weg steuert.

Description

  • Hintergrund der Erfindung
  • Gebiet der Erfindung
  • Die Erfindung betrifft eine numerische Steuerung und insbesondere eine solche mit einer Funktion zum Verhindern einer Kollision (unerwünschter Eingriff) zwischen einem Werkzeug und einem Werkstück bei einem Positionierungsbefehl zur gleichzeitigen Bewegung mehrerer Achsen.
  • Stand der Technik
  • Bei einem Positionierbefehl zum simultanen Bewegen einer Mehrzahl von Achsen wird der Bewegungsweg dann, wenn die jeweiligen Achsen sich nicht synchron bewegen, wie bei einem Schneidbefehl, keine gerade Linie. Damit können ein Werkzeug und ein Werkstück miteinander in Kollision (einen unerwünschten Eingriff) geraten. Ein Beispiel für eine Kollision zwischen einem Werkzeug und einem Werkstück wird nachfolgend mit Bezug auf 9 beschrieben.
  • Gemäß 9 ist ein Werkzeug 2 an einem Punkt A (momentane Position) positioniert und es wird ein Befehl zum Positionieren des Werkzeuges 2 an einem Punkt B (befohlene Position) ausgeführt, wobei das Werkzeug 2 so gesteuert wird, dass es sich auf einer geraden Linie bewegt, so dass das Werkzeug 2 sich entlang dem Pfad gemäß einem durchgezogenen Pfeil bewegt. Dabei geraten das Werkzeug 2 und das Werkzeug 3 nicht in Kollision. Tatsächlich aber ist in einem Positionierbefehl die Synchronisation der X-Achse und der Z-Achse nicht gesichert und die X-Achse und Z-Achse werden jeweils mit einer bestimmten Geschwindigkeit angetrieben. Entsprechend bewegt sich das Werkzeug 2 auf einem veränderlichen Weg, der in 9 mit gestrichelter Linie dargestellt ist und es kommt zu einer Kollision zwischen Werkzeug 2 und Werkstück 3. Um ein solches Problem zu vermeiden verwendet ein Stand der Technik eine Positionierung mit linearer Interpolation, wobei die Positionierung entlang einem Weg erfolgt, welcher einen Startpunkt und einen Endpunkt mit einer geraden Linie verbindet, siehe beispielsweise veröffentlichte japanische Patentanmeldung JP H08-076827 A .
  • Jedoch muss bei einer Bewegung mehrerer Achsen auf einem Weg, welcher einen Startpunkt und einen Endpunkt mit einer geraden Linie verbindet, wie bei der offengelegten japanischen Patentanmeldung JP H08-076827 A , eine Positionierung mit linearer Interpolation eingesetzt werden sowie eine Festzeitbeschleunigung und - Abbremsung, wobei alle interpolierten Achsen die gleiche Beschleunigung (Zeitkonstante) haben.
  • Die 10A und 10B vergleichen Geschwindigkeitsänderungen der Achsen zwischen einem Fall, bei dem die Werkzeugpositionierungssteuerung mit einer nichtlinearen Interpolationspositionierung erfolgt (10A) mit dem Fall, bei dem die Werkzeugpositionierungssteuerung mit einer linearen Interpolationspositionierung ( 10B) erfolgt.
  • 10A zeigt, werden im Falle einer Positionierungssteuerung mit einer nichtlinearen Interpolationspositionierung eine X-Achse und eine Z-Achse beschleunigt bzw. abgebremst auf Basis von Zeitkonstanten, die für jede Achse eingestellt sind (Tx für die X-Achse und Tz für die Z-Achse) und der Antrieb erfolgt unabhängig. Im Unterschied hierzu wird gemäß 10B im Falle einer Werkzeugpositionierungssteuerung mit einer linearen Interpolationspositionierung mit Festzeit-Beschleunigung und - Abbremsung die Zeitkonstante Tz der Z-Achse an die Zeitkonstante Tx für die X-Achse bezüglich Beschleunigung und Abbremsung angepasst und die X-Achse und die Z-Achse werden bei der Steuerung synchron angetrieben, so dass eine vorgegebene Geschwindigkeit (Maximalgeschwindigkeit) nicht überschritten wird.
  • Wie oben beschrieben, muss bei der linearen Interpolationspositionierung die größte Zeitkonstante der interpolierten Achsen für alle zu interpolierenden Achsen eingestellt werden und die Steuerung muss so ausgeführt werden, dass die Geschwindigkeit jeder Achse nicht die vorgegebenen Geschwindigkeit überschreitet. Aus diesen Gründen tritt ein Nachteil im Vergleich zu der nichtlinearen Interpolationspositionierung dahingehend auf, dass die Zykluszeit länger wird.
  • Aus der DE 10 2014 010 213 A1 ist eine numerische Steuerungsvorrichtung mit einer Funktion zur Verringerung des Pfads zum Startpunkt in einem festen Zyklus bekannt. Hierzu wird ein Bereich bestimmt, in welchem das betreffende Werkstück bereits spanend bearbeitet wurde. Dann wird ein Pfad von der Schneid-Abschlussposition in einem Zyklus zur Schneid-Startposition in dem folgenden Zyklus mit einer möglichst geringen Länge festgelegt. Auf diese Weise lässt sich eine verringerte Zykluszeit erzielen.
  • Aus der US 2003/0009260 A1 ist eine Positionierungssteuervorrichtung bekannt, bei der ein Bewegungspfad eines Übertragungskopfes in mehrere lineare Abschnitte unterteilt wird, um den Übertragungskopf um einen zu vermeidenden Bereich herum zu steuern.
  • Aus der DE 10 2009 048 252 A1 ist eine numerisch gesteuerte Maschine mit einer Kollisionsverhinderungsvorrichtung bekannt. Die Vorrichtung verwendet ein Verfahren, bei dem vorab geprüft wird, ob die Möglichkeit einer Kollision bezüglich eines Sollpfades besteht. Aus der DE 11 2010 005 521 T5 ist eine numerische Steuervorrichtung mit einer Kollisionsbestimmungseinheit bekannt, die eine Möglichkeit einer Kollision zwischen einer Maschine und einem Zugangsverbotsbereich detektiert. Aus der DE 10 2015 002 040 A1 ist eine numerische Steuerung für eine Laserbearbeitungsmaschine bekannt, bei der die Steuerung so durchgeführt wird, dass eine Kollision zwischen einem Werkstück und einer Düsenspitze dadurch vermieden wird, dass die Verstärkung bei der Abstandssteuerung vergrößert wird, wenn die Düsenspitze bei der Laserbearbeitung dem Werkstück sehr nahe kommt.
  • Kurzbeschreibung der Erfindung
  • Ziel der vorliegenden Erfindung ist die Bereitstellung einer numerischen Steuerung mit einer Funktion zum Verhindern einer Kollision zwischen einem Werkzeug und einem Werkstück, wobei die Zykluszeit bei einem Positionierungsbefehl zum simultanen Bewegen mehrerer Achsen kurz gehalten ist.
  • Diese Aufgabe wird mit einer numerischen Steuerung gemäß Anspruch 1 und mit einer numerischen Steuerung gemäß Anspruch 3 gelöst.
  • Die Erfindung lehrt eine numerische Steuerung, mit welcher bei einem Positionierungsbefehl zum simultanen Bewegen mehrerer Achsen dann, wenn ein einen Startpunkt und einen Endpunkt mit einer geraden Linie verbindender Weg nicht mit einem Werkstück kollidiert, auch wenn kein geradliniger Weg ausgewählt ist, eine Kollision mit einem Werkstück vermieden werden kann und eine Positionierung mit einer kurzen Zykluszeit ausführbar ist.
  • Eine numerische Steuerung gemäß der Erfindung treibt mehrere Achsen an, um ein Werkzeug und ein Werkstück relativ zueinander zu bewegen und so auf Basis eines Programmbefehls eine Maschine zu steuern, welche ein Werkstück bearbeitet. Eine erste Variante der numerischen Steuerung hat eine Befehlsanalyseeinheit, welche den Programmbefehl analysiert zur Erzeugung von Bewegungsbefehlsdaten und eine Wegkorrektureinheit, welche dann, wenn ein Befehl aus dem Programmbefehl ein Positionierbefehl ist, einen Korrekturweg erzeugt, der in einer Richtung weg vom Werkstück relativ zu einem geradlinigen Weg aus der momentanen Position des Werkstückes in Richtung auf eine durch die Bewegungsbefehlsdaten befohlene Position abgebogen ist. Die numerische Steuerung steuert die Achse dann entsprechend dem Korrekturweg.
  • Die Wegkorrektureinheit kann eingerichtet sein, für jede aus einer Mehrzahl von Achsen, welche entsprechend den Bewegungsbefehlsdaten bewegt werden, eine Bewegungszeit zu berechnen und den Korrekturweg zu erzeugen durch Verzögerung einer Bewegungsstartzeit einer Achse, die verschieden ist von der Achse mit der längten Bewegungszeit, so dass dann, wenn die von der Achse mit längster Bewegungszeit verschiedene Achse sich in einer Richtung bewegt, welche eine Annäherung des Werkzeuges an das Werkstück bewirkt, die von der Achse mit der längsten Bewegungszeit verschiedene Achse die Bewegung zur gleichen Zeit beendet wie die Achse mit der längsten Bewegungszeit.
  • Weiterhin kann die Wegkorrektureinheit eingerichtet sein, zu ermitteln, ob die von der Achse mit der längsten Bewegungszeit verschiedene Achse sich in einer Richtung bewegt, welche eine Annäherung des Werkzeuges an das Werkstück bewirkt, auf Basis von Daten bezüglich eines Zusammenhanges zwischen den Bewegungsrichtungen der Achsen, welche für die jeweiligen Achsen im Voraus eingestellt sind, und dem Werkstück.
  • Eine zweite Variante einer numerischen Steuerung gemäß der Erfindung hat eine Befehlsanalyseeinheit, welche den Programmfehler analysiert zur Erzeugung von Bewegungsbefehlsdaten und eine Wegkorrektureinheit, welche dann, wenn ein Befehl aus dem Programmbefehl ein Positionierungsbefehl ist, welcher einen Umgehungsbefehl enthält, der eine Richtung spezifizieren kann, welche eine Abbiegung des Werkzeugweges in Richtung weg vom Werkstück bewirkt, einen Korrekturweg erzeugt, der in Bezug auf eine gerade Linie in eine durch den Umgehungsbefehl spezifizierte Richtung abgebogen ist hin zu einer befohlenen Position, wie durch die Bewegungsbefehlsdaten befohlen, ausgehend von einer momentanen Position des Werkzeuges. Die numerische Steuerung steuert die Achsen entsprechend dem Korrekturweg.
  • Mit der vorliegenden Erfindung kann eine Kollision eines Werkzeuges mit einem Werkstück vermieden werden unter Verwendung einer nichtlinearen Interpolationspositionierung. Im Ergebnis kann eine kürzeste Zeitkonstante für jede Achse eingestellt werden, so dass die Zykluszeit verkürzt werden kann.
  • Figurenliste
  • Die obigen sowie weitere Ziele und Merkmale der Erfindung werden noch deutlicher aus der nachfolgenden Beschreibung bevorzugter Ausführungsbeispiele mit Bezug auf die Figuren:
    • 1A und 1B sind Diagramme zur Erläuterung von Wegänderungen zur Vermeidung einer Kollision zwischen einem Werkzeug und einem Werkstück gemäß der Erfindung;
    • 2 zeigt einen Werkzeugweg beim Drehen mit nichtlinearer Interpolationspositionierung;
    • 3A bis 3C erläutern einen Weg beim Drehen mit nichtlinearer Interpolationspositionierung gemäß einem ersten Ausführungsbeispiel der Erfindung;
    • 4 ist ein funktionales Blockdiagramm einer numerischen Steuerung gemäß einem ersten Ausführungsbeispiel der Erfindung;
    • 5 ist ein Flussdiagramm zur Erläuterung des Ablaufs einer Wegkorrekturprozedur bei nichtlinearer Interpolationspositionierung, ausgeführt mit der numerischen Steuerung gemäß 4;
    • 6 ist eine Erläuterung eines Weges bei nichtlinearer Interpolationspositionierung bei Bearbeitung in einem Bearbeitungszentrum;
    • 7 erläutert einen Korrekturweg bei nichtlinearer Interpolationspositionierung unter Verwendung eines Umgehungsbefehls gemäß einem zweiten Ausführungsbeispiel der Erfindung;
    • 8 ist ein Flussdiagramm zur Erläuterung des Ablaufs in einer numerischen Steuerung gemäß dem zweiten Ausführungsbeispiel der Erfindung;
    • 9 zeigt ein Beispiel für eine Kollision zwischen einem Werkzeug und einem Werkstück bei Positionierung des Werkzeugs; und
    • 10A und 10B vergleichen Geschwindigkeitsänderungen von Achsen zwischen nichtlinearer Interpolationspositionierung und linearer Interpolationspositionierung.
  • Beschreibung bevorzugter Ausführungsbeispiele im Einzelnen
  • Erfindungsgemäß wird eine nichtlineare Interpolationspositionierung eingesetzt zur unabhängigen Bewegung jeder Achse und wenn unter den instruierten Achsen eine Achse mit einer kürzeren Bewegungszeit sich „in Richtung auf das Werkstück“ bewegt, wird die Bewegungsstartzeit der Achse mit kürzerer Bewegungszeit verzögert, wodurch die Positionierung entlang einem Weg erfolgt, welcher in einer dem Werkstück entgegengesetzten Richtung verläuft (abgebogen ist) und entlang dem keine Kollision zwischen einem Werkzeug und einem Werkstück auftritt.
  • Die 1A und 1B sind Diagramme zur Erläuterung einer Wegänderung zum Vermeiden einer Kollision zwischen einem Werkzeug und einem Werkstück entsprechend der Erfindung. Beim Beispiel gemäß 1A ist der Bewegungsstart einer X-Achse, welche eine kürzere Bewegungszeit hat, so verzögert, dass die X-Achse zur gleichen Zeit ihre Bewegung beendet wie die Z-Achse, welche eine längere Bewegungszeit hat. Damit wird gemäß 1B der Bewegungsweg eines Werkzeuges 2 in einen Weg s3 geändert, auf welchem keine Kollision zwischen Werkzeug und Werkstück 3 auftritt.
  • Wenn die Richtung eines Werkstückes automatisch spezifizierbar ist aus einer Werkzeugkantenrichtung, einer Drehachsenrichtung des Werkstückes in einer Drehbank oder aufgrund von CAD-Daten des Werkstückes, welche in die numerische Steuerung übertragen sind, erfolgt erfindungsgemäß automatisch eine Bestimmung, ob eine Wegänderung in einem normalen Positionierbefehl erfolgt. Wenn hingegen die Richtung des Werkstückes nicht automatisch spezifizierbar ist, wird die Wegänderung durch ein Programm befohlen. Beispielsweise wird zwischen der linken Seite und der rechten Seite in Bewegungsrichtung eines einen Startpunkt und einen Endpunkt mit einer geraden Linie verbindenden Weges eines gewünschte Bewegungsrichtung spezifiziert und eine mögliche Bewegungsrichtung wird festgelegt bei Ausführung einer nichtlinearen Interpolationspositionierung. Erfolgte die Bewegung in Richtung entgegengesetzt zu der durch das Programm spezifizierten Richtung, erfolgt eine Wegänderung.
  • Zunächst soll ein erstes Ausführungsbeispiel der numerischen Steuerung gemäß der Erfindung mit Bezug auf die 2 bis 5 näher beschrieben werden.
  • Bei diesem Ausführungsbeispiel erfolgt eine Wegänderung in einer Drehbank auf Basis einer automatischen Bestimmung, wodurch eine Kollision zwischen einem Werkzeug und einem Werkstück vermieden wird.
  • 2 erläutert einen Weg bei einer nichtlinearen Interpolationspositionierung beim Drehen. Wenn gemäß 2 eine grade Linie s1, welche einen Punkt A und eine Punkt B verbindet, das Werkstück 3 nicht kontaktiert, starten bei Ausführung eines Positionierungsbefehls vom Punkt A zum Punkt B (G00 XBx ZBz ) durch nichtlineare Interpolationspositionierung sowohl die X-Achse als auch die Z-Achse gleichzeitig ihre Bewegung. Damit wird der Werkzeugweg ein gekrümmter Weg.
  • Ist dabei der Weg des Werkzeuges 2 in einer Richtung von X=0 abgebogen unter Entfernung von der geraden Linie s1, welche den Punkt A und den Punkt B verbindet (in 2 eine Fläche unterhalb der die Punkte A und B verbindenden Linie) (der Weg, welcher mit einer durchgezogenen Linie s2 dargestellt ist), besteht die Möglichkeit, dass das Werkzeug 2 das Werkstück 3 kontaktiert. Aus diesem Grunde wird der Weg des Werkzeuges 2 so geändert, (siehe Weg s3 in 1), dass er in Richtung weg vom Werkstück 3 abgebogen ist (in 2 eine Fläche oberhalb der die Punkte A und B verbindenden geraden Linie s1), so dass das Werkzeug 2 das Werkstück 3 nicht kontaktiert.
  • Die 3A bis 3C sind Diagramme zur Erläuterung eines Weges bei nichtlinearer Interpolationspositionierung beim Drehen gemäß der Erfindung.
  • Beim Drehen werden Zeitkonstante bezüglich der X-Achse und der Z-Achse auf Tx bzw. Tz eingestellt, Eilganggeschwindigkeiten der X-Achse und der Z-Achse werden auf Vx bzw. Vz eingestellt und gemäß 3A werden Bewegungsbeträge bezüglich der X-Achse und der Z-Achse auf Dx bzw. Dz eingestellt. Damit ergibt sich gemäß 3B eine Bewegungszeit für die X-Achse von Tx + Dx/Vx und eine Bewegungszeit für die Z-Achse von Tz + Dz/Vz. Wenn in diesem Falle, bei dem die Achse mit der kürzeren Bewegungszeit sich „in Richtung auf das Werkstück“ bewegt, die X-Achse und die Z-Achse die Bewegung gleichzeitig starten, kann es zu einem Kontakt mit dem Werkstück kommen. Aus diesem Grunde wird die Bewegungsstarrzeit der Achse mit der kürzeren Bewegungszeit verzögert um die Differenz zwischen den Bewegungszeiten der Achsen, wodurch die X-Achse und die Z-Achse die Bewegung gleichzeitig beenden. Damit wird entsprechend 3C der Weg s3 des Werkzeuges 2 ein gekrümmter Weg in Richtung „weg vom Werkstück 3“.
  • Die obigen Berechnungsgleichungen und die Figuren sind Beispiele für den Fall einer linearen Beschleunigung und Abbremsung. In Fällen anderer Beschleunigungs- und Abbremsverfahren, wie beispielsweise einer glockenförmigen Beschleunigung oder Abbremsung, können Berechnungen auf Basis eines entsprechenden Konzeptes eingesetzt werden.
  • Die „direkte Annäherung an das Werkstück“ im Falle eines Koordinatensystems nach 3C ist die Richtung auf X=0 (in Richtung auf die Mittelachse des Werkstückes) bezüglich der X-Achse und die Minus-Richtung von Z für die Z-Achse. Die „Richtung mit Annäherung an das Werkstück“ kann einstellbar sein in einem Einstellbereich in einem Speicher der numerischen Steuerung, wo sie im Voraus der zu steuernden Maschine eingegeben wird.
  • 4 ist ein funktionales Blockdiagramm einer numerischen Steuerung gemäß dem vorliegenden Ausführungsbeispiel zur Durchführung obiger Maßnahmen.
  • Die numerische Steuerung 1 hat eine Befehlsanalyseeinheit 10, welche einen CNC-Befehl 20 sequenziell aus einem Programm ausliest, welches beispielsweise in einem Speicher (nicht dargestellt) abgespeichert ist, und analysiert den ausgelesenen CNC-Befehl 20. Die Befehlsanalyseeinheit 10 erzeugt sodann Bewegungsbefehlsdaten zum Instruieren einer Bewegung jeder Achse auf Basis des Ergebnisses der Analyse und gibt die erzeugten Bewegungsbefehlsdaten an die Wegkorrektureinheit 11.
  • Betreffen die von der Befehlsanalyseeinheit 10 erhaltenen Bewegungsbefehlsdaten eine nichtlineare Interpolationspositionierung des Werkzeuges, berechnet die Wegkorrektureinheit 11 Bewegungszeiten für jede Achse auf Basis der Bewegungsbefehlsdaten und ermittelt, ob die Bewegungsrichtung der jeweiligen Achse mit der kürzeren Bewegungszeit eine „Richtung zum Werkstück hin“ ist, wie oben erläutert ist. Die Wegkorrektureinheit 11 führt dann eine Korrektur der Bewegungsbefehlsdaten aus, so dass dann, wenn festgestellt wird, dass die Bewegungsrichtung der Achse mit der kürzeren Bewegungszeit eine „Richtung zum Werkstück hin“ ist, die Bewegungsstartzeit der Achse mit der kürzeren Bewegungszeit so verzögert wird, dass die Achse ihre Bewegung gleichzeitig mit den anderen Achsen beendet. Die Wegkorrektureinheit 11 gibt dann die korrigierten Bewegungsbefehlsdaten an die Interpolationseinheit 12.
  • Handelt es sich hingegen bei dem Befehl entsprechend den von der Befehlsanalyseeinheit 10 empfangenen Bewegungsbefehlsdaten nicht um einen Befehl für eine nichtlineare Interpolationspositionierung des Werkzeuges oder handelt es sich um einen Befehl zum Instruieren einer nichtlinearen Interpolationspositionierung, ist jedoch die Bewegungsrichtung der Achse mit der kürzeren Bewegungszeit nicht eine Richtung zum Werkstück hin, gibt die Wegkorrektureinheit 11 die von der Befehlsanalyseeinheit 10 empfangenen Befehlsdaten direkt an die Interpolationseinheit 12.
  • Bei Prüfung, ob die Bewegungsrichtung der Achse mit der kürzeren Bewegungszeit eine „Richtung zum Werkstück hin“ ist oder nicht, erfolgt ein Rückgriff auf Informationen bezüglich „der Richtung zum Werkstück hin“, welche für jede Achse in einem Einstellbereich 21 eingestellt sind.
  • Die Interpolationseinheit 12 erzeugt Daten durch eine Interpolationsberechnung von Punkten auf einem Befehlsweg entsprechend einem Interpolationszyklus auf Basis eines Bewegungsbefehls, welcher durch die Bewegungsbefehlsdaten gegeben wird, welche wiederum durch die Wegkorrektureinheit 11 ausgegeben sind.
  • Die Steuereinheit 13 für Beschleunigung/Abbremsung führt eine Beschleunigungs- bzw. Abbremsprozedur aus auf Basis der Interpolationsdaten, wie durch die Interpolationseinheit 12 ausgegeben, berechnet die Geschwindigkeit jeder Antriebsachse für jeden Interpolationszyklus und gibt die resultierenden Daten an die Servosteuereinheit 14.
  • Sodann steuert die Servosteuereinheit 14 die Antriebseinheit jeder Achse der zu steuernden Maschine auf Basis des Ausgangs aus der Steuereinheit 13 für Beschleunigung/ Abbremsung.
  • 5 erläutert mit einem Flussdiagramm den Wegkorrekturprozess bei nichtlinearer Interpolationspositionierung durch die numerische Steuerung gemäß 4.. Der Prozess wird nachfolgend mit den einzelnen Schritten erläutert.
  • [Schritt SA01]
  • Wird der Betrieb des Bearbeitungsprogrammes gestartet, liest die Befehlsanalyseeinheit 10 sequenziell Befehlsblöcke aus dem Programm, welches eine Vielzahl von Blöcken enthält, in einen Speicher der numerischen Steuerung 1 zum Erzeugen von Bewegungsbefehlsdaten.
  • [Schritt SA02]
  • Die Wegkorrektureinheit 11 prüft, ob jeder der in Schritt SA01 ausgelesenen Befehlsblöcke ein Block ist zum Befehl einer nichtlinearen Interpolationspositionierung zum Antrieb mehrerer Achsen. Ist der Befehlsblock ein Block zum Instruieren einer nichtlinearen Interpolationspositionierung zum Antrieb mehrerer Achsen, geht das Verfahren zu Schritt SA03. Handelt es sich bei dem Befehlsblock nicht um einen Block zum Instruieren einer nichtlinearen Interpolationspositionierung zum Antrieb mehrerer Achsen, geht das Verfahren zu Schritt SA06.
  • [Schritt SA03]
  • Die Wegkorrektureinheit 11 berechnet die Bewegungszeit für jede durch den Befehl für die nichtlineare Interpolationspositionierung anzutreibende Achse.
  • [Schritt SA04]
  • Die Wegkorrektureinheit 11 spezifiziert eine Achse, die verschieden ist von der Achse mit der längsten Bewegungszeit aus den durch den Befehl für die nichtlineare Interpolationspositionierung angetriebenen Achsen auf Basis der in Schritt SA03 berechneten Bewegungszeit und prüft, ob die spezifizierte Achse sich in einer Richtung zum Werkstück hin bewegt. Bewegt sich die Achse in Richtung zum Werkstück hin, geht das Verfahren zu Schritt SA05. Bewegt sich die Achse nicht zum Werkstück hin, geht das Verfahren zu Schritt SA06.
  • [Schritt SA05]
  • Die Wegkorrektureinheit 11 korrigiert die Bewegungsbefehlsdaten so, dass die Bewegungsstartzeit der Achse, welche verschieden ist von der Achse mit der längeren Bewegungszeit, so verzögert ist, dass diese Achse die Bewegung zur gleichen Zeit beendet wie die Achse mit der längeren Bewegungszeit.
  • [Schritt SA06]
  • Der Befehlsblock wird ausgeführt auf Basis der Bewegungsbefehlsdaten, wie durch die Wegkorrektureinheit 11 ausgegeben.
  • Im Flussdiagramm gemäß 5 sind die Prozeduren im Schritt SA01 und im Schritt SA06 die gleichen wie beim Stand der Technik, während die Prozeduren im Schritt SA02 und im Schritt SA05 der vorliegenden Erfindung entsprechen.
  • Wie oben erläutert, wird dann, wenn in der numerischen Steuerung 1 eine nichtlineare Interpolationspositionierung gemäß der Erfindung befohlen wird, entsprechend dem Weg s3 in den 1B und 3C eine Korrektur derart durchgeführt, dass der Bewegungsweg des Werkzeuges in einer Richtung weg vom Werkstück gekrümmt wird, wodurch eine Kollision zwischen dem Werkzeug und dem Werkstück vermieden ist. Gleichzeitig erfolgt die Korrektur so, dass für jede Achse die kürzeste Zeitkonstante gilt, wodurch die Zykluszeit kurz gehalten werden kann.
  • Nunmehr wird ein zweites Ausführungsbeispiel einer numerischen Steuerung gemäß der Erfindung näher mit Bezug auf die 6 bis 8 beschrieben. Bei diesem Ausführungsbeispiel erfolgt die Wegänderung durch einen Programmbefehl in einem Bearbeitungszentrum so, dass eine Kollision zwischen einem Werkzeug und einem Werkstück vermieden ist.
  • 6 zeigt einen Weg bei nichtlinearer Interpolationspositionierung in einem Bearbeitungszentrum.
  • Wenn gemäß 6 ein Werkzeug 4 am Punkt A positioniert ist, wird ein Befehl zum Positionieren des Werkzeuges 4 am Punkt B (G00 YBy ZBz ) ausgeführt wenn für die Positionssteuerung eine nichtlineare Interpolationspositionierung ausgewählt ist, und sowohl die Y-Achse als auch die Z-Achse starten die Bewegung gleichzeitig, wodurch der Weg s2 in einer Weise gebogen wird, dass er in Richtung auf das Werkstück 5 hingebogen ist.
  • In dieser Situation erfolgt auch eine Änderung des Weges wie beim ersten Ausführungsbeispiel zum Vermeiden einer Kollision zwischen Werkzeug und Werkstück. Werden drei oder mehr Achsen gleichzeitig bewegt, so werden - wie beim ersten Ausführungsbeispiel - für die Achsen mit Bewegungszeiten kürzer als die der Achse mit der längsten Bewegungszeit und welche sich in Richtung auf das Werkstück hin bewegen die Bewegungsstartzeiten verzögert. Die Achsen werden so gesteuert, dass die Bewegungen zur gleichen Zeit enden wie die Bewegung der Achse mit der längsten Bewegungszeit, wodurch eine Kollision zwischen Werkzeug und Werkstück vermieden ist.
  • Es kommt vor, dass die Richtung auf das Werkstück hin nicht in einfacher Weise festgestellt werden kann, wie bei einem von Wänden umgebenen Innenraum. Um eine solche Situation zu meistern wird beim vorliegenden Ausführungsbeispiel ein Umgehungsbefehl in das Bearbeitungsprogramm eingeführt zum Spezifizieren der Richtung, in welcher der Bewegungsweg des Werkzeuges zu krümmen ist und auf Basis eines solchen Programmbefehls kann die Richtung, in welcher der Bewegungsweg zu krümmen ist, spezifiziert werden.
  • Als Beispiel bezüglich der Bewegungsrichtung eines Weges, welcher einen Start- und einen Endpunkt in der Y-Z-Ebene verbindet, wird ein G-Code eines Umgehungsbefehls bei Spezifikation der linken Seite auf G101 gesetzt und der Code eines Umgehungsbefehls bei Spezifikation der rechten Seite wird auf G102 gesetzt. Beim Beispiel gemäß 6 muss bei nichtlinearer Interpolationspositionierung zur Vermeidung einer Kollision zwischen Werkzeug und Werkstück der Werkzeugweg so gekrümmt werden, dass er auf der linken Seite des Weges verläuft, welcher den Startpunkt (Punkt A) und dem Endpunkt (Punkt B) mit einer geraden Linie s1 verbindet, bezogen auf die Vorschubrichtung und in Blickrichtung auf die Zeichnungsebene.
  • Entsprechend den obigen Ausführungen und gemäß 7 ist der Befehl G101 in einem Block des Positionierbefehls enthalten. Dementsprechend ist der Weg in einer Richtung abgebogen entgegengesetzt zur Richtung (rechte Seite) im Falle einer nichtlinearen Interpolationspositionierung. Aus diesem Grunde wird der Weg geändert und die Bewegungszeiten der beiden Achsen werden berechnet, womit der Bewegungsstart der Y-Achse, welche die kürzere Bewegungszeit hat, verzögert wird.
  • Dementsprechend erhält der Weg s3 des Werkzeuges 4 eine Krümmung weg vom Werkstück 5. Wie vorstehend beschrieben, kann auch in einer solchen Situation, in welcher nicht automatisch festgestellt werden kann, ob der Weg in Richtung auf das Werkstück oder in Richtung vom Werkstück weg gekrümmt ist, die Richtung durch das Programm spezifiziert werden, in welcher eine Kollision vermieden ist.
  • Ein funktionales Blockdiagramm einer numerischen Steuerung gemäß dem vorliegenden Ausführungsbeispiel zur Ausführung des oben beschriebenen Betriebs entspricht dem funktionalen Blockdiagramm der numerischen Steuerung gemäß dem ersten Ausführungsbeispiel (4). Bei dem vorliegenden Ausführungsbeispiel der numerischen Steuerung 1 ist aber die Wegkorrektureinheit 11 verschieden vom ersten Ausführungsbeispiel insofern, als die Wegkorrektureinheit 11 die Wegkorrektur, wie oben beschrieben, auf Basis eines Umgehungsbefehls ausführt.
  • 8 ist ein Blockdiagramm zur Erläuterung des Ablaufs der Wegkorrektur bei einer nichtlinearen Interpolationspositionierung mit der numerischen Steuerung dieses Ausführungsbeispiels. Der Ablauf wird nachfolgend mit den einzelnen Schritten näher erläutert.
  • [Schritt SB01]
  • Wird der Betrieb des Bearbeitungsprogrammes gestartet, überträgt die Befehlsanalyseeinheit 10 sequenziell Befehlsblöcke aus dem Bearbeitungsprogramm, welches eines Vielzahl von Blöcken enthält, in einen Speicher der numerischen Steuerung 1 zur Berechnung der Bewegungsbefehlsdaten.
  • [Schritt SB02]
  • Die Wegkorrektureinheit 11 ermittelt, ob jeder der in Schritt SB01 ausgelesenen Befehlsblöcke ein Block für eine Instruktion einer nichtlinearen Interpolationspositionierung ist, welche eine Vielzahl von Achsen antreibt. Handelt es sich bei dem Befehlsblock um einen Block zum Befehlen einer nichtlinearen Interpolationspositionierung zum Antrieb einer Mehrzahl von Achsen, geht das Verfahren zu Schritt SB03. Handelt es sich bei dem Befehlsblock nicht um einen Block zum Befehlen einer nichtlinearen Interpolationspositionierung zum Antrieb mehrerer Achsen, geht das Verfahren zu Schritt SB08.
  • [Schritt SB03]
  • Die Wegkorrektureinheit 11 berechnet die Bewegungszeit jeder Achse, welche angetrieben wird durch den Befehl zur nichtlinearen Interpolationspositionierung, welcher die Mehrzahl von Achsen antreibt.
  • [Schritt SB04]
  • Die Wegkorrektureinheit 11 ermittelt, ob der in Schritt SB01 ausgelesene Befehlsblock einen Umgehungsbefehl enthält zur Instruktion einer Wegänderung. Enthält der Befehlsblock einen Umgehungsbefehl, geht das Verfahren zu Schritt SB05. Enthält der Befehlsblock keinen Umgehungsbefehl, geht das Verfahren zu Schritt SB06.
  • [Schritt SB05]
  • Die Wegkorrektureinheit 11 ermittelt, ob die durch den Umgehungsbefehl instruierte Krümmungsrichtung entgegengesetzt ist der Richtung der nichtlinearen Interpolationspositionierung, das heißt, ob die Wegkorrektur erforderlich ist oder nicht. Ist die Wegkorrektur erforderlich, geht das Verfahren zu Schritt SB07. Ist die Wegkorrektur nicht erforderlich, geht das Verfahren zu Schritt SB08.
  • [Schritt SB06]
  • Die Wegkorrektureinheit 11 spezifiziert aus den durch den Befehl für die nichtlineare Interpolationspositionierung angetriebenen Achsen eine Achse, die verschieden ist von der Achse mit der längsten Bewegungszeit auf Basis der in Schritt SB03 berechneten Bewegungszeit und prüft, ob die spezifizierte Achse sich in Richtung auf das Werkstück hin bewegt. Bewegt sich die Achse in Richtung auf das Werkstück hin, geht das Verfahren zu Schritt SB07. Bewegt sich die Achse nicht in Richtung auf das Werkstück hin, geht das Verfahren zu Schritt SB08.
  • [Schritt SB07]
  • Die Wegkorrektureinheit 11 korrigiert die Bewegungsbefehlsdaten für eine Verzögerung der Bewegungsstartzeit der von der Achse mit der längsten Bewegungszeit verschiedenen Achse so, dass die erstgenannte Achse die Bewegung zur gleichen Zeit beendet wie die Achse mit der längsten Bewegungszeit.
  • [Schritt SB08]
  • Der Befehlsblock wird ausgeführt auf Basis der durch die Wegkorrektureinheit 11 ausgegebenen Bewegungsbefehlsdaten.
  • Im Flussdiagramm gemäß 8 sind die Prozeduren in Schritt SB01 und in Schritt SB08 die gleichen wie beim Stand der Technik, während die Prozeduren in Schritt SB02 und in Schritt SB07 erfindungsgemäß sind.
  • Wie oben beschrieben, erfolgt bei Instruktion einer nichtlinearen Interpolationspositionierung in der numerischen Steuerung 1 gemäß diesem Ausführungsbeispiel eine Korrektur derart, dass der Bewegungsweg des Werkzeuges in einer Richtung weg vom Werkstück abgekrümmt ist, wodurch eine Kollision zwischen dem Werkzeug und dem Werkstück vermieden ist. Da eine Bedienungsperson die Abkrümmrichtung des Werkzeugweges unter Verwendung eines Umgehungsbefehls durch das Bearbeitungsprogramm spezifizieren kann, kann auch in einer Position, in welcher es schwierig ist, eine Richtung weg vom Werkstück zu bestimmen, eine Kollision zwischen Werkzeug und Werkstück vermieden werden. Im Ergebnis erfolgt eine Korrektur mit der zu diesem Zeitpunkt kürzesten Zeitkonstante für jede Achse, wodurch die Zykluszeit kurz gehalten wird.
  • Oben wurden Ausführungsbeispiele der Erfindung näher beschrieben. Jedoch ist die Erfindung nicht auf diese Beispiele beschränkt und kann mit unterschiedlichen Abwandlungen durch Modifikationen verwirklicht werden.

Claims (3)

  1. Numerische Steuerung (1) zum Antreiben einer Mehrzahl von Achsen für eine Relativbewegung eines Werkzeuges (2, 4) in Bezug auf ein Werkstück (3, 5) in Richtungen entlang jeder der Mehrzahl von Achsen zum Steuern einer Maschine, welche entsprechend Programmbefehlen an einem Werkstück (3, 5) eine Bearbeitung ausführt, wobei die numerische Steuerung (1) aufweist: Eine Befehlsanalyseeinheit (10), welche einen Programmbefehl analysiert zur Erzeugung von Bewegungsbefehlsdaten; und eine Wegkorrektureinheit (11), welche dann, wenn ein Programmbefehl ein Positionierungsbefehl ist, einen Korrekturweg erzeugt, welcher in eine Richtung weg vom Werkstück (3, 5) abgekrümmt ist in Bezug auf einen gradlinigen Weg von der momentanen Position des Werkzeuges (2, 4) zu einer durch die Bewegungsbefehlsdaten instruierten befohlenen Position, wobei die Wegkorrektureinheit (11) eingerichtet ist, eine Bewegungszeit des Werkzeuges (2, 4), das sich in einer Richtung entlang jeder der mehreren Achsen auf Basis der Bewegungsbefehlsdaten in Richtungen entlang jeder der Mehrzahl von Achsen bewegt, zu berechnen, und wenn die Bewegung des Werkzeuges (2, 4) in einer Richtung entlang einer Achse anders als die Richtung entlang der Achse mit der längsten Bewegungszeit das Werkzeug (2, 4) veranlasst, sich in eine sich dem Werkstück (3, 5) nähernde Richtung zu bewegen den Korrekturweg zu erzeugen durch Verzögerung einer Bewegungsstartzeit des Werkzeuges (2, 4) in einer Richtung entlang einer Achse anders als einer Richtung entlang einer Achse mit der längsten Bewegungszeit so dass die Bewegungszeit des Werkzeuges (2, 4) in einer Richtung entlang einer Achse anders als die Richtung entlang einer Achse mit der längsten Bewegungszeit zu der gleichen Zeit endet wie die längste Bewegungszeit, und die numerische Steuerung (1) den Antrieb der Mehrzahl der Achsen entsprechend dem korrigierten Weg steuert.
  2. Numerische Steuerung gemäß Anspruch 1, wobei die Wegkorrektureinheit (11) eingerichtet ist, zu ermitteln, ob die Bewegung des Werkzeuges (2, 4) in eine Richtung entlang der Achse anders als die Richtung entlang der Achse mit der längsten Bewegungszeit eine Bewegung in eine Richtung ist, die sich dem Werkstück (3, 5) nähert, oder nicht auf Basis der Bewegung des Werkzeuges (2, 4) in Richtungen entlang der Achsen, welche für die jeweiligen Achsen im Voraus und für jede Achse eingestellt sind.
  3. Numerische Steuerung (1) zum Antreiben einer Mehrzahl von Achsen für eine Relativbewegung eines Werkzeuges (2, 4) in Bezug auf ein Werkstück (3, 5) in Richtungen entlang jeder der Mehrzahl von Achsen zum Steuern einer Maschine, welche eine Bearbeitung an einem Werkstück (3, 5) ausführt auf Basis von Programmbefehlen, wobei die numerische Steuerung (1) aufweist: Eine Befehlsanalyseeinheit (10), welche einen Programmbefehl analysiert zum Erzeugen von Bewegungsbefehlsdaten; und eine Wegkorrektureinheit (11), welche dann, wenn ein Programmbefehl ein Positionierungsbefehl ist, welcher einen Umgehungsbefehl enthält, mit dem eine Richtung spezifiziert werden kann, welche bewirkt, dass der Weg des Werkzeuges (2, 4) in Richtung weg vom Werkstück (3, 5) abgekrümmt ist, einen Korrekturweg erzeugt, der in der durch den Umgehungsbefehl spezifizierten Richtung abgekrümmt ist relativ zu einem geradlinigen Weg von der momentanen Position des Werkzeuges (2, 4) zu einer durch die Bewegungsbefehlsdaten instruierten Befehlsposition, wobei die Wegkorrektureinheit (11) eingerichtet ist, eine Bewegungszeit des Werkzeuges (2, 4), das sich in einer Richtung entlang jeder der mehreren Achsen auf Basis der Bewegungsbefehlsdaten in Richtungen entlang jeder der Mehrzahl von Achsen bewegt, zu berechnen und wenn die Bewegung des Werkzeuges (2, 4) in einer Richtung entlang einer Achse anders als die Richtung entlang der Achse mit der längsten Bewegungszeit das Werkzeug (2, 4) veranlasst, sich in eine sich dem Werkstück (3, 5) näherende Richtung zu bewegen den Korrekturweg zu erzeugen durch Verzögerung einer Bewegungsstartzeit des Werkzeuges (2, 4) in einer Richtung entlang einer Achse anders als einer Richtung entlang einer Achse mit der längsten Bewegungszeit so dass die Bewegungszeit des Werkzeuges (2, 4) in einer Richtung entlang einer Achse anders als die Richtung entlang einer Achse mit der längsten Bewegungszeit zu der gleichen Zeit endet wie die längste Bewegungszeit und die numerische Steuerung (1) den Antrieb der Mehrzahl der Achsen entsprechend dem korrigierten Weg steuert.
DE102016012042.8A 2015-10-14 2016-10-07 Numerische Steuerung mit Positionierung zur Vermeidung einer Kollision mit einem Werkstück Active DE102016012042B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015202712A JP6396273B2 (ja) 2015-10-14 2015-10-14 ワークとの干渉を避ける位置決めを行う数値制御装置
JP2015-202712 2015-10-14

Publications (2)

Publication Number Publication Date
DE102016012042A1 DE102016012042A1 (de) 2017-04-20
DE102016012042B4 true DE102016012042B4 (de) 2020-02-13

Family

ID=58456609

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016012042.8A Active DE102016012042B4 (de) 2015-10-14 2016-10-07 Numerische Steuerung mit Positionierung zur Vermeidung einer Kollision mit einem Werkstück

Country Status (4)

Country Link
US (1) US10444728B2 (de)
JP (1) JP6396273B2 (de)
CN (1) CN106597989A (de)
DE (1) DE102016012042B4 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6464135B2 (ja) * 2016-12-22 2019-02-06 ファナック株式会社 数値制御装置
CN107505916B (zh) * 2017-09-13 2020-01-31 上海维宏电子科技股份有限公司 数控加工***中有效避免干涉的工件斜边加工控制方法
JP6687582B2 (ja) * 2017-11-30 2020-04-22 ファナック株式会社 情報処理装置
JP6916234B2 (ja) * 2018-03-30 2021-08-11 ファナック株式会社 プログラム作成装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0876827A (ja) * 1994-09-05 1996-03-22 Fanuc Ltd 加減速制御方式
US20030009260A1 (en) * 2000-01-17 2003-01-09 Yoichi Tanaka Positioning control method and positioning control device, and electronic part mounting device using this
DE102009048252A1 (de) * 2008-10-06 2010-06-17 Okuma Corporation In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung
DE112010005521T5 (de) * 2010-04-27 2013-04-04 Mitsubishi Electric Corporation Numerische Steuervorrichtung
DE102014010213A1 (de) * 2013-07-02 2015-01-08 Fanuc Corporation Numerische Steuerungsvorrichtung mit einer Funktion zur Verringerung des Pfads zum Startpunkt in einem festen Zyklus
DE102015002040A1 (de) * 2014-02-25 2015-08-27 Fanuc Corporation Numerische Steuerung für eine Laserbearbeitungsmaschine

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3146239A1 (de) 1981-11-21 1983-05-26 Hamburger Hochbahn Ag, 2000 Hamburg Verfahren und vorrichtung zur drehzahlsteuerung fuer achsen von schienenfahrzeugen
JPH04317104A (ja) 1991-04-16 1992-11-09 Fanuc Ltd 数値制御装置
JP3537229B2 (ja) 1995-07-28 2004-06-14 ファナック株式会社 ロボットの制御方法
JPH09120310A (ja) * 1995-10-24 1997-05-06 Fanuc Ltd 軸移動方法及び軸移動方式
JP3666341B2 (ja) * 2000-02-04 2005-06-29 三菱電機株式会社 ロボット制御方法
JP4666675B2 (ja) 2004-04-19 2011-04-06 シチズンホールディングス株式会社 数値制御旋盤におけるワークの加工方法
JP4921115B2 (ja) * 2006-10-31 2012-04-25 スター精密株式会社 移動体の移動制御装置、移動体の移動制御方法及び工作機械の移動制御装置
KR101220121B1 (ko) * 2006-06-30 2013-01-11 스타 마이크로닉스 컴퍼니 리미티드 이동체의 이동 제어 장치, 이동체의 이동 제어 방법 및공작 기계의 이동 제어 장치
JP2008071015A (ja) * 2006-09-13 2008-03-27 Fanuc Ltd 数値制御装置
DE502007001512D1 (de) 2007-12-06 2009-10-22 Trumpf Werkzeugmaschinen Gmbh Verfahren und Werkzeugmaschine zum Bearbeiten von Werkstücken
JP5317532B2 (ja) * 2008-05-23 2013-10-16 三菱電機株式会社 数値制御装置
JP5143661B2 (ja) * 2008-08-08 2013-02-13 株式会社森精機製作所 Nc旋盤の制御方法及び制御装置
JP5492034B2 (ja) * 2010-09-08 2014-05-14 オークマ株式会社 数値制御装置における衝突防止装置
KR101607586B1 (ko) * 2012-04-17 2016-03-30 마키노 밀링 머신 주식회사 공작기계의 간섭판정방법 및 간섭판정장치
JP6143222B2 (ja) * 2013-03-07 2017-06-07 三菱重工工作機械株式会社 工作機械の異常診断装置及び異常診断方法
JP6266300B2 (ja) 2013-10-24 2018-01-24 Dmg森精機株式会社 工作機械
CN105706012B (zh) * 2013-11-14 2019-02-26 株式会社富士 伺服控制器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0876827A (ja) * 1994-09-05 1996-03-22 Fanuc Ltd 加減速制御方式
US20030009260A1 (en) * 2000-01-17 2003-01-09 Yoichi Tanaka Positioning control method and positioning control device, and electronic part mounting device using this
DE102009048252A1 (de) * 2008-10-06 2010-06-17 Okuma Corporation In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung
DE112010005521T5 (de) * 2010-04-27 2013-04-04 Mitsubishi Electric Corporation Numerische Steuervorrichtung
DE102014010213A1 (de) * 2013-07-02 2015-01-08 Fanuc Corporation Numerische Steuerungsvorrichtung mit einer Funktion zur Verringerung des Pfads zum Startpunkt in einem festen Zyklus
DE102015002040A1 (de) * 2014-02-25 2015-08-27 Fanuc Corporation Numerische Steuerung für eine Laserbearbeitungsmaschine

Also Published As

Publication number Publication date
US10444728B2 (en) 2019-10-15
CN106597989A (zh) 2017-04-26
DE102016012042A1 (de) 2017-04-20
JP2017076211A (ja) 2017-04-20
US20170108847A1 (en) 2017-04-20
JP6396273B2 (ja) 2018-09-26

Similar Documents

Publication Publication Date Title
DE102016012042B4 (de) Numerische Steuerung mit Positionierung zur Vermeidung einer Kollision mit einem Werkstück
EP3335086B1 (de) Verfahren und steuervorrichtung zum optimierten steuern einer werkzeugmaschine
DE112013006980B4 (de) Numerische Steuerungseinrichtung
DE102016003049B4 (de) Numerische Steuerung zur Ausführung reziproken Drehens in komplex fixiertem Zyklus
EP3220223B1 (de) Verfahren zur bearbeitung eines werkstücks in einer werkzeugmaschine mit optimierter bearbeitungszeit
DE102017004366B4 (de) Numerische Steuervorrichtung
DE102014010213B4 (de) Numerische Steuerungsvorrichtung, die zum Steuern einer Drehmaschine, in der ein Werkstück dreht, derart ausgebildet ist, dass eine Pfadlänge reduziert wird
DE102005015810A1 (de) Bearbeitungszeit-Berechnungsvorrichtung
DE102017005811B4 (de) Numerische Steuervorrichtung, die eine Zeitkonstante für ein Beschleunigungs-/Verzögerungsfilter dynamisch wechselt
DE102014009761B4 (de) Numerische Steuervorrichtung zur Steuerung einer fünfachsigen Bearbeitungsmaschine
DE102016007688A1 (de) Numerische Steuervorrichtung, die entsprechend einer Vorschubgeschwindigkeitsänderung eine dreidimensionale Interferenzprüfung durchführt
DE102015008246B4 (de) Numerische Steuerung mit Werkzeugspitzenpunktsteuerungsfunktion
DE102014115129A1 (de) Werkzeugmaschine und numerische Steuerungsvorrichtung um diese zu steuern
EP3818420B1 (de) Zeitoptimierte bewegungsführung zwischen bahnabschnitten
DE102016012634B4 (de) Numerische Steuerung mit krümmungs- und krümmungsänderungsabhängiger Geschwindigkeitssteuerung
WO2022033777A1 (de) Betreiben einer wenigstens zweiachsigen werkzeugmaschine
DE102016014179B4 (de) Numerische Steuerung
DE102020003527A1 (de) Numerische Steuervorrichtung
DE112012006342B4 (de) Numerische Steuervorrichtung und numerisches Steuersystem
EP3658996B1 (de) Verfahren zum betrieb einer numerisch gesteuerten produktionsanlage sowie produktionsanlage dazu
WO2023174637A1 (de) Geschwindigkeitsabhängiges überschleifen zwischen sätzen mit unstetigen bahnverläufen
DE102016001642B4 (de) Numerische Steuerung mit übermäßige Positionsabweichungen unterbindender Geschwindigkeitssteuerung
DE102015012147B4 (de) Numerische Steuervorrichtung
EP3444687A1 (de) Verfahren zum betrieb einer numerisch gesteuerten werkzeugmaschine sowie werkzeugmaschine dazu
DE102017011602A1 (de) Numerische Steuerung

Legal Events

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