Beschreibung
System bzw. Verfahren zur Freigabe freigabebedürftigter Soft- wareprogramme
Die Erfindung betrifft ein System bzw. ein Verfahren zur Freigabe freigabebedürftigter Softwareprogramme . Verfahren zur Freigabe freigabebedürftige, d.h., insbesondere instanzi- ierbarer Softwareprogramme sind allgemein bekannt. Ein derar- tiges System betrifft zumindest eine oder mehrere Automatisierungskomponenten, wie diese beispielsweise auf dem Gebiet der Steuerung bzw. Regelung insbesondere von Werkzeugmaschinen bzw. Produktionsmaschinen bzw. Handhabungsautomaten bzw. anderen Automaten bzw. Systemen zur Automatisierung insbeson- dere von Prozessen bekannt sind. Eine Automatisierungskomponente ist beispielsweise eine speicherprogrammierbare Steuerung SPS, ein Stromrichter, ein Personal Computer, eine Bewegungssteuerung bzw. dergleichen. Derartige Softwareprogramme, insbesondere zur Steuerung bzw. Regelung zumindest eines Au- tomatisierungsobjektes sind vor unberechtigter Verwendung z.B. durch einen Softwareschutz zu sichern. Der Softwareschutz wird beispielsweise durch Eingabe eines Lizenzschlüssels als eine eindeutige Kennung in das System zur rechtmäßigen Benutzung des jeweiligen freigabebedürftigen Softwarepro- gramms deaktiviert. Das Softwareprogramm ist dadurch aktivierbar bzw. aktiviert. Solange der Softwareschutz nicht deaktiviert ist, kann das Softwareprogramm nicht oder nicht im vollen Umfang auf den jeweiligen Gerät, welches insbesondere eine Automatisierungskomponente ist genutzt werden. Das Deak- tivieren des Softwareschutzes entspricht damit einer Lizenzierung des jeweiligen Softwareprogrammes. Der Umgang mit dem Lizenzschlüssel erfolgt in der Software durch einen Lizenzschlüsselhandhaber. Ein derartiger Lizenzschlüsselhandhaber weist z.B. bestimmte Algorithmen zur Identifizierung des Li- zenzschlüssels auf. Des weiteren weist der Lizenzschlüssel¬ handhaber eine Bedienschnittstelle zu einem Anwender auf.
Ein anderes Verfahren des Softwareschutzes ist beispielsweise die Verwendung eines Dongles als Kopierschutzstecker, der an einem Gerät z.B. einer CNC-Steuerung an einer seriellen oder parallelen Schnittstelle anschließbar ist. Dadurch ist der Softwareschutz mit einer Hardware verknüpft, was unter anderem logistischen Aufwand erfordert. Da die Anzahl paralleler oder serieller oder anderen Schnittstellen bei einem Automatisierungssystem bzw. bei einer Automatisierungskomponente, wie z.B. einer Speicher-Programmierbaren-Steuerung - SPS - oder einem Stromrichter oder einer Bewegungssteuerung, begrenzt ist, begrenzt sich auch die Anzahl einzusetzender Dongles und somit die Anzahl einzusetzender freigabebedürftiger Software. Dies ist insbesondere dann von Nachteil, wenn auch ein OEM - Original Equipment Manufacturer - dazu befä- higt sein soll, freigabebedürftige Software zu schaffen.
Eine weitere Möglichkeit des Softwareschutzes ergibt sich z.B. durch die Verwendung von Disketten als Datenträger, wie dies z.B. in der EP 0 745 925 A2 oder in der EP 0 610 623 AI beschrieben ist.
Aus der WO 00/75760 AI ist bekannt, einen Lizenzschlüssel vom Hersteller der Software bzw. der Hardware an eine bestimmte Ziel-Hardware zu binden, in dem eine freigabebedürftige Soft- wäre speziell für eine Hardware, welche eine Kennung aufweist generiert wird.
Sind auf einer Werkzeugmaschine bzw. Produktionsmaschine bzw. einem Handhabungsautomaten bzw. einem System insbesondere ei- nem Automatisierungssystem für allgemeine bzw. spezielle Automatisierungsaufgaben, welches zumindest eine Automatisierungskomponente aufweist verschiedene Softwareprogramme ablauffähig bzw. sind innerhalb eines Verbundes derartiger Maschinen bzw. Automaten bzw. Automatisierungssysteme verschie- dene Softwareprogramme ablauffähig, welche insbesondere verschiedene Schutzmechanismen zum Schutz der Software nutzen, so treten dadurch Nachteile auf. Für jede freigabebedürftige
Software ist einzeln der entsprechende Softwareschutz manuell einzurichten. Handelt es sich um unterschiedliche Softwareschutzmechanismen, so sind unterschiedliche Vorgehensweisen zur Aktivierung bzw. zur Freischaltung der Software notwen- dig. Diese Freigabe von lizenzierter bzw. freigabebedürftiger Software, insbesondere bei einer Vielzahl von lizenzierten Softwareprogrammen sind sehr arbeitsaufwendig. Dies liegt insbesondere daran, dass die Schritte zur Lizenzierung sich häufig für jedes Softwareprogramm unterscheiden. Ein Benut- zer, der ein erstes Softwareprogramm erfolgreich lizenziert hat, muss zur Lizenzierung eines weiteren Softwareprogrammes den jeweiligen Lizenzschlüssel bereit halten und ermitteln, welche Schritte zur Lizenzierung auszuführen sind und darauf diese Schritte einzeln ausführen um das Softwareprogramm mit dem zugehörigen Lizenzschlüssel, kurz Schlüssel genannt, zu lizenzieren. Dieses Vorgehen ist insbesondere für ungeübte Benutzer aufwendig, zeitintensiv und fehleranfällig. Die rechtliche Lizenzierung ist in diesem Zusammenhang von der Prüfung des Lizenzschlüssels zu unterscheiden. Zum Nachweis einer Lizenz gibt es z.B. Urkunden, welche vorteilhafter Weise fälschungssicher sind. Der Lizenzschlüssel ist eine elektronische bzw. datentechnische Repräsentanz der rechtlichen Lizenz an einer lizenzierten Software. Bei dem Vorgang der Lizenzierung der Software durch den Lizenzschlüssel handelt es sich um eine Prüfung der elektronischen bzw. datentechnischen Repräsentanz der rechtlichen Lizenz zur Nutzung einer lizenzierten Software, d.h. einer durch einen Softwareschlüssel freigabebedürftigen Software. Der Vorgang der Prüfung des Lizenzschlüssels hat beispielsweise zumindest eine der fol- genden Wirkungen: die freigabebedürftige Software ist nicht ablauffähig, die freigabebedürftige Software ist eingeschränkt ablauffähig, die freigabebedürftige Software ist ablauffähig, eine Generierung einer Meldung an ein Beobachtungsgerät zur Anzeige des Lizenzierungszustandes freigabebe- dürftiger Software.
In Automatisierungs- und Antriebssystemen wird Software zunehmend getrennt von der Hardware vermarktet. Der Schutz von Software wird vereinzelt durch einen SW-Lizenzschutz sichergestellt. Die Vielfältigkeit dieser Komponenten in Automati- sierungs- und Antriebssystemen ist ein Problem.
Bei Softwarelizenzen, d.h. bei freigabebedürftiger Software z.B. von: • Software in elektrischen Antriebskomponenten, • Software in einer embedded-Runtime-Steuerung, wie z.B. einer Werkzeugmaschinen-Steuerungen oder einer Speicher- Programmierbaren-Steuerung, oder • Software eines Personal Computers als • Mittel zum Bedienen bzw. zum Beobachten • Mittel zu einer übergeordnete Datenerfassung einer Automatisierungsaufgabe oder als • Mittel zur Leitsteuerung eines Automatisierungssystems • Software einer speicherprogrammierbaren Steuerung (SPS) • Software einer Werkzeugmaschinensteuerung • usw. hat ein Anwender mit unterschiedlichsten Methoden und Tools Softwarelizensen zu handhaben. Mit zunehmender Durchdringung von Softwarelizensen bzw. freigabebedürftiger Softwareprogramme in Automatisierungs- und Antriebssystemen und zunehmender Komplexität solcher Anlagen, ist dieser Ansatz für einen Anwender nicht mehr handhabbar.
Der Erfindung liegt daher die Aufgabe zugrunde, ein System bzw. ein Verfahren anzugeben, dass zur Lizenzierung mindestens eines Softwareprogrammes, insbesondere zur gemeinsamen Lizenzierung eine Mehrzahl von Softwareprogrammen geeignet ist und die obig beschriebenen Nachteile bzw. Probleme zumin- dest in Teilen überwindet.
Diese Aufgabe wird erfindungsgemäß durch ein System mit den Merkmalen des Anspruchs 1 bzw. durch ein Verfahren nach Anspruch 7 gelöst.
Die Unteransprüche 2 bis 6 bzw. 8 bis 16 sind erfindungsgemäße Weiterbildungen des Systems bzw. des Verfahrens.
Bei einem System zur Ausführung eines freigabebedürftigen Softwareprogrammes zur Steuerung bzw. Regelung mittels zumin- dest einer Automatisierungskomponente ist eine Freigabe des freigabebedürftigen Softwareprogrammes über einen Lizenzschlüssel erreichbar, wobei zur Freigabe ein Lizenzschlüsselhandhaber vorgesehen ist und wobei ein Lizenzschlüsselhandha- bermanager mit zumindest einem bzw. mit zwei oder mehreren Lizenzschlüsselhandhabern datentechnisch verbindbar ist.
Dadurch ist insbesondere ein über verschiedene Automatisierungs- und Antriebskomponenten einheitliches Lizenzmanagementverfahren zu schaffen. Die Automatisierungskomponente ist beispielsweise zum Steuern bzw. Regeln einer Werkzeugmaschine, einer Produktionsmaschine, eines Handhabungsautomaten, einer chemischen Prozessanlage bzw. eines elektrischen Motors einsetzbar, wobei dies alles Automatisierungsobjekte sind.
Unter der Freigabe des freigabebedürftigen Softwareprogrammes ist zumindest die Prüfung der elektronischen bzw. datentechnischen Repräsentanz der Lizenz in der Form des Lizenzschlüssels zu verstehen. Aus der Prüfung kann sich dann eine der bereits beschriebenen Folgen wie z.B. die entweder beschränk- te oder unbeschränkte Ablauffähigkeit des freigabebedürftigen Softwareprogrammes ergeben.
Der Lizenzschlüsselhandhaber ist zur Handhabung des Lizenzschlüssels vorgesehen. Beispielsweise weist der als Software ausgebildete Lizenzschlüsselhandhaber einen Algorithmus zur Erkennung eines Lizenzschlüssels auf. Der Lizenzschlüsselhandhaber ist weiterhin so ausbildbar, dass durch diesen die
Lizensierung, insbesondere die Freischaltung eines bzw. mehrerer freigabebedürftiger Softwareprogramme erfolgt. Der Li- zenzschlüsselhandhabermanager ist datentechnisch, d.h. zwei Softwareprogramme sind zum Austausch von Daten vorgesehen, mit dem Lizenzschlüsselhandhaber verbunden. Die datentechnische Verbindung dient insbesonder der Erkennung des Lizenzschlüsselhandhaber und zur Übermittlung des Lizenzschlüssels bzw. der Freigabeinformation für die Software. Der Li- zenzschlüsselhandhabermanager ist derart ausführbar, dass dieser sowohl immer oder auch nur zeitweise aktiv ist. Eine zeitweise Aktivierung ist beispielsweise beim Hochlauf einer Automatisierungskomponente oder bei der Neuinstallation zumindest eines Softwareprogrammes vorteilhaft, da in der übrigen Zeit Systemresourcen nicht belastet werden.
Ein Anwender von freigabebedürftiger Software (Softwareprogramm) ist nun in der Lage mittels des Lizensschlüsselhandha- bermanagers Daten, insbesondere Lizenzschlüssel, an den Lizenzschlüsselhandhaber weiterzugeben. Der Lizenzschlüssel- handhabermanager ist derart ausbildbar, dass er unabhängig von der Art des Lizenzschlüsselhandhabers dem Anwender eine weitgehend standardisierte Bedienoberfläche bietet. Der Anwender uss sich also nicht auf unterschiedliche Bedienkonzepte unterschiedlicher Lizenzschlüsselhandhaber einstellen. Durch das erfindungsgemäße System, ist es nun also möglich freigabebedürftige Softwareprogramme, welchen jeweils ein Lizenzschlüsselhandhaber zuweisbar ist, mit einem Softwareprogramm, dem Lizenzschlüsselhandhabermanager, zu managen. Dadurch ergibt sich nunmehr nur noch eine Schnittstelle für ei- nen Nutzer zur Lizenzfreigabe von Softwareprogrammen und somit ein leichterer und schnellerer, d.h., kostengünstigerer Umgang mit Freigaben von Lizenzen.
In einer vorteilhaften Ausgestaltung des Systems sind zumin- dest zwei Lizenzschlüsselhandhaber unterschiedlichen Typs. Die Typen der Lizenzschlüsselhandhaber unterscheiden sich durch unterschiedliche Typen der Lizenzschlüssel. Ein be-
stimmter Verschlüsselungsalgorithmus kennzeichnet beispielsweise einen Typ. Auch die Einbindung eines in der Hardware der Automatisierungskomponente gespeicherten nicht löschbaren Datums in einen Schlüssel kann einen neuen Typ von Lizenz- Schlüssel ausbilden. Dies sind nur wenige Beispiele für viele mögliche Arten von Typen.
In einer weiteren vorteilhaften Ausgestaltung des Systems ist der Lizensschlüsselhandhabermanager zur Erkennung zumindest zweier Lizensschlüsselhandhaber, bzw. zur Erkennung eines Lizenzbedarfs vorgesehen.
Wenn mit dem Lizenzschlüsselhandhabermanager Lizenzschlüsselhandhaber unterschiedlichen Typs, d.h. mit unterschiedlichem Lizenzschlüsselmethoden, handelbar sind, so ist dies für den Anwender eine große Erleichterung. In einer vorteilhaften Ausgestaltung des Lizenzschlüsselhandhabermanagers erkennt dieser die Typen der mit ihm datentechnisch verbundenen Lizenzschlüsselhandhaber. Ist dem Lizenzschlüsselhandhabermana- ger beispielsweise ein Typ noch nicht bekannt, so ist der Li- zenzschlüsselhandhabermanager mittels eines zuspielbaren Softwareergänzungsmoduls aufrüstbar, damit er auch einen neuen Typ erkennt und diesen managen kann. Diese Möglichkeit ist insbesondere für OEM's nützlich, da diese eigene lizenzierba- re Softwareprogramme erstellen können. Auch ist es dann von Vorteil, wenn lizenzierbare Software unterschiedlicher Hersteller Verwendung finden bzw. wenn seitens eines Herstellers die Art des Softwareschutzes für eine Nachfolgesoftware geändert wurde. In einer weiteren vorteilhaften Ausgestaltung des Lizenzschlüsselhandhabermanagers erkennt dieser in dem System, d.h. z.B. in einem Automatisierungssystem oder in einer Werkzeugmaschinensteuerung, die Anzahl und den Typ der benötigten Lizenzschlüssel für die zu verwendenden freigabebedürftigen Softwareprogramme.
In einer vorteilhaften Ausgestaltung des Systems ist das System ein verteiltes System mit mindestens zwei Automatisierungskomponenten, welche miteinander datentechnisch vernetzt sind, wobei auf einer der Automatisierungskomponenten das freigabebedürftige Softwareprogramm ablauffähig ist und der Lizenzschlüsselhandhaber anager auf dieser bzw. auf einer weiteren Automatisierungskomponente ablauffähig ist und mit dem Lizenzschlüsselhandhaber zumindest einer weiteren Automatisierungskomponente datentechnisch verbunden ist.
Der Lizenzschlüsselhandhabermanager ist also in einem System auf einer gleichen Hardwareplattform oder auch auf einer anderen Hardwareplattform wie der Lizenzschlüsselhandhaber betreibbar. Dies erhöht die Flexibilität.
Die Flexibilität ist auch durch eine Floating-Lizenz erhöhbar. Der Lizenzschlüsselhandhabermanager weist dabei z.B. den Lizenzschlüssel einmal dem einen Lizenzschlüsselhandhaber und ein anderes mal dem anderen Lizenzschlüsselhandhaber zu.
Der Lizenzschlüsselhandhaber ist auch derart ausbildbar, dass dieser zu prüfende freigabebedürftige Software nicht nur auf der Automatisierungskomponente sucht, auf welcher der Lizenzschlüsselhandhaber abläuft, sondern auch auf zumindest einer mit dieser Automatisierungskomponente datentechnisch verbundener Automatisierungskomponente, auf der freigabebedürftige Software ablauffähig ist bzw. dort abläuft.
In einer weiteren vorteilhaften Ausgestaltung des Systems sind der Lizenzschlüsselhandhabermanager und der Lizenzschlüsselhandhaber ineinander in ein Softwareprogramm integriert. Ein derartiges System kennzeichnet sich folglich durch einen erweiterten Lizenzschlüsselhandhaber, welcher dazu ertüchtigt ist verschiedene Typen von Lizenzschlüsseln zu handhaben, d.h. eine Prüfung der Lizenzschlüssel vorzunehmen.
Das erfindungsgemäße System weist in einer vorteilhaften Ausgestaltung zumindest eine Automatisierungskomponente bzw. eine Automatisierungskomponente auf, wobei die Automatisie¬ rungskomponente eine Runtime-Software aufweist. Gerade auch bei Runtime-Software ist die Lizenzierung von Bedeutung.
Die Aufgabe der Erfindung wird weiterhin durch ein Verfahren zur Ausführungsfreigabe zumindest eines freigabebedürftigen Softwareprogrammes gelöst. Bei dem Verfahren zur Ausführungs- freigäbe zumindest eines freigabebedürftigen und über einen Lizenzschlüssel freigebbaren Softwareprogrammes, erkennt ein Lizenzschlüsselhandhabermanager zumindest einen von optional zumindest zwei mit diesem verbundenen Lizenzschlüsselhandha- bern.
Der Lizenzschlüsselhandhabermanager kann dadurch eine Schnittstelle bzw. eine Art Knotenpunkt zwischen mehreren Li- zenzschlüsselhandhabern bilden. Diese Schnittstellenfunktion wird insbesondere dadurch unterstützt, dass der Lizenzschlüs- selhandhabermanager eine Bedienoberfläche anbietet, welche die Bedienung verschiedener Lizenzschlüsselhandhaber unterschiedlichen Typs unterstützt.
Zur Ausführungsfreigabe eines freigabebedürftigen Softwa- reprogrammes dienen beispielsweise die folgenden Schritte: a) der Lizenzschlüsselhandhabermanager übergibt den Lizenzschlussel an einen Lizenzschlüsselspeicher eines erkannten Lizenzschlüsselhandhabers und der Lizenzschlüsselhandhaber erhält den Lizenzschlüssel aus dem Lizenzschlüsselspeicher bzw. b) der Lizenzschlüsselhandhabermanager übergibt den Lizenzschlussel an einen Lizensschlüsselserver, der den Lizenzschlüssel zur Speicherung an den Lizenzschlüsselspeicher weiterleitet bzw. den Lizenzschlüssel dem Lizenzschlüssel- handhaber zuführt oder
c) der Lizenzschlüsselhandhabermanager übergibt den Lizenzschlüssel an den Lizenzschlüsselhandhaber, wobei der Lizenzschlüsselhandhaber den Lizenzschlüssel im Lizenzschlüsselspeicher ablegt und wobei die Ausführungsfreigäbe des Softwareprogrammes durch eine Abfrage bzw. Kontrolle des Lizenzschlüssels bei dem Lizenzschlüsselhandhaber durch das freigabebedürftige Softwareprogramm erfolgt.
Für die Ausführungsfreigäbe der Software ist eine zeitliche enge Verknüpfung mit der Übergabe des Lizenzschlüssels an den Lizenzschlüsselhandhaber nicht unbedingt erforderlich. Die Übergabe der Lizenzschlüssel ist beispielsweise innerhalb einer Inbetriebsetzungsmaßnahme einer Automatisierungskomponen- te durchführbar, wohingegen die Ausführungsfreigabe beispielsweise zur Laufzeit der Automatisierungskomponente bzw. der auf dieser ablaufenden Software erfolgt.
Daraus ergeben sich die bereits obig beschriebenen Vorteile. Der Lizenzschlüssel ist sowohl als Dateninformation als auch als eigenes Softwareprogramm ausbildbar.
Der Lizenzschlüsselserver ist ein Mittel zur Bereitstellung von Informationen bzw. Daten, welche von dem Server bei- spielsweise durch einen Lizenzhandhaber abfragbar sind.
In einer vorteilhaften Ausgestaltung des Verfahrens wird durch den Lizenzschlüssel ein freigabebedürftiges Softwareprogramm, welches in einem embedded Runtimesystem eines in- dustriellen Automatisierungssystems bzw. eines Antriebssystems, welches insbesondere zumindest eine Automatisierungskomponente aufweist, abläuft, freigegeben.
In einer weiteren vorteilhaften Ausgestaltung benötigen die freigabebedürftigen Softwareprogramme Lizenzschlüssel unterschiedlichen Typs auf, wobei der Lizenzschlüsselhandhaberma- nager den Lizenzschlüssel des einen Typs an einen Lizenz- schlüsselhandhaber diesen selben Typ übergibt. Zur Freigab des freigabebedürftigen Softwareprogramms benötigt dieses eine Freigabe d.h. eine PrüfInformation vom Lizenzschlüsselhandhaber .
Vorteilhaft wir einem Lizenzschlüsselhandhaber ein Lizenzschlüsselspeicher zugeordnet wonach der Lizenzschlüsselhand- habermanager den Lizenzschlüssel an den Lizenzschlüsselspeicher insbesondere direkt übergibt.
In einer weiteren Ausgestaltung des Verfahrens ist einem Li- zenszschlüsselhandhaber ein Lizenzschlüsselspeicher zugeordnet wobei der Lizenzschlüsselhandhaber den Lizenzschlüssel im Lizenzschlüsselspeicher speichert bzw. den Lizenzschlüssel aus dem Lizenzschlüsselspeicher ausliest.
Vorteilhafter weise sind einem Lizenzschlüsselhandhabermana- ger mehrere Lizenzschlüsselhandhaber unterschiedlichen Typs, welche Lizenzschlüssel unterschiedlichen Typs handhaben, zugeordnet sind und vom Lizenzschlüsslehandhabermanager der Typ des Lizenzschlüsselhandhabers erkannt wird.
Ist dem Lizenzschlüsslenhandhabermanager ein Lizenzschlüsseltyp unbekannt so wird der Lizenzschlüsselhandhabermanager durch Module zum Managen eines Lizenzschlüsselhandhabers neu- en Typs ergänzt. Lizenzschlüssel gleichen Typs sind beispielsweise unterschiedliche Lizenzschlüssel die jedoch mittels des selben Algorithmusses erstellt wurden.
Die Erfindung betrifft weiterhin auch ein Automatisierungssystem zur Durchführung des oben beschriebenen Verfahrens. Dabei sind die folgenden Ausprägungen hervorzuheben:
• Eine Lizenzschlüsselbedürftige Software fragt den Lizenzschlüsselhandhaber ob und unter welchen Bedingungen sie betrieben werden kann. In Abhängigkeit der durch die Lizenzschlüssel repräsentierten Lizenzsituation kann der Lizenzschlüsselhandhaber der Applikation z.B. das Recht zum Betrieb eingeschränkt oder uneingeschränkt gewähren oder verwehren.
• Lizenzschlüssel können über den Lizenzschlüsselhandhaberma- nager und die Lizenzschlüsselhandhaber in die Lizenzschlüsselspeicher Systemkomponenten eingebracht werden. • Zur Laufzeit des Automatisierungssystems kann ein Li- zenzschlüsselhandhabermanager bei Bedarf bei einem Lizenzschlüssel-Server nach Lizenzschlüssel fragen.
• Die Lizenschlüsselhandhaber stellen dem Lizenzschlüssel- handhabermanager den Lizenzbedarf zur Verfügung. • Die Lizenschlüsselhandhaber geben dem Lizenzschlüsselhand- habermanager auf Anfrage den Lizenzschlüssel Bedarf der Systemkomponente bekannt.
• Download vom Lizenzschlüssel aus einem Web License Interface des Lizenzanbieters. Lizenzschlüssel können über ein Web License Interface mit Hilfe des Lizenzschlüsselhandha- bermanagers aus dem Internet geladen werden.
• Download des ermittelten Lizenzschlüssels Bedarfs. Mit Hilfe des Lizenzschlüsselhandhabermanagers der Lizenzschlüssel Bedarfsermittlung und des Lizenzschlüssels Downloads kann automatisch der ermittelte Lizenzschlüssel Bedarf aus dem Internet geladen werden.
• Mit Hilfe des Lizenzschlüsselhandhabermanagers und einer im Web License Interface integrierten Bestell- und Lieferabwicklung können Lizenzschlüssel auch aus dem Lizenzschlüs- selhandhabermanager heraus bestellt werden. • Mit Hilfe des Lizenzschlüsselhandhabermanagers, der Lizenzschlüssel-Bedarfsermittlung und der Lizenzschlüssel
Bestellung kann automatisch der ermittelte Bedarf bestellt werden.
• Die Kommunikation zu spezifischen Lizenschlüsselhandhaber vom Lizenzschlüsselhandhabermanager aus kann über für diese Lizenschlüsselhandhaber spezifische Plugins im Li- zenzschlüsselhandhabermanager erfolgen. Diese Plugins können im Nachhinein zum Lizenzschlüsselhandhabermanager hinzugefügt werden.
• Wird aus einem Engineeringssystem (Runtime-Manager, z.B. S7-Manager, ... ) eine Automatisierungskomponente projektiert, parametriert, konfiguriert bzw. programmiert können mit dieser Projektierungsinformation sofort über den Li- zenzschlüsselhandhabermanager notwendige Lizenzmanagement Aufgaben, wie z.B. Laden von Lizenzschlüsseln in dieser Komponenten angestoßen werden.
• Kann ein Lizenzschlüsselhandhabermanager in einem vernetzten Automatisierungs- und Antriebsverbund nicht direkt mit einem Lizenzschlüsselhandhaber einer Automatisierungsoder Antriebskomponente kommunizieren, so können dazwi- schenliegende Automatisierungs- und Antriebskomponenten diese notwendige Kommunikation weiterleiten.
Im folgenden wird die Erfindung beipielhaft anhand der in den Figuren dargestellten ausführungsbeispiele beschrieben. Es zeigen:
FIG 1 ein erstes System, welches einen Lizenzschlüssel- handhabermanager aufweist, FIG 2 ein zweites System, welches einen Lizenzschlüssel- handhabermanager aufweist,
FIG 3 ein drittes System, welches einen Lizenzschlüssel- handhabermanager aufweist und FIG 4 die Darstellung eines Verfahrens zur Ausführungs- freigabe eines Freigabebedürftigen Softwareprogram- mes.
Die Darstellung gemäß FIG 1 zeigt ein System 1, insbesondere ein Automatisierungssystem bzw. eine Automatisierungskomponente 24. Das System weist neben Hardware, welche in der FIG 1 nicht ausdrücklich dargestellt ist, auch Software auf. Das System 1 weist dabei sowohl ein freies Softwareprogramm 12 auf, welches zur Ausführung keinen Lizenzschlüssel benötigt, wie auch freigabebedürftige Softwareprogramme 13, 14, 15 und 16. Die freigabebedürftigen Softwareprogramme 13, 14, 15 und 16 benötigen zur Freigabe einen Lizenzschlüssel 5, 6', δ" und 7, wobei die Lizenzschlüssel nicht im Softwareprogramm liegen, jedoch die dortige figürliche Darstellung zum Ausdruck bringt, dass ein Lizenzschlüssel einer Software zugeordnet ist. Die Lizenzschlüssel sind von unterschiedlichen Typ, wobei der Typ durch die graphische Darstellung als Kreis, Drei- eck bzw. Stern ausgedruckt ist. Softwareschlüssel 6 gleichen Typs weisen insbesondere auch unterschiedliche Lizenzschlüssel 6' und 6" auf, wobei die Unterschiedlichkeit der Lizenzschlüssel im Falle des durch einen Kreis dargestellten Typs 6 durch eine hälftige Vollfläche bzw. durch eine geviertelte Vollfläche des Kreises dargestellt sind. Die Freigabe der freigabebedürftigten Softwareprogramme 13, 14, 15 und 16 erfolgt mittels Lizenzschlüsselhandhabern 8, 9 und 10. Der Lizenzschlüsselhandhaber 8 handhabt die Lizenzschlüssel 6' und 6 ". Der Lizenzschlüsselhandhaber 9 handhabt den durch ein Dreieck gekennzeichneten Lizenzschlüssel 5 und der Lizenzschlüsselhandhaber 10 handhabt den durch einen Stern gekennzeichneten Lizenzschlussel 7. Die Lizenzschlüsselhandhaber 8, 9 und 10 sind Softwareprogramme, welche in einer datentechnischen Verbindung 28 mit den freigabebedürftigen Softwareprogrammen 13, 14, 15 und 16 stehen. Die datentechnische Verbindung 28 ist eine interne Datenverbindung, wobei dadurch der Datenaustausch zwischen den Softwareelementen Lizenzschlüsselhandhaber 8, 9 und 10 bzw. den Softwareprogrammen 13, 14, 15 und 16 ausgedrückt wird. Die Lizenzschlüssel- handhaber 8, 9 und 10 sind jeweils für einen Typ als Lizenzschlüssels 5, 6', 6", 7 vorgesehen. Die Lizenzschlüsselhandhaber 8, 9 und 10 sind in einer datentechnischen Verbindung
28 mit einem Lizenzschlüsselspeicher 30, 31. Die Lizenzschlüsselspeicher 30, 31 sind so ausbildbar, dass ein Lizenzschlüsselspeicher 31 z.B. nur einen Typ eines Lizenzschlüssels 7 speichert. Eine andere Ausführung des Lizenzschlüssel- Speichers 30 ermöglicht die Speicherung verschiedener Typen von Lizenzschlüsseln 5, β.
Fehlt dem Lizenzschlüsselhanhabermanager 20 Information zum Managen eins Lizenzschlussel Typs, so ist diese Information über den fehlenden Typ durch ein Software-Ergänzungsmodul 35 zuspielbar.
Die Lizenzschlüsselhandhaber 8, 9 und 10 stehen in datentechnischer Verbindung 28, welches durch einen Doppelpfeil ange- zeigt ist, mit einem Lizenzschlüsselhandhabermanager . Der Li- zenzschlüsselhandhabermanager 20 weist Lizenzschlüssel 5, 6, 7 den Lizenzschlüsselhandhabern 8, 9 und 10 zu. Die Lizenzschlüsselhandhaber 8, 9 und 10 sind in der Lage diese Lizenzschlüssel 5, 6, 7 in Lizenzschlüsselspeicher 30, 31 abzu- legen.
In einer vorteilhaften Ausgestaltung erkennt der Lizenz- schlüsselhandhabermanager 20 einen bestimmten Typ eines Lizenzschlüsselhandhabers 8, 9, 10 bzw. den Typ des Lizenz- schlüsseis 5, 6, 7, der durch den Lizenzschlüsselhandhaber 8, 9, 10 gehandhabt wird. Der Lizenzschlüsselhandhaber 8, 9, 10 dient zur Freigabe der Softwareprogramme 13, 14, 15 und 16. Die Lizenzschlüssel 5, 6, 7 sind den Lizenzschlüsselhandha- bermanager 20 zuspielbar. Die in der FIG 1 nicht dargestellte Zuspielung erfolgt beispielsweise durch einen Datenträger wie eine Speicherkarte, eine Kommunikationsverbindung über ein Internet, ein Intranet oder ein Ethernet oder ähnliches. Mittels einer Datenverbindung 29 (z.B. ein Kabel oder eine Funkverbindung) ist ein IBN-Tool 46 mit der Automatisierungskom- ponente 24 verbindbar. Das IBN-Tool ist beispielsweise eine Inbetriebnahme-Software .
Die Darstellung gemäß FIG 2 zeigt ein System 2, welches eine Automatisierungskomponente 24 und eine Automatisierungskomponente 25 aufweist. Die Automatisierungskomponente 24 ist beispielsweise ein PC, auf welcher eine Steuerung bzw. eine Re- gelung bzw. eine Bewegungssoftware ablauffähig ist. Die Automatisierungskomponente 24 lehnt sich in ihrer Darstellung an das in FIG 1 dargestellte System 1 an. Im Unterschied zur FIG 1 weist die Automatisierungskomponente 24 zur einfacheren Darstellung lediglich einen Lizenzschlüssel 6 und eine frei- gabebedürftiges Softwareprogramm 14 auf. Die freigabebedürftige Software ist beispielsweise auch ein Runtime-Software. Über ein in der FIG 2 nicht dargestelltes Engineeringssystem ist beispielsweise der Lizenzhandhabermanager aufrufbar. Im Engineeringssystem ist vorteilhaft der Aufbau bzw. die Struk- tur eines Automatisierungssystems welches zumindest Software aber auch Hardware aufweisen kann, generierbar bzw. bekannt. Diese Information lässt sich zur Ermittlung möglicher benötigter Lizenzschlüssel nutzen, so dass vorteilhafter Weise der Lizenzschlüsselhandhabermanager über das Engineerings- system bedienbar ist. Das Engineeringssystem ist beispielsweise in einem PC integrierbar.
Die Automatisierungskomponente 25 ist beispielsweise auch als Personal-Computer PC ausgeführt. Die Automatisierungskompo- nente 25 weist einen Lizenzschlüsselhandhaber anager 20 auf, welcher in datentechnischer Verbindung 28 mit einem Lizenz- schlüsselserver 23 steht. Der Lizenzschlüsselserver dient zur Verwaltung von Lizenzschlüsseln, die ihm beispielsweise auch durch einen Lizenzschlüsselmanager 20 einer weiteren Automa- tisierungskomponente 24 bzw. durch einen Lizenzschlüsselhandhaber 8 übermittelt werden bzw. von diesem mit Lizenzschlüsseln 6 versorgt werden. Der Lizenzschlüsselserver 23 ist derart ausgeführt, dass dieser über eine datentechnische Verbindung 28 Lizenzschlüssel 6 auf einen Lizenzschlüsselspeicher 30 speichert. Der Lizenzschlüsselspeicher 30 ist auch als eine von mehreren Komponenten des Lizenzschlüsselservers 23 ausführbar. Die datentechnische Verbindung 28 zwischen den
Automatisierungskomponenten 24 und 25 gelingt beispielsweise durch eine Datenverbindung 29. Eine Datenverbindung 29 ist beispielsweise durch eine Kabelverbindung, eine Funkverbindung oder eine Infrarotverbindung ausführbar.
Die Darstellung gemäß FIG 3 zeigt eine Erweiterung der FIG 2, wobei das System 3 gemäß FIG 3 weitere zusätzliche Automatisierungskomponenten 26 und 27 aufweist, welche miteinander mittels Datenverbindungen 29 vernetzt sind. Die Automatisie- rungskompenente 26 ist beipielsweise ein Embedded Runtime
System. Dieses Embedded Runtime System weist eine freigabebedürftige Runtimesoftware auf. Die Freigabe ist mittels eines Lizensschlüsselhandhabers 8 und eines Lizensschlüsselspei- chers 30 erziebar. Der Lizenzschlüsselspeicher 30 weist in der Automatisierungskomponente 26 lediglich einen Lizenzschlüssel 6 auf. Der Lizenzschlüsselspeicher 8 ist beispielsweise auch als ein in den Lizenzschlüsselhandhaber integrierter Speicherpaltz für einen oder mehrere Lizenzschlüssel ausführbar, wobei dies in der Figur 3 nicht dargestellt ist.
Mittel der datentechnischen Verbindung 28 ist der Lizenzschlüsselhandhaber 8 mit dem Lizenzschlüsslehandhaberma- nager 10 der Automatisierungskomponente 24 verbunden. Über den Lizenzschlüsselhandhaber 8 der Automatisierungskomponente 26 ist beispielsweise auch ein weiterer Lizenzschlüsselhandhaber 8 einer Automtisierungskomponente 27 ansprechbar.
In einer vorteilhaften Ausgestaltung ist die Automatisierungskomponente 24 mit einem Datennetz 40 verbunden. Das Da- tennetz ist beispielsweise ein Internet, ein Intranet, ein Local-Area-Network (LAN) , ... . Auf diese Weise sind dem Lizenzhandhabermanager 20 beispielsweise Lizenzschlüssel übermittelbar. Ist dem Lizenzschlüsselhandhabermanager 20 ein Typ eines Lizenzschlüssels unbekannt, so ist auch auf diese Weise über das Datennetz der Lizenzschlüsselhandhabermanager 20 durch zumindest ein Modul zum Managen eines Lizenschlüssel- handhabers des neuen Typs ergänzbar.
Das System 3 ist beispielsweise ein Automatisierungs- bzw. ein Antriebssystem. Bei diesem durchgängigen Lizenzmanagement für ein derartiges Automatisierungs- bzw. Antriebssysteme werden Lizenzschlüssel 5,6,7 elektronisch repräsentiert. Der Lizenzschlüsselhandhabermanager 20 weist Schnittstellen zu den Lizenzschlüsselhandhabern 8 auf, welche unterschiedliche Ausprägungen aufweisen können. Für PC-Systeme kann der Lizenzschlüsselhandhaber einheitlich für alle PC's ausgeprägt sein. Für unterschiedliche embedded Runtime-Systeme, wie
PLC's, Werkzeugmaschinen-Steuerungen oder Antriebe, können diese jeweils spezifisch nach den Anforderungen ausgebildet sein. Auch die Kommunikation vom Lizenzschlüsselhandhaberma- nager 20 zu den Lizenzschlüsselhandhabern 8 kann unterschied- lieh ausgeprägt sein. Zwischen PC-Komponenten kann dies auf Standard-PC-Kommunikationstechniken basieren, zu embedded Runtime-Systemen können spezifische Kommunikationstechniken verwendet werden.
Die Darstellung gemäß FIG 4 zeigt beipielshaft Verfahrenschritte zur Ausführungsfreigabe eines Freigabebedürftigen Softwareprogrammes. Zunächst erfolgt eine Erkennung 51 von Lizenzschlüsselhandhabern durch den Lizenzschlüsselhandhaber- manager. Danach erfolgt die Übergabe 53 eines Lizenzschlüs- sels durch den Lizenzschlüsselhandhabermanager an den Lizenzschlüsselhandhaber. Der Lizenzschlüsselhandhaber legt den Lizenzschlüssel in einen Lizenzschlüsselspeicher 55 ab. Eine Ausführungsfreigabe 57 durch den Lizenzschlüsselhandaber wird anschließend durchgeführt. Mittels eines strichlinierten Rückführuδngspfeils 59 sind mögliche Wiederholungen von einem oder mehreren Verfahrensschritten symbolisiert.