CH698536B1 - Textilmaschine und Softwareschutzvorrichtung für eine Textilmaschine. - Google Patents

Textilmaschine und Softwareschutzvorrichtung für eine Textilmaschine. Download PDF

Info

Publication number
CH698536B1
CH698536B1 CH422006A CH422006A CH698536B1 CH 698536 B1 CH698536 B1 CH 698536B1 CH 422006 A CH422006 A CH 422006A CH 422006 A CH422006 A CH 422006A CH 698536 B1 CH698536 B1 CH 698536B1
Authority
CH
Switzerland
Prior art keywords
protection device
data
software
software protection
textile machine
Prior art date
Application number
CH422006A
Other languages
English (en)
Inventor
Heinz Studer
Bernd Bahlmann
Original Assignee
Rieter Agpatente Und Lizenzen
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Rieter Agpatente Und Lizenzen filed Critical Rieter Agpatente Und Lizenzen
Publication of CH698536B1 publication Critical patent/CH698536B1/de

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24155Load, enter program if device acknowledges received password, security signal
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24165Use codes to activate features of controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25205Encrypt communication
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34436Interface circuit build into connector, dongle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45196Textile, embroidery, stitching machine

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Spinning Or Twisting Of Yarns (AREA)
  • Programmable Controllers (AREA)

Abstract

Vorgeschlagen wird eine Softwareschutzvorrichtung für eine Textilmaschine (10) mit einer programmierbaren Steuerung (28), einem Datenspeicher (102) zur Aufnahme von Softwarefreigabedaten und einer Datenschnittstelle (104), welche zur Datenübertragung zwischen dem Datenspeicher (102) und der Steuerung (28) der Textilmaschine (10) an die Steuerung (28) der Textilmaschine (10) anbindbar ist. Weiterhin vorgeschlagen wird eine Textilmaschine mit einer programmierbaren Steuerung (28), die geeignet ist, anhand mindestens einer vorgebbaren Softwareoption zu arbeiten, wobei sie zum Datenaustausch mit einer Softwareschutzvorrichtung (100) ausgebildet ist, wobei die Softwareschutzvorrichtung (100) einen Datenspeicher (102) aufweist und im Datenspeicher (102) Softwarefreigabedaten gespeichert werden können, und wobei die Steuerung (28) derart programmiert ist, dass sie die genannte Softwareoption erst dann zur Geltung bringen kann, wenn sie für diese Softwareoption entsprechende Softwarefreigabedaten aus dem Datenspeicher (102) erhalten hat. Ebenso wird ein Steuerungsverfahren für eine Textilmaschine (10) vorgeschlagen.

Description


  [0001]    Die Erfindung betrifft eine Softwareschutzvorrichtung für eine Textilmaschine sowie eine Textilmaschine, welche zum Zusammenwirken mit einer derartigen Vorrichtung ausgebildet ist. Die Vorrichtung kann als multifunktionales Gerät konzipiert bzw. realisiert werden, d.h. sie kann zusätzlich mit Software bzw. Vorrichtungen versehen werden, welche die Erfüllung anderer Anforderungen, z. B. die Speicherung bzw. Wiedergabe von maschinenspezifischen Daten, ermöglicht.

Stand der Technik

  

[0002]    Praktisch jede Textilmaschine wird heute als eine Maschine mit einer programmierbaren Steuerung hergestellt, d.h. die Maschine ist mit mindestens einem (normalerweise mit mehreren) Rechner versehen und braucht Software, um diese(n) Rechner betreiben zu können. Mit der fortschreitenden Entwicklung dieser "intelligenten" Maschinen steigen ständig die Anforderungen an die Software, insbesondere an die Software, die eigens für die Maschine vorgesehen ist und vom Maschinenhersteller durch Eigenentwicklung und/oder Auftragsentwicklung ("proprietary" Software) zur Verfügung gestellt werden muss. Damit steigt auch die Versuchung, derartige Software zu kopieren bzw. ohne Befugnisse zu verwenden.

  

[0003]    Diese Situation ist in der Software-Industrie allgemein schon lang bekannt und es sind für grössere Computer-Netzwerke Konzepte entwickelt worden, mittels eines sogenannten "Dongles", die nicht-autorisierte (Mit-)Benutzung zu unterbinden. Es sind aber keine Produkte käuflich erhältlich, die für den Softwareschutz in einzelnen industriellen Produkten, wie Textilmaschinen, konzipiert bzw. geeignet sind.

  

[0004]    Weiter ist es bekannt, gewisse, einer bestimmten Maschine zugeordneten (Kennzeichnungs-)Daten in einem speziell dafür vorgesehenen Speicher abrufbar abzulegen. In der EP-A-1 194 887 ist z.B. vorgeschlagen worden, ein traditionelles Typenschild (Träger für schriftliche und/oder grafische Informationen) mit einer elektronischen Speichereinrichtung zusammenzufassen. Zu diesem Zweck soll das Typenschild mit einem Speicherchip versehen werden, welcher insbesondere dazu benutzt werden soll, Informationen über den Betrieb der Maschine nach deren Fertigstellung zu speichern, wie z.B. Laufzeit, Drehzahlen und Belastung.

  

[0005]    Bei bekannten Textilmaschinen, bei denen maschinenspezifische Daten, wie etwa Seriennummer, Konfiguration, Softwareversion und/oder Betriebsstunden elektronisch gespeichert werden, erfolgt die Speicherung innerhalb der Steuerung bzw. einer Komponente der Steuerung der Textilmaschine. Bei einem Defekt der Steuerung sind diese maschinenspezifischen Daten häufig nicht mehr auslesbar. Nach einer Reparatur bzw. einem Austausch der Steuerung ist es dann sehr aufwendig, diese maschinenspezifischen Daten zu erneuern.

  

[0006]    Weiterhin ist es üblich, Textilmaschinen mit Betriebsstundenzählern zu versehen. Die Betriebszeit kann beispielsweise als Grundlage für Wartungspläne oder, falls die Textilmaschine vermietet wird, für die Berechnung von Mietpreisen dienen. Die bisher bekannten, vorwiegend elektrisch oder mechanisch ausgebildeten Betriebsstundenzähler sind jedoch verhältnismässig leicht manipulierbar, da lediglich die Zufuhr des der Betriebsstundenzählung zugrunde liegende Eingangssignal des Betriebsstundenzählers unterbrochen werden muss.

  

[0007]    Aufgabe der vorliegenden Erfindung ist es, die genannten Nachteile des Standes der Technik zu beseitigen. Insbesondere soll ein wirksamer Schutz der Software einer Textilmaschine erzielt werden. In bevorzugten Ausführungen der vorliegenden Erfindung werden elektronische "Typenschild"-Konzepte mit der vorerwähnten Softwareschutz-Funktion vorteilhaft kombiniert. Dabei soll eine steuerungsunabhängige Abspeicherung maschinenspezifischer Daten in Kombination mit einer Softwareschutzvorrichtung vorgeschlagen werden. Aufgabe einer weiteren Ausführungsform der vorliegenden Erfindung ist es, in Verbindung mit einer Softwareschutzvorrichtung eine verbesserte Betriebsstundenzählung bei einer Textilmaschine vorzuschlagen.

  

[0008]    Die Aufgabe wird gelöst durch eine Softwareschutzvorrichtung mit den Merkmalen des Patentanspruches 1, eine Textilmaschine mit den Merkmalen des Anspruches 22 und durch ein Steuerungsverfahren mit den Merkmalen des Anspruches 29.

  

[0009]    Die erfindungsgemässe Softwareschutzvorrichtung für eine Textilmaschine mit einer programmierbaren Steuerung weist einen Datenspeicher zur Aufnahme von Softwarefreigabedaten und eine Datenschnittstelle auf, welche zur Datenübertragung zwischen dem Datenspeicher und der Steuerung der Textilmaschine an die Steuerung der Textilmaschine verwendbar ist. Softwarefreigabedaten sind Daten, welche von einer programmierbaren Steuerung zum Aufrufen einer bestimmten Software erforderlich sind. Sofern die erfindungsgemässe Softwareschutzvorrichtung an die betreffende Textilmaschine angebunden ist, können die in dem Datenspeicher hinterlegten bzw. abgespeicherten Softwarefreigabedaten an die Steuerung übertragen werden, welche dann in der Lage ist, eine bestimmte Softwareoption aufzurufen bzw. zu starten.

  

[0010]    Mittels der erfindungsgemässen Softwareschutzvorrichtung ist es möglich, verschiedene Programmversionen oder verschiedene Programmkomponenten der Textilmaschine selektiv freizugeben. Hierzu ist es lediglich erforderlich, im Datenspeicher selektive Softwarefreigabedaten zu hinterlegen. Die erfindungsgemässe Softwareschutzvorrichtung kann grundsätzlich in Verbindung mit jeder Textilmaschine eingesetzt werden, welche eine programmierbare Steuerung aufweist. Hierbei ist es unerheblich, ob die Steuerung zentral oder dezentral mit mehreren Steuerungskomponenten ausgebildet ist. Wesentlich ist lediglich, dass die Schutzvorrichtung und die Steuerung der Textilmaschine aufeinander abgestimmt sind.

  

[0011]    Vorteilhafterweise weist die Softwareschutzvorrichtung einen Mikrocontroller zur Steuerung der Datenübertragung und/oder zur Verarbeitung von ein- oder abgehenden Daten auf. Mittels eines Mikrocontrollers lassen sich auf kostengünstige und einfache Weise eine Vielzahl von Funktionen der Softwareschutzvorrichtung verwirklichen. Der Mikrocontroller wird durch eine eigene Software der Softwareschutzvorrichtung gesteuert, welche derart gestaltet ist, dass es einem Dritten unmöglich ist, einen funktionstüchtigen Nachbau der Softwareschutzvorrichtung herzustellen. Auch ist die Software so zu gestalten, dass es einem Dritten unmöglich ist, hinterlegte Softwarefreigabedaten auszulesen.

  

[0012]    Dabei ist es vorteilhaft, wenn die Software, welche die Mikrocontroller steuert, in einem OTP-Speicher abgelegt ist. Die Verwendung eines nur einmal beschreibbaren OTP-Speichers stellt sicher, dass Dritte in unbefugter Weise eine eigene Software in die Softwareschutzvorrichtung einspielen, welche einen Missbrauch, insbesondere das Auslesen der hinterlegten Softwarefreigabedaten, ermöglichen könnte.

  

[0013]    Vorteilhafterweise sind die Softwarefreigabedaten und wenn gewünscht auch weitere Daten in dem Speicher der Softwareschutzvorrichtung verschlüsselt gespeichert bzw. hinterlegt. In diesem Fall können diese Daten auch dann nicht durch unberechtigte Dritte in Besitz gebracht werden, wenn diese den Speicher aus der Softwareschutzvorrichtung herausnehmen und durch ein entsprechendes Werkzeug auslesen.

  

