Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR OPERATING A NUMERICALLY CONTROLLED PRODUCTION SYSTEM, AND PRODUCTION SYSTEM FOR SAME
Document Type and Number:
WIPO Patent Application WO/2019/086226
Kind Code:
A1
Abstract:
The invention relates to a numerically controlled production system, in particular a machine tool (2), which is connected to a numerical controller (4). A control program with successive program sets is provided in the numerical controller (4), and the numerical controller (4) comprises a look-ahead module (24) which determines a movement profile (50) for at least one movement axis (16) from multiple successive control program sets (31) prior to a movement, said movement profile comprising guidance variables for a travel/time movement for the at least one movement axis (16) for successive clock time points. The control program comprises at least one program branching (32, 40) which is controlled by a condition and which comprises multiple successive alternative control program sections (34, 36, 38), said program branching determining which of the alternative control program sections (34, 36, 38) is additionally ran depending on the condition. The look-ahead module (24) calculates an alternative movement profile (52, 54, 56) for each alternative control program section (34, 36, 38) prior to an additional movement, stores same, and holds same ready for the required program branching (32, 40) in order to carry out the additional movement.

Inventors:
PITZ, Thomas (Schellingstr. 20, Rutesheim, 71277, DE)
SPIELMANN, Ralf (Robert-Leicht-Str. 157A, Stuttgart, 70569, DE)
Application Number:
EP2018/077738
Publication Date:
May 09, 2019
Filing Date:
October 11, 2018
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SIEMENS AKTIENGESELLSCHAFT (Werner-von-Siemens-Straße 1, München, 80333, DE)
International Classes:
G05B19/408; B23Q15/10
Foreign References:
DE102015105436A12016-10-13
US20060229761A12006-10-12
US20170075341A12017-03-16
US20040138776A12004-07-15
Other References:
None
Download PDF:
Claims:
Patentansprüche

1. Verfahren zum Betrieb einer numerisch gesteuerten Produktionsanlage, insbesondere einer Werkzeugmaschine (2), die mit einer numerischen Steuerung (4) verbunden ist,

wobei in der numerischen Steuerung (4) ein Steuerprogramm mit aufeinander folgenden Steuerprogrammsätzen vorhanden ist,

wobei die numerische Steuerung (4) ein Look-Ahead-Modul (24) umfasst,

wobei das Look-Ahead-Modul (24) aus mehreren aufeinan¬ derfolgenden Steuerprogrammsätzen (31) vor einer Bewegung selbst für mindestens eine Bewegungsachse (16) ein Bewegungs¬ profil (50) bestimmt, das für aufeinanderfolgende Taktzeit- punkte Führungsgrößen zur Weg-Zeit-Bewegung für die mindestens eine Bewegungsachse (16) umfasst, und

wobei das Steuerprogramm mindestens eine von einer Be¬ dingung gesteuerte Programmverzweigung (32, 40) mit mehreren nachfolgenden alternativen Steuerprogrammabschnitten (34, 36, 38) umfasst, die festlegt, welcher der alternativen Steuerprogrammabschnitte (34, 36, 38) in Abhängigkeit der Bedingung weiter ausgeführt wird,

d a d u r c h g e k e n n z e i c h n e t ,

dass das Look-Ahead-Modul (24) für jeden alternativen Steuer- Programmabschnitt (34, 36, 38) vor einer weiteren Bewegung ein alternatives Bewegungsprofil (52, 54, 56) berechnet und speichert und an der bedingten Programmverzweigung (32, 40) zur Durchführung der weiteren Bewegung bereit hält. 2. Verfahren nach Anspruch 1,

d a d u r c h g e k e n n z e i c h n e t ,

dass mindestens einer der alternativen Steuerprogrammab¬ schnitte (34) eine weitere bedingte Programmverzweigung (40) umfasst und dass das Look-Ahead-Modul (24) für den einen al- ternativen Teileprogrammabschnitt (34) das alternative Bewe¬ gungsprofil (52) bis zu der weiteren bedingten Programmverzweigung (40) im Voraus berechnet und speichert und an der bedingten Verzweigung (40) zur Durchführung der weiteren Bewegung bereit hält.

3. Verfahren nach Anspruch 1 oder 2,

d a d u r c h g e k e n n z e i c h n e t ,

dass eine maximale Anzahl der Steuerprogrammsätze vorgebbar ist, die von dem Look-Ahead-Modul (24) zur Bestimmung des Be¬ wegungsprofils (50, 52, 54, 56, 58) berücksichtigt wird. 4. Verfahren nach einem der vorstehenden Ansprüche,

d a d u r c h g e k e n n z e i c h n e t ,

dass die Bedingung von Werten (VAR1, VAR2) einer Variablen (VAR) gesteuert ist. 5. Verfahren nach Anspruch 4,

