-
TECHNISCHES GEBIET
-
Die vorliegende Erfindung betrifft eine Steuervorrichtung und ein Steuerverfahren.
-
STAND DER TECHNIK
-
In einer Fabrik muss unter Umständen ein laufendes Bearbeitungsprogramm mitten während der Ausführung für das Einstellen des Durchmessers eines Bohrwerkzeugs, das Auftragen einer Paste auf ein Werkzeug oder das Entfernen von Spänen von einer an der Bearbeitungsoperation beteiligten Werkzeugmaschine gestoppt werden.
-
In einem bekannten Verfahren zum Stoppen eines laufenden Bearbeitungsprogramms mitten während der Ausführung wird ein Pausenbefehl „Programmstopp (M00)“ oder „Optionaler Stopp (M01)“ in das Bearbeitungsprogramm eingefügt.
-
Es ist aus dem Stand der Technik auch bekannt, einen automatischen Betrieb einer Werkzeugmaschine bei Bedarf zu stoppen, ohne einen Pausenbefehl in ein Bearbeitungsprogramm einzufügen, wenn ein als sicher betrachteter Befehlsblock aus nicht-Bearbeitungsblöcken in dem Bearbeitungsprogramm ausgeführt wird oder wenn die Werkzeugmaschine von einem Betriebszustand zu zum Beispiel einem nicht-schneidenden Zustand wechselt. Siehe zum Beispiel das Patentdokument 1.
-
Patentdokument 1: Ungeprüfte japanische Patentanmeldung mit der Veröffentlichungsnummer
2015-79384
-
BESCHREIBUNG DER ERFINDUNG
-
Problemstellung der Erfindung
-
Ein Stoppen einer Werkzeugmaschine, die ein Werkzeug enthält, das in Kontakt mit einem Werkstück ist, führt zu einer Beschädigung des Werkzeugs und/oder des Werkstücks. Zum Beispiel kann für das Einstellen des Durchmessers eines Bohrwerkzeugs, das Auftragen einer Paste auf ein Werkzeug oder das Entfernen von Spänen nicht einfach ein Pausenbefehl für das Veranlassen eines Stopps an einer beliebigen Stelle zwischen einem Schneiden und einem Positionieren in einem Bearbeitungsprogramm eingefügt werden. Wenn zum Beispiel der Durchmesser eines Bohrwerkzeugs eingestellt wird, müssen das Werkzeug und das Werkstück dazwischen einen ausreichend großen Abstand aufweisen. Wenn eine Paste auf ein Werkzeug aufgetragen wird, müssen das Werkzeug und das Werkstück dazwischen einen bestimmten Abstand aufweisen, wobei der Abstand jedoch nicht so groß sein muss wie der Abstand beim Einstellen des Durchmessers eines Bohrwerkzeugs. Und wenn Späne entfernt werden, besteht eine Minimalanforderung lediglich darin, dass das Werkzeug und das Werkstück einander nicht kontaktieren.
-
Es ist jedoch mühsam für einen Bediener, die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück zu bestimmen und weiterhin zu bestimmen, wo in dem Bearbeitungsprogramm ein Pausenbefehl für den jeweiligen Zweck eines Stoppens der Werkzeugmaschine eingefügt werden soll.
-
Um die Werkzeugmaschine korrekt in Entsprechung zu dem Zweck zu stoppen, wäre es deshalb wünschenswert, die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück in dem Bearbeitungsprogramm einfach erkennen zu können.
-
Problemlösung
-
(1) Eine Steuervorrichtung gemäß einem Aspekt der vorliegenden Erfindung ist eine Steuervorrichtung zum Steuern einer Werkzeugmaschine basierend auf einem Bearbeitungsprogramm, wobei die Steuervorrichtung eine Extraktionseinheit umfasst, die konfiguriert ist zum Extrahieren, als Stopppositionskandidaten aus in dem Bearbeitungsprogramm enthaltenen Blöcken, von Blöcken aus dem Bearbeitungsprogramm, die veranlassen, dass sich ein Werkzeug und ein Werkstück in der Werkzeugmaschine in einem vorbestimmten Zustand in Entsprechung zu dem Zweck eines Stoppens der Werkzeugmaschine befinden.
-
(2) Ein Steuerverfahren gemäß einem anderen Aspekt der vorliegenden Erfindung ist ein Steuerverfahren für eine Steuervorrichtung zum Steuern einer Werkzeugmaschine basierend auf einem Bearbeitungsprogramm, wobei das Steuerverfahren einen Extraktionsschritt zum Extrahieren, als Stopppositionskandidaten aus in dem Bearbeitungsprogramm enthaltenen Blöcken, von Blöcken aus dem Bearbeitungsprogramm, die veranlassen, dass sich ein Werkzeug und ein Werkstück in der Werkzeugmaschine in einem vorbestimmten Zustand in Entsprechung zu dem Zweck eines Stoppens der Werkzeugmaschine befinden, umfasst.
-
Effekte der Erfindung
-
Gemäß einem Aspekt kann die Positionsbeziehung zwischen einem Werkzeug und einem Werkstück in einem Bearbeitungsprogramm einfach für das Stoppen einer Werkzeugmaschine in Entsprechung zu dem Zweck erkannt werden.
-
Figurenliste
-
- 1 ist ein Funktionsblockdiagramm, das ein Funktionskonfigurationsbeispiel eines Steuersystems gemäß einer ersten Ausführungsform zeigt.
- 2 ist eine schematische Ansicht, die ein Beispiel eines Bearbeitungsprogramms zeigt.
- 3A ist eine schematische Ansicht, die ein Beispiel für eine Werkzeugbewegungsbahn in einer XY-Ebene während eines Führens gemäß dem Bearbeitungsprogramm von 2 zeigt.
- 3B ist eine schematische Ansicht, die ein Beispiel für eine Werkzeugbewegungsbahn in einer XZ-Ebene während des Führens gemäß dem Bearbeitungsprogramm von 2 zeigt.
- 4A ist eine schematische Ansicht, die ein Beispiel für eine Werkzeugbewegungsbahn in der XY-Ebene während eines Bohrens gemäß dem Bearbeitungsprogramm von 2 zeigt.
- 4B ist eine schematische Ansicht, die ein Beispiel für eine Werkzeugspitzenbewegungsbahn in der XZ-Ebene während des Bohrens gemäß dem Bearbeitungsprogramm von 2 zeigt.
- 5 ist eine schematische Ansicht, die ein Beispiel für eine Distanztabelle zeigt.
- 6 ist eine schematische Ansicht, die ein Beispiel für den Trennungsgrad zeigt.
- 7 ist eine schematische Ansicht, die ein Beispiel des Bearbeitungsprogramms zeigt, das hervorgehoben angezeigt wird, wenn ein Auftragen einer Paste auf ein Werkzeug ausgewählt wird.
- 8 ist eine schematische Ansicht, die ein Beispiel des Bearbeitungsprogramms zeigt, das hervorgehoben in Entsprechung zu dem Trennungsgrad angezeigt wird.
- 9 ist ein Flussdiagramm, das eine Anzeigeverarbeitung durch eine Steuervorrichtung erläutert.
- 10 ist ein Funktionsblockdiagramm, das ein Funktionskonfigurationsbeispiel eines Steuersystems gemäß einer zweiten Ausführungsform zeigt.
- 11 ist ein Flussdiagramm, das eine Betriebssteuerverarbeitung durch eine Steuervorrichtung zeigt.
-
BEVORZUGTE AUSFÜHRUNGSFORM DER ERFINDUNG
-
Im Folgenden wird eine erste Ausführungsform mit Bezug auf die Zeichnungen beschrieben. Dabei wird ein Bearbeitungsprogramm für ein Führen und Bohren als ein Beispiel beschrieben. Es ist zu beachten, dass die vorliegende Erfindung nicht auf das Bearbeitungsprogram für ein Führen und Bohren beschränkt ist und auf beliebige Bearbeitungsprogramme für beliebige andere Bearbeitungstypen angewendet werden kann.
-
<Erste Ausführungsform>
-
1 ist ein Funktionsblockdiagramm, das ein Funktionskonfigurationsbeispiel eines Steuersystems gemäß der ersten Ausführungsform zeigt. Wie in 1 gezeigt, umfasst ein Steuersystem 1 eine Werkzeugmaschine 10 und eine Steuervorrichtung 20.
-
Die Werkzeugmaschine 10 und die Steuervorrichtung 20 können über eine Verbindungsschnittstelle (nicht gezeigt) direkt miteinander verbunden sein. Alternativ dazu können die Werkzeugmaschine 10 und die Steuervorrichtung 20 auch über ein Netzwerk wie etwa ein lokales Netzwerk (Local Area Network (LAN)) miteinander verbunden sein. In diesem Fall können die Werkzeugmaschine 10 und die Steuervorrichtung 20 jeweils eine Kommunikationseinheit (nicht gezeigt) für eine Kommunikation miteinander über eine derartige Verbindung aufweisen.
-
Es ist zu beachten, dass die Steuervorrichtung 20 in der Werkzeugmaschine 10 enthalten sein kann.
-
Die Werkzeugmaschine 10 ist eine dem Fachmann bekannte Werkzeugmaschine, die basierend auf einem Betriebsbefehl von der Steuervorrichtung 20 betrieben wird.
-
<Steuervorrichtung 20>
-
Die Steuervorrichtung 20 ist eine dem Fachmann bekannte numerische Steuervorrichtung. Die Steuervorrichtung 20 erzeugt einen Betriebsbefehl basierend auf einer Anweisung eines Bedieners, die über eine Eingabeeinrichtung (nicht gezeigt) wie etwa einen in der Steuervorrichtung 20 enthaltenen Berührungsbildschirm empfangen wird, oder basierend auf einem laufenden Bearbeitungsprogramm und sendet den erzeugten Betriebsbefehl an die Werkzeugmaschine 10. Auf diese Weise steuert die Steuervorrichtung 20 den Betrieb der Werkzeugmaschine 10.
-
Wie in 1 gezeigt, umfasst die Steuervorrichtung 20 eine Steuereinheit 210, eine Anzeigeeinheit 220 und eine Speichereinheit 230. Die Steuereinheit 210 umfasst eine Programmbearbeitungseinheit 211, eine Berechnungseinheit 212, eine Extraktionseinheit 213 und eine Anzeigesteuereinheit 214. Die Speichereinheit 230 speichert ein Bearbeitungsprogramm 231 und eine Distanztabelle DT. In der vorliegenden Beschreibung wird auf das in 2 gezeigte Bearbeitungsprogramm als ein Beispiel für das Bearbeitungsprogramm Bezug genommen.
-
Die Anzeigeeinheit 220 ist eine Anzeigeeinrichtung wie etwa ein Flüssigkristalldisplay (LCD) und zeigt das durch die weiter unten beschriebene Programmbearbeitungseinheit 211 bearbeitete Bearbeitungsprogramm 231 oder das durch die Steuervorrichtung 20 ausgeführte Bearbeitungsprogramm 231 an.
-
Die Speichereinheit 230 ist zum Beispiel ein Nur-Lese-Speicher (ROM) oder ein Festplattenlaufwerk (HDD) und kann das Bearbeitungsprogramm 231 und die Distanztabelle DT sowie verschiedene Steuerprogramme speichern.
-
Das Bearbeitungsprogramm 231 kann zum Beispiel von einer externen Einrichtung (nicht gezeigt) wie etwa einer CAD/CAM-Einrichtung erhalten oder durch den Bediener in der Steuereinrichtung 20 erstellt werden.
-
2 ist eine schematische Ansicht, die ein Beispiel für das Bearbeitungsprogramm 231 zeigt.
-
Das Bearbeitungsprogramm 231 in 2 implementiert ein Führen in den ersten Blöcken mit den Sequenznummern (1) bis (11). Es ist zu beachten, dass ein Schneidwerkzeug (zum Beispiel mit der Werkzeugnummer T01) an einer Spindel (nicht gezeigt) in der Werkzeugmaschine 10 angebracht ist.
-
3A ist eine schematische Ansicht, die ein Beispiel für eine Werkzeugbewegungsbahn in einer XY-Ebene während eines Führens gemäß dem Bearbeitungsprogramm 231 von 2 zeigt. 3B ist eine schematische Ansicht, die ein Beispiel für eine Werkzeugbewegungsbahn in einer XZ-Ebene während eines Führens gemäß dem Bearbeitungsprogramm 231 von 2 zeigt. Es ist zu beachten, dass die in Klammern angegebenen Zahlen in 3A und 3B Sequenznummern in dem Bearbeitungsprogramm 231 angeben und die Reihenfolge der Werkzeugbewegung wiedergeben. Ein Werkstück W ist ein Bearbeitungsobjekt und weist zum Beispiel eine Länge von 120 mm, eine Breite von 80 mm und eine Dicke von 25 mm auf.
-
Nach dem Führen veranlasst das Bearbeitungsprogramm 231 einen Werkzeugwechsel von dem Schneidwerkzeug zu einem Bohrwerkzeug (zum Beispiel mit der Werkzeugnummer T02) in den Sequenznummern (12) und (13), und es wird ein Bohren in den Sequenznummern (14) bis (20) durchgeführt.
-
4A ist eine schematische Ansicht, die ein Beispiel für eine Werkzeugbewegungsbahn in der XY-Ebene während eines Bohrens gemäß dem Bearbeitungsprogramm 231 von 2 zeigt. 4B ist eine schematische Ansicht, die ein Beispiel für eine Werkzeugspitzenbewegungsbahn in der XZ-Ebene während des Bohrens gemäß dem Bearbeitungsprogramm 231 von 2 zeigt. Es ist zu beachten, dass die Zahlen in Klammern in 4A und 4B Sequenznummern in dem Bearbeitungsprogramm 231 angeben und die Reihenfolge der Werkzeugbewegung wiedergeben.
-
Die Distanztabelle DT enthält zum Beispiel die Distanz zwischen dem Werkzeug und dem Werkstück W in jedem von Blöcken mit Sequenznummern, die einen vorbestimmten Code G00 enthalten. Die Distanz wird durch die weiter unten beschriebene Berechnungseinheit 212 basierend auf dem Bearbeitungsprogramm 231 von 2 berechnet. Die Distanztabelle DT wird im Folgenden beschrieben.
-
<Steuereinheit 210>
-
Die Steuereinheit 210 umfasst zum Beispiel eine zentrale Verarbeitungseinheit (CPU), einen ROM, einen Direktzugriffspeicher (RAM) und einen Komplementärer-Metalloxidhalbleiter (CMOS)-Speicher, die dem Fachmann bekannt sind und konfiguriert sind, um miteinander über einen Bus zu kommunizieren.
-
Die CPU ist ein Prozessor, der eine Gesamtsteuerung der Steuervorrichtung 20 ausführt. Die CPU liest ein Systemprogramm und ein Anwendungsprogramm, die in dem ROM gespeichert sind, über den Bus und führt eine Gesamtsteuerung der Steuervorrichtung 20 gemäß dem Systemprogramm und dem Anwendungsprogramm durch. Wie in 1 gezeigt, ist also die Steuereinheit 200 konfiguriert zum Implementieren von Funktionen der Programmbearbeitungseinheit 211, der Berechnungseinheit 212, der Extraktionseinheit 213 und der Anzeigesteuereinheit 214. Verschiedene Daten wie etwa temporäre Berechnungsdaten und Anzeigedaten werden in dem RAM gespeichert. Der CMOS-Speicher weist eine durch eine Batterie gesicherte Stromversorgung auf und ist konfiguriert, um als ein nicht-flüchtiger Speicher Informationen auch dann zu speichern, wenn die Steuereinrichtung 20 ausgeschaltet ist.
-
Die Programmbearbeitungseinheit 211 bearbeitet das an der Anzeigeeinheit 220 angezeigte Bearbeitungsprogramm 231 basierend auf zum Beispiel einer Eingabebetätigung eines Bedieners, die über eine Eingabeeinrichtung (nicht gezeigt) wie etwa eine Tastatur oder einen Berührungsbildschirm der Steuervorrichtung 20 empfangen wird.
-
Insbesondere fügt die Programmbearbeitungseinheit 211 basierend auf der Eingabebetätigung des Bedieners zum Beispiel einen Pausenbefehl „M00“ oder „M01“ in das Bearbeitungsprogramm 231 in Entsprechung zu dem Zweck wie etwa dem Einstellen des Durchmessers eines Bohrwerkzeugs, dem Auftragen einer Paste auf ein Werkzeug oder dem Entfernen von Spänen ein.
-
Die Berechnungseinheit 212 berechnet die Distanz zwischen dem Werkzeug und dem Werkstück W für jeden Codeblock, der den vorbestimmten Code G00 enthält, in dem Bearbeitungsprogramm 231 und bestimmt den Trennungsgrad zwischen dem Werkzeug und dem Werkstück basierend auf einem Vergleich der berechneten Distanz mit vorgegebenen Schwellwerten.
-
Zum Beispiel enthalten die Blöcke mit den Sequenznummern (1) bis (3) den vorbestimmten Code G00 für eine schnelle Traverse in dem Bearbeitungsprogramm 231 von 2. Die Koordinaten am Ende der schnellen Traverse in Entsprechung zu G00 in dem Block mit der Sequenznummer (3) sind Koordinaten, an denen ein Schneiden in Entsprechung zu G01 in dem Block mit der Sequenznummer (4) für das Starten der Routine beginnt. Das heißt, dass in den Blöcken mit den Sequenznummern (4) bis (8) das Werkzeug während des Führens in Kontakt mit dem Werkstück W ist.
-
Die Berechnungseinheit 212 verwendet deshalb zum Beispiel die Koordinaten (x, y, z) (= (60, 30, 5)) am Ende des Blocks mit der Sequenznummer (3) als Näherungswerte der Position des Werkstücks W und berechnet, als die Distanz zwischen dem Werkzeug und dem Werkstück W, die Distanz von den Koordinaten am Ende jedes der Blöcke mit den Sequenznummern (1) bis (3) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (3).
-
Insbesondere sind zum Beispiel die Koordinaten (x, y, z) am Ende des Blocks mit der Sequenznummer (1) (0, 0, 700) wie in 3A und 3B gezeigt und berechnet die Berechnungseinheit 212 dementsprechend die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (1) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (3), d.h. sqrt((60 - 0)2 + (30 - 0)2 + (5 - 700)2) = 698,2 (mm), als eine Distanz D zwischen dem Werkzeug und dem Werkstück W. In einem anderen Beispiel sind die Koordinaten (x, y, z) am Ende des Blocks mit der Sequenznummer (2) (0, 0, 5) und berechnet die Berechnungseinheit 212 dementsprechend die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (2) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (3), d.h. sqrt((60 - 0)2 + (30 - 0)2 + (5 - 5)2) = 67,1 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W. In einem anderen Beispiel berechnet die Berechnungseinheit 212 die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (3) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (3), d.h. sqrt((60 - 60)2 + (30 - 30)2 + (5 - 5)2) = 0 (mm), als die Distanz zwischen dem Werkzeug und dem Werkstück W.
-
Weiterhin sind die Koordinaten (x, y, z) (= (50, 40, -27)) am Ende des Blocks mit der Sequenznummer (8) Koordinaten, an denen die Bewegung der schnellen Traverse in Entsprechung zu G00 in dem Block mit der Sequenznummer (9) in dem Bearbeitungsprogramm 231 von Fig..2 startet. Die Berechnungseinheit 212 verwendet deshalb zum Beispiel die Koordinaten am Ende des Blocks mit der Sequenznummer (8) als Näherungswerte der Position des Werkstücks W und berechnet, als die Distanz zwischen dem Werkzeug und dem Werkstück W, die Distanz von den Koordinaten am Ende jedes der Blöcke mit den Sequenznummern (8) bis (11) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (8).
-
Die Berechnungseinheit 212 berechnet also die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (8) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (8), d.h. sqrt((50 - 50)2 + (40 - 40)2 + (-27 - (-27))2) = 0 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W. Die Koordinaten (x, y, z) am Ende des Blocks mit der Sequenznummer (9) sind (50, 40, 5), und die Berechnungseinheit 212 berechnet dementsprechend die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (9) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (8), d.h. sqrt((50 - 50)2 + (40 - 40)2 + (-27 - 5)2) = 32 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W. Die Koordinaten (x, y, z) am Ende des Blocks mit der Sequenznummer (10) sind (0, 0, 5), und die Berechnungseinheit 212 berechnet dementsprechend die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (10) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (8), d.h. sqrt((50 - 0)2 + (40 - 0)2 + (-27 - 5)2) = 71,6 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W. Die Koordinaten (x, y, z) am Ende des Blocks mit der Sequenznummer (11) sind (0, 0, 70), und die Berechnungseinheit 212 berechnet dementsprechend die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (11) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (8), d.h. sqrt((50 - 0)2 + (40 - 0)2 + (-27 - 70)2) = 116,2 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W.
-
Die Koordinaten (x, y, z) (= (120, 80, 5)) am Ende der schnellen Traverse in Entsprechung zu G00 in dem Block mit der Sequenznummer (16) sind Koordinaten, an denen das Bohren in Entsprechung zu G01 in dem Block mit der Sequenznummer (17) in dem Bearbeitungsprogramm 231 von 2 startet. Die Berechnungseinheit 212 verwendet deshalb zum Beispiel die Koordinaten am Ende des Blocks mit der Sequenznummer (16) als Näherungswerte der Position des Werkstücks W und berechnet, als die Distanz zwischen dem Werkzeug und dem Werkstück W, die Distanz von den Koordinaten am Ende jedes der Blöcke mit den Sequenznummern (14) bis (16) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (16).
-
Insbesondere sind die Koordinaten (x, y, z) am Ende des Blocks mit der Sequenznummer (14) (0, 0, 700), und die Berechnungseinheit 212 berechnet dementsprechend die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (14) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (16), d.h. sqrt((120 - 0)2 + (80 - 0)2 + (5 - 700)2) = 709,8 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W. Die Koordinaten (x, y, z) am Ende des Blocks mit der Sequenznummer (15) sind (120, 80, 700), und die Berechnungseinheit 212 berechnet dementsprechend die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (15) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (16), d.h. sqrt((120 - 120)2 + (80 - 80)2 + (5 - 700)2) = 695 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W. Die Berechnungseinheit 212 berechnet die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (16) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (16), d.h. sqrt((120 - 120)2 + (80 - 80)2 + (5 - 5)2) = 0 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W.
-
Die Koordinaten (x, y, z) (= 120, 80, 5) am Ende des Blocks mit der Sequenznummer (18) sind Koordinaten, an denen die Bewegung der schnellen Traverse in Entsprechung zu G00 in dem Block mit der Sequenznummer (19) in dem Bearbeitungsprogramm 231 von 2 startet. Die Berechnungseinheit 212 verwendet deshalb zum Beispiel die Koordinaten am Ende des Blocks mit der Sequenznummer (18) als Näherungswerte der Position des Werkstücks W und berechnet, als die Distanz zwischen dem Werkzeug und dem Werkstück W, die Distanz von den Koordinaten an jedem der Blöcke mit den Sequenznummern (18) bis (20) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (18).
-
Insbesondere berechnet die Berechnungseinheit 212 die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (18) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (18), d.h. sqrt((120 - 120)2 + (80 - 80)2 + (5 - 5)2) = 0 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W. Die Koordinaten (x, y, z) am Ende des Blocks mit der Sequenznummer (19) sind (120, 80, 70), und die Berechnungseinheit 212 berechnet dementsprechend die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (19) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (18), d.h. sqrt((120 - 120)2 + (80 - 80)2 + (5 - 70)2) = 65 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W. Die Koordinaten (x, y, z) am Ende des Blocks mit der Sequenznummer (20) sind (0, 0, 70), und die Berechnungseinheit 212 berechnet dementsprechend die Distanz von den Koordinaten am Ende des Blocks mit der Sequenznummer (20) zu den Koordinaten am Ende des Blocks mit der Sequenznummer (18), d.h. sqrt((120 - 0)2 + (80 - 0)2 + (5 - 70)2) = 158,2 (mm), als die Distanz D zwischen dem Werkzeug und dem Werkstück W.
-
Die Berechnungseinheit 212 speichert die berechnete Distanz D zwischen dem Werkzeug und dem Werkstück W und andere Informationen in der Distanztabelle DT in der Speichereinheit 230.
-
5 ist eine schematische Ansicht, die ein Beispiel für die Distanztabelle DT zeigt.
-
Wie in 5 gezeigt, enthält die Distanztabelle DT Koordinaten „x“, „y“ und „z“ am Ende jedes der Blöcke mit Sequenznummern, einen Quadratwert „D2“ der Distanz zwischen dem Werkzeug und dem Werkstück W, die Distanz „D“ zwischen dem Werkzeug und dem Werkstück W und den „Trennungsgrad“. Es ist zu beachten, dass in 5 jeder der Blöcke mit Sequenznummern, der eine Periode aufweist, in der das Werkzeug in Kontakt mit dem Werkstück W ist, durch eine Schraffierung angegeben ist, und Zellen für „x“, „y“, „z“, „D2“ und „D“ leer gelassen sind, wenn das Werkzeug in Kontakt mit dem Werkstück W am Ende eines derartigen Blocks mit einer Sequenznummer ist.
-
Die Blöcke mit den Sequenznummern (12) und (13) sind für einen Werkzeugwechsel und enthalten jeweils einen anderen Code als den vorbestimmten Code (G00). Die Zellen für „x“, „y“, „z“, „D2“ und „D“ mit den Sequenznummern (12) und (13) sind deshalb leer gelassen.
-
Die Werte der x-Koordinate, der y-Koordinate und der z-Koordinate am Ende jedes der Blöcke mit Sequenznummern werden deshalb als die Koordinaten „x“, „y“ und „z“ in der Distanztabelle DT gespeichert.
-
Ein Quadratwert der Distanz D zwischen dem Werkzeug und dem Werkstück W, der für jeden der Blöcke mit Sequenznummern durch die Berechnungseinheit 212 berechnet wird, wird als „D2“ in der Distanztabelle DT gespeichert.
-
Die Distanz D zwischen dem Werkzeug und dem Werkstück W, die für jeden der Blöcke mit den Sequenznummern durch die Berechnungseinheit 212 berechnet wird, wird als „D“ in der Distanztabelle DT gespeichert.
-
„Kontakt“, „Nah“, „Mittel“ oder „Weit“ wird als „Trennungsgrad“ in der Distanztabelle DT basierend auf dem Vergleich der berechneten Distanz D zwischen dem Werkzeug und dem Werkstück W mit vorgegebenen Schwellwerten gespeichert.
-
6 ist eine schematische Ansicht, die ein Beispiel für den Trennungsgrad zeigt.
-
Wenn wie in 6 gezeigt die berechnete Distanz D zwischen dem Werkzeug und dem Werkstück W kleiner als ein Schwellwert Th1 (zum Beispiel 0 mm) ist, bestimmt die Berechnungseinheit 212 den „Trennungsgrad“ als „Kontakt“ und speichert diese Information in der Distanztabelle DT, weil das Werkzeug in Kontakt mit dem Werkstück W ist. Wie weiter oben beschrieben, berechnet die Berechnungseinheit 212 die Distanz D zwischen dem Werkzeug und dem Werkstück W nicht, wenn das Werkzeug am Ende des Blocks in Kontakt mit dem Werkstück W ist. In diesem Fall kann die Berechnungseinheit 212 den „Trennungsgrad“ als „Kontakt“ bestimmen, wenn erfasst wird, dass das Werkzeug am Ende des Blocks in Kontakt mit dem Werkstück W ist.
-
Wenn die berechnete Distanz D zwischen dem Werkzeug und dem Werkstück W gleich oder größer als der Schwellwert Th1 und kleiner als ein Schwellwert Th2 (zum Beispiel 50 mm) ist, kann die Berechnungseinheit 212 den „Trennungsgrad“ als „Nah“ bestimmen und speichert diese Information in der Distanztabelle DT, weil das Werkzeug eine nahe Distanz zu dem Werkstück W aufweist. Wenn die berechnete Distanz D zwischen dem Werkzeug und dem Werkstück W gleich oder größer als der Schwellwert Th2 und kleiner als ein Schwellwert Th3 (zum Beispiel 100 mm) ist, kann die Berechnungseinheit 212 den „Trennungsgrad“ als „Mittel“ bestimmen und speichert diese Information in der Distanztabelle DT, weil das Werkzeug eine mittlere Distanz zu dem Werkstück W aufweist. Wenn die berechnete Distanz D zwischen dem Werkzeug und dem Werkstück W gleich oder größer als der Schwellwert Th3 ist, kann die Berechnungseinheit 212 den „Trennungsgrad“ als „Weit“ bestimmen und speichert diese Information in der Distanztabelle DT, weil das Werkzeug eine ferne Distanz zu dem Werkstück W aufweist.
-
Es ist zu beachten, dass die Schwellwerte Th1, Th2 und Th3 korrekt in Abhängigkeit von der Konfiguration der Werkzeugmaschine 10 oder der Form und der Größe des Werkstücks W bestimmt werden können.
-
In den Blöcken mit den Sequenznummern (12) und (13) für einen Werkzeugwechsel wird der Werkzeugwechsel an einer vorbestimmten Position, die ausreichend weit von dem Werkstück W entfernt ist, unter Verwendung von zum Beispiel einem Werkzeugmagazin (nicht gezeigt) in der Werkzeugmaschine 10 bestimmt und ändern sich die Koordinaten nicht. Die Berechnungseinheit 212 kann deshalb den „Trennungsgrad“ für die Blöcke mit den Sequenznummern (12) und (13) als „Weit“ bestimmen und speichert diese Information in der Distanztabelle DT.
-
Die Extraktionseinheit 213 extrahiert, als Stopppositionskandidaten aus den in dem Bearbeitungsprogramm 231 enthaltenen Blöcken, Blöcke aus dem Bearbeitungsprogramm 231, die veranlassen, dass sich das Werkzeug und das Werkstück W in der Werkzeugmaschine 10 in einem vorbestimmten Zustand in Entsprechung zu dem Zweck des Stoppens der Werkzeugmaschine 10, wie etwa dem Einstellen des Durchmessers eines Bohrwerkzeugs, dem Auftragen einer Paste auf ein Werkzeug oder dem Entfernen von Spänen, befinden.
-
Insbesondere wenn der Bediener das Einstellen des Durchmessers eines Bohrwerkzeugs über die Eingabeeinrichtung (nicht gezeigt) der Steuervorrichtung 20 auswählt, extrahiert die Extraktionseinheit 213, als Stopppositionskandidaten, Blöcke mit Sequenznummern, die einen Trennungsgrad „Weit“ als einen vorbestimmten Zustand aufweisen, was angibt, dass die Distanz D zwischen dem Werkzeug und dem Werkstück W ausreichend lang für wenigstens das Einstellen des Durchmessers für ein Bohrwerkzeug ist.
-
Wenn in einem anderen Beispiel der Bediener das Auftragen einer Paste auf ein Werkzeug über die Eingabeeinrichtung (nicht gezeigt) der Steuervorrichtung 20 auswählt, extrahiert die Extraktionseinheit 213 als Stopppositionskandidaten Blöcke mit Sequenznummern, die einen Trennungsgrad „Mittel“ oder „Weit“ als einen vorbestimmten Zustand aufweisen, was angibt, dass die Distanz D zwischen dem Werkzeug und dem Werkstück W ausreichend lang für wenigstens das Auftragen der Paste auf das Werkzeug ist. Wenn in einem weiteren Beispiel der Bediener das Entfernen von Spänen über die Eingabeeinrichtung (nicht gezeigt) der Steuervorrichtung 20 auswählt, extrahiert die Extraktionseinheit 213, als Stopppositionskandidaten, Blöcke mit Sequenznummern, die einen Trennungsgrad „Nah“, „Mittel“ oder „Weit“ als einen vorbestimmten Zustand aufweisen, was angibt, dass die Distanz D zwischen dem Werkzeug und dem Werkstück W ausreichend lang für wenigstens das Entfernen von Spänen ist.
-
Die Anzeigesteuereinheit 214 zeigt an der Anzeigeeinheit 220 jeden der aus dem Bearbeitungsprogramm 231 als die Stopppositionskandidaten extrahierten Blöcke hervorgehoben in Entsprechung zu dem Zweck oder dem Trennungsgrad an.
-
Insbesondere zeigt die Anzeigesteuereinheit 214 an der Anzeigeeinheit 220 das Bearbeitungsprogramm 231 hervorgehoben für eine Unterscheidung der extrahierten Blöcke an, wobei sie zum Beispiel eine Randfarbe, einen Randtyp, eine Randdicke und eine Hintergrundfarbe in Entsprechung zu dem durch den Bediener ausgewählten Zweck wie etwa das Einstellen des Durchmessers eines Bohrwerkzeugs, das Auftragen einer Paste auf ein Werkzeug oder das Entfernen von Spänen verwendet.
-
7 ist eine schematische Ansicht, die ein Beispiel für das hervorgehoben angezeigte Bearbeitungsprogramm 231 zeigt, wenn das Auftragen einer Paste auf ein Werkzeug ausgewählt ist. Wie in 7 gezeigt, zeigt die Anzeigesteuereinheit 214 das Bearbeitungsprogramm 231 durch das Hervorheben der Blöcke mit einem Trennungsgrad „Mittel“ oder „Weit“ unter Verwendung von zum Beispiel einer grünen Hintergrundfarbe (Schraffierung in 7) an, wenn das Auftragen einer Paste auf ein Werkzeug ausgewählt ist.
-
Alternativ dazu kann die Anzeigesteuereinheit 214 zum Beispiel das Bearbeitungsprogramm 231 an der Anzeigeeinheit 220 hervorgehoben für eine Unterscheidung der extrahierten Blöcke in Entsprechung zu dem Trennungsgrad anzeigen, wobei sie zum Beispiel eine Randfarbe, einen Randtyp, eine Randdicke und eine Hintergrundfarbe wie in 8 gezeigt verwendet. Zum Beispiel werden in 8 die Blöcke mit einem Trennungsgrad „Nah“ unter Verwendung einer roten Hintergrundfarbe (Schraffierung mit Schräglinien von links oben nach rechts unten in 8) angezeigt. In einem anderen Beispiel werden die Blöcke mit einem Trennungsgrad „Mittel“ hervorgehoben angezeigt, indem eine grüne Hintergrundfarbe (Schraffierung mit Schräglinien von links unten nach rechts oben in 8) verwendet wird. In einem weiteren Beispiel werden die Blöcke mit einem Trennungsgrad „Weit“ hervorgehoben angezeigt, indem eine blaue Hintergrundfarbe (Schraffierung mit Punkten in 8) verwendet wird.
-
Diese Konfiguration erlaubt, dass die Steuervorrichtung 20 einfach die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück W in dem Bearbeitungsprogram 231 erkennt und einfach einen Pausenbefehl in Entsprechung zu dem Zweck einfügt, wodurch die Arbeitslast für den Bediener reduziert wird.
-
<Anzeigeverarbeitung durch die Steuervorrichtung 20>
-
Im Folgenden wird der Fluss der durch die Steuervorrichtung 20 durchzuführenden Anzeigeverarbeitung mit Bezug auf 9 beschrieben.
-
9 ist ein Flussdiagramm, das die Anzeigeverarbeitung durch die Steuervorrichtung 20 erläutert. Der hier gezeigte Fluss wird jedes Mal ausgeführt, wenn das Bearbeitungsprogramm 231 durch die Programmbearbeitungseinheit 211 bearbeitet wird.
-
In Schritt S11 berechnet die Berechnungseinheit 212 die Distanz D zwischen dem Werkzeug und dem Werkstück W für jeden vorbestimmten Code G00 in dem durch die Programmbearbeitungseinheit 211 bearbeiteten Bearbeitungsprogramm 231.
-
In Schritt S12 bestimmt die Berechnungseinheit 212 den Trennungsgrad basierend auf einem Vergleich der in Schritt S11 berechneten Distanz D zwischen dem Werkzeug und dem Werkstück W mit den Schwellwerten Th1, Th2 und Th3.
-
In Schritt S13 extrahiert die Extraktionseinheit 213 basierend auf dem in Schritt S12 bestimmten Trennungsgrad, als Stopppositionskandidaten, Blöcke aus dem Bearbeitungsprogramm 231 in Entsprechung zu dem durch den Bediener ausgewählten Zweck oder Trennungsgrad.
-
In Schritt S14 zeigt die Anzeigesteuereinheit 214 an der Anzeigeeinheit 220 jeden der aus dem Bearbeitungsprogramm 231 extrahierten Blöcke als Stopppositionskandidaten hervorgehoben an.
-
Wie weiter oben beschrieben, berechnet die Steuervorrichtung 20 gemäß der ersten Ausführungsform die Distanz D zwischen dem Werkzeug und dem Werkstück W für jeden vorbestimmten Code G00 in dem bearbeiteten Bearbeitungsprogramm 231 und bestimmt den Trennungsgrad in Entsprechung zu der berechneten Distanz D. Basierend auf dem Trennungsgrad extrahiert die Steuervorrichtung 20, als Stopppositionskandidaten, Blöcke aus dem Bearbeitungsprogramm 231 in Entsprechung zu dem durch den Bediener ausgewählten Zweck oder Trennungsgrad und zeigt an der Anzeigeeinheit 220 jeden der als Stopppositionskandidaten extrahierten Blöcke hervorgehoben an.
-
Diese Konfiguration erlaubt, dass die Steuervorrichtung 20 die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück W in dem Bearbeitungsprogramm 231 einfach erkennen kann und einen Pausenbefehl in Entsprechung zu dem Zweck einfach einfügen kann, wodurch die Arbeitslast für den Bediener reduziert wird.
-
Und indem die als Stopppositionskandidaten extrahierten Blöcke hervorgehoben angezeigt werden, kann die Steuervorrichtung 20 verhindern, dass ein Pausenbefehl an einer falschen Position eingefügt wird und ein Stopp an der falschen Position veranlasst wird.
-
Vorstehend wurde eine erste Ausführungsform beschrieben.
-
<Zweite Ausführungsform>
-
Im Folgenden wird eine zweite Ausführungsform beschrieben. Eine Steuervorrichtung 20A gemäß der zweiten Ausführungsform weist weiterhin eine Funktion zum vorausgehenden Lesen von mehreren Blöcken in einem Bearbeitungsprogramm zusätzlich zu der Funktion gemäß der ersten Ausführungsform auf.
-
Auf diese Weise kann die Steuervorrichtung 20A gemäß der zweiten Ausführungsform die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück in dem Bearbeitungsprogramm einfach erkennen und einen Stopp an einer korrekten Position auch dann veranlassen, wenn das Bearbeitungsprogramm gerade läuft.
-
Im Folgenden wird die zweite Ausführungsform beschrieben.
-
10 ist ein Funktionsblockdiagramm, das ein Funktionskonfigurationsbeispiel für ein Steuersystem gemäß der zweiten Ausführungsform zeigt. Es ist zu beachten, dass Elemente mit gleichen Funktionen wie entsprechende Elemente des Steuersystems 1 in 1 durch gleiche Bezugszeichen angegeben werden und hier auf eine wiederholte ausführliche Beschreibung dieser Elemente verzichtet wird.
-
Wie in 10 gezeigt, umfasst das Steuersystem 1 gemäß der zweiten Ausführungsform eine Werkzeugmaschine 10 und die Steuervorrichtung 20A.
-
<Steuervorrichtung 20A>
-
Die Steuervorrichtung 20A gemäß der zweiten Ausführungsform weist die gleiche Konfiguration wie die Steuervorrichtung 20 gemäß der ersten Ausführungsform auf.
-
Insbesondere umfasst die Steuervorrichtung 20A wie in 9 gezeigt eine Steuereinheit 210a, eine Anzeigeeinheit 220 und eine Speichereinheit 230. Die Steuereinheit 210a umfasst eine Programmbearbeitungseinheit 211, eine Berechnungseinheit 212a, eine Extraktionseinheit 213a, eine Anzeigesteuereinheit 214, eine Programm-Vorausleseeinheit 215 und eine Betriebssteuereinheit 216. Die Speichereinheit 230 speichert ein Bearbeitungsprogramm 231 und eine Distanztabelle DT.
-
Die Werkzeugmaschine 10 weist die gleiche Funktion wie die Werkzeugmaschine 10 in der ersten Ausführungsform auf.
-
Die Anzeigeeinheit 220 und die Speichereinheit 230 weisen die gleichen Funktionen wie die Anzeigeeinheit 220 und die Speichereinheit 230 in der ersten Ausführungsform auf.
-
Die Programmbearbeitungseinheit 211 und die Anzeigesteuereinheit 214 weisen die gleichen Funktionen wie die Programmbearbeitungseinheit 211 und die Anzeigesteuereinheit 214 in der ersten Ausführungsform auf.
-
Die Programm-Vorausleseeinheit 215 liest zum Beispiel mehrere Blöcke in dem Bearbeitungsprogramm 231 im Voraus, wenn das Bearbeitungsprogramm 231 ausgeführt wird. Die Programm-Vorausleseeinheit215 gibt die mehreren im Voraus gelesenen Blöcke an die Berechnungseinheit 212a aus.
-
Wie die Berechnungseinheit 212 in der ersten Ausführungsform berechnet die Berechnungseinheit 212a die Distanz D zwischen dem Werkzeug und dem Werkstück W für jeden vorbestimmten Code G00, der in den mehreren im Voraus gelesenen Blöcken enthalten ist. Die Berechnungseinheit 212a bestimmt den Trennungsgrad basierend auf einem Vergleich der berechneten Distanz D zwischen dem Werkzeug und dem Werkstück W mit den Schwellwerten Th1, Th2 und Th3. Die Berechnungseinheit 212a speichert dann in der Distanztabelle DT in der Speichereinheit 230 eine x-Koordinate, eine y-Koordinate, eine z-Koordinate, einen Quadratwert D2 der Distanz zwischen dem Werkzeug und dem Werkstück W, die Distanz D zwischen dem Werkzeug und dem Werkstück W und den Trennungsgrad für jeden der Blöcke, für den die Distanz D berechnet wurde.
-
Basierend auf der Distanztabelle DT extrahiert dann die Extraktionseinheit 213a zum Beispiel, als einen Stopppositionskandidaten, einen Block, der dem Zweck wie etwa dem Einstellen des Durchmessers eines Bohrwerkzeugs, dem Auftragen einer Paste auf ein Werkzeug oder dem Entfernen von Spänen entspricht und dem aktuell ausgeführten Block innerhalb der voraus gelesenen Blöcke am nächsten ist.
-
Insbesondere wenn der Bediener das Einstellen des Durchmessers für ein Bohrwerkzeug über eine Eingabeeinrichtung (nicht gezeigt) der Steuervorrichtung 20a auswählt, extrahiert die Extraktionseinheit 213a zum Beispiel, als einen Stopppositionskandidaten, einen Block, der einen Trennungsgrad „Weit“ als einen vorbestimmten Zustand aufweist und dem aktuell ausgeführten Block am nächsten ist.
-
Wenn in einem anderen Beispiel der Bediener das Auftragen einer Paste auf ein Werkzeug über die Eingabeeinrichtung (nicht gezeigt) der Steuervorrichtung 20a auswählt, kann die Extraktionseinheit 213a, als einen Stopppositionskandidaten, einen Block auswählen, der einen Trennungsgrad „Mittel“ oder „Weit“ als einen vorbestimmten Zustand aufweist und dem aktuell ausgeführten Block am nächsten ist. Wenn zum Beispiel der Bediener das Entfernen von Spänen über die Eingabeeinrichtung (nicht gezeigt) der Steuervorrichtung 20a auswählt, extrahiert die Extraktionseinheit 213a, als einen Stopppositionskandidaten, einen Block, der einen Trennungsgrad „Nah“, „Mittel“ oder „Weit“ als einen vorbestimmten Zustand aufweist und dem aktuell ausgeführten Block am nächsten ist.
-
Es ist zu beachten, dass die Extraktionseinheit 213a, als einen Stopppositionskandidaten, einen Block, der dem aktuell ausgeführten Block am nächsten ist, in Entsprechung zu dem Trennungsgrad basierend auf der Distanztabelle DT extrahieren kann. Wenn der Bediener einen Trennungsgrad „Nah“, „Mittel“ oder „Weit“ über die Eingabeeinrichtung (nicht gezeigt) der Steuervorrichtung 20a auswählt, extrahiert die Extraktionseinheit 213a, als einen Stopppositionskandidaten, einen Block, der dem aktuell ausgeführten Block am nächsten ist und den ausgewählten Trennungsgrad aufweist.
-
Die Betriebssteuereinheit 216 überwacht und steuert den Betriebszustand der Werkzeugmaschine 10.
-
Insbesondere fügt die Betriebssteuereinheit 216 automatisch einen Pausenbefehl als einen Unterbrechungspunkt zu der durch die Extraktionseinheit 213a extrahierten Stoppposition hinzu.
-
Auf diese Weise kann die Steuervorrichtung 20A einen Stopp an einer Position, an welcher die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück W entsprechend ist, in dem Bearbeitungsprogramm 231 auch dann veranlassen, wenn das Bearbeitungsprogramm 231 läuft.
-
<Betriebssteuerverarbeitung durch die Steuervorrichtung 20A>
-
Im Folgenden wird der Fluss der durch die Steuervorrichtung 20A durchzuführenden Betriebssteuerverarbeitung mit Bezug auf 11 beschrieben.
-
11 ist ein Flussdiagramm, das die Betriebssteuerverarbeitung durch die Steuervorrichtung 20A erläutert.
-
In Schritt S21 liest die Programm-Vorausleseeinheit 215 mehrere Blöcke in dem laufenden Bearbeitungsprogramm im Voraus.
-
In Schritt S22 berechnet die Berechnungseinheit 212a die Distanz D zwischen dem Werkzeug W für jeden vorbestimmten Code G00, der in den mehreren in Schritt S21 im Voraus gelesenen Blöcken enthalten ist.
-
In Schritt S23 führt die Berechnungseinheit 212a die gleiche Verarbeitung durch wie in Schritt S12 der ersten Ausführungsform und bestimmt den Trennungsgrad basierend auf einem Vergleich der in Schritt S22 berechneten Distanz D zwischen dem Werkzeug und dem Werkstück W mit den Schwellwerten Th1, Th2 und Th3.
-
In Schritt S24 extrahiert die Extraktionseinheit 213a basierend auf dem in Schritt S23 bestimmten Extraktionsgrad, als einen Stopppositionskandidaten, einen Block, der dem durch den Bediener ausgewählten Zweck oder Trennungsgrad entspricht und dem aktuell ausgewählten Block am nächsten ist, innerhalb der mehreren im Voraus gelesenen Blöcke.
-
In Schritt S25 fügt die Betriebssteuereinheit 216 automatisch einen Pausenbefehl als einen Unterbrechungspunkt zu dem in Schritt S24 extrahierten Stopppositionskandidaten hinzu.
-
Wie weiter oben beschrieben, berechnet die Steuervorrichtung 20A gemäß der zweiten Ausführungsform die Distanz D z wischen dem Werkzeug und dem Werkstück W für jeden vorbestimmten Code G00, der in den mehreren aus dem aktuell laufenden Bearbeitungsprogramm im Voraus gelesenen Blöcken enthalten ist, und bestimmt den Trennungsgrad in Entsprechung zu der berechneten Distanz D zwischen dem Werkzeug und dem Werkstück W. Basierend auf dem Trennungsgrad extrahiert die Steuervorrichtung 20A, als einen Stopppositionskandidaten, einen Block, der dem durch den Bediener ausgewählten Zweck oder Trennungsgrad entspricht und dem aktuell ausgeführten Block am nächsten ist, und fügt automatisch einen Pausenbefehl als einen Unterbrechungspunkt zu dem extrahierten Block hinzu.
-
Diese Konfiguration erlaubt, dass die Steuervorrichtung 20A einfach die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück W erkennt und einen Stopp in einem Block veranlasst, in dem die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück dem Zweck entspricht, auch während das Bearbeitungsprogramm 231 läuft.
-
Weiterhin kann die Steuervorrichtung 20A durch das automatische Hinzufügen eines Pausenbefehls als eines Unterbrechungspunkts zu dem extrahierten Stopppositionskandidaten verhindern, dass ein Pausenbefehl an einer falschen Position eingefügt wird und ein Stopp an der falschen Position veranlasst wird, wodurch die Arbeitslast für den Bediener reduziert wird.
-
Vorstehend wurde eine zweite Ausführungsform beschrieben.
-
Die Steuervorrichtungen 20 und 20A sind jedoch nicht auf die vorstehend beschriebenen ersten und zweiten Ausführungsformen beschränkt und können verschiedene Änderungen wie etwa Modifikationen und Verbesserungen aufweisen, solange damit die Aufgabe der Erfindung erfüllt wird.
-
<Modifikationsbeispiel>
-
In den oben beschriebenen ersten und zweiten Ausführungsformen ist der vorbestimmte Code G00. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt. Zum Beispiel kann der vorbestimmte Code auch ein anderer Code wie etwa G28 oder M06 sein.
-
Insbesondere ist G28 ein G-Code für das Zurückkehren zu einem Referenzpunkt (Maschinenursprung). Das heißt, dass sich das Werkzeug am Ende eines G28 enthaltenden Blocks im Wesentlichen an einer ausreichend von dem Werkstück W entfernten Position befindet, sodass das Einstellen des Durchmessers für ein Bohrwerkzeug, das Auftragen einer Paste auf ein Werkzeug und das Entfernen von Spänen an dieser Position durchgeführt werden können.
-
M06 ist ein M-Code für einen Werkzeugwechsel. Wie weiter oben beschrieben, wird der Werkzeugwechsel an einer vorbestimmten, von dem Werkstück W entfernten Position unter Verwendung von zum Beispiel einem Werkzeugmagazin (nicht gezeigt) in der Werkzeugmaschine 10 durchgeführt, sodass also das Einstellen des Durchmessers für ein Bohrwerkzeug, das Auftragen einer Paste auf ein Werkzeug und das Entfernen von Spänen durchgeführt werden können.
-
Das Entfernen von Spänen kann unabhängig von dem Trennungsgrad durchgeführt werden, solange das Werkzeug nicht in Kontakt mit dem Werkstück W ist. Die Steuervorrichtungen 20 und 20A können deshalb für jeden Block bestimmen, ob das Werkzeug und das Werkstück W voneinander getrennt sind, indem sie zum Beispiel bestimmen, ob der Block einen zu der Gruppe 01 gehörenden Code wie etwa G01 oder G02 innerhalb der G-Codes enthält oder nicht oder ob der Block einen Code M05 enthält oder nicht. Das heißt, dass das Werkzeug in einem Block, der einen zu der Gruppe 01 gehörenden Code wie etwa G01 oder G02 enthält, in Kontakt mit dem Werkstück W ist, sodass die Steuervorrichtungen 20 und 20A bestimmen können, dass das Entfernen von Spänen nicht durchgeführt werden kann, bevor ein G00 enthaltender Block erfasst wird. Das Werkzeug und das Werkstück W sind wenigstens in einem Block getrennt, der einen Code M05 für einen Spindelstopp enthält, sodass die Steuervorrichtungen 20 und 20A bestimmen können, dass das Entfernen von Spänen an dieser Position durchgeführt werden kann.
-
Jede der Funktionen der Steuervorrichtungen 20 und 20A gemäß der ersten Ausführungsform und der zweiten Ausführungsform können durch Hardware, Software oder eine Kombination aus diesen implementiert werden. Unter einer Implementierung durch Software ist hier zu verstehen, dass ein Computer ein Programm liest und ausführt.
-
Das Programm kann zu dem Computer zugeführt werden, indem es auf verschiedenen Typen von nicht-transitorischen, computerlesbaren Medien gespeichert wird. Die nicht-transitorischen, computerlesbaren Medien umfassen verschiedene Typen von greifbaren Speichermedien. Beispiele für nicht-transitorische, computerlesbare Medien sind magnetische Speichermedien (wie etwa Disketten, Magnetbänder und Festplattenlaufwerke), magnetooptische Speichermedien (wie etwa magnetooptische Disks), Nur-Lese-CDs (CD-ROMs), beschreibbare CDs (CD-Rs), wiederbeschreibbare CDs (CD-R/Ws) und Halbleiterspeicher (wie etwa Masken-ROMs, programmierbare ROMs (PROMs), löschbare PROMs (EPROMs), Flash-ROMs und RAMs). Alternativ dazu kann das Programm zu dem Computer unter Verwendung von verschiedenen Typen von transitorischen, computerlesbaren Medien zugeführt werden. Beispiele für transitorische, computerlesbare Medien sind elektrische Signale, optische Signale und elektromagnetische Wellen. Derartige transitorische, computerlesbare Medien können das Programm zu dem Computer über einen drahtlosen Kommunikationskanal oder einen drahtgebundenen Kommunikationskanal wie etwa über Elektrodrähte oder Lichtwellenleiter zuführen.
-
Es ist zu beachten, dass das Schreiben des auf einem Speichermedium aufzuzeichnenden Programms Prozesse umfasst, die nicht notwendigerweise chronologisch durchgeführt werden und parallel oder individuell durchgeführt werden können, und auch Prozesse umfasst, die chronologisch gemäß einer Reihenfolge durchgeführt werden.
-
Zusammenfassend gesagt können die Steuervorrichtung und das Steuerverfahren gemäß der vorliegenden Erfindung durch verschiedene Ausführungsformen realisiert werden, die die folgenden Konfigurationen aufweisen.
-
(1) Eine Steuervorrichtung 20 gemäß einem Aspekt der vorliegenden Erfindung ist eine Steuervorrichtung zum Steuern einer Werkzeugmaschine 10 basierend auf einem Bearbeitungsprogramm 231. Die Steuervorrichtung umfasst eine Extraktionseinheit 213, die konfiguriert ist zum Extrahieren, als Stopppositionskandidaten aus in dem Bearbeitungsprogramm 231 enthaltenen Blöcken, von Blöcken aus dem Bearbeitungsprogramm 231, die veranlassen, dass sich ein Werkzeug und ein Werkstück W in der Werkzeugmaschine 10 in einem vorbestimmten Zustand in Entsprechung zu dem Zweck eines Stoppens der Werkzeugmaschine 10 befinden.
-
Gemäß der Steuervorrichtung 20 kann die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück W in dem Bearbeitungsprogramm 231 einfach erkannt werden.
-
(2) Die in (1) beschriebene Steuervorrichtung 20 kann weiterhin eine Berechnungseinheit 212 umfassen, die konfiguriert ist zum Berechnen einer Distanz D zwischen dem Werkzeug und dem Werkstück W für jeden Block, der einen vorbestimmten Code enthält, und zum Bestimmen eines Trennungsgrads zwischen dem Werkzeug und dem Werkstück W basierend auf einem Vergleich der berechneten Distanz D mit vorgegebenen Schwellwerten Th1, Th2 und Th3. Die Extraktionseinheit 213 kann die Stopppositionskandidaten in Entsprechung zu dem Zweck oder Trennungsgrad extrahieren.
-
Diese Konfiguration erlaubt, dass die Steuervorrichtung 20 die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück W in dem Bearbeitungsprogramm 231 mit einer hohen Genauigkeit erkennt.
-
(3) Die in (2) beschriebene Steuervorrichtung 20 kann weiterhin eine Anzeigesteuereinheit 214 umfassen, die konfiguriert ist zum Anzeigen, an einer Anzeigeeinheit 220 der Steuervorrichtung 20, der aus dem Bearbeitungsprogramm 231 extrahierten Blöcke als die Stopppositionskandidaten in hervorgehobener Weise in Entsprechung zu dem Zweck oder Trennungsgrad.
-
Diese Konfiguration erlaubt, dass die Steuervorrichtung 20 einfach einen Pausenbefehl in Entsprechung zu dem Zweck einfügt, wodurch die Arbeitslast für den Bediener reduziert wird.
-
(4) Die in (2) oder (3) beschriebene Steuervorrichtung 20A kann weiterhin umfassen: eine Programm-Vorausleseeinheit 215, die konfiguriert ist zum Lesen von mehreren Blöcken in dem Bearbeitungsprogramm 231 im Voraus, während das Bearbeitungsprogramm 231 läuft; und eine Betriebssteuereinheit 216. Die Extraktionseinheit 213a kann, als einen Stopppositionskandidaten, einen Block extrahieren, der dem Zweck oder Trennungsgrad entspricht und einem aktuell ausgeführten Block innerhalb der mehreren im Voraus durch die Programm-Vorausleseeinheit 215 gelesenen Blöcke am nächsten ist. Die Betriebssteuereinheit 216 fügt einen Pausenbefehl zu dem derart durch die Extraktionseinheit 213a aus dem Bearbeitungsprogramm als den Stopppositionskandidaten extrahierten Block hinzu.
-
Diese Konfiguration erlaubt, dass die Steuervorrichtung 20A einen Stopp an einer Position veranlasst, an der die Positionsbeziehung zwischen dem Werkzeug und dem Werkstück W in dem Bearbeitungsprogramm 231 entsprechend ist, auch während das Bearbeitungsprogramm 231 läuft.
-
(5) Ein Steuerverfahren gemäß einem anderen Aspekt der vorliegenden Erfindung ist ein Steuerverfahren einer Steuervorrichtung 20 zum Steuern einer Werkzeugmaschine 10 basierend auf einem Bearbeitungsprogramm 231. Das Steuerverfahren umfasst einen Extraktionsschritt zum Extrahieren, als Stopppositionskandidaten aus den in dem Bearbeitungsprogramm 231 enthaltenen Blöcken, von Blöcken aus dem Bearbeitungsprogramm 231, die veranlassen, dass sich ein Werkzeug und ein Werkstück W in der Werkzeugmaschine 10 in einem vorbestimmten Zustand in Entsprechung zu dem Zweck eines Stoppens der Werkzeugmaschine 10 befinden.
-
Mit diesem Steuerverfahren kann der gleiche Effekt wie in (1) beschrieben erzielt werden.
-
(6) Das in (5) beschriebene Steuerverfahren kann weiterhin einen Berechnungsschritt zum Berechnen einer Distanz D zwischen dem Werkzeug und dem Werkstück W für jeden Block, der einen vorbestimmten Code enthält, und zum Bestimmen des Trennungsgrads zwischen dem Werkzeug und dem Werkstück W basierend auf einem Vergleich der berechneten Distanz D mit vorgegebenen Schwellwerten Th1, Th2 und Th3 umfassen. In dem Extraktionsschritt können die Stopppositionskandidaten in Entsprechung zu dem Zweck oder Trennungsgrad extrahiert werden.
-
Mit dieser Konfiguration kann das Steuerverfahren den gleichen Effekt wie in (2) beschrieben erzielen.
-
(7) Das in (6) beschriebene Steuerverfahren kann weiterhin einen Anzeigesteuerschritt zum Anzeigen, an einer Anzeigeeinheit 220 der Steuervorrichtung 20, der aus dem Bearbeitungsprogramm 231 extrahierten Blöcke als die Stopppositionskandidaten in hervorgehobener Weise in Entsprechung zu dem Zweck oder dem Trennungsgrad umfassen.
-
Mit dieser Konfiguration kann das Steuerverfahren den gleichen Effekt wie in (3) beschrieben erzielen.
-
(8) Das in (6) oder (7) beschriebene Steuerverfahren kann weiterhin umfassen: einen Programm-Vorausleseschritt zum Lesen von mehreren Blöcken in dem Bearbeitungsprogramm 231 im Voraus, während das Bearbeitungsprogramm 231 läuft; und einen Betriebssteuerschritt. In dem Extraktionsschritt wird ein Block, der dem Zweck oder Trennungsgrad entspricht und einem derzeit ausgeführten Block am nächsten ist, als ein Stopppositionskandidat innerhalb der mehreren im Voraus gelesenen Blöcke extrahiert. In dem Betriebssteuerschritt wird ein Pausenbefehl zu dem in dem Extraktionsschritt als der Stopppositionskandidat aus dem Bearbeitungsprogramm 231 extrahierten Block hinzugefügt.
-
Mit dieser Konfiguration kann das Steuerverfahren den gleichen Effekt wie in (4) beschrieben erzielen.
-
Bezugszeichenliste
-
- 1:
- Steuersystem
- 10:
- Werkzeugmaschine
- 20, 20A:
- Steuervorrichtung
- 210, 210a:
- Steuereinheit
- 211:
- Programmbearbeitungseinheit
- 212, 212a:
- Berechnungseinheit
- 213, 213a:
- Extraktionseinheit
- 214:
- Anzeigesteuereinheit
- 215:
- Programm-Vorausleseeinheit
- 216:
- Betriebssteuereinheit
- 220:
- Anzeigeeinheit
- 230:
- Speichereinheit
-
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
-