[0014]    Zur weiteren Verbesserung des Softwareschutzes ist es vorteilhaft, wenn der Mikrocontroller zur Verschlüsselung abgehender Daten, insbesondere von Freigabedaten und/oder zur Entschlüsselung verschlüsselt eingehender Daten ausgebildet ist. So ist es nicht möglich, dass Dritte den Datenverkehr zwischen der Softwareschutzvorrichtung und der Textilmaschine zum Zwecke des Missbrauchs analysieren können. Prinzipiell kann jedes bekannte Verschlüsselungsverfahren zum Einsatz kommen, wesentlich ist lediglich, dass die Verschlüsselungsverfahren von Textilmaschinen und Softwareschutzvorrichtung kompatibel sind.

  

[0015]    Wenn es gewünscht ist, die Softwareschutzvorrichtung in einer räumlichen Distanz von der jeweils betroffenen Textilmaschine anzuordnen, beispielsweise also in einer Anlagenzentrale, von der aus mehrere Textilmaschinen überwacht werden, so kann die Softwareschutzvorrichtung so ausgebildet sein, dass sie über eine Punkt-zu-Punkt-Verbindung an die Textilmaschine anbindbar ist. Hierzu kann die Datenschnittstelle der Softwareschutzvorrichtung beispielsweise als Modem oder als ISDN-Schnittstelle ausgebildet sein.

  

[0016]    Vorteilhafterweise kann die Anbindung über ein vorhandenes Datennetz erfolgen. Hierzu ist prinzipiell jedes Nahverkehrs- oder Weitverkehrsnetzwerk geeignet, wobei die Softwareschutzvorrichtung dann mit einer an das jeweilige Datennetz angepassten Datenschnittstelle ausgerüstet ist. In besonders vorteilhafter Weiterbildung ist die Softwareschutzvorrichtung derart ausgebildet, dass sie an eine intern bestehende Datenverbindung der Textilmaschine anbindbar ist. Hierbei ist insbesondere an einen Maschinenbus zu denken. Die Anbindung kann dann an einem beliebigen Punkt der Textilmaschine erfolgen, an dem der Maschinenbus zugänglich ist.

  

[0017]    Wenn der Maschinenbus der Textilmaschine ein CAN-Bus ist, so ist es besonders vorteilhaft, wenn der Mikrocontroller der Softwareschutzvorrichtung einen integrierten CAN-Controller aufweist und die Datenschnittstelle ein CAN-Treiber ist. In diesem Fall kann die Datenverbindung zwischen Steuerung der Textilmaschine und der Softwareschutzvorrichtung in besonders einfacher und kostengünstiger Weise realisiert werden.

  

[0018]    Vorteilhaft hierbei ist es, wenn die Datenschnittstelle zur galvanisch getrennten Einbindung in die Datenverbindung der Textilmaschine ausgebildet ist. Hierdurch können Probleme durch ein unterschiedliches elektrisches Potenzial zwischen Softwareschutzvorrichtung und Textilmaschine vermieden werden.

  

[0019]    Grundsätzlich kann jeder bekannte Speichertyp zur Speicherung der Softwarefreigabedaten verwendet werden. Besonders vorteilhaft ist es jedoch, wenn ein nicht flüchtiger Speicher, insbesondere ein serieller FRAM verwendet ist. Ein FRAM (ferromagnetischer RAM) eignet sich insbesondere zur sicheren Langzeitspeicherung von Daten, da er zur Speicherung von Daten keine Energieversorgung benötigt, also nicht flüchtig ist.

  

[0020]    Vorteilhafterweise sind der Datenspeicher, der Mikrocontroller und die Datenschnittstelle auf einer gemeinsamen Platine angeordnet. Hierdurch lässt sich eine besonders kompakte Bauform realisieren. Auch wird so eine erhöhte mechanische Stabilität der Softwareschutzvorrichtung gewährleistet.

  

[0021]    Weiterhin ist es vorteilhaft, wenn ein Gehäuse mit Befestigungsmitteln zum Anbringen der Softwareschutzvorrichtung an der Textilmaschine vorgesehen ist. Das Gehäuse schützt die Elektronik der Softwareschutzvorrichtung vor äusseren Einflüssen, welche beim bestimmungsgemässen Gebrauch der Softwareschutzvorrichtung auftreten. Weiterhin bietet das Gehäuse einen gewissen Schutz vor Manipulationsversuchen Dritter. Zum Schutz der Softwareschutzvorrichtung kann das Gehäuse so ausgeführt sein, dass bei einem Öffnungsversuch die Softwareschutzvorrichtung zerstört wird. Zum selben Zwecke ist es möglich, die Elektronik im Inneren des Gehäuses zu vergiessen. Hierzu kann beispielsweise ein Giessharz verwendet werden.

  

[0022]    Häufig wird es von Vorteil sein, die Softwareschutzvorrichtung in einem Steuerungsschrank der jeweiligen Textilmaschine anzuordnen. Dort kann die Softwareschutzvorrichtung an einer im Regelfall vorhandenen Hutschiene angeordnet werden. Dazu ist es von Vorteil, wenn die Befestigungsmittel des Gehäuses der Softwareschutzvorrichtung zur Montage an einer solchen Hutschiene ausgebildet sind.

  

[0023]    Zur Versorgung der Elektronik der Softwareschutzeinrichtung kann diese ein Netzteil aufweisen, welches beispielsweise über eine Versorgungsleitung an ein Energieversorgungsnetz der Textilmaschine anschliessbar ist. Hierbei dient das Netzteil insbesondere zur Anpassung einer bereitgestellten elektrischen Spannung an die erforderliche Eingangsspannung der Softwareschutzvorrichtung.

  

[0024]    Vorteilhafterweise ist dem Netzteil ein Überwachungsmodul zugeordnet, welches beispielsweise das Anliegen der externen Spannung und/oder die Funktion des Netzteils überwacht.

  

[0025]    Weiterhin ist es vorteilhaft, wenn ein Mittel zur Anzeige von Betriebszuständen der Softwareschutzvorrichtung vorgesehen ist. Dieses Mittel, beispielsweise eine Leuchtdiode, kann beispielsweise Funktionszustände der Datenschnittstelle oder des Netzteiles anzeigen. Damit ist eine einfache Überwachungsmöglichkeit der Funktionen der Softwareschutzvorrichtung und somit eine Möglichkeit der schnellen Fehlerdiagnose gegeben.

  

[0026]    Auch kann vorgesehen sein, dass Mittel zur Anpassung der Softwareschutzvorrichtung an physikalische Parameter der Textilmaschine vorgesehen sind. In Betracht kommen insbesondere Jumper, DIP-Schalter oder Lötbrücken. Damit ist es möglich, baugleiche Softwareschutzvorrichtungen an unterschiedliche Textilmaschinen anzupassen. So kann beispielsweise die Softwareschutzvorrichtung an die Baudrate der Datenverbindung der Textilmaschine ohne Eingriff in die Hardware oder Software angepasst werden.

  

[0027]    Solche Mittel wie Jumper, DIP-Schalter oder Lötbrücken können ebenfalls zur Einstellung eines Parameters, welcher der Steuerung der Datenübertragung zwischen Softwareschutzvorrichtung und der Textilmaschine dient, vorgesehen sein. Beispielsweise kann der Softwareschutzvorrichtung mittels dieser Mittel eine Bus- oder Netzwerkadresse zugewiesen werden. Im Falle eines CAN- Busses kann hier ein Identifier eingestellt werden, anhand dessen die Softwareschutzvorrichtung für sie relevante Datenpakete auf dem CAN-Bus erkennt.

  

[0028]    Wenngleich im Regelfall vorgesehen ist, dass eine Schutzvorrichtung für genau eine Textilmaschine vorgesehen ist, so kann es doch von Vorteil sein, wenn eine Softwareschutzvorrichtung zum Zusammenwirken mit mehreren Textilmaschinen ausgebildet ist. So ist es beispielsweise möglich, mit einer einzigen Softwareschutzvorrichtung die Software einer ganzen Produktionslinie, welche aus hintereinander angeordneten Textilmaschinen besteht, zu schützen. Auch ist es denkbar, eine gesamte Anlage mit mehreren parallel angeordneten Produktionslinien zu schützen. In diesem Fall ist die Softwareschutzvorrichtung so auszubilden, dass ein individueller Datenaustausch mit jeder anschliessbaren Textilmaschine möglich ist.

  

[0029]    Besonders vorteilhaft ist es, wenn die Softwareschutzvorrichtung derart ausgebildet ist, dass maschinenspezifische Daten der Textilmaschine hinterlegbar sind. Maschinenspezifische Daten der Textilmaschine sind insbesondere der Maschinentyp, die Maschinenkonfiguration, die Seriennummer und die Softwareversion der Steuerungssoftware der Textilmaschine.

  

[0030]    Daten wie Maschinentyp und Seriennummer sollen im Regelfall während der ganzen Lebenszeit der Textilmaschine erhalten bleiben. Andere Daten wie Maschinenkonfiguration oder Softwareversion können sich hingegen während der Lebenszeit einer Textilmaschine - gegebenenfalls mehrfach - verändern: Zwischen derartigen Veränderungen sollen diese Daten ebenfalls sicher gespeichert werden.

  

[0031]    Die Speicherung dieser maschinenspezifischen Daten in der Softwareschutzvorrichtung bewirkt eine unabhängige Speicherung von der Steuerung der jeweilgen Textilmaschine. Bei einem Fehler in der Steuerung der Textilmaschine bleiben die Daten folglich erhalten. Dabei ist ein Ausfall der Softwareschutzvorrichtung relativ unwahrscheinlich, da diese im Vergleich zur Steuerung einer Textilmaschine eine wesentlich geringere Komplexität aufweist.

  

[0032]    Die Ausbildung der Softwareschutzvorrichtung als externer Speicher für maschinenspezifischen Daten einer Textilmaschine erfordert keine oder nur geringe Anpassungen bzgl. der Hardware der Softwareschutzvorrichtung. Wesentliche Elemente, wie eine Datenschnittstelle zur Anbindung an die betreffende Textilmaschine sowie mindestens ein Speicher sind ohnehin an der Softwareschutzvorrichtung vorhanden und können für die Speicherung der Maschinendaten genutzt werden. Hierzu ist im Allgemeinen lediglich eine Anpassung der Software der Softwareschutzvorrichtung erforderlich. Sofern der Speicher der Softwareschutzvorrichtung zur Speicherung der Softwarefreigabedaten nicht flüchtig ist, können die maschinenspezifischen Daten langfristig und sicher abgelegt werden.

   Denkbar ist jedoch auch, einen flüchtigen Speicher zu verwenden, welcher beispielsweise durch einen Akku mit Spannung versorgt wird, wenn die Softwareschutzvorrichtung vom Netz getrennt ist.

  