d a d u r c h g e k e n n z e i c h n e t ,

dass die Variable (VAR) ein Qualitätsmaß eines Arbeitsgeräts in der Produktionsanlage (2) berücksichtigt. 6. Verfahren nach Anspruch 4,

d a d u r c h g e k e n n z e i c h n e t ,

dass die Variable (VAR) einen Zustand in der Produktionsanla¬ ge (2) berücksichtigt.

7. Produktionsanlage, insbesondere Werkzeugmaschine, mit ei- ner numerischen Steuerung (4), die zur Durchführung des Ver- fahrens nach einem der Ansprüche 1 bis 6 ausgebildet ist.

Description:
Beschreibung

Verfahren zum Betrieb einer numerisch gesteuerten Produkti- onsanlage sowie Produktionsanlage dazu

Die Erfindung betrifft ein Verfahren zum Betrieb einer numerisch gesteuerten Produktionsanlage, insbesondere einer Werk ¬ zeugmaschine, die mit einer numerischen Steuerung verbunden ist,

- wobei in der numerischen Steuerung ein Steuerprogramm mit aufeinanderfolgenden Steuerprogrammsätzen vorhanden ist,

- wobei die numerische Steuerung ein Look-Ahead-Modul um ¬ fasst,

- wobei das Look-Ahead-Modul aus mehreren aufeinanderfolgen ¬ den Steuerprogrammsätzen vor einer Bewegung selbst für mindestens eine Bewegungsachse ein Bewegungsprofil bestimmt, das für aufeinanderfolgende TaktZeitpunkte Führungsgrößen zur Weg-Zeit-Bewegung für die mindestens eine Bewegungsach- se umfasst, und

- wobei das Steuerprogramm mindestens eine von einer Bedingung gesteuerte Programmverzweigung mit mehreren nachfolgenden alternativen Steuerprogrammabschnitten umfasst, die festlegt, welcher der alternativen Steuerprogrammabschnitte in Abhängigkeit der Bedingung weiter ausgeführt wird.

Die Erfindung betrifft weiterhin eine Produktionsanlage mit einer numerischen Steuerung. Zur Bewegungsdefinition von numerisch gesteuerten Produktionsanlagen, z.B. von Zigarettenabfüll-Anlagen oder von Anlagen, die einzelne, filigrane Produkte bewegen, insbesondere aber auch von Werkzeugmaschinen, gibt es Programmiersprachen, die den Umfang der Steuerungsmöglichkeiten definieren, siehe DIN (ISO) 66025 für CNC-Steuerungen . Ein in einer derartigen Programmiersprache erstelltes Steuerprogramm umfasst aufei ¬ nanderfolgende Programmsätze, die eine Bewegung zu einem Zielpunkt inklusive entsprechender Randbedingungen repräsentieren sowie auch Programmsätze ohne Bewegungsdefinition, wie beispielsweise Vorschubvorgaben, Angaben zu den verwendeten Koordinatensystemen, Angaben zur Bemaßungsart usw. Der entsprechende Quelltext für die Sätze, auch G-Code genannt, ist für alle Steuerungshersteller verbindlich, er kann jedoch durch herstellerspezifische Zyklen oder Funktionen ergänzt bzw. erweitert werden.

Diese Programmiersprachen und auch deren steuerungsspezifischen Erweiterungen bieten heute auch die Möglichkeit, Kon- trollanweisungen in Form von bedingten Programmverzweigungen wie beispielsweise "switch/case" , "if/then" etc. zu program ¬ mieren, die nur unter einer bestimmten Bedingung ausgeführt wird. Die Verzweigung legt fest, welcher von zwei oder mehr nachfolgenden alternativen Steuerprogrammabschnitten abhängig von einer oder mehreren Bedingungen ausgeführt wird.

Steuerungen von Produktionsanlagen, insbesondere auch von Werkzeugmaschinen, werden typischerweise als Echtzeitsteue- rungen ausgeführt, um auf relevante Parameteränderungen schnell reagieren zu können. Beispiele für relevante Parame ¬ teränderungen im Zusammenhang mit Werkzeugmaschinen sind der Abnutzungsgrad des Werkzeugs, eine festgestellte Qualität des Werkstückes vor der Bearbeitung, Adaptionen der Werkzeugmaschine an die Umgebung, z.B. an die Temperatur, Kompensation des Durchhangs von mechanischen Komponenten der Werkzeugmaschine Mechanik, fehlende Bohrungen etc.

