Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
NUMERICAL CONTROLLER HAVING SCALABLE PERFORMANCE
Document Type and Number:
WIPO Patent Application WO/2019/179716
Kind Code:
A1
Abstract:
The invention relates to a numerical controller (5) which executes a useful program (9) while being monitored by a system program (6). In the course of executing the useful program (9), the numerical controller (5) determines, by means of at least one processor (10) having at least one first clock rate, target values for position-controlled axes (3) of a machine (1) controlled by the numerical controller (5) and actuates the position-controlled axes (3) in accordance with the respectively determined target values. With regard to resources of the numerical controller (5), it is in each case recorded in the numerical controller (5) whether, and optionally within what scope, said resources are enabled or whether such resources are disabled. Enabling or disabling the resources establishes how many of a plurality of processor (10) cores are enabled for use and/or how many of a plurality of processor (10) threads are enabled for use and/or to what extent a processor (10) cache and/or a main memory assigned to the processor (10) are enabled for use and/or what hardware components of the numerical controller (5) are enabled for use and/or to what extent the use of external computing power is permitted. The numerical controller (5) determines the target values for the position-controlled axes (3) using only the enabled resources.

Inventors:
BRETSCHNEIDER, Jochen (Hohenkreuzweg 21, Esslingen, 73732, DE)
SPIELMANN, Ralf (Robert-Leicht-Str. 157A, Stuttgart, 70569, DE)
STELLWAG, Philippe (Vogelherdstraße 10, Nürnberg, 90419, DE)
Application Number:
EP2019/054348
Publication Date:
September 26, 2019
Filing Date:
February 21, 2019
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SIEMENS AKTIENGESELLSCHAFT (Werner-von-Siemens-Straße 1, München, 80333, DE)
International Classes:
G05B19/4155
Foreign References:
EP3045993A12016-07-20
US20180059650A12018-03-01
EP3045993A12016-07-20
US20180059650A12018-03-01
Other References:
LANDERS ET AL: "Reconfigurable Machine Tools", CIRP ANNALS, ELSEVIER BV, NL, CH, FR, vol. 50, no. 1, 1 January 2001 (2001-01-01), pages 269 - 274, XP022137388, ISSN: 0007-8506, DOI: 10.1016/S0007-8506(07)62120-9
Download PDF:
Claims:
Patentansprüche / Patent Claims

1. Betriebsverfahren für eine numerische Steuerung (5),

- wobei die numerische Steuerung (5) unter Kontrolle durch ein Systemprogramm (6) ein Nutzprogramm (9) ausführt,

- wobei die numerische Steuerung (5) im Rahmen der Ausführung des Nutzprogramms (9) mittels mindestens einer Prozesso reinrichtung (10) mit mindestens einer ersten Taktrate Sollwerte für lagegeregelte Achsen (3) einer von der nume rischen Steuerung (5) gesteuerten Maschine (1) ermittelt und die lagegeregelten Achsen (3) entsprechend den jeweils ermittelten Sollwerten ansteuert,

- wobei in der numerischen Steuerung (5) für Ressourcen der numerischen Steuerung (5) jeweils hinterlegt ist, ob und gegebenenfalls in welchem Umfang sie freigegeben sind oder ob sie gesperrt sind,

- wobei durch das Freigeben oder Sperren der Ressourcen fest gelegt wird,

-- wieviele von mehreren Kernen der Prozessoreinrichtung (10) zur Nutzung freigegeben sind und/oder

-- wieviele von mehreren Threads der Prozessoreinrichtung (10) zur Nutzung freigegeben sind und/oder

-- in welchem Ausmaß ein Cache der Prozessoreinrichtung

(10) und/oder ein der Prozessoreinrichtung (10) zugeord neter Arbeitsspeicher zur Nutzung freigegeben sind und/oder

-- welche Hardwarekomponenten der numerischen Steuerung (5) zur Nutzung freigegeben sind und/oder

-- in welchem Ausmaß eine Nutzung externer Rechenleistung zugelassen wird,

- wobei die numerische Steuerung (5) die Sollwerte für die lagegeregelten Achsen (3) unter Nutzung ausschließlich der freigegebenen Ressourcen ermittelt.

2. Betriebsverfahren 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 die numerische Steuerung (5) im Rahmen der Ausführung des Systemprogramms (6), aber vor der Ausführung des Nutzpro- gramms (9) von einer Bedienperson (13) oder von einer compu tergesteuerten Einrichtung einen ersten Freischaltcode entge gennimmt und dass die numerische Steuerung (5) in Abhängig keit von dem entgegengenommenen ersten Freischaltcode be stimmt, welche der Ressourcen in welchem Umfang freigegeben sind und welche der Ressourcen gesperrt sind.

3. Betriebsverfahren 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 in der numerischen Steuerung (5) für im Rahmen der Aus führung des Nutzprogramms (9) auf das Nutzprogramm (9) bezo gene wiederholt ausgeführte steuerungsinterne Aktionen mini male Ausführungszeiten hinterlegt sind und dass die numeri sche Steuerung (5) im Rahmen der Ausführung des Nutzprogramms (9) die steuerungsinternen Aktionen zumindest mit der jewei ligen minimalen Ausführungszeit ausführt.

4. Betriebsverfahren nach Anspruch 3,

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

dass die numerische Steuerung (5) im Rahmen der Ausführung des Systemprogramms (6), aber vor der Ausführung des Nutzpro gramms (5) von einer Bedienperson (13) oder von einer compu tergesteuerten Einrichtung einen zweiten Freischaltcode ent gegennimmt und dass die numerische Steuerung (5) die minima len Ausführungszeiten in Abhängigkeit von dem entgegengenom menen zweiten Freischaltcode bestimmt.