[0033]    Die hinterlegten maschinenspezifischen Daten können überdies zur Verbesserung der Softwareschutzfunktion der Vorrichtung verwendet werden. So kann die Vorrichtung beispielsweise so ausgebildet sein, dass in Abhängigkeit von der Seriennummer bestimmte Softwarefreigabedaten abgegeben oder nicht abgegeben werden. Hierdurch kann eine missbräuchliche Verwendung der Softwareschutzvorrichtung wirkungsvoll verhindert werden.

  

[0034]    Weiterhin ist es besonders vorteilhaft, wenn die Softwareschutzvorrichtung alternativ oder zusätzlich zur Berechnung der Betriebsstunden der Textilmaschine ausgebildet ist. Hierzu kann ein Signaleingang an der Softwareschutzvorrichtung vorgesehen sein, der über eine Signalanleitung derart mit der Textilmaschine verbindbar ist, dass an der Softwareschutzvorrichtung ein Betriebssignal anliegt, wenn die Textilmaschine in Betrieb ist. Zur Vermeidung von Manipulationen der Betriebsstundenzählung kann vorgesehen sein, dass Softwarefreigabedaten nur bei anliegendem Betriebssignal abgegeben werden können. Hierdurch kann verhindert werden, dass die Signalleitung des Betriebssignals einfach von der Softwareschutzvorrichtung getrennt wird und damit die Betriebsstundenzählung unterbrochen wird.

   Die ermittelten Betriebsstunden der Textilmaschine können in gleicher Weise wie maschinenspezifische Daten in der Softwareschutzvorrichtung gespeichert werden. Maschinenspezifische Daten und Betriebsstunden können an der Softwareschutzvorrichtung selbst zur Anzeige gebracht werden, vorteilhafterweise können sie jedoch über die Datenschnittstelle an eine Anzeigeeinrichtung der Textilmaschine übertragen und dort zur Anzeige gebracht werden. Ebenso können sie an der Steuerung der Textilmaschine übertragen werden und dort zur Steuerung der Textilmaschine herangezogen werden.

  

[0035]    Um die in der Softwareschutzvorrichtung hinterlegten Daten vor einem unbefugten Auslesen zu schützen, kann vorgesehen sein, dass die Daten passwortgeschützt sind. Dabei kann beispielsweise vorgesehen sein, dass ein entsprechendes Passwort in der Steuerung der Textilmaschine gespeichert ist. Sofern dann Softwarefreigabedaten angefordert werden, so wird das entsprechende Passwort zunächst von der Textilmaschine an die Softwareschutzvorrichtung übermittelt. Diese Übermittlung erfolgt dann vorzugsweise in verschlüsselter Form. Alternativ kann vorgesehen werden, dass geforderte Passwörter durch einen Bediener manuell an der Softwareschutzvorrichtung oder an einer Eingabeeinheit der zugeordneten Textilmaschine eingegeben werden müssen.

  

[0036]    Es ist eine Vielzahl von Situationen denkbar, bei denen es erforderlich ist, eine Softwareschutzvorrichtung umzukonfigurieren. Dies ist beispielsweise bei einer Umkonfigurierung der Textilmaschine in softwaretechnischer oder hardwaretechnischer Hinsicht erforderlich. Ebenso kann es erforderlich sein, die gespeicherten Betriebsstunden an die tatsächlichen Betriebsstunden anzupassen, etwa wenn einer bestehenden Textilmaschine eine neue Softwareschutzvorrichtung zugewiesen werden soll. In solchen Fällen ist es zweckmässig, wenn die entsprechenden Daten im Datenspeicher der Softwareschutzvorrichtung nach Übertragung eines entsprechenden Passwortes veränderbar sind. Eine erforderliche Umkonfigurierung einer Softwareschutzvorrichtung erfolgt vorzugsweise mit einer Konfigurierungseinrichtung, an welche die Softwareschutzvorrichtung anbindbar ist.

   Eine derartige Einrichtung kann beispielsweise in die Steuerung einer Textilmaschine integriert sein. Denkbar ist aber auch, dass ein portabler Rechner, beispielsweise ein Laptop, zur Umkonfigurierung von Softwareschutzvorrichtungen der erfindungsgemässen Art ausgebildet ist.

  

[0037]    Eine Textilmaschine der erfindungsgemässen Art weist eine programmierbare Steuerung auf, welche geeignet ist, anhand mindestens einer vorgebbaren Softwareoption zu arbeiten. Sie ist zum Datenaustausch mit einer Softwareschutzvorrichtung ausgebildet, wobei die Softwareschutzvorrichtung einen Datenspeicher aufweist und im Datenspeicher Softwarefreigabedaten gespeichert werden können. Die Steuerung der Textilmaschine ist derart ausgebildet, dass sie eine Softwareoption erst dann zur Geltung bringen kann, wenn sie für diese Softwareoption entsprechende Softwarefreigabedaten aus dem Datenspeicher der Softwareschutzvorrichtung erhalten hat. Die Softwareschutzvorrichtung mit den gespeicherten Freigabedaten wird dem Betreiber der Textilmaschine von dem Hersteller der Textilmaschine zur Verfügung gestellt.

   Hierdurch ist es dem Hersteller der Textilmaschine möglich, die Nutzung von Softwareoptionen, für welche dem Betreiber der Textilmaschine keine Lizenz eingeräumt wurde, zu unterbinden. Auch entfällt hierdurch ein Anreiz zur unberechtigten Erstellung von Kopien einer Software einer Textilmaschine.

  

[0038]    Besonders vorteilhaft ist die Textilmaschine derart ausgebildet, dass der Datenverkehr zwischen der Textilmaschine und der Softwareschutzvorrichtung verschlüsselt erfolgt. Die Verschlüsselung umfasst insbesondere die Softwarefreigabedaten, ist aber nicht darauf beschränkt. Die Steuerung der Textilmaschine ist zum Verschlüsseln von an die Softwareschutzvorrichtung zu versendenden Daten und zum Auflösen der durch die Softwareschutzvorrichtung verschlüsselt versendeten Daten ausgebildet. Unabhängig vom Übertragungsweg ist so gewährleistet, dass Dritte nicht in den Besitz von Softwarefreigabedaten gelangen können, selbst wenn sie den Datenverkehr zwischen der Textilmaschine unter Softwareschutzvorrichtung überwachen.

  

[0039]    Vorteilhafterweise ist die Steuerung der Textilmaschine derart ausgebildet, dass sie erforderliche Freigabedaten selbständig aus dem Datenspeicher der Softwareschutzvorrichtung anfordert. Vorteilhaft ist es auch, wenn die Steuerung der Textilmaschine zum Umkonfigurieren der Softwareschutzvorrichtung heranziehbar ist. Auf separate Mittel zum Konfigurieren einer Softwareschutzvorrichtung kann dann verzichtet werden.

  

[0040]    Bevorzugt ist weiterhin, dass die Steuerung der Textilmaschine derart ausgelegt bzw. programmiert ist, dass der Aufruf von Softwarefreigabedaten während der Übertragung verschlüsselt ist. Dabei steht der Datenspeicher der Softwareschutzvorrichtung mit einem Mikroprozessor in Verbindung, der zum Auflösen der Verschlüsselung programmiert ist.

  

[0041]    Wenn die Textilmaschine zur internen Datenübertragung während ihres Betriebes mit mindestens einer internen Datenverbindung, insbesondere mit einem Maschinenbus, versehen ist, so ist die Textilmaschine vorteilhafterweise so gestaltet, dass der Datenspeicher der Softwareschutzvorrichtung mit der internen Datenverbindung in Verbindung bringbar ist.

  

[0042]    Dabei kann diese interne Datenverbindung insbesondere ein CAN-Bus sein. Dieser kann vorteilhafterweise zur Datenübertragung zwischen der Steuerung und dem Datenspeicher verwendet werden.

  

[0043]    Um zu verhindern, dass nach der erfolgten Freigabe einer Softwareoption die Softwareschutzvorrichtung von der Textilmaschine getrennt wird und dann in missbräuchlicher Form mit einer anderen Textilmaschine verbunden wird, ist es vorteilhaft, die Steuerung derart auszubilden, dass die Freigabe beispielsweise periodisch wiederholt werden muss. Wird die wiederholte Freigabe nicht durchgeführt, weil beispielsweise die Softwareschutzvorrichtung entfernt wird, kann die Funktion der entsprechenden Softwareoptionen durch die Steuerung der Textilmaschine ausser Kraft gesetzt werden.

  

[0044]    Vorteilhafterweise ist die Textilmaschine derart ausgebildet, dass die Softwareschutzvorrichtung mit der zentralen Maschinensteuerung der Textilmaschine zusammenwirkt. Dabei wird die Anwendungssoftware der Textilmaschine erst dann freigegeben, wenn die zentrale Maschinensteuerung entsprechende Softwarefreigabedaten erhalten halt. In vorteilhafter Weise ist die Textilmaschine zur Übermittlung eines betriebsindizierenden Signals an die Softwareschutzvorrichtung ausgebildet. Hierdurch ist es möglich, die Betriebsstundenerfassung durch die Softwareschutzvorrichtung durchzuführen.

  

[0045]    Ebenfalls ist es von Vorteil, wenn die Textilmaschine zum Auslösen von maschinenspezifischen Daten aus dem Datenspeicher der Softwareschutzvorrichtung ausgebildet ist.

  

[0046]    Ausführungsbeispiele der Erfindung sollen nun anhand der Figuren näher erläutert werden. Es zeigen:
<tb>Fig. 1<sep>eine Kopie der Fig. 1aus DE-A-10 153 457;


  <tb>Fig. 2<sep>eine schematische Darstellung einer ersten Ausführung der Erfindung, wobei diese Darstellung auch zur Erläuterung verschiedener Softwaretypen in einer Textilmaschine verwendet wird;


  <tb>Fig. 3<sep>eine Softwareschutzvorrichtung, welche mit mehreren Textilmaschinen zusammenwirkt.

  

[0047]    Fig. 1 zeigt als schematisches Blockschaltbild die Kommunikationsstruktur einer Rotorspinnmaschine mit einer Vielzahl von Spinnstellen ("Längsteilmaschine"), wobei die Rotorspinnmaschine hier grundsätzlich bloss als Beispiel für eine Textilmaschine mit einer programmierbaren Steuerung dient. Praktisch alle Textilmaschinen, insbesondere
Ringspinnmaschinen z.B. gemäss EP-B-832 997
Luftspinnmaschinen
Strecken z.B. gemäss DE-A-10 153 999 und andere 
Faserverarbeitungsmaschinen der Spinnereivorbereitung
Spulautomaten z. B. gemäss DE-A-19 907 684 weisen heutzutage eine derartige Steuerung auf, wobei auch diese Liste keineswegs vollständig zu verstehen ist.

  