Eine typische Realisierung der Echtzeitsteuerung ist, dass in der Steuerung eine Art Zukunft berechnet wird. Dafür ist auch der Begriff Look-Ahead gebräuchlich. Dabei werden im Voraus oder vorbereitend (englisch: "preparation" ) vor der eigentlichen Aktion, beispielsweise einer Achsbewegung zur Werkstückbearbeitung, alle für diese Aktion notwendigen Informationen vollständig bestimmt. Sie stehen dann zur Echtzeit oder zur Bearbeitungszeit unmittelbar und direkt zur Verfügung. Es wird beispielsweise in einer Werkzeugmaschine über eine An ¬ zahl von Anweisungen des Teileprogramms ermittelt, wohin eine von der Werkzeugmaschine auszuführende Bewegung gehen soll und mit welcher Dynamik diese Bewegung ausgeführt werden kann. Wie weit eine Steuerung in die Zukunft rechnet, hängt von der Steuerung selbst ab, beispielsweise von der Größe des dafür vorgesehenen Speichers, der zur Verfügung stehenden Performance und letztlich, ob Zwangssynchronisierungen zwischen Echtzeit und Zukunft notwendig sind.

Eine Zwangssynchronisierung ist dann erforderlich, wenn weitere Aktionen von einem aktuellen Zustand oder mehreren aktu- eilen Zuständen der Produktionsanlage oder des zu produzie ¬ renden Erzeugnisses abhängig sind.

Während in der Nicht-Echtzeit-Software-Technik bedingte Pro ¬ grammverzweigungen im Programmablauf bzw. der Programmabar- beitung kein Problem darstellen, erzeugen bedingte Programmverzweigungen in Echtzeit das Problem, dass abhängig von der Bedingung einer Programmverzweigung mehrere, jedoch mindestens zwei mögliche Varianten von zukünftigen Aktionen möglich sind .

Bei den heutigen Steuerungen mit Echtzeiteinfluss wird die Zukunft nur bis zum Entscheidungszeitpunkt der nächsten fol ¬ genden Bedingung einer bedingten Programmverzweigung berechnet. Zum Zeitpunkt des Eintritts der Bedingung und damit nach der Festlegung des weiteren Steuerprogrammzweiges wird eine

Zwangssynchronisierung zwischen Echtzeit und Zukunft durchgeführt. Diese Zwangssynchronisation hat den Nachteil, dass die Zukunft eines von mehreren alternativ möglichen Zweigen oder Programmabschnitten erst dann berechnet wird, wenn aufgrund der Entscheidung feststeht, welcher Zweig oder welcher Programmabschnitt zur weiteren Bearbeitung oder für weitere Aktionen ausgeführt wird. Die Berechnung der Zukunft des zur Bearbeitung bestimmten Programmabschnitts hat eine Verzöge ¬ rung der Abarbeitung zur Folge hat. Insbesondere, wenn mehre- re Programmverzweigungen im Programm zur Bearbeitung vorgesehen sind, verlängert sich bei jeder Programmverzweigung die Programmabarbeitungszeit, was sich am Ende zu einer oftmals nicht unerheblichen Verzögerung aufsummiert. Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zum zeitoptimalen Betrieb der eingangs genannten numerisch gesteuerten Produktionsanlage anzugeben, auch wenn das Steuer- programm zum Betrieb der Produktionsanlage mindestens eine bedingte Programmverzweigung umfasst.

Der Erfindung liegt weiterhin die Aufgabe zugrunde, eine Pro ¬ duktionsanlage mit einer numerischen Steuerung anzugeben, die zur Durchführung des Betriebsverfahrens ausgebildet ist.

Die erstgenannte Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Danach ist das eingangs ge ¬ nannte Verfahren zum Betrieb einer numerisch gesteuerten Pro- duktionsanlage dadurch gekennzeichnet, dass das Look-Ahead- Modul für jeden alternativen Steuerprogrammabschnitt vor ei ¬ ner weiteren Bewegung ein alternatives Bewegungsprofil be ¬ rechnet und speichert und an der bedingten Programmverzwei ¬ gung zur Durchführung der weiteren Bewegung bereit hält.

Die Erfindung besteht also im „parallelen" Vorausberechnen aller möglichen Bewegungsprofile in der „näheren Zukunft" des Programmablaufs. Mit anderen Worten handelt es sich um die Einführung einer „Multi-Programmablauf-Technik" , einer Art parallel stattfindendes Berechnen von möglichen Bewegungspro ¬ filen nach einer bedingten Programmverzweigung. Diese Bewegungsprofile werden am Zeitpunkt der Abfrage oder des Ein ¬ tritts der Bedingung zur Durchführung der weiteren Bewegung bereitgestellt. Abhängig von der Bedingung wird letztlich je- doch nur das zu der Bedingung passende Bewegungsprofil für weitere Aktionen der Produktionsanlage aktiviert. Die übrigen Bewegungsprofile werden verworfen.