5. Betriebsverfahren nach einem der obigen Ansprüche, d a d u r c h g e k e n n z e i c h n e t ,

dass in der numerischen Steuerung (5) eine erste Obergrenze für die mindestens eine erste Taktrate hinterlegt ist und dass die numerische Steuerung (5) im Rahmen der Ausführung des Nutzprogramms (9) die erste Taktrate auf die erste Ober grenze begrenzt.

6. Betriebsverfahren nach Anspruch 5,

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

dass die numerische Steuerung (5) im Rahmen der Ausführung des Systemprogramms (6), aber vor der Ausführung des Nutzpro gramms (9) von einer Bedienperson (13) oder von einer compu tergesteuerten Einrichtung einen dritten Freischaltcode ent gegennimmt und dass die numerische Steuerung (5) die erste Obergrenze in Abhängigkeit von dem entgegengenommenen dritten Freischaltcode bestimmt.

7. Betriebsverfahren nach einem der obigen 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 numerische Steuerung (5) im Rahmen der Ausführung des Nutzprogramms (9) mit einer zweiten Taktrate und/oder mit einer Kommunikationsbandbreite mit einer externen Einrichtung (11, 12) kommuniziert und dass in der numerischen Steuerung

(5) eine zweite Obergrenze für die zweite Taktrate und/oder eine dritte Obergrenze für die Kommunikationsbandbreite hin terlegt ist.

8. Betriebsverfahren nach Anspruch 7,

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

dass die numerische Steuerung (5) im Rahmen der Ausführung des Systemprogramms (6), aber vor der Ausführung des Nutzpro gramms (9) von einer Bedienperson (13) oder von einer compu tergesteuerten Einrichtung einen vierten Freischaltcode ent gegennimmt und dass die numerische Steuerung (5) die zweite Obergrenze und/oder die dritte Obergrenze in Abhängigkeit von dem entgegengenommenen vierten Freischaltcode bestimmt.

9. Betriebsverfahren nach einem der obigen 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 Prozessoreinrichtung (10) mit einem Prozessortakt arbeitet, dass in der numerischen Steuerung (5) eine vierte Obergrenze für den Prozessortakt hinterlegt ist und dass die numerische Steuerung (5) im Rahmen der Ausführung des Nutz programms (9) den Prozessortakt auf die vierte Obergrenze be grenzt .

10. Betriebsverfahren nach Anspruch 9,

d a d u r c h g e k e n n z e i c h n e t , dass die numerische Steuerung (5) im Rahmen der Ausführung des Systemprogramms (6), aber vor der Ausführung des Nutzpro gramms (9) von einer Bedienperson (13) oder von einer compu tergesteuerten Einrichtung einen fünften Freischaltcode ent gegennimmt und dass die numerische Steuerung (5) die vierte Obergrenze in Abhängigkeit von dem entgegengenommenen fünften Freischaltcode bestimmt.

11. Systemprogramm für eine numerische Steuerung (5), wobei das Systemprogramm Maschinencode (7) umfasst, der von der nu merischen Steuerung (5) abarbeitbar ist, wobei die Abarbei tung des Maschinencodes (7) durch die numerische Steuerung (5) bewirkt, dass die numerische Steuerung (5) ein Betriebs verfahren nach einem der obigen Ansprüche ausführt.

12. Numerische Steuerung, wobei die numerische Steuerung mit einem Systemprogramm (6) nach Anspruch 11 programmiert ist, so dass sie ein Betriebsverfahren nach einem der Ansprüche 1 bis 10 ausführt.

Description:
Beschreibung / Description

In ihrer Leistungsfähigkeit skalierbare numerische Steuerung

Die vorliegende Erfindung geht aus von einem Betriebsverfah ren für eine numerische Steuerung,

- wobei die numerische Steuerung unter Kontrolle durch ein Systemprogramm ein Nutzprogramm ausführt,

- wobei die numerische Steuerung im Rahmen der Ausführung des Nutzprogramms mittels mindestens einer Prozessoreinrichtung mit mindestens einer ersten Taktrate Sollwerte für lagege regelte Achsen einer von der numerischen Steuerung gesteu erten Maschine ermittelt und die lagegeregelten Achsen ent sprechend den jeweils ermittelten Sollwerten ansteuert.

Die vorliegende Erfindung geht weiterhin aus von einem Sys temprogramm für eine numerische Steuerung, wobei das System programm Maschinencode umfasst, der von der numerischen Steu erung abarbeitbar ist, wobei die Abarbeitung des Maschinen codes durch die numerische Steuerung bewirkt, dass die nume rische Steuerung ein derartiges Betriebsverfahren ausführt.

Die vorliegende Erfindung geht weiterhin aus von einer nume rischen Steuerung, wobei die numerische Steuerung mit einem derartigen Systemprogramm programmiert ist, so dass sie ein derartiges Betriebsverfahren ausführt.