[0048]    Die Rotorspinnmaschine 10 in der Fig. 1hat eine zentrale Maschinensteuerung 20, die über eine externe Kommunikationsverbindung 11 mit einer Anlagesteuerung 12 in Verbindung steht. Auf die Anlagesteuerung 12 wird hier nicht näher eingegangen. Die Maschinensteuerung 20 steuert und überwacht die Produktion an der Spinnmaschine 10. Über eine interne Kommunikationsverbindung 21 ist die Maschinensteuerung 20 mit einem Bus-Verteiler 22 verbunden. Der Bus-Verteiler 22 treibt einen Maschinen-Bus 25 und übernimmt zur Datenkommunikation unter anderem Router-Funktionen. Zum Daten-Austausch mit dem Bus-Verteiler 22 ist ein Anspinnroboter 24 über eine Kommunikationsleitung 23 mit dem Maschinen-Bus 25 verbunden, wobei als Alternative eine direkte Kommunikationsleitung (gestrichelt angedeutet) zwischen dem Bus-Verteiler 22 und dem Anspinnroboter 24 vorgesehen werden kann.

  

[0049]    Vom Maschinen-Bus 25 zweigt eine Kommunikationsverbindung 27 ab, die den Bus 25 mit einer Triebgestellsteuerung 26 verbindet. Die Triebgestellsteuerung 26 steuert auf an sich bekannte Weise die Hauptantriebe der Spinnmaschine 10. Die Spinnstellen der Maschine 10 sind zu Sektionen 30a-d zusammengefasst, wobei pro Sektion beispielsweise 16 oder 20 Spinnstellen vorhanden sind. Jede der Sektionen 30a-d weist einen zentralen Sektionscontroller 31a-d auf. Jeder Sektionscontroller 31a-d ist über eine Kommunikationsverbindung 32a-d mit dem Maschinen-Bus 25 verbunden. In Fig. 1sind beispielhaft vier Sektionscontroller 31a-d dargestellt, wobei bei einer Spinnmaschine in der Regel wesentlich mehr als vier Sektionscontroller vorgesehen sind.

  

[0050]    Die Einzelheiten der Sektion 30a sind repräsentativ für die anderen Sektionen näher dargestellt. Der Sektionscontroller 31a arbeitet unter anderem als Kommunikationseinrichtung zwischen dem Maschinen-Bus 25 und einem Sektions-Bus 40, wobei der Sektionscontroller 31a als Treiber Routerfunktionen für den Sektions-Bus 40 übernimmt. Kommunikationsfähige Baueinheiten bzw. Baugruppen jeder Spinstelle 41a, 41b der Sektion 30a sind über Kommunikationsverbindungen 62, 63 ,64 ,65 mit dem Sektions-Bus 40 verbunden. So ist z. B. in der Sektion 30a ein Fadenwächter 42 über die Kommunikationsverbindung 62, ein Garnreiniger 43 über die Kommunikationsverbindung 63, eine Faserbandauflösevorrichtung 44 über die Kommunikationsverbindung 64 und eine Spinnstellensteuerung 45 über die Kommunikationsverbindung 65 mit dem Bus 40 verbunden.

  

[0051]    Jede der Einheiten 42, 43, 44, 45 weist eine Kommunikationssteuereinrichtung 52, 53, 54, 55 auf, die die Kommunikation mit dem Bus 40 steuert. Die Kommunikationseinrichtungen können dabei als reine Empfangseinrichtungen ausgelegt sein, beispielsweise für ein Stellelement bzw. einen Aktor, das lediglich auf Informations- oder Steuerdaten reagiert. Oder die Kommunikationssteuereinrichtungen können als reine Sendeeinrichtungen ausgelegt sein, beispielsweise bei einer Sensoreinrichtung, die lediglich Informations- oder Steuerdaten an den Bus 40 sendet. Vorzugsweise sind jedoch die Kommunikationssteuereinrichtungen bidirektional, so dass sowohl Befehle oder Informationen empfangen als auch Informations- und Steuerdaten gesendet werden können. Für die Arbeitsweise des dargestellten Systems als Ganzes wird auf die Beschreibung in DE-A-10 153 457 hingewiesen.

  

[0052]    In der bevorzugten Ausführung wird jeder Bus 25 bzw. 40 als CAN-Bus realisiert (CAN = Controller Area Network). Der CAN-Bus verbindet bekannterweise mehrere gleichberechtigte Komponenten (sogenannte Knoten bzw. Nodes) miteinander, z. B. mittels einer 2-Draht-Buseinrichtung oder mittels Lichtwellenleitern. Bei der Datenübertragung in einem CAN-Bus werden keine Knoten adressiert, sondern der Inhalt einer Nachricht wird innerhalb des Controller Area Networks durch einen eindeutigen "Identifier" gekennzeichnet. Neben der Inhaltskennzeichnung legt der Identifier auch die Priorität der Nachricht fest. Mittels einer Akzeptanzprüfung stellen alle Stationen nach korrektem Empfang der Nachricht anhand des Identifiers fest, ob die empfangenen Daten für sie relevant sind oder nicht.

   Auf einem CAN-Bus darf jeder Teilnehmer Daten ohne besondere Aufforderung eines Masters verschicken. Sofern es zu Kollisionen kommt, werden diese per Hardware und durch Wiederholung behoben. Eine Kollision wird dadurch erkannt, dass ein Sender den gesendeten Identifier selbst zurückliest und vergleicht. Bei Ungleichheit war ein Teilnehmer mit höherer Priorität da, welcher die Leitung für sich beansprucht hat. Der vom Bus "ausgeschlossene" Sender versucht dann wieder, seine Botschaft zu übertragen, bis ihm dies gelingt.

  

[0053]    Eine CAN-Nachricht wird in einer CAN-Bus-eigenen Form verpackt. Die Verpackung wird als eine "Frame" bezeichnet und besteht aus 7 Kennfeldern, je mit einer eigenen, fest zugeordneten Funktion (z.B. "Message Identifier").

  

[0054]    Der Datenfluss auf einem CAN-Bus wird normalerweise mittels eines weitgehend standardisierten Zugriffsverfahrens (Protokolls) - "CANopen" - gesteuert. Die Zuordnung der Message-Identifier erfolgt hierbei automatisch anhand der am teilnehmenden Knoten eingestellten Knotennummer.

  

[0055]    Die Erfindung ist nicht auf die Verwendung in Kombination mit einem CAN-Bus eingeschränkt. Der CAN-Bus ist aber für seine hohe Störsicherheit und geringe Kosten, z.T. wegen breiter Akzeptanz und entsprechenden Standardisierungsgrads, bekannt und wird dementsprechend häufig in Textilmaschinen eingesetzt. Gerade wegen des hohen Standardisierungsgrads ist es aber besonders leicht festzustellen, was jederzeit auf einem CAN-Bus vor sich geht - zu diesem Zweck sind sogar spezielle Einrichtungen ("CAN-Analyser") entwickelt und käuflich zur Verfügung gestellt worden. Dies erleichtert die "Aufgabe" des Software-Kopierens.

  

[0056]    Im Beispiel der Fig. 1umfasst der Begriff Steuerung die Maschinensteuerung 20, die Triebgestellsteuerung 26 und die Sektionscontroller 31a bis 31d. Prinzipiell können auch weitere Steuerungskomponenten, etwa auf Arbeitsstellenebene, vorgesehen sein. Wenigstens eine Komponente der Steuerung ist programmierbar ausgebildet, umfasst also eine CPU (Central Processor Unit).

  

[0057]    Eine moderne Textilmaschine mit einer programmierbaren Steuerung muss mit verschiedenen Software-Typen versehen werden, wie nun anhand der Fig. 2erläutert werden soll. In der Fig. 2ist zur besseren Übersicht von der Steuerung 28 nur die Maschinensteuerung 20 sowie ein Sektionscontroller 31 gezeigt, welche beide nach dem gleichen Prinzip aufgebaut sind und insbesondere eine CPU umfassen. Gleichwohl kann die Steuerung 28 weitere Komponenten umfassen, welche programmierbar oder nicht programmierbar sind. Zum Zweck der Erklärung werden in der Fig. 2verschiedene Datentypen (inkl. Software bzw. Programme) verschiedenen "Kästen" zugeordnet - dies ist aber nur zur Erleichterung der Darstellung bzw. Erklärung so gemacht worden.

   Ob die Daten in der Praxis so getrennt verwaltet werden oder nicht, hängt vom gewählten Computer-System ab und hat mit der vorliegenden Erfindung prinzipiell nichts zu tun.

  

[0058]    In der Fig. 2 werden drei Datentypen schematisch angedeutet, nämlich
ein Betriebssystem, das grundsätzlich für den Betrieb des Computer-Systems erforderlich ist und normalerweise vom Computer-Hersteller gewählt und spezifiziert wird. Das Betriebssystem wird aufgerufen und kommt dementsprechend zur Geltung, jedes Mal als erster Schritt, nachdem das Computer-System eingeschaltet wird:

  
Anwendungsprogramme (kollektiv Anwendungssoftware), die vom Maschinenhersteller gewählt und spezifiziert werden, und im Betrieb für das geordnete Steuern der Maschinenhardware nach einem vorgegebenen Konzept zuständig sind.
Arbeitsdaten, die im Betrieb quasi-kontinuierlich von der Maschine geliefert bzw. gewonnen werden, und die gemäss der Anwendungssoftware anhand vorgegebener Routinen (Schleifen) verarbeitet werden müssen, um das Aufrechterhalten der verschiedenen Maschinenfunktionen kontinuierlich zu gewährleisten.

  

[0059]    Die Anwendungssoftware ist von speziellem Interesse im Zusammenhang mit dieser Erfindung. Die gesamte, in einer bestimmten Maschine gespeicherte Anwendungssoftware kann viele verschiedene Einzelprogramme umfassen, beispielsweise: a) verschiedene Versionen des gleichen Grundprogramms, beispielsweise um verschiedene Entwicklungsstufen der Maschine selbst zu berücksichtigen. Die DE-A-10 212 712 zeigt z.B. eine Weiterentwicklung der Anordnung, die in der DE-A-10 153 457 und in der Fig. 1 der vorliegenden Anmeldung beschrieben wird.

   Es können beide Programme (d.h. sowohl ein Programm gemäss DE-A-10 153 456 als auch ein "Nachfolgerprogramm" gemäss DE-A-10 212 712) in der gleichen Anwendungssoftware vorhanden sein, wobei für eine gegebene Maschine nur eine Programmvariante zur Geltung gebracht werden soll, sei es, weil nur diese Variante für die gegebene Maschine geeignet ist, oder sei es, weil sich der Benutzer der Maschine diese Variante gewählt und sich verpflichtet hat, die Lizenzgebühren zu bezahlen (bzw. die Gebühren beim Kauf der Maschine pauschal bezahlt hat). Ohne Aufruf und Inkraftsetzen eines Grundprogramms ist eine moderne Textilmaschine 10 nicht effektiv lauffähig, d.h. der Benutzer muss sich für ein bestimmtes Grundprogramm entscheiden oder kann sogar seine Maschine nur anhand eines bestimmten Grundprogramms arbeiten lassen. Ein Grundprogramm für die ganze Maschine enthält z.B.

   Start- bzw. Stopproutine und Routine für den Normalbetrieb, wobei die Routine für den Normalbetrieb verschiedene, vom Benutzer wählbare, Einstellmöglichkeiten vorsehen wird. Das gleiche Prinzip gilt aber für ein quasi-autonomes Arbeitsaggregat, wie ein Ansetzroboter für eine Rotorspinnmaschine.

  