Durch die Vorabberechnung der Bewegungsprofile von allen mög- liehen Programmzweigen bzw. aus allen möglichen alternativen Steuerprogrammabschnitten nach einer bedingten Programmverzweigung ist keine Zwangssynchronisierung im Programmablauf erforderlich. Die durch Zwangssynchronisierung bedingte Ver- zögerung in der weiteren Abarbeitung des Steuerprogramms entfällt somit.

Vorteilhafte Ausgestaltungen des Verfahrens sind durch die Merkmale der Ansprüche 2 bis 6 gegeben.

Gemäß Anspruch 2 umfasst mindestens einer der alternativen Steuerprogrammabschnitte eine weitere bedingte Programmver ¬ zweigung, berechnet und speichert das Look-Ahead-Modul für den einen alternativen Teileprogrammabschnitt das alternative Bewegungsprofil bis zu der weiteren bedingten Programmverzweigung im Voraus und hält das alternative Bewegungsprofil an der bedingten Verzweigung zur Durchführung der weiteren Bewegung bereit.

Da sich bei mehreren bedingten Programmverzweigungen im Steuerprogramm die möglichen Bewegungsprofile in der Zukunft sehr stark vervielfachen, wird gemäß der Ausgestaltung der Erfindung nach Anspruch 2 das Bewegungsprofil nur bis zur nächsten bedingten Programmverzweigung in dem entsprechenden Steuerprogrammabschnitt berechnet. Sobald genau dieser Steuerpro ¬ grammabschnitt aufgrund der aktuellen Bedingung tatsächlich abgearbeitet wird, werden aus den der weiteren bedingten Verzweigung folgenden alternativen Steuerprogrammabschnitte die Bewegungsprofile bestimmt, gespeichert und bereit gestellt.

Gemäß Anspruch 3 ist eine maximale Anzahl der Steuerprogrammsätze vorgebbar, die von dem Look-Ahead-Modul zur Bestimmung des Bewegungsprofils berücksichtigt werden. Im Allgemeinen ist es nicht notwendig, das gesamte Bewegungsprofil im Voraus zu bestimmen. Die Steuerung hat genügend freie Rechenkapazität, um das Bewegungsprofil während der Abarbeitung des Steu ¬ erprogramms abschnittsweise weiter in der Zukunft zu bestim ¬ men .

Die Bedingung wird oftmals von Werten einer Variablen gesteuert. Gemäß Anspruch 5 berücksichtigt die Variable ein Quali ¬ tätsmaß eines Arbeitsgeräts in der Produktionsanlage. Insbe- sondere wenn das Arbeitsgerät durch seine Benutzung ver ¬ schleißt, wird der Abnutzungsgrad regelmäßig erfasst. Ist die Verschleißgrenze erreicht, erfolgt programmgesteuert ein Aus ¬ tausch. Dies trifft beispielsweise für Fräs- oder Bohrwerk- zeuge in einer Werkzeugmaschine zu.

Gemäß Anspruch 6 berücksichtigt die Variable einen Zustand in der Produktionsanlage. Ein Beispiel dafür ist die Überwachung der Temperatur eines Motors.

Die zweitgenannte Aufgabe wird durch die Merkmale des An ¬ spruchs 7 gelöst. Danach ist eine Produktionsanlage mit einer numerischen Steuerung ausgerüstet, die zur Durchführung des oben angegebenen Verfahrens ausgebildet ist.

Die vorstehend beschriebenen Eigenschaften, Merkmale und Vorteile dieser Erfindung sowie die Art und Weise, wie diese er ¬ reicht werden, werden klarer und deutlicher verständlich im Zusammenhang mit der folgenden Beschreibung der Ausführungs- beispiele, die in Verbindung mit den Zeichnungen näher erläutert werden. Hierbei zeigen in schematischer Darstellung:

FIG 1 in einem Blockbild den grundsätzlichen Aufbau einer

Werkzeugmaschine mit einer Werkzeugmaschinensteue- rung,

FIG 2 einen Ausschnitt eines Programmablaufplans eines

Steuerprogramms mit bedingten Programmverzweigungen,

FIG 3 einen Ausschnitt eines Steuerprogramms mit einer bedingten Programmverzweigung und mit nachfolgenden alternativen Steuerprogrammabschnitten und

FIG 4 mehrere von dem Look-Ahead-Modul parallel berechne ¬ te alternative Bewegungsprofile nach einer beding ¬ ten Programmverzweigung.