Numerische Steuerungssysteme werden in vielen Leistungsklas sen am Markt angeboten. Die Skalierung der Leistung kann bei spielsweise die Anzahl an bereitgestellten Technologien (Dre hen, Fräsen, Laserbearbeitung, ... ) , Anzahl an steuerbaren Achsen, Art und Umfang aktivierbarer Steuerungsfunktionen und andere mehr betreffen. Zusammen mit den soeben beispielhaft genannten externen Leistungsmerkmalen steigen in der Regel weiterhin auch Anforderungen an die die Leistungsmerkmale der Steuerungssysteme wie beispielsweise die Leistungsfähigkeit einer Prozessoreinrichtung der numerischen Steuerung oder die Menge an verfügbarem Arbeitsspeicher und dergleichen mehr an. Der Hersteller einer Produktionsmaschine (beispielsweise ei ner Werkzeugmaschine) erwirbt die von ihm für geeignet erach tete numerische Steuerung einer bestimmten Leistungsklasse und verwendet diese.

Im Rahmen von späteren Modifikationen ist der Hersteller der Produktionsmaschine an die Limitierungen der von ihm verwen deten numerischen Steuerung gebunden. Wenn später eine höhere Leistungsfähigkeit gefordert ist - beispielsweise eine höhere Bearbeitungsgenauigkeit, die durch eine kleinere Interpolati onszeit erreicht wird, - ist dies im Stand der Technik nur durch einen Austausch der numerischen Steuerung gegen eine entsprechend leistungsfähigere numerische Steuerung oder durch Inkaufnahme einer erhöhten Bearbeitungszeit realisier bar. Das Verwenden einer leistungsfähigeren numerischen Steu erung ist mit erheblichen Kosten und auch erheblichem Inbe triebsetzungsaufwand verbunden. Wenn umgekehrt die bisherige numerische Steuerung weiterhin verwendet werden soll, ist die Verwendung dieser numerischen Steuerung nur dadurch reali sierbar, dass anderweitig Beschränkungen hingenommen werden, beispielsweise bezüglich der erreichbaren Bearbeitungszeit.

Es ist zwar denkbar, stets eine „große" und dementsprechend leistungsstarke numerische Steuerung zu verwenden. Ein Erwerb einer derart großen und dementsprechend leistungsstarken nu merischen Steuerung kommt für den Hersteller der Produktions maschine jedoch aus Kostengründen nicht in Frage. Er wird vielmehr - zumindest in der Regel - lediglich die „gerade ausreichende" numerische Steuerung verwenden.

Umgekehrt könnte der Hersteller der numerischen Steuerung na türlich eine entsprechend „große", leistungsstarke numerische Steuerung zum Preis einer kleineren, leistungsschwächeren nu merischen Steuerung vertreiben. Dies ist jedoch für den Her steller der numerischen Steuerung aus Kostengründen indisku tabel . In der Praxis bleibt daher der Hersteller der Produktionsma schine im Rahmen von späteren Modifikationen nach wie vor an die Limitierungen der von ihm verwendeten numerischen Steue rung gebunden.

Aus der EP 3 045 993 Al ist ein Fertigungssystem bekannt, das eine Fertigungsmaschine und eine als Steuerungsvorrichtung bezeichnete Einrichtung aufweist. Die Fertigungsmaschine weist intern eine CNC-Steuerung auf. Die als Steuerungsvor richtung bezeichnete Einrichtung ist nicht in die Echtzeit- Steuerung der Fertigungsmaschine eingebunden. Sie dient viel mehr dazu, anhand von CAD-Daten ein Steuerprogramm zu ermit teln, das später von der internen Steuerung der Fertigungsma schine abgearbeitet werden soll. Innerhalb der als Steue rungsvorrichtung bezeichneten Einrichtung sind mehrere Funk tionalitäten hinterlegt, die zwar ähnliche Ergebnisse lie fern, aber mit unterschiedlicher Qualität. Höherwertige Funk tionalitäten können nur mittels eines entsprechenden Frei schaltcodes aktiviert und genutzt werden.

Aus der US 2018/0 059 650 Al ist eine Steuereinrichtung einer Schweißvorrichtung bekannt. Innerhalb der Steuereinrichtung können zur Steuerung der Schweißvorrichtung verschiedene Al gorithmen hinterlegt sein. Wenn dies der Fall ist, werden ei ner Bedienperson die möglichen Algorithmen angezeigt, so dass die Bedienperson einen der Algorithmen selektieren kann.

Die Aufgabe der vorliegenden Erfindung besteht darin, Mög lichkeiten zu schaffen, mittels derer die numerische Steue rung in ihrer Leistungsfähigkeit skalierbar wird, wobei den noch sowohl die Interessen des Herstellers der Produktionsma schine als auch die Interessen des Herstellers der numeri schen Steuerung gewahrt bleiben.

Die Aufgabe wird durch ein Betriebsverfahren mit den Merkma len des Anspruchs 1 gelöst. Vorteilhafte Ausgestaltungen des Betriebsverfahrens sind Gegenstand der abhängigen Ansprüche 2 bis 10. Erfindungsgemäß wird ein Betriebsverfahren der eingangs ge nannten Art dadurch ausgestaltet,

- dass in der numerischen Steuerung für Ressourcen der nume rischen Steuerung jeweils hinterlegt ist, ob und gegebenen falls in welchem Umfang sie freigegeben sind oder ob sie gesperrt sind,

- wobei durch das Freigeben oder Sperren der Ressourcen fest gelegt wird,

-- wieviele von mehreren Kernen der Prozessoreinrichtung zur Nutzung freigegeben sind und/oder

-- wieviele von mehreren Threads der Prozessoreinrichtung zur Nutzung freigegeben sind und/oder

-- in welchem Ausmaß ein Cache der Prozessoreinrichtung

und/oder ein der Prozessoreinrichtung zugeordneter Ar beitsspeicher zur Nutzung freigegeben sind und/oder -- welche Hardwarekomponenten der numerischen Steuerung zur Nutzung freigegeben sind und/oder

