-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung:
-
Die Erfindung betrifft eine numerische Steuervorrichtung zum Steuern von Bearbeitungsoperationen zur Bearbeitung eines Werkstückes mit Werkzeugen und von Hilfsoperationen zur Unterstützung der Bearbeitungsoperationen; und sie betrifft auch Steuerverfahren für eine numerische Steuervorrichtung.
-
Zum Stand der Technik:
-
Eine numerische Steuervorrichtung einer Werkzeugmaschine bewirkt Bearbeitungsoperationen wie ein Schneiden (Zerspanen), Polieren etc. an einem Werkstück unter axialer Bewegung eines Werkzeuges und sie führt auch Nebenoperationen (Hilfsoperationen) bezüglich der Bearbeitungsoperationen aus. Beispiele für Hilfsoperationen sind Werkzeugwechsel, Werkstückaustausch und die Zufuhr/Unterbrechung der Zufuhr von Schneidöl. Durch Ausführung von Hilfsoperationen dieser Art im Voraus je nach Bedarf während der Bearbeitungsoperationen ist es möglich, die Prozesszeit (Zykluszeit) für den gesamten Werkstück-Bearbeitungsprozess zu kürzen.
-
Deshalb entscheidet die numerische Steuervorrichtung über die Implementierung von Hilfsoperationen durch Vorausschau im Bearbeitungsprogramm. Beispielsweise zeigt die numerische Steuervorrichtung gemäß der
japanischen Patentschrift 5210070 einen ersten Bearbeitungsprogrammanalysator zum Analysieren des gesamten Bearbeitungsprogramms und einen zweiten Bearbeitungsprogrammanalysator zum Analysieren nur der Hilfsoperationen im Bearbeitungsprogramm. Sodann werden die durch den zweiten Programmanalysator analysierten Hilfsoperationen im Voraus ausgeführt, um so die Prozesszeit zu kürzen.
-
KURZBESCHREIBUNG DER ERFINDUNG
-
Allerdings benötigt die numerische Steuervorrichtung entsprechend dem
japanischen Patent 5210070 zwei Analysatoren zum Analysieren des Bearbeitungsprogramms, so dass die Prozesslast der numerischen Steuervorrichtung als Ganzes anwächst. Weiterhin analysiert der zweite Programmanalysator nur die Hilfsfunktionscodes des Bearbeitungsprogramms und kann nicht die Ausführungsabfolge einer Hilfsoperation während der Bearbeitungsoperation anpassen. Es besteht deshalb die Gefahr, dass eine Hilfsoperation in einer ungünstigen Zeitfolge in Bezug auf das Bearbeitungsprogramm implementiert wird.
-
Die vorliegende Erfindung steht im Zusammenhang mit den obigen Umständen und hat deshalb zum Ziel, eine numerische Steuervorrichtung bereitzustellen, welche eine Ausführungszeit für eine Hilfsoperation mit einer einfachen Konfiguration vorteilhaft einstellen kann, um sowohl eine Verbesserung im Steuerungsablauf als auch eine Reduktion in der Prozesszeit zu erreichen; und die Erfindung soll auch ein Steuerverfahren für eine numerische Steuervorrichtung bereitstellen.
-
Um das obige Ziel zu erreichen, wird gemäß einer Merkmalskombination der Erfindung eine numerische Steuervorrichtung bereitgestellt zum Steuern einer Werkzeugmaschine zur Bearbeitung eines Werkstückes mit einem Werkzeug, folgendes aufweisend: eine Programm-Vorausschaueinheit, eingerichtet zum sequenziellen Vorabauslesen und Analysieren mehrerer ein Bearbeitungsprogramm bildender Blöcke, ausgehend von einem Anfangsblock; und eine Programm-Ausführungseinheit, die eingerichtet ist zum Ausführen der vorab ausgelesenen und durch die Programm-Vorausschaueinheit analysierten Blöcke, um so Bearbeitungsoperationen und eine Hilfsoperation zur Unterstützung der Bearbeitungsoperationen zu steuern, wobei die mehreren Blöcke Bearbeitungsoperationsblöcke mit Bearbeitungscodes zum Ausführen der darin enthaltenen Bearbeitungsoperationen aufweisen, und einen Hilfsoperationsblock mit einem Hilfsfunktionscode zum Ausführen der darin eingeschriebenen Hilfsoperation, und wobei die Programm-Ausführungseinheit eingerichtet ist zum sequenziellen Ausführen der Blöcke, ausgehend vom Anfangsblock, und um bezüglich des Hilfsoperationsblocks eine Ausführungsstartzeit um eine Versatzzeit zu verschieben entsprechend dem in dem Hilfsoperationsblock enthaltenen Hilfsfunktionscode.
-
Wenn in dieser Konfiguration die Programm-Vorausschaueinheit einen Hilfsoperationsblock im Bearbeitungsprogramm detektiert, kann die numerische Steuervorrichtung die Ausführungsstartzeit des Hilfsoperationsblocks um die Versatzzeit entsprechend dem Hilfsfunktionscode des Hilfsoperationsblocks verschieben. Das heißt, dass die Implementation des Hilfsoperationsblocks zu einem Zeitpunkt ausgeführt werden kann, welcher an die Art der Hilfsoperation angepasst ist.
-
Deshalb kann die Programm-Ausführungseinheit die Steuerung der Hilfsoperation zu einem Zeitpunkt starten, der zum Bearbeitungsbetrieb passt. Die numerische Steuervorrichtung kann also den Ausführungsstartzeitpunkt der Hilfsoperation vorteilhaft setzen, und so kann die Steuerung insgesamt verbessert und die Prozesszeit verkürzt werden.
-
Vorzugsweise berechnet die Programm-Ausführungseinheit eine Ausführungszeit, die erforderlich ist, um die Ausführung aller noch nicht ausgeführten Bearbeitungsoperationsblöcke (Bearbeitungsbetriebsblöcke) vollständig auszuführen, und zwar zu einem Detektionszeitpunkt, zu dem durch die Vorausablesung der Programm-Vorausschaueinheit der Hilfsoperationsblock detektiert wird, und es erfolgt ein Start des detektierten Hilfsoperationsblocks zu einem Ausführungsstartzeitpunkt, welcher um die Versatzzeit gegenüber der berechneten Ausführungszeit verschoben ist.
-
Da die numerische Steuervorrichtung für die vorab ausgelesenen Bearbeitungsoperationsblöcke die Ausführungszeit berechnet, welche erforderlich ist für die vollständige Ausführung aller noch nicht ausgeführten Bearbeitungsoperationsblöcke und die Ausführungszeit um die Versatzzeit verschiebt, ist es möglich, den Ausführungsstartzeitpunkt der Hilfsoperation genau und zeitlich vorteilhaft zu bestimmen.
-
Weiterhin können die Programm-Vorausschaueinheit oder die Programm-Ausführungseinheit eine Ausführungsbereitschaftszeit von der Detektionszeit zur Ausführungsstartzeit berechnen und die Ausführung des detektierten Hilfsoperationsblockes starten, wenn im Anschluss an die Detektionszeit die Ausführungsbereitschaftszeit abgelaufen ist.
-
Durch Berechnung der Ausführungsbereitschaftszeit (Zeitspanne) kann die numerische Steuervorrichtung die Ausführung des Hilfsoperationsblockes zu einem genau passenden Zeitpunkt starten.
-
Vorzugsweise berechnet die Programm-Vorausschaueinheit oder die Programm-Ausführungseinheit eine Ausführungszeit für jeden der Bearbeitungsoperationsblöcke und die Programm-Ausführungseinheit berechnet unter Verwendung der berechneten Ausführungszeit für jeden der Bearbeitungsoperationsblöcke die (Gesamt-)Ausführungszeit.
-
Durch Berechnung der Ausführungszeiten für jeden Block kann die numerische Steuervorrichtung die (Gesamt-)Ausführungszeit sehr genau bestimmen.
-
Ist in der obigen Konfiguration der Bearbeitungsoperationsblock ein Befehl für eine Achsenbewegung der Werkzeugmaschine, können die Programm-Vorausschaueinheit oder die Programm-Ausführungseinheit als Ausführungszeit eine Zeit berechnen, die erforderlich ist zur Ausführung der Achsenbewegung durch die Werkzeugmaschine auf Basis eines Bewegungsbetrages und einer Bewegungsgeschwindigkeit für die Achsenbewegung entsprechend dem Bearbeitungsoperationsblock.
-
Die numerische Steuervorrichtung berechnet auf Basis des Bewegungsbetrages und der Bewegungsgeschwindigkeit, wie im Bearbeitungsoperationsblock angegeben, die Ausführungszeit, welche erforderlich ist für die Achsenbewegung der Werkzeugmaschine, so dass die für den tatsächlichen Betrieb des Bearbeitungsoperationsblockes erforderliche Zeit genau berechnet werden kann.
-
Die Programm-Vorausschaueinheit oder die Programm-Ausführungseinheit können die Ausführungszeit kompensieren durch Einsatz eines Übersteuerungskoeffizienten („override“) zum Einstellen der Bewegungsgeschwindigkeit.
-
Durch Kompensation der Ausführungszeit unter Verwendung des Übersteuerungskoeffizienten kann die numerische Steuerung bei der Berechnung die Zeiten genauer berücksichtigen. Damit ist es möglich, die Vervollständigungszeit mit hoher Genauigkeit zu berechnen.
-
Handelt es sich bei dem Bearbeitungsoperationsblock um einen Befehl für einen Haltebetrieb, können die Programm-Vorausschaueinheit oder die Programm-Ausführungseinheit eine Haltezeit entsprechend dem Bearbeitungsoperationsblock als Ausführungszeit einstellen.
-
Da damit die numerische Steuervorrichtung die vollständige Ablaufzeit berechnen kann unter Berücksichtigung auch der Zeit für Halteoperationen der Bearbeitungsoperationsblöcke, ist es möglich, die Hilfsoperationen mit höherer Genauigkeit zu starten.
-
Die Programm-Vorausschaueinheit oder die Programm-Ausführungseinheit können die Ausführungszeit kompensieren durch Einsatz eines Übersteuerungskoeffizienten („override“) zum Einstellen der Haltezeit, wie sie in dem Bearbeitungsoperationsblock angegeben ist.
-
Dies ermöglicht, die Ablaufzeit unter Berücksichtigung der Haltezeit zu berechnen.
-
Die Programm-Ausführungseinheit kann eine Tabelle enthalten, in welcher eine Versatzzeit in Verknüpfung mit jedem der Hilfsfunktionscodes abgespeichert ist.
-
Auf diese Weise kann die Programm-Ausführungseinheit einfach die Versatzzeit entsprechend der Art des Hilfsbetriebs einstellen durch Rückgriff auf die Tabelle, in welcher die Versatzzeit in Verknüpfung mit jedem zugeordneten Hilfsfunktionscode abgespeichert ist.
-
Andererseits kann die Versatzzeit, welche dem Hilfsfunktionscode entspricht, im Hilfsoperationsblock eingeschrieben sein.
-
Auch kann die numerische Steuervorrichtung die Ausführungsstartzeit der Hilfsoperation einfach einstellen unter Einsatz der in den Hilfsfunktionscode eingeschriebenen Versatzzeit.
-
Um die oben genannten Ziele gemäß einer anderen Merkmalskombination der Erfindung zu erreichen, wird ein Steuerverfahren für eine numerische Steuervorrichtung, welche eine Werkzeugmaschine zur Bearbeitung eines Werkstückes mit einem Werkzeug steuert, vorgeschlagen, wobei das Verfahren enthält: einen Vorausschauschritt mit sequenzieller Vorabauslesung und Analyse mehrerer ein Bearbeitungsprogramm bildender Blöcke, ausgehend von einem Anfangsblock; und einen Ausführungsschritt zur Ausführung der im Vorausschauschritt vorab ausgelesenen und analysierten Blöcke zur Steuerung des Bearbeitungsbetriebs und einer Hilfsoperation zur Stützung des Bearbeitungsbetriebs, wobei die mehreren Blöcke Bearbeitungsoperationsblöcke enthalten mit Bearbeitungscodes zur Ausführung des Bearbeitungsbetriebs und einen Hilfsoperationsblock mit einem Hilfsfunktionscode zur Ausführung des Hilfsbetriebs; wobei im Ausführungsschritt die Blöcke sequenziell vom Anfangsblock ausgehend ausgeführt werden und bezüglich des Hilfsoperationsblockes eine Ausführungsstartzeit des Hilfsoperationsblockes um eine Versatzzeit entsprechend dem Hilfsfunktionscode, wie er in den Hilfsoperationsblock eingeschrieben ist, verschoben wird.
-
In diesem Fall kann im Ausführungsschritt eine Abschlusszeit berechnet werden, die erforderlich ist für eine vollständige Ausführung aller noch nicht ausgeführten Bearbeitungsoperationsblöcke unter den bereits vorab ausgelesenen Bearbeitungsoperationsblöcken, und zwar zum Zeitpunkt der Detektion eines Hilfsoperationsblockes durch die Vorabauslesung im Vorausschauschritt und es erfolgt der Start der Ausführung des detektierten Hilfsoperationsblockes zu einer Ausführungsstartzeit, die gegenüber der berechneten Vervollständigungszeit um die Versatzzeit verschoben ist.
-
Bei der obigen Konfiguration wird vorzugsweise im Vorausschauschritt für jeden der Bearbeitungsoperationsblöcke eine Ausführungszeit berechnet und im Ausführungsschritt wird die Vervollständigungszeit berechnet unter Verwendung der berechneten Ausführungszeit für jeden der Bearbeitungsoperationsblöcke.
-
Im Ausführungsschritt kann die Versatzzeit einer Tabelle entnommen werden, in welcher die Versatzzeit in Verknüpfung mit jeder der Hilfsfunktionscodes abgespeichert ist.
-
Andererseits kann auch die jeweilige Versatzzeit entsprechend dem Hilfsfunktionscode im Hilfsoperationsblock eingeschrieben sein.
-
Mit der numerischen Steuervorrichtung und dem Steuerverfahren für eine numerische Steuervorrichtung gemäß der Erfindung ist es möglich, die Zeit für die Ausführung von Hilfsoperationen mit einer einfachen Konfiguration vorteilhaft einzustellen und so eine Verbesserung sowohl hinsichtlich des Steuerungsablaufs als auch hinsichtlich einer Reduktion der Prozesszeit zu erreichen.
-
Obige sowie weitere Ziele, Merkmale und Vorteile der Erfindung werden noch deutlicher aus der nachfolgenden Beschreibung mit Blick auf die begleitenden Figuren, in welchen bevorzugte Ausführungsbeispiele der Erfindung beispielhaft gezeigt sind.
-
Figurenliste
-
- 1 ist ein Blockdiagramm und zeigt schematisch die Gesamtkonfiguration einer numerischen Steuervorrichtung und einer damit versehenen Werkzeugmaschine gemäß einem ersten Ausführungsbeispiel;
- 2 zeigt exemplarisch ein in einer numerischen Steuervorrichtung gemäß 1 eingesetztes Bearbeitungsprogramm;
- 3A zeigt exemplarisch Blöcke in einem Bearbeitungsprogramm und die Länge der zu berechnenden jeweiligen Ausführungszeit;
- 3B zeigt exemplarisch die gleichen Blöcke und die Länge entsprechend einer Vorausschau;
- 3C zeigt exemplarisch die gleichen Blöcke und die Länge einer Versatzzeit;
- 3D zeigt exemplarisch die gleichen Blöcke, die Länge der Zeit bis zum Start und einen Hilfsoperationsablauf;
- 4 ist ein Beispiel für eine Konditionentabelle;
- 5 ist ein Flussdiagramm für den Prozessablauf in einer Programm-Vorausschaueinheit;
- 6 ist ein Flussdiagramm für den Prozessablauf in einer Programm-Ausführungseinheit; und
- 7 zeigt ein Beispiel für ein Bearbeitungsprogramm gemäß einem zweiten Ausführungsbeispiel.
-
BESCHREIBUNG BEVORZUGTER AUSFÜHRUNGSBEISPIELE
-
Nunmehr werden eine numerische Steuervorrichtung und ein Steuerverfahren hierfür gemäß der Erfindung mit Einzelheiten für bevorzugte Ausführungsbeispiele und mit Bezug auf die Figuren näher beschrieben.
-
[Erstes Ausführungsbeispiel]
-
Gemäß 1 ist eine numerische Steuervorrichtung 10 gemäß einem ersten Ausführungsbeispiel in einer Werkzeugmaschine 12 vorgesehen zur Steuerung eines Bearbeitungsprozesses in der Werkzeugmaschine 12. Im Bearbeitungsprozess wird ein durch die Werkzeugmaschine 12 gehaltenes Werkzeug oder Werkstück bewegt, um es zu bearbeiten. Beispiele für die Bearbeitung des Werkstückes mittels der numerischen Steuervorrichtung 12 sind das Schneiden (Drehen, Fräsen, Bohren, etc.), Abschleifen (Oberflächenschleifen, internes Schleifen, etc.), und spezielle Bearbeitungen (Laserbearbeitungen, Bearbeitung mit elektrischen Entladungen, etc.).
-
Darüber hinaus führt die numerische Steuervorrichtung 10 Hilfsoperationen aus, wie eine Unterstützung der ablaufenden Bearbeitungsoperation oder die Vorbereitung für eine gewünschte Bearbeitungsoperation gleichzeitig mit der laufenden Bearbeitungsoperation. Insbesondere ist die numerische Steuervorrichtung 10 gemäß diesem Ausführungsbeispiel eingerichtet, den zeitlichen Ausführungsablauf der Hilfsoperationen passend und genau in Bezug auf die Bearbeitungsoperationen einzustellen. Im Ergebnis kann die numerische Steuervorrichtung 10 den Bearbeitungsprozess und Schaltoperationen etc. laufruhig in kürzeren Zeiten ausführen.
-
Die numerische Steuervorrichtung 10 entsprechend dem ersten Ausführungsbeispiel ist in der Werkzeugmaschine 12 mit mehreren Achsen angeordnet, wie Linearbewegungsachsen und Drehachsen, und sie gibt Antriebsbefehle an die Werkzeugmaschine 12. Beispielsweise hat die Werkzeugmaschine 12 drei Linearbewegungsachsen in X-, Y- und Z-Richtungen, die zueinander orthogonal sind, und eine Spindel für die Drehung eines Werkzeuges um die Achse. Nachfolgend wird die drei-achsige Werkzeugmaschine 12 und die entsprechende numerische Steuervorrichtung 10 in dieser als Beispiel für ein solches System hergenommen. Jedoch ist die Anzahl der Achsen und die Struktur der Werkzeugmaschine 12, mit welcher die numerische Steuervorrichtung 10 wirkt, nicht beschränkt, insbesondere nicht auf das obige Beispiel beschränkt und es versteht sich auch, dass die numerische Steuervorrichtung 10 bei Maschinen einsetzbar ist, die verschieden sind von einer Werkzeugmaschine.
-
In der Werkzeugmaschine 12 treiben mehrere Antriebseinheiten jeweils Achsen unter Steuerung durch die numerische Steuervorrichtung 10 zum Drehen des Werkzeuges, für einen axialen Vorschub des Werkzeuges und/oder des Werkstückes und dergleichen. Im Einzelnen enthalten die Antriebseinheiten der Werkzeugmaschine 12 Bearbeitungsachsenantriebseinheiten 14 mit Servomotoren (einschließlich Servoverstärkern) und dergleichen, eine Spindelantriebseinheit 16 mit einem Spindelmotor oder dergleichen und Hilfsantriebseinheiten 18 für Hilfsoperationen.
-
Entsprechend den drei Axialrichtungen sind drei Bearbeitungsachsenantriebseinheiten 14 vorgesehen. Jede Bearbeitungsachsenantriebseinheit 14 hat ein (nicht dargestelltes) bewegliches Teil, welches sich entlang der zugehörigen Achse bewegt und das bewegliche Teil wird auf Basis von Antriebsbefehlen (Informationen bezüglich der Drehgeschwindigkeit und des Drehbetrages) in eine von der numerischen Steuervorrichtung 10 befohlene Position bewegt. Die Spindelantriebseinheit 16 dreht das Werkzeug um die Spindelachse auf Basis von Antriebsbefehlen (Informationen bezüglich Rotationsgeschwindigkeit und Drehbetrag) von der numerischen Steuervorrichtung 10.
-
Befehle zum Starten und Stoppen der Drehung des Werkzeuges werden durch Hilfsfunktionscodes (M-Codes) im Bearbeitungsprogramm 20 bestimmt und somit werden diese grundlegend als Hilfsoperationen eingeordnet. Das heißt, die Hilfsoperationen enthalten: Operationen, welche ausgeführt werden infolge von Bearbeitungsoperationen der Bearbeitungsachsenantriebseinheiten 14 und der Spindelantriebseinheit 16 (nachfolgend als verknüpfte Hilfsoperationen bezeichnet); und Operationen (nachfolgend als unabhängige Hilfsoperationen bezeichnet), welche individuell durch Einrichtungen (die Hilfsantriebseinheiten 18 und dergleichen) ausgeführt werden, die verschieden sind von den Bearbeitungsachsenantriebseinheiten 14 und der Spindelantriebseinheit 16 während der Bearbeitung des Werkstückes. Beim vorliegenden Ausführungsbeispiel bedeutet eine während des Bearbeitungsvorganges ausgeführte Hilfsoperation grundsätzlich eine unabhängige Hilfsoperation. Es gibt aber Fälle, in welchen eine verknüpfte Hilfsoperation als Vorbereitungsfunktion ausgeführt wird, während das Werkstück bearbeitet wird. In diesem Fall kann die Einstellung der Ausführungszeit für Hilfsoperationen gemäß der Erfindung eingesetzt werden.
-
Beispiele für die verknüpften Hilfsoperationen sind Start und Stopp der Drehung der Spindel, Pause des Programms und dergleichen. Beispiele für die unabhängigen Hilfsoperationen enthalten den Einsatz einer Kühleinrichtung zum Zuführen von Schneid-Fluid oder zum Stoppen der Zufuhr von Schneid-Fluid, den Einsatz eines Magazins für die Vorbereitung eines Werkzeugwechsels, den Einsatz eines Übertragungsroboters zum Austausch von Werkstücken und dergleichen. Somit sind Beispiele für die Hilfsantriebseinheiten 18 unabhängig operierende Einrichtungen, wie eine Kühleinrichtung, ein Magazin, ein Roboter, etc.
-
Die numerische Steuervorrichtung 10 zum Steuern der Werkzeugmaschine 12 ist durch einen Rechner gebildet, der einen (nicht dargestellten) Prozessor, einen Speicher und Eingabe-/Ausgabeschnittstellen aufweisen. Die numerische Steuervorrichtung 10 wirkt als Steuereinheit für die Werkzeugmaschine 12 mittels eines Prozessors, welcher ein Systemprogramm (nicht dargestellt) ausführt, das in dem Speicher abgelegt ist.
-
In der numerischen Steuervorrichtung 10 sind eine Programm-Vorausschaueinheit 22 und eine Programm-Ausführungseinheit 24 als eine Funktion der Steuereinheit implementiert. Dabei ist vorzugsweise ein (nicht dargestellter) Puffer zum Speichern von Analyseergebnissen (Ausführungsdaten) der Programm-Vorausschaueinheit 22 zwischen der Programm-Vorausschaueinheit 22 und der Programm-Ausführungseinheit 24 vorgesehen.
-
Die numerische Steuervorrichtung 10 speichert das oben genannte Bearbeitungsprogramm 20 für eine willkürliche Bewegung des Werkzeuges der Werkzeugmaschine 12 und des Werkstückes in einer Programmspeichereinheit 26 (Speicherbereich des Speichers). Das Bearbeitungsprogramm 20 wird nach den Wünschen des Nutzers der Werkzeugmaschine 12 zusammengestellt.
-
Die numerische Steuervorrichtung 10 führt Bearbeitungsoperationen aus durch Ausführung des Bearbeitungsprogramms 20 zum Antrieb der Bearbeitungsachsen der Antriebseinheiten 14 und der Spindelantriebseinheit 16. Die numerische Steuervorrichtung 10 kann eingerichtet sein zum Empfang eines Bearbeitungsprogramms 20, welches von außen über eine (nicht dargestellte) eingebaute Kommunikationseinrichtung übertragen und dann sofort ausgeführt wird.
-
Entsprechend 2 wird das Bearbeitungsprogramm 20 gebildet durch eine Sequenz von Codes, numerischen Werten zur Anzeige der Bewegung entlang den Achsen und weitere Elemente. Dabei bedeutet der Anfangsbuchstabe N mit dem nachfolgenden numerischen Wert eine Sequenznummer. Zwar sind hier die Sequenznummern in numerischer Reihenfolge dargestellt, jedoch ist diese numerische Reihenfolge nicht erforderlich.
-
Die Anfangsbuchstaben X, Y oder Z mit einem nachfolgenden numerischen Wert bedeuten den Betrag der Bewegung bezüglich einer jeden Achse. Der Anfangsbuchstabe F mit einem nachfolgenden numerischen Wert ist ein Bearbeitungscode, welcher die Vorschubgeschwindigkeit bezüglich der jeweiligen Achse anzeigt. Der Anfangsbuchstabe G mit einem nachfolgenden numerischen Wert bedeutet einen Code für die Bearbeitungsvorbereitung (Typ der Bearbeitungsoperation). Der Anfangsbuchstabe M mit einem nachfolgenden numerischen Wert bedeutet einen Code bezüglich einer Hilfsoperation (Hilfsfunktionscode). Angemerkt sei, dass der Hilfsfunktionscode nicht eingeschränkt ist auf den M-Code, sondern auch zum Beispiel B-Codes (Anfangsbuchstabe B mit numerischem Wert) sind möglich.
-
Im Bearbeitungsprogramm 20 gemäß 2 bedeuten G-Codes die Einzelheiten der Bearbeitungsoperationen (Typen der Operationen), während Sequenznummern N01, N02, ..., N100 (ohne G-Code geschrieben) beschreiben, wie die Bearbeitung ausgeführt wird. M-Codes nach N100 beschreiben, dass eine Hilfsoperation auszuführen ist.
-
Von den Operationstypen der Bearbeitung entsprechend dem G-Code ist im Bearbeitungsprogramm 20 ein Operationstyp definiert durch ein Segment aus einem sequenz-nummerierten Block, wobei ein G-Code im vorangehenden Block eingeschoben ist und ein nachfolgender G-Code in den laufenden Block. Beispiele für Operationstypen sind eine Schneid-Vorschub-Operation zum Schneiden (Zerspanen) des Werkstückes durch Bewegung entlang jeder Achse, eine Eilgang-Operation für einen schnellen Vorschub einer Achse, eine Halte-Operation zum Stoppen des Programms für eine vorgegebene Zeitspanne und dergleichen. In der Schneid-Vorschub-Operation gemäß diesem Ausführungsbeispiel werden der sogenannte Absolut-Modus (Verfahren der absoluten Position) und der sogenannte Inkrement-Modus (Verfahren der relativen Position) gemeinsam durchgeführt, jedoch müssen sie in unterschiedliche Operationstypen unterteilt werden. In der nachfolgenden Beschreibung der Operationstypen werden die vorstehend genannten drei Beispiele, d.h. die Schneid-Vorschub-Operation, die Eilgang-Operation und die Halte-Operation nur beispielhaft zur Erläuterung herangezogen.
-
Die Programm-Vorausschaueinheit 22 gemäß 1 ist eine Funktionseinheit, welche vor der Programm-Ausführungseinheit 24 ein Bearbeitungsprogramm 20 ausliest (d.h. also das Bearbeitungsprogramm vorab ausliest) und dieses analysiert. Die Programm-Vorausschaueinheit 22 liest das in der Figur gezeigte Bearbeitungsprogramm 20 aus der Programm-Speichereinheit 26 und analysiert, ausgehend vom ersten Block (Anfangsblock) eine Mehrzahl von Blöcken, welche das Bearbeitungsprogramm 20 bilden (nachfolgend mit „Vorausschau-Analyse“ bezeichnet).
-
In Beispielen dieser Vorausschau-Analyse werden z.B. die Einzelheiten des Betriebs für jeden Block, die Anzahl der Blöcke der Vorausschau-Analyse, und Einzelheiten (Operationstypen) der Bearbeitungsoperationen berücksichtigt. Sodann gibt die Programm-Vorausschaueinheit 22 nach Ausführung der Vorausschau-Analyse bezüglich der Blöcke (Bearbeitungsoperationsblöcke BP), getrennt von unabhängigen Hilfsoperationen, das Ergebnis der Analyse an die Programm-Ausführungseinheit 24. Wenn andererseits die Programm-Vorausschaueinheit 22 einen Block detektiert (Hilfsblock BM) bezüglich einer unabhängigen Hilfs-Operation mit einem Hilfsfunktionscode im Bearbeitungsprogramm 20, wird das Ergebnis der Detektion (nachfolgend mit „Hilfsoperationsdetektion I“ beschrieben) an die Programm-Ausführungseinheit 24 gegeben.
-
Entsprechend
3A berechnet die Programm-Vorausschaueinheit
22 eine Ausführungszeit T für jeden Block in der Vorausschau-Analyse unter Verwendung der nachfolgenden Gleichung (1).
wobei L
B der Bewegungsbetrag des bewegten Teils ist bei Bewegung durch die Bearbeitungsachsenantriebseinheit
14 entlang der Achse und er kann bestimmt werden unter Berücksichtigung der Bewegung für die X-Achse, die Y-Achse und die Z-Achse. Der Term F
BI ist die Vorschubgeschwindigkeit, mit welcher das bewegte Teil sich entlang der Achse bewegt und dies entspricht dem F-Code, der zusammen mit dem G-Code eingeschrieben ist (siehe auch
2). Bei Stopp des bewegten Teiles (beispielsweise Einstellung der Haltezeit durch den G-Code) etc. zeigt ein Symbol mit einem numerischen Wert, der zusammen mit dem G-Code geschrieben ist, die Haltezeit (X5,0 im Block mit der Sequenznummer N16 in
2). Die Ausführungszeit T gemäß Berechnung mit Gleichung (1) wird in einer (nicht dargestellten) Vorausschau-Analyse-Speichereinheit (Speicherbereich) in der Programm-Vorausschaueinheit
22 in Verknüpfung mit dem oben genannten Operationstyp abgespeichert.
-
Bei Detektion eines Hilfsfunktionscodes liest die Programm-Vorausschaueinheit
22 die Ausführungszeit T für jeden Block, wie in der Vorausschau-Analyse-Speichereinheit abgespeichert, aus und berechnet die Zeit für jeden Operationstyp mittels der nachfolgenden Gleichungen (2) bis (4) (siehe
2 und
3A). Dies erfolgt, damit die Programm-Ausführungseinheit zur Instruktion der Ausführungszeitpunkt von unabhängigen Hilfsoperationen in der Lage ist.
wobei:
- TF die Zeit ist, welche erforderlich ist für die Schneidvorschuboperation (Schneidvorschubzeit);
- TR die Zeit ist, welche erforderlich ist für den Eilgang (Eilgangzeit); und
- TW die Halte-Operationszeit ist (Haltezeit).
-
Weiterhin ist n die Nummer des jeweiligen Blocks im betreffenden Operationstyp.
-
Wie oben beschrieben, kann die numerische Steuervorrichtung 10 die Zeit erkennen, welche erforderlich ist für jeden Operationstyp durch Berechnen der Zeiten (Schneidvorschubzeit TF, Eilgangzeit TR, Haltezeit TW, etc.) für jeden Operationstyp. Anstelle einer Berechnung der Ausführungszeit T für jeden Block bei der normalen Vorausschau-Analyse kann die Programm-Vorausschaueinheit 22 auch eingerichtet sein, die Berechnung der Ausführungszeit T zu starten bei Detektion einer unabhängigen Halte-Operation als Auslöser und sodann die Schneid-Vorschub-Zeit TF, Eilgangzeit TR und Haltezeit TW berechnen.
-
Bei Detektion einer unabhängigen Halte-Operation erzeugt die Programm-Vorausschaueinheit 22 eine Halteoperationsdetektionsinformation I, enthaltend den detektierten Hilfsoperationsblock BM und die für den jeweiligen Operationstyp berechneten Zeiten (Schneidvorschubzeit TF, Eilgangzeit TR, Haltezeit TW, etc.). Sodann wird diese Hilfsoperationsdetektionsinformation I an die Programm-Ausführungseinheit 24 gegeben.
-
Entsprechend 1 ist die Programm-Ausführungseinheit 24 der numerischen Steuervorrichtung 10 als Funktionseinheit konfiguriert, welche das Bearbeitungsprogramm 20 ausführt, welches vorab durch die Programm-Vorausschaueinheit 22 ausgelesen und analysiert wurde. Die Programm-Ausführungseinheit 24 enthält eine Bearbeitungsoperationssteuereinheit 28, welche hauptsächlich Operationen der Bearbeitungsachsenantriebseinheiten 14 und der Spindelantriebseinheit 16 steuert, und eine Hilfsoperationssteuereinheit 30, welche hauptsächlich Operationen der Hilfsantriebseinheiten 18 steuert.
-
Die Bearbeitungsoperationssteuereinheit 28 liest die durch die Programm-Vorausschaueinheit 22 analysierten und im Puffer abgespeicherten Blöcke und führt sodann die Befehle entsprechend den Blöcken aus, um so Bearbeitungsoperationen und verknüpfte Hilfsoperationen mit der Werkzeugmaschine 12 als Steuergegenstand auszuführen. Insbesondere steuert die Bearbeitungsoperationssteuereinheit 28 den Antrieb der Bearbeitungsachsenantriebseinheiten 14 und der Spindelantriebseinheit 16, um so die Bewegungen von Werkzeug bzw. Werkstück zu steuern.
-
Dabei führt die Bearbeitungsoperationssteuereinheit 28 die Bearbeitungen auf Basis der Ausführungsdaten des ersten Blockes unter den im Puffer (Zwischenspeicher) gespeicherten Blöcken aus. Sodann löscht die Bearbeitungsoperationssteuereinheit 28 die Ausführungsdaten, für welche die Arbeit ausgeführt worden ist, im Puffer. Im Ergebnis verbleiben nur die noch nicht nach der Vorabauslesung durch die Programm-Vorausschaueinheit 22 ausgeführten Blöcke im Puffer.
-
Die Hilfsoperationssteuereinheit 30 der Programm-Ausführungseinheit 24 ist im Bereitschaftszustand während der normalen Bearbeitungsoperationen, in welchen keine unabhängige Hilfsoperation detektiert ist. Bei Empfang der Hilfsoperationsdetektionsinformation I von der Programm-Vorausschaueinheit 22 beginnt die Steuereinheit 30 einen Prozess zur Steuerung der Ausführung der unabhängigen Hilfsoperation.
-
Die Hilfsoperationssteuereinheit 30 enthält einen Ereignisrechner 32 und einen Ereignisprozessor 34. Weiterhin enthält die Hilfsoperationssteuereinheit 30 eine Hilfsoperationsprozessspeichereinheit 36 (Bereich eines Speichers) zum Speichern von Informationen für die Verarbeitung im Ereignisrechner 32.
-
Der Ereignisrechner 32 berechnet Informationen (Hilfsoperationszählung CMS) bezüglich der Zeit bis zum Start der unabhängigen Hilfsoperation (siehe 3D), um die unabhängige Hilfsoperation passend mit der laufenden Bearbeitungsoperation zu starten. Mit anderen Worten: die Hilfsoperationssteuereinheit 30 betätigt die Hilfsantriebseinheit 18 zum passenden Zeitpunkt entsprechend der Hilfsoperationszählung CMS, wie durch den Ereignisrechner 32 berechnet.
-
Bei der Berechnung der Hilfsoperationszählung CMS verwendet der Ereignisrechner 32 die Zeit für jeden Operationstyp (Schneidvorschubzeit TF, Eilgangzeit TR, Haltezeit TW), welche in der Hilfsoperationsdetektionsinformation I enthalten sind. Entsprechend 2 und 3B erkennt bei Empfang der Hilfsoperationsdetektionsinformation I die Bearbeitungsoperationssteuereinheit 28 den gerade ausgeführten Block BE. Dabei wird vorzugsweise eine spezifische Zeit innerhalb des Ausführungsblocke BE erkannt (Ausführungsdetektionszeit t1 des Ausführungsblockes BE).
-
Dann berechnet der Ereignisrechner 32 die Zeit (nachfolgend als Vervollständigungszeit TM bezeichnet) vom Ausführungsblock BE zum Hilfsoperationsblock, in welchen der Hilfsfunktionscode eingeschrieben ist. Die Vervollständigungszeit TM entspricht der Zeit, die erforderlich ist, die Ausführung aller Bearbeitungsoperationsblöcke BP, welche noch nicht ausgeführt wurden, zu vollenden, und zwar zu einer Detektionszeit, zu welcher der Hilfsoperationsblock BM beim Vorabauslesen durch die Programm-Vorausschaueinheit 22 detektiert ist. Dabei berücksichtigt der Ereignisrechner 32 Übersteuerungsinformationen, oder dergleichen, welche durch einen Benutzer der Werkzeugmaschine 12 eingegeben werden. Die Übersteuerungsinformation beinhaltet Verstärkungsfaktoren, mit welchen ein Benutzer willkürlich die axialen Vorschubgeschwindigkeiten oder andere Geschwindigkeiten des Maschinenbetriebs einstellt. Beispielsweise kann ein Benutzer die Übersteuerung in einem Bereich von 0% bis 200% entsprechend den Bearbeitungsanforderungen etc. bezüglich des Werkstückes einstellen.
-
Insbesondere berechnet der Ereignisrechner
32 die Vervollständigungszeit T
M unter Verwendung der nachfolgenden Gleichung (5):
wobei:
- KFO ein Übersteuerungskoeffizient bezüglich des Schneidvorschubs ist;
- KRO ein Übersteuerungskoeffizient bezüglich des Eilgangs ist; und
- KWO ein Übersteuerungskoeffizient bezüglich des Haltevorgangs ist.
-
Wie oben beschrieben, ist es möglich, die Vervollständigungszeit TM genauer zu berechnen durch Multiplikation der Schneidvorschubzeit TF, der Eilgangzeit TR und der Haltezeit TW mit den jeweiligen Übersteuerungskoeffizienten KFO, KRO bzw. KWO.
-
Der Ereignisrechner 32 setzt eine Ausführungsstartzeit t2, zu der die unabhängige Hilfsoperation gestartet wird auf Basis des Hilfsfunktionscodes (M-Code oder B-Code) in der Hilfsoperationsdetektionsinformation I. Dabei greift der Ereignisrechner 32 auf eine Konditionentabelle 40, welche vorab in der Hilfsoperationsprozessspeichereinheit 36 abgespeichert wurde, und selektiert und extrahiert eine Versatzzeit TSET, welche für jeden Hilfsfunktionscode eingestellt ist.
-
Entsprechend 4 enthält die Konditionentabelle 40 mehrere Hilfsfunktionscodes und Versatzzeiten in Verknüpfung miteinander. So kann der Ereignisrechner 32 in einfacher Weise die passende Versatzzeit TSET entsprechend dem Hilfsfunktionscode in der Hilfsoperationsdetektionsinformation I entnehmen. Entsprechend 3C entspricht die Versatzzeit TSET der Abweichung (d.h. dem Versatz) der Ausführungsstartzeit t2 von einer Detektionszeit t0 der unabhängigen Hilfsoperation. Das heißt, der Start der unabhängigen Hilfsoperation wird um die Versatzzeit TSET in Bezug auf den Hilfsoperationsblock vorgeschoben oder verzögert.
-
Von den Hilfsfunktionscodes in der Konditionentabelle 40 nach 4 sind beispielsweise M102 und B102 mit negativen Versatzzeiten TSET eingestellt. Dies bedeutet einen verzögerten Start der unabhängigen Hilfsoperation. Beispielsweise können die Zufuhr von Schneid-Fluid oder der Stopp solcher Zufuhr nach dem Hilfsoperationsblock BM ausgeführt werden und somit kann durch Einstellung eines negativen Wertes die Operation passend nach einer Zeitverzögerung durchgeführt werden.
-
Durch Entnahme einer Versatzzeit T
SET und unter Verwendung der nachfolgenden Gleichung (6) berechnet der Ereignisrechner
32 eine Ausführungsbereitschaftszeit T
MS vom gerade durch die Programm-Ausführungseinheit
24 ausgeführten Ausführungsblock BE bis zum Start der unabhängigen Hilfsoperation, vgl.
3D.
-
Die Ausführungsbereitschaftszeit TMS wird also einfach berechnet durch Subtraktion der Versatzzeit TSET von der Vervollständigungszeit TM. Damit kann die numerische Steuervorrichtung 10 präzise berücksichtigen, wie lange die Vorrichtung 10 nach dem laufenden Ausführungsblock BE (Ausführungsdetektionszeit t1) warten soll bis zum Start der unabhängigen Hilfsoperation.
-
Nach Berechnung der Ausführungsbereitschaftszeit T
MS gemäß Gleichung (6) berechnet der Ereignisrechner
32 die Hilfsoperationszählung C
MS, um eine Rückwärtszählung (countdown) zum tatsächlichen Start der unabhängigen Hilfsoperation durchzuführen. Beispielsweise wird die Hilfsoperationszählung C
MS mit der nachfolgenden Gleichung (7) berechnet. Somit ist die Hilfsoperationszählung C
MS eine Information bezüglich der Ausführungsbereitschaftszeit T
MS.
-
Dabei ist C ein Interpolationszyklus, welcher einer vorgegebenen Zeitspanne entspricht, gemäß welcher der nachfolgend näher beschriebene Ereignisprozessor 34 die Hilfsoperationszählung CMS zählt; und dieser Wert wird entsprechend der Werkzeugmaschine 12 eingestellt, in welcher die numerische Steuerung 10 installiert ist. Der Interpolationszyklus C wird vorab in der Hilfsoperationsprozessspeichereinheit 36 abgespeichert und wird zur Zeit der Berechnung der Hilfsoperationszählung CMS ausgelesen. Auch kann der Interpolationszyklus C so konfiguriert sein, dass die Einrichtung von einer Bedienungsperson willkürlich einstellbar ist.
-
Beispielsweise hat der Interpolationszyklus C eine Zeitlänge, die etwas kürzer ist als die mittlere Zeitspanne, welche erforderlich ist zur Ausführung der Bearbeitungsoperation entsprechend einem Block im Bearbeitungsprogramm 20. Diese Einstellung macht es möglich, die Hilfsoperationszählung CMS passend abzusenken, während die Programm-Ausführungseinheit 24 das Programm für jeden Block ausführt. Auch wenn die Programm-Ausführungseinheit 24 die Bearbeitungsoperationsblöcke BP ausführt, ist es möglich, sofort die unabhängige Hilfsoperation zu starten, sobald die Hilfsoperationszählung den Wert Null erreicht.
-
Nach Berechnung der Hilfsoperationszählung CMS stellt der Ereignisrechner 32 diese Hilfsoperationszählung CMS in das Zählregister der Programm-Ausführungseinheit 24. Sodann wird die Steuerung an den Ereignisprozessor 34 übergeben.
-
Der Ereignisprozessor 34 startet die Zählung für die Hilfsoperationszählung CMS, sobald während der Bearbeitungsoperation die Information bezüglich der Hilfsoperationszählung CMS durch den Ereignisrechner 32 gesetzt ist. Der Ereignisprozessor 34 dekrementiert die gesetzte Hilfsoperationszählung CMS um eins jedes Mal dann, wenn eine bestimmte Zeitspanne verstrichen ist gemäß einem vorgegebenen Ablauf und startet die unabhängige Hilfsoperation, wenn die Hilfsoperationszählung CMS den Wert Null erreicht.
-
Die numerische Steuervorrichtung 10 gemäß diesem Ausführungsbeispiel ist wie oben beschrieben konfiguriert. Nunmehr werden die Funktion und die Wirkung dieser Vorrichtung näher beschrieben.
-
Bei Steuerung der Werkzeugmaschine 12 liest die numerische Steuervorrichtung 10 das Bearbeitungsprogramm 20 über die Programm-Vorausschaueinheit 22 aus und analysiert das Bearbeitungsprogramm 20 (Vorausschauschritt). Entsprechend 5 berechnet die Programm-Vorausschaueinheit 22 auf Basis der obigen Gleichung (1) die Ausführungszeit T für einen in dem Bearbeitungsprogramm 20 eingeschriebenen Block (Schritt S11) und speichert die berechnete Ausführungszeit T. Die Ausführungszeit T wird zusammen mit dem Operationstyp der Bearbeitungsoperation abgespeichert.
-
Sodann ermittelt die Programm-Vorausschaueinheit 22, ob ein Hilfsoperationsblock BM (Hilfsfunktionscode) in der Vorausschau-Analyse detektiert wurde oder nicht (Schritt S12). Ist kein Hilfsoperationsblock BM detektiert, geht die Steuerung zurück zu Schritt S11 zur Wiederholung der Vorausschau-Analyse. Ist ein Hilfsoperationsblock BM detektiert, geht die Steuerung zu Schritt S13.
-
Bei Detektion des Hilfsoperationsblockes BM berechnet die Programm-Vorausschaueinheit 22 die Schneidvorschubzeit TF zum Ausführen des Schneidvorschubs (Schritt S13). Dabei liest die Programm-Vorausschaueinheit 22 die Blöcke entsprechend der Schneidvorschuboperation, wie in der Vorausschau-Analyse-Speichereinheit zusammen mit den Ausführungszeiten T abgespeichert, berechnet die Schneidvorschubzeit TF entsprechend der obigen Gleichung (2) und speichert das berechnete Ergebnis im Speicher der numerischen Steuereinheit 10.
-
Die Programm-Vorausschaueinheit 22 berechnet mit einem entsprechenden Prozess wie für die Schneidvorschubzeit TF die Eilgangzeit TR für die Ausführung des Eilgangs (Schritt S14) und sie berechnet weiterhin die Haltezeit TW für den Haltevorgang (Schritt S15). Es wird also die Gleichung (3) verwendet zur Berechnung der Eilgangzeit TR und die Gleichung (4) wird verwendet für die Berechnung der Haltezeit TW. Es versteht sich, dass die Reihenfolge (Schritte S13 bis S15) für die Zeit der Berechnung der einzelnen Operationstypen nicht eingeschränkt ist.
-
Wie oben erläutert, vervollständig die Programm-Vorausschaueinheit 22 den Prozess, wenn der Hilfsoperationsblock BM detektiert wird. Weiterhin startet die Programm-Vorausschaueinheit 22 den Prozessablauf neu, zur Ausführung der Vorausschau-Analyse nach Ablauf einer bestimmten Zeitspanne (beispielsweise zum Zeitpunkt, zu welchem die Programm-Ausführungseinheit 24 die unabhängige Hilfsoperation startet).
-
Andererseits führt die Programm-Ausführungseinheit 24 eine Bearbeitungsoperation oder eine verknüpfte Hilfsoperation aus entsprechend dem durch die Programm-Vorausschaueinheit 22 analysierten Bearbeitungsprogramm 20. Dabei führt die Bearbeitungsoperationssteuereinheit 28 sequenziell die Bearbeitungsoperationsblöcke BP des Bearbeitungsprogramm 20 ausgehend vom Anfangsblock aus, um so den gesteuerten Antrieb der Bearbeitungsachsenantriebseinheiten 14 und der Spindelachsenantriebseinheit 16 durchzuführen. Sodann versetzt die Programm-Ausführungseinheit 24 die Hilfsoperationssteuerungseinheit 30 in einen Bereitschaftszustand und startet den Prozessablauf (Ausführungsschritte) zum Setzen der Startzeit einer unabhängigen Hilfsoperation, wenn von der Programm-Vorausschaueinheit 22 die Hilfsoperationsdetektionsinformation I empfangen wird.
-
Entsprechend 6 bestimmt die Hilfsoperationssteuerungseinheit 30 zunächst, ob es erforderlich ist, die Ausführungsbereitschaftszeit TMS und die Hilfsoperationszählung CMS zu berechnen (Schritt S21). Im Einzelnen bestimmt die Hilfsoperationssteuerungseinheit 30, ob die erste Hilfsoperationsdetektionsinformation I empfangen wurde oder nicht, oder ob eine Übersteuerung geändert wurde oder nicht. Ist eine Berechnung der Ausführungsbereitschaftszeit TMS und die Hilfsoperationszählung CMS erforderlich, d.h. die Hilfsoperationsdetektionsinformation I ist erstmalig empfangen oder durch die Bedienungsperson wurde eine Übersteuerung (override) geändert, geht die Steuerung zu Schritt S22. Ist es andererseits nicht erforderlich, die Ausführungsbereitschaftszeit TMS oder die Hilfsoperationszählung CMS zu berechnen, geht die Steuerung unter Auslassung der Schritte S22 bis S25 zu Schritt S26.
-
In Schritt S22 berechnet der Ereignisrechner 32 unter Verwendung der Gleichung (5) die Vervollständigungszeit TM von der Ausführung des gerade ausgeführten Blockes BE durch die Programm-Ausführungseinheit 24 bis zum Hilfsoperationsblock BM, welcher in der Hilfsoperationsdetektionsinformation I enthalten ist. Der Ereignisrechner 32 greift auf die Konditionentabelle 40, welche in der Hilfsoperationsprozessspeichereinheit 36 gespeichert ist, um die Versatzzeit TSET der unabhängigen Hilfsoperation entsprechend dem Hilfsfunktionscode zu setzen (Schritt S23).
-
Sodann berechnet der Ereigniszähler 32 die Ausführungsbereitschaftszeit TMS entsprechend Gleichung (6) unter Verwendung der berechneten Vervollständigungszeit TM und der entnommenen Versatzzeit TSET (Schritt S24). Mit dieser Rechnung ist es möglich, eine genaue Zeit von dem momentanen Ausführungsblock BE bis zum Start der unabhängigen Hilfsoperation zu gewinnen.
-
Um den Ereignisprozessor 34 in die Lage zu versetzen, zu zählen, berechnet anschließend der Ereignisrechner 32 die Hilfsoperationszählung CMS gemäß Gleichung (7) unter Verwendung der berechneten Ausführungsbereitschaftszeit TMS und dem Interpolationszyklus C, wie in der Hilfsoperationsprozessspeichereinheit 36 gespeichert (Schritt S25). Die berechnete Hilfsoperationszählung CMS wird in das Zählregister eingestellt.
-
Sodann startet der Ereignisprozessor 34 einen Prozess und prüft, ob die Hilfsoperationszählung CMS von Null verschieden ist oder Null ist (Schritt S26). Ist die Hilfsoperationszählung CMS von Null verschieden, geht das Verfahren zu Schritt S27. Ist die Hilfsoperationszählung CMS Null, geht das Verfahren zu Schritt S30.
-
In Schritt S27 wartet der Ereignisprozessor 34 für eine Zeitspanne entsprechend dem Interpolationszyklus C, bis die Zeitspanne abläuft. Sodann prüft der Ereignisprozessor 34, ob das Bearbeitungsprogramm 20 abläuft oder ausgesetzt ist (Schritt S28). Ist das Bearbeitungsprogramm 20 ausgesetzt, geht die Steuerung zurück zu Schritt S21. Läuft das Bearbeitungsprogramm 20, geht die Steuerung zu Schritt S29.
-
In Schritt S29 führt der Ereignisprozessor 34 eine Zähloperation bezüglich der Hilfsoperationszählung CMS aus. Das heißt, es erfolgt die Dekrementierung gemäß CMS = CMS - 1. Nach Schritt S29 geht die Steuerung zurück zu Schritt S21 zur Fortsetzung des oben beschriebenen Prozessablaufs. Im zweiten und in den nachfolgenden Prozessabläufen geht die Steuerung dann, wenn keine Übersteuerung geändert worden ist, von Schritt S21 zu Schritt S26, um so die Hilfsoperationszählung CMS direkt zu prüfen.
-
Ergibt sich in Schritt S26, dass die Hilfsoperationszählung CMS Null ist, gibt die Hilfsoperationssteuerungseinheit 30 ein Startsignal (Operationsbefehl) bezüglich der unabhängigen Hilfsoperation an die Hilfsantriebseinheit 18 und startet die Steuerung der unabhängigen Hilfsoperation (Schritt S30). Somit setzt die Hilfsoperationssteuerungseinheit 30 die Hilfsantriebseinheit 18 in die Lage, die Hilfsoperation mit optimaler Zeitfolge auszuführen.
-
Wie oben erläutert, kann die numerische Steuervorrichtung 10 dieses Ausführungsbeispiels bei Detektion eines Hilfsoperationsblockes BM im Bearbeitungsprogramm 20 mittels Vorausschau-Analyse die Ausführungsstartzeit t2 des Hilfsoperationsblockes BM um die Versatzzeit TSET entsprechend dem Hilfsfunktionscode verschieben. Dementsprechend kann die Programm-Ausführungseinheit 24 die Steuerung der Hilfsoperation zu einer Zeit starten, die zur Bearbeitungsoperation passt. Die numerische Steuervorrichtung 10 kann also vorteilhaft die Ausführungszeit bezüglich der Hilfsoperation einstellen, um so den Zeitablauf der Steuerung zu verbessern und die Bearbeitungszeit zu kürzen.
-
Weiterhin berechnet die numerische Steuervorrichtung 10 die Vervollständigungszeit TM und subtrahiert die Versatzzeit TSET von der Vervollständigungszeit TM, um so genau die Ausführungsstartzeit t2 der Hilfsoperation zu berechnen. Die Programm-Ausführungseinheit 24 kann durch Rückgriff auf die Konditionentabelle 40 in der Hilfsoperationsprozessspeichereinheit 36 in einfacher Weise die Versatzzeit TSET in Abhängigkeit vom Typ der Hilfsoperation einstellen.
-
Weiterhin berechnet die numerische Steuervorrichtung 10 die Vervollständigungszeit TM genauer durch Berechnung der Ausführungszeit T für jeden Block auf Basis des Bewegungsbetrages und der Bewegungsgeschwindigkeit der Achsenbewegung entsprechend dem Bearbeitungsoperationsblock BP. Sodann berechnet die numerische Steuervorrichtung 10 die Operationszeit für jeden Typ der Bearbeitungsoperation und multipliziert die Operationszeit mit einem entsprechenden Übersteuerungkoeffizienten zum Einstellen der Bearbeitungsgeschwindigkeit, wodurch ermöglicht ist, eine genauere Ausführungszeit für die Bearbeitungsoperation zu gewinnen. Es wird also eine bessere Vorausschau-Zeitfolge gewonnen.
-
Die numerische Steuervorrichtung und das Steuerverfahren für eine solche entsprechend der vorliegenden Erfindung sind nicht auf das obige Ausführungsbeispiel beschränkt und verschiedene Abwandlungen bezüglich der Beispiele sind möglich. Beispielsweise können die Konfigurationen zum Berechnen der Vervollständigungszeit TM, der Einstellung der Versatzzeit TSET, die Berechnung der Ausführungsbereitschaftszeit TMS und die Berechnung der Hilfsoperationszählung CMS (also die Funktionen des Ereignisrechners 32) teilweise oder auch ganz in der Programm-Vorausschaueinheit 22 installiert sein. Auch kann der Ereignisprozessor 34 konfiguriert sein, die unabhängige Hilfsoperation zu starten nicht nur durch Zählung unter Verwendung der Information bezüglich der Hilfsoperationszählung CMS, sondern auch durch Messung der Ausführungsbereitschaftszeit TMS direkt.
-
[Zweites Ausführungsbeispiel]
-
Ein Bearbeitungsprogramm 50 gemäß dem zweiten Ausführungsbeispiel nach 7 unterscheidet sich vom Bearbeitungsprogramm 20 nach dem ersten Ausführungsbeispiel darin, dass beim Einstellen der Versatzzeit TSET anstelle eines Rückgriffs auf die Konditionentabelle 40 die Versatzzeit in einen Block im Bearbeitungsprogramm 50 eingeschrieben ist. Beim zweiten Ausführungsbeispiel sind die Konfigurationen ansonsten die gleichen wie beim ersten Ausführungsbeispiel, so dass insoweit auf eine wiederholte Beschreibung verzichtet werden kann.
-
Im Bearbeitungsprogramm 50 ist die Versatzzeit TSET definiert durch einen Anfangsbuchstaben Q und einen dem Anfangsbuchstaben Q nachfolgenden numerischen Wert in der gleichen Zeile wie der Hilfsfunktionscode (M-Code oder B-Code) der unabhängigen Hilfsoperation. Beim dargestellten Beispiel ist die Ausführungsstartzeit t2 der Hilfsoperation 3 Sekunden vor dem Hilfsoperationsblock BM.
-
Durch Einschreibung der Versatzzeit TSET bezüglich der Hilfsoperation in den Hilfsoperationsblock BM im Bearbeitungsprogramm 50 wird der gleiche Effekt wie bei der numerischen Steuervorrichtung 10 nach dem ersten Ausführungsbeispiel erreicht. Durch Verwendung der Versatzzeit TSET, die mit dem Hilfsfunktionscode eingeschrieben ist, braucht die numerische Steuervorrichtung 10 nicht mehr die Konditionentabelle 40 aufbauen und eine Bedienungsperson kann den Ausführungsstartzeitpunkt t2 der Hilfsoperation beim Schreiben des Bearbeitungsprogrammes 50 wahlweise einstellen.
-
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
-