Beispielhaft für eine Produktionsmaschine zeigt das Blockbild in FIG 1 eine Werkzeugmaschine 2, die mit einer numerischen Werkzeugmaschinensteuerung 4 zur Bearbeitung eines Werkstücks 5 von einem Rohteil 5A zu einem Fertigteil 5B zusammenwirkt. Der Zugang eines Anwenders oder Bedieners zu der Werkzeugma ¬ schinensteuerung 4 erfolgt über eine Ein-/Ausgabeeinheit 6, die auch als NC-Bedientafel oder Mensch-Maschine-Schnitt- stelle bezeichnet wird. Weiterhin ist eine Kommunikations ¬ schnittstelle 8 vorgesehen, die eine Einbettung der numerisch gesteuerten Werkzeugmaschine 2 in ein Computernetzwerk ermöglicht; diese Betriebsart wird im Englischen als Distributed Numerical Control (DNC) bezeichnet.

Die Werkzeugmaschinensteuerung 4 ist in drei Hauptfunktionsbereiche bzw. Hauptfunktionalitäten unterteilt.

Ein erster Hauptfunktionsbereich, der sogenannte COM-Teil 10, erfüllt Kommunikationsaufgaben mit einer angeschlossenen Peripherie, wie zum Beispiel Eingangs- und Ausgangsbaugruppen, Sensoren, Endschaltern und dergleichen mehr. Des Weiteren dient der COM-Teil 10 der Kommunikation mit einer Ein-/Aus- gabeeinheit 6. Er stellt zudem eine Programmierungsumgebung zur Verfügung, welche mindestens einen Programmeditor, oft aber auch Simulations- und Testeinrichtungen umfasst.

Die zweite Hauptfunktionalität der Werkzeugmaschinensteuerung 4, eine Wegesteuerung und Interpolation und damit die Erzeu- gung von Bewegungssollwerten für die Werkzeugmaschine 2, ist in einem NC-Kern 12 realisiert.

Schließlich dient die dritte Hauptfunktionalität der Werk ¬ zeugmaschinensteuerung 4 einer Anpasssteuerung 14, die der Anpassung der allgemeinen, auf das Werkstück 5 bezogenen Bewegungssteuerung aus dem NC-Kern 12 an die konkrete Werkzeugmaschine 2 dient. Die Anpasssteuerung 14umfasst das Ansteuern von Aktoren, das Erfassen von Sensorsignalen, das Realisieren von Überwachungsfunktionen, das Gewährleisten von Sicher- heitsfunktionen usw. Die Anpasssteuerung 14 wird mittels einer PLC (programmable logic Controller) , also mit einer spei ¬ cherprogrammierbaren Steuerung (SPS) ausgeführt. Die Werkzeugmaschine 2 verwirklicht bei der Bearbeitung des Werkstücks 5 mit zugehörigen Maschinenbauelementen Bewegungen im Raum. Die Bewegungsrichtung der Maschinenbauelemente ist über Werkzeugmaschinenachsen oder Bewegungsachsen 16 defi- niert. Die daten- oder signaltechnische Verbindung der Werkzeugmaschinensteuerung 4 mit der Werkzeugmaschine 2 erfolgt bezüglich der Bewegungssollwerte für die Bewegungsachsen 16 über erste Steuerleitungen 18 und bezüglich von Aktoren und Sensoren 20 in der Werkzeugmaschine 2 über binäre Ein-/Aus- gänge über zweite Steuerleitungen 22.

Der NC-Kern 12 umfasst weiterhin ein Look-Ahead-Modul 24. Das Look-Ahead-Modul 24 realisiert eine vorausschauende Geschwin ¬ digkeitsführung für die Bewegungsachsen 16. Mit der Look- Ahead-Funktionalität wird der Bahnsteuerbetrieb in der Werk ¬ zeugmaschine 2 optimiert. Um an Werkstücken hohe Oberflächengüten zu erzielen, ist eine gleichmäßige Bearbeitung notwendig. Deshalb sollte es während der Bearbeitung möglichst nicht zu Schwankungen der Bahngeschwindigkeit kommen. Ohne Look-Ahead-Funktionalität betrachtet die Werkzeugmaschinen ¬ steuerung 4 zur Ermittlung der möglichen Bahngeschwindigkeit nur den unmittelbar auf den aktuellen Verfahrsatz oder Steuerprogrammsatz folgenden Verfahrsatz. Beinhaltet der folgende Verfahrsatz nur einen kurzen Verfahrweg, muss die Werkzeugma- schinensteuerung 4 die Bahngeschwindigkeit vermindern (Bremsen im aktuellen Verfahrsatz), um eventuell rechtzeitig am Satzende des Folgesatzes anhalten zu können. Durch „Voraus ¬ schauen" über eine parametrierbare oder einstellbare Anzahl von Verfahrsätzen, die dem aktuellen Verfahrsatz folgen, kann mit der Look-Ahead-Funktionalität eine unter Umständen we ¬ sentlich höhere Bahngeschwindigkeit erzielt werden, da der Werkzeugmaschinensteuerung 4 jetzt wesentlich mehr Verfahrsätze zur Berechnung zur Verfügung stehen. Dadurch ergeben sich als Vorteile eine Bearbeitung mit durchschnittlich höhe- rer Bahngeschwindigkeit sowie eine Verbesserung der Oberflä ¬ chengüte durch Vermeidung von Brems- und Beschleunigungsvorgängen . Diese vorstehend beispielhaft für eine Werkzeugmaschinensteu ¬ erung 4 beschriebene vorausschauende Geschwindigkeitsführung wird auch zur Steuerung anderer Produktionsanlagen mit hoher Bewegungsdynamik vorteilhaft eingesetzt. So ist die Look- Ahead-Funktionalität beispielsweise auch in der Robotik weit verbreitet eingesetzt.