-- in welchem Ausmaß eine Nutzung externer Rechenleistung zugelassen wird,

- dass die numerische Steuerung die Sollwerte für die lagege regelten Achsen unter Nutzung ausschließlich der freigege benen Ressourcen ermittelt.

Aufgrund dieser Vorgehensweise kann einerseits vom Hersteller der numerischen Steuerung eine prinzipiell sehr leistungs starke numerische Steuerung zu einem angemessenen Preis an den Hersteller der Produktionsmaschine geliefert werden. Den noch ist gewährleistet, dass der Hersteller der Produktions maschine die numerische Steuerung nur im Rahmen derjenigen Leistungsmerkmale nutzen kann, die vom Hersteller der numeri schen Steuerung freigegeben sind.

Die Festlegung, welche der Ressourcen - gegebenenfalls in welchem Umfang - freigegeben und welche gesperrt sind, kann vom Hersteller der numerischen Steuerung nach Bedarf bestimmt werden. Zahlt der Hersteller der Produktionsmaschine einen relativ niedrigen Preis, werden nur wenige Ressourcen freige- geben bzw. freigegebene Ressourcen limitiert. Ist der Preis höher, werden mehr Ressourcen freigegeben bzw. Limitierungen aufgehoben. Hierbei werden in der Regel umso mehr Ressourcen freigegeben und Limitierungen aufgehoben, je höher der Preis ist, den der Hersteller der Produktionsmaschine zahlt.

In einer bevorzugten Ausgestaltung des Betriebsverfahrens ist vorgesehen, dass die numerische Steuerung im Rahmen der Aus führung des Systemprogramms, aber vor der Ausführung des Nutzprogramms von einer Bedienperson oder von einer computer gesteuerten Einrichtung einen ersten Freischaltcode entgegen nimmt und in Abhängigkeit von dem entgegengenommenen ersten Freischaltcode bestimmt, welche der Ressourcen in welchem Um fang freigegeben sind und welche der Ressourcen gesperrt sind. Dadurch ist es möglich, die Ressourcen auch nachträg lich noch nach Bedarf freizuschalten.

Bezüglich anderer Leistungsparameter der numerischen Steue rung sind zur Nutzung der Ressourcen analoge Vorgehensweisen realisierbar. Insbesondere ist es möglich, dass in der nume rischen Steuerung für auf das Nutzprogramm bezogene wieder holt ausgeführte steuerungsinterne Aktionen minimale Ausfüh rungszeiten hinterlegt sind und dass die numerische Steuerung im Rahmen der Ausführung des Nutzprogramms die steuerungsin ternen Aktionen zumindest mit der jeweiligen minimalen Aus führungszeit ausführt.

Auch hier ist es wieder möglich, dass die numerische Steue rung im Rahmen der Ausführung des Systemprogramms, aber vor der Ausführung des Nutzprogramms von einer Bedienperson oder von einer computergesteuerten Einrichtung einen zweiten Frei schaltcode entgegennimmt und die minimalen Ausführungszeiten in Abhängigkeit von dem entgegengenommenen zweiten Frei schaltcode bestimmt. Dadurch ist es möglich, die Leistungsfä higkeit der numerischen Steuerung auch bezüglich der steue rungsinternen Aktionen nachträglich noch zu skalieren. In analoger Weise ist es auch möglich, dass in der numeri schen Steuerung eine erste Obergrenze für die mindestens eine erste Taktrate (Frequenz) hinterlegt ist und dass die numeri sche Steuerung im Rahmen der Ausführung des Nutzprogramms die erste Taktrate auf die erste Obergrenze begrenzt.

Auch hier ist es wieder möglich, dass die numerische Steue rung im Rahmen der Ausführung des Systemprogramms, aber vor der Ausführung des Nutzprogramms von einer Bedienperson oder von einer computergesteuerten Einrichtung einen dritten Frei schaltcode entgegennimmt und die erste Obergrenze in Abhän gigkeit von dem entgegengenommenen dritten Freischaltcode be stimmt. Dadurch ist es möglich, die Leistungsfähigkeit der numerischen Steuerung auch bezüglich der ersten Taktrate nachträglich noch zu skalieren.

Ebenso ist es möglich, dass die numerische Steuerung im Rah men der Ausführung des Nutzprogramms mit einer zweiten Takt rate und/oder mit einer Kommunikationsbandbreite mit einer externen Einrichtung kommuniziert und dass in der numerischen Steuerung eine zweite Obergrenze für die zweite Taktrate und/oder eine dritte Obergrenze für die Kommunikationsband breite hinterlegt ist.

Auch hier ist es wieder möglich, dass die numerische Steue rung im Rahmen der Ausführung des Systemprogramms, aber vor der Ausführung des Nutzprogramms von einer Bedienperson oder von einer computergesteuerten Einrichtung einen vierten Frei- schaltcode entgegennimmt und die zweite Obergrenze und/oder die dritte Obergrenze in Abhängigkeit von dem entgegengenom menen vierten Freischaltcode bestimmt. Dadurch ist auch hier die entsprechende Skalierung noch nachträglich möglich.

In analoger Weise ist es möglich, dass die Prozessoreinrich tung mit einem Prozessortakt arbeitet, dass in der numeri schen Steuerung eine vierte Obergrenze für den Prozessortakt hinterlegt ist und dass die numerische Steuerung im Rahmen der Ausführung des Nutzprogramms den Prozessortakt auf die vierte Obergrenze begrenzt.