[0060]    (b) verschiedene Optionen (Ergänzungsprogramme), die nicht zur Grundausrüstung der Anwendungssoftware gehören, sondern zum Betreiben spezifischer technischer oder technologischer Funktionen erforderlich sind. Der Maschinenbenutzer kann dann wählen, ob er für seine Maschine eine derartige Funktion vorsehen will. Beispiele sind aus den folgenden Schriften zu entnehmen:
DE-A-10 153 999 "Simulationsverfahren für eine Spinnereimaschine";
DE-A-10 143 875 "Verfahren zum Einstellen von Betriebsparameter einer Textilmaschine";
DE-A-4 131 247 "Verfahren zum Unterstützen von Wartungsarbeiten";
DE-A-10 2004 014 257 "Rezeptverwaltung in einer Textilmaschine";
DE-A-10 340 234 "Fernbedienung in einer Textilmaschinenanlage", wobei dem Fachmann klar sein wird, dass diese Liste keineswegs vollständig ist.

   Die effektiven Möglichkeiten in einem konkreten Fall hängen vom Maschinentyp und von seiner Ausrüstung ab. Die Maschine bzw. das autonome Aggregat ist grundsätzlich ohne diese Optionen lauffähig, wobei die der Option entsprechende Funktion nicht ausgeführt werden kann.

  

[0061]    Es besteht nun oft Interesse seitens verschiedener Parteien (Maschinenbenutzer, Konkurrenten des Maschinenherstellers, Softwareentwicklungsfirmen ....), Anwendungssoftware unbefugt zu kopieren bzw. zum Laufen zu bringen, wobei der Maschinenhersteller daran interessiert ist, dies möglichst zu verhindern. Die vorliegende Erfindung befasst sich mit dieser Aufgabe.

  

[0062]    Die bevorzugte Lösung der Aufgabe besteht nun darin, die Maschine 10 einerseits mit einer Softwareschutzvorrichtung, einem sogenannten "Dongle", bzw. mit einer "Dongle-Funktion" auszurüsten, wie dies schematisch in der Fig. 2 gezeigt ist, andererseits die Anwendungssoftware derart zu speichern, dass sie nur nach Freigabe durch den Dongle 100 steuerungswirksam gemacht werden kann. Der Dongle 100 gemäss der Fig. 2ist grundsätzlich als Datenspeicher realisiert, wobei diese Funktion in der Fig. 2mittels des Speichers 102 ausgeführt wird. Der Dongle 100 ist ein selbständiges Modul, welches innerhalb oder ausserhalb der Maschine 10 angeordnet sein kann. . Wesentlich ist lediglich, dass die Maschine 10 und der Dongle 100 zum Datenaustausch ausgebildet sind. Der Dongle 100 kann mit Daten geladen werden, welche Software-Freigabe-Codes darstellen.

   Der Datenspeicher 102 soll daher für die nichtflüchtigen Langzeit-Speicherung der Freigabe-Daten ausgeführt sein und kann zu diesem Zweck beispielsweise in der Form eines ferromagnetischen RAMs realisiert werden.

  

[0063]    Die Freigabe der Anwendungssoftware bzw. eines bestimmten Software-Programms erfolgt dann dadurch, dass die Maschinensteuerung 20 bzw. eine weitere Komponente der Steuerung 28, welche ein bestimmtes Programm braucht, um ihre Steuerroutinen arbeiten zu lassen, eine "Anfrage" an den Dongle 100 sendet und als Antwort darauf die im Dongle 100 gespeicherten Freigabecodes erhält. Sofern die vom Dongle 100 erhaltenen Daten plausibel sind und Programme entsprechen, die der abfragenden Steuerung 28 zur Verfügung stehen, ruft die Steuerung 28 selbst die entsprechenden Einzelprogramme aus dem Speicher auf und bringt sie zur Geltung. Die Steuerung 28 ist daher dazu programmiert, die vom Datenspeicher 102 erhaltenen Daten auf ihre Plausibilität zu kontrollieren.

   Falls keine brauchbaren Freigabecodes vom Dongle 100 erhalten werden oder falls die erhaltenen Freigabecodes Programmen entsprechen, die der abfragenden Steuerungseinheit 20, 31 nicht zur Verfügung stehen, kann das Ausführen der entsprechenden Maschinenfunktion unterbrochen bzw. nicht eingeleitet werden. Sofern eine Komponente der Steuerung 28, also beispielsweise die zentrale Maschinensteuerung 20 (Fig. 1), eine Abfrage sendet und keine brauchbaren Angaben zurückerhält, kann der Hochlauf der Maschine als Ganzes unterbrochen bzw. unterbunden werden.

  

[0064]    Der Dongle 100 ist daher mit einem eigenen Mikroprozessor (Controller) 117 und einem Datenport 104 versehen, womit der Mikroprozessor [micro]P117 für den bilateralen Austausch von Daten mit mindestens einer Steuerungseinheit 20, 31 der Maschine über einen Maschinenbus 106 (beispielsweise Bus 25 und/oder Bus 40, Fig. 1) angeordnet ist. Sofern der Dongle 100 zur Zusammenarbeit mit einem CAN-Bus 106 vorgesehen ist, kann der Mikroprozessor 117 mit einem CAN-Controller 105 und einem CAN-Treiber 104 versehen werden. Der Dongle 100 kann dadurch unmittelbar in den CAN-Bus 106 eingebunden werden, er wird also gleichberechtigter Teilnehmer bezüglich des Datenverkehrs auf dem Bus 106.

   Dabei ist es vorteilhaft, wenn der CAN-Treiber 104 derart ausgebildet ist, dass eine galvanisch getrennte Einbindung in den CAN-Bus erfolgt, da sich so Unterschiede des elektrischen Potenzials zwischen Textilmaschine 10 und Dongle 100 nicht negativ auswirken können.

  

[0065]    Zur Versorgung der Elektronik umfasst der Dongle vorzugsweise auch ein Netzteil 114, das über eine Versorgungsleitung 116 elektrische Energie von der Maschine aufnehmen kann und mit einem Wandler zur Anpassung der Maschinenspannung an die Arbeitsspannung der Dongle-Elektronik versehen ist. Vorzugsweise ist dem Netzteil 114 ein Überwachungsmodul 112 zugeordnet. Beim Fehlen der Netzspannung kann dann beispielsweise eine Alarmfunktion ausgelöst werden.

  

[0066]    Der Abruf der Freigabedaten erfolgt vorzugsweise nach Inbetriebnahme des Betriebssystems, aber vor der Inbetriebnahme irgendwelcher Anwendungssoftware und führt auch vorzugsweise zum Abbruch der bzw. nicht Eintreten auf die Startroutine des Grundprogramms, falls die Freigabe vom Dongle nicht gegeben wird. Wenigstens eine der Steuerungseinheiten (21, 31) mit ihrem Rechner (CPU) kann entsprechend programmiert werden. Es kann aber mit Vorteil regelmässig während des Normalbetriebs nach einer Bestätigung der Freigabe gefragt werden - damit erfolgt eine Bestätigung, dass der die Software freigebende Dongle 100 noch mit dem Bus 106 gekoppelt ist.

  

[0067]    Das Software-Freigabeverfahren wird vorzugsweise derart konzipiert, dass es nicht durch ein allgemein (standardmässig) verwendetes Verfahren zur Untersuchung vom Geschehen auf dem Bus 106 (z. B. an der Schnittstelle 104) analysiert werden kann. Um die Analyse des Verfahrens mittels eines mit dem Bus 106 gekoppelten Bus-Analysers zu erschweren, werden die Daten der Freigabe-Abfrage vorzugsweise auch durch die Steuerungseinheit 20, 31 verschlüsselt, wobei diese Daten vom Dongle 100 dekodiert werden müssen.

  

[0068]    Die vom Dongle 100 gelieferten Softwarefreigabedaten werden daher vorzugsweise verschlüsselt abgegeben und die Programmierung des Dongles 100 kann einen entsprechenden Verschlüsselungsalgorithmus umfassen. Die Verschlüsselung kann z.B. mit Hilfe eines Zufallsgenerators erfolgen und der Dongle kann entsprechend programmiert werden. Die Steuerungseinheit 20, 31 der Maschine 10 muss derart programmiert sein, dass ihr Rechner CPU in der Lage ist, die Verschlüsselung aufzulösen und die Freigabedaten daraus zu gewinnen.

  

[0069]    Soll nun eine Anwendungssoftware zum Betrieb der Textilmaschine 10 von einer programmierbaren Steuerungseinheit 20, 31 gestartet werden, so wird bevorzugt in dieser oder einer anderen Steuerungseinheit zunächst eine spezielle Abfrageprozedur (also ein Softwareprogramm) zum Abfragen von Softwarefreigabedaten, welche in der Softwareschutzvorrichtung 100 hinterlegt sind, aufgerufen. Diese Abfrageprozedur erstellt eine verschlüsselte (codierte) Abfrage, welche an den Dongle 100 übertragen und dort mittels einer Software, welche den Mikrocontroller 117 des Dongles 100 steuert, entschlüsselt (decodiert) wird. Die Verschlüsselung durch die Steuerungseinheit 20, 31 kann Elemente, beispielsweise Zahlen, umfassen, die jedes Mal neu innerhalb der Steuerung 28 (z.B. mittels eines Zufallsgenerators) erzeugt werden.

  

[0070]    Die Software des Dongles 100 überprüft nun, welche Softwarefreigabedaten zurückgegeben werden sollen. Hierbei kann beispielsweise eine Berechtigungsüberprüfung anhand der bisherigen Betriebsdauer und/oder anhand von maschinenspezifischen Daten, etwa anhand des Maschinentyps, der Maschinenkonfiguration, der Seriennummer und/oder der Softwareversion der Textilmaschine 10 erfolgen. Sofern eine Softwarelizenz zeitlich befristet erteilt wurde, kann auch das jeweils aktuelle Datum bei der Berechtigungsüberprüfung herangezogen werden.

  