Bei der Bearbeitung des Werkstücks 5 von dem Rohteil 5A zum Fertigteil 5B muss oft der aktuelle Zustand des bearbeiteten Werkstücks 5 oder ein Betriebszustand der Werkzeugmaschine 2 berücksichtigt werden. Die Berücksichtigung erfolgt derart, dass das Steuerprogramm für die weitere Bearbeitung relevante Zustände des Werkstücks 5 oder der Werkzeugmaschine 2 ab ¬ fragt. Das Ergebnis dieser Abfrage steuert die weitere Werk- Stückbearbeitung. Programmtechnisch enthält das Steuerprogramm somit bedingte Programmverzweigungen mit mehreren, nachfolgend möglichen Bearbeitungsschritten.

FIG 2 zeigt nun als Programmablaufplan einen Ausschnitt eines Steuerprogramms 30. Das Steuerprogramm 30 umfasst bis zu ei ¬ ner bedingten Programmverzweigung 32 aufeinanderfolgende Steuerprogrammsätze 31. In der bedingten Programmverzweigung 32 wird der Wert einer Variablen VAR abgefragt. Der Wert der Variablen VAR steht für einen bestimmten Werkstück- oder Werkzeugmaschinenzustand .

Hat die Variable VAR den Wert VAR1, dann wird im weiteren Verlauf ein erster alternativer Steuerprogrammabschnitt 34 abgearbeitet. Ist der Wert der Variablen VAR ungleich VAR1, dann wird abgefragt, ob die Variable VAR den Wert VAR2 auf ¬ weist. Besitzt die Variable VAR den Wert VAR2, dann wird im weiteren Verlauf der zweite alternative Steuerprogrammab ¬ schnitt 36 abgearbeitet. Falls der Wert der Variable VAR auch ungleich VAR2 ist, dann wird der dritte alternative Steuer- Programmabschnitt 38 abgearbeitet. Die entsprechende Vorge ¬ hensweise kann selbstverständlich auch auf mehr als drei mögliche Werte der Variablen VAR erweitert werden. Der erste alternative Steuerprogrammabschnitt 34 umfasst ne ¬ ben aufeinanderfolgenden Steuerprogrammsätzen 34A und 34B eine weitere bedingte Programmverzweigung 40, die weitere al ¬ ternative Steuerprogrammabschnitte 42 und 44 enthält. Ebenso wie bei der bedingten Programmverzweigung 32 steuert auch bei der weiteren bedingten Programmverzweigung 40 der Wert einer (anderen) Variablen den weiteren Programmablauf.

Alle aufeinanderfolgenden Programmsätze in den alternativen Steuerprogrammabschnitten 34, 36 und 38 werden in dem Look-

Ahead-Modul 24 bis zu einer vorgegebenen maximalen Anzahl von Steuerprogrammsätzen bei der Berechnung der Führungsgrößen einer oder mehrerer Bewegungsachsen 16 berücksichtigt. Lediglich im ersten alternativen Steuerprogrammabschnitt 34 werden nur die aufeinander folgenden Programmsätze 34A bis zur weiteren bedingten Programmverzweigung 40 im Look-Ahead-Modul 24 zur Berechnung und Bereitstellung der Führungsgrößen der Bewegungsachsen 16 ausgewertet. Wird aufgrund des Wertes VAR1 der Variable VAR das Werkstück 5 entsprechend den Steuerpro- grammsätzen im alternativen Steuerprogrammabschnitt 34 weiter bearbeitet, werden wiederum im Look-Ahead-Modul 24 auch die Bewegungsprofile entsprechend der weiteren alternativen Steu ¬ erprogrammabschnitte 42 und 44 berechnet, gespeichert und an der weiteren bedingten Programmverzweigung 40 zur weiteren Bearbeitung zur Verfügung gestellt.

FIG 3 zeigt beispielhaft eine in einem Programmsatz mögliche Syntax einer bedingten Verzweigung, die als dort als CASE- Funktion bezeichnet wird. Sie bietet die Möglichkeit, den ak- tuellen Wert (Typ: INT) einer Variablen oder einer Rechenfunktion, dort mit <Ausdruck> bezeichnet, zu überprüfen und abhängig vom Ergebnis, das als <Konstante_l>, <Konstante_2> usw. bezeichnet ist, an unterschiedliche Stellen, dort als <Sprungziel_l>, <Sprungziel_2>, ... <Sprungziel_n> bezeich- net, im Steuerprogramm zu springen.