Auch hier ist es wieder möglich, dass die numerische Steue rung im Rahmen der Ausführung des Systemprogramms, aber vor der Ausführung des Nutzprogramms von einer Bedienperson oder von einer computergesteuerten Einrichtung einen fünften Frei schaltcode entgegennimmt und die vierte Obergrenze in Abhän gigkeit von dem entgegengenommenen fünften Freischaltcode be stimmt. Dadurch ist auch hier die entsprechende Skalierung noch nachträglich möglich.

Die Aufgabe wird weiterhin durch ein Systemprogramm für eine numerische Steuerung mit den Merkmalen des Anspruchs 11 ge löst. Erfindungsgemäß bewirkt die Abarbeitung des Maschinen codes durch die numerische Steuerung, dass die numerische Steuerung ein erfindungsgemäßes Betriebsverfahren ausführt.

Die Aufgabe wird weiterhin durch eine numerische Steuerung mit den Merkmalen des Anspruchs 12 gelöst. Erfindungsgemäß ist die numerische Steuerung mit einem erfindungsgemäßen Sys temprogramm programmiert, so dass die numerische Steuerung ein erfindungsgemäßes Betriebsverfahren ausführt.

Die oben beschriebenen Eigenschaften, Merkmale und Vorteile dieser Erfindung sowie die Art und Weise, wie diese erreicht werden, werden klarer und deutlicher verständlich im Zusam menhang mit der folgenden Beschreibung der Ausführungsbei spiele, die in Verbindung mit den Zeichnungen näher erläutert werden. Hierbei zeigen in schematischer Darstellung:

FIG 1 eine Produktionsmaschine,

FIG 2 ein Ablaufdiagramm und

FIG 3 ein weiteres Ablaufdiagramm.

Gemäß FIG 1 soll mittels einer Produktionsmaschine 1 eine Handhabung eines Werkstücks 2 erfolgen, beispielsweise eine Bearbeitung. Die Produktionsmaschine weist zu diesem Zweck eine Anzahl an lagegeregelten Achsen 3 auf, mittels derer beispielsweise ein Werkzeug 4 relativ zum Werkstück 2 lagege regelt positioniert werden kann. Die Positionierung kann nach Bedarf translatorisch und/oder rotatorisch sein. Die Anzahl an lagegeregelten Achsen 3 kann nach Bedarf sein. Oftmals sind mindestens drei lagegeregelte Achsen 3 vorhanden. Es sind jedoch auch Ausgestaltungen mit mehr oder weniger als drei lagegeregelten Achsen möglich.

Zur Steuerung der Produktionsmaschine 1 ist eine numerische Steuerung 5 vorhanden. Die numerische Steuerung 5 ist mit ei nem Systemprogramm 6 programmiert. Das Systemprogramm 6 um fasst Maschinencode 7, der von der numerischen Steuerung 5 abarbeitbar ist. Die Abarbeitung des Maschinencodes 7 durch die numerische Steuerung 5 bewirkt, dass die numerische Steu erung 5 ein Betriebsverfahren ausführt, das nachstehend in Verbindung mit FIG 2 näher erläutert wird.

Gemäß FIG 2 führt die numerische Steuerung 5 zunächst nur das Systemprogramm 6 aus. Dieser Zustand kann sich beispielsweise beim Hochlaufen oder nach einem Reset der numerischen Steue rung 5 ergeben. Im Rahmen der Ausführung des Systemprogramms 6 liest die numerische Steuerung 5 in einem Schritt S1 aus einem Konfigurationsspeicher 8 verschiedene Parameter aus. In einem Schritt S2 konfiguriert sich die numerische Steuerung 5 entsprechend den ausgelesenen Parametern. Auf die vorgenomme nen Konfigurierungen wird später noch näher eingegangen.

Nach dem Konfigurieren beginnt die numerische Steuerung 5 in einem Schritt S3 mit der Ausführung eines Nutzprogramms 9.

Das Nutzprogramm 9 kann beispielsweise ein übliches Teilepro gramm sein, welches für die einzelnen lagegeregelten Achsen 3 entsprechende Folgen von Lagesollwerten umfasst. Die numeri sche Steuerung 5 führt das Nutzprogramm 9 unter Kontrolle durch das Systemprogramm 6 aus.

Im Rahmen der Ausführung des Nutzprogramms 9 ermittelt die numerische Steuerung 5 mittels mindestens einer Prozessorein- richtung 10 mit mindestens einer ersten Taktrate Sollwerte für die lagegeregelten Achsen 3. Sie steuert weiterhin die lagegeregelten Achsen 3 entsprechend den jeweils ermittelten Sollwerten an. Bei der ersten Taktrate kann es sich bei spielsweise um einen IPO-Takt (= Interpolationstakt) , um ei nen Lageregeltakt, um einen Drehzahlregeltakt oder um einen Stromregeltakt handeln. Auch andere technologiebezogene Takte sind möglich. Technologiebezogene Takte sind Takte, welche auf die Abarbeitung der anhand des Nutzprogramms 9 ermittel ten Sollwerte bezogen sind. Der Gegensatz sind steuerungsbe zogene Takte, welche lediglich die interne Funktionsweise der numerischen Steuerung 5 betreffen. Die erste Taktrate hat die Einheit Hertz. Je größer die erste Taktrate ist, desto schneller kann - bei ansonsten unveränderten Bedingungen - das Nutzprogramm 9 abgearbeitet werden.