[0071]    Um eine Umgehung der Berechtigungsüberprüfung zu verhindern, können beispielsweise die hierzu herangezogenen Daten von der Abfrageprozedur der Textilmaschine 10 verschlüsselt in die Abfrage integriert werden und dann mit in dem Datenspeicher 102 des Dongles 100 geschützt hinterlegten Daten verglichen werden.

  

[0072]    Nach der Berechtigungsüberprüfung werden die ausgewählten Softwarefreigabedaten verschlüsselt und an die betroffene Steuerungseinheit übertragen, wo sie dann decodiert werden. Die Antwort des Dongles 100 kann Elemente enthalten, die sowohl aus der verschlüsselten Abfrage als auch aus zufällig erzeugten Daten entstammen. Nun kann die freigegebene Anwendungssoftware gestartet und genutzt werden.

  

[0073]    Durch dieses Abfrageverfahren ist sichergestellt, dass es unberechtigten Personen nicht möglich ist, Softwarefreigabedaten ohne Kenntnis des Source-Codes der Abfrageprozedur auszulesen, um sie dann zum missbräuchlichen Freischalten von Softwareoptionen der Textilmaschine 10 zu nutzen.

  

[0074]    Zur weiteren Erhöhung der Datensicherheit können die Softwarefreigabedaten in dem Datenspeicher 102 verschlüsselt hinterlegt, also abgespeichert werden.

  

[0075]    Auch ist es sinnvoll, die Software des Dongles 100 in einem OTP-Speicher (One Time Programmable Memory) abzulegen. Ein OTP-Speicher kann nur einmal beschrieben werden, so dass die einmal aufgespielte Software des Dongles 100 nicht mehr veränderbar ist. Hierdurch kann eine Manipulation am Dongle 100, welche ein unberechtigtes Auslesen von Softwarefreigabeoptionen ermöglichen könnte, verhindert werden.

  

[0076]    Das bei der Abfrage von Softwarefreigabedaten verwendete Verschlüsselungsverfahren kann prinzipiell frei gewählt werden, wesentlich ist nur, dass die jeweilige Steuerungseinheit 20, 31 und der Dongle 100 zur Durchführung desselben Verschlüsselungsverfahrens ausgebildet sind.

  

[0077]    Die Softwareschutzvorrichtung ist vorteilhafterweise zusätzlich zur Berechnung der Betriebsstunden der Textilmaschine ausgebildet. Hierzu wird ihr über die Leitung 115 ein Signal zugeführt, sofern sich die Maschine im Betrieb befindet. Bei Verwendung der vom Bus 116 unabhängigen Leitung 115 wird der Datenverkehr auf dem Bus 106 nicht durch die Betriebsstundenerfassung beeinträchtigt. Grundsätzlich kann das Betriebssignal jedoch auch über den Bus 106 übertragen werden.

  

[0078]    Das Betriebssignal gelangt über einen Signaleingang 113 zum Mikrocontroller 117. Dieser ruft bei Betriebsbeginn die bisher gespeicherte Betriebszeit aus dem Datenspeicher 102 ab und zählt die laufende Betriebszeit, beispielsweise im Sekundentakt, hinzu. Bei Betriebsende oder nach einer bestimmten Zeit wird die inkrementierte Betriebszeit im Datenspeicher 102 abgelegt.

  

[0079]    Um Manipulationen an der Betriebsstundenzahl zu verhindern, kann die Übertragung von Softwarefreigabedaten von dem Anliegen des Betriebssignals abhängig sein.

  

[0080]    Vorzugsweise ist der Dongle 100 zusätzlich zur Abspeicherung maschinenspezifischer Daten wie Maschinentyp, Maschinenkonfiguration, Seriennummer und/oder Softwareversion der Steuerungssoftware der Maschine 10 ausgebildet. Derartige Daten sollen langfristig, nämlich für die gesamte Lebenszeit der Maschine, gespeichert und auslesbar sein. Gegenüber Konzepten, bei denen derartige maschinenspezifische Daten in einer Komponente der Steuerung (20, 31) der Textilmaschine 10 gespeichert werden, bietet die Speicherung in dem Dongle 100 den Vorteil einer höheren Verlässlichkeit der Speicherung. Dies wiederum beruht auf der im Vergleich zur Steuerung der Textilmaschine geringen Komplexität des Dongles 100, was zu einer geringeren Fehleranfälligkeit des Dongles 100 führt.

   Mit anderen Worten: Es ist wesentlich wahrscheinlicher, dass während der Lebensdauer der Textilmaschine 10 eine Komponente der Steuerung (20, 31) der Textilmaschine ausfällt, als dass eine Störung im verhältnismässig einfach aufgebauten Dongle 100 auftritt. Im Ergebnis ist die Verfügbarkeit der gespeicherten maschinenspezifischen Daten deutlich erhöht.

  

[0081]    In einer Maschine 10 mit einem CAN-Bus 116 kann der Dongle 100 ohne weiteres mit diesem Bus 116 gekoppelt und abgefragt werden. Für die Abfrage kann ein entsprechender Message-Identifier definiert werden und im CAN-Message-Frame integriert werden, wobei der Abfrage vorzugsweise eine hohe Priorität zugeordnet wird. Wird eine Abfrage über den CAN-Bus 116 verschickt, so wird sie zwar von allen Bus-Teilnehmern empfangen, aber nur vom Dongle 100 als relevant erkannt und verarbeitet. Dieser Message-Identifier korrespondiert bei der Verwendung des CANopen-Protokolls mit der voreingestellten Knotennummer des Dongles 100. In anderen Fällen ist der Identifier individuell zu definieren.

  

[0082]    Für Maschinen mit anderen Bus-Systemen muss dem Dongle 100 allenfalls eine eigene Adresse zugeordnet werden, die dann bei jedem Abrufvorgang von der abrufenden Steuerung gemäss dem jeweiligen Bus-Protokoll verwendet werden muss. Knotennummer, relevante Identifier oder Bus-Adresse, können vorzugsweise über ein Mittel 109, insbesondere über Jumper, DIP-Schalter oder Lötbrücken an dem Dongle 100 einstellbar sein, um so Konflikte mit Knotennummern, Identifiern oder Adressen anderer Bus-Teilnehmer zu lösen bzw. um eine eindeutige Zuordnung zwischen den auf dem Bus 116 verschickten Daten und dem als Empfänger vorgesehenen Teilnehmer sicherzustellen.

  

[0083]    Ein Dongle 100 nach dieser Erfindung kann an jeder geeigneten Stelle in der Maschine 10 vorgesehen werden, wo die Datenkoppelung am Bus 106 möglich bzw. zweckmässig ist. Die Gestaltung des Dongles 100 muss prinzipiell nur die Anforderung der Datenspeicherung bzw. der Ankoppelung am Bus 106 erfüllen. In der bevorzugten Ausführung wird der Dongle 100 aber als ein separates Gerät gebildet und an der Maschine möglichst fest angebracht. Die Elektronik des Dongles kann auf einer geeigneten Leiterplatte 119 aufgebaut werden, die in einem Gehäuse 108 untergebracht wird, wobei das Gehäuse 108 selbst mit Mitteln 110 zur Befestigung des Dongles 100 an einer ausgewählten Stelle in der Maschine 10 versehen ist. Eine geeignete Stelle (in der Fig. 2nicht gezeigt) ist die Energieverteilstelle (der Schaltschrank) der Maschine (z.B. gemäss DE-A-4 316 999 oder DE-A-19 535 310).

   Die Energieverteilstelle umfasst normalerweise mindestens einen Modulträger, z.B. mindestens einer sogenannten "Hutschiene" (Top-Hat Rail), der oft gemäss einer DIN- bzw. ISO-Norm gestaltet wird. Die Befestigungsmittel 110 am Gehäuse 108 kann zur Zusammenarbeit mit einem derartigen Modulträger gestaltet werden. Geräte dieser Art sind, für andere Aufgaben, prinzipiell bekannt - siehe z.B. DE-A-19 937 515, welche, für die Anlageüberwachung, einen "Einplatinen-Microcontroller" bestehend aus einer Prozessoreinheit, Speichermittel und Kommunikationsschnittstelle beschreibt, wobei dieses Modul zur Befestigung an einer Hutschiene vorgesehen ist.

  

[0084]    Die Anordnung von Datenspeicher 102, Mikrocontroller 117 und Datenschnittstelle 104 auf einer gemeinsamen Platine 119 ermöglicht eine kompakte Bauform des Dongles. Vorteilhafterweise sind auch weitere Hardwarekomponenten, hier das Netzteil 114 mit Überwachungsmodul 112, das Mittel 107 zur Anzeige von Betriebszuständen des Dongles 100, das Mittel 109 zur Hardwareanpassung des Dongles 100 an die Textilmaschine 10 sowie das Mittel 111 zur Einstellung eines Parameters zur Datenübertragung auf der gemeinsamen Platine 119 angeordnet.

  

[0085]    Die Softwarefreigabedaten (Codes) sind soweit praktisch möglich geheim zu halten, d.h. sie sollten nur einem möglichst kleinen Kreis von ausgewählten Personen zugänglich gemacht werden. Die Software eines Dongles 100 ist vorzugsweise in dem OTP-Speicher 120 unveränderlich abgelegt. Die vorzugsweise im FRAM-Speicher abgelegten Werte oder Daten, also insbesondere maschinenspezifische Daten wie Maschinentyp, Maschinenkonfiguration, Seriennummer und/oder Softwareversion der Steuerungssoftware der Maschine 10 oder die Softwarefreigabedaten können aber veränderbar sein, z.B. durch Servicepersonal mit besonderen Befugnissen unter Zuhilfenahme der Steuerung 28 der Textilmaschine 10 oder spezieller Einrichtungen.

   Allenfalls erfordert die Änderung der hinterlegten Werte (Umkonfigurierung) den Zugang zum Speicher 102 mittels mehrerer Passwörter, die normalerweise verschiedenen Personen zugeordnet werden, d.h. es müssten normalerweise mehrere Personen gleichzeitig an der Umkonfigurierung beteiligt sein. Durch eine derartige Umkonfigurierung kann der Dongle 100 mit neuen Softwarefreigabedaten versehen werden, welche neue Softwarebefugnisse in einer bestehenden Maschine darstellen oder sogar die Wieder- bzw. Weiterverwendung auf einer anderen Maschine ermöglichen. Der Zugang zum Datenspeicher 102 zwecks Neubelegung kann über den Bus 106 oder über ein speziell dafür konzipiertes Datenaustauschmittel (nicht gezeigt) erfolgen.

  

[0086]    Es kann weiterhin vorgesehen sein, dass zumindest ein Teil der im Datenspeicher (102) hinterlegten Daten, insbesondere der Softwarefreigabedaten, der maschinenspezifischen Daten und/oder der Betriebsstunden, gegen unbefugtes Auslesen passwortgeschützt ist. Hierzu kann vorgesehen sein, dass der Bediener vor dem Abrufen der betreffenden Daten zur Eingabe eines Passwortes an der Steuerung 28 aufgefordert wird.

  