Im Einzelnen hat die bedingte Programmverzweigung (CASE ... OF ... DEFAULT) in FIG 3 die folgende Bedeutung: CASE: leitet die Sprunganweisung ein.

<Ausdruck> : steht für die Variable oder Rechenfunktion, OF: erster angegebener Wert für die Variable oder Rechenfunktion.

<Konstante_l> : erster angegebener Wert für die Variable oder Rechenfunktion.

<Konstante 2>: zweiter angegebener konstanter Wert für die

Variable oder Rechenfunktion.

DEFAULT : Für die Fälle, in denen die Variable oder

Rechenfunktion keinen der angegebenen konstanten Werte annimmt, kann mit der

DEFAULT-Anweisung ein Sprungziel bestimmt werden. Falls die DEFAULT-Anweisung nicht programmiert ist, wird in diesen Fällen der auf die CASE-Anweisung folgende Satz zum Sprungz iel .

GOTOF: Sprunganweisung mit Sprungziel in Richtung

Programmende .

<Sprungziel 1>: Auf dieses Sprungziel wird verzweigt, wenn der Wert der Variablen oder Rechenfunktion der ersten angegebenen Konstanten entspricht .

<Sprungziel 2>: Auf dieses Sprungziel wird verzweigt, wenn der Wert der Variablen oder Rechenfunktion der zweiten angegebenen Konstanten entspricht .

<Sprungziel n>: Auf dieses Sprungziel wird verzweigt, wenn der Wert der Variablen oder Rechenfunktion keinen der angegebenen konstanten Werte annimmt .

Eine praktische Anwendung einer bedingten Verzweigung im sammenhang mit einer Massenfertigung soll nachfolgend beschrieben werden.

Um ein Loch in einem Werkstück mit einem Gewinde zu versehen, muss dieses vorbearbeitet/vorgebohrt werden. Mit einem be- stimmten Bohrer wird ein sogenanntes Kernloch gebohrt. Danach wird mit einem Gewindebohrer ein Gewinde in das Kernloch geschnitten/gebohrt. Der Gewindebohrer würde zerstört, wenn das Kernloch nicht vorhanden ist oder nur unzureichend erstellt wurde .

Beim Einfahren des Gewindebohrers in das erwartete Kernloch wird in Echtzeit der Vorschubstrom der beteiligten Bewegungsachsen 16, beispielsweise die Z-Achse an einer Bohrmaschine, überprüft. Wenn dieser zu hoch ist, bedeutet das, dass Kern ¬ loch nicht vorhanden oder nur unzureichend gebohrt ist. Der Gewindebohrer würde in diesem Fall zerstört werden.

An der Stelle des Steuerprogramms 30, an der gemessen und entschieden wird, ist es notwendig, eine bedingte Programm ¬ verzweigung für die folgenden Zustände zu programmieren:

Zustand A: Der Strom ist in einem normalen Bereich, er ist nicht hoch. Das ist ein Indiz dafür, dass das Kernloch vor- handen ist. Die Bearbeitung des Werkstücks läuft normal wei ¬ ter .

Zustand B: Der Strom ist hoch. Das ist ein Indiz, dass das Kernloch fehlt. Die Bearbeitung des Werkstücks läuft in einen Fehlerzweig.

Im Fehlerzweig sind wiederum zwei Zustände denkbar, die das Bearbeitungswerkzeug betreffen. Zustand C: Die Länge des Kernlochbohrers liegt noch im zuläs ¬ sigen Verschleißbereich. Zur weiteren Bearbeitung wird das Werkstück zum Nacharbeiten geparkt.

Zustand D: Die Verschleißgrenze des Kernlochbohrers ist er- reicht oder überschritten. Das damit bearbeitete Werkstück wird ausgesondert. FIG 4 veranschaulicht mehrere Bewegungsprofile, die mit Hilfe des Look-Ahead-Moduls 24 vor der Bewegung selbst aus aufei ¬ nanderfolgenden Programmsätzen alternativer Programmabschnitte berechnet und gespeichert wurden. Dabei wird Bezug auf das Ablaufdiagramm in FIG 2 genommen.

Wie schon eingangs angegeben ist, umfasst das Bewegungsprofil für aufeinanderfolgende TaktZeitpunkte Führungsgrößen zur Weg-Zeit-Bewegung einer oder auch mehrerer Bewegungsachsen 16 der Werkzeugmaschine 2.