Die in der numerischen Steuerung hinterlegten Parameter kön nen beispielsweise festlegen, welche Ressourcen der numeri schen Steuerung 5 freigegeben sind und welche gesperrt sind. Wenn auch Zwischenstufen zwischen einem vollständigen Sparen und einer vollständigen Freigabe möglich sind, können die hinterlegten Parameter auch festlegen, in welchem Umfang die Ressourcen freigegeben sind. Wenn die Prozessoreinrichtung 10 als Mehrkernprozessor ausgebildet ist, sind die Kerne der Prozessoreinrichtung 10 ein Beispiel derartiger Ressourcen. Die Parameter können beispielsweise festlegen, ob von einem Quadcore-Prozessor nur ein einzelner Prozessorkern, zwei Pro zessorkerne oder alle vier Prozessorkerne genutzt werden. Analoge Ausführungen gelten selbstverständlich auch für Pro zessoreinrichtungen 10 mit einer anderen Anzahl von Prozes sorkernen, beispielsweise 2, 8 oder 16 Prozessorkernen. Ein anderes Beispiel sind in diesem Fall die einzelnen Threads der Prozessoreinrichtung 10. Die Parameter können beispiels weise festlegen, ob bei maximal acht möglichen Threads nur ein einzelner Thread genutzt wird oder ob zwei, vier oder acht Threads genutzt werden. Analoge Ausführungen gelten selbstverständlich auch für Prozessoreinrichtungen 10 mit ei ner anderen Anzahl von Threads, beispielsweise 4 oder 16 Threads . Ein weiteres Beispiel besteht darin, festzulegen, ob von physikalisch vorhandenen 4 MB Cache nichts, 1 MB, 2 MB oder alle 4 MB genutzt werden. Ein weiteres Beispiel besteht darin, festzulegen, ob von zwei vorhandenen Cache-Niveaus ein Cache-Niveau genutzt wird oder ob zwei Cache-Niveaus genutzt werden. Ein weiteres Beispiel besteht darin, festzulegen, ob von physikalisch vorhandenen 4 GB Arbeitsspeicher 1 GB, 2 GB oder alle 4 GB genutzt werden. Ein weiteres Beispiel besteht darin, ob eine vorhandene GPU (= graphical processing unit) genutzt wird oder nicht. Auch andere funktionale Einheiten, beispielsweise ein DSP (digital signal processor) oder fest programmierte Bausteine (beispielsweise ASICs oder FPGAs) können nach Bedarf freigeschaltet oder gesperrt werden.

Die obigen Ausführungen sind selbstverständlich nur beispiel haft. Weiterhin ist es nicht nur möglich, interne Ressourcen der numerischen Steuerung 5 (vollständig oder teilweise) freizugeben oder zu sperren. Analoge Vorgehensweisen sind auch für externe Ressourcen der numerischen Steuerung 5 mög lich. Beispielsweise kann durch die Parameter auch festgelegt sein, ob und gegebenenfalls in welchem Umfang weitere, exter ne Rechenleistung - beispielsweise von einer anderen numeri schen Steuerung oder über eine Cloud - genutzt werden kann.

Die Parameter können weiterhin festlegen, mit welcher Ausfüh rungszeit auf das Nutzprogramm 9 bezogene wiederholt ausge führte steuerungsinterne Aktionen minimal ausgeführt werden, d.h. welche Zeit mindestens zwischen zwei unmittelbar aufei nanderfolgenden derartigen Aktionen liegt. Ein Beispiel einer derartigen Ausführungszeit ist die Satzwechselzeit, also die Zeit zwischen dem Laden zweier aufeinander folgender Datens ätze des Nutzprogramms 9. Beispielsweise können die Parameter eine aufgrund der Leistungsfähigkeit der numerischen Steue rung 5 minimal mögliche Satzwechselzeit von 1 ms nicht be grenzen, auf 2 ms begrenzen oder auf 4 ms begrenzen.

Die Parameter können weiterhin eine erste Obergrenze für die mindestens eine erste Taktrate festlegen. Beispielsweise kön- nen die Parameter einen aufgrund der Leistungsfähigkeit der numerischen Steuerung 5 maximal möglichen Lageregeltakt von 4 kHz nicht begrenzen, auf 2 kHz begrenzen oder auf 1 kHz be grenzen .

Im Rahmen der Ausführung des Nutzprogramms 9 kommuniziert die numerische Steuerung 5 weiterhin oftmals mit anderen Einrich tungen, beispielsweise mit einer speicherprogrammierbaren Steuerung 11 (oftmals als PLC = programmable logic control bezeichnet) oder anderen Einrichtungen wie beispielsweise ei ner Mensch-Maschine-Schnittsteile 12. Auch eine Kommunikation mit einer weiteren numerischen Steuereinrichtung über eine entsprechende Maschine-Maschine-Schnittsteile ist möglich. Eine derartige über die Maschine-Maschine-Schnittsteile er folgt in der Regel mit einer sehr hohen oder breiten Kommuni kationsbandbreite .

Die Kommunikation mit der speicherprogrammierbaren Steuerung 11 erfolgt in der Regel mit einer zweiten Taktrate. Die Kom munikation mit der Mensch-Maschine-Schnittsteile 12 erfolgt in der Regel mit einer Kommunikationsbandbreite. Die Parame ter können beispielsweise eine zweite Obergrenze für die zweite Taktrate festlegen. Beispielsweise können die Parame ter eine aufgrund der Leistungsfähigkeit der numerischen Steuerung 5 maximal mögliche zweite Taktrate von 200 Hz nicht begrenzen, auf 100 Hz begrenzen oder auf 50 Hz begrenzen. Al ternativ oder zusätzlich können die Parameter beispielsweise eine dritte Obergrenze für die Kommunikationsbandbreite fest legen. Beispielsweise können die Parameter eine aufgrund der Leistungsfähigkeit der numerischen Steuerung 5 maximal mögli che Kommunikationsbandbreite von 1 Mbit/s nicht begrenzen, auf 500 kbit/s begrenzen oder auf 250 kbit/s begrenzen.