[0087]    So ist es beispielsweise möglich, dass bestimmte Softwareoptionen nur durch autorisierte Personen aktivierbar sind. Hierbei ist etwa an Softwarefunktionen zu denken, welche im normalen Betrieb der Maschine 100 nicht benötigt werden, jedoch für die Fehlerdiagnose und/oder Wartung durch speziell geschultes Servicepersonal erforderlich sind. Hierdurch kann beispielsweise eine unsachgemässe Wartung verhindert werden.

  

[0088]    Fig. 3 zeigt einen Dongle, 100 der zum Zusammenwirken mit mehreren Textilmaschinen 10, 10, 10 ausgebildet ist. Hierzu ist der Dongle 100 über ein Datennetz 122 mit den Textilmaschinen 10, 10, 10 verbunden. Er umfasst eine Schnittstelle 104, welche an die Ausführung des Datennetzes 122 angepasst ist. Das Datennetz 122 kann beispielsweise ein LAN (Local Area Network) oder ein WAN (Wide Area Network) sein. Dann ist die Schnittstelle als entsprechende Netzwerkschnittstelle auszubilden.

  

[0089]    Alternativ könnte der Dongle 100 über Punkt-zu-Punkt-Datenleitungen mit den Textilmaschinen 10, 10, 10 verbunden sein. Dann könnte die Schnittstelle 104 beispielsweise als Modem oder ISDN-Schnittstelle ausgeführt sein.

  

[0090]    Die Textilmaschinen 10, 10 und 10 stehen ihrerseits über angepasste Schnittstellen 121, 121 und 121 mit dem jeweiligen Datennetz 122 oder entsprechenden Datenleitungen in Verbindung, wobei die Schnittstellen 121, 121 und 121 über Busse 106, 106 und 106 oder in anderer Weise mit den nicht dargestellten Steuerungen der Textilmaschinen verbunden sind.

  

[0091]    Auf diese Weise ist es beispielsweise möglich, einen Dongle 100 für eine Maschinengruppe oder eine gesamte Anlage zu verwenden. Beispielsweise kann der Dongle 100 an einer zentralen Überwachungseinrichtung, beispielsweise an einer übergeordneten Anlagensteuerung angeordnet sein.

  

[0092]    Die Erfindung ist nicht auf die dargestellten Ausführungsbeispiele beschränkt. Es sind zahlreiche Abwandlungen der Erfindung und insbesondere Kombinationen im Rahmen der Patentansprüche möglich.

Claims (38)