Ein erstes Bewegungsprofil 50 wird mit dem Look-Ahead-Modul 24 aus den aufeinanderfolgenden Steuerprogrammsätzen 31 berechnet, die vor der bedingten Programmverzweigung 32 abzuar- beiten sind. Vor dem Erreichen der bedingten Programmverzweigung 32, also vor der dort durchzuführenden Abfrage der Werkzeug- und/oder Werkzeugmaschinenzustände, sind von dem Look- Ahead-Modul 24 ebenfalls schon von den alternativen Steuerprogrammabschnitten 34, 36 und 38 alternative Bewegungsprofi- le 52 bzw. 54 bzw. 56 berechnet worden. Für das Bewegungspro ¬ fil 52 sind, wie schon vorstehend beschrieben ist, allerdings nur die aufeinanderfolgenden Steuerprogrammsätze 34A des Steuerprogrammabschnitts 34 berücksichtigt. Das für die zukünftige Bearbeitung des Werkstücks benötigte Bewegungsprofil 50 ist zusammen mit den zukünftig möglicher ¬ weise zu verwendenden Bewegungsprofilen 52, 54, 56 in einem Programmspeicher (hier nicht dargestellt) des Look-Ahead- Moduls 24 abgelegt. Falls die maximale Anzahl der vom Look- Ahead-Modul 24 auszuwertenden Steuerprogrammsätze noch nicht erreicht sind, wird ebenfalls aus den nach den alternativen Steuerprogrammabschnitten 34, 36, 38 abzuarbeitenden Steuerprogrammsätzen noch ein Bewegungsprofil 58 berechnet und in dem Programmspeicher abgelegt. Die Bewegungsprofile 50, 52, 54, 56 und ggf. 58 stehen somit zur Steuerung der Werkzeugma ¬ schine 2 zur Verfügung. Die Bearbeitung des Werkstücks 5 kann dadurch an der bedingten Programmverzweigung 32 ohne Verzögerung fortgesetzt werden. Ist beispielsweise durch den Wert der Variablen VAR ungleich VAR1 oder ungleich VAR2 zur Bearbeitung der dritte alternative Steuerprogrammabschnitt 38 vorgegeben, dann wird nach dem Bewegungsprofil 50 ohne Warte ¬ zeit das Bewegungsprofil 56 abgearbeitet. Die Bewegungsprofi- le 52 und 54 werden in diesem Fall verworfen, also aus dem

Programmspeicher gelöscht. Nach dem Bewegungsprofil 56 werden die weiteren Führungsgrößen der Bewegungsachsen 16 dann vom Bewegungsprofil 58 vorgegeben. Zusammengefasst betrifft die vorliegende Erfindung somit fol ¬ genden Sachverhalt:

Eine numerisch gesteuerte Produktionsanlage, insbesondere ei ¬ ne Werkzeugmaschine 2, ist mit einer numerischen Steuerung 4 verbunden. In der numerischen Steuerung 4 ist ein Steuerprogramm mit aufeinander folgenden Programmsätzen vorhanden. Die numerische Steuerung 4 umfasst ein Look-Ahead-Modul 24, das aus mehreren aufeinanderfolgenden Steuerprogrammsätzen 31 vor einer Bewegung selbst für mindestens eine Bewegungsachse 16 ein Bewegungsprofil 50 bestimmt, das für aufeinanderfolgende TaktZeitpunkte Führungsgrößen zur Weg-Zeit-Bewegung für die mindestens eine Bewegungsachse 16 umfasst. Das Steuerprogramm umfasst mindestens eine von einer Bedingung gesteuerte Pro ¬ grammverzweigung 32, 40 mit mehreren nachfolgenden alternati- ven Steuerprogrammabschnitten 34, 36, 38, die festlegt, welcher der alternativen Steuerprogrammabschnitte 34, 36, 38 in Abhängigkeit der Bedingung weiter ausgeführt wird. Das Look- Ahead-Modul 24 berechnet für jeden alternativen Steuerpro ¬ grammabschnitt 34, 36, 38 vor einer weiteren Bewegung ein al- ternatives Bewegungsprofil 52, 54, 56, speichert es und hält es an der bedingten Programmverzweigung 32, 40 zur Durchführung der weiteren Bewegung bereit.

Die vorliegende Erfindung weist viele Vorteile auf. Insbeson- dere ist es möglich, auch bei bedingten Programmanweisungen eine kontinuierliche Ausführung des Steuerprogramms 30 zu ge ¬ währleisten . Obwohl die Erfindung im Detail durch das bevorzugte Ausführungsbeispiel näher illustriert und beschrieben wurde, so ist die Erfindung nicht durch die offenbarten Beispiele einge ¬ schränkt und andere Variationen können vom Fachmann hieraus abgeleitet werden, ohne den Schutzumfang der Erfindung zu verlassen .