Die Prozessoreinrichtung 10 arbeitet mit einem Prozessortakt. Der Prozessortakt kann konstant sein, beispielsweise bei 3,0 GHz liegen. Alternativ kann er variabel sein, beispielsweise zwischen 2,5 GHz und 3,0 GHz variieren. Unabhängig davon, ob der Prozessortakt konstant oder variabel ist, können die Pa- rameter jedoch eine vierte Obergrenze für den Prozessortakt festlegen, beispielsweise den Prozessortakt nicht begrenzen, auf 2,5 GHz begrenzen oder auf 2,0 GHz begrenzen.

Die numerische Steuerung 5 beachtet im Rahmen der Ausführung des Schrittes S3 alle durch die Parameter festgelegten Rest riktionen und Limitierungen. Insbesondere ermittelt die nume rische Steuerung 5 die Sollwerte für die lagegeregelten Ach sen 3 unter Nutzung ausschließlich der freigegebenen Ressour cen. Weiterhin führt sie die steuerungsinternen Aktionen zu mindest mit der jeweiligen minimalen Ausführungszeit aus. Die Ausführungszeit kann also zwar größer als die durch die Para meter spezifizierte minimale Ausführungszeit sein, nicht aber kleiner. Weiterhin begrenzt sie die erste Taktrate auf die erste Obergrenze, die zweite Taktrate auf die zweite

Obergrenze und die Kommunikationsbandbreite auf die dritte Obergrenze. Schließlich begrenzt sie den Prozessortakt auf die vierte Obergrenze.

Vorzugsweise ist die obenstehend in Verbindung mit FIG 2 er läuterte Vorgehensweise entsprechend FIG 3 ausgestaltet.

Gemäß FIG 3 sind zusätzlich Schritte Sil bis S21 vorhanden.

Im Schritt Sil prüft die numerische Steuerung 5, ob ihr von einer Bedienperson 13 oder von einer computergesteuerten Ein richtung ein Gesamtcode vorgegeben wird. Gegebenenfalls nimmt sie den Gesamtcode entgegen. Wenn ihr der Gesamtcode nicht vorgegeben wird, geht die numerische Steuerung 5 zum Schritt S1 über.

Anderenfalls extrahiert die numerische Steuerung 5 im Schritt S12 aus dem Gesamtcode einen ersten Freischaltcode. Im

Schritt S13 bestimmt die numerische Steuerung 5 in Abhängig keit von dem entgegengenommenen ersten Freischaltcode, welche der Ressourcen - gegebenenfalls in welchem Umfang - freigege ben und welche der Ressourcen gesperrt sind. Insbesondere än dert sie den Inhalt des Konfigurationsspeichers 8 entspre chend . In analoger Weise extrahiert die numerische Steuerung 5 im Schritt S14 aus dem Gesamtcode einen zweiten Freischaltcode. Im Schritt S15 bestimmt die numerische Steuerung 5 in Abhän gigkeit von dem entgegengenommenen zweiten Freischaltcode die minimalen Ausführungszeiten. Insbesondere ändert sie den In halt des Konfigurationsspeichers 8 entsprechend.

In analoger Weise extrahiert die numerische Steuerung 5 im Schritt S16 aus dem Gesamtcode einen dritten Freischaltcode. Im Schritt S17 bestimmt die numerische Steuerung 5 in Abhän gigkeit von dem entgegengenommenen dritten Freischaltcode die erste Obergrenze. Insbesondere ändert sie den Inhalt des Kon figurationsspeichers 8 entsprechend.

In analoger Weise extrahiert die numerische Steuerung 5 im Schritt S18 aus dem Gesamtcode einen vierten Freischaltcode. Im Schritt S19 bestimmt die numerische Steuerung 5 in Abhän gigkeit von dem entgegengenommenen vierten Freischaltcode die zweite Obergrenze und/oder die dritte Obergrenze. Insbesonde re ändert sie den Inhalt des Konfigurationsspeichers 8 ent sprechend .

In analoger Weise extrahiert die numerische Steuerung 5 im Schritt S20 aus dem Gesamtcode einen fünften Freischaltcode. Im Schritt S21 bestimmt die numerische Steuerung 5 in Abhän gigkeit von dem entgegengenommenen fünften Freischaltcode die vierte Obergrenze. Insbesondere ändert sie den Inhalt des Konfigurationsspeichers 8 entsprechend.

Soweit erläutert, sind die Schritte S12 bis S21 alle vorhan den. Es ist jedoch möglich, dass einzelne Paare der Schritte S12 bis S21 entfallen.