1. Softwareschutzvorrichtung für eine Textilmaschine (10) mit einer programmierbaren Steuerung (28), gekennzeichnet durch einen Datenspeicher (102) zur Aufnahme von Softwarefreigabedaten und eine Datenschnittstelle (104), welche zur Datenübertragung zwischen dem Datenspeicher (102) und der Steuerung (28) der Textilmaschine (10) mit der Steuerung (28) der Textilmaschine (10) verbindbar ist.
2. Softwareschutzvorrichtung gemäss Anspruch 1, dadurch gekennzeichnet, dass ein Mikrocontroller (117) zur Steuerung der Datenübertragung und/oder zur Verarbeitung von ein- oder abgehenden Daten vorgesehen ist.
3. Softwareschutzvorrichtung gemäss Anspruch 2, dadurch gekennzeichnet, dass der Mikrocontroller (117) durch eine Software gesteuert ist, welche in einem Speicher, vorzugsweise in einem OTP-Speicher (120), abgelegt ist.
4. Softwareschutzvorrichtung gemäss Anspruch 2 oder 3, dadurch gekennzeichnet, dass der Mikrocontroller (117) zur Verschlüsselung abgehender Daten, insbesondere von Freigabedaten, und/oder zur Entschlüsselung verschlüsselt eingehender Daten ausgebildet ist, wobei das Verschlüsselungsverfahren an die Textilmaschine (10) angepasst ist.
5. Softwareschutzvorrichtung gemäss einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Softwareschutzvorrichtung über eine Punkt-zu-Punkt-Verbindung, beispielsweise über Modem oder ISDN an die Textilmaschine (10) anbindbar ist.
6. Softwareschutzvorrichtung gemäss einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die Softwareschutzvorrichtung über ein Datennetz (122), welches beispielsweise als Nahverkehrs- oder Weitverkehrsnetzwerk ausgeführt ist, an die Textilmaschine (10) anbindbar ist, wobei die Softwareschutzvorrichtung eine an das Datennetz angepasste Datenschnittstelle (104) aufweist.
7. Softwareschutzvorrichtung gemäss einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die Softwareschutzvorrichtung an eine interne Datenverbindung (25, 40, 106) der Textilmaschine, insbesondere an einen Maschinenbus (10), anbindbar ist.
8. Softwareschutzvorrichtung gemäss Anspruch 7, dadurch gekennzeichnet, dass der Mikrocontroller (117) einen integrierten CAN-Controller (105) aufweist und die Datenschnittstelle (104) ein CAN-Treiber ist.
9. Softwareschutzvorrichtung gemäss Anspruch 7, dadurch gekennzeichnet, dass die Datenschnittstelle (104) zur galvanisch getrennten Einbindung in die Datenverbindung (25, 40, 106) ausgebildet ist.
10. Softwareschutzvorrichtung gemäss einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Datenspeicher (102) ein nichtflüchtiger Speicher, insbesondere ein serieller FRAM, ist.
11. Softwareschutzvorrichtung gemäss einem der Ansprüche 2 bis 10, dadurch gekennzeichnet, dass der Datenspeicher (102), der Mikrocontroller (117) und die Datenschnittstelle (104) auf einer gemeinsamen Platine (119) angeordnet sind.
12. Softwareschutzvorrichtung gemäss einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Gehäuse (108) mit Befestigungsmitteln (110) zum Anbringen der Softwareschutzvorrichtung an der Textilmaschine (10) vorhanden ist.
13. Softwareschutzvorrichtung gemäss Anspruch 12, dadurch gekennzeichnet, dass die Befestigungsmittel (110) zur Montage an einer Hutschiene ausgebildet sind.
14. Softwareschutzvorrichtung gemäss einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Netzteil (114) zur Versorgung der Softwareschutzvorrichtung (100) vorgesehen ist, an welches eine Versorgungsleitung (116) anschliessbar ist, welche beispielsweise mit einem Energieversorgungsnetz (118) der Textilmaschine (10) verbindbar ist.
15. Softwareschutzvorrichtung gemäss Anspruch 14, dadurch gekennzeichnet, dass dem Netzteil (114) ein Überwachungsmodul (112) zugeordnet ist.
16. Softwareschutzvorrichtung gemäss einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Mittel (107), insbesondere eine Leuchtdiode, zur Anzeige von Betriebszuständen der Softwareschutzvorrichtung (100), wie beispielsweise Funktionszuständen der Datenschnittstelle (104) oder ggf. des Netzteils (114), vorgesehen sind.
17. Softwareschutzvorrichtung gemäss einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass Mittel (109), insbesondere Jumper, DIP-Schalter oder Lötbrücken, zur Anpassung der Softwareschutzvorrichtung (100) an physikalische Parameter der Textilmaschine (10), beispielsweise der Baudrate der Datenverbindung (25, 40, 106), vorgesehen sind.
18. Softwareschutzvorrichtung gemäss einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Mittel (111), insbesondere ein Jumper, ein DIP-Schalter oder eine Lötbrücke, zur Einstellung eines Parameters, insbesondere einer Bus- oder Netzwerkadresse oder eines Identifiers, vorgesehen ist, welcher der Steuerung der Datenübertragung zwischen Softwareschutzvorrichtung (100) und der Textilmaschine (10) dient.
19. Softwareschutzvorrichtung gemäss einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Softwareschutzvorrichtung zum Zusammenwirken mit mehreren Textilmaschinen (10, 10', 10") ausgebildet ist.
20. Softwareschutzvorrichtung gemäss einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass maschinenspezifische Daten der Textilmaschine (10), insbesondere Maschinentyp, Maschinenkonfiguration, Seriennummer und/oder Softwareversion, im vorzugsweise nichtflüchtigen Datenspeicher (102) hinterlegbar sind.
21. Softwareschutzvorrichtung gemäss einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass sie zur Berechnung und nichtflüchtigen Speicherung der Betriebsstunden der Textilmaschine (10) ausgebildet ist.
22. Textilmaschine mit einer programmierbaren Steuerung (28), die geeignet ist, anhand mindestens einer vorgebbaren Softwareoption zu arbeiten, dadurch gekennzeichnet, dass sie zum Datenaustausch mit einer Softwareschutzvorrichtung (100) nach einem der Ansprüche 1 bis 21 ausgebildet ist, wobei die Steuerung (28) derart programmiert ist, dass sie die Softwareoption erst dann zur Geltung bringen kann, wenn sie für diese Softwareoption entsprechende Softwarefreigabedaten aus dem Datenspeicher (102) der Softwareschutzvorrichtung (100) erhalten hat.
23. Textilmaschine gemäss Anspruch 22 dadurch gekennzeichnet, dass die Textilmaschine (10) und die Softwareschutzvorrichtung (100) derart zusammenarbeiten, dass die Softwarefreigabedaten während der Übertragung verschlüsselt sind, wobei die Steuerung (28) zum Verschlüsseln von an die Softwareschutzvorrichtung (100) zu versendenden Daten und zum Auflösen der durch die Softwareschutzvorrichtung (100) erfolgten Verschlüsselung ausgebildet ist.
24. Textilmaschine gemäss Anspruch 22 oder 23, dadurch gekennzeichnet, dass die Steuerung (28) zum Aufrufen von Softwarefreigabedaten aus dem Datenspeicher (102) ausgebildet ist.
25. Textilmaschine gemäss einem der Ansprüche 22 bis 24, dadurch gekennzeichnet, dass die Steuerung (28) zum Umkonfigurieren der Softwareschutzvorrichtung (100) geeignet ist.
26. Textilmaschine gemäss einem der Ansprüche 22 bis 25, dadurch gekennzeichnet, dass die Textilmaschine (10) zur Datenübertragung während des Betriebes mit mindestens einer internen Datenverbindung (25, 40, 106), insbesondere mit einem Maschinenbus, versehen ist, so dass der Datenspeicher (102) der Softwareschutzvorrichtung (100) mit der internen Datenverbindung (25, 40, 106) in Verbindung bringbar ist.
27. Textilmaschine gemäss einem der Ansprüche 22 bis 26, dadurch gekennzeichnet, dass zur Datenübertragung zwischen der Steuerung (28) und dem Datenspeicher (102) der Softwareschutzvorrichtung (100) ein CAN-Bus (25, 40, 106) vorhanden ist.
28. Textilmaschine gemäss einem der Ansprüche 22 bis 27, dadurch gekennzeichnet, dass die Steuerung (28) zum Auslesen von maschinenspezifischen Daten aus dem Datenspeicher (102) der Softwareschutzvorrichtung (100) ausgebildet ist.
29. Steuerungsverfahren einer Textilmaschine (10) mit einer programmierbaren Steuerung (28), dadurch gekennzeichnet, dass die Steuerung (28) mit mindestens einer Softwareoption zum Betrieb, zur Fehlerdiagnose oder zur Wartung, programmiert ist, wobei die Softwareoption erst dann zur Geltung gebracht wird, wenn die Steuerung (28) vorgegebene Softwarefreigabedaten von einer steuerungsexternen Softwareschutzvorrichtung (100) nach einem der Ansprüche 1 bis 21, aufgerufen und erhalten hat.
30. Verfahren gemäss Anspruch 29, dadurch gekennzeichnet, dass die Softwarefreigabedaten verschlüsselt an die Steuerung (28) übertragen werden.
31. Verfahren gemäss Anspruch 29 oder 30, dadurch gekennzeichnet, dass die Steuerung (28) die Softwarefreigabedaten aufruft.
32. Verfahren gemäss einem der Ansprüche 29 bis 31, dadurch gekennzeichnet, dass die Aufrufdaten verschlüsselt übertragen werden.
33. Verfahren gemäss einem der Ansprüche 29 bis 32, dadurch gekennzeichnet, dass die Daten zwischen der Steuerung (28) und der steuerungsexternen Softwareschutzvorrichtung (100) über einen Maschinenbus (25, 40, 106) übertragen werden, der für Datenübertragung während des Normalbetriebs der Maschine verwendet wird.
34. Verfahren gemäss einem der Ansprüche 29 bis 33, dadurch gekennzeichnet, dass die Steuerung (28) derart programmiert ist, dass die Freigabe wiederholt, insbesondere periodisch wiederholt werden muss, nachdem die Software erstmals freigegeben worden ist.
35. Verfahren gemäss einem der Ansprüche 29 bis 34, dadurch gekennzeichnet, dass die Steuerung (28) die zentrale Maschinensteuerung (20) ist, wobei die Anwendungssoftware der Textilmaschine (10) freigegeben wird, nachdem die zentrale Maschinensteuerung (20) entsprechende Softwarefreigabedaten erhalten hat.
36. Verfahren gemäss einem der Ansprüche 29 bis 35, dadurch gekennzeichnet, dass die Steuerung (28) zur Ermittlung der Betriebsstunden ein Betriebssignal an die Softwareschutzvorrichtung (100) übermittelt.
37. Verfahren gemäss Anspruch 36, dadurch gekennzeichnet, dass an der Softwareschutzvorrichtung ein Signaleingang (113) vorgesehen ist, welcher über eine Signalleitung (115) mit der Textilmaschine (10) verbunden ist, und dass an der Softwareschutzeinrichtung ein Betriebssignal anliegt, mittels welchem die Betriebsstunden der Textilmaschine (10) berechnet werden.
38. Verfahren gemäss Anspruch 37, dadurch gekennzeichnet, dass Softwarefreigabedaten nur beim Anliegen des Betriebssignals abgegeben werden.
CH422006A 2005-01-18 2006-01-11 Textilmaschine und Softwareschutzvorrichtung für eine Textilmaschine. CH698536B1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102005002472A DE102005002472A1 (de) 2005-01-18 2005-01-18 Textilmaschine und Softwareschutzvorrichtung für eine Textilmaschine

Publications (1)

Publication Number Publication Date
CH698536B1 true CH698536B1 (de) 2009-08-31

Family

ID=36650452

Family Applications (1)

Application Number Title Priority Date Filing Date
CH422006A CH698536B1 (de) 2005-01-18 2006-01-11 Textilmaschine und Softwareschutzvorrichtung für eine Textilmaschine.

Country Status (2)

Country Link
CH (1) CH698536B1 (de)
DE (1) DE102005002472A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106048791A (zh) * 2015-04-08 2016-10-26 立达英格尔施塔特有限公司 用于解锁纱厂机器处的机器功能的方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006060071B3 (de) 2006-12-19 2008-04-03 Siemens Ag Ansteuerung eines Peripheriegerätes über eine CANopen-Schnittstelle
DE102007004779A1 (de) * 2007-01-31 2008-08-07 Oerlikon Textile Gmbh & Co. Kg Kreuzspulen herstellende Textilmaschine sowie Komponente
DE102007041768B4 (de) * 2007-09-04 2010-03-04 Deckel Maho Pfronten Gmbh System zur Steuerung des Zugriffs auf eine Werkzeugmaschine
DE102007052677B4 (de) * 2007-11-05 2016-04-21 Saurer Germany Gmbh & Co. Kg Verfahren zum Betreiben einer eine Vielzahl von Arbeitsstellen aufweisenden Textilmaschine
DE102009055247A1 (de) 2009-12-23 2011-06-30 Endress + Hauser Conducta Gesellschaft für Mess- und Regeltechnik mbH + Co. KG, 70839 Anordnung mit einer übergeordneten Steuereinheit und zumindest einem mit der Steuereinheit verbindbaren intelligenten Feldgerät
CH706927A1 (de) 2012-09-10 2014-03-14 Selectron Systems Ag Steckteil zur Bildung einer Steckverbindung.
DE102013206147B4 (de) * 2013-04-08 2022-06-09 Beckhoff Automation Gmbh Dongle-Modul und Automatisierungssystem
DE102015120347A1 (de) 2015-11-24 2017-05-24 Pilz Gmbh & Co. Kg Sicherheitssteuerungseinrichtung und Verfahren zur Änderung eines Funktionsumfangs einer Sicherheitssteuerungseinrichtung

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0175487A3 (de) * 1984-08-23 1989-03-08 Btg International Limited Softwaresicherungsvorrichtung
US5146575A (en) * 1986-11-05 1992-09-08 International Business Machines Corp. Implementing privilege on microprocessor systems for use in software asset protection
DE19540069A1 (de) * 1995-10-27 1997-04-30 Elan Schaltelemente Gmbh Anordnung zur Erfassung und/oder Verarbeitung von Signalen elektrischer Bauteile, die sicherheitstechnische Zwecke oder Auflagen für Geräte oder Anlagen erfüllen
DE29706969U1 (de) * 1996-05-03 1997-07-17 Inventio Ag, Hergiswil, Nidwalden Vorrichtung für die Sicherung von System-Konfigurationsdaten
US6513121B1 (en) * 1999-07-20 2003-01-28 Avaya Technology Corp. Securing feature activation in a telecommunication system
DE59907873D1 (de) * 1999-10-15 2004-01-08 Flowtec Ag Programmierbares Feldmessgerät
DE10105363B4 (de) * 2001-02-06 2008-01-03 Siemens Gebäudetechnik Bayern GmbH & Co. oHG Speicherprogrammierbare Steuerung
US20030233573A1 (en) * 2002-06-18 2003-12-18 Phinney Thomas L. System and method for securing network communications
DE10330191A1 (de) * 2003-07-03 2005-02-10 Siemens Ag System bzw. Verfahren zur Freigabe freigabebedürftigter Softwareprogramme

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106048791A (zh) * 2015-04-08 2016-10-26 立达英格尔施塔特有限公司 用于解锁纱厂机器处的机器功能的方法
US10788809B2 (en) * 2015-04-08 2020-09-29 Rieter Ingolstadt Gmbh Method for the enabling of machine functions on a spinning-mill machine
CN106048791B (zh) * 2015-04-08 2020-11-13 立达英格尔施塔特有限公司 用于解锁纱厂机器处的机器功能的方法

Also Published As

Publication number Publication date
DE102005002472A1 (de) 2006-07-27

Similar Documents

Publication Publication Date Title
CH698536B1 (de) Textilmaschine und Softwareschutzvorrichtung für eine Textilmaschine.
EP3379447B1 (de) Verfahren und vorrichtung zum manipulationssicheren speichern von informationen bezüglich objektbezogener massnahmen
AT513782B1 (de) Vorrichtung und Verfahren zur Übermittlung von Daten
DE112006003180T5 (de) Anlagensteuersystem
EP1935198A1 (de) Freischaltung von hardware in einem managementsystem
EP4020103B1 (de) Verfahren und industrieanlage zum verwalten und steuern von produktionsmitteln
WO2011120801A1 (de) Timermodul und verfahren zur überprüfung eines ausgangssignals
DE102016120306A1 (de) Verfahren und System zum Aktivieren zumindest einer Bedien-/Parametrierfunktion eines Feldgerätes der Automatisierungstechnik
EP1366393A2 (de) Verfahren zur remote-steuerungsprogrammierung von maschinensteuerungen und maschinensteuerung zur durchführung des verfahrens
DE102011081803A1 (de) Verfahren und System zum Bereitstellen von gerätespezifischen Eigenschaftsdaten für ein Automatisierungsgerät einer Automatisierungsanlage
DE102008005252B4 (de) Verfahren zum Betreiben einer Anlage
EP2369805B1 (de) Verfahren zur Konfigurieruing und Verteilung von Zugriffsrechten in einem verteilten System
EP2333624A1 (de) Verfahren und Einrichtung zur Konfigurierung einer Komponente in einer industriellen Automatisierungsanordnung
DE102007010114A1 (de) Verfahren und Anordnung zur Sicherung von nutzerdefinierbaren Daten einer Frankiermaschine
DE10245934A1 (de) Automatisierungssystem sowie Verfahren zu dessen Betrieb
DE102018133605B4 (de) Verfahren und Vorrichtung zur Prüfung der Integrität von Modulen einer Windkraftanlage
EP3306514B1 (de) Verfahren und vorrichtung zum zertifizieren einer sicherheitskritischen funktionskette
DE102019117651A1 (de) Verfahren zur Inbetriebnahme einer Sauerstoffreduzierungsanlage, computerlesbares-Speichermedium und Sauerstoffreduzierungsanlage
DE102019210982A1 (de) Verfahren zur abgesicherten Konfiguration von Automatisierungssystemen
EP1170645A2 (de) Verfahren und Einrichtung zum Überwachen und Steuern von Maschinen bzw. maschinellen Anlagen
EP3537323A1 (de) Projektbezogenes zertifikatsmanagement
AT14003U1 (de) Verfahren zum Sichern von für den Betrieb einer Formgebungsmaschine notwendigen Dateien
DE102014008654A1 (de) Temporäre Berechtigung
EP3479538A1 (de) Sicherheitseinrichtung mit ortsgebundenem schlüsselspeicher, system und verfahren
EP3306507B1 (de) Komponente für eine sicherheitskritische funktionskette

Legal Events

Date Code Title Description
PL Patent ceased