Weiterhin ist entsprechend der Darstellung in FIG 3 der Schritt S3 vorzugsweise durch einen Schritt S26 ergänzt. Im Schritt S26 ermittelt die numerische Steuerung 5, ob und ge gebenenfalls in welchem Umfang die Abarbeitung des Nutzpro- gramms 9 beschleunigt werden könnte, wenn gesperrte oder nur in beschränktem Umfang nutzbare Ressourcen freigegeben wer den, die minimalen Ausführungszeiten reduziert werden, die mindestens eine erste Taktrate erhöht wird, die zweite Takt rate erhöht wird und/oder die Kommunikationsbandbreite erhöht wird. Aufbauend auf diesen Ermittlungen prüft die numerische Steuerung 5 in einem Schritt S27, ob eine entsprechende Mel dung an die Bedienperson 13 oder an eine computergesteuerte Einrichtung sinnvoll ist. Falls die numerische Steuerung 5 zu diesem Schluss kommt, gibt sie in einem Schritt S28 die ent sprechende Meldung an die Bedienperson 13 oder die computer gesteuerte Einrichtung aus. Dadurch ist es möglich, die ent sprechenden Freischaltcodes zu erwerben und der numerischen Steuerung 5 vorzugeben. Falls die numerische Steuerung 5 zu dem Schluss kommt, dass eine derartige Meldung nicht sinnvoll ist, unterbleibt die entsprechende Meldung. Bei der computer gesteuerten Einrichtung, an welche die Meldung des Schrittes S27 erfolgt, kann es sich nach Bedarf um dieselbe oder um ei ne andere computergesteuerte Einrichtung handeln wie diejeni ge computergesteuerte Einrichtung, welche den Gesamtcode vor gibt .

Durch die erfindungsgemäße Vorgehensweise ist es beispiels weise möglich, einen schnelleren IPO-Takt dann und nur dann zu realisieren, wenn bei einer Drehbearbeitung eine nicht ro tationssymmetrische Bearbeitung erfolgen soll. Denn in diesem Fall wird ein sehr kurzer IPO-Takt benötigt, damit sich die Unrundheit auch bei relativ hohen Spindeldrehzahl noch genau genug interpolieren lässt. Beispielsweise kann, um einen hin reichend schnellen IPO-Takt realisieren zu können, zugleich auch eine Parallelbearbeitung auf mehreren Prozessorkernen der Prozessoreinrichtung 10 erforderlich sein. In diesem Fall kann beispielsweise aufgrund eines entsprechenden ersten Freischaltcodes eine Freischaltung aller vier Prozessorkerne eines Quadcore-Prozessors vorgenommen werden.

In ähnlicher Weise kann aufgrund einer entsprechenden Freiga be ein Teil einer sogenannten Satzaufbereitung auf einen zu- sätzlichen Prozessorkern ausgelagert werden, um diese schnel ler, exakter und/oder anderweitig verbessert berechnen und verarbeiten zu können. In diesem Fall kann beispielsweise aufgrund eines entsprechenden ersten Freischaltcodes eine Freischaltung von zwei der vier Prozessorkerne eines

Quadcore-Prozessors vorgenommen werden.

Zusammengefasst betrifft die vorliegende Erfindung somit fol genden Sachverhalt:

Eine numerische Steuerung 5 führt unter Kontrolle durch ein Systemprogramm 6 ein Nutzprogramm 9 aus. Die numerische Steu erung 5 ermittelt im Rahmen der Ausführung des Nutzprogramms 9 mittels mindestens einer Prozessoreinrichtung 10 mit min destens einer ersten Taktrate Sollwerte für lagegeregelte Achsen 3 einer von der numerischen Steuerung 5 gesteuerten Maschine 1 und steuert die lagegeregelten Achsen 3 entspre chend den jeweils ermittelten Sollwerten an. In der numeri schen Steuerung 5 ist für Ressourcen der numerischen Steue rung 5 jeweils hinterlegt, ob und gegebenenfalls in welchem Umfang sie freigegeben sind oder ob sie gesperrt sind. Durch das Freigeben oder Sperren der Ressourcen wird festgelegt, wieviele von mehreren Kernen der Prozessoreinrichtung 10 zur Nutzung freigegeben sind und/oder wieviele von mehreren Threads der Prozessoreinrichtung 10 zur Nutzung freigegeben sind und/oder in welchem Ausmaß ein Cache der Prozessorein richtung 10 und/oder ein der Prozessoreinrichtung 10 zugeord neter Arbeitsspeicher zur Nutzung freigegeben sind und/oder welche Hardwarekomponenten der numerischen Steuerung 5 zur Nutzung freigegeben sind und/oder in welchem Ausmaß eine Nut zung externer Rechenleistung zugelassen wird. Die numerische Steuerung 5 ermittelt die Sollwerte für die lagegeregelten Achsen 3 unter Nutzung ausschließlich der freigegebenen Res sourcen .

Die vorliegende Erfindung weist viele Vorteile auf. Insbeson dere ist es auf einfache Weise möglich, die Leistungsfähig keit einer numerischen Steuerung 5 nach Bedarf zu skalieren. Als Vorteil für den Hersteller der Produktionsmaschine ergibt sich, dass ein Austausch der numerischen Steuerung 5 nur noch in Ausnahmefällen erforderlich ist. Als Vorteil für den Her steller der numerischen Steuerung 5 ergibt sich, dass der Aufwand für die Hardware-Entwicklung von numerischen Steue rungen 5 reduziert werden kann, da weniger verschiedene nume rische Steuerungen 5 entwickelt werden müssen. Der Hersteller der Produktionsmaschine 1 muss einerseits nur für die von ihm tatsächlich verwendeten Features bzw. Leistungsmerkmale zah len, dennoch bietet die numerische Steuerung 5 ein erhebli ches Erweiterungspotenzial.

Obwohl die Erfindung im Detail durch das bevorzugte Ausfüh rungsbeispiel